{"uid":"cap_4tqe2KanybaHOHQ_iZhgp","slug":"nft-owner-and-metadata-lookup-6cb3f77b","name":"NFT Owner and Metadata Lookup","description":"60 paid endpoints with no metering, no API key and no account. Each endpoint has one flat price per call, whatever the size of the request: LLM completions with automatic failover across several large models, read-only EVM tooling over Base, Ethereum, Polygon, Arbitrum and Optimism, and pure crypto utilities that touch no network.","url":"https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/nft-owner","method":"POST","headers":{},"bodySchema":{"type":"object","required":["tokenId","contract"],"properties":{"chain":{"type":"string","description":"base | ethereum | polygon | arbitrum | optimism."},"tokenId":{"type":"string","description":"Token id, in decimal."},"contract":{"type":"string","description":"ERC721 contract address."}}},"responseSchema":{"type":"object","properties":{"owner":{"type":"string"},"tokenURI":{"type":"string"},"collection":{"type":"string"}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","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.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_lYb5eI4Cg03mP2u0aWEuH","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns the current owner address, tokenURI, and collection name for a given ERC721 token ID via on-chain eth_call, no indexer or API key required.","exampleAgentPrompt":"Who currently owns token ID 42 of the ERC721 contract 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13d on Ethereum — and what's its tokenURI and collection name?","exampleUseCases":[{"title":"Verify NFT ownership before transfer","prompt":"Before I send that BAYC token, can you check whether wallet 0xAbCd...1234 still owns token ID 7495 on the contract 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13d on Ethereum?"},{"title":"Fetch NFT metadata URI for display","prompt":"I need the tokenURI and collection name for token ID 101 of the NFT contract 0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e on Polygon so I can load its artwork."},{"title":"Monitor NFT ownership change","prompt":"Check who currently owns token ID 1 on the ERC721 contract 0x34d85c9CDeB23FA97cb08333b511ac86E1C4E258 on Base — I want to know if it's changed hands since last week."}],"resultDescription":"Returns a JSON object with three fields: `owner` (the current holder's Ethereum address), `tokenURI` (the metadata URI stored on-chain for the token), and `collection` (the ERC721 contract's name). All data is fetched live via eth_call so it reflects the current on-chain state.","failureModes":["Invalid or non-ERC721 contract address returns an error or empty response","Token ID does not exist on the contract (not yet minted or burned) returns a revert error","Unsupported chain name causes a 400 or unrecognized parameter error","Network congestion or RPC timeout may delay or fail the call","Malformed token ID (non-decimal or out-of-range) returns a validation error"],"whenToPreferThis":"Choose this endpoint when you need a fast, keyless, real-time on-chain ownership check for a single ERC721 token without setting up an NFT indexer (like Alchemy, Moralis, or OpenSea APIs). Ideal for agents that need to verify current ownership state before executing logic (e.g. gating access, confirming a trade), especially on Base, Ethereum, Polygon, Arbitrum, or Optimism. Not suitable for bulk lookups, ERC1155 tokens, or off-chain metadata resolution.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T18:50:46.119Z","isFirstParty":false}