Prerequisites
In this article you'll learn:
The Linked Flows node allows you to create conditional workflows by routing data to different flows based on specific conditions. This enables you to build complex, branching data pipelines where different paths are taken depending on the data being processed.
The Linked Flows node evaluates conditions against your input data and, when a condition matches, triggers another flow with the current data. This allows you to:
Each linked flow has a condition that determines when it should be triggered. Conditions compare two values using an operator.
For each linked flow, you'll configure:
==
(equals) - Values are exactly equal!=
(not equals) - Values are different<
(less than) - Value A is less than Value B<=
(less than or equal) - Value A is less than or equal to Value B>
(greater than) - Value A is greater than Value B>=
(greater than or equal) - Value A is greater than or equal to Value Bin
- Value A is contained within Value Bnot_in
- Value A is not contained within Value BYou can use placeholders to reference data from previous nodes:
$data.status
- References the "status" field from input data$data.amount
- References the "amount" field$trigger.data.user_type
- References data from the triggerRoute based on customer status:
- Value A: $data.customer_status
- Operator: ==
- Value B: premium
- Target Flow: "Premium Customer Processing"
Route based on order amount:
- Value A: $data.order_total
- Operator: >
- Value B: 1000
- Target Flow: "High Value Order Processing"
Route based on region:
- Value A: $data.region
- Operator: in
- Value B: US,CA,MX
- Target Flow: "North America Processing"
Ideal for mutually exclusive routing - at most one path will be taken. The Linked Flows node runs in the if/else mode. Only the first matching condition is executed. Once a condition matches, no further conditions are evaluated. It works like a traditional if/else statement in programming.
To test your Linked Flows node, you need input data that contains the fields referenced in your conditions.
The Input data is displayed as individual editable fields in the Preview box. When you have a previous node in your flow, the output data from that node automatically appears as the test input data for the current node. You can edit each field value individually to test different scenarios.
If this is the first node in your flow (connected directly to a trigger), the test input data will be populated with the data captured from your trigger.
Example test data:
{
"customer_id": 12345,
"customer_status": "premium",
"order_total": 1500,
"region": "US"
}
When a condition matches, the Linked Flows node triggers and runs the target flow.
The input data of the current node is passed to the linked flow as input data. The linked flow runs independently and can have its own trigger, nodes, and outputs.
In the preview panel you'll see which flow will be triggered based on the test input data and conditions you've set up.
Route to different flows based on customer attributes.
Handle data differently based on geographic region:
Use clear, simple conditions that are easy to understand and maintain. Complex nested logic can be hard to debug.
Give your linked flows descriptive names that clearly indicate their purpose, like "High Value Order Processing" instead of "Flow 2".
Test all possible condition paths to ensure your routing logic works correctly with different types of input data.
Think about what happens when no conditions match. You might want to add a catch-all condition or a default flow.