Monitors
Heartbeat monitors
Watch cron jobs, backups and workers: your job calls a secret StatusTick URL, and StatusTick alerts when the call does not arrive in time.
A heartbeat monitor watches something that runs on a schedule: a backup, a cron job, a queue worker. Instead of StatusTick calling your service, your job calls StatusTick each time it runs.
How it works
- Create a heartbeat monitor and set how often the job runs. You can set a simple interval (for example every 24 hours) or a cron expression.
- Set a grace period: how late the job may be before it counts as missing.
- Copy the monitor's unique ping URL and call it from your job when it finishes.
If no call arrives within the interval plus the grace period, the monitor goes down and the normal incident and alert flow runs.
Calling the ping URL
A GET or a POST to the URL counts as a ping. For example, at the end of a shell script:
# Replace the URL with the ping URL from your monitor page
curl -fsS --retry 3 "$STATUSTICK_PING_URL" > /dev/null
The URL also has two extra endpoints:
| Endpoint | Use it to |
|---|---|
/start |
Mark the start of the job, so StatusTick can measure how long it runs. |
/fail |
Report a failure at once, without waiting for the grace period. |
For example:
curl -fsS "$STATUSTICK_PING_URL/start" > /dev/null
if ./backup.sh; then
curl -fsS "$STATUSTICK_PING_URL" > /dev/null
else
curl -fsS "$STATUSTICK_PING_URL/fail" > /dev/null
fi
Keep the URL secret
Anyone with the ping URL can report pings for the monitor. Store it like a password, for example in an environment variable. If it leaks, regenerate it from the monitor page; the old URL stops working.
Last updated 28 Sept 2026