List Monitoring Checks
GET /api/v1/monitoring
Query Parameters
| Parameter | Type | Description |
|---|---|---|
status |
string | Filter by status: active, disabled |
check_type |
string | Filter by type: http, tcp, ping, dns |
limit |
integer | Results per page (default: 25, max: 100) |
offset |
integer | Number of results to skip |
Example
curl https://app.alert24.io/api/v1/monitoring \
-H "Authorization: Bearer ak_live_YOUR_KEY"
Response
{
"data": [
{
"id": "chk-123",
"name": "Homepage",
"check_type": "http",
"target_url": "https://example.com",
"method": "GET",
"status": "active",
"current_status": "up",
"check_interval_seconds": 300,
"timeout_seconds": 30,
"expected_status_code": 200,
"follow_redirects": true,
"ssl_check_enabled": true,
"failure_threshold": 3,
"success_threshold": 1,
"consecutive_failures": 0,
"consecutive_successes": 15,
"linked_service_id": "svc-456",
"last_check_at": "2026-03-19T14:55:00.000Z",
"last_response_time": 142,
"next_check_time": "2026-03-19T15:00:00.000Z",
"created_at": "2026-01-10T08:00:00.000Z",
"updated_at": "2026-03-19T14:55:00.000Z"
}
],
"meta": { "total": 12, "limit": 25, "offset": 0, "has_more": false }
}
Get Monitoring Check
GET /api/v1/monitoring/:id
Create Monitoring Check
POST /api/v1/monitoring
Scope required: write
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | Check name |
target_url |
string | Yes | URL or host to monitor |
description |
string | No | Description |
check_type |
string | No | http (default), tcp, ping, dns |
method |
string | No | HTTP method (default: GET) |
headers |
object | No | Custom HTTP headers |
expected_status_code |
integer | No | Expected HTTP status (default: 200) |
check_interval_seconds |
integer | No | Check frequency in seconds (default: 600) |
timeout_seconds |
integer | No | Request timeout (default: 30) |
follow_redirects |
boolean | No | Follow HTTP redirects (default: true) |
keyword_match |
string | No | Search response body for this string |
keyword_match_type |
string | No | contains or not_contains |
ssl_check_enabled |
boolean | No | Monitor SSL certificate (default: false) |
failure_threshold |
integer | No | Failures before alerting (default: 3) |
success_threshold |
integer | No | Successes before recovery (default: 1) |
linked_service_id |
string | No | Auto-update this service's status |
auto_create_incidents |
boolean | No | Create incidents on failure (default: false) |
auto_resolve_incidents |
boolean | No | Auto-resolve on recovery (default: false) |
Example
curl https://app.alert24.io/api/v1/monitoring \
-X POST \
-H "Authorization: Bearer ak_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "API Health Check",
"target_url": "https://api.example.com/health",
"check_interval_seconds": 120,
"timeout_seconds": 10,
"expected_status_code": 200,
"ssl_check_enabled": true,
"auto_create_incidents": true,
"linked_service_id": "svc-api-gateway"
}'
Update Monitoring Check
PUT /api/v1/monitoring/:id
Scope required: write
Request Body
| Field | Type | Description |
|---|---|---|
name |
string | Updated name |
description |
string | Updated description |
target_url |
string | Updated URL |
method |
string | Updated HTTP method |
check_interval_seconds |
integer | Updated interval |
timeout_seconds |
integer | Updated timeout |
expected_status_code |
integer | Updated expected status |
status |
string | active or disabled |
headers |
object | Updated headers |
failure_threshold |
integer | Updated failure threshold |
linked_service_id |
string | Updated linked service |
Delete Monitoring Check
DELETE /api/v1/monitoring/:id
Scope required: write
curl https://app.alert24.io/api/v1/monitoring/chk-123 \
-X DELETE \
-H "Authorization: Bearer ak_live_YOUR_KEY"