Skip to content

Latest commit

 

History

History
520 lines (423 loc) · 55.4 KB

endpoint-overview.mdx

File metadata and controls

520 lines (423 loc) · 55.4 KB
title API quick reference
description Every Blockscout REST, RPC, ETH RPC and service endpoint at a glance: method, path or action, and a one-line description.

A compact list of every Blockscout API endpoint. For parameters and example responses, see the API reference.

**Base URLs.** Replace `{chain_id}` with the chain's numeric ID (for example `1` for Ethereum).
  • REST API: https://api.blockscout.com/{chain_id}/api/v2. REST paths are relative to it. Legacy routes show their full path after https://api.blockscout.com/{chain_id}.
  • RPC API: https://api.blockscout.com/v2/api?chain_id={chain_id}. Add the module and action shown in the tables.
  • ETH RPC API: POST https://api.blockscout.com/{chain_id}/json-rpc with a JSON-RPC 2.0 body. The method name goes in the method field.
  • Services (name service, address metadata, multichain search, stats): https://api.blockscout.com. Service paths show their full path after it. Replace {cluster_id} with a cluster ID.
Send your API key as the `apikey` query parameter or as an `Authorization: Bearer YOUR_KEY` header. REST list endpoints return `next_page_params`; pass those values back as query parameters to get the next page.

175 REST endpoints, 43 RPC actions, 16 ETH RPC methods and 38 service endpoints.

Endpoint names link to their API reference page where one exists.

Endpoints marked **(spec only)** come from the API specifications and have not been verified against a live API. Endpoints marked **(requires a logged-in account)** need an account session as well as an API key.

REST API

Blocks

Method Endpoint Description
GET /blocks get blocks
GET /blocks/{block_hash_or_number} get block
GET /blocks/{block_hash_or_number}/internal-transactions get block internal transactions
GET /blocks/{block_hash_or_number}/transactions get block transactions
GET /blocks/{block_hash_or_number}/withdrawals get block withdrawals
GET /blocks/{block_number}/countdown get block countdown

Transactions

Method Endpoint Description
GET /transactions get transactions
GET /transactions/stats get transactions stats
GET /transactions/watchlist get transactions watchlist (requires a logged-in account)
GET /transactions/{transaction_hash} get transaction
GET /transactions/{transaction_hash}/internal-transactions get transaction internal transactions
GET /transactions/{transaction_hash}/logs get transaction logs
GET /transactions/{transaction_hash}/preview get transaction preview (new in v12)
GET /transactions/{transaction_hash}/raw-trace get transaction raw trace
GET /transactions/{transaction_hash}/state-changes get transaction state changes
GET /transactions/{transaction_hash}/summary get transaction summary
GET /transactions/{transaction_hash}/token-transfers get transaction token transfers

Addresses

Method Endpoint Description
GET /addresses get addresses
GET /addresses/{address_hash} get address
GET /addresses/{address_hash}/blocks-validated get address blocks validated
GET /addresses/{address_hash}/coin-balance-history get address coin balance history
GET /addresses/{address_hash}/coin-balance-history-by-day get address coin balance history by day
GET /addresses/{address_hash}/counters get address counters
GET /addresses/{address_hash}/internal-transactions get address internal transactions
GET /addresses/{address_hash}/internal-transactions/csv export address internal transactions csv
GET /addresses/{address_hash}/logs get address logs
GET /addresses/{address_hash}/logs/csv export address logs csv
GET /addresses/{address_hash}/nft get address nft
GET /addresses/{address_hash}/nft/collections get address nft collections
GET /addresses/{address_hash}/tabs-counters get address tabs counters
GET /addresses/{address_hash}/token-balances get address token balances
GET /addresses/{address_hash}/token-transfers get address token transfers
GET /addresses/{address_hash}/token-transfers/csv export address token transfers csv
GET /addresses/{address_hash}/tokens get address tokens
GET /addresses/{address_hash}/transactions get address transactions
GET /addresses/{address_hash}/transactions/csv export address transactions csv
GET /addresses/{address_hash}/withdrawals get address withdrawals

Internal transactions

Method Endpoint Description
GET /internal-transactions get internal transactions

Token transfers

Method Endpoint Description
GET /token-transfers get token transfers

Tokens

