DocumentationSubgraphsBasicsGraph CLI

graph-cli is a command line interface that helps you to quickly setup and manage your subgraphs.

Installing Graph CLI

Install with yarn:

yarn global add @graphprotocol/graph-cli

Install with npm:

npm install -g @graphprotocol/graph-cli

Usage

Graph CLI provides several commands to help you on your subgraph developing journey:

  • init - The graph init command scaffolds a subgraph from a contract ABI downloaded from etherscan (or another explorer) or from a local file. It has a step-by-step interactive guide that will take you through the process of setting up your subgraph.

    $ graph init
     Protocol · ethereum
     Product for which to initialize · subgraph-studio
     Subgraph slug · Gravatar
     Directory to create the subgraph in · gravatar
     Ethereum network · mainnet
     Contract address · 0x2E645469f354BB4F5c8a05B3b30A929361cf77eC
     Fetching ABI from Etherscan
     Fetching Start Block
     Start Block · 6175244
     Contract Name · Gravatar
     Index contract events as entities (Y/n) · false
      Generate subgraph
      Write subgraph to directory
     Create subgraph scaffold
     Initialize networks config
     Initialize subgraph repository
     Install dependencies with npm install
     Generate ABI and schema types with npm run codegen
    Add another contract? (y/n): 
    Subgraph Gravatar created in gravatar
     
    Next steps:
     
      1. Run `graph auth` to authenticate with your deploy key.
     
      2. Type `cd gravatar` to enter the subgraph.
     
      3. Run `npm run deploy` to deploy the subgraph.
     
    Make sure to visit the documentation on https://thegraph.com/docs/ for further information.
  • add - Sometimes we want to add new dataSources to our subgraphs, graph add allows you to add new contracts to your existing subgraph.

  • codegen - graph codegen will generates the AssemblyScript bindings based on the data defined in the ABI, schema.graphqland subgraph.yaml files.

  • build - graph build compiles the subgraph to WASM. You can use that command to check if the code you have written is correctly.

  • auth - Use graph auth to authenticate with the studio using your deploy key or the hosted-service with your access token.

  • deploy - graph deploy will compile and deploy the subgraph to the hosted-service or the subgraph studio, depending on your subgraph configuration.

  • test - graph test will execute the subgraph unit test using the matchstick testing library. More about subgraph unit testing can be found here

Run graph <command> —help to see usage information