Join us from October 8-10 in New York City to learn the latest tips, trends, and news about GraphQL federation and API platform engineering.Join us for GraphQL Summit 2024 in NYC
Start for Free

The Apollo CLI

Installation guide with npm


All apollo service:* commands are now deprecated in favor of commands in the Rover CLI.

The Apollo CLI provides commands for interacting with different components of the Apollo platform, including , , and .

Download and install

The Apollo CLI is available as an npm package.

If your project uses npm, we recommend installing the Apollo CLI locally by adding it to your project's devDependencies, like so:

npm install -D apollo

This helps make sure that all of your project's collaborators have the same version of the CLI installed.

Global installation

You can install the CLI globally in your development environment with the following command:

npm install -g apollo

Provide an API key

Like all other tools, the Apollo CLI requires an API key to communicate with GraphOS. For each of your projects, obtain a graph API key for the project's associated , and set that key as the value of APOLLO_KEY in your application's .env file:


Alternatively, you can provide an API key to individual CLI commands with the --key option:

apollo client:check --graph=MyGraph --key=service:docs-example-graph:NYKgCqwfCyYPIm84WVXCdw

Supported commands

Most of the Apollo CLI's commands are in the following namespaces:

  • client (such as apollo client:codegen) for interactions involving Apollo Client and

  • service (such as apollo service:check) for interactions involving Apollo Server and GraphOS Studio

    ⚠️ CAUTION

    All apollo service:* commands are now deprecated in favor of commands in the Rover CLI.

For a full list of commands in a particular namespace, use the apollo help command:


Omit npx from the example commands below if you installed the Apollo CLI globally.

$ npx apollo help client
Check a client project against a pushed service
$ apollo client:COMMAND
client:check Check a client project against a pushed service
client:codegen Generate static types for GraphQL queries. Can use the
published schema in the Apollo registry or a
downloaded schema.
client:download-schema Download a schema from Apollo or a GraphQL endpoint in
JSON or SDL format
client:extract Extract queries from a client
client:push Register operations with Apollo, adding them to the

You can also obtain the full set of options for an individual command like so:

$ npx apollo help client:codegen
Validating Client Operations
Rate articleRateEdit on GitHubEditForumsDiscord

© 2024 Apollo Graph Inc.

Privacy Policy