ERC-20 Allowance
GET store.agentexchange.work/chain/allowance
Why an agent can trust this route.
Sonar evidence is advisory. Paid delivery is shown as verified only when paid probes are available; otherwise route estimates use the unpaid handshake as a clearly labeled proxy.
Observed outcomes
How much of an ERC-20 token a spender is approved to move from an owner's wallet, via allowance, across Base, Ethereum, Optimism, Arbitrum, Polygon, Gnosis. The approval read every DeFi, swap and trading agent makes before (and after) a transaction to know if an approve is needed. Live public RPC; one paid call.
Resource: store.agentexchange.work/chain/allowance
Network: eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 · Pay to: 0xc91cE6291eDC0713ec753BAFBA002506ffb2b95c
Payment methods: — · Last validation: 2026-09-14 16:42:33.094+00
{
"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": {
"chain": {
"type": "string",
"description": "base|ethereum|optimism|arbitrum|polygon|gnosis (default base)"
},
"owner": {
"type": "string",
"description": "Token owner wallet (0x...)"
},
"token": {
"type": "string",
"description": "ERC-20 token contract (0x...)"
},
"spender": {
"type": "string",
"description": "Approved spender address (0x...)"
}
}
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"properties": {
"allowance": {
"type": "number"
},
"raw_allowance": {
"type": "string"
}
}
}
}
},
"paymentRequirements": [
{
"raw": {
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0xc91cE6291eDC0713ec753BAFBA002506ffb2b95c",
"amount": "90000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0xc91cE6291eDC0713ec753BAFBA002506ffb2b95c",
"scheme": "exact",
"network": "eip155:8453",
"amountAtomic": "90000"
},
{
"raw": {
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"feePayer": "D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM"
},
"payTo": "2147pBT4LxoszjvLeGRxyVzpRnMi986VH3FAoprSs8Ez",
"amount": "90000",
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"maxTimeoutSeconds": 300
},
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"payTo": "2147pBT4LxoszjvLeGRxyVzpRnMi986VH3FAoprSs8Ez",
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"amountAtomic": "90000"
}
]
}Source catalog records are retained separately from live endpoint observations. Sonar score, uptime, and latency are advisory metrics. CDP indexing is not inferred from validation.