API ReferenceNFT APIGet NFT Traits and RarityGet NFTs by TraitsVersion: 2.2Get NFTs by TraitsPOSThttps://deep-index.moralis.io/api/v2.2/nft/:address/nfts-by-traitsGet NFTs by traits for a given contract.PATH PARAMSaddressstringrequiredThe address of the NFT contractQUERY PARAMSchainstringThe chain to queryeth0x1sepolia0xaa36a7polygon0x89bsc0x38bsc testnet0x61avalanche0xa86afantom0xfapalm0x2a15c308dcronos0x19arbitrum0xa4b1chiliz0x15b38chiliz testnet0x15b32gnosis0x64gnosis testnet0x27d8base0x2105base sepolia0x14a34optimism0xaholesky0x4268polygon amoy0x13882linea0xe708moonbeam0x504moonriver0x505moonbase0x507flow0x2ebflow-testnet0x221linea sepolia0xe705formatstringThe format of the token IDdecimalhexlimitnumberThe desired page size of the result.cursorstringThe cursor returned in the previous response (used for getting the next page).normalizeMetadatabooleanThe option to enable metadata normalization. Learn more about metadata normalization here.falsetruemedia_itemsbooleanShould preview media data be returned? Learn more about media items here.falsetrueBODY PARAMjsonrequiredtraits{"traits":{"body":"astronaut","skin":"purple"}}Responses200 Returns a collection of NFTsobjectAPI KEYTest Live APINode.jsPythoncURLGoPHP// Dependencies to install:// $ npm install node-fetch --save// add "type": "module" to package.jsonimport fetch from 'node-fetch';const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json', 'X-API-Key': 'YOUR_API_KEY' }, body: JSON.stringify({ "traits": { "body": "astronaut", "skin": "purple" } })};fetch('https://deep-index.moralis.io/api/v2.2/nft/0x524cab2ec69124574082676e6f654a18df49a048/nfts-by-traits?chain=eth&format=decimal&media_items=false', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));# Dependencies to install:# $ python -m pip install requestsimport requestsurl = "https://deep-index.moralis.io/api/v2.2/nft/0x524cab2ec69124574082676e6f654a18df49a048/nfts-by-traits?chain=eth&format=decimal&media_items=false"payload = { "traits": { "body": "astronaut", "skin": "purple" }}headers = { "Accept": "application/json", "Content-Type": "application/json", "X-API-Key": "YOUR_API_KEY"}response = requests.request("POST", url, json=payload, headers=headers)print(response.text)curl --request POST \ --url 'https://deep-index.moralis.io/api/v2.2/nft/0x524cab2ec69124574082676e6f654a18df49a048/nfts-by-traits?chain=eth&format=decimal&media_items=false' \ --header 'accept: application/json' \ --header 'X-API-Key: YOUR_API_KEY' \ --header 'content-type: application/json' \ --data '{ "traits": { "body": "astronaut", "skin": "purple" }}'package mainimport ( "fmt" "strings" "net/http" "io/ioutil")func main() { url := "https://deep-index.moralis.io/api/v2.2/nft/0x524cab2ec69124574082676e6f654a18df49a048/nfts-by-traits?chain=eth&format=decimal&media_items=false" payload := strings.NewReader("{\"traits\":{\"body\":\"astronaut\",\"skin\":\"purple\"}}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Accept", "application/json") req.Header.Add("Content-Type", "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('POST', 'https://deep-index.moralis.io/api/v2.2/nft/0x524cab2ec69124574082676e6f654a18df49a048/nfts-by-traits?chain=eth&format=decimal&media_items=false', [ 'body' => '{"traits":{"body":"astronaut","skin":"purple"}}', 'headers' => [ 'Accept' => 'application/json', 'X-API-Key' => 'YOUR_API_KEY', 'Content-Type' => 'application/json', ],]);echo $response->getBody();Response Example200 Returns a collection of NFTs{ "page": "2", "page_size": "100", "cursor": "", "result": { "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", "rarity_rank": 21669, "rarity_label": "Top 98%", "rarity_percentage": 98, "last_sale": { "transaction_hash": "string", "block_timestamp": "string", "buyer_address": "string", "seller_address": "string", "price": "string", "price_formatted": "string", "usd_price_at_sale": "string", "current_usd_value": "string", "token_id": "string", "payment_token": { "token_name": "string", "token_symbol": "string", "token_logo": "string", "token_decimals": "string", "token_address": "string" } } }}