Method Endpoint Description
GET /tokens get tokens
POST /tokens/batch get tokens by address (batch) (spec only) (new in v12)
GET /tokens/{address_hash} get token
GET /tokens/{address_hash}/counters get token counters
GET /tokens/{address_hash}/holders get token holders
GET /tokens/{address_hash}/holders/csv export token holders csv
GET /tokens/{address_hash}/instances get token instances
PATCH /tokens/{address_hash}/instances/refetch-metadata refetch collection metadata (spec only) (new in v12)
GET /tokens/{address_hash}/instances/{token_id} get token instance
GET /tokens/{address_hash}/instances/{token_id}/holders get token instance holders
GET /tokens/{address_hash}/instances/{token_id}/media-type get token instance media type (spec only)
PATCH /tokens/{address_hash}/instances/{token_id}/refetch-metadata refetch NFT metadata (spec only) (new in v12)
GET /tokens/{address_hash}/instances/{token_id}/transfers get token instance transfers
GET /tokens/{address_hash}/instances/{token_id}/transfers-count get token instance transfers count
GET /tokens/{address_hash}/transfers get token transfers
GET /tokens/{address_hash}/transfers/csv export token transfers csv (spec only)
GET /tokens/{address_hash}/ui-multiplier-changes get token ui multiplier changes (spec only) (new in v12)

Smart contracts

Method Endpoint Description
GET /smart-contracts get smart contracts
GET /smart-contracts/counters get smart contracts counters
GET /smart-contracts/{address_hash} get smart contract
GET /smart-contracts/{address_hash}/audit-reports get smart contract audit reports (spec only)
POST /smart-contracts/{address_hash}/audit-reports submit audit report (spec only) (new in v12)

Search

Method Endpoint Description
GET /search search
GET /search/check-redirect search redirect
GET /search/quick quick search

Stats

Method Endpoint Description
GET /stats get stats counters
GET /stats/charts/market get stats charts market
GET /stats/charts/secondary-coin-market get stats charts secondary coin market
GET /stats/charts/transactions get stats charts transactions
GET /stats/hot-smart-contracts get stats hot smart contracts

Main page

Method Endpoint Description
GET /main-page/blocks get main page blocks
GET /main-page/indexing-status get indexing status
GET /main-page/transactions get main page transactions
GET /main-page/transactions/watchlist get main page transactions watchlist (requires a logged-in account)

Advanced filters

Method Endpoint Description
GET /advanced-filters get advanced filters
GET /advanced-filters/csv export advanced filters csv
GET /advanced-filters/methods get advanced filters methods

CSV exports

Method Endpoint Description
GET /csv-exports/{uuid} get csv export (spec only)

Withdrawals

Method Endpoint Description
GET /withdrawals get withdrawals
GET /withdrawals/counters get withdrawals counters

Config

Method Endpoint Description
GET /config/backend get config backend (new in v12)
GET /config/backend-version get config backend version (new in v12)
GET /config/csv-export get config csv export (new in v12)
GET /config/db-background-migrations get config db background migrations (new in v12)
GET /config/indexer get config indexer (new in v12)
GET /config/public-metrics get config public metrics (new in v12)
GET /config/smart-contracts/languages get config smart contracts languages (new in v12)

Chain-specific endpoints

These endpoints only exist on chains of the matching type, or where the feature is enabled. On other chains they return a 404 or an empty result.

Account Abstraction (ERC-4337)

Method Endpoint Description
GET /proxy/account-abstraction/accounts get proxy account abstraction accounts
GET /proxy/account-abstraction/accounts/{address_hash} get proxy account abstraction account
GET /proxy/account-abstraction/bundlers get proxy account abstraction bundlers (spec only)
GET /proxy/account-abstraction/bundlers/{address_hash} get proxy account abstraction bundler
GET /proxy/account-abstraction/bundles get proxy account abstraction bundles
GET /proxy/account-abstraction/factories get proxy account abstraction factories (spec only)
GET /proxy/account-abstraction/factories/{address_hash} get proxy account abstraction factory (spec only)
GET /proxy/account-abstraction/operations get proxy account abstraction operations
GET /proxy/account-abstraction/operations/{operation_hash} get proxy account abstraction operation
GET /proxy/account-abstraction/operations/{operation_hash}/summary get proxy account abstraction operation summary
GET /proxy/account-abstraction/paymasters get proxy account abstraction paymasters (spec only)
GET /proxy/account-abstraction/paymasters/{address_hash} get proxy account abstraction paymaster
GET /proxy/account-abstraction/status get proxy account abstraction status

