Capture what Claude (Anthropic) answers for a prompt and receive it as the canonical Envelope. Claude typically returns a prose answer with provenance on how it was captured.
How Claude is captured today: unlike our browser-first surfaces, the claude.ai consumer app is login-walled, so auto routes Claude through the official Anthropic model lane for now. How a capture was acquired is an internal detail — the Envelope’s provenance is lane-free and does not expose a capture method. Live browser capture of the Claude UI is on the roadmap. See GET /v1/surfaces for the capability matrix.

Request

Add "claude" to surfaces on POST /v1/search. A single-surface request with no webhook runs synchronously by default (a 200 with the Envelope inline). Add ?mode=async for the durable path — 202 with a parent job and one child per surface × region, read via GET /v1/jobs/:id or a webhook.

Response 202 Accepted

Read the dotted child id with GET /v1/jobs/job_8t2q.claude.us to fetch its Envelope.

Per-surface alias

POST /v1/search/claude targets Claude only — sync by default like any single-surface call. It accepts two convenience fields: prompt (alias of query) and country (flat sugar for regions: [{ "country": "..." }]). It returns 200 with the result inline.

Envelope

A completed Claude child returns the canonical four-section Envelope. Below is a trimmed example. answer.markdown is always populated, and answer.blocks[] carry the answer as typed blocks.
See The Envelope for every field, and how text, markdown, and blocks relate.
If Claude returns nothing for a prompt, the job still completes: provenance.surfacePresent is false, job.warnings carries a surface_absent warning, and answer is empty. An empty capture costs no credits.

Credits

Each successful Claude capture costs 3 credits — priced for the official-api lane (no browser session), the full Envelope, every field included. Credits are charged only on success; failed or empty captures are free. See Credits.

Regions

Request Claude in specific locations with regions. One child is created per surface × region, and each child’s provenance.region reports the requested vs effective location if it could not be honored exactly.
This fans out to job_<id>.claude.us, job_<id>.claude.gb:london, and job_<id>.claude.de:de. See Regions.

Create a search

Full request body, sync variants, and idempotency.

The Envelope

Every field in the canonical per-surface result.

Surfaces

What’s live today and what’s coming next.

Credits

What each surface costs and when you are charged.