# ERC20 Allowance Lookup (eth_call)

> ERC20 Allowance Lookup (eth_call) is a paid API for AI agents from skills.onesource.io, paid per call via x402, $0.003/call, status unknown (last checked 2026-09-13).

Returns the current ERC20 token allowance — how many tokens a spender is approved to transfer from an owner's wallet — via live eth_call on supported networks.

## Facts

- Endpoint: GET https://skills.onesource.io/api/chain/allowance
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/skills-onesource-io-9035b699
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_euc8UDQHxvok9V0dSsCqU

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 skills-onesource-io-9035b699
```

Example prompt: Check how many USDC tokens (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48) the address 0x0987654321098765432109876543210987654321 is approved to spend from 0x1234567890123456789012345678901234567890 on Ethereum mainnet.

## When to prefer this

Use this endpoint when you need to read a live ERC20 allowance directly from the chain via eth_call, including token metadata like name, symbol, and decimals in one response. Prefer this over generic RPC tools when you want structured JSON output with token context across multiple networks (Ethereum, Base, Avalanche, Sepolia, MegaETH).

## Known failure modes

- Invalid Ethereum address format for owner, spender, or token returns a validation error
- Unsupported network value returns an enum validation error
- Token address is not an ERC20 contract — eth_call returns empty or reverts
- Network RPC is temporarily unavailable — returns a 5xx error
- Zero allowance returned when no approval has been set (not an error, valid response)

## How this service works

ERC20 allowance via allowance (eth_call) - how much a spender is approved to move from an owner's wallet

## Output

Returns a JSON object with the allowance amount (as a string), token metadata (name, symbol, decimals), and the owner, spender, and token addresses. The allowance is in raw token units (apply decimals to get human-readable amount).

## Example request

```json
{
 "owner": "0x1234567890123456789012345678901234567890",
 "token": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
 "network": "ethereum",
 "spender": "0x0987654321098765432109876543210987654321"
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "owner": {
   "type": "string",
   "pattern": "^0x[a-fA-F0-9]{40}$"
  },
  "token": {
   "type": "string",
   "pattern": "^0x[a-fA-F0-9]{40}$"
  },
  "network": {
   "enum": [
    "ethereum",
    "sepolia",
    "avax",
    "megaeth",
    "megaeth-testnet",
    "base"
   ],
   "type": "string",
   "default": "ethereum"
  },
  "spender": {
   "type": "string",
   "pattern": "^0x[a-fA-F0-9]{40}$"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "data",
  "meta"
 ],
 "properties": {
  "data": {
   "type": "object",
   "required": [
    "name",
    "owner",
    "token",
    "symbol",
    "spender",
    "decimals",
    "allowance"
   ],
   "properties": {
    "name": {
     "type": "string"
    },
    "owner": {
     "type": "string"
    },
    "token": {
     "type": "string"
    },
    "symbol": {
     "type": "string"
    },
    "spender": {
     "type": "string"
    },
    "decimals": {
     "type": "number"
    },
    "allowance": {
     "type": "string"
    }
   }
  },
  "meta": {
   "type": "object",
   "required": [
    "endpoint",
    "request_id"
   ],
   "properties": {
    "endpoint": {
     "type": "string"
    },
    "request_id": {
     "type": "string"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/skills-onesource-io-9035b699/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from skills.onesource.io](https://www.zero.xyz/host/skills.onesource.io/llms.txt)
