To use GraphQL, you need to generate the domain schema:
When you modify Content Types in your installation, you need to regenerate the schema using the command above.
Schema generation limitations¶
GraphQL schema cannot be generated for names that do not follow the GraphQL specification, for example names that start with a digit.
This concerns image variations, Content Types, Content Type groups, and Field definition identifiers.
It is recommended to rename the relevant identifiers. Failure to generate schema is registered in logs.
To find identifiers that are not included in the schema, look for "Skipped schema generation" log messages, for example:
Skipped schema generation for Image Variation.
GraphQL for eZ Platform is based on the Content Types, Content Type groups, and Content items defined in the Repository.
For each Content Type the schema exposes a singular and plural field, e.g.
Use the singular field to query a single Content item, and the plural to get a whole
(a list of Content items that supports pagination).
You can request additional content information such as the Section or Objects States,
available under the
You can also query Content Type and Content Type group information through the
The repository schema, accessed through
_repository, exposes the eZ Platform Repository
in a manner similar to the Public PHP API.
_repository field also enables you to query e.g. Object states configured for the Repository.
You can also use your own custom schema.
GraphQL is SiteAccess-aware, but can have only one schema per installation. This means you cannot use GraphQL with multiple repositories.
GraphQL for eZ Platform supports session-based authentication. You can get your session cookie by logging in through the interface or through a REST request.
You can access GraphQL with
The GraphiQL interactive client is included in the installation.
Access it through
Here you can run your queries and preview the results in an easy-to-read format.
Selected queries and mutations require administrator permission to be executed properly.
In such case, access the GraphiQL through
GraphiQL offers side-by-side reference based on your generated schema in the Docs pane.