Cloud Computing

Hello, OpenAPI-to-GraphQL 1.0.0

Share this post:

GraphQL

In September 2018, we open-sourced OASGraph, a library to auto-generate GraphQL wrappers for existing REST(-like) APIs. In contrast to other libraries, OASGraph is data-centric, understands swaggers and Open API Specification (OpenAPI 3.0.0) files, sanitizes / de-sanitizes parts of REST APIs not compatible with GraphQL, and makes use of OpenAPI 3.0.0 features like links to generate more usable GraphQL interfaces. Since the release, we received and fixed numerous issues and pull requests, and learned about use-cases both within IBM and externally. We also wrote a paper in which we showed how we outperform the existing alternative and performed more effectively in the face of partially valid input specifications.

Today, we are happy to announce the next chapter of our library

For starters, we renamed OASGraph to OpenAPI-to-GraphQL. The main reason for this change is that OASGraph was perceived by many as a cryptic name, plus it’s a bit hard to pronounce. The new name clearly indicates what our library does. Furthermore, it is in line with many other libraries that follow the x-to-y naming convention.

Next, we move OpenAPI-to-GraphQL to the general IBM GitHub. Our previous home, the StrongLoop organization, has been a great partner and its community has embraced OASGraph when building OpenAPIs with Loopback and exposing a GraphQL interface. We will continue to work with StrongLoop, but we want to remove the confusion that some (prospective) users had of LoopBack being a requirement for OpenAPI-to-GraphQL, which is not the case. We hope that belonging to the IBM Open Source Community makes it clear that OpenAPI-to-GraphQL can be used as a stand-alone tool, if desired.

Finally, we recently released version 1.0.0 of OpenAPI-to-GraphQL. We believe this switch to a first major version adequately reflects the extensive feedback we received on our code and the improvements that both we and the community made to it. The switch to this new version will also enable us to adhere to proper semantic versioning from now on. Finally, the new version introduces a number of exciting new features, like support for inputting multiple OpenAPIs and linking between them, exposing request options to users, or enabling custom resolver function implementations. See the release notes for more details, and this new video.

We are excited about the future of OpenAPI-to-GraphQL! As always, feel free to reach out to us on Twitter or open an issue.

The OpenAPI Specification and GraphQL Specification are Linux Foundation Collaborative Projects and copyright of The Linux Foundation. 

Software Engineer, IBM Research

More Cloud Computing stories

IBM Science for Social Good 2019 Projects Announced

IBM announced the fourth, 2019 edition of the Science for Social Good program, designed to address social and humanitarian challenges with data and AI. Since the program launched in 2016, we have executed 28 projects with more than 110 volunteer researchers and 36 student fellows. We've also contributed 47 scientific papers.

Continue reading

Novel AI tools to accelerate cancer research

At the 18th European Conference on Computational Biology and the 27th Conference on Intelligent Systems for Molecular Biology, IBM will present significant, novel research that led to the implementation of three machine learning solutions aimed at accelerating and guiding cancer research.

Continue reading

IBM Research at IEEE World Congress on Services 2019

IBM Research is proud to have participated in the 2019 IEEE World Congress on Services and played a key sponsorship role.

Continue reading