Schedule Types
A schedule fires either once or on a recurring cadence. Therepeat field controls which:
one_time— fires once at a specifiedinvocation_time. After firing, the schedule transitions to thecompletedstate.recurring_cron— fires repeatedly based on acron_expression. Staysactiveuntil deleted, or untilend_dateis reached (if provided).
Cron Expressions
Recurring schedules use the AWS EventBridge Scheduler six-field cron format:cron_expression. A few common examples:
| Expression | Meaning |
|---|---|
0 9 * * ? * | Every day at 09:00 |
0 * * * ? * | Every hour at minute 0 |
0 9 ? * MON-FRI * | Every weekday at 09:00 |
*/15 * * * ? * | Every 15 minutes |
day-of-month or day-of-week must be ? (AWS cron does not allow both to be specified).
Timezones
Every schedule requires an IANA timezone string in thetimezone field (for example, America/New_York, Europe/London, or UTC). Both cron expressions and one-time invocation times are evaluated in this timezone.
Date Windowing
Schedules accept optionalstart_date and end_date fields (ISO 8601, UTC) that constrain when the schedule is active:
- Before
start_date, the schedule does not fire. - After
end_date, the schedule does not fire. A recurring schedule automatically transitions to thecompletedstate onceend_dateis passed.
Invocation Targets
A schedule invokes a target each time it fires. The currently supported target type isworkflow, which creates a workflow execution on a target blob revision.
The invocation_target object has the following fields:
| Field | Type | Required | Description |
|---|---|---|---|
org_id | string | Yes | Organization that owns the target workflow blob. |
blob_id | string | Yes | Target workflow blob id. |
revision_id | string | Yes | Target workflow blob revision id. |
session_id | string | Yes | Session id under which the workflow execution will be created. |
workflow_alias | string | Yes | Alias of the workflow definition to execute. |
input_data | array | Yes | Input data array passed to the workflow execution. |
description | string | No | Optional execution description (max 256 characters). |
Authorization
Schedules execute on behalf of the auth entity (user or organization) that created them. At the time of invocation, that auth entity must still have access to the target blob. If access has been revoked, the execution fails withaccess_error and no workflow is started.
Execution History
Every time a schedule fires it creates an execution record. Executions are fire-and-forget: the execution result captures the immediate outcome of creating the workflow execution, not the final outcome of the workflow itself. Each execution has astatus field with one of three values:
| Status | Meaning |
|---|---|
success | The target workflow execution was created successfully. |
access_error | The schedule’s auth entity no longer has access to the target. |
invocation_error | The target could not be invoked for another reason. |
Schedule States
A schedule is always in one of two states, stored in itsstate field:
active— the schedule can be updated or deleted. One-time schedules remain active until they fire; recurring schedules remain active indefinitely or until theirend_dateis reached.completed— the schedule is read-only. Completed schedules cannot be updated but can still be deleted.

