# Arbitrum One ERC-20 Allowance Checker

> Arbitrum One ERC-20 Allowance Checker is a paid API for AI agents from ca-tax-api-mainnet.lxtap.workers.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-23).

Returns the ERC-20 token allowance on Arbitrum One: how much a spender may transfer from an owner, whether the approval is unlimited, the owner's current balance, and the actual transferable amount.

## Facts

- Endpoint: GET https://ca-tax-api-mainnet.lxtap.workers.dev/arbitrum/allowance?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/arbitrum-one-erc-20-allowance-checker-a4063d85
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_DAvFv1WM87b6fbQS-Kckq

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-a4063d85
```

Example prompt: Check how much allowance the Uniswap v3 router (0xE592427A0AEce92De3Edee1F18E0157C05861564) has to spend USDC (0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8) from my Arbitrum wallet 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 — and tell me if it's unlimited.

## When to prefer this

Use this endpoint when you need real-time ERC-20 allowance data specifically on Arbitrum One, including whether an approval is practically unlimited and the actual transferable amount. Prefer this over general block explorers when you need structured, programmatically consumable allowance data in a single call, or when building automated workflows that audit or act on token permissions on Arbitrum One.

## Known failure modes

- Invalid Ethereum address format for token, owner, or spender returns a 400 error
- Token address that is not a valid ERC-20 contract on Arbitrum One may return an error or zero values
- RPC node unavailability or Arbitrum One network issues may cause timeouts
- Missing required query parameters (token, owner, or spender) returns a 400 validation error
- Payment failure or insufficient USDC balance returns a 402 Payment Required response

## How this service works

Pay-per-call data for AI agents, paid in USDC on Base with x402: token risk checks (rug check) on Base, Ethereum, Arbitrum, Optimism, Polygon and Solana, onchain reads (balances, transactions, gas, contracts, NFTs, whale trades, new pools, ENS and Basenames), ECB exchange rates, and Canadian sales tax and business days.

## Output

Returns the approved allowance amount (in token base units), a boolean flag indicating whether the approval is effectively unlimited (e.g. max uint256), the owner's current token balance, and the actual amount the spender could move right now (the minimum of the allowance and the owner's balance).

## 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-a4063d85/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ca-tax-api-mainnet.lxtap.workers.dev](https://www.zero.xyz/host/ca-tax-api-mainnet.lxtap.workers.dev/llms.txt)
