Request
Path Parameters
uuidstringrequired
The unique identifier of the monitor to update
Example:"mon_3GhAQMYGEQuyUH"
Bodyapplication/json
namestringoptional
Pronounceable name of the monitor
external_idstringoptional
Sets or changes your own identifier for the monitor;
null removes it. It must not be used by another monitor of the project, otherwise the request returns 409 with the uuid of that monitor. See Create or update a monitor.urlstringoptional
The URL of your website or host
protocolenum<string>optional
Type of monitor. A monitor can't be turned into a browser check or back: create a new monitor instead.
scriptstringoptional
New Playwright test of a browser check. It replaces the current script and takes effect on the next run. Browser checks only, up to 100,000 characters.
env_variablesarray<object>optional
The full list of variables the browser check should have, as objects with
name and value. Variables left out are deleted, and [] deletes them all. An entry with a name but no value keeps the value already stored under that name: send back the env_variables list from Get a monitor and add a value only where it changes. Browser checks only.dns_record_typeenum<string>optional
DNS record type (A, AAAA, CNAME, MX, NS, TXT, SOA, SRV, CAA, PTR). Only used when protocol is
dnsdns_nameserverstringoptional
Nameserver to query against. Only used when protocol is
dnsdns_expected_answerstringoptional
Expected DNS answer to validate against. Only used when protocol is
dnsregionsarray<string>optional
Array of region names to monitor from. Browser checks run from
frankfurt and sanfrancisco only.check_frequencynumberoptional
Check frequency in seconds. A browser check takes
300, 600, 900, 1800, 3600, 21600, 43200 or 86400.http_methodenum<string>optional
HTTP method for the request
request_bodystringoptional
Request body for POST, PUT, PATCH requests
request_headersarray<object>optional
Array of objects with
name and value for custom headersfollow_redirectsbooleanoptional
Whether to follow HTTP redirects
ip_versionenum<number>optional
IP version used to reach the target:
4 or 6. An IPv6 monitor is checked over IPv6 only, never IPv4. Available for the http, port and icmp protocols. Checks run only from the selected regions that have an IPv6 probe, and the request is rejected if none of the selected regions has one. See IP version.portnumberoptional
Port number to check. Required if protocol is
portexpected_status_codestringoptional
Expected HTTP status code. Use
"2xx" for 200-299, "1xx-3xx" for 100-399, or a specific code like "200".Example:"2xx"
required_keywordstringoptional
Triggers downtime if body response is missing this keyword
pausedbooleanoptional
Whether the monitor should be paused
alerts_waitnumberoptional
Minutes to wait before sending alerts. Use
-1 to disable alerts.ssl_alert_daysnumberoptional
Days before the TLS certificate expires to send the first expiry alert.
-1 = never. When omitted on create, the default applies.ssl_remindersbooleanoptional
Also remind at each step below the threshold (30, 15, 7, 3 and 1 days). Default
true.ssl_notify_on_changebooleanoptional
Notify when the server starts serving a different certificate. Default
false.domain_alert_daysnumberoptional
Days before the domain registration expires to alert.
-1 = never (default for monitors created through the API).group_idnumberoptional
Monitor group to move the monitor to, from the Monitor Groups API. It goes last in the group unless
sort_order is set. null takes it out of its group.sort_ordernumberoptional
Position of the monitor in its group
escalation_policystringoptional
Policy UUID to link. Send
null or "none" to unlink.Example:"policy_123abc"
Response
Returns the updated monitor object, or 409 with message and uuid when the external_id belongs to another monitor.