Developers /Monitoring API

Update a monitor

Change, pause (status: paused) or resume a monitor.

PATCH/crawl/v1/monitors/{monitor_id}
PATCH example
curl --request PATCH \
  --url 'https://factget.dev/crawl/v1/monitors/{monitor_id}' \
  --header "Authorization: Bearer $FACTGET_CRAWL_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "Updated company watch"
}'

Replace IDs and sample values with your own. Examples are not executed in your browser.

Authorization

Authorizationstring · header · required

Bearer Crawl API key with the required scope. Learn about authentication →

Parameters

Path parameters

monitor_idstringrequired

Request body

application/json
originstring | null
maxLength: 200
namestring | null
minLength: 1maxLength: 120
urlsstring[] | null

The public source URLs for this job.

minItems: 1maxItems: 1000
scheduleobject | null

When the monitor should run. Set a cron expression and an IANA timezone.

Show nested properties
cronstringrequired

Cron schedule, interpreted in the supplied timezone. Example: 0 9 * * * for daily at 09:00.

minLength: 1maxLength: 120
timezonestring
Default: "UTC"minLength: 1maxLength: 64
windowMinutesinteger
Default: 15
watchesobject[] | null

The page, elements, list items, or intent to watch.

minItems: 1maxItems: 20
Show item properties
idstring | null
namestring | null
minLength: 1maxLength: 80
modestring
Allowed: "page", "element"
selectorstring | null
minLength: 1maxLength: 2000
selectorTypestring | null
Allowed: "css", "xpath"
conditionsobject[]
maxItems: 10
Show item properties
typestringrequired

Deterministic conditions, checked before any LLM.

Allowed: "change_score_at_least", "text_contains", "text_not_contains", "number_changed", "number_rises", "number_falls", "number_change_pct_at_least", "number_crosses", "element_missing", "element_appeared", "status_changed"
valuenumber | null
textstring | null
minLength: 1maxLength: 500
regexboolean
Default: false
matchstring
Default: "any"Allowed: "any", "all"
intentstring | null
minLength: 1maxLength: 1000
granularitiesstring[] | null
minItems: 1
scrapeOptionsobject | null
Show nested properties
onlyMainContentboolean

Return the main page content, excluding common navigation and page furniture.

Default: true
includeTagsstring[] | null

Include the matching HTML elements in the result.

maxItems: 50
excludeTagsstring[] | null

Exclude the matching HTML elements from the result.

maxItems: 50
waitForinteger

Additional time to wait for the page, in milliseconds.

Default: 0minimum: 0maximum: 30000
jsCodestring | null
maxLength: 10000
stepsobject[] | null
maxItems: 10
Show item properties
typestring
Default: "click"
selectorstring | null
minLength: 1maxLength: 2000
xpathstring | null
minLength: 1maxLength: 2000
labelstring | null
maxLength: 200
alertsobject | null
Show nested properties
emailboolean
Default: true
webhookobject | null
Show nested properties
urlstringrequired

The public URL to read.

headersobject
metadataobject
eventsstring[]
minItems: 1
deliverystring
Allowed: "instant", "hourly", "daily"
noiseobject | null
Show nested properties
patternsstring[]
maxItems: 20
selectorsstring[]
maxItems: 50
statusstring | null
Allowed: "active", "paused"

Responses

200Successful Response
application/json

The published schema does not define individual response fields for this endpoint. Inspect the returned JSON in your integration.

422Validation Error
application/json
detailobject[]
Show item properties
locstring | integer[]required
msgstringrequired
typestringrequired
inputobject
ctxobject

The API schema lists the responses above. Long-running operations can also return 202; see async jobs. For application errors, see errors & retries.