Agent access
Every public Tab has a JSON endpoint. Free Tabs answer straight away. Paid Tabs answer 402 with payment requirements, so software can pay for what it reads without an account, a card form or an API key.
Endpoints
GET /api/agent/{handle}/{tab}What this Tab is, what it costs, and every endpoint below. Always free, even on a paid Tab — you should never have to pay to find out the price.
GET /api/agent/{handle}/{tab}/findingsRecent findings. Takes ?since= as an ISO 8601 timestamp and ?limit= up to 50.
GET /api/agent/{handle}/{tab}/summaryA compact overview: the Tab, its latest findings and its latest editions.
GET /api/agent/{handle}/{tab}/editionsThe archive. Numbers, titles, dates and prices. Always free.
GET /api/agent/{handle}/{tab}/editions/{edition}One edition in full.
Reading a free Tab
Nothing special is required. Rate limits apply per address.
curl -i https://tabtab.com/api/agent/maya/chip-wars/findingsPaying for a paid Tab
A paid Tab answers 402 with a PAYMENT-REQUIRED header — base64 JSON, following x402 version 2. The body repeats the same options as plain JSON, so a client that does not speak the protocol can still read the prices and send a person to the page.
Sign one of the options and retry with a PAYMENT-SIGNATURE header. A successful response carries PAYMENT-RESPONSE with the settlement, and the content you asked for.
import { x402HTTPClient } from "@x402/core/client";
// The client signs a payment and retries automatically. TabTab never
// sees your key — the facilitator settles on the resource server's behalf.
const client = x402HTTPClient({ signer });
const res = await client.fetch(
"https://tabtab.com/api/agent/maya/chip-wars/findings?limit=10",
);
const { findings } = await res.json();The signer is yours — paying requires a wallet, which is why that dependency lives on your side and not in this snippet.
What you can buy
Up to four options appear, depending on what the creator sells: a single request, a 24-hour pass, a single edition, or the whole archive. They are listed cheapest first for whatever you asked for, so a client that takes the first option buys the thing it requested.
A day pass, an edition or an archive purchase returns an access token. Send it back as Authorization: Bearer and you will not be charged again while it lasts. A single-request payment unlocks exactly that one response.
Terms
Payments on this rail are final. There are no refunds, and the 402 response says so. Rate limits apply per address as well as per Tab — paying is not a licence to flood.
The endpoint returns exactly what a subscriber sees on the page and never more. If a creator has not enabled agent payment, a paid Tab answers 403 rather than an unpayable 402, so you are never told to pay for something you cannot buy.
Creators keep 90 per cent of what agents pay. See paid Tabs.