POST /v1/watches creates an active watch that re-runs a saved query on a cadence.
Authorization: Bearer <API_KEY> and Content-Type: application/json.
Creating a watch is free. Credits are reserved only when a scheduled run
dispatches, using the same per-surface, success-only billing as an async
search. A skipped run costs nothing.
Watches can also be created from the dashboard Watches page or by an agent
through the
create_watch tool on the MCP server — every path hits
this same endpoint with identical validation, plan limits, and billing.Tenant scope
Restricted (sk_*) keys always create watches for their own owner. Internal keys can act on behalf of one tenant for reads and writes by sending ?owner=<ownerId> or X-AISearch-On-Behalf-Of: <ownerId>; the query parameter wins when both are present. A restricted key’s override is ignored.
When an override is applied, the response adds a top-level owner field and an X-AISearch-Owner header containing the enforced owner id.
Internal keys only. Owner id to enforce for this write. Overrides the
X-AISearch-On-Behalf-Of header when both are sent.Body
Optional display name. Omitted watches use an empty string.
The exact prompt to run on every tick. Non-empty, up to 2000 characters.
This endpoint does not accept the
prompt alias.One or more surfaces. Allowed values:
chatgpt, claude, perplexity,
gemini, copilot, google_ai_overview, google_ai_mode, google_search,
google_news.Up to 10 regions. Omitted: one untargeted (
GLOBAL) run per surface.Auto Extract configuration re-applied on every dispatched run.
true and
{} extract opportunistically; false or omission disables extraction.Public HTTPS endpoint that receives each dispatched run’s signed deliveries.
Private, loopback, link-local, and metadata destinations are rejected.
Cadence in one of two forms. The interval must meet your plan’s floor.
Request
Response
201 Created
The created public Watch.
Responses always echo both schedule fields. For an off-grid interval,
every
is a display convenience; intervalMinutes is the source of truth.Errors
Creating a watch never returns
INSUFFICIENT_CREDITS: creation costs 0 credits, and credits are considered only when a run dispatches.
422
Related
Watches
Scheduling, limits, lifecycle, billing, and run history.
List watches
Page through the owner’s watches.
Update a watch
Change the cadence, extraction, webhook, or status.
Webhooks
Verify signed deliveries from dispatched runs.