Change a browser monitor.
const url = 'https://api.siteqwality.com/v1/browser-monitors/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"name":"example","script":"example","frequency":"example","timeout_seconds":1,"check_regions":["example"],"min_healthy_regions":1,"state":"active","group_notification_ids":["2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"],"service_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","tags":["example"],"confirmation_threshold":1,"rerun_on_failure":true,"trace_propagation":true}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.siteqwality.com/v1/browser-monitors/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "name": "example", "script": "example", "frequency": "example", "timeout_seconds": 1, "check_regions": [ "example" ], "min_healthy_regions": 1, "state": "active", "group_notification_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ], "service_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "tags": [ "example" ], "confirmation_threshold": 1, "rerun_on_failure": true, "trace_propagation": true }'Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Header Parameters
Section titled “Header Parameters ”Makes a retry safe: the same key and body within 24 hours returns the first response with Idempotent-Replayed: true. The same key with another body is refused with 422 idempotency_key_reused, and one still running with 409 idempotency_key_in_use.
Request Body required
Section titled “Request Body required ”object
null unlinks the service; leaving the field out keeps it.
Consecutive failed runs (by the location quorum) before the check is
DOWN, 1 to 10. Omitted or null means 1.
Rerun a failed run once from the same location before it counts. The
rerun uses synthetic minutes. Omitted or null means off.
Responses
Section titled “ Responses ”The monitor as saved; fields left out keep their values
object
Why a paused monitor is paused: user or dormancy (older rows may say billing).
Notification groups resolved from group_notification_ids. This is
what the dashboard edit form seeds from.
object
The group monitors get when they are created without group_notification_ids.
object
object
object
object
object
object
object
object
object
Severity of trigger events sent through this notification. Defaults
to critical when the caller omits it.
object
object
object
object
object
How this channel’s recent deliveries went: whether the last alert reached anyone, and why not when it did not (a revoked Slack token, a bouncing inbox). Present on the read endpoints; absent on create and update responses.
object
healthy: the most recent delivery reached the provider.
degraded: it was refused, bounced, complained about, could not be
sent, or skipped for a reason the channel must fix (such as
sms_quota), so the next alert will likely not arrive either.
unknown: nothing sent in the lookback window.
A skip by design, such as heartbeat_channel_unsupported, is listed in
recent but never judged.
Newest first, at most [CHANNEL_HEALTH_RECENT].
One delivery, as a channel’s health shows it.
object
Sent | delivered | delayed | soft_bounced | failed | rejected | bounced | complained | skipped
The provider’s reason for a non-success status, URLs reduced to hosts.
For skipped, a slug such as sms_quota or tls_channel_unsupported.
An email channel whose address hard-bounced or complained after its last delivery:
SES now suppresses it, so the channel is degraded until the address is fixed.
object
bounce or complaint.
E.g. Permanent/General, Permanent/OnAccountSuppressionList.
Consecutive failed runs before DOWN; null means 1.
Whether a failed run is rerun once from the same location before it
counts; null means off.
Example
{ "state": "active", "current_status": "success", "group_notifications": [ { "notifications": [ { "type": "email", "details": { "pagerduty_severity": "critical" } } ] } ], "not_checked_reason": "quota"}Headers
Section titled “Headers ”true when this is the stored first response
Invalid request body
An RFC 9457 problem, the body of every /v1 error.
object
https://docs.siteqwality.com/errors/ and the failure’s code, such as not_found.
urn:uuid: and the request id.
The invalid fields, when the request body was refused.
One validation failure; pointer is an RFC 6901 pointer into the request body.
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": [ { "pointer": "example", "detail": "example" } ]}Missing or invalid credentials
An RFC 9457 problem, the body of every /v1 error.
object
https://docs.siteqwality.com/errors/ and the failure’s code, such as not_found.
urn:uuid: and the request id.
The invalid fields, when the request body was refused.
One validation failure; pointer is an RFC 6901 pointer into the request body.
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": [ { "pointer": "example", "detail": "example" } ]}Resuming needs a paid plan or a free monitor slot
An RFC 9457 problem, the body of every /v1 error.
object
https://docs.siteqwality.com/errors/ and the failure’s code, such as not_found.
urn:uuid: and the request id.
The invalid fields, when the request body was refused.
One validation failure; pointer is an RFC 6901 pointer into the request body.
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": [ { "pointer": "example", "detail": "example" } ]}The browser monitor limit is reached, or several regions need a paid plan
An RFC 9457 problem, the body of every /v1 error.
object
https://docs.siteqwality.com/errors/ and the failure’s code, such as not_found.
urn:uuid: and the request id.
The invalid fields, when the request body was refused.
One validation failure; pointer is an RFC 6901 pointer into the request body.
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": [ { "pointer": "example", "detail": "example" } ]}No such monitor in this account
An RFC 9457 problem, the body of every /v1 error.
object
https://docs.siteqwality.com/errors/ and the failure’s code, such as not_found.
urn:uuid: and the request id.
The invalid fields, when the request body was refused.
One validation failure; pointer is an RFC 6901 pointer into the request body.
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": [ { "pointer": "example", "detail": "example" } ]}Too many requests; wait for the time in Retry-After
An RFC 9457 problem, the body of every /v1 error.
object
https://docs.siteqwality.com/errors/ and the failure’s code, such as not_found.
urn:uuid: and the request id.
The invalid fields, when the request body was refused.
One validation failure; pointer is an RFC 6901 pointer into the request body.
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": [ { "pointer": "example", "detail": "example" } ]}