Flows/Data Mapping

Data Mapping

Learn how to use data from one node in another. Data mapping is how you create dynamic, connected automations.

What is Data Mapping?

Data mapping lets you use output from one node as input for another. Instead of hardcoding values, you can reference data dynamically using templates.

#1 Trigger

email: "user@example.com"

#2 Send Email

to: {{#1.email}}

The email tool uses the email address from the trigger dynamically

Template Syntax

Node References with #
Use {{#N.field}} where N is the node sequence number

Each node on the canvas has a sequence number (shown as #1, #2, #3, etc.). Use this number to reference data from that node.

{{#1.fieldName}}

Example:

{{#1.name}}

Gets the "name" field from node #1 (trigger)

Example:

{{#2.files[0].name}}

Gets the first file's name from node #2

Accessing Nested Data
Use dot notation for nested objects

Most tool outputs are nested objects. Use dot notation to access specific fields within the data.

If node #1 (trigger) outputs:

{
  "user": {
    "name": "John",
    "email": "john@example.com",
    "address": {
      "city": "New York"
    }
  }
}

You can access:

  • {{#1.user.name}}-> "John"
  • {{#1.user.email}}-> "john@example.com"
  • {{#1.user.address.city}}-> "New York"
Accessing Arrays
Use bracket notation for array items

When working with arrays, use square brackets with an index (starting at 0) to access specific items.

{{#2.files[0].name}}

First file's name

{{#2.files[1].id}}

Second file's ID

To process all items in an array, use an Iterator utility instead of accessing by index.

JavaScript Expressions
Transform data with JavaScript

All expressions inside {{ }} are evaluated as JavaScript. You can use JavaScript methods to transform data.

{{#1.name.toUpperCase()}}

Convert to uppercase

{{#1.price * 1.1}}

Add 10% to price

{{#1.items.length}}

Get array length

{{#1.text.split(",")[0]}}

Split and get first part

Special Properties
Handle properties with spaces or hyphens

For property names with spaces or hyphens, use special syntax:

{{#1."first name"}}

Property with space

{{#1.my-field}}

Hyphenated property (auto-converted)

Iterator Context

When inside an Iterator loop, you have access to special variables:

{{iterator.item}}

The current item being processed

{{iterator.index}}

Current index (0-based)

{{iterator.total}}

Total number of items

{{iterator.bundleIndex}}

Same as index (Make.com style)

Execution Globals

These variables are available throughout the entire flow execution:

{{$executionId}}

Unique ID for this execution

{{$userId}}

ID of the user running the flow

{{$flowId}}

ID of the current flow

Using the Data Picker

You don't need to memorize the syntax. Use the built-in data picker to select values visually.

  1. 1

    Click on any input field

    When configuring a tool, click on the field you want to fill

  2. 2

    Open the data picker

    Click the icon or type {{

  3. 3

    Browse available data

    See all nodes and their output fields organized in a tree view

  4. 4

    Click to insert

    Click any field to insert the correct template syntax automatically

Combining Text and Data

You can mix static text with dynamic data in any field.

Email Subject:

New order from {{#1.customerName}} - Order #{{#1.orderId}}

Result: "New order from John Smith - Order #12345"

Slack Message:

File "{{#2.fileName}}" was uploaded to {{#2.folderName}}

Result: 'File "report.pdf" was uploaded to Reports'

Common Patterns

Webhook to Email

Send an email when receiving webhook data

To:{{#1.email}}
Subject:Welcome, {{#1.name}}!

AI Processing

Use AI to process form submissions

Prompt:Summarize this feedback: {{#1.feedback}}

File Operations

Upload a file with dynamic naming

File name:report_{{#1.date}}.pdf

Tips

Run the previous node first

Test the upstream node to see its actual output structure in the data picker.

Check for null values

If a referenced field doesn't exist, the template will output nothing. Use default values or IF conditions to handle missing data.

Use sequence numbers (#1, #2, etc.)

Reference nodes by their sequence number shown on the canvas, not by name.

Data Mapping - Flows Guide - Serenities