# ERC-20 Token Metadata Resolver

> ERC-20 Token Metadata Resolver is a paid API for AI agents from agent402.tools, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-14).

Resolves an ERC-20 contract address to its human-readable on-chain metadata: symbol, name, decimals, and logo URL.

## Facts

- Endpoint: POST https://agent402.tools/api/token-metadata
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/erc-20-token-metadata-resolver-0c915e46
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_KvaJrAw-4DyAFrA9e75J2

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 erc-20-token-metadata-resolver-0c915e46 -d '<json body>'
```

Example prompt: What token is the contract 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 on Ethereum — give me its symbol, name, decimals, and logo if available.

## When to prefer this

Use this endpoint when you have a raw ERC-20 contract address and need to humanize it for display or downstream calculations. Ideal before showing token info to end users or computing fiat values from raw amounts. Supports Ethereum, Base, Polygon, Arbitrum, and Optimism.

## Known failure modes

- Contract address not found on specified network — returns 404 or empty metadata
- Invalid or malformed 0x address — returns validation error
- Unsupported network name — returns error listing valid options
- Token exists but has no logo — logo URL field is null or absent
- Rate limit or payment failure — returns 402 or 429

## How this service works

Resolve an ERC-20 contract address to its on-chain metadata: symbol, decimals, name, and logo URL where available. Use this to humanize a raw contract address before showing it to a user or before computing fiat values.

## Output

Returns the token's on-chain symbol (e.g. USDC), full name (e.g. USD Coin), decimal precision (e.g. 6), and a logo image URL where available — everything needed to display the token in a human-readable way or compute fiat values.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "network": {
   "type": "string",
   "description": "ethereum / base / polygon / arbitrum / optimism (default base)."
  },
  "contract": {
   "type": "string",
   "description": "0x-prefixed 40-char ERC-20 contract address."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "logo": "https://example.com/usdc.png",
  "name": "USD Coin",
  "symbol": "USDC",
  "network": "base",
  "contract": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
  "decimals": 6
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/erc-20-token-metadata-resolver-0c915e46/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent402.tools](https://www.zero.xyz/host/agent402.tools/llms.txt)
