Build
API reference
Read-only indexer REST and SSE endpoints, and the storage node HTTP endpoints.
Two HTTP surfaces exist: the indexer, which reads contract events into SQLite and serves them, and each storage node. The indexer is not yet running against a mainnet deployment; no public endpoint is announced.
Indexer endpoints
| Method | Path | Returns |
|---|---|---|
| GET | /v1/stats | Network totals |
| GET | /v1/nodes | All registered nodes |
| GET | /v1/nodes/:address | One node with its events |
| GET | /v1/epochs?limit= | Recent epochs |
| GET | /v1/epochs/:n | One epoch and its committee |
| GET | /v1/tracks?limit=&tape=&owner= | Tracks, filterable |
| GET | /v1/tracks/:id | One track with shard placement |
| GET | /v1/tapes?owner=&limit= | Tapes |
| GET | /v1/tapes/:id | One tape |
| GET | /v1/accounts/:address | Account summary |
| GET | /v1/events?limit=&actor=&kind= | Activity events |
| GET | /v1/tx/:hash | Events from one transaction |
| GET | /v1/search?q= | Search addresses, ids and hashes |
| GET | /v1/stream | Server-Sent Events: live activity |
All indexer endpoints are read-only GET requests returning JSON, except /v1/stream, which is an text/event-stream for use with EventSource.
Storage node endpoints
| Method | Path | Purpose |
|---|---|---|
| GET | /v1/health | Identity and usage |
| PUT | /v1/tracks/:id/shards/:i | Upload a shard; header x-bashard-roots carries the 20 shard roots |
| GET | /v1/tracks/:id/shards/:i | Download a shard; proof in header x-bashard-proof |
| GET | /v1/tracks/:id/roots | The 20 shard roots |
| POST | /v1/tracks/:id/certify | Signature over the track root once all assigned shards are held |
| GET | /v1/tracks/:id/challenge/:i/:leaf | Proof of access for one 1 KiB leaf |
| POST | /v1/slash-vote | Co-sign a slash; caller must be a committee member sending its own signed vote |