What you’ll learn
- How wait until some time (e.g. “tomorrow 2pm”) before running an action.
- How to use the
core.requireaction to check conditions. - How to retry a child workflow until a condition is met.
Wait until
Under the if-conditions tab of any action, you can configure await_until condition.
This condition takes a human-readable string (e.g. “tomorrow 2pm”) and waits until that time.
You can specify relative dates, for example:
tomorrow at 2pmin 2 days
2025-05-01 at 2pmMarch 21st 2025 at 10am
Under-the-hood, we use the
dateparser library to parse the human-readable string.
View dateparser docs here.
Require
The
core.require action checks if any or all of multiple conditions are met.
It takes three arguments:
conditions: A list of expressions that evaluate to booleans e.g.FN.length(ACTIONS.some_action.result.some_array) > 0raise_error: Iftrue, the workflow will fail if the conditions (all or any) are not met.require_all: Iftrue, all conditions must be met for the workflow to continue. Iffalse, only one condition needs to be met.

core.require action fails if the length of the some_array is greater than 0 and email is equal to “john@acme.com”.

Retry until
Child workflows return the full context of the workflow run (e.g. action inputs and outputs) by default.
This is not easy to work with when using
retry_until.Specify an output schema for the child workflow to return specific data from the workflow run.
Learn more about output schemas in the child workflows tutorial here.retry_until condition.
To make use of this condition, define a conditional expression on the same action’s result.
For example, the following execute child workflow action will retry until the child workflow returns an ack field with a value of true:
