# Variables and Data Flow

Variables in Lleverage allow you to pass information between different nodes in your workflow. Unlike many other automation platforms, Lleverage's variable system provides exceptional flexibility in how you structure the passing of inputs, outputs, and other elements throughout your workflow.

### Key Features

* Pass data dynamically between workflow nodes
* Visual representation with color-coded chips
* Two methods of implementation: user-friendly (@) and advanced ({{ }})
* Connect nodes to access their variables
* Automatic variable name updates when nodes are renamed
* Support for nested data and arrays

### How to Use Variables with the @ Method

1. Click on any input field where you want to use a variable
2. Look for the @ button at the bottom of the field
3. Click the @ button to open the variable dropdown panel (you cannot type @ on your keyboard to access this)
4. Select the node containing your desired variable (shown as color-coded pills with node name and icon)
5. Choose the specific output you need from that node

> 💡 The color of the icon represents the subcategory of that action type, making it easier to identify the source of variables.

<figure><img src="/files/TBTuxMJaFD1s4Uhfa483" alt="" width="319"><figcaption><p>Variants with advanced open</p></figcaption></figure>

### How to Use Variables with the {{ }} Method (Advanced)

1. Click on any input field where you want to use a variable
2. Type two opening curly braces {{ to start the variable reference
3. Enter the node name followed by a dot (.)
4. Continue with the specific property path you want to access
5. Close with two closing curly braces }}

> 💡 The advanced method gives you more detailed access to specific properties within complex data structures.

<figure><img src="/files/3zA22Ucq7gJ9f3G4HtbG" alt="" width="375"><figcaption><p>Advanced Variables</p></figcaption></figure>

### How to Connect Nodes for Variable Access

1. Ensure there is a connection line between the source node and the destination node
2. Connections can be direct or through intermediate nodes
3. Without a connection, variables from the source node won't be available

> ⚠️ Even if nodes are connected with lines, you still need to explicitly specify the variable in your destination node for the data to pass through.

<figure><img src="/files/qKqV0ntvd5IOcIYbiwM1" alt="" width="277"><figcaption><p>Connected Nodes</p></figcaption></figure>

### How to Work with Nested Data

1. Access nested information using the @ method by navigating through levels in the dropdown
2. For the {{ }} method, use dot notation: {{customerData.address.city}}
3. Access array elements by selecting them in the dropdown or using bracket notation: {{orderItems\[0].price}}

> 💡 For advanced use cases, the variable dropdown has an "Advanced" section that shows more detailed options.

### How to Check Available Variables

1. Run your workflow at least once to populate the variable data
2. Click on a node where you want to use variables
3. Open the variable selection with the @ button
4. Browse through the available variables organized by source node

> ⚠️ Variables with broken references (if a source node is removed) will show an error in your workflow.

### How to Work with Database Connection Strings

1. Database connection strings are managed through Secrets or Connections
2. Select a connection string from the dropdown when setting up a database connection
3. If needed, manually enter a connection string by clicking the icon next to the selection

> 💡 For most use cases, stick with the standard variable output of nodes. AI nodes can help translate information as needed.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.lleverage.ai/canvas-guide/variables-and-data-flow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
