{"uid":"cap_gsZuQw0LpFxQStGJJOB-2","slug":"skills-onesource-io-a94bdef9","name":"OneSource NFT Metadata Lookup","description":"Fetches metadata for NFTs on-chain.","url":"https://skills.onesource.io/api/chain/nft-metadata","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","required":["contract","token_id"],"properties":{"network":{"enum":["ethereum","sepolia","robinhood"],"type":"string","default":"ethereum"},"contract":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"token_id":{"type":"string","pattern":"^[0-9]+$"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"metadata":{"type":"object","properties":{"name":{"type":"string"},"image":{"type":"string"},"attributes":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"trait_type":{"type":"string"}}}}}},"protocol":{"type":"string"},"token_id":{"type":"string"},"token_uri":{"type":"string"},"resolved_url":{"type":"string"},"contract_address":{"type":"string"}},"description":"Endpoint-specific response payload"},"meta":{"type":"object","required":["endpoint","request_id"],"properties":{"endpoint":{"type":"string"},"cost_usdc":{"type":"string"},"request_id":{"type":"string"},"payment_chain":{"type":"string"},"payment_token":{"type":"string"}}},"error":{"type":["object","null"],"properties":{"code":{"type":"integer"},"message":{"type":"string"}}}}}}}}},"responseSchema":null,"example":{"request":{"network":"ethereum","contract":"0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D","token_id":"1234"},"response":{"data":{"metadata":{"image":"http://ipfs.onesource.io/ipfs/QmZ2ddtVUV1brVGjpq6vgrG6jEgEK3CqH19VURKzdwCSRf","attributes":[{"value":"Sleepy","trait_type":"Eyes"},{"value":"Army Green","trait_type":"Background"},{"value":"Leather Jacket","trait_type":"Clothes"},{"value":"Blue","trait_type":"Fur"},{"value":"Bored Bubblegum","trait_type":"Mouth"},{"value":"Fisherman's Hat","trait_type":"Hat"}]},"protocol":"ipfs","token_id":"1234","token_uri":"ipfs://QmeSjSinHpPnmXmspMjwiXyN6zS4E9zccariGR3jxcaWtq/1234","resolved_url":"https://ipfs.io/ipfs/QmeSjSinHpPnmXmspMjwiXyN6zS4E9zccariGR3jxcaWtq/1234","contract_address":"0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D"},"meta":{"endpoint":"/api/chain/nft-metadata","request_id":"499cc08aa676a3ee"}}},"exampleRequest":{"network":"ethereum","contract":"0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D","token_id":"1234"},"tags":["x402"],"displayCostAmount":"0.008","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.008/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.008","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.008","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_ZHDAubS0jMTXx0xuCapK6","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.008","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fetches NFT metadata, traits, and image URI for any ERC721 or ERC1155 token by contract address and token ID via live Ethereum RPC with IPFS resolution","exampleAgentPrompt":"What are the traits and image for Bored Ape Yacht Club token ID 1234 on Ethereum — can you pull the full metadata from the contract 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D?","exampleUseCases":null,"resultDescription":"Returns NFT metadata including token name, description, image URI (with IPFS resolved to a usable URL), and an array of trait/attribute key-value pairs for the specified ERC721 or ERC1155 token on the given EVM network.","failureModes":["Invalid contract address format returns validation error","Token ID does not exist on the contract returns not found or empty metadata","IPFS resolution timeout if metadata hosted on slow IPFS nodes","Contract is not ERC721 or ERC1155 compliant returns call failure","Unsupported network name returns enum validation error","Token metadata stored off-chain on unreachable server returns fetch error"],"whenToPreferThis":"Use this endpoint when you need to resolve NFT metadata including traits and images for ERC721 or ERC1155 tokens on Ethereum mainnet or supported EVM-compatible chains (Base, Avalanche, Sepolia, MegaETH). Preferred when IPFS resolution is needed alongside on-chain eth_call, and when you want a single call that returns fully resolved metadata rather than a raw tokenURI string.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T12:44:05.241Z","isFirstParty":false}