for api operators & site owners

Agents are buying.
Get paid for it.

An AI agent cannot sign up for your API. It has no email, no card, and no way to accept your terms. What it can do is pay a fraction of a cent per call, unattended, from its own wallet.

Serve an x402 challenge and register your origin: your tools join the open index, where agents and the Smart Order Router find them. Money moves buyer wallet to your wallet. We never hold it, and nothing is deducted from your price.

WHAT IT COSTS YOU
listing fee$0
cut of your sales0%
signup / accountnone
review queuenone
who holds your fundsyou do
you keep your paywallyes
seller toolsoptional, paid
Read exactly how we make money ↓
$ GET /api/bestsellers$0.005 per read

Demand data from our own sales ledger.

lanes shownfigures are a paid read

Settlements land on chain, but which tool an agent bought does not, so these figures come from the sales ledger of the server that served each call and cannot be rebuilt from a block explorer. Below are the lanes agents buy in on this catalog, in no particular order. The ranking and the numbers behind it are a tool, not a marketing page.

Where the buying isunranked, figures withheld
lanewhat agents buy in it
Hashing & encodingsha256/sha512 digests, HMAC, base64, JWT decoding: called dozens of times inside a single job.
Market & financial dataLive quotes, historical series, Treasury yield curves, SEC company lookups.
Media & documentsSpeech-to-text, OCR, PDF parsing, article extraction, browser rendering.
InferenceCheap chat tiers used inside agent loops, plus embeddings and generation.
Live web search & cited answersRanked results, and grounded answers with sources attached.
Crypto & onchain readsToken prices and metadata, balances, transaction history, gas.
the figuresPer-tool purchase counts, distinct buyers, revenue and buyer-diversity - plus each tool's trend against the previous window, over any 1-90 day span.$0.005 →

The unmet half

We also log what agents searched for and did not find. Those wish clusters are ranked at /api/demand-radar, tagged by whether agents asked outright or simply failed to discover something that already exists - and flagged when a cluster is within two signals of the build threshold. It is the closest thing to a build list for an x402 seller, read from what agents asked this server for.

demand radar → $0.005 per read

What sells here

Not novelty. The heaviest lanes are dull, deterministic and cheap - the calls an agent makes dozens of times inside a single job, where a wrong answer breaks the whole chain. You do not need novelty to sell into that. You need to be callable, correctly priced, and reachable when the router asks.

Two ways in.

whether or not you speak the protocol yet
01 / YOU HAVE AN API

List it and get routed

Return a 402 with your price, asset, network and payTo on the endpoints you want to charge for, then register the origin.

  • The crawler reads your manifest at once, then re-probes it every 30 minutes
  • Your tools rank in Smart Order Router answers, and a buyer who asks it for an outside seller can be routed to you
# what a buyer's agent sees
HTTP/1.1 402 Payment Required
PAYMENT-REQUIRED: eyJ4NDAyVmVyc2lvbiI6Mi…
# base64 JSON, decoded:
{"x402Version":2,"accepts":[{"scheme":"exact",
  "network":"eip155:8453","amount":"4000",
  "asset":"0x833589fC…02913","payTo":"0xYourWallet…"}]}
Register your origin →
02 / YOU HAVE A SITE

Charge the crawlers instead

If AI crawlers are already taking your content for free, tollbooth puts an open pay-per-crawl gate in front of the site.

  • People browse normally
  • Known bots get a 402 and either pay in USDC or solve a proof-of-work
  • MIT licensed middleware: no CDN lock-in, no merchant of record between you and the money
# express · next.js · cloudflare · proxy · wordpress
npm i agent402-tollbooth
$ POST /api/index/register

Five steps, no account.

