MonitorsIcmp monitors
Create ICMP Monitor
Creates a new ICMP monitor.
POST /api/icmp-monitors
Authentication
Requires a valid session.
- Header:
Authorization: Bearer <token>
Request Body
{
"customerId": "6764e84f-f02a-43e6-a46d-cecaec556723",
"name": "Ping Gateway",
"hostname": "claas.sh",
"status": "active",
"checkInterval": 5,
"timeoutSeconds": 10,
"icmpConfig": {
"packetSize": 56,
"count": 4
}
}Fields
customerId(number | string, required)- Accepts the internal numeric customer ID or the customer
publicIdUUID.
- Accepts the internal numeric customer ID or the customer
name(string, required)hostname(string, required)- Must be a hostname or IP only (no protocol like
https://, no path like/ping).
- Must be a hostname or IP only (no protocol like
status(string, optional)- Allowed:
active,maintenance,disabled,paused,inactive - Note:
paused/inactiveare normalized todisabled.
- Allowed:
checkInterval(number, optional)timeoutSeconds(number, optional)icmpConfig(object, optional)- Stored as the monitor's
configJSON.
- Stored as the monitor's
icmpConfig (worker-supported keys)
packetSize(number)- Default:
56
- Default:
count(number)- Default:
3
- Default:
cURL
curl -X POST "https://YOUR_DOMAIN/api/icmp-monitors" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"customerId": "6764e84f-f02a-43e6-a46d-cecaec556723",
"name": "Ping Gateway",
"hostname": "claas.sh",
"status": "active",
"checkInterval": 5,
"timeoutSeconds": 10,
"icmpConfig": { "packetSize": 56, "count": 4 }
}'Response
{
"id": 123,
"organizationId": 1,
"customerId": 2,
"name": "Ping Gateway",
"hostname": "claas.sh",
"port": null,
"status": "active",
"checkInterval": 5,
"timeoutSeconds": 10,
"allowedCheckCountryCodes": null,
"notificationPhoneNumber": null,
"notificationEmail": null,
"lastCheckedAt": null,
"createdAt": "2026-02-26T12:00:00.000Z",
"updatedAt": "2026-02-26T12:00:00.000Z",
"config": {
"packetSize": 56,
"count": 4
},
"icmpConfig": {
"packetSize": 56,
"count": 4
}
}Errors
400 Invalid Customer identifier400Invalid hostname or invalid request body401Unauthorized403Forbidden (e.g.readonlyor global supporter)404Customer not found