# ERC-20 Token Info & Risk API (x402)

> ERC-20 Token Info & Risk API (x402) is a paid API for AI agents from freetier-agent-api.pages.dev, paid per call via x402, $0.0025/call, status unknown (last checked 2026-10-30).

Fetches on-chain ERC-20 token metadata, risk indicators, USD price, and supply data for up to 10 contract addresses across major EVM chains, paid per call via x402 (USDC on Base).

## Facts

- Endpoint: GET https://freetier-agent-api.pages.dev/api/token-info?utm_source=zero.xyz
- Price: $0.0025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/erc-20-token-info-risk-api-x402-0f7e9900
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_cotkpHBtzn4G7qMUtWpWk

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-info-risk-api-x402-0f7e9900
```

Example prompt: Can you look up the token info for the contract address 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 on Base, including its current USD price?

## When to prefer this

Choose this endpoint when you need fast, structured ERC-20 token metadata — including price, supply, and contract verification — across Base, Ethereum, Arbitrum, Optimism, or Polygon, without signing up for an API key. It supports batch lookups of up to 10 addresses per call and uses x402 micropayments (USDC on Base) making it ideal for agent workflows that need frictionless per-call billing. Prefer it over general blockchain explorers when you specifically need JSON-structured token data ready for downstream agent processing.

## Known failure modes

- Invalid or non-existent contract address returns empty tokens array or null fields
- Unsupported chain value returns validation error
- More than 10 addresses in a comma list may be rejected or truncated
- Payment failure via x402 (insufficient USDC balance or wrong network) blocks the call
- Token exists on-chain but is not ERC-20 compliant — is_erc20 returns false
- Price data unavailable for obscure tokens — price_usd and price_confidence may be null
- Network RPC outage may cause delayed or failed response

## How this service works

Invoice-to-JSON, on-chain tools (transaction explainer + payment check, wallet profile, contract ABI, ERC-20 token risk), company contacts and web-to-RAG for AI agents. Pay per call with x402 (USDC on Base). No signup, no API key.

## Output

Returns a JSON object containing the chain queried, a count of tokens found, and an array of token objects each with: name, symbol, address, chain, decimals, is_erc20, is_contract, price_usd, price_time, price_confidence, fdv_usd, total_supply, and total_supply_raw. If price=false is passed, USD price fields are omitted.

## 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": [
      "address"
     ],
     "properties": {
      "chain": {
       "enum": [
        "base",
        "ethereum",
        "arbitrum",
        "optimism",
        "polygon"
       ],
       "type": "string",
       "description": "default base"
      },
      "price": {
       "enum": [
        "true",
        "false"
       ],
       "type": "string",
       "description": "false skips the USD price"
      },
      "address": {
       "type": "string",
       "description": "ERC-20 contract address, or comma list of up to 10"
      }
     }
    }
   }
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "at": {
       "type": [
        "string",
        "null"
       ]
      },
      "rpc": {
       "type": [
        "string",
        "null"
       ]
      },
      "chain": {
       "type": [
        "string",
        "null"
       ]
      },
      "count": {
       "type": [
        "number",
        "null"
       ]
      },
      "method": {
       "type": [
        "string",
        "null"
       ]
      },
      "tokens": {
       "type": "array",
       "items": {
        "type": [
         "object",
         "null"
        ]
       }
      },
      "sources": {
       "type": "array",
       "items": {
        "type": [
         "object",
         "null"
        ]
       }
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "chain": "base",
  "count": 1,
  "tokens": [
   {
    "name": "USD Coin",
    "chain": "base",
    "symbol": "USDC",
    "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "fdv_usd": 4289131687,
    "decimals": 6,
    "is_erc20": true,
    "price_usd": 0.9996,
    "price_time": "2026-10-25T19:57:01.000Z",
    "is_contract": true,
    "total_supply": "4290862904.934007",
    "price_confidence": 0.99,
    "total_supply_raw": "4290862904934007"
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/erc-20-token-info-risk-api-x402-0f7e9900/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from freetier-agent-api.pages.dev](https://www.zero.xyz/host/freetier-agent-api.pages.dev/llms.txt)
