Connecting Nodes

Wire data between apps in your flow.


Visual connections

Each node has ports:

  • Output ports on the right
  • Input ports on the left

Drag from an output to an input to connect.

code
1┌──────────┐          ┌──────────┐2│ Image Gen│          │ Upscale  │3│          │          │          │4│   image ●┼──────────┼─▶ image  │5└──────────┘          └──────────┘

Data mapping

Click a node to configure its inputs:

InputSource
image{{image_gen.output.image}}
scale2

Mapping syntax

PatternExampleMeaning
From flow input{{input.image}}User-provided input
From another node{{node_name.output.field}}Output from previous step
Static value2 or "text"Fixed value

Example

Image enhancement flow:

code
1Input (image)2    ↓3Upscale (image → {{input.image}}, scale → 2)4    ↓5Enhance (image → {{upscale.output.image}})6    ↓7Output (result → {{enhance.output.image}})

Gate branching

In the v2 editor, a gate node has one input handle and one output handle.

Wire the value to test into the gate's input. The gate's field must name that input key. Connect the steps that should run when the condition is true to the gate's output.

code
1Classifier ──▶ [gate: status equals approved] ──▶ Process

When the condition is false, the gate is marked failed, the steps that depend on it are marked blocked and do not run, and the flow run still completes. A gate does not change the data that passes through it.

→ Creating a Flow: Gate nodes
→ Flows API: Gate nodes


Selector nodes

A selector node has one input handle and one output handle. Wire an upstream array field into the input. At run time the selector picks one element (first, last, or index).

code
1List apps ──▶ [selector: first] ──▶ Process item

The selector's field must name the input key you connect. Connect the output handle to downstream steps.

→ Creating a Flow: Selector nodes
→ Flows API: Selector nodes


Merge synchronization

A merge node runs when all of its upstream nodes have completed. Use it after parallel branches that should converge:

code
1        ┌──▶ Step A ──┐2Input ──┤             ├──▶ [merge] ──▶ Final step3        └──▶ Step B ──┘

With graph actions, give each branch its own input key (for example branch_a, branch_b). The merge node's output is its inputs map. Downstream steps can read the whole map or one key.

→ Creating a Flow: Merge nodes
→ Flows API: Merge nodes


Constant values

A constant node has an output handle and no input handle. Use it when an input should receive a fixed value:

code
1[constant: 2] ───────────▶ Upscale (scale input)2Input (image) ───────────▶ Upscale (image input)

This is an alternative to typing a static value in the app's input mapping (for example scale → 2).

→ Creating a Flow: Constant nodes
→ Flows API: Constant nodes


Test connections

Run the flow after each new connection.

Catch issues early.


Next

→ Deploying as App

we use cookies

we use cookies to ensure you get the best experience on our website. for more information on how we use cookies, please see our cookie policy.

by clicking "accept", you agree to our use of cookies.
learn more.