Wait block
Configure the Wait block to pause a workflow run for a set duration, with the units it accepts and how the pause appears in the run.
The Wait block (type: "wait") pauses the run for a fixed length of time, then continues with the next step. For the plain-language guide, see Wait before continuing.
When to use it
- Give a connected system time to finish processing, for example before reading back an invoice you just created.
- Space out calls to a system that limits how many requests you can send.
To pause until a person decides, use the Approval block. To run at a set time, use a Schedule trigger.
Configuration
Field (config key) | Editor label | Type | Required | Meaning |
|---|---|---|---|---|
duration | Duration | number | Yes | How long to wait, in unit. Must be a JSON number: any other value, including numeric text such as "5", waits 0. |
unit | Unit | string | Yes | seconds (default), minutes, hours or days. The executor also accepts ms and milliseconds. An unknown unit is read as seconds. |
How the pause runs
The step waits inside the running run with a timer; it is not a scheduled resume. The time counts toward the run's execution limit: one hour by default, configurable with settings.maxDurationSeconds. Checkpointed approval waits do not consume that budget. Keep waits short, and use a Schedule trigger or an Approval step for pauses measured in hours or days.
Output
| Field | Type | Meaning |
|---|---|---|
completedAt | string | ISO timestamp when the wait ended. |
durationMs | number | The wait in milliseconds. |
waited | number | Same as durationMs. Kept for older workflows; read durationMs instead. |
Example
This workflow creates a Stripe invoice, waits 30 seconds, then reads it back.
{
"name": "Create and confirm invoice",
"trigger": { "type": "api" },
"steps": [
{
"id": "create_invoice",
"type": "action",
"name": "Create invoice",
"action": "stripe.createInvoice",
"config": { "customerId": "{{input.customerId}}" }
},
{
"id": "pause",
"type": "wait",
"name": "Wait 30 seconds",
"config": { "duration": 30, "unit": "seconds" }
},
{
"id": "read_back",
"type": "action",
"name": "Read the invoice",
"action": "stripe.getInvoice",
"config": { "invoiceId": "{{steps.create_invoice.id}}" }
}
]
}Errors and limits
- A
durationthat is missing or not a number does not fail the step; it waits 0 and continues. Check the step'sdurationMsin the run if a pause seems to be skipped. - A wait that runs past the workflow's time limit stops the run.
Loopfour