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

Quantum computation center opens

IBM continues its push toward large-scale adoption of quantum computing with the opening of the first IBM Quantum Computation Center in Poughkeepsie, New York.

Continue reading

MIT-IBM Watson AI Lab Welcomes Inaugural Members

Two years in, and the MIT-IBM Watson AI Lab is now engaging with leading companies to advance AI research. Today, the Lab announced its new Membership Program with Boston Scientific, Nexplore, Refinitiv and Samsung as the first companies to join.

Continue reading

Adversarial Robustness 360 Toolbox v1.0: A Milestone in AI Security

IBM researchers published the first major release of the Adversarial Robustness 360 Toolbox (ART). Initially released in April 2018, ART is an open-source library for adversarial machine learning that provides researchers and developers with state-of-the-art tools to defend and verify AI models against adversarial attacks. ART addresses growing concerns about people’s trust in AI, specifically the security of AI in mission-critical applications.

Continue reading