Otto AI x402 payments enabled
x402 V2 · Coinbase rail · live 80 endpoints · USDC on Base, Polygon, Solana

Intelligence your

agent can buy

by the call.

80 pay-per-call AI services on the x402 V2 protocol — market intelligence, DeFi execution, AI creative tools — settled in USDC on Base, Polygon, or Solana. Permit2-ready for any ERC-20. Sign-In-With-X repeat access on select read endpoints (data endpoints are pay-per-call). Indexed on x402scan and the Bazaar discovery extension. From $0.001 per call.

real 402 challenge · x402.ottoai.services
$ curl -i https://x402.ottoai.services/token-alpha?symbol=ETH HTTP/2 402 content-type: application/json payment-required: eyJ4NDAyVmVyc2lvbiI6MiwicmVzb3VyY2Ui… {"error":"payment_required","price":"$0.005","x402Version":2} # payment-required, base64-decoded — this is the whole challenge: { "scheme": "exact", "network": "eip155:8453", "amount": "5000", "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913", "payTo": "0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808", "maxTimeoutSeconds": 300 } # No key was issued. No account was created. Sign the offer, retry, get the data.

Abridged for width — the live response also carries CORS, caching and trace headers, and the body carries a longer hint plus contact and docs links. Everything above is verbatim from a real call. Nothing here is a mock. New to paying by the call? How agents buy from Otto →

Base Polygon Solana Permit2 ready SIWX x402scan indexed
80
Endpoints
8
Categories
3
Chains supported
$0.001
Floor per call
Quickstart

Three steps. No keys.

Discover the catalog, hit any endpoint, get a 402 with the payment requirements, sign once with Permit2 — SIWX re-access is available on select read endpoints (data endpoints are pay-per-call). Works with any x402-compatible wallet or agent.

01 — Discover

Read the catalog

Fetch /llm.txt for the machine-readable catalog, or browse the Bazaar discovery extension on any route.

curl https://x402.ottoai.services/llm.txt
02 — Request

Hit an endpoint

Any GET returns 402 Payment Required with the network options, recipient address, and asset.

curl -i https://x402.ottoai.services/token-alpha?symbol=ETH
HTTP/1.1 402 Payment Required
x-payment-requirements: {...}
03 — Pay

Sign & retry

Sign a Permit2 authorization with any x402 wallet (SIWX re-access on select read endpoints) and replay the request with the payment proof. Expand any endpoint in the catalog below for a full runnable snippet.

npm i @x402/axios @x402/evm viem
import { wrapAxiosWithPaymentFromConfig } from '@x402/axios'
import { ExactEvmScheme } from '@x402/evm'
New · Otto X402 Router

Don't know which endpoint? Ask the Router.

Meta Intelligence is one call that recommends the best x402 services for your task — ranked across both Otto's own catalog and the live, public CDP Bazaar, each with its real price and a ready-to-call pay_url. Otto only recommends; you pay each service directly. Non-custodial, zero markup, no prepay wallet. $0.001 per call — a flat router fee, never a markup on the services it recommends.

Ask

POST one question

Send what you need. The Router classifies the intent and scores candidates from Otto and the Bazaar.

curl -X POST https://x402.ottoai.services/meta-intelligence \
  -H 'content-type: application/json' \
  -d '{"ask":"crypto news for bitcoin","price_cap_usd":0.05}'
Get

Two labeled pools

otto_verified (our catalog) and open_bazaar_candidates (live CDP Bazaar) — each row carries price, pay_url, blunt source & verification labels. Then pay whichever you choose, directly — or let Full Auto do it for you (below).

"otto_verified": [{ "name":"Crypto News", "price_usd":0.001,
   "pay_url":"https://x402.ottoai.services/crypto-news" }],
"open_bazaar_candidates": [{ "source":"cdp-bazaar", … }]
Full Auto · live

Don't even want to pick? Full Auto pays for you.

One call. The Router picks the best-matched Otto service, pays it on your behalf at-cost, and returns the data — no prepay, no standing balance, no API keys. You're charged the actual service cost plus a flat $0.001 router fee, never above the cap you set.

curl -X POST https://x402.ottoai.services/full-auto \
  -H 'content-type: application/json' \
  -d '{"ask":"crypto news for bitcoin","price_cap_usd":0.05}'
# → Otto routes, pays the best service, returns the data + a receipt
Money-back guarantee

