API
Free endpoints for the claim database; premium lookups paid per-call in USDC over x402 — no account, no API key. Current base URL is https://basis.watch/api; api.basis.watch is reserved as the future dedicated API hostname and will redirect-compatibly mirror these routes.
Free endpoints
/api/claimsfreeAll claims. Filter with ?project=<slug> or ?status=<status>.
curl -s "https://basis.watch/api/claims?project=venice&status=disputed"
/api/projectsfreeAll projects with dossiers and Claim Reliability Index scores.
curl -s "https://basis.watch/api/projects"
/api/reportsfreeReport metadata: title, date, summary, dataset/report hashes, onchain anchor.
curl -s "https://basis.watch/api/reports"
/api/seller/{address}/adjustedfreeSybil-adjusted seller metrics for an x402 seller address. Coverage is rolling out seller-by-seller; uncovered addresses return coverage:'none' — Basis never fabricates metrics.
curl -s "https://basis.watch/api/seller/0x0000000000000000000000000000000000000000/adjusted"
Premium (x402)
/api/x402/claimsx402 · $0.05 USDCPremium claim lookups: full evidence trails, methodology notes, machine-readable source grading, and change history. Returns HTTP 402 with payment requirements; retry with an X-PAYMENT header constructed by any x402 client (x402-fetch, Coinbase Payments MCP, etc.). Price: $0.05 USDC per call.
# 1) Unpaid request returns 402 + accepts[]:
curl -si "https://basis.watch/api/x402/claims?project=gitlawb"
# 2) With an x402 client (TypeScript):
import { wrapFetchWithPayment } from "x402-fetch";
const paidFetch = wrapFetchWithPayment(fetch, walletClient);
const res = await paidFetch(
"https://basis.watch/api/x402/claims?project=gitlawb",
);Response conventions
- Every response includes a disclaimer field: status labels describe the state of public evidence, not intent; unverified does not mean false.
- Claims carry status, confidence, dated lastChecked, and full sources arrays.
- Raw and adjusted figures are returned together; adjusted figures include the heuristic component breakdown.
- Rate limits on free endpoints: 60 requests/minute per IP (burst 120).
Building an agent? The same data is available over MCP — see MCP documentation. Questions: support@basis.watch