Skip to content

API integration

GraphOps Substreams endpoint, gRPC transport, authentication, and stream contracts.

Look up what a Substreams client sends and receives. GraphOps Substreams exposes standard Substreams gRPC endpoints, so standard Substreams tooling works with a GraphOps endpoint URL and API key. This page lists the stream inputs, the messages a consumer handles, and where the upstream protocol reference lives.

Endpoint patterns

https://<CHAIN_ID>.evm.substreams.graphops.xyz

Endpoint preview

The CLI uses SUBSTREAMS_API_KEY.

Replace placeholders with your identifier and API key before making requests.

Use Supported networks for supported chains and testnet availability.

Transport

Substreams uses gRPC streams. A client selects:

FieldMeaning
EndpointGraphOps chain endpoint.
PackagePublic package name, package URL, local .spkg, or other standard package reference.
ModuleOutput module to stream.
Start blockFirst block to process.
Stop blockOptional end block or relative range.
CursorOptional resume point from a previous stream.
AuthenticationSUBSTREAMS_API_KEY for CLI, or x-api-key: <GRAPHOPS_API_KEY> for raw gRPC clients.

Request

The CLI tab is a complete command. The Go, Rust, and TypeScript tabs show the values a standard Substreams client library needs; generate Protobuf types for the package's output module before you decode messages.

export SUBSTREAMS_API_KEY="<GRAPHOPS_API_KEY>"

substreams run \
  -e "https://1.evm.substreams.graphops.xyz" \
  "https://github.com/streamingfast/substreams-explorers/releases/download/v1.0.1/ethereum-explorer-v0.1.2.spkg" \
  "map_block_meta" \
  --start-block 18000000 \
  --stop-block +5 \
  -o json

Response

A stream sends these standard Substreams messages:

MessageMeaningConsumer action
SessionInitStream session metadata.Log the session and continue.
BlockScopedDataOutput for one block and a cursor.Commit the output, then persist the cursor.
BlockUndoSignalReorg correction with last valid block and cursor.Revert local state to the last valid point.
ModulesProgressProgress and processed-byte metadata.Use for logs, metrics, and backfill progress.
InitialSnapshotDataSnapshot data for supported sink flows.Process before live or range output.
InitialSnapshotCompleteSnapshot completion marker.Mark snapshot ingestion complete.

Authentication

See Authentication for API-key creation, x-api-key headers, and secret handling. Route-token authentication is not supported for Substreams.

Standard reference

GraphOps supports standard Substreams behavior. Use upstream Substreams documentation for protocol, package, manifest, module, and sink details:

Next steps