Skip to main content

Get NFT Metadata by Token IDs

POST

Retrieves metadata for specific NFTs. Multiple NFTs can be queried, up to a maximum of 100 NFTs.

📘 What are NFT Metadata and Token URI?

NFTs are a technology that ensures ownership and uniqueness of digital assets. NFT metadata is a critical component that stores information about these assets. Metadata plays an important role in describing the essence of an NFT.

1. NFT Metadata

Includes the NFT's creator, issuance date, attributes, and media files (e.g., images, videos). This metadata makes an NFT more than just a digital file—it defines a unique asset and establishes the NFT's scarcity or distinctive characteristics.

2. Token URI

Storing data on the blockchain is costly. Therefore, metadata and media files are not stored on the blockchain but are kept in external storage such as IPFS or S3. Token URI is a field that points to the location of the metadata file in such external storage. Metadata is accessed via this URI. In other words, Token URI links metadata and media files, serving as the bridge between on-chain information and actual content.

Path Parameters
chainstringrequired
Parameter specifying the target chain to query.
networkstringrequired
Parameter specifying the network of the target chain.
Request Body
tokensarrayrequired
List of NFTs to query. Up to 100 NFTs can be queried.
tokens[0]
contractAddressstringrequired
Parameter specifying the contract address to query. Can be entered as a 40-character hexadecimal string starting with 0x.
tokenIdstringrequired
Parameter specifying the NFT token ID to query. Can be entered as a decimal string.
tokens[1]
contractAddressstringrequired
Parameter specifying the contract address to query. Can be entered as a 40-character hexadecimal string starting with 0x.
tokenIdstringrequired
Parameter specifying the NFT token ID to query. Can be entered as a decimal string.
Responses
tokenIdstringrequired
A field representing the unique ID of the NFT token. This ID is used to identify the NFT.
tokenUristringrequired
A field representing the URI where the original metadata of the NFT is located. Format may vary by contract implementation, but is typically provided as an IPFS address or web URL.
tokenUriSyncedAtstringrequired
A field representing when the tokenUri of the NFT was synchronized.
rawMetadatastringrequired
A field representing the rawMetadata of the NFT.
metadataSyncedAtstringrequired
A field representing when the metadata of the NFT was synchronized.
addressstringrequired
A field representing the contract address.
deployedTransactionHashstringrequired
A field representing the hash of the transaction in which the contract was deployed.
deployedAtstringrequired
A field representing the time when the contract was deployed. This field is provided in ISO 8601 date and time format.
deployerAddressstringrequired
A field representing the address that deployed the contract.
logoUrlstringrequired
A field representing the logo URL of the contract. This URL can be used to visually identify the contract. [Note] Not all contracts have logo images available. If a contract has no logo, this field is provided as null.
typestringrequired
A field representing the type of the contract. Contract types are denoted by standard specification names (e.g., ERC721, ERC1155, ERC20, ERC721, ERC1155, ERC20).
namestringrequired
A field representing the name of the contract. Returns an empty string if the contract does not follow the standard or if name was not provided at contract creation.
symbolstringrequired
A field representing the symbol of the contract. Returns an empty string if the contract does not follow the standard or if symbol was not provided at contract creation.
totalSupplystring
A field representing the total supply of the contract. This value indicates the total token supply and is provided as a decimal string. Included in the response only when the contract type is ERC20.
decimalsinteger
A field representing the decimal places of the contract. Included in the response only when the contract type is ERC20 or ERC1155.
codestringrequired
Code identifying the cause of the failed request.
messagestringrequired
Detailed message including the name and value of the invalid parameter.
{
"code": "MISSING_REQUIRED_PARAMETER",
"message": "Missing required parameter: { PARAMETER_NAME }"
}
cURL
curl -X POST 'https://web3.nodit.io/v1/avalanche/mainnet/nft/getNftMetadataByTokenIds' \
-H 'Content-Type: application/json' \
-H 'X-API-KEY: nodit-demo' \
-d '{
"tokens": [
{
"contractAddress": "0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D",
"tokenId": "1"
},
{
"contractAddress": "0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D",
"tokenId": "2"
}
]
}'