There is no dashboard to log into and nothing to wait for. You serve a 402, you tell us where you live, and the crawler does the rest.

  1. 01

    Serve a 402

    Return HTTP 402 Payment Required with your price, asset, network and payTo address on the endpoints you want to charge for. Any x402 middleware does this.

  2. 02

    Register the origin

    One POST to /api/index/register. No account, no review queue, no waiting on us.

  3. 03

    Get crawled

    The crawler reads your manifest at once, records your tools and advertised chains, and re-probes it every 30 minutes; health is scored from those probes. Probes are never paid calls.

  4. 04

    Get ranked

    Your tools appear in Smart Order Router answers: shortlisted by how well they match a described task, then ordered by crawl health, distinct payers and price (the full order is in the seller questions below). An accurate description is how you win it. The router buys from an outside seller only when the buyer asks for one (include: "external"). Sellers are routable on proven on-chain settlement, with one exception: a seller with no settlement history yet is tried only after every proven candidate, capped at $0.01 a call on Base and on Solana, and flagged unproven on the receipt. GET /api/index?seller=<your host> shows its verdict for you.

  5. 05

    Get paid

    Buyers pay your wallet directly, in the asset and on the chains your 402 names. Settled Base USDC volume shows up on the public on-chain leaderboard.

One-liner, from a shell
curl -X POST \
  https://agent402.tools/api/index/register \
  -H 'content-type: application/json' \
  -d '{"origin":"https://seller.example"}'
Register in one call
Free, no account - we probe your origin's x402 surface and list you if it answers. An app served under a path on a shared host registers with that path (https://host/app/name); its documents are read from under it. An unreachable seller stays listed and is skipped by routing until it recovers.

Speak MPP? Register your MPP server on the MPP marketplace → (one call, or POST /api/mpp-index/register {"origin", "path"}); a seller whose x402 routes our crawl already sees answering MPP too is picked up automatically.

What we read from you
manifest/.well-known/x402
your toolsroute · price · description
your chainsfrom the 402 challenge
health probeevery 30 minutes, never paid
what we never readyour keys or funds

Already listed and nobody is paying? POST /api/seller-payability buys one call from your own endpoint with our wallet and reports every leg: the 402 decoded, whether a stock client's signature was accepted, the settlement receipt. It costs $0.10. Want the audit first? /api/x402-audit grades any x402 endpoint's payment-security posture from the outside, without paying it ($0.01 a read). Run it on yourself before you list.

$ POST /api/route

How buyers reach you.

matchhealthpayerspricecurated flagshorter slugthen judged fit

Four places buyers find you. In the router, a buyer describes a task and gets a ranked list of matching tools from this catalog and the open index; a new seller with no probe history starts at full crawl health in that ranking. Being paid by the router is a separate gate. Sellers are routable on proven on-chain settlement, with one exception: a seller with no settlement history yet is tried only after every proven candidate, capped at $0.01 a call on Base and on Solana, and flagged unproven on the receipt.

Smart Order RouterA buyer describes a task in words and the router ranks matching tools from this catalog and the open index. By default it runs a tool from this catalog; a buyer who passes include: "external" has it buy the result from the best outside seller instead and resell it./api/route
Marketplace directoryEvery indexed seller with tool count, advertised networks, last crawl and rolling health - browsable by humans and machines./marketplace
Per-chain market pagesOne page per settlement rail, so a buyer on Solana or Algorand can find sellers who take their chain./solana
On-chain leaderboardRanked by real Base USDC settled. Once you have volume, you get a public row - and the row carries buyer diversity, not just dollars./leaderboard
+ the restRanked by distinct buyers, sales, revenue or buyer-diversity - plus each tool's trend against the previous window, over any 1-90 day span.$0.005 →
$ GET /api/index?seller=<your host>

New sellers: listed, then paid.

two separate gatesyour verdict is free to read

Registering lists you at once: your tools appear in search, in router answers and on the market pages. Being paid by the router is the second gate, and it is earned from real buyers. Sellers are routable on proven on-chain settlement, with one exception: a seller with no settlement history yet is tried only after every proven candidate, capped at $0.01 a call on Base and on Solana, and flagged unproven on the receipt.

The settlement floor is a router setting that counts settled payments from distinct outside payers, read on chain; the exact gate for your origin, with its figures, is in your seller-trust answer. It is not a number to buy your way to: payments funded from the wallet you are paid at are netted out, and payments from our own wallets never count toward it: that includes our probes and payability checks, and the purchases our router makes for its buyers. The unproven lane pays you; it is buyers paying you directly that move you toward the floor. Nothing here sells placement. Your verdict, with the reason below, is at /api/index?seller=<your host>.

