$AUTONOMOCA0xe83c…cc96
AUTONOMOLaunch your API

Docs

Launch an API agents pay for

Overview

Autonomo is the agentic x402 launchpad for APIs. You put a price on an endpoint with x402, launch it here, and AI agents can find it and pay for each call in stablecoins. Agents need no API keys, accounts or invoices.

Autonomo currently lists 3.7K projects and 107.7K paid endpoints, which handled 894.4K paid calls in the last 30 days.

How x402 works

x402 uses the HTTP status code 402 Payment Required. Payment happens inside a normal HTTP request:

  1. The agent calls your endpoint.
  2. Your server answers 402 with a PAYMENT-REQUIRED header: the price, the network and your payTo wallet.
  3. The agent signs a stablecoin payment and retries with a PAYMENT-SIGNATURE header.
  4. A facilitator verifies and settles the payment on-chain, and your server returns the data. The money lands in your wallet.

Prices can be fractions of a cent, so per-call pricing works for data, inference and tools that would never justify a subscription.

Launch your API

01Add x402 to your server

Install the middleware for your framework. This example uses Express; Next.js, Hono, Fastify, Go and Python work the same way.

bash
npm install @x402/express @x402/core @x402/evm
ts
import express from "express";
import { paymentMiddleware, x402ResourceServer } from "@x402/express";
import { ExactEvmScheme } from "@x402/evm/exact/server";
import { HTTPFacilitatorClient } from "@x402/core/server";

const app = express();
const payTo = "0xYourWalletAddress"; // where payments land

// Testnet facilitator (Base Sepolia). Switch to a mainnet facilitator to go live.
const facilitator = new HTTPFacilitatorClient({ url: "https://x402.org/facilitator" });

app.use(
  paymentMiddleware(
    {
      "GET /weather": {
        accepts: [{ scheme: "exact", price: "$0.001", network: "eip155:84532", payTo }],
        description: "Current weather for a city",
        mimeType: "application/json",
      },
    },
    new x402ResourceServer(facilitator).register("eip155:84532", new ExactEvmScheme()),
  ),
);

app.get("/weather", (req, res) => {
  res.json({ city: "Lisbon", weather: "sunny", tempC: 24 });
});

app.listen(4021);

This runs on Base Sepolia, a testnet, so you can try it without real money. To go live, switch to a mainnet network (Base is eip155:8453) and a mainnet facilitator, as described in the x402 seller quickstart.

02Check that it answers 402

bash
curl -i http://localhost:4021/weather
# HTTP/1.1 402 Payment Required
# PAYMENT-REQUIRED: <price, network and payTo, base64-encoded>

03Launch it on Autonomo

There are two ways to get listed:

  • Automatically. Register your endpoint with a facilitator that supports Bazaar discovery. Autonomo imports the Coinbase CDP and PayAI catalogs, groups endpoints by host and shows price, network and usage.
  • Through the launch form. Request a launch with your website and a paid endpoint URL. Every request is reviewed by hand, and APIs with a live 402 endpoint go fastest.

Connect your agent

01Find APIs to pay for

Search the catalog through the free discovery API. No key is needed and CORS is open, so it works from servers, browsers and agent tools.

ts
const res = await fetch(
  "https://autonomo.fun/api/v1/projects?q=weather&network=base&sort=price&limit=5",
);
const { data } = await res.json();

for (const p of data) {
  console.log(p.name, p.website, p.minPriceUsd);
}

02Pay per call

Wrap fetch with an x402 client. When an API answers 402, the client pays and retries automatically.

bash
npm install @x402/fetch @x402/core @x402/evm viem
ts
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

// A dedicated agent wallet holding a small USDC balance.
const signer = privateKeyToAccount(process.env.AGENT_PRIVATE_KEY as `0x${string}`);

const client = new x402Client();
client.register("eip155:*", new ExactEvmScheme(signer));

const fetchWithPayment = wrapFetchWithPayment(fetch, client);

// Pays automatically when the API answers 402, then retries.
const res = await fetchWithPayment("https://api.example.com/weather");
console.log(await res.json());

Use a dedicated wallet for your agent and keep only a small balance in it. Never commit private keys.

API reference

Read-only JSON, free while in beta. No key, open CORS, and responses are cached for 5 minutes. Full parameters and examples are on the API reference page.

GET /api/v1/projectsSearch and filter projects: q, category, network, sort, page, limit
GET /api/v1/projects/{slug}One project with up to 500 paid endpoints, prices, networks and 30-day calls
GET /api/v1/statsTotals, counts per category and the most common networks

Where the data comes from

  • Paid services come from the Coinbase CDP and PayAI Bazaar discovery catalogs. Endpoints are grouped into one project per host, with price, network, facilitator and 30-day usage for each.
  • Ecosystem projects such as facilitators, SDKs, extensions and explorers are checked by hand.
  • Testnet-only services are hidden. The catalog is re-imported periodically, so new endpoints can take a while to appear.
  • Usage numbers are paid calls reported by facilitators over the last 30 days.

$AUTONOMO token

The official $AUTONOMO contract address is:

0xe83c85e1ead16fcfe85401e2b337fb4fb5b5cc96

It is also in the bar at the top of every page. Always check the address on autonomo.fun before you buy: copies posted elsewhere can be fake. Nothing on this site is financial advice.

FAQ

Does Autonomo take a cut of payments?
No. Agents pay your payTo wallet directly through the facilitator. Autonomo never holds or routes funds.
Does Autonomo host my API?
No. Your API runs wherever it runs today. Autonomo lists it so agents can find it, with its price, network and usage.
How much does it cost to launch?
Nothing. Listing is free, whether your API is picked up from a facilitator catalog or launched through the form.
Is the discovery API free?
Yes, while in beta, with no key. A paid tier that uses x402 itself is planned for high-volume use.
My listing is wrong or out of date. How do I fix it?
Open your project page and use Suggest an edit, or send the details through the launch form. Edits are reviewed by hand.
Which networks are supported?
Whatever your facilitator supports. Most listed endpoints settle on Base, followed by Solana, Polygon, Arbitrum and others. Testnet-only services are hidden.