apix402

Live onchain governance, vesting, oracle and Safe authority checks. Free samples over MCP.

Documentation

Check the contract, not a tracker. 10 onchain checks an agent can buy one call at a time — governance, vesting, oracles, lending risk, Safe spending authority. No key, no account, no subscription: the wallet is the identity.

One example, and it is why this exists: a public tracker showed the Arbitrum DAO as archived with no active proposals, while its Governor contract had a live vote on 48M ARB. See it yourself for free in/dao-proposals/preview — thediscrepancy field counts the disagreements without charging for them.

Connect an agent

npx agentcash try https://api402x.com/dao-proposals

Copy

Writing the client yourself: any x402 client works — the challenge is in thepayment-required header, and the shape of the response travels with it. Full spec at /openapi.json, short table of contents at /llms.txt.

The one built to be called twice

GET /safe-authority-check$0.002. Ask whether the spending authority over a Safe changed since you last looked. You keep the fingerprint, so there is no account and nothing stored here. It walks modules recursively: a Safe that reads as 1-of-1 can in fact be governed through a module by a separate 2-of-8 Safe, and a flat owner list would miss exactly that. Built for a daily cron; when it says changed, buy/safe-signer-drift for what changed and in which block.

MAINNET eip155:8453 (Base), USDC, real funds. Facilitator https://facilitator.payai.network. Paid to0xE606AE66542D4F1A56AA551841db41e3ECd26816 — every settlement is public onchain, including ours. We store nothing about you: no account, no key, no request history tied to a wallet.

RoutePriceDescriptionPreview (free)
GET /echo$0.001x402 protocol check: confirms payment and returns a timestamp./echo/preview
GET /dao-proposals$0.005Active DAO governance proposals (ENS, Arbitrum, Uniswap, Compound, Optimism, Lido, Curve (Ownership), Curve (Parameter), Aave): Snapshot (off-chain signal) cross-checked against a direct…/dao-proposals/preview
GET /proposal-status$0.003The fate of ONE already-known proposal after the vote: executed / queued in Timelock / expired / canceled./proposal-status/preview
GET /vesting-status$0.003Reads a vesting plan/stream directly from an on-chain contract on Base — total amount, claimed/unclaimed balance, remaining lockup, current owner/recipient./vesting-status/preview
GET /insider-early-sale-check$0.05Composes two checks: first resolves a vesting plan/stream by provider + plan_id (same lookup as GET /vesting-status, hedgey TokenVestingPlans or sablier SablierLockup)…/insider-early-sale-check/preview
GET /safe-authority-check$0.002Cheap poll: has the spending authority over this Safe changed since you last looked? You pass the fingerprint this route gave you…/safe-authority-check/preview
GET /proposal-state-check$0.002Cheap poll: has this proposal's state changed since you last looked? You pass the state this route or GET /proposal-status gave you…/proposal-state-check/preview
GET /safe-signer-drift$0.03Reads a Gnosis Safe's live spending authority straight from the chain -- current owner set, threshold, enabled modules and transaction guard --…/safe-signer-drift/preview
GET /oracle-staleness$0.003Answers how stale each oracle price actually is on Base right now, and whether a standard consumer staleness guard would reject it./oracle-staleness/preview
GET /lending-depeg-exposure$0.005Measures an Aave V3 position's exposure to a risk Aave's own health factor structurally cannot show./lending-depeg-exposure/preview

New here? The first calls are free

Every route gives a new payer address a few calls at no charge, counted per route and per wallet. Not a trial window — there is no clock, the count simply does not reset.

  • /vesting-status — 3 free calls, wallet must hold $0.03
  • /proposal-status — 3 free calls, wallet must hold $0.03
  • /dao-proposals — 2 free calls, wallet must hold $0.05
  • /insider-early-sale-check — 1 free call, wallet must hold $0.50 — cached answers only
  • /oracle-staleness — 3 free calls, wallet must hold $0.03
  • /lending-depeg-exposure — 2 free calls, wallet must hold $0.05
  • /safe-signer-drift — 1 free call, wallet must hold $0.30 — cached answers only
  • /safe-authority-check — 3 free calls, wallet must hold $0.02
  • /proposal-state-check — 3 free calls, wallet must hold $0.02

Two routes are free only when the answer is already cached. A cold run of /insider-early-sale-check scans a beneficiary's full onchain transfer history through a rate-limited upstream gateway, and a cold/safe-signer-drift is a sequential archive search on a network with exactly one archive endpoint. Those runs are paid, always. If someone has already warmed the same query, you get it free; if not, you get an explicitfree_tier_cold and your free quota is not spent.

There is a daily ceiling of 20 free calls per route, shared by everyone. It exists because a wallet address costs nothing to create, so a per-wallet allowance alone bounds nothing. It has never been reached by ordinary use.

Your wallet still signs. A free call goes through the ordinary x402 flow: the request carries a signed payment authorization, and the server skips settling it. No USDC moves and nothing is deducted, but an agent with no wallet cannot use this — it is free, not anonymous. After the count is used up, the same route simply starts settling as normal.

How prices are set. Price follows the cost of producing the answer: a few contract reads cost a fraction of a cent; scanning history or using scarce archive capacity costs more. That is the whole rule, and it is why/safe-signer-drift and /insider-early-sale-check cost more than the rest — one runs a sequential archive search on a network with a single archive endpoint, the other scans a full transfer history through a rate-limited gateway. Prices move when that measured cost moves, not otherwise.

The wallet must hold USDC on Base — ten times the route's price (listed above, per route). Nothing is reserved and nothing is deducted; the balance is only read. This exists because the allowance is permanent and keyed to the address, so a fresh address is a fresh allowance. The previous bar was any non-zero balance, and dust costs nothing: funding a thousand throwaway wallets on Base costs about a dollar in gas. The bar is deliberately low enough that a real buyer of a $0.01 call clears it — it is meant to price out farming, not to price out you.