Workflows
Run a workflow on a schedule
Run a published workflow every hour, every day, on weekdays, every Monday or on your own cron expression, in the time zone you pick, with fixed input. What a scheduled run costs and how to stop one.
Guide3 min readUpdated 31 October 2026
A schedule starts a workflow on its own, on a timetable: a digest every morning, a report every Monday. It always runs the published version, with the input you set, and each run shows in Past runs marked Schedule.
Before you start
- A published workflow. The schedule can't be switched on while the workflow is a draft.
- An API key on your account: scheduled runs use it. If you've never opened the API keys page, open it once to create the key.
Steps
- 1
Open the schedule
In the designer, click an empty part of the canvas (or select the Start block). Schedule is in the settings panel, just above Call this workflow.
- 2
Switch it on
Use the switch beside Schedule.
- 3
Choose when
Under Repeat, pick Every hour (on the hour), Every day, Weekdays, Every Monday or Custom (cron). Every day, Weekdays and Every Monday take a time under At.
- 4
Or write a cron expression
With Custom (cron), type five parts in Cron expression: minute, hour, day of the month, month and day of the week.
0 9 * * 1-5is 9:00 on weekdays, and30 7 * * 1,4is 7:30 on Mondays and Thursdays. - 5
Pick the time zone
Choose the Timezone the times are in. Daylight saving is handled for you.
- 6
Set the input
Input (JSON) is what each run starts with, read as
{{input.<name>}}. It must fill the Start block's required inputs. If the Start block has no inputs, the whole object is{{input}}. - 7
Check the next runs and save
Next runs shows the next 3 times in the schedule's time zone. Choose Save schedule (or Save changes).
You're done when
The schedule reads, for example, "Every day at 09:00" with the coming times under Next runs, and after the first one Past runs lists a run marked Schedule.
How scheduled runs work
- A schedule runs at most once every 5 minutes. Every minute, and every 2 to 4 minutes, are refused.
- Schedules are checked every minute, so a run starts within a minute or so of its time.
- A scheduled run is a live run of the published version. It counts towards your account's 30 runs a minute and 5 at once, and costs what any live run costs: 1 credit when it starts if it has an HTTP, Webhook, Slack, Email or App action block, plus its Agent, Classify and Extract blocks as they run.
- If a run can't start (no credits, too many runs at once, input that doesn't fit the Start block), it's recorded in Past runs as a failed run with the reason, and the schedule carries on.
- A time missed by more than an hour is skipped, not caught up. Failed runs aren't retried.
- Publishing a change applies from the next run. While the workflow is back to draft, scheduled runs are skipped.
Pause or stop a schedule
Switch it off and save. The repeat, time zone and input are kept, so switching it back on picks up where you left off.
Know when a scheduled run fails
Create an alert on Workflow failures for the workflow, and you'll get an email, a Slack message or a webhook when runs fail. See Create an alert. The Daily digest, Daily digest to Slack and Weekly report email templates come with a schedule filled in but switched off.
If something goes wrong
"Schedules run at most every 5 minutes."
Use a slower timetable, such as */5 * * * * (every 5 minutes) or an hourly or daily one.
The switch is greyed out
The workflow is a draft. Publish it first: schedules run the published version.
"Fill in … for scheduled runs."
A required Start input is missing from Input (JSON). Add it, for example {"date": "today"}.
A scheduled run failed with a credits error
Your balance ran out. Buy credits; the next run starts as usual. See Running low or out of credits.
Still stuck?
Email us with what you tried and any request id. A person replies.