Endpoint reference
GET /api/v1/monitors
Returns the monitors configured for the authenticated account. Results include the latest heartbeat metadata and basic configuration details.
Request
GET
/api/v1/monitorsProvide an API key using one of the supported headers. This endpoint performs a single Cassandra query and is safe to poll periodically.
| Query param | Type | Required | Description |
|---|---|---|---|
| limit | integer | No | Number of records to return. Accepts values from 1 to 200. Defaults to 100. |
| status | string | No | Filter monitors by their current status (case-insensitive). Typical values include online, offline, or unknown. |
Response
A successful request returns HTTP 200 with a JSON object containing a data array plus summary fields.
{
"data": [
{
"id": "8b0a86d1-3f5b-4a0e-8e61-3c2c50d24711",
"name": "Primary site",
"url": "https://status.example.xuptimemonitor.com",
"method": "GET",
"status": "online",
"intervalSeconds": 60,
"regions": ["iad", "ams"],
"uptimePercent": 99.98,
"latencyThresholdMs": 1500,
"onlineSince": "2024-12-31T18:02:41.000Z",
"lastCheckedAt": "2025-01-07T10:12:14.000Z",
"createdAt": "2024-10-03T21:15:56.000Z",
"lastIncidentId": null,
"tags": ["production", "marketing"]
}
],
"count": 1,
"limit": 25
}Field reference
| Field | Type | Description |
|---|---|---|
| data | Monitor[] | Array of monitor objects, ordered by creation time. |
| count | number | Number of items returned in the current response. |
| limit | number | The effective limit applied to this request. |
Monitor object
| Property | Type | Description |
|---|---|---|
| id | string | Unique identifier for the monitor. |
| name | string | Human-friendly monitor name. |
| url | string | Endpoint the monitor probes. |
| method | string | HTTP method used for the probe (defaults to GET when unset). |
| status | string | Latest monitor status (online, offline, unknown). |
| intervalSeconds | number | null | Configured heartbeat interval in seconds. Null when unspecified. |
| regions | string[] | Regions currently monitoring the target. |
| uptimePercent | number | null | Rolling uptime percentage when available. |
| latencyThresholdMs | number | null | Latency threshold (in milliseconds) for alerting. |
| latencyAlertsEnabled | boolean | Whether latency alerts are sent to channels for this monitor. |
| latencyAlertConsecutiveChecks | number | Consecutive high-latency checks required before alerting. |
| latencyAlertRecoveryChecks | number | Consecutive normal checks required before recovery. |
| onlineSince | string | null | Timestamp of the last transition back to healthy state. |
| lastCheckedAt | string | null | Timestamp of the most recent heartbeat. |
| createdAt | string | null | When the monitor was created. |
| lastIncidentId | string | null | Most recent incident identifier, if any. |
| tags | string[] | User-defined tags associated with the monitor. |
Examples
Fetch offline monitors only
curl "https://xuptimemonitor.com/api/v1/monitors?status=offline" \
-H "Authorization: Bearer <API_KEY>"Limit to the first 10 records
curl "https://xuptimemonitor.com/api/v1/monitors?limit=10" \
-H "X-API-Key: <API_KEY>"