Notable changes to the AI Search API, newest first.
2026-06-27
v1.0
Initial public release.The first public version of the AI Search API is here. Capture what the live AI apps actually show, from a real browser, and parse every surface with one shape.Search
  • POST /v1/search — async by default. Fan out across surfaces and regions in one call and get back 202 { jobId, status: "processing", children: [...] }, with one child per surface × region.
  • Synchronous mode for a single surface via ?mode=sync (or the Prefer: wait header), returning the Envelope inline with 200.
  • Sync alias POST /v1/search/:surface (for example /v1/search/chatgpt) that accepts prompt (alias of query) and a flat country.
Surfaces
  • Seven surfaces at launch: chatgpt, claude, perplexity, gemini, copilot, google_ai_overview, and google_ai_mode.
One Envelope for every surface
  • The canonical Envelope normalizes every surface into the same shape — job, provenance, answer, and evidence — so you write one parser and it works everywhere.
  • answer.markdown is always populated, alongside answer.text and answer.blocks[] that reference evidence.sources.
  • Rich evidence: sources, fanOut, mentions, shopping, and ads, plus provenance.model and provenance.surfacePresent.
Batch and jobs
  • Batch fan-out across many surfaces and regions from a single request.
  • GET /v1/jobs/:id to poll a parent (job status plus children) or fetch a child Envelope by its dotted id (for example job_8t2q.chatgpt.us).
Webhooks
  • HMAC-signed webhook delivery via webhook: { url, secret } so you can react to results without polling.
Regions
  • Per-request regions: [{ country, city?, language? }] (ISO-3166 alpha-2 country, default US).
  • provenance.region reports requested vs effective when a region can’t be honored exactly.
Idempotency
  • Safe retries with an idempotencyKey body field.
Operations
  • Usage, health, and live async status endpoints, including GET /v1/async/status for an inflight snapshot of your key.
Billing
  • Credit-based billing, charged only on successful captures, with 500 free credits to start.