Fortune 500 use GraphQL
Ship features faster with less coordination
In the era of SOAP, XML, and a single interface, REST APIs were novel. Today, we have multiple interfaces that consume data from many services. The complexity of hundreds of REST endpoints requires significant effort to coordinate between service and client teams. GraphQL offers a solution to this challenge by introducing an abstraction layer that sits between clients and services.
Create a truly self-service API
REST APIs expose data. GraphQL provides a mental model for how it should be used. People see it as an alternative to REST, but GraphQL works great as an abstraction layer over REST. It provides a lingua franca to describe a domain in a way that is more useful to client teams.
Focus on features, not endpoints
GraphQL provides client teams with a declarative query language to describe the data they need. They can fetch the data they need with a single query to one endpoint. No more overfetching, underfetching, or meetings to figure out what data lives where. The answer is, “It’s in the graph.”
Support more clients with less code
As you add clients, GraphQL scales with you. Since GraphQL enables client teams to fetch exactly the data they need in a self-service way, you can add more clients—without the need for backend-for-frontends.
Deliver application performance even as you scale
One GraphQL query can fulfill a request that requires multiple sequential network calls for REST. This reduces latency, which can be particularly painful on slow mobile connections. By reducing the number of network roundtrips, it’s easier to optimize performance for any device.
Switch from REST to GraphQL
GraphQL has a unique paradigm. This eBook helps you design schemas the right way.
Join the Apollo Community
Discuss GraphQL architecture, infrastructure, and workflows with your peers.
Get Started with Odyssey
Improve your skills and deploy GraphQL in production with hands-on GraphQL tutorials and trainings.