Monitoring

Create a Website Monitor

Create a scheduled website monitor that checks a URL every intervalMinutes (min 15) and records a change when the content differs — optionally alerting a webhook or email. scope "page" (default) watches one URL; "site" crawls the site each run and tracks pages added/removed/changed; "wire" runs a Wire action each check and diffs its JSON. watchMode "full_page" (2 credits/check) compares the whole page; "specific_data" (3 credits/check) extracts only the fields in outputSchema with AI — ideal for price/stock/status tracking. aiMode (+1 credit/check) filters out trivial noise and summarizes real changes. Active-monitor caps per plan: Free 5, Pro 20, Scale 100.

post/monitors

Request

  • Base URL: https://api.anakin.io/v1
  • URL: https://api.anakin.io/v1/monitors
  • Auth: API key in header X-API-Key

Request body

urlstring uri required

The URL to watch (root URL for site scope; the Wire site's URL for wire scope).

intervalMinutesinteger required

Check frequency in minutes. Minimum 15.

scope'page' | 'site' | 'wire'

What to monitor: one page (default), a whole site, or a Wire action.

watchMode'full_page' | 'specific_data'

Compare the whole page (default) or only the fields in outputSchema, extracted with AI.

watchFormat'markdown' | 'html' | 'cleaned_html'

Format compared in full_page mode. Defaults to markdown.

outputSchemaobject

JSON Schema of the fields to track. Required when watchMode is "specific_data".

aiModeboolean

AI meaningful-change filtering: ignores trivial noise (ads, timestamps) and summarizes real changes. +1 credit per check.

aiGoalstring

Natural-language description of which changes count as meaningful (used with aiMode), e.g. "only when the price drops or it goes out of stock".

useBrowserboolean

Render checks with a stealth headless browser (needed for JS-heavy pages). Forced true when sessionId is set.

countrystring

Two-letter proxy country code. Defaults to "us".

sessionIdstring

Saved browser-session ID for monitoring login-protected pages (see List Browser Sessions).

isActiveboolean

Start running immediately. Defaults to true.

expiresAtstring

Optional end date (ISO 8601 timestamp or YYYY-MM-DD); the monitor auto-pauses when it passes.

alertWebhookUrlstring

Webhook URL that receives signed change alerts.

alertEmailsstring

Comma-separated email recipients for change alerts.

maxPagesinteger

Site scope: max pages crawled per run.

maxDepthinteger

Site scope: crawl depth (1–5). Defaults to 2.

includePatternsstring[]

Site scope: glob patterns or hand-picked same-site URLs to track.

excludePatternsstring[]

Site scope: glob patterns to skip.

wireActionIdstring

Wire scope (required there): the Wire action run each check, e.g. "amazon.search_products" (see Discover Wire Actions).

wireCatalogSlugstring

Wire scope: catalogue slug of the Wire site.

wireCredentialIdstring

Wire scope: credential ID when the action needs auth (see List Wire Identities).

wireParamsobject

Wire scope: parameters passed to the action each check.

wireWatchPathsstring[]

Wire scope: JSON paths to diff instead of the whole response.

Example request

{
  "url": "https://example.com"
}

Response

Monitor created

idstring

Monitor ID.

urlstring
intervalMinutesinteger
scope'page' | 'site' | 'wire'
watchMode'full_page' | 'specific_data'
watchFormat'markdown' | 'html' | 'cleaned_html'
isActiveboolean
alertWebhookSecretstring

HMAC signing secret for verifying alert-webhook payloads. Treat as a credential.

Changes

No recorded changes to this operation across all 1 revision of this API.