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.