API ReferenceNFT APIGet NFT MetadataGet NFT metadataVersion: 2.2Get NFT metadataGEThttps://deep-index.moralis.io/api/v2.2/nft/:address/:token_idGet NFT data, including metadata (where available), for the given NFT token ID and contract address. Requests for contract addresses not yet indexed will automatically start the indexing process for that NFT collection PATH PARAMSaddressstringrequiredThe address of the NFT contracttoken_idstringrequiredThe ID of the tokenQUERY PARAMSchainstringThe chain to queryeth0x1sepolia0xaa36a7holesky0x4268polygon0x89polygon amoy0x13882bsc0x38bsc testnet0x61avalanche0xa86afantom0xfapalm0x2a15c308dcronos0x19arbitrum0xa4b1gnosis0x64gnosis testnet0x27d8chiliz0x15b38chiliz testnet0x15b32base0x2105base sepolia0x14a34optimism0xaoptimism sepolia0xaa37dclinea0xe705linea sepolia0xe705moonbeam0x504moonriver0x505moonbase0x507formatstringThe format of the token IDdecimalhexnormalizeMetadatabooleanThe option to enable metadata normalization. Learn more about metadata normalization here.falsetruemedia_itemsbooleanShould preview media data be returned? Learn more about media items here.falsetrueResponses200 Returns the specified NFT.objectAPI KEYTest Live APINode.jsPythoncURLGoPHPimport Moralis from 'moralis';try { await Moralis.start({ apiKey: "YOUR_API_KEY" }); const response = await Moralis.EvmApi.nft.getNFTMetadata({ "chain": "0x1", "format": "decimal", "normalizeMetadata": true, "mediaItems": false, "address": "0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB", "tokenId": "1" }); console.log(response.raw);} catch (e) { console.error(e);}from moralis import evm_apiapi_key = "YOUR_API_KEY"params = { "chain": "eth", "format": "decimal", "media_items": False, "normalize_metadata": True, "address": "0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB", "token_id": "1"}result = evm_api.nft.get_nft_metadata( api_key=api_key, params=params,)print(result)curl --request GET \ --url 'https://deep-index.moralis.io/api/v2.2/nft/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/1?chain=eth&format=decimal&normalizeMetadata=true&media_items=false' \ --header 'accept: application/json' \ --header 'X-API-Key: YOUR_API_KEY' package mainimport ( "fmt" "net/http" "io/ioutil")func main() { url := "https://deep-index.moralis.io/api/v2.2/nft/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/1?chain=eth&format=decimal&normalizeMetadata=true&media_items=false" req, _ := http.NewRequest("GET", url, payload) req.Header.Add("Accept", "application/json") req.Header.Add("X-API-Key", "YOUR_API_KEY") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body))}<?php// Dependencies to install:// $ composer require guzzlehttp/guzzlerequire_once('vendor/autoload.php');$client = new \GuzzleHttp\Client();$response = $client->request('GET', 'https://deep-index.moralis.io/api/v2.2/nft/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/1?chain=eth&format=decimal&normalizeMetadata=true&media_items=false', [ 'headers' => [ 'Accept' => 'application/json', 'X-API-Key' => 'YOUR_API_KEY', ],]);echo $response->getBody();Response Example200 Returns the specified NFT.{ "token_address": "0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB", "token_id": "15", "owner_of": "0x9c83ff0f1c8924da96cb2fcb7e093f78eb2e316b", "token_hash": "502cee781b0fb40ea02508b21d319ced", "block_number": "88256", "block_number_minted": "88256", "contract_type": "ERC721", "token_uri": "", "metadata": "", "normalized_metadata": "", "media": "", "minter_address": "0x9c83ff0f1c8924da96cb2fcb7e093f78eb2e316b", "last_token_uri_sync": "", "last_metadata_sync": "", "amount": "1", "name": "CryptoKitties", "symbol": "RARI", "possible_spam": "false", "verified_collection": "false"}