Uptime API › Monitors
Get a monitor
GET/api/v1/monitors/{id}
One monitor, with its uptime over the last 24 hours, 7, 30 and 90
days in uptime_percent (a window with no checks is null) and,
when it has an sla_target, whether the 30-day uptime is below it in
sla_breached_30d. Heartbeat monitors carry neither.
Requires the uptime:monitor:read scope.
Authorization
Parameters
Path parameters
idstring requiredThe monitor's ID.
Responses
200
The monitor.
dataMonitorShow Monitor properties
idstringStarts withmon_.org_idstringteam_idstringThe owning team, or""for the whole organization.namestringurlstringThe target;""for a heartbeat monitor. Shown with credentials masked: userinfo becomes****:****@and the values oftoken,key,secret,password,sig,signature,auth,api_keyandaccess_tokenquery parameters (any case, or a name ending in_or-plus one of them) become****. Checks use the URL as entered.typeMonitorTypeinterval_secondsintegerHow often it is checked; for a heartbeat, how often a ping is expected.timeout_secondsintegerlocationsarray of stringProbe locations. Empty means EvoHub chooses.keywordstringText akeywordmonitor looks for in the body.expected_statusintegerThe status code an HTTP check expects when there are nostatus_codeassertions.is_activebooleanfalsewhile paused: no checks and no alerts.failure_thresholdintegerFailed checks in a row before the monitor is down.consecutive_failuresintegerlast_checked_atstring (date-time)last_statusMonitorStatussilenced_untilstring (date-time)Present on the list while a silence window mutes the monitor; when it ends.http_methodstringhttp_headersarray of objectThe request headers by name, sorted. A header's value is never returned, since it often carries a token.has_valuesays whether one is stored.namestringhas_valueboolean
http_bodystringhttp_auth_userstringhas_http_auth_passwordbooleanWhether a Basic Auth password is stored. The password itself is never returned.check_sslbooleanWarn before the TLS certificate expires.ssl_expiry_threshold_daysintegerDays before expiry to warn.ssl_expiry_daysintegerDays until the certificate expires, from the last check.tagsarray of stringgroup_idstringresponse_time_threshold_msintegeroncall_policy_idstringThe On-Call escalation policy its alerts go to.re_alert_minutesintegerMinutes between repeat alerts while down.grace_secondsintegerHeartbeat only. How late a ping may be.ping_tokenstringHeartbeat only. The job callshttps://evohub.io/ping/{ping_token}.last_ping_atstring (date-time)Heartbeat only.created_atstring (date-time)updated_atstring (date-time)assertionsarray of AssertionShow Assertion properties
typestring requiredfieldstringoperatorstring requiredvaluestring
degraded_threshold_msinteger | nullA passing check slower than this is degraded.alert_on_degradedbooleanRaise a lower-severity alert while degraded.consecutive_degradedintegersla_targetnumber | nullThe uptime percentage the monitor is held to, e.g. 99.9.last_failure_reasonstringlast_failure_atstring (date-time)uptime_percentobjectUptime percentage per window. A single monitor carries24h,7d,30dand90d; the list carries only30d.nullfor a window with no checks. Absent for heartbeat monitors.sla_breached_30dbooleanThe 30-day uptime is belowsla_target. Absent without a target or 30-day data, and for heartbeat monitors.
401
No API key was sent, or it is unknown, revoked or expired (UNAUTHORIZED).
errorobject requiredcodestring requiredmessagestring requiredrequest_idstring
403
The key lacks the scope this endpoint needs (FORBIDDEN).
errorobject requiredcodestring requiredmessagestring requiredrequest_idstring
404
The monitor does not exist, or belongs to a team the caller cannot see (MONITOR_NOT_FOUND).
errorobject requiredcodestring requiredmessagestring requiredrequest_idstring
429
Too many requests (RATE_LIMITED). Wait for Retry-After seconds.
Retry-AfterintegerSeconds to wait before retrying.
errorobject requiredcodestring requiredmessagestring requiredrequest_idstring
500
Something went wrong on EvoHub's side (INTERNAL_ERROR). Retry later.
errorobject requiredcodestring requiredmessagestring requiredrequest_idstring
Example request
curl -X GET 'https://evohub.io/api/v1/monitors/mon_8c1d0b52-6f3e-4a7d-9b21-0e5c4f7a3d19' \
-H 'Authorization: Bearer <TOKEN>'