Create a monitor — a saved /v1/search or /v1/news request (new results) or a /v1/webpage URL (content changes) that runs on a schedule and reports what is new (signed webhook and run history)

Runs hourly to monthly (interval or interval_seconds, default daily); the first run is due right away (unless active: false). With endpoint: webpage the monitor watches url and reports the page (Markdown, change: new|changed) whenever its content changes (1 credit per check). Each run is billed like the search it makes (1 credit per 10 results, num: 100 is 7; empty and failed runs are free) on the monitor's key: the key that created it, or last changed or ran it, under that key's limits and the account's spend cap. Only the fields below are kept; any other search field is a 400. Results among the top num not seen in earlier runs are POSTed as a monitor.results webhook when the monitor has a webhook_url, and are always listed in its run history (GET /v1/monitors/{id}/runs, results kept 24 hours). At most 100 monitors per account (403 forbidden). A monitor pauses itself after 10 failed runs in a row (search errors, insufficient credits or webhook failures) or when its key is revoked; set active: true to resume.

post/v1/monitors

Request

  • Base URL: https://api.serpkite.com
  • URL: https://api.serpkite.com/v1/monitors
  • Auth: HTTP bearer

Request body

qstring
urlstring uri

endpoint=webpage: the page to watch for content changes

endpoint'search' | 'news' | 'webpage'
metadataobject

Your own JSON object (at most 2 KB), echoed on the monitor and in its webhooks

namestring
interval'hourly' | 'daily' | 'weekly'
interval_secondsinteger

Overrides interval

webhook_urlstring uri

Receives signed monitor.results events. Without one, read new results from the run history

activeboolean

false creates the monitor paused

countrystring
languagestring
locationstring
time'hour' | 'day' | 'week' | 'month' | 'year'
numinteger
device'desktop' | 'mobile'
safe'active' | 'off'

Example request

{
  "include_domains": "github.com,en.wikipedia.org",
  "exclude_domains": "github.com,en.wikipedia.org",
  "engine": "google"
}

Response

Created

idstring uuid required
namestring required
endpoint'search' | 'news' | 'webpage' required
metadataobject nullable
interval_secondsinteger required
webhook_urlstring nullable required

Null when new results are only kept in the run history

activeboolean required
next_run_atstring date-time required
last_run_atstring date-time nullable
last_status'ok' | 'error' | 'webhook_failed' | 'paused' | 'null' nullable
last_errorstring nullable
last_new_resultsinteger

New results found by the last run

runsinteger required
consecutive_failuresinteger required

Failed runs in a row; the monitor pauses itself at 10

credits_usednumber required

Total over all runs

created_atstring date-time required

Changes

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