Skip to main content
Mintlify

Search documentation

Type to search this documentation.

On this pageOverview

GraphQL setup

Generate reference pages for your GraphQL API from a schema definition file, with linked types and example queries, mutations, and responses.

To create pages for your GraphQL API, you need a valid GraphQL schema in SDL (Schema Definition Language) format. Store the schema in your documentation repository or host it at an HTTPS URL that Mintlify can fetch.

schema.graphql
"An object with a stable identifier."
interface Node {
  id: ID!
}

type Organization implements Node {
  id: ID!
  name: String!
}

type Query {
  organization(id: ID!): Organization
}

To automatically generate pages for every query, mutation, and type in your schema, add a graphql property to a tab in your docs.json. Mintlify parses the schema and creates a page for each operation and named type.

Local
"navigation": {
  "tabs": [
    {
      "tab": "GraphQL API",
      "graphql": "schema.graphql"
    }
  ]
}
Remote
"navigation": {
  "tabs": [
    {
      "tab": "GraphQL API",
      "graphql": "https://example.com/schema.graphql"
    }
  ]
}
Custom
"navigation": {
  "tabs": [
    {
      "tab": "GraphQL API",
      "graphql": {
        "source": "schema.graphql",
        "directory": "api/graphql"
      }
    }
  ]
}

The graphql property accepts either a string (a local path or HTTPS URL) or an object with the following fields.

  • source (string, required) — A local path to an SDL file in your documentation repository or an HTTPS URL to a hosted SDL file. Does not accept HTTP URLs.

  • directory (string) — The directory to store generated pages. Defaults to graphql-reference.

Mintlify organizes generated pages into three sections under the tab you configured:

  • Queries: One page per field on your Query root type.
  • Mutations: One page per field on your Mutation root type.
  • Types: One page per named object, input, enum, interface, union, or scalar type.

Each operation page shows the field description, arguments, return type, and links to any referenced types. Query and mutation pages also include a generated example operation, the required variables, and a sample JSON response.

Type pages render the schema definition read-only, with linked field types so readers can navigate the graph.

Fields and arguments that you mark with @deprecated in your schema display as deprecated on the generated pages. If you provide a deprecation reason, it appears next to the field.

Mintlify regenerates GraphQL reference pages when you run mint dev or when you push changes to your documentation repository. If your schema is hosted at an HTTPS URL, updates to the schema regenerate on the next build.

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu