Inverse of every other monitor. Your job pings us on schedule; we open an incident when we don't hear from it within the grace window.
On creation, the monitor is assigned a public, opaque URL. Your cron job, scheduled task, or backup script pings that URL on its normal schedule (no Bearer key required). If we go longer than your grace window without a ping, the check flips to DOWN and an incident opens.
Set the grace period longer than the slowest expected run. A nightly backup that finishes in 20-50 minutes wants a 90-minute grace window — long enough to absorb a slow run, short enough that a real failure pages you the same morning.
# 1. Create the monitor — note the heartbeatToken in the response
curl https://monitorah.com/api/v1/monitors \
-X POST \
-H "Authorization: Bearer mon_live_…" \
-H "Content-Type: application/json" \
-d '{"name":"Nightly backup","type":"HEARTBEAT","target":"nightly-backup","config":{"graceSeconds":5400}}'
# 2. From your job, hit the heartbeat URL on every successful run
curl https://monitorah.com/api/v1/heartbeat/hb_abc123…