Native GraphQL
Saleor was the first commerce platform to fully adopt GraphQL; We are strongly committed to the ecosystem and its philosophy.
Benefits of native GraphQL
- 
GraphQL powers all API and extensibility points; no need to switch between different styles of API due to API coverage gaps. 
- 
Extensibility designed with GraphQL in mind. 
- 
All documentation examples are using GraphQL 
Benefits of GraphQL
- 
Reduce round-trips. Improve performance and simplify code. 
- 
Type-safety tooling. Use codegen tooling to generate types for your queries and mutation payloads. 
- 
Developer tools. Lowers barriers to experimentation, discoverability, and collaboration. 
- 
Common among CMS. Many CMSs use GraphQL, and have a single API style for commerce and content simplifies the codebase. 
- 
Data privacy. You can choose which fields and entities are being shared via webhook events. 
- 
Client driven. Enables faster front-end development. 
- 
Schema and type system. Provides a standard for self-documented Schema. 
- 
Versions API. New fields can be added without breaking changes. 
- 
Single API endpoint. Simplifies operations. 
- 
Real-time updates. GraphQL subscriptions. 
Common misconceptions
- 
GraphQL is complex. Consuming GraphQL APIs is straightforward, and in many ways can provide a better developer experience than REST. Building GraphQL APIs requires experience, however as a user of Saleor you don't need to worry about that. 
- 
GraphQL is slow. GraphQL is just a query language and does not introduce any overhead. GraphQL is often faster than REST because it allows you to fetch all the data you need in a single request. 
- 
GraphQL is a database technology. GraphQL is a query language for APIs, it has no opinion on the underlying database or data source.