Join
The other half of a fan-out. It gathers the messages an Array Iterator produced — or the results of parallel branches — back into one message carrying an array.
Type: join · Category: Transform · Ports: one input · one output


When to use it
- Recombining after an Array Iterator so a downstream step can act on the whole set
- Batching many small results into one API call or one insert
- Waiting for several independent branches to finish
Settings
| Setting | Key | Default | Purpose |
|---|---|---|---|
| Mode | mode | auto | auto pairs with an upstream Array Iterator. |
Example — recombining after a fan-out
SQL (select rows) → Array Iterator → Python (enrich) → Join → REST API (egress, one batch)
Out
{ "payload": [ { "id": 1, "enriched": true },
{ "id": 2, "enriched": true },
{ "id": 3, "enriched": true } ] }
Gotchas
autoneeds an Array Iterator to count from. When joining branches that were never split, configure the mode explicitly — there is nothing for it to infer.- A branch that ended early never arrives. A Python node returning
Nonebetween the split and the join leaves the join waiting for an item that will never come.