Status
Get the overall status of all your monitors with a single API call. Returns aggregate health and individual monitor states.
The Status endpoint provides a consolidated view of your team's monitoring health, including the overall status and individual monitor states.
GET /api/v1/status
Returns the overall status of all monitors in your team, along with a summary and details for each monitor.
Required scope: monitors:read
Response Fields
All fields live under data.status.
overallstringOverall team status:
operational,partial_outage,major_outage, orunknownmonitorsarrayEvery HTTP monitor on the team, enabled or not, newest first
monitors[].idstringUnique monitor identifier
monitors[].namestringDisplay name of the monitor
monitors[].statusstringup,down, orunknown, from the monitor's latest completed checkmonitors[].enabledbooleanWhether the monitor is actively checking
monitors[].lastChecknumber | nullWhen the latest check completed, in milliseconds since the epoch, or
nullif never checkedmonitors[].responseTimeMsnumber | nullResponse time of the latest check in milliseconds, or
nullif unavailablesummaryobjectAggregate counts of monitor states
summary.totalnumberNumber of enabled monitors, the set
overallis computed from; the other counts sum to itsummary.upnumberCount of enabled monitors with
upstatussummary.downnumberCount of enabled monitors with
downstatussummary.degradednumberAlways
0; monitors on this endpoint reportup,down, orunknownsummary.unknownnumberCount of enabled monitors with
unknownstatus
Monitor Status Calculation
A monitor is up when its latest completed check returned the monitor's expected status code, down when it returned any other status code, and unknown when it has no completed check with a status code (never checked, or the latest check got no response).
Overall Status Calculation
The overall field considers enabled monitors only:
operational - No enabled monitor is
downpartial_outage - Some enabled monitors are
down, but not allmajor_outage - All enabled monitors are
downunknown - The team has no enabled monitors
Errors (2)
| Status | Type | Meaning |
|---|---|---|
| 401 | unauthorized | The API key is missing or invalid |
| 403 | forbidden | The API key lacks the required scope |
Response fields (200)
dataobjectRequiredShow nested fields
statusobjectRequiredShow nested fields
overallstringRequiredunknownwhen the team has no enabled monitor One ofoperational,partial_outage,major_outage,unknown.monitorsMonitorStatus[]RequiredShow nested fields
idstringRequirednamestringRequiredstatusstringRequiredunknownuntil a completed check carries a status code One ofup,down,unknown.enabledbooleanRequiredlastCheckinteger | nullRequiredEpoch milliseconds
responseTimeMsinteger | nullRequired
summaryobjectRequiredShow nested fields
totalintegerRequiredupintegerRequireddownintegerRequireddegradedintegerRequiredunknownintegerRequired
metaobjectRequiredShow nested fields
requestIdstringRequiredFormat: uuid.
timestampstringRequiredFormat: date-time.
cURL
Response
{
"data": {
"status": {
"overall": "partial_outage",
"monitors": [
{
"id": "mon_abc123",
"name": "Production API",
"status": "up",
"enabled": true,
"lastCheck": 1771065000000,
"responseTimeMs": 142
},
{
"id": "mon_def456",
"name": "Marketing Website",
"status": "down",
"enabled": true,
"lastCheck": 1771064985000,
"responseTimeMs": 2340
},
{
"id": "mon_ghi789",
"name": "Staging Environment",
"status": "unknown",
"enabled": false,
"lastCheck": null,
"responseTimeMs": null
}
],
"summary": {
"total": 2,
"up": 1,
"down": 1,
"degraded": 0,
"unknown": 0
}
}
},
"meta": {
"requestId": "6b1f9d5e-4a2c-4f7e-9a10-2c8d5f3b7e41",
"timestamp": "2026-02-14T10:30:00.000Z"
}
}