The oracle bought its data
$0.01 USDCThe oracle paid CoinGecko's x402 API for live BTC data, the same protocol it sells with.
2FGJfYbWX1…U7NnRKpAVtA machine paywall, live
No API keys, no accounts, no subscriptions. A client calls the API, gets an HTTP 402 with machine-readable payment terms, pays a fraction of a cent in USDC on Solana, retries, and gets the data. That protocol is x402.
Live status
Checking the oracle…
The demo
Click the button and the demo's agent buys one price from the oracle: a real USDC micropayment, refused unpaid, then created, paid, and settled on Solana devnet in front of you. Every run is a new on-chain transaction you can open and verify.
One click starts a real run. The agent gets refused, pays a half-cent in devnet USDC, and gets the price. It settles on-chain in about two seconds.
Prefer to trust nothing? Run the two-step check yourself:
1. Trigger a real 402.
curl -si "https://keeta-oracle-bounty-2mz3sjj2zq-ue.a.run.app/api/getPrice?pair=BTC-USD" | grep -i payment-requiredThat base64 blob is the price tag, not an error. Decode it:
2. Decode the terms.
curl -s -D - -o /dev/null "https://keeta-oracle-bounty-2mz3sjj2zq-ue.a.run.app/api/getPrice?pair=BTC-USD" \
| tr -d '\r' | awk 'tolower($1)=="payment-required:"{print $2}' \
| python3 -c "import sys,base64,json; print(json.dumps(json.loads(base64.b64decode(sys.stdin.read().strip())), indent=2))"Receipts
The demo above settles on devnet, so it is free to try. The same stack has settled real USDC on Solana mainnet. Two transactions from that run, both public and verifiable:
The oracle paid CoinGecko's x402 API for live BTC data, the same protocol it sells with.
2FGJfYbWX1…U7NnRKpAVtA test client paid the oracle for a BTC price and it settled on the first attempt.
2FcsVacrkY…LQV5yisbynNeither wallet ever held SOL; the facilitators sponsored all network fees. Net cost of the whole proof: one cent.
Why this matters
x402 is Coinbase's open revival of HTTP 402 Payment Required. It lets a machine pay for exactly what it uses, per request, with no sign-up flow. This oracle sells live price data that way, and buys its own upstream data the same way. Payment in both directions, settled on-chain.
The refusal
An unpaid request gets a genuine HTTP 402 carrying machine-readable terms: the price, the asset, the network, and where to pay. A paywall a machine can read.
The payment
The caller pays $0.005 in USDC on Solana and retries with proof. The facilitator sponsors network fees, so a machine buyer holds only the USDC it spends, zero SOL.
The guarantee
Payment settles only after a successful response. Any refusal cancels it. You are never charged for an answer you did not get.