WorkflowsBuild

Conditions

Make decisions and branch your workflow based on data

Conditions let your workflow make decisions. Instead of always doing the same thing, conditions check values and route to different paths.

Condition Types

ConditionWhat it does
If/ElseTwo paths: one if true, one if false
SwitchMultiple paths based on a value
FilterContinue only if criteria are met

If/Else

The most common condition. Compares a value using an operator and routes to one of two paths.

Configuring If/Else

In the workflow editor, configure the condition using the form:

  1. Value — The data to check (e.g., {{steps.extract.amount}})
  2. Operator — How to compare:
    • equals / not equals
    • greater than / less than
    • greater than or equal / less than or equal
    • contains / not contains
    • starts with / ends with
    • is empty / is not empty
  3. Operand — The value to compare against (e.g., 1000)

Example: To check if an amount exceeds 5000:

  • Value: {{steps.extract.amount}}
  • Operator: greater than
  • Operand: 5000

Switch

When you have more than two options, use Switch instead of nested If/Else.

Good for routing based on categories, types, or status values:

trigger.department

Then define cases: sales one path, support another, default fallback.

Filter

Filters stop the workflow if the condition is false. Useful for:

  • Ignoring duplicate events
  • Skipping irrelevant data
  • Early exit conditions
!steps.check_duplicate.is_duplicate
trigger.amount > 0

Writing Condition Expressions

Conditions use the same expression syntax as other fields. See Expressions for the full reference.

Common patterns:

PatternExpression
Threshold checksteps.total > 1000
Equalitytrigger.type == "invoice"
Not emptytrigger.customer_id != ""
In listtrigger.category in ["A", "B", "C"]
Has propertyhas(trigger.rush_order)
Multiple conditionsa > 10 && b < 5

Merging Paths

Branches can merge back together. Just connect both paths to the same downstream step.

This is common when you want different processing but the same final notification.

On this page