Skip to main content

Temporal CLI schedule command reference

Schedule commands allow the user to create, use, and update SchedulesLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more. Schedules control when certain Actions for a Workflow ExecutionLink preview iconWhat is a Workflow Execution?

A Temporal Workflow Execution is a durable, scalable, reliable, and reactive function execution. It is the main unit of execution of a Temporal Application.

Learn more are performed, making it a useful tool for automation.

To run a Schedule command, run temporal schedule [command] [command options].

backfill

The temporal schedule backfill command executes Actions ahead of their specified time range. Backfilling can be used to fill in Workflow RunsLink preview iconWhat is a Run Id?

A Run Id is a globally unique, platform-level identifier for a Workflow Execution.

Learn more from a time period when the Schedule was paused, or from before the Schedule was created.

Schedule backfills require a valid Schedule ID, along with the time in which to run the Schedule and a change to the overlap policy.

temporal schedule backfill --sid 'your-schedule-id' \
--overlap-policy 'BufferAll' \
--start-time '2022-05-0101T00:00:00Z' \
--end-time '2022-05-31T23:59:59Z'

Use the options provided below to change this command's behavior.

create

The temporal schedule create command creates a new ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more. Newly created Schedules return a Schedule ID to be used in other Schedule commands.

Schedules need to follow a format like the example shown here:

temporal schedule create \
--sid 'your-schedule-id' \
--wid 'your-workflow-id' \
--tq 'your-task-queue' \
--type 'YourWorkflowType'

Any combination of --cal, --interval, and --cron is supported. Actions will be executed at any time specified in the Schedule.

Use the options provided below to change the command's behavior.

delete

The temporal schedule delete command deletes a ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more. Deleting a Schedule does not affect any WorkflowsLink preview iconWhat is a Workflow?

In day-to-day conversations, the term "Workflow" frequently denotes either a Workflow Type, a Workflow Definition, or a Workflow Execution.

Learn more started by the Schedule.

Workflow ExecutionsLink preview iconWhat is a Workflow Execution?

A Temporal Workflow Execution is a durable, scalable, reliable, and reactive function execution. It is the main unit of execution of a Temporal Application.

Learn more started by Schedules can be cancelled or terminated like other Workflow Executions. However, Workflow Executions started by a Schedule can be identified by their Search AttributesLink preview iconWhat is a Search Attribute?

A Search Attribute is an indexed name used in List Filters to filter a list of Workflow Executions that have the Search Attribute in their metadata.

Learn more, making them targetable by batch command for termination.

temporal schedule delete --sid 'your-schedule-id' [command options]

Use the options below to change the behavior of this command.

describe

The temporal schedule describe command shows the current ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more configuration. This command also provides information about past, current, and future Workflow RunsLink preview iconWhat is a Run Id?

A Run Id is a globally unique, platform-level identifier for a Workflow Execution.

Learn more.

temporal schedule describe --sid 'your-schedule-id' [command options]

Use the options below to change this command's output.

list

The temporal schedule list command lists all ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more configurations. Listing Schedules in Standard VisibilityLink preview iconWhat is Standard Visibility?

Standard Visibility, within the Temporal Platform, is the subsystem and APIs that list Workflow Executions by a predefined set of filters.

Learn more will only provide Schedule IDs.

temporal schedule list

Use the options below to change the behavior of this command.

toggle

The temporal schedule toggle command can pause and unpause a ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more.

Toggling a Schedule requires a reason to be entered on the command line. Use --reason to note the issue leading to the pause or unpause.

Schedule toggles are passed in this format: temporal schedule toggle --sid 'your-schedule-id' --pause --reason "paused because the database is down" temporal schedule toggle --sid 'your-schedule-id' --unpause --reason "the database is back up"

Use the options provided below to change this command's behavior.

trigger

The temporal schedule trigger command triggers an immediate action with a given ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more. By default, this action is subject to the Overlap Policy of the Schedule.

Schedule triggers are passed in this format: temporal schedule trigger can be used to start a Workflow Run immediately. temporal schedule trigger --sid 'your-schedule-id'

The Overlap Policy of the Schedule can be overridden as well. temporal schedule trigger --sid 'your-schedule-id' --overlap-policy 'AllowAll'

Use the options provided below to change this command's behavior.

update

The temporal schedule update command updates an existing ScheduleLink preview iconWhat is a Schedule

A Schedule enables the scheduling of Workflow Executions.

Learn more.

Like temporal schedule create, updated Schedules need to follow a certain format:

temporal schedule update            \
--sid 'your-schedule-id' \
--wid 'your-workflow-id' \
--tq 'your-task-queue' \
--type 'YourWorkflowType'

Updating a Schedule takes the given options and replaces the entire configuration of the Schedule with what's provided. If you only change one value of the Schedule, be sure to provide the other unchanged fields to prevent them from being overwritten.

Use the options provided below to change the command's behavior.