Skip to content

Docs

Schedules and grace

Intervals, 5-field cron, timezones, and what the minute checker can and cannot see.

Intervals are stored in seconds and must be at least one minute, because the checker itself runs once a minute. Cron expressions are the standard five fields, interpreted in the timezone you pick. Grace is added after the next slot.

Example: cron `0 * * * *` in UTC with 5 minutes of grace. A ping at 10:02 sets the next deadline to 11:05. A ping that never comes is marked down on the first check at or after 11:05.

The checker route is /api/cron/check. Vercel Cron on a plan that allows `* * * * *` calls it every minute with Authorization: Bearer $CRON_SECRET. Hobby accounts are limited to a daily cron, which will not catch an agent that dies at breakfast until the next day. Use an external minutely caller if that is the plan you are on. Each invocation scans due monitors in a batch, so one minute tick covers the fleet.