Posted 10/15/2026 Odyssey Lite x402 AI agents Alternative data
Earlier this week we opened api.decadata.io: Odyssey Lite company data, sold one request at a time to whoever asks, person or program. This post is for the people who will wire it into something. It covers what happens on the wire when a request is bought, how an agent finds the API in the first place, how prices are worked out, and what we do to keep data that's sold to anonymous buyers from being resold.
As far as we can tell it is the only point-of-sale company sales data in Coinbase's x402 Bazaar today. The rest of the catalogue's data repackages free public sources: Census retail figures, SEC filings, exchange prices. Ours comes from transactions at eight US retailers, summed to the company that owned each brand at the time.
The API speaks x402 version 2, the open standard for paying over HTTP. There is no account and no API key: the payment is the credential.
GET /v1/companies/ticker:PEP/sales?from=2025-01-01&to=2025-12-31 without paying returns 402 Payment Required. The PAYMENT-REQUIRED header (base64 JSON, repeated as the body) says what it costs and how to pay: the amount in USDC base units, the asset, the network (eip155:8453, Base), the address to pay and a two-minute timeout, plus the exact window being sold.PAYMENT-SIGNATURE header.PAYMENT-RESPONSE header.One payment buys one response: a payment can't be replayed. Occasionally the facilitator accepts a settlement it hasn't confirmed yet; rather than refuse a buyer whose money has probably moved, we deliver and reconcile the transfer on-chain afterwards.
The x402 client libraries for JavaScript and Python handle steps 1 to 5. To see the first step for yourself:
curl -si "https://api.decadata.io/v1/companies/ticker:PEP/sales?from=2019-01-01&to=2019-01-01" | grep -i payment-required
An agent with a wallet still has to find us. Three things make that possible.
bazaar discovery extension: the route (/v1/companies/:id/sales), its inputs, an example response and a JSON schema for them. When a paid call settles through CDP with it, Coinbase catalogues the endpoint; agentic.market browses that catalogue. The route template makes the whole universe one listing rather than one per company./v1/coverage lists every company on sale and how far its data runs; /v1/companies/{id}/sample returns the first quarter of 2019 for any company; /v1/quote prices any window. An agent can decide whether the data is worth buying without spending anything.Prices depend on the company's size in the panel and on how recent the days are. The latest 90 days on sale are priced as live; anything older is history, charged per day at the monthly rate divided by 30.
| Tier | Frequency | Live (latest 90 days) | History |
|---|---|---|---|
| Tier 1, the largest | daily or weekly | $5.00 per company-day | $15 per company-month |
| Tier 2 | daily or weekly | $1.50 per company-day | $4 per company-month |
| Tier 3 | weekly only | $10 per company-month | $1 per company-month |
The minimum is $1 a request and a request covers up to three years. Without from, a request is just the latest day on sale (the latest whole week for weekly-only companies). One day of history costs the $1 minimum, and the sample costs nothing. Days go on sale at 07:00 UTC seven days after they happen, once every retailer has reported, and are never restated afterwards.
Anonymous payment is what makes the API usable by software, and it is also what makes resale tempting: buy once, sell many times. We take a few precautions, none of which gets in the way of normal use.
The company totals are computed inside AWS, next to Odyssey Lite itself: brand-level rows and the brand-to-company mapping never leave it. What reaches the API is company totals only, and only once a day is on sale. The API runs on Cloudflare; payments settle in USDC on Base to our own account, and every sale is recorded with its receipt and transaction so it can be audited.
If you're building an agent that needs to know how a consumer company is actually selling, start with the free sample at api.decadata.io, or get in touch to talk about an Odyssey Lite subscription for brands, T+3 data or the full history in bulk.
Photo by Carlos Muza on Unsplash.
© DecaData • Terms • • Privacy opt-out