Core concepts
Cron Jobs
Cron Jobs
Recurring schedules using cron expressions.
A cron job is a recurring task that fires on a fixed schedule expressed as a standard cron expression. Unlike one-off tasks, cron jobs keep running until paused or deleted.
Creating a cron job
POST /api/v1/scheduler/cronjobs
{
"name": "daily-digest",
"url": "https://my-service.com/hooks/digest",
"method": "POST",
"payload": { "type": "daily" },
"cron": "0 8 * * *",
"timezone": "Europe/Madrid"
}Cron expression format
Underlayer uses standard 5-field cron expressions:
┌───── minute (0–59) │ ┌───── hour (0–23) │ │ ┌───── day of month (1–31) │ │ │ ┌───── month (1–12) │ │ │ │ ┌───── day of week (0–7, Sunday = 0 or 7) │ │ │ │ │ * * * * *
0 8 * * *: every day at 08:00*/15 * * * *: every 15 minutes0 0 1 * *: first day of every month at midnight0 9 * * 1-5: weekdays at 09:00
Timezone
The timezone field accepts any IANA timezone string (e.g. Europe/Madrid, America/New_York, UTC). If omitted, UTC is used. The next run time displayed in the dashboard accounts for the configured timezone.
Pausing and resuming
You can pause a cron job at any time. It stops firing but retains its configuration. Resume it later and it will continue on its regular schedule from the next occurrence. This is useful during deployments or maintenance windows.
Next run time
The dashboard shows the next scheduled run time for every active cron job. Each run creates an entry in the activity log, where you can inspect the request and response.
