Skip to main content
Any config field can read from an upstream node’s output using a reference wrapped in double curly braces:
{{node_id.path.to.field}}
The first segment is the upstream node’s ID; the rest navigates into that node’s output.

Reference patterns

ReferenceResolves to
{{node-1}}The node’s entire output
{{node-1.message}}The message field of the output
{{node-1.user.name}}A nested field
{{node-1.items[0].title}}The title of the first array item
{{node-1.items[].title}}A list of every item’s title
When a field contains exactly one reference, the value keeps its original type (object, list, number). When a reference sits inside other text, like Hello {{node-1.user.name}}!, it is converted to a string.

Dragging references

The easiest way to build a reference is to not type it at all:
1

Produce some output

Run the upstream node once (or give it a mocked output).
2

Open its Output panel

Select the upstream node and click Output (Y) in the config panel.
3

Drag a value

Grab any value in the output and drop it onto a config field. The correct reference is inserted as a chip.
Dragging an output field into a config field
You can also type {{ in any text field to get autocomplete suggestions built from the connected nodes’ actual output.

Common mistake: .output. in the path

References navigate the node’s output directly, so do not insert an output segment:
{{node-1.message}}          ✓ correct
{{node-1.output.message}}   ✗ looks for a literal "output" key and resolves to nothing
Dragged and autocompleted references always use the correct form.
Workflow variables are available under the reserved vars ID, e.g. {{vars.api_base}}. See Variables and state.