Skip to main content

Monitors API

Create, read, update, and delete monitors. Query stats, uptime history, response times, and heartbeat metrics.

Base URL: https://app.kamustatus.com/api

List Monitors

curl https://app.kamustatus.com/api/monitors \
-H "x-api-key: km_your_api_key"

Get Monitor

curl https://app.kamustatus.com/api/monitors/:monitorId \
-H "x-api-key: km_your_api_key"

Create Monitor

curl -X POST https://app.kamustatus.com/api/monitors \
-H "x-api-key: km_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "My API",
"type": "http",
"url": "https://api.example.com/health",
"method": "GET",
"expectedStatus": 200,
"interval": 60
}'

See monitor types for type-specific fields.

Update Monitor

curl -X PATCH https://app.kamustatus.com/api/monitors/:monitorId \
-H "x-api-key: km_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"interval": 30
}'

Delete Monitor

curl -X DELETE https://app.kamustatus.com/api/monitors/:monitorId \
-H "x-api-key: km_your_api_key"

Monitor Stats

Get current status and summary statistics for a monitor.

curl https://app.kamustatus.com/api/monitors/:monitorId/stats \
-H "x-api-key: km_your_api_key"

Response:

{
"status": "up",
"uptime24h": 99.98,
"uptime7d": 99.95,
"uptime30d": 99.92,
"avgResponseTime": 245,
"lastCheckedAt": "2025-06-01T12:00:00Z"
}

Daily Uptime

Get daily uptime percentages over a date range.

curl "https://app.kamustatus.com/api/monitors/:monitorId/daily-uptime?from=2025-05-01&to=2025-05-31" \
-H "x-api-key: km_your_api_key"

Response:

[
{ "date": "2025-05-01", "uptime": 100.0 },
{ "date": "2025-05-02", "uptime": 99.95 },
{ "date": "2025-05-03", "uptime": 100.0 }
]

Response Times

Get response time data points for a monitor.

curl "https://app.kamustatus.com/api/monitors/:monitorId/response-times?from=2025-05-01&to=2025-05-31" \
-H "x-api-key: km_your_api_key"

Response:

[
{ "timestamp": "2025-05-01T00:00:00Z", "responseTime": 230, "region": "eu-west" },
{ "timestamp": "2025-05-01T00:01:00Z", "responseTime": 215, "region": "us-east" }
]

Heartbeat Metrics

For heartbeat monitors, retrieve the custom metrics sent with pings.

curl "https://app.kamustatus.com/api/monitors/:monitorId/heartbeat-metrics?from=2025-05-01&to=2025-05-31" \
-H "x-api-key: km_your_api_key"

Response:

[
{
"timestamp": "2025-05-01T02:00:00Z",
"metrics": {
"duration_ms": 1234,
"records_processed": 500
}
}
]

See Heartbeat Monitor for details on sending metrics.