{"uid":"cap_wY5vIIv2FS7eNwrYYRZfR","slug":"2s-io-nft-lookup-2aa28ecf","name":"2s.io NFT Lookup","description":"Live ERC-721 NFT read (Base, Ethereum, Polygon, Arbitrum, Optimism; keyless). Given a contract + tokenId: returns current owner, collection name/symbol, and tokenURI (IPFS auto-resolved to a gateway URL). Pass metadata=1 to also fetch and normalize the token's JSON metadata (name, description, image, attributes). For NFT provenance, ownership checks, and gallery rendering.","url":"https://2s.io/api/crypto/nft","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","queryParams"],"properties":{"type":{"const":"http"},"method":{"const":"GET"},"queryParams":{"type":"object","required":["address","tokenId"],"properties":{"chain":{"enum":["base","ethereum","polygon","arbitrum","optimism"],"type":"string","description":"Default ethereum."},"address":{"type":"string","description":"NFT contract address."},"tokenId":{"type":"string","maxLength":80,"description":"Token id (decimal)."},"metadata":{"enum":["0","1","true","false"],"type":"string","description":"1 to also fetch token JSON metadata."}},"additionalProperties":false}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.0036","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","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.0036/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.0036","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.0036","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_wP8Df5Cp2aBbroidqoNz9","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.0036","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fetches live ERC-721 NFT ownership, collection info, and token metadata across Base, Ethereum, Polygon, Arbitrum, and Optimism from a contract address and token ID","exampleAgentPrompt":"Who owns token ID 5281 on the contract 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13d on Ethereum, and can you also pull the full token metadata including its image and attributes?","exampleUseCases":null,"resultDescription":"Returns the current owner wallet address, collection name and symbol, the tokenURI (with IPFS auto-resolved to an HTTP gateway URL), and optionally the full normalized JSON metadata including token name, description, image URL, and attributes array.","failureModes":["Invalid or non-existent contract address returns an error","Token ID does not exist on the contract returns not-found error","Unsupported chain returns validation error","IPFS metadata fetch failure if token URI is unreachable","Rate limiting or payment failure returns 402"],"whenToPreferThis":"Use this endpoint when you need live, on-chain ERC-721 NFT data — current ownership, tokenURI, or full metadata — across multiple EVM chains without needing an API key. Prefer over block explorer scraping or manual IPFS resolution when you need normalized, ready-to-render NFT data with automatic IPFS gateway resolution.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T06:49:31.081Z","isFirstParty":false}