Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.blockdb.io/llms.txt

Use this file to discover all available pages before exploring further.

Overview

  • Dataset ID: 0202
  • Table: blockdb_evm.b0202_erc721_tokens_v1
  • Description: Catalog of ERC-721 NFT collection contracts (EIP-721).
  • Stable id: contract_id (per deployment incarnation; multiple snapshot rows possible—see callout)
  • API: POST /evm/entities/tokens/erc721
  • CSV Sample: Download
  • JSON Sample: Download

How we recognize ERC-721

We treat a contract as ERC-721 when it complies with the EIP-721 Non-Fungible Token Standard. Primary detection uses ERC-165: we call supportsInterface(0x80ac58cd) and, if it returns true, we classify the address as an ERC-721 NFT collection. If that check is unavailable, we use a fallback heuristic: the contract returns a valid result for ownerOf(uint256) and does not implement decimals() (so it is distinguished from ERC-20). Optional extensions — ERC721Metadata (name, symbol, tokenURI) and ERC721Enumerable — are detected via their ERC-165 interface IDs; we store token_uri, supports_metadata, and supports_enumerable when present.
This table is append-only: the same contract_id can have multiple rows when an upgradeable proxy swaps implementation—we append refreshed view reads at upgradeBlock + 1 with tx_index = -1 (genesis rows use a normal tx index). For current metadata, take the latest block_number per contract_id (for point-in-time, add block_number <= $target first). Join on contract_id, not contract_address alone—redeploys at the same address get a new contract_id.

Sample Viewer

Columns

ColumnTypeDescription
contract_idBYTEAUnique contract incarnation ID: 20B address + 4B creation block (BE) + 2B tx_index (BE).
contract_addressBYTEAAddress of the ERC-721 contract (20 bytes).
block_numberBIGINTBlock of the log we attribute as the genesis/recognition point.
block_timeTIMESTAMPTZUTC timestamp of the block.
tx_indexINTEGERTransaction index in the block, or -1 for proxy-upgrade refresh rows (see callout).
nameTEXTCollection name from name() (ERC721Metadata, optional).
symbolTEXTCollection symbol from symbol() (ERC721Metadata, optional).
token_uriTEXTRepresentative sample from the discovery probe.
supports_metadataBOOLEANWhether the contract supports the ERC721Metadata extension; NULL when detection was via fallback.
supports_enumerableBOOLEANWhether the contract supports the ERC721Enumerable extension; NULL when detection was via fallback.
_tracing_idBYTEATracing ID of this ERC-721 token record.
_parent_tracing_idsBYTEA[]Tracing IDs of the parent records leading to this ERC-721 token record.
_created_atTIMESTAMPTZRecord creation timestamp.
_updated_atTIMESTAMPTZRecord last update timestamp.

Use Cases

  • NFT collection registry for marketplaces and analytics platforms
  • Collection discovery and new listing detection
  • Metadata resolution via token_uri for display purposes
  • Portfolio tracking and wallet analytics for NFT holdings

Token Transfers

ERC-721 transfer events for these NFTs.

ERC-20 Tokens

Fungible token registry for cross-standard joins.

ERC-1155 Tokens

Multi-token standard for gaming and metaverse assets.
Last modified on April 22, 2026