Configuration
Configure the schedule, timezone, catch-up behavior, and retry policy for the Scheduled Trigger node.
Schedule Takes Effect on Save and Deploy
The Scheduled Trigger begins executing immediately after the workflow is deployed with a valid
cron_expression and enabled: true. The portal displays a human-readable translation of your cron expression and shows the next 5 scheduled fire times in your configured timezone before you save, letting you verify correctness.
Properties
| Property | Type | Required | Default | Description |
|---|---|---|---|---|
cron_expression |
String | Required | None | Standard cron expression defining when the workflow fires. Supports 5-field (minute-level) and 6-field (second-level) syntax. Special strings @hourly, @daily, @weekly, @monthly, and @yearly are also accepted. See the Cron Syntax section below for the full field reference. |
timezone |
IANA Timezone String | Required | UTC |
The timezone in which the cron expression is interpreted. Must be a valid IANA timezone identifier, e.g., America/New_York, Europe/London, Asia/Kolkata, Australia/Sydney. Cron times are evaluated in this local timezone, including DST transitions. |
enabled |
Boolean | Optional | true |
Master on/off switch for the schedule. Set to false to pause the workflow without deleting it. The workflow can still be triggered manually while disabled. Useful for holiday pauses, maintenance windows, or season-specific processes. |
catch_up |
Boolean | Optional | false |
When true, if the platform was unavailable during scheduled fire times, BizFirstAI will execute all missed runs in order once it recovers. When false, missed runs are simply skipped. Enable for critical financial or compliance workflows where every run must occur. Disable for event-driven tasks where a missed run is irrelevant (e.g., a real-time price update). |
max_retries |
Integer | Optional | 0 |
Number of times to automatically retry a failed workflow execution before marking it as failed. Set to 0 to disable retries (fail immediately). Maximum value is 10. Retries use an exponential backoff starting at 60 seconds. |
retry_backoff_seconds |
Integer | Optional | 60 |
Base delay in seconds between retry attempts. Actual delay is calculated as retry_backoff_seconds * 2^(attempt_number - 1), so with a 60-second base: attempt 1 waits 60s, attempt 2 waits 120s, attempt 3 waits 240s, and so on. |
execution_timeout_seconds |
Integer | Optional | 3600 (1 hour) |
Maximum wall-clock time in seconds that a single scheduled workflow execution is allowed to run before it is forcibly terminated. Useful for preventing runaway jobs from blocking the scheduler queue. Maximum value: 86400 (24 hours). |
overlap_policy |
Enum | Optional | skip |
Behavior when a new scheduled execution fires while the previous one is still running. skip: the new execution is skipped. queue: the new execution waits in a queue. kill_and_run: the running execution is terminated and the new one starts immediately. |
Cron Expression Syntax
BizFirstAI uses standard POSIX cron syntax with an optional seconds field. The 5-field format is:
┌───────── minute (0–59)
│ ┌───────── hour (0–23)
│ │ ┌───────── day of month (1–31)
│ │ │ ┌───────── month (1–12 or JAN–DEC)
│ │ │ │ ┌───────── day of week (0–7, where 0 and 7 are Sunday, or SUN–SAT)
│ │ │ │ │
* * * * *
Common Cron Expression Examples
| Expression | Meaning | Use Case |
|---|---|---|
0 6 * * 1-5 | Every weekday at 6:00 AM | Daily payroll pre-run, morning data refresh |
0 0 1 * * | 1st of every month at midnight | Monthly invoice generation, billing cycle start |
0 2 * * * | Every day at 2:00 AM | Nightly data synchronization, database backup |
0 7 * * 1 | Every Monday at 7:00 AM | Weekly performance report email |
30 23 * * 1-5 | Weekdays at 11:30 PM | End-of-day financial reconciliation |
0 0 1 1 * | January 1st at midnight | Annual report generation, year-end rollover |
*/15 * * * * | Every 15 minutes | Near-real-time status polling, inventory sync |
0 9,17 * * 1-5 | Weekdays at 9 AM and 5 PM | Twice-daily data export or report distribution |
Expression Support
Scheduled Trigger properties are evaluated at deployment time, not at runtime. None of the configuration properties support BizFirst expressions — they must all be static values. The scheduled fire times themselves are deterministic and computed from the cron expression and timezone at deployment.
Daylight Saving Time Behavior
When a scheduled time falls on a DST transition hour (e.g., 2:00 AM when clocks spring forward), BizFirstAI handles the ambiguity by skipping the missing hour or firing once during a repeated hour, depending on the transition direction. Review your schedule around March and November if you use timezones that observe US DST, or March and October for EU timezones.
Use catch_up for Compliance-Critical Workflows
For financial workflows (payroll, invoicing, reconciliation), always enable
catch_up: true and set max_retries to at least 3. This ensures no run is permanently missed due to platform maintenance, and transient failures (e.g., an external API being temporarily down) are retried automatically.