Explorer API
Explorer endpoints serve individual large JSON objects and a few related lists. JSON objects use the typical JSON key/value structure and you cannot limit the contents of objects (i.e. they are always sent in full). CSV format is not supported here.
Most explorer endpoints take different kinds of path arguments to define the object to return. This can be:
- a regular
hash
for blocks, operations or accounts - the string
head
for the most recent on-chain object (e.g. the recent block or cycle) - a block
height
(a.k.a level in Tezos) - a sequence
number
for cycles and elections
Endpoint | Comment |
GET /explorer/status | indexer status |
GET /explorer/config/{id} | blockchain config at head or height |
GET /explorer/tip | blockchain tip info |
GET /explorer/protocols | list of deployed protocols |
GET /explorer/bakers | baker list |
GET /explorer/bakers/{hash} NEW | baker info |
GET /explorer/bakers/{hash}/votes | baker proposals and ballots |
GET /explorer/bakers/{hash}/endorsements | baker endorsements |
GET /explorer/bakers/{hash}/delegations | baker delegations |
GET /explorer/bakers/{hash}/income/{cycle} | baker income for cycle |
GET /explorer/bakers/{hash}/rights/{cycle} | baker rights for cycle |
GET /explorer/bakers/{hash}/snapshot/{cycle} | baker snapshot for cycle |
GET /explorer/block/{id} | block info at head , hash , of height |
GET /explorer/block/{id}/operations | list block operations at head , hash , or height |
GET /explorer/op/{hash} | operation info |
GET /explorer/account/{hash} | account info |
GET /explorer/account/{hash}/contracts | list of contracts managed by this account |
GET /explorer/account/{hash}/operations | account info with embedded list of related operations |
GET /explorer/contract/{hash} | smart contract metadata |
GET /explorer/contract/{hash}/calls | list contract calls |
GET /explorer/contract/{hash}/script | smart contract code, storage and parameter spec |
GET /explorer/contract/{hash}/storage | smart contract storage |
GET /explorer/constant/{hash} | global constants |
GET /explorer/bigmap/{id} | bigmap metadata |
GET /explorer/bigmap/{id}/keys | list of bigmap keys |
GET /explorer/bigmap/{id}/values | list of bigmap key/value pairs |
GET /explorer/bigmap/{id}/{key} | single bigmap value |
GET /explorer/bigmap/{id}/updates | list of bigmap updates |
GET /explorer/bigmap/{id}/updates/{key} | list of bigmap updates related to a key |
GET /explorer/cycle/{id} | cycle info for head or cycle |
GET /explorer/election/{id} | election info |
GET /explorer/election/{id}/{stage}/voters | list voters |
GET /explorer/election/{id}/{stage}/ballots | list ballots |
GET /metadata/{hash}[/{id}] | read account & token metadata |
GET /metadata/schemas | list metadata schema names |
GET /markets | list known markets |
GET /markets/tickers | list market tickers |
GET /markets/{exchange} | read exchange status |
GET /markets/{exchange}/{market} | read market status |
GET /markets/{exchange}/{market}/ticker | read single market ticker |
List endpoints support pagination (e.g. to list historic transactions, contract calls, voters, etc). Two pagination methods are supported:
cursor
+limit
is the preferred method, it uses therow_id
of the last result as argument to efficiently skips to the next available objectoffset
+limit
is similar, but less efficient, it takes the count of objects seen so far and skips them when retrieving more results (as the chain grows, using offset in combination with descending order may return duplicates; we therefore recommend using the cursor method)
Default value for limit is 20 results on explorer endpoints and 500 results on tables, maximum is 500 and 50,000. Results are always sorted by
row_id
of the underlying table. Sort direction can be controlled by order
(asc, or desc). If you require sorting by a different field, you have to do this client-side.GET https://api.tzpro.io/explorer/status
Returns the current indexer status, useful to check if the indexer is in sync with the blockchain.
Field | Description |
mode enum | Chain crawling mode ( sync = live monitoring). |
status enum | Indexer status ( connecting , syncing , synced , failed ). |
blocks int64 | Most recent block height seen by the connected Tezos node. |
indexed int64 | Most recent block height indexed. |
progress float | Percentage of blocks indexed. |
curl "https://api.tzpro.io/explorer/status"
import (
"context"
"blockwatch.cc/tzstats-go"
)
// use default Mainnet client
status, err := tzstats.DefaultClient.GetStatus(context.Background())
{
"mode": "sync",
"status": "synced",
"blocks": 626399,
"indexed": 626399,
"progress": 1
}
Returns the current indexer status, useful to check if the indexer is in sync with the blockchain.
Last modified 3mo ago