Lesson 4 of 10 · 5 min
Map data between steps
Pass data from one node to the next by dragging fields into parameters and reading the expressions that creates.
Video walkthrough coming soon
Autopilot
Items flow between nodes
Every node outputs a list of items. Each item is a small record, like a creative with its title, kind, and link. The next node runs once for each item it receives.
So if Get library creatives returns five creatives, a Write social caption node after it writes five captions. You do not need a loop for that.
Drag a field to map it
Open a node and look at the Input pane. It shows the fields that came in. Drag a field onto a parameter in the middle pane.
Pinnora writes an expression for you, such as:
{{ $json.title }}
That means: use the title field from the item this node is working on. Below the parameter, a preview shows the result for the first item, so you can check it before you run anything.
Read from an earlier node
Sometimes you need data from a node further back, not the one right before. Drag the field from that node's section in the Input pane. The expression names the node:
{{ $('Get library creatives').item.json.title }}
If you rename a node later, Pinnora updates the expressions that point at it.
Mix text and fields
A parameter can hold plain text with fields inside it. The New creative ready to Slack template uses a message like this:
New {{ $json.kind }} is ready: {{ $json.title }}
Each run fills in the real kind and title.
Fixed or expression
Every parameter has two modes. Fixed is a value you type once. Expression is a value worked out from the data. Typing an equals sign in an empty field switches it to an expression. For anything complex, open the expression editor to see the full field list and a live result.
When the Input pane is empty
If the Input pane says the parent node has not run yet, there is no data to drag. Run the earlier nodes first with Execute step, or pin sample data on them. Both are covered in the next lesson.