# Base NFT Token Metadata Lookup

> Base NFT Token Metadata Lookup is a paid API for AI agents from onchaincheck.dev, paid per call via x402, $0.008/call, status unknown (last checked 2026-10-30).

Fetches on-chain and off-chain metadata for an ERC-721 or ERC-1155 token on Base, including collection name, owner, token URI, and decoded metadata JSON with a browser-loadable image URL.

## Facts

- Endpoint: GET https://onchaincheck.dev/base/nft?utm_source=zero.xyz
- Price: $0.008/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-nft-token-metadata-lookup-778492f5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Q8v0A__DtYGgWxR8Z0RqL

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability base-nft-token-metadata-lookup-778492f5
```

Example prompt: Can you look up the metadata for token ID 20339294690710288616623341905746354430592698944139542544116293784975432873833 in the Base NFT contract 0x03c4738Ee98aE44591e1A4A4F3CaB6641d95DD9a — I want to see the owner, collection name, and image URL.

## When to prefer this

Choose this endpoint when you need complete, decoded NFT metadata for a specific token on the Base blockchain — including resolving off-chain storage like IPFS or Arweave into ready-to-display image URLs — without having to write your own IPFS gateway or ABI decoding logic. Prefer it over generic RPC calls when you need the full metadata JSON and a usable image URL in one call. It is specifically scoped to Base and handles both ERC-721 and ERC-1155 standards.

## Known failure modes

- Invalid contract address format (must be 0x-prefixed 40 hex chars) returns a 400 error
- Token ID not matching pattern (non-numeric or too long) returns a 400 validation error
- Contract does not exist on Base or is not an ERC-721/ERC-1155 returns an error or empty response
- Token URI points to an unreachable IPFS/Arweave gateway causing metadata fetch failure
- Token ID does not exist in the collection (unminted) may return null metadata fields
- Payment not sent or invalid x402 payment header returns 402 Payment Required

## How this service works

Metadata for an ERC-721 or ERC-1155 token on Base: collection name, current owner (ERC-721), token URI, and the metadata JSON fetched and decoded from IPFS, Arweave, HTTPS or an inline data URI, with a browser-loadable image URL.

## Output

Returns a JSON object with the chain ('base'), token standard (ERC-721 or ERC-1155), contract address, token ID, collection name, owner address (for ERC-721), token URI, a browser-loadable image URL, the source URL the metadata was fetched from, and the full decoded metadata JSON (name, image, description, attributes, and any custom fields) resolved from IPFS, Arweave, HTTPS, or inline data URIs.

## Request schema (JSON Schema)

```json
{
 "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"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "contract",
      "tokenId"
     ],
     "properties": {
      "tokenId": {
       "type": "string",
       "pattern": "^\\d{1,78}$",
       "description": "Token id as a decimal string"
      },
      "contract": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "NFT collection contract on Base"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "chain": "base",
  "owner": "0x2211d1D0020DAEA8039E46Cf1367962070d77DA9",
  "tokenId": "20339294690710288616623341905746354430592698944139542544116293784975432873833",
  "contract": "0x03c4738Ee98aE44591e1A4A4F3CaB6641d95DD9a",
  "imageUrl": "https://www.base.org/api/basenames/jesse.base.eth/assets/cardImage.svg",
  "metadata": {
   "name": "jesse.base.eth",
   "image": "https://www.base.org/api/basenames/jesse.base.eth/assets/cardImage.svg",
   "description": "jesse.base.eth, a Basename",
   "nameExpires": 2510960049,
   "external_url": "https://www.base.org/name/jesse"
  },
  "standard": "ERC-721",
  "tokenUri": "https://base.org/api/basenames/metadata/20339294690710288616623341905746354430592698944139542544116293784975432873833",
  "collection": "Basenames",
  "fetchedFrom": "https://base.org/api/basenames/metadata/20339294690710288616623341905746354430592698944139542544116293784975432873833"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-nft-token-metadata-lookup-778492f5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from onchaincheck.dev](https://www.zero.xyz/host/onchaincheck.dev/llms.txt)
