Skip to main content

Using GraphQL Clients

You can run queries on real GitHub data using various GraphQL clients and libraries.

Using GraphQL client IDEs

There are many open-source GraphQL client IDEs you can use to access GitHub's GraphQL API.

See Forming calls with GraphQL for extensive information on HTTP methods, authentication, and GraphQL call structure.

First, choose a client. Common options include GraphiQL, Insomnia, and Altair (desktop/web/extension). You can see the full list of clients in the GraphQL organization's tool directory.

The following generic instructions will work with most GraphQL clients:

  1. Point the client at the GraphQL endpoint: https://api.github.com/graphql.

  2. Add an Authorization header: Authorization: Bearer TOKEN (replace TOKEN with your GitHub personal access token. For more information, see Managing your personal access tokens).

  3. Set the request method to POST or if it's available, use the client-provided GraphQL mode.

  4. Enter your query or mutation in the editor and, if needed, provide variables in the "Variables" panel.

    Example:

    query {
      viewer {
        login
      }
    }
    
  5. If your client needs a schema for documentation rendering or autocomplete, fetch it via a GraphQL introspection query. Many clients can do this automatically from the "Docs" panel.

    Minimal introspection query:

    query IntrospectionQuery {
      __schema {
        types {
          name
        }
      }
    }
    
  6. Run the request and inspect the JSON response. Query from example should return the login associated with the GitHub personal access token you authenticated with.

Use the client UI to explore docs, run queries, and save requests as needed.

GitHub CLI

You can also use the command line with GitHub CLI to run GraphQL queries.

  1. Install and authenticate with GitHub CLI.
  2. Run a query against https://api.github.com/graphql using the GraphQL endpoint with the gh api subcommand.

Example:

gh api graphql -f query='query { viewer { login } }'

This should return the login associated with the GitHub personal access token you authenticated with.

Requesting support

For questions, bug reports, and discussions about GitHub Apps, OAuth apps, and API development, explore the API and Webhooks category in GitHub's Community Discussions. The discussions are moderated and maintained by GitHub staff, and answered by the GitHub community.

Consider reaching out to GitHub Support directly using the contact form for:

  • Guaranteed response from GitHub staff
  • Support requests involving sensitive data or private concerns
  • Feature requests
  • Feedback about GitHub products