Overview
- Dataset ID:
0304 - Token Transfers
- Description: Token transfer events (native ETH, ERC-20, ERC-721, ERC-1155) produced by TokenTransfersEngine from transactions, internal transactions, and transfer logs.
- Sample: Hugging Face Sample
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 or a time range.
Providing both results in HTTP 400.
Providing none results in HTTP 400.
Optional Filters
Filter by sender address (hex string, 20 bytes, no 0x prefix).
Filter by recipient address (hex string, 20 bytes, no 0x prefix).
Filter by token contract address (hex string, 20 bytes, no 0x prefix). Use null for native network token (e.g. ETH on Ethereum).
Filter by transfer type: native_tx, native_internal, erc20, erc721, erc1155. Omit to return all types.
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 (addresses, transfer_type, pagination state, etc.).
Data
Each element mirrors the table columns (chain implied by meta.chain_id). Primary key in SQL is _tracing_id.
EVM Chain ID for the record.
Block where the transfer occurred.
UTC timestamp of the block (ISO-8601).
Transaction index within the block.
Log index within the transaction receipt; null for native or internal tx transfers.
Trace address for internal tx transfers (e.g. "0", "0.1"); null for log-based transfers.
Sender address (hex string, 20 bytes, no 0x prefix).
Recipient address (hex string, 20 bytes, no 0x prefix).
Token contract address (hex string, 20 bytes); null for native ETH.
Raw amount in smallest unit (wei for native, raw uint256 for ERC-20/1155). String to preserve precision.
Decimal-adjusted amount; null if decimals unknown or NFT (ERC-721).
Token ID for ERC-721 and ERC-1155; null for native/ERC-20. String to preserve precision.
One of: native_tx, native_internal, erc20, erc721, erc1155.
BlockDB lineage identifier (hex string, no 0x prefix).
BlockDB lineage identifiers of the parent records.
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/transfers/token-transfers" \
-H "Authorization: Bearer $BLOCKDB_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"chain_id": 1,
"from_block": 12345678,
"to_block": 12345999,
"from_address": "0000000000000000000000000000000000000000",
"to_address": "0000000000000000000000000000000000000001",
"token_address": "c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"transfer_type": ["erc20", "erc721"],
"limit": 250,
"cursor": null
}'
{
"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": {
"transfer_type": [
"erc20",
"erc721"
],
"limit": 250,
"cursor": null
}
},
"data": [
{
"chain_id": 1,
"block_number": 12345680,
"block_time": "2025-10-29T00:01:23Z",
"tx_index": 5,
"log_index": 2,
"trace_address": null,
"from_address": "0000000000000000000000000000000000000000",
"to_address": "0000000000000000000000000000000000000001",
"token_address": "c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"amount_raw": "1000000000000000000",
"amount_adj": "1.0",
"token_id": null,
"transfer_type": "erc20",
"_tracing_id": "0304000000000000000000000000000000000001",
"_parent_tracing_ids": [
"0102000000000000000000000000000000000001",
"0201000000000000000000000000000000000001"
],
"_created_at": "2025-11-11T18:42:15.123Z",
"_updated_at": "2025-11-11T18:42:15.123Z"
},
{
"chain_id": 1,
"block_number": 12345681,
"block_time": "2025-10-29T00:02:00Z",
"tx_index": 12,
"log_index": 0,
"trace_address": null,
"from_address": "bc4ca0eda7647a8ab7c2061c2e118a18a936f13d",
"to_address": "0000000000000000000000000000000000000002",
"token_address": "bc4ca0eda7647a8ab7c2061c2e118a18a936f13d",
"amount_raw": "1",
"amount_adj": null,
"token_id": "1234",
"transfer_type": "erc721",
"_tracing_id": "0304000000000000000000000000000000000002",
"_parent_tracing_ids": [
"0102000000000000000000000000000000000001",
"0201000000000000000000000000000000000001"
],
"_created_at": "2025-11-11T18:42:15.123Z",
"_updated_at": "2025-11-11T18:42:15.123Z"
}
],
"cursor": "next_page_cursor",
"count": 2
}