Scheduler System
Cron-based task scheduler for recurring workflows, background jobs, and time-triggered automations.
How the Scheduler Works
The Scheduler is a service that evaluates cron expressions and creates workflow tasks at specified intervals. It runs as part of the backend process and uses the same task queue as manual executions.
Cron Expressions
Define schedules using standard cron syntax (minute, hour, day, month, weekday).
Recurring Execution
Workflows are automatically queued and executed based on the schedule.
Timezone Support
All schedules respect the configured timezone for accurate triggering.
Creating a Scheduled Workflow
Attach a cron schedule to any workflow definition. The scheduler will automatically create execution instances at the specified times.
{
"name": "Daily Report Generator",
"workflowId": "wf_123",
"cron": "0 9 * * *",
"timezone": "America/New_York",
"enabled": true,
"taskInput": {}
}Schedule API
/api/schedulesCreate a new schedule. Requires name, workflowId, and cron.
/api/schedulesList all schedules for the authenticated user.
/api/schedules/:idGet schedule details including next execution time.
/api/schedules/:idUpdate a schedule (cron, timezone, enabled, etc.).
/api/schedules/:idDelete a schedule.
Notes
- • The scheduler validates that the linked workflow has steps before creating a schedule.
- • Ownership is enforced: only the workflow owner can create or modify schedules.
- • Disabled schedules are skipped by the scheduler loop.