Horizon Pulse

x402 crypto market data API

Updated

Crypto market data on Base and Ethereum.

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.

MethodPathPriceWhat it returns
GET/api/pulse$0.002 USDCBTC, ETH and SOL spot prices with 24h momentum (Coinbase Exchange, CoinGecko fallback)
GET/api/signals$0.005 USDCRSI, MACD and Bollinger bands plus perpetual funding (CoinGecko, OKX)
GET/api/yield$0.02 USDCRanked DeFi yields, pools with TVL of $10M or more (DefiLlama)
GET/api/portfolio$0.04 USDCBase and Ethereum balances, concentration score and rule findings vs fixed thresholds (not financial advice)
GET/api/gas$0.002 USDCBase and Ethereum fees with a suggested max fee (public RPC)
GET/api/funding$0.003 USDCBTC, ETH and SOL perpetual funding with a crowding hint (OKX)
GET/api/tokenized-stock$0.002 USDCTokenized stock status check on Base (on-chain, no price)

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.

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.