x402 API: paid routes and prices
Updated
In short: Horizon Pulse is a set of pay-per-call HTTP APIs for AI agents. An agent calls a route, gets an HTTP 402 with the price, pays for that one call with x402 v2 in USDC on Base, Solana or Polygon, or RLUSD on the XRP Ledger, and gets JSON back. No signup or API key.
| Method | Path | Price | What it returns |
|---|---|---|---|
| GET | /api/pulse | $0.002 USDC | BTC, ETH and SOL spot prices with 24h momentum (Coinbase Exchange, CoinGecko fallback) |
| GET | /api/signals | $0.005 USDC | RSI, MACD and Bollinger bands plus perpetual funding (CoinGecko, OKX) |
| GET | /api/yield | $0.02 USDC | Ranked DeFi yields, pools with TVL of $10M or more (DefiLlama) |
| GET | /api/portfolio | $0.04 USDC | Base and Ethereum balances, concentration score and rule findings vs fixed thresholds (not financial advice) |
| GET | /api/gas | $0.002 USDC | Base and Ethereum fees with a suggested max fee (public RPC) |
| GET | /api/funding | $0.003 USDC | BTC, ETH and SOL perpetual funding with a crowding hint (OKX) |
| GET | /api/fetch | $0.02 USDC | Any public URL as clean text or markdown |
| GET | /api/http | $0.01 USDC | Universal HTTP proxy: your method, headers and body |
| POST | /api/http | $0.01 USDC | Universal HTTP proxy: your method, headers and body |
| GET | /api/extract | $0.015 USDC | Page to structured fields, or your own CSS selectors |
| POST | /api/extract | $0.015 USDC | Page to structured fields, or your own CSS selectors |
| GET | /api/x402-check | $0.01 USDC | Audit any x402 endpoint without paying it |
| GET | /api/x402-check/deep | $0.03 USDC | Live deep check of an x402 endpoint and its payTo |
| GET | /api/bazaar-check | $0.01 USDC | Check whether an x402 seller is listed in CDP Bazaar, and why not |
| GET | /api/market/search | $0.005 USDC | Find a paid x402 API for a task, re-checked live |
| GET | /api/market/quote | $0.005 USDC | Check an x402 seller's live price and payTo before paying |
| GET | /api/tx-status | $0.002 USDC | Did my transaction land, and is it final (4 chains) |
| GET | /api/tokenized-stock | $0.002 USDC | Tokenized stock status check on Base (on-chain, no price) |
| GET | /api/watch | $0.002 USDC | Did this page or endpoint change since my last check |
| GET | /api/balance | $0.002 USDC | Can my wallet pay x402 calls right now (4 rails) |
| GET | /api/tx-guard | $0.002 USDC | Check a recipient address before sending: allow / warn / block from four mechanical checks; allow is not a guarantee |
| GET | /api/grocery/normalize | $0.002 USDC | Turn recipe ingredient lines into a normalized shopping list |
| POST | /api/grocery/normalize | $0.002 USDC | Turn recipe ingredient lines into a normalized shopping list |
| GET | /api/grocery/ingredient | $0.005 USDC | Look up nutrition per 100 g for an ingredient or barcode |
| POST | /api/grocery/ingredient | $0.005 USDC | Look up nutrition per 100 g for an ingredient or barcode |
| GET | /api/chain/head | $0.002 USDC | Current block, slot or ledger height on 5 chains |
| GET | /api/token/meta | $0.002 USDC | Token name, symbol, decimals and supply from chain state |
| GET | /api/name/resolve | $0.002 USDC | Resolve an ENS name or Basename, or find an address's primary name |
| GET | /api/batch | $0.01 USDC | Up to 10 chain checks (balance, gas, tx status, token, chain head, names) for one payment |
| POST | /api/batch | $0.01 USDC | Up to 10 chain checks (balance, gas, tx status, token, chain head, names) for one payment |
| GET | /api/discourse/split | $0.03 USDC | How Hacker News and Bluesky posts split on a question (not a poll) |
| GET | /api/screenshot | $0.02 USDC | Headless Chromium render to PNG or JPEG |
| GET | /api/search | $0.03 USDC | Web search with the top pages as clean text and sources |
| GET | /api/pdf | $0.02 USDC | PDF URL to text per page plus metadata |
| GET | /api/sec/company-facts | $0.02 USDC | Company facts from SEC EDGAR data by ticker or CIK ($0.02) |
| POST | /api/sec/company-facts | $0.02 USDC | Company facts from SEC EDGAR data by ticker or CIK ($0.02) |
| GET | /api/funding-report | $1 USDC | Funding Pulse Weekly report by id or latest ($1) |
| GET | /api/domain/precheck | $0.02-$0.25 USDC | Domain pre-purchase check ($0.02-$0.25) |
| POST | /api/domain/precheck | $0.02-$0.25 USDC | Domain pre-purchase check ($0.02-$0.25) |
| POST | /api/text/pii-scan | $0.02 USDC | Best-effort PII pattern scan ($0.02) |
| GET | /api/sec/filings | $0.02 USDC | SEC filings list ($0.02) |
| GET | /api/treasury/debt | $0.01 USDC | Treasury debt and cash balance ($0.01) |
| GET | /api/pros/verify | $0.05 USDC | Contractor license check ($0.05) |
| GET | /api/sec/insider | $0.02 USDC | SEC insider transactions ($0.02) |
| GET | /api/sec/13f | $0.02 USDC | SEC 13F holdings changes ($0.02) |
| GET | /api/sec/10k-risk | $0.5 USDC | SEC 10-K risk factor headings ($0.5) |
| GET | /api/weather/alerts | $0.02 USDC | Active NWS weather alerts ($0.02) |
| GET | /api/bls/cpi | $0.01 USDC | BLS Consumer Price Index series ($0.01) |
| GET | /api/bls/jobs | $0.01 USDC | BLS jobs figures (payrolls, unemployment rate, hourly earnings) ($0.01) |
| GET | /api/treasury/yield-curve | $0.01 USDC | US Treasury daily par yield curve ($0.01) |
| GET | /api/domain/whois | $0.005 USDC | Domain registration lookup (.com/.net/.org) ($0.005) |
| GET | /api/domain/ssl | $0.005 USDC | SSL certificate expiry check ($0.005) |
| GET | /api/domain/trust | $0.25 USDC | Domain checks bundle (.com/.net/.org) ($0.25) |
| GET | /api/email/check | $0.003 USDC | Email address check ($0.003) |
| GET | /api/vuln/check | $0.02 USDC | Known-vulnerability check (CVE or package) ($0.02) |
Full docs: /docs · /llms.txt · /openapi.json
Common questions
Do I need an account or an API key?
No. There is no signup and no API key. Each call is paid on its own with x402 v2.
How does payment work?
Call a paid route without payment and you get HTTP 402 with the price in the PAYMENT-REQUIRED header. An x402 client signs the payment and retries the same request with a PAYMENT-SIGNATURE header. The settlement receipt comes back in the PAYMENT-RESPONSE header.
Which networks and tokens can I pay with?
The standard routes take USDC on Base, Solana or Polygon, or RLUSD on the XRP Ledger, at the same price on each. The verified brief, the seller due-diligence check, the Funding Pulse Weekly report and SEC company facts are USDC on Base only. The 402 response lists the options for each call; pay with one of those.
Am I charged when a call fails?
Our error responses (4xx/5xx) are not charged on Base (other rails may charge), apart from the exceptions noted on a route.
Can I see a response before paying?
Yes. Each demo route under /api/demo/ returns a fixed-input sample without payment, for example /api/demo/pulse.
Where are the machine-readable docs?
/llms.txt, /openapi.json, /.well-known/x402 and /skill.md describe every paid route and its price. The hosted MCP server is at /mcp.