Description
Retrieves a list of ERC-721 (NFT) token collections based on the provided filters.
Parameters
Target EVM network. See the Chain enumeration for supported values.
Range Filters (mutually exclusive)
Starting block number (inclusive) for the query. Use with to_block.
Ending block number (inclusive) for the query. Use with from_block.
Starting timestamp (ISO-8601). If it falls between blocks, the next block after this timestamp is used. Use with to_timestamp.
Ending timestamp (ISO-8601). If it falls between blocks, the last block before this timestamp is used. Use with from_timestamp.
Validation rule:
You must provide either a block range, a time range, or an explicit contract address filter.
Providing more than one option results in HTTP 400.
Providing none results in HTTP 400.
Contract Address Filter
Specific ERC-721 token contract address to return (hex string, 20 bytes, no 0x prefix).
Recommended default 250; maximum 1000 to stay under ~10 MB responses.
Pagination cursor from a prior call.
Response Fields
Echo of request metadata applied to the response.
EVM chain ID echoed from the request.
Normalized block/timestamp bounds derived from the request.
Filter parameters echoed from the request (contract addresses, pagination state, etc.).
Data
Array of token collection objects.
Chain ID for the token record.
The Ethereum contract address of the token collection.
Block number of the collection-creation event.
Block timestamp joined from the blocks table for easier selection and grouping.
Transaction index within the genesis block.
The name of the token collection.
The symbol of the token collection.
Representative token URI or base URI for collection metadata (ERC721Metadata), if any.
Whether the contract supports the ERC721Metadata extension; null when detection was via fallback.
Whether the contract supports the ERC721Enumerable extension; null when detection was via fallback.
Row-level lineage hash (hex string, no 0x prefix).
Lineage references of immediate parents.
Record creation timestamp, e.g. "2025-11-11T18:42:15.123Z".
Last update timestamp in the same format.
Envelope Fields
Cursor token for pagination.
Number of records returned in data.
curl -X POST "https://api.blockdb.io/v1/evm/tokens/erc721" \
-H "Authorization: Bearer $BLOCKDB_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"chain_id": 1,
"from_block": 12345678,
"to_block": 12345999,
"from_timestamp": "2025-10-29T00:00:00Z",
"to_timestamp": "2025-11-11T00:00:00Z",
"contract_address": "bc4ca0eda7647a8ab7c2061c2e118a18a936f13d"
}'
{
"meta": {
"chain_id": 1,
"request_window": {
"from_block": 12345678,
"to_block": 12345999,
"from_timestamp": "2025-10-29T00:00:00Z",
"to_timestamp": "2025-11-11T00:00:00Z"
},
"filters": {
"contract_address": "bc4ca0eda7647a8ab7c2061c2e118a18a936f13d"
}
},
"data": [
{
"chain_id": 1,
"contract_address": "bc4ca0eda7647a8ab7c2061c2e118a18a936f13d",
"block_number": 12287507,
"block_time": "2021-04-22T23:43:17Z",
"tx_index": 114,
"name": "BoredApeYachtClub",
"symbol": "BAYC",
"token_uri": "ipfs://QmeSjSinHpPnmXmspMjwiXyN6zS4E9zccariGR3jxcaWtq/",
"supports_metadata": true,
"supports_enumerable": true,
"_tracing_id": "0202000000000000000000000000000000000001",
"_parent_tracing_ids": [
"0103000000000000000000000000000000000001"
],
"_created_at": "2025-11-11T18:42:15.123Z",
"_updated_at": "2025-11-11T18:42:15.123Z"
}
],
"cursor": null,
"count": 1
}