# Base NFT Contract Intelligence (On-Chain)

> Base NFT Contract Intelligence (On-Chain) is a paid API for AI agents from x402-data-api.bodhinindustries.workers.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Fetches on-chain metadata and token-level details for an ERC-721 or ERC-1155 NFT contract on Base, including collection info, standard detection, total supply, ownership, and tokenURI — computed live from raw chain data.

## Facts

- Endpoint: GET https://x402-data-api.bodhinindustries.workers.dev/nft
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-nft-contract-intelligence-on-chain-9c538bd7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_uUrZZ1tR5GrSouP7w7lO8

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-contract-intelligence-on-chain-9c538bd7
```

Example prompt: Look up the NFT contract at 0x5180db8F5c931aaE63c74266b211F580155ecac8 on Base and tell me whether it's ERC-721 or ERC-1155, the collection name and symbol, total supply, and — for token ID 1 — who owns it and what the raw on-chain tokenURI is.

## When to prefer this

Use this endpoint when you need trustless, self-computed NFT contract intelligence on Base without relying on any third-party indexer (e.g. OpenSea, Alchemy, Moralis). Ideal for verifying NFT standard, ownership, or tokenURI provenance directly from the chain. Prefer this over NFT marketplace APIs when auditability and raw on-chain accuracy matter, or when the collection is new and not yet indexed.

## Known failure modes

- Invalid or non-existent contract address returns unknown standard or null fields
- Non-NFT contract address (e.g. ERC-20) may return unknown standard with no token data
- Token ID not found or burned token may return null owner
- IPFS/Arweave tokenURIs returned raw without resolution — agent must fetch separately
- Rate limiting or chain RPC unavailability may cause timeout
- Missing required 'contract' parameter returns an error response

## How this service works

Self-computed Base onchain toolkit for AI agents: ERC-20 safety scan, manipulation-resistant TWAP price oracle, gas/fee oracle, calldata decoder, token/address/contract intel, wallet approval-risk audit, and batch token triage — all computed live from raw Base chain, no third-party data.

## Output

Returns a JSON object with: collection name and symbol, detected standard (erc721/erc1155/unknown), boolean flags for isErc721 and isErc1155, total supply, whether the address has deployed bytecode, any warning flags, a token sub-object with the owner address (ERC-721) and raw tokenURI plus its scheme (ipfs/data/ar/https/http/other), the queried token ID, resolved contract address, computation timestamp, and a confirmation that no third-party data was used.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "contract"
 ],
 "properties": {
  "tokenId": {
   "type": "string",
   "description": "Optional token id (decimal). If given, returns owner (721) + tokenURI/uri."
  },
  "contract": {
   "type": "string",
   "description": "Base NFT contract address (ERC-721 or ERC-1155)."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "name": {
   "type": "string",
   "description": "collection name (or null)"
  },
  "flags": {
   "type": "array",
   "items": {
    "type": "string"
   }
  },
  "token": {
   "type": "object",
   "properties": {
    "owner": {
     "type": "string",
     "description": "ERC-721 owner (or null)"
    },
    "tokenUri": {
     "type": "string",
     "description": "RAW on-chain tokenURI (or null)"
    },
    "tokenUriScheme": {
     "type": "string",
     "description": "ipfs|data|ar|https|http|other"
    }
   }
  },
  "symbol": {
   "type": "string",
   "description": "collection symbol (or null)"
  },
  "tokenId": {
   "type": "string",
   "description": "queried id (or null)"
  },
  "contract": {
   "type": "string",
   "description": "contract resolved"
  },
  "isErc721": {
   "type": "boolean",
   "description": "ERC-721"
  },
  "standard": {
   "type": "string",
   "description": "erc721 | erc1155 | unknown"
  },
  "isErc1155": {
   "type": "boolean",
   "description": "ERC-1155"
  },
  "computedAt": {
   "type": "string",
   "description": "ISO-8601 timestamp"
  },
  "isContract": {
   "type": "boolean",
   "description": "has bytecode"
  },
  "totalSupply": {
   "type": "string",
   "description": "total supply (or null)"
  },
  "thirdPartyDataUsed": {
   "type": "boolean",
   "description": "always false"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-nft-contract-intelligence-on-chain-9c538bd7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-data-api.bodhinindustries.workers.dev](https://www.zero.xyz/host/x402-data-api.bodhinindustries.workers.dev/llms.txt)
