Update a monitor
PUT /api/v1/monitors/{id}
Updates an existing monitor. Only the fields provided in the request body are changed.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Example
42Unique monitor identifier.
Request Body required
Section titled “Request Body required ”Request body for updating an existing monitor. All fields are optional.
object
Human-readable name for the monitor.
Example
Staging APIThe kind of check this monitor performs.
Example
httpURL, hostname, or address to monitor.
Example
https://staging.example.com/healthzSeconds between checks.
Example
60Seconds before a check is considered timed out.
Example
10Keyword to search for (keyword monitors only).
Example
healthyWhether the keyword should or should not appear.
Example
containsMatch mode for keyword checks. “exact” for plain string, “regex” for regular expression.
Example
exactExpected HTTP status code.
Example
200Latency warning threshold in milliseconds.
Example
500Consecutive failures required before marking as down.
Example
3Days before SSL expiry to warn.
Example
14Optional secret for heartbeat monitors. If set, pings must include the X-Secret header with this value.
Example
a3f8b2c1d4e5f6a7b8c9d0e1f2a3b4c5Network protocol for port monitors.
Example
tcpType of HTTP authentication. Set to “none” to clear existing credentials.
Example
noneUsername for Basic Auth.
Example
adminPassword for Basic Auth.
Example
secret123Header name for custom header auth.
Example
X-API-KeyHeader value for custom header auth.
Example
my-api-keyDNS record type (DNS monitors only).
Example
AAAAOptional case-insensitive substring expected in DNS records.
Example
2606:2800Optional custom DNS resolver. Empty string clears it.
Example
8.8.8.8IDs of alert contacts to attach.
Example
[ 2]Responses
Section titled “ Responses ”Monitor updated successfully.
A monitor that periodically checks the health of a target.
object
Unique monitor identifier.
Example
42ID of the user who owns this monitor.
Example
1Human-readable name for the monitor.
Example
Production APIThe kind of check this monitor performs.
Example
httpURL, hostname, or address to monitor.
Example
https://api.example.com/healthzSeconds between checks.
Example
300Seconds before a check is considered timed out.
Example
5Network protocol for port monitors.
Example
tcpKeyword to search for in the response body (keyword monitors only).
Example
okWhether the keyword should or should not appear in the response.
Example
containsMatch mode for keyword checks. “exact” for plain string, “regex” for regular expression.
Example
exactExpected HTTP status code (HTTP monitors).
Example
200Latency threshold in milliseconds that triggers a warning.
Example
1000Number of consecutive failures required before marking the monitor as down.
Example
1Current count of consecutive check failures.
Unique token for heartbeat monitors. Generated by the backend.
Example
hb_a1b2c3d4e5f6Timestamp of the last heartbeat ping received.
Example
2026-03-29T10:15:00ZOptional secret for heartbeat monitors. If set, pings must include the X-Secret header with this value.
Example
a3f8b2c1d4e5f6a7b8c9d0e1f2a3b4c5Number of days before SSL expiry to trigger a warning.
Example
30SSL certificate expiry timestamp.
Example
2026-12-01T00:00:00ZWhether the monitor is actively running checks.
Example
trueCurrent status of the monitored target.
Example
upTimestamp of the most recent check.
Example
2026-03-29T12:00:00ZWhen the monitor was created.
Example
2026-01-15T08:30:00ZWhen the monitor was last updated.
Example
2026-03-29T12:00:00ZIDs of alert contacts to notify when the monitor changes state.
Example
[ 1, 3]Type of HTTP authentication configured on this monitor.
Example
noneWhether HTTP authentication credentials are configured. Credentials are never returned in responses.
DNS record type to resolve (DNS monitors only).
Example
AOptional case-insensitive substring that must appear in at least one returned DNS record.
Example
93.184.216.34Optional custom DNS resolver (e.g. “1.1.1.1” or “8.8.8.8:53”). Defaults to the system resolver.
Example
1.1.1.1The request body is invalid or missing required fields.
Error response returned when a request fails.
object
A human-readable error message.
Example
monitor not foundExample
{ "error": "invalid request body"}Authentication credentials are missing or invalid.
Error response returned when a request fails.
object
A human-readable error message.
Example
monitor not foundExample
{ "error": "unauthorized"}The requested resource was not found.
Error response returned when a request fails.
object
A human-readable error message.
Example
monitor not foundExample
{ "error": "not found"}