If routerDispatchReason says
reasonwhat it meanswhat you can do
crawl_failedthe last crawl of this origin did not succeed, so nothing is routed to itServe your manifest, OpenAPI document or llms.txt at a public URL that answers with a parseable body. The next successful crawl restores routing; re-registering below crawls you now.
no_supported_routethe seller advertises no chain this host holds a spending wallet forAdvertise at least one chain the router pays on, alongside any others you support. The verdict at /api/index?seller=<your host> lists the chains it reads.
price_unknownno seller price is known for this route, and the router never spends against an unknown priceAnswer a bare unpaid request to every paid route with its 402, before you validate input. A route that needs a query parameter or a body still has to return its 402 to the crawler's empty probe, or no price can be read and the router never spends against an unknown one.
network_unknownthe crawl learned no payment network (the paid route answered something other than a 402 to the unpaid probe), so the router cannot tell which chain to pay onSame fix: the paid route answered the probe with something other than a 402, so no chain was learned.
usdc_domain_mismatchthe seller's USDC accept on this chain advertises an EIP-712 domain name that is not the token's own (Base USDC signs under "USD Coin"; Monad, Celo and Sei USDC under "USDC"), so a stock x402 buyer - this router included - signs an authorization the facilitator refuses and nothing settles; the seller has to fix the accept before anyone can pay itAdvertise the token's own EIP-712 name in the accept's extra ("USD Coin" for Base USDC). Until then no stock buyer can pay you, ours included.
gateway_rail_unsupportedthe seller's accept on this chain is signed under Circle Gateway's EIP-712 domain (extra.name "GatewayWalletBatched", extra.verifyingContract the GatewayWallet), not under the token's own, and settles through a batch facilitator - a deliberate, working rail that this router's stock x402 signer cannot produce a credential for; nothing for the seller to fix, and it becomes eligible the day the router speaks the railNothing to fix: your batched rail works for buyers that speak it. To be routable today as well, add a second accept on the same chain signed under the token's own EIP-712 domain.
payment_method_unsupportedthe seller's accept on this chain asks the buyer to send a transfer and prove it afterwards (extra.paymentMethod such as "direct-transfer"), which no stock x402 buyer does - this router signs an authorization for the facilitator to settle - so no buyer of ours can pay the routeOffer the standard exact scheme, where the buyer signs a USDC authorization and the facilitator settles it. A 402 that asks the buyer to send a transfer and prove it afterwards cannot be paid by a stock x402 buyer, ours included.
url_templatethe route is an unsubstituted path template; the router never spends against itServe concrete paths; the router never buys a templated path such as /items/{id}.
settlement_requiredon Base the router pays sellers with on-chain settlement history above the floor from enough distinct payers; a seller below it is tried only under the small unproven ceiling when its verdict carries unprovenTierIf the verdict also carries unprovenTier: true, there is nothing to fix: you are callable now in the unproven lane, and payments from real outside buyers move you up.
settlement_self_fundedon Base the router counts only settlement the seller did not fund itself: a payment made with USDC that the wallet it pays had sent the payer earlier is the seller's own money coming home and does not count, and without those payments this seller's history is below the floor; payments made with the payers' own money still countPayments made with USDC your own paid wallet sent the payer are netted out. Only buyers' own money counts.
delivery_failingthe last time this router paid this seller on this chain the call did not deliver (a 5xx answer carrying no settle receipt, or no answer at all before the timeout), so it is skipped until that memo expires or a call to it succeeds. Settlement history is evidence about the past; this is what happened the last time someone actually paidThe router's last paid call to you did not deliver. It retries once that memo expires; fix the failing route first.
$ GET /.well-known/x402

Get paid on the chains you accept.

Advertise every rail you support: each one is another set of buyers who can pay you directly. When the router buys from a seller to resell the result to an agent, it pays the seller on the chain the agent paid on, so it reaches you only on chains you accept; it holds spending wallets for Base, Algorand, Solana and Tempo. With the x402 exact scheme on EVM chains, the facilitator submits the transfer and pays its gas, so neither side needs the native token.

x402 settlement railseach opens that chain's market
BaseUSDCSolanaUSDCPolygonUSDCArbitrumUSDCMonadUSDCCeloUSDCAvalancheUSDCSeiUSDCOptimismUSDCStellarUSDCAlgorandUSDCRobinhood ChainUSDG
x402 exact on EVM chains: the facilitator pays gas, neither side needs the native token
HOW WE MAKE MONEY

Never from your sales

