Read Incoming
Read Incoming reaches into the conversation history and extracts data from the customer's most recent message — its text content, its attachments, or both — storing each in its own flow variable. It does not send anything or wait for a reply. It reads what is already there.
This is the key distinction from Ask File and Ask Question: those nodes prompt the customer and suspend the flow until a response arrives. Read Incoming does neither — it looks backward at what has already been received, captures the data, and advances immediately.
In email flows, the node appears as Read Reply and its labels change to refer to email body and email attachments. The behavior is identical. See Email connectors for channel setup.
When to Use It
Separating attachments from replies. After an Ask Question node collects a reply, that node stores the text but not the attachments. Place Read Incoming right after it to capture any files the customer attached, in a dedicated variable.
Capturing the trigger message. When an inbound message or email starts a flow, that message exists in the conversation before any node runs. Read Incoming lets you access its content — useful when the customer's initial message contains the data you need, and the flow should react without asking anything first.
Email body processing. In email flows, capture the full reply body with Read Incoming, then pass the variable to Extract Information to pull structured fields from what the customer wrote.
Configuration
| Option | Description |
|---|---|
| Store message body | Toggle on to save the text content of the last customer message to a variable. If the customer sent only an attachment with no text, the variable is set to an empty string — not left unset. |
| Body variable | The variable that receives the message text. |
| Store attachments | Toggle on to save any attached files as signed URLs (60-minute expiry). |
| Attachments variable | The variable that receives the file URLs. A single attachment is stored as one URL string; multiple attachments are stored as an array. |

The node reads exactly one message: the most recent one from the customer, sorted by timestamp. It does not scan the full thread or reach further back in history. If neither toggle is enabled, the node does nothing and advances immediately.
Output Handles
| Handle | When it fires |
|---|---|
| Output | Always. The node has a single output and no error handle. If no customer message exists in the conversation, it logs a warning and continues — no data is captured, but the flow does not stop. |
How It Pairs with Other Nodes
Read Incoming is almost always preceded by a node that causes a customer message to exist.
After Ask Question (email flows). Ask Question sends the email and stores the reply text. Read Incoming follows to capture the attachments from that same reply, separately. This is the most common pattern for email flows that need to process incoming files.
Before Extract Information. Capture an email body or attachment URL, then pass the variable to Extract Information to pull structured fields — invoice amounts, dates, reference numbers.