Skip to content
cronitorex.com

POST /ping

Request

POST /ping
Authorization: Bearer <api_key>
Content-Type: application/json

Body fields

FieldTypeRequiredDescription
event_typestringyesping, stream_event, or custom
monitorstringyesMonitor name (slug, max 255 chars)
statusstringyes*Event status — see Event Types & States
durationfloatnoExecution time in seconds
exit_codeintnoProcess exit code
hoststringnoHostname that ran the job
messagestringnoFree-form message / log excerpt
timestampintnoUnix timestamp (defaults to now)

*For event_type: "ping" the field name is status. Allowed values: run, complete, fail, skip.

Example — job lifecycle

// Job started
{
"event_type": "ping",
"monitor": "db-backup",
"status": "run",
"host": "server-01"
}
// Job finished successfully
{
"event_type": "ping",
"monitor": "db-backup",
"status": "complete",
"duration": 47.3,
"exit_code": 0
}

Example — skip (maintenance window)

{
"event_type": "ping",
"monitor": "payment-service",
"status": "skip"
}

For quick shell one-liners without a JSON body, use GET /ping — it accepts the same status values and supports ?api_key= URL authentication.

Response

200 OK

{ "status": "success" }

400 Bad Request

{ "error": "required field missing: status" }

401 Unauthorized

{ "error": "unauthorized" }