A buyer who discovers you and pays you directly costs you nothing and earns us nothing. We earn from buyers of our own 500+ tools, which sit in the same index as yours, and of the router.

We earn when the router buys from you and resells the result to a buyer: the buyer pays us one flat price for the convenience of not integrating you, and we pay you your full advertised price. The margin is the spread, charged to the buyer, disclosed in the router's own pricing tiers. The seller tools on this page (bestsellers, demand radar, the payability check and the audit) are optional paid reads.

We would rather write that down than let you find it out. An index that quietly taxed its sellers would deserve the reputation it got.

WHAT WE WON'T DO

The commitments

✓We never take custody of your funds. Buyers pay your wallet, not ours.
✓We never deduct a commission from your advertised price.
✓We never require an account, a contract, or a call with sales.
✓If you ask us not to buy from you, your ranking does not change. Direct buyers are yours.
✓We publish how the ranking works, and exclude ourselves from our own leaderboard.

ranking: route-order.js →self-exclusion: ledger-leaderboard.js →

Seller questions.

What does it cost to list?

Nothing. Listing is free, there is no signup and no review queue, and no commission is deducted from your price. Buyers pay your wallet directly and Agent402 never holds seller funds. We never take a cut of your sales: we earn from buyers of our own tools and of the router (the spread when it buys from a seller and resells the result), and the seller tools on this page are optional paid reads.

How do agents find my API?

Four places: the marketplace directory, the per-chain market pages, the Smart Order Router which ranks tools for a described task, and the public on-chain leaderboard once you have settled Base USDC volume. Candidates are shortlisted by how well they match the task, then ordered by crawl health, by distinct payers over the last 30 days, by price, by a discovery listing's curated flag and by slug length, shorter first; a judgment model can then pick the one that does the job from that shortlist, or decline them all, and when it is not consulted the shortlist order stands. The router runs a tool from this catalog unless the buyer asks for an outside seller (include: "external"). Sellers are routable on proven on-chain settlement, with one exception: a seller with no settlement history yet is tried only after every proven candidate, capped at $0.01 a call on Base and on Solana, and flagged unproven on the receipt. GET /api/index?seller=<your host> returns the router's verdict for your origin and the reason.

What if my site is not an API?

Use agent402-tollbooth - the pay-per-crawl mechanism is explained above under "Charge the crawlers instead". It ships as an open MIT middleware for Express, Next.js, Cloudflare Workers, a reverse proxy or WordPress: drop it in front of any site, no rebuild required.

Which chains can I get paid on?

Advertise whichever you support. Agent402 itself accepts 12 rails: USDC on Base, Solana, Polygon, Arbitrum, Monad, Celo, Avalanche, Sei, Optimism, Stellar & Algorand - plus USDG on Robinhood Chain. When the router buys from a seller to resell the result to an agent, it pays the seller on the chain the agent paid on, so it reaches you only on chains you accept; it holds spending wallets for Base, Algorand, Solana and Tempo.

How do I know what to charge, or what to build?

Two paid intelligence tools: /api/bestsellers ($0.005 a read) ranks what agents actually pay for across a 500+-tool catalog by distinct buyers, sales, revenue or buyer diversity, with a trend against the previous window. /api/demand-radar ($0.005 a read) ranks what agents asked for and did not find. Neither can be reconstructed from on-chain data: settlements are public, but which tool was bought is not.

What is the settlement floor, and how do I get over it?

It is a minimum of settled payments from distinct outside payers that the router reads on chain before it treats a seller as proven. The exact gate for your origin, with its figures, is in your seller-trust answer. It is not a target to buy your way to: payments funded from the wallet you are paid at are netted out, and payments from our own wallets never count toward it, including purchases our router makes for its buyers. Until then a seller below it can still be paid through the unproven lane, but only buyers paying you directly move you toward the floor. Your own verdict and its reason are free at /api/index?seller=<your host>.

What happens if my endpoint goes down?

The probe that runs every 30 minutes notices and your rolling health drops; you stay listed, and routing skips you until a probe succeeds again. Health is a rolling window rather than a single failure, and a new seller with no probe history yet starts at full health in the rankings.

One curl and you're listed.

No account, no review, nothing deducted. Registering reads your origin at once: if the crawler can reach your 402, you are in the index as soon as that read completes.

Register your origin → Tollbooth a site See the leaderboard