Ethereum (beacon chain and blobs)

Method Endpoint Description
GET /addresses/{address_hash}/beacon/deposits get address beacon deposits
GET /beacon/deposits get beacon deposits
GET /beacon/deposits/count get beacon deposits count
GET /blocks/{block_hash_or_number}/beacon/deposits get block beacon deposits
GET /transactions/{transaction_hash}/beacon/deposits get transaction beacon deposits
GET /transactions/{transaction_hash}/blobs get transaction blobs

Arbitrum

Method Endpoint Description
GET /arbitrum/batches get arbitrum batches
GET /arbitrum/batches/count get arbitrum batches count
GET /arbitrum/batches/da/anytrust/{data_hash} get arbitrum batches da anytrust (spec only)
GET /arbitrum/batches/da/celestia/{height}/{transaction_commitment} get arbitrum batches da celestia (spec only)
GET /arbitrum/batches/da/eigenda/{data_hash} get arbitrum batches da eigenda (spec only)
GET /arbitrum/batches/{batch_number} get arbitrum batch
GET /arbitrum/messages/claim/{message_id} get arbitrum messages claim (spec only)
GET /arbitrum/messages/withdrawals/{transaction_hash} get arbitrum messages withdrawal
GET /arbitrum/messages/{direction} get arbitrum message
GET /arbitrum/messages/{direction}/count get arbitrum message count
GET /blocks/arbitrum-batch/{batch_number} get blocks arbitrum batch
GET /main-page/arbitrum/batches/committed get main page arbitrum batches committed
GET /main-page/arbitrum/batches/latest-number get main page arbitrum batches latest number
GET /main-page/arbitrum/messages/to-rollup get main page arbitrum messages to rollup
GET /transactions/arbitrum-batch/{batch_number} get transactions arbitrum batch

Optimism

Method Endpoint Description
GET /blocks/optimism-batch/{batch_number} get blocks optimism batch
GET /main-page/optimism-deposits get main page optimism deposits
GET /optimism/batches get optimism batches
GET /optimism/batches/count get optimism batches count
GET /optimism/batches/da/celestia/{height}/{commitment} get optimism batches da celestia (spec only)
GET /optimism/batches/{number} get optimism batch
GET /optimism/deposits get optimism deposits
GET /optimism/deposits/count get optimism deposits count
GET /optimism/games get optimism games
GET /optimism/games/count get optimism games count
GET /optimism/output-roots get optimism output roots
GET /optimism/output-roots/count get optimism output roots count
GET /optimism/withdrawals get optimism withdrawals
GET /optimism/withdrawals/count get optimism withdrawals count
GET /transactions/optimism-batch/{batch_number} get transactions optimism batch

Scroll

Method Endpoint Description
GET /blocks/scroll-batch/{batch_number} get blocks scroll batch
GET /scroll/batches get scroll batches
GET /scroll/batches/count get scroll batches count
GET /scroll/batches/{number} get scroll batch
GET /scroll/deposits get scroll deposits
GET /scroll/deposits/count get scroll deposits count
GET /scroll/withdrawals get scroll withdrawals
GET /scroll/withdrawals/count get scroll withdrawals count
GET /transactions/scroll-batch/{batch_number} get transactions scroll batch

zkSync

Method Endpoint Description
GET /main-page/zksync/batches/confirmed get main page zksync batches confirmed (spec only)
GET /main-page/zksync/batches/latest-number get main page zksync batches latest number (spec only)
GET /transactions/zksync-batch/{batch_number} get transactions zksync batch (spec only)
GET /zksync/batches get zksync batches (spec only)
GET /zksync/batches/count get zksync batches count (spec only)
GET /zksync/batches/{batch_number} get zksync batch (spec only)

Shibarium

Method Endpoint Description
GET /shibarium/deposits get shibarium deposits (spec only)
GET /shibarium/deposits/count get shibarium deposits count (spec only)
GET /shibarium/withdrawals get shibarium withdrawals (spec only)
GET /shibarium/withdrawals/count get shibarium withdrawals count (spec only)

Celo

