> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://learning.postman.com/llms.txt. For full content including API reference and SDK examples, see https://learning.postman.com/llms-full.txt.

# Connect blocks in Postman Flows

Blocks communicate with each other through connections. Connections are like unidirectional conduits that carry data between blocks. Most blocks have an input port, an output port, or both, where connections can begin or end. Many blocks' output ports can have multiple connections so you can send their data to more than one block. You can select and drag a block's output port to create and connect to a new block.

<img src="https://assets.postman.com/postman-docs/v11/flows-add-a-connection-v11-61-3.gif" alt="Add a connection" fetchpriority="low" loading="lazy" />

A typical flow often involves making a request, and then sending the result to another block. To do this, flows pass information between blocks to perform tasks.

## Using one block's output as another block's input

Once data is selected, it can be used with other blocks. Sending it to a **Display** block is great for seeing that the request worked, but it doesn't actually do anything with the value.

<img src="https://assets.postman.com/postman-docs/v11/flows-using-selected-data-v11-60-1.gif" alt="Using selected data" fetchpriority="low" loading="lazy" />

Adding another **HTTP Request** block and then dragging a connection to its `value1` and `value2` variable inputs lets the request use the value for `eur` and `date` that was returned in the first request.

You can also create a **Select** block by dragging and dropping output data from an **HTTP Request** or **Display** block. The new **Select** block automatically selects the data you dragged and dropped.

<img src="https://assets.postman.com/postman-docs/v11/flows-drag-and-drop-v11-60.gif" alt="Select block" fetchpriority="low" loading="lazy" />

## Blocks inside of other blocks

You may have noticed in the previous step that the **HTTP Request** block has a variable named `value1` that's using a **Select** block with no value set. When this happens, it's selecting everything that's being sent to it (which in this case is `eur`).

This flow can be simplified to remove the extra **Select** block and instead use the existing ones in the second **HTTP Request** block.

<img src="https://assets.postman.com/postman-docs/v11/flows-simplify-the-flow-v11-60.png" alt="Simplifying the flow" />