Call another flow
Let one flow call another like a function: give the called flow its inputs, and call it from a Subflow node with your values.
Steps
Give the called flow its inputs
In the flow to call, open the flow menu next to its name and choose Settings…. On Inputs, click Add input for each value a calling flow passes in, with a Name, a Type and, if you like, a Default. Click Save.

Read an input inside this flow as {{ params.name }}. Every flow can be called, with or without inputs.
Add a Subflow node
In the calling flow, type Subflow in Add a step, pick it, and open it:
| Setting | What to set |
|---|---|
| Flow | The flow to call. Every flow but this one is offered, except those that would loop back. |
| When it runs | Wait for its result passes its result to the next node. Start it and continue passes on its run id and lets it run on its own. |
| In editor runs, call | Its test version, or Its draft to try both flows before you publish. Runs on Test and Prod always call its published version. |
| Parameters | A value per input, typed or from Input. An empty row uses the default. |

How it works
- The result is the Result a Return node in the called flow hands back; without a Return, the output of the last node that ran. See Return.
- A run on Test calls the called flow's version on Test; a run on Prod, its version on Prod.
- Run by, on the called flow's Inputs, lists every flow that calls it.
- A Subflow node has no Test step: it would run the called flow's writes for real. Test the called flow itself.
- No chain of calls may loop back to the calling flow, and calls nest at most three deep.
If it did not work
- The Subflow node says the called flow is not on Test yet. Publish it, and put it on Prod for runs on Prod. Open and the flow's name, under Flow, take you there.
- The flow you want is not under Flow. It calls this flow, directly or through another one, so it would loop back.
- An input reads null. It has no value in the Subflow node and no default. Give it one in either place.