Method Endpoint Description
GET /addresses/{address_hash}/celo/election-rewards get address celo election rewards (spec only)
GET /addresses/{address_hash}/celo/election-rewards/csv export address celo election rewards csv (spec only)
GET /celo/epochs get celo epochs
GET /celo/epochs/{number} get celo epoch
GET /celo/epochs/{number}/election-rewards/{type} get celo epoch election reward
GET /config/celo get config celo (new in v12)

Stability

Method Endpoint Description
GET /validators/stability get validators stability (spec only)
GET /validators/stability/counters get validators stability counters (spec only)

Zilliqa

Method Endpoint Description
GET /validators/zilliqa get validators zilliqa
GET /validators/zilliqa/{bls_public_key} get validators zilliqa

Neon

Method Endpoint Description
GET /transactions/{transaction_hash}/external-transactions get transaction external transactions

FHE chains

Method Endpoint Description
GET /transactions/{transaction_hash}/fhe-operations get transaction fhe operations (spec only)

Execution nodes

Method Endpoint Description
GET /transactions/execution-node/{execution_node_hash} get transactions execution node (spec only)

Legacy and JSON-RPC routes

Method Endpoint Description
GET /api/legacy/block/get-block-number-by-time get block number by time (spec only)
POST /api/legacy/eth/eth-block-number eth_blockNumber (spec only) (new in v12)
POST /api/legacy/eth/eth-call eth_call (spec only) (new in v12)
POST /api/legacy/eth/eth-get-balance eth_getBalance (spec only) (new in v12)
POST /api/legacy/eth/eth-get-logs eth_getLogs (spec only) (new in v12)
POST /api/legacy/eth/eth-get-storage-at eth_getStorageAt (spec only) (new in v12)
POST /api/legacy/eth/eth-send-raw-transaction eth_sendRawTransaction (spec only) (new in v12)
GET /api/v1/search search (legacy v1 alias) (spec only)

RPC API

Etherscan-compatible module and action calls. Requests go to https://api.blockscout.com/v2/api?chain_id={chain_id}; add the parameters shown, plus your apikey.

Account

Method Action Description
GET module=account&action=balance get native balance
GET module=account&action=balancemulti get native balances for multiple addresses
GET module=account&action=eth_get_balance get balance at a block (JSON-RPC format)
GET module=account&action=txlist get transactions by address
GET module=account&action=pendingtxlist get pending transactions by address
GET module=account&action=txlistinternal get internal transactions
GET module=account&action=tokentx get ERC-20 token transfers by address
GET module=account&action=tokennfttx get ERC-721 token transfers by address
GET module=account&action=token1155tx get ERC-1155 token transfers by address
GET module=account&action=token404tx get ERC-404 token transfers by address
GET module=account&action=tokenbalance get token balance of an address
GET module=account&action=tokenlist get tokens owned by an address
GET module=account&action=getminedblocks get blocks validated by an address
GET module=account&action=listaccounts list accounts and balances

Block

Method Action Description
GET module=block&action=getblockreward get block reward
GET module=block&action=getblockcountdown get block countdown
GET module=block&action=getblocknobytime get block number by timestamp
GET module=block&action=eth_block_number get latest block number (JSON-RPC format)

Contract

Method Action Description
GET module=contract&action=listcontracts list contracts
GET module=contract&action=getabi get contract ABI
GET module=contract&action=getsourcecode get contract source code
GET module=contract&action=getcontractcreation get contract creator and creation transaction
POST module=contract&action=verify verify a contract (source code) (spec only)
POST module=contract&action=verifysourcecode verify a contract (standard JSON input)
POST module=contract&action=verify_vyper_contract verify a Vyper contract (spec only)
POST module=contract&action=verify_via_sourcify verify a contract through Sourcify (spec only)
GET module=contract&action=verifyproxycontract verify a proxy contract (spec only)
GET module=contract&action=checkverifystatus check verification status
GET module=contract&action=checkproxyverification check proxy verification status

Logs

Method Action Description
GET module=logs&action=getLogs get event logs

Stats

Method Action Description
GET module=stats&action=tokensupply get token total supply
GET module=stats&action=ethsupply get total supply (database)
GET module=stats&action=ethsupplyexchange get total supply (exchange data)
GET module=stats&action=coinsupply get coin supply minus burnt
GET module=stats&action=ethprice get native coin price
GET module=stats&action=coinprice get native coin price (chain-neutral fields)
GET module=stats&action=totalfees get total transaction fees for a day

