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

Available Endpoints

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

Pagination and Sorting

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 the row_id of the last result as argument to efficiently skips to the next available object
  • offset + 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.

Indexer Status

GET https://api.tzpro.io/explorer/status
Returns the current indexer status, useful to check if the indexer is in sync with the blockchain.

HTTP Response

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.

Example Request

curl "https://api.tzpro.io/explorer/status"
import (
"context"
"blockwatch.cc/tzstats-go"
)
// use default Mainnet client
status, err := tzstats.DefaultClient.GetStatus(context.Background())

Example Response

{
"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.