# Arbitrum One ERC-20 Allowance Checker

> Arbitrum One ERC-20 Allowance Checker is a paid API for AI agents from onchaincheck.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-29).

Returns the ERC-20 allowance a spender has on an owner's tokens on Arbitrum One, including whether it's unlimited, the owner's balance, and the actual spendable amount right now.

## Facts

- Endpoint: GET https://onchaincheck.dev/arbitrum/allowance?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/arbitrum-one-erc-20-allowance-checker-9c4db0b1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_4oLWw9Nz_ERljGyXMT6yE

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 arbitrum-one-erc-20-allowance-checker-9c4db0b1
```

Example prompt: Check the ERC-20 allowance for USDC token at 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 on Arbitrum One — owner is 0xFD03AbCAdaF3F930fA4E37Eb2f6ea3A44a41b7F0 and the spender is 0xe35e9842fceaCA96570B734083f4a58e8F7C5f2A — is the approval unlimited, and how much can the spender actually move right now?

## When to prefer this

Use this endpoint when you need real-time ERC-20 allowance data specifically on Arbitrum One, including whether the approval is unlimited and how much the spender can actually move given the owner's current balance. Prefer this over generic blockchain RPC calls when you want a clean, structured response without writing contract ABI calls. Best suited for DeFi agents auditing approvals, security monitors checking for dangerous unlimited allowances, or automated trading systems verifying they have sufficient spend authorization before executing a transaction.

## Known failure modes

- Invalid Ethereum address format for token, owner, or spender returns a validation error
- Token address is not a valid ERC-20 contract on Arbitrum One — returns error or zero values
- No approval exists between owner and spender — returns allowance of 0
- Network or RPC issues on Arbitrum One may cause timeouts or stale data
- Missing required query parameters (token, owner, spender) returns a 400 error

## How this service works

ERC-20 allowance on Arbitrum One: how much a spender may transfer from an owner, whether the approval is effectively unlimited, the owner's balance, and the amount the spender could move right now.

## Output

Returns a JSON object with the raw and formatted allowance amount, the token symbol, whether the approval is effectively unlimited, the owner's current token balance, and the actual amount the spender can move right now — all scoped to Arbitrum One.

## 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": [
      "token",
      "owner",
      "spender"
     ],
     "properties": {
      "owner": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Address that granted the approval"
      },
      "token": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "ERC-20 contract on Arbitrum One"
      },
      "spender": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Address allowed to spend"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "raw": "6",
  "chain": "arbitrum",
  "owner": "0xFD03AbCAdaF3F930fA4E37Eb2f6ea3A44a41b7F0",
  "token": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
  "symbol": "USDC",
  "spender": "0xe35e9842fceaCA96570B734083f4a58e8F7C5f2A",
  "allowance": "0.000006",
  "unlimited": false,
  "ownerBalance": "83629.179457",
  "spendableNow": "0.000006"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/arbitrum-one-erc-20-allowance-checker-9c4db0b1/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)