Token

Method Action Description
GET module=token&action=getToken get token
GET module=token&action=getTokenHolders get token holders
GET module=token&action=bridgedTokenList get bridged tokens (where applicable)

Transaction

Method Action Description
GET module=transaction&action=gettxinfo get transaction info
GET module=transaction&action=gettxreceiptstatus get receipt status
GET module=transaction&action=getstatus get execution status and error

ETH RPC API

Standard JSON-RPC 2.0 methods. Send each as a POST to https://api.blockscout.com/{chain_id}/json-rpc.

Method JSON-RPC method Description
POST eth_blockNumber get latest block number
POST eth_chainId get chain ID
POST eth_gasPrice get gas price
POST eth_maxPriorityFeePerGas get max priority fee per gas
POST eth_getBalance get balance
POST eth_getTransactionCount get transaction count (nonce)
POST eth_getCode get contract bytecode
POST eth_getStorageAt get storage value
POST eth_getTransactionByHash get transaction by hash
POST eth_getTransactionReceipt get transaction receipt
POST eth_sendRawTransaction send signed transaction (spec only)
POST eth_getBlockByNumber get block by number
POST eth_getBlockByHash get block by hash
POST eth_call execute a call
POST eth_estimateGas estimate gas
POST eth_getLogs get event logs

Services

Name service, address metadata, multichain search and stats endpoints. Paths are shown in full, after https://api.blockscout.com.

Name service (BENS): single chain

Method Endpoint Description
GET /services/bens/api/v1/{chain_id}/addresses/{address} get main domain of an address
POST /services/bens/api/v1/{chain_id}/addresses:batch-resolve-names resolve names for a batch of addresses
GET /services/bens/api/v1/{chain_id}/addresses:lookup look up domains for an address (spec only)
GET /services/bens/api/v1/{chain_id}/domains/{name} get domain details
GET /services/bens/api/v1/{chain_id}/domains/{name}/events get domain events
GET /services/bens/api/v1/{chain_id}/domains:lookup look up domains by name
GET /services/bens/api/v1/{chain_id}/protocols get supported protocols

Name service (BENS): multichain

Method Endpoint Description
GET /services/bens/api/v1/addresses/{address} get main domain of an address
POST /services/bens/api/v1/addresses:batch-resolve resolve names for a batch of addresses
GET /services/bens/api/v1/addresses:lookup look up domains for an address (spec only)
GET /services/bens/api/v1/domains/{name} get domain details
GET /services/bens/api/v1/domains/{name}/events get domain events
GET /services/bens/api/v1/domains:lookup look up domains by name
GET /services/bens/api/v1/protocols get supported protocols

Address metadata

Method Endpoint Description
GET /services/metadata/api/v1/addresses get addresses by public tag (spec only)
POST /services/metadata/api/v1/addresses:submit submit addresses for metadata extraction (spec only)
GET /services/metadata/api/v1/metadata get metadata for addresses
GET /services/metadata/api/v1/public-tag-types get public tag types
GET /services/metadata/api/v1/reputation get reputation for addresses
GET /services/metadata/api/v1/tags:search search public tags (spec only)

Multichain search

Method Endpoint Description
GET /services/multichain/api/v1/clusters/{cluster_id}/chains list chains in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/addresses search addresses in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/block-numbers search block numbers in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/blocks search blocks in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/domains search domains in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/nfts search NFTs in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/tokens search tokens in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search/transactions search transactions in a cluster (spec only)
GET /services/multichain/api/v1/clusters/{cluster_id}/search:quick quick search in a cluster (spec only)
GET /services/multichain/api/v1/search:quick quick search across chains

Stats service

Method Endpoint Description
GET /{chain_id}/stats-service/api/v1/counters get all counters
GET /{chain_id}/stats-service/api/v1/lines list line charts
GET /{chain_id}/stats-service/api/v1/lines/{name} get a line chart
GET /{chain_id}/stats-service/api/v1/pages/contracts get contracts page stats
GET /{chain_id}/stats-service/api/v1/pages/interchain/main get interchain stats (where enabled)
GET /{chain_id}/stats-service/api/v1/pages/main get main page stats
GET /{chain_id}/stats-service/api/v1/pages/multichain/main get multichain stats (where enabled)
GET /{chain_id}/stats-service/api/v1/pages/transactions get transactions page stats