IBM is excited to be a founding member of the GraphQL Foundation, which is hosted by the Linux Foundation. GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. It was open sourced in 2015.
We have been following the development of GraphQL in the last few years and started embracing this new technology in our products – Supply Chain and IBM Cloud, to name just two. We use GraphQL successfully to build IBM Cloud consoles, which need to query various backends and catalogs to retrieve available services, subscriptions, or service instances for display in dashboards.
GraphQL provides an outstanding experience for developers, which fosters their ability to innovate. We see great potential for GraphQL to serve highly diverse consumer requirements, which is a common challenge for public APIs. We also think that GraphQL can play an essential role within organizations to consolidate access to data that is increasingly distributed across microservices.
At IBM Research, we recently open sourced OASGraph, a library that processes a Swagger or OpenAPI Specification (OAS) defining REST endpoints and automatically produces a GraphQL interface around that API, ready to be used. We are receiving great community support, and we are now starting to support generating GraphQL interfaces from multiple OAS.
Going forward, we see a number of opportunities to make GraphQL enterprise-ready. In particular, we have been working on GraphQL API Management (read our recent blog post). GraphQL queries may hide a lot of complexity and even pose threats to backend systems if they are ill-structured or excessive in resource demands. A GraphQL API may also be part of a subscription and call for rate limits which are likely to be substantially different from the usual REST rate limits of #calls/unit of time.
As a member of this new foundation, we look forward to working with the community to increase language support for GraphQL, particularly in the area of GraphQL validation for C++, and to evolve the thinking around GraphQL API Management.
Erik Wittern is a GraphQL enthusiast, he is one of the maintainers of OASGraph, and will represent IBM in the GraphQL Foundation technical board.