Don't like what you paid for? Get your money back.

Pay a recommended Otto service (or use Full Auto) and aren't happy? Leave feedback with a short reason and Otto refunds the service fee plus the Meta/router fee — or the whole Full Auto charge. Refunds are capped at $0.01 per transaction, up to 10× per wallet per day (≥50-word reason, paid only to the original payer, never more than you paid Otto). The guarantee covers Otto's own recommended services and Full Auto — not third-party CDP Bazaar picks (there's no receipt to verify).

The guarantee, in full

Four questions, answered exactly.

Refund terms are usually where the honesty runs out. Here are the real limits, including the ones that are not in your favour.

What exactly is covered?

Otto's own recommended services and Full Auto charges. A service call qualifies when you reached it through the Router — Otto collected a fee for that call and can verify it against an on-chain receipt. Third-party CDP Bazaar picks are not covered. The Router will happily recommend them, but you pay those sellers directly, Otto never takes a fee, and there is no receipt on our side to verify — so there is nothing for us to refund. If a Bazaar pick disappoints, the refundable part is the $0.001 Router fee you paid Otto, not the seller's charge.

How much comes back, and how often?

Up to $0.01 per transaction — and never more than you actually paid Otto for that call, whichever is lower. Each wallet can claim at most 10 refunds in any rolling 24-hour window (a moving window measured from each claim, not a calendar day that resets at midnight). Separately, $10 per 24 hours is a global budget shared across every wallet on the platform — it is not a per-user allowance, and once the platform-wide budget for the window is consumed, further claims are declined until it frees up. Per-service circuit breakers can also pause claims on a single endpoint.

How do I claim one?

Send the X-Payment-Receipt transaction hash from the call you're rating to POST /feedback, with a verdict and a reason of at least 50 words explaining why you're entitled to it. Shorter reasons are rejected outright. The /feedback call itself costs $0.001, must settle, and must come from the same wallet that paid for the original call — that settled receipt is what proves you control the payer address. The feedback fee is reimbursed inside the refund, subject to the same $0.01 cap. No account, no form, no ticket queue.

Where does the money land?

In USDC, to the original payer address and nowhere else — there is no field to redirect a payout, and no path to refund a wallet that did not pay. One original transaction can back one refund, ever. Claims settle after the feedback fee settles, never before; if a payout attempt is ambiguous it is held for human review rather than retried, because a retry that lands twice is worse than a payout that waits.

Start from the job

Buy an answer, not an endpoint.

The catalog below is filed by capability tag, which is our taxonomy, not your question. These are jobs buyers actually arrive with — each one is a single real endpoint at its real price, and every one of them also appears in the catalog.

Is this token safe to buy? Honeypot, rug-pull and scam screen before you touch it. GET /token-security$0.001
Why is this token moving? The narrative, on-chain and social signals behind the move, in one report. GET /token-alpha$0.005
What did the market do while I was away? One paragraph an agent can ingest whole — direction and the moves that mattered. GET /news-recaps$0.003
Can I trust this domain? Registration age, DNS and email authentication in a single verdict. GET /domain-report$0.02
What's actually in this wallet? Base positions with live USD values, concentration, and a written read. GET /wallet-holdings$0.02
Just answer it — pick and pay for me. Otto routes to the best-matched service, pays it at-cost, returns the data. POST /full-autodynamic
Catalog · 80 endpoints

Every service, priced clearly.

Eight capability tags. Click any row to inspect parameters, generate a request, or fire a Try call against the live service. Prices are floor-priced in USDC — most requests settle in under 2 seconds.

Feedback · Tied to a payment

Rate what you actually paid for.

Feedback here is bound to a payment, not to a signup. A paid call returns an X-Payment-Receipt header carrying the onchain tx hash of that call — pass that hash to POST /feedback with your verdict and Otto records it. Add a reason and Otto refunds the fee under the money-back guarantee above. No account, no form: the receipt is the credential.

ERC-8004 identity Payment-bound Money-back guarantee
POST /feedback · live

Send the receipt, not a star.

The tx hash is the only thing Otto needs to know which call you mean. refund_request is optional — leave it off and the feedback is simply recorded.

curl -X POST https://x402.ottoai.services/feedback \
  -H 'content-type: application/json' \
  -d '{"original_tx_hash":"0x…","verdict":"great"}'