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

Impact of the SQL Relational Model 50 years later

Fifty years ago this month, IBM researcher and computing pioneer Edgar Frank Codd published the seminal paper “A Relational Model of Data for Large Shared Data Banks,” which became the foundation of Structured Query Language (SQL), a language originally built to manage structured data with relational properties. Today SQL is one of the world’s most […]

Continue reading

Confidentiality and Governance of Cloud Services

Your team has spent months developing, tuning and perfecting a complex deep neural network to classify important financial, medical or government data. The application has been containerized, packaged, and is finally ready to deploy as a public service on the cloud, but one thing stands in the way. How do you get assurance that your […]

Continue reading