# Send Message

> Send Message writes an arbitrary response message to the chat conversation.

## What it does

Respond to the user with any message — useful for fixed replies, routing notifications, and emitting node outputs to the chat.

:::note
Send Message can **only** reply within an exchange that a user has initiated, which means the user must send a message first before the Flow can respond to the chat. Flow-initiated exchanges — sending a message without a prior user turn — are not yet supported.
:::

## Inputs

| Field | Description |
|---|---|
| **Conversation ID** | The ID of the conversation to write to. **Bind to the conversation trigger's output**, for example `$vars.conversationTrigger1.output.conversationId`. |
| **Exchange ID** | The exchange (back-and-forth turn) to append this message to. **Bind to a Wait for Message node's latest exchange**, for example `$vars.waitForMessage1.output.conversationContext.latestExchangeId`. |
| **Content** | The message content. Supports expressions to inject variable data. |

## Usage examples

![Send Message node with the properties panel open, showing how the conversation ID, exchange ID, and Content can be configured so that the node sends a deterministic reply message to the chat.](https://dev-assets.cms.uipath.com/assets/images/maestro/chat-send-message-c31d9bf0.png)

### Fixed messages

Send a static acknowledgment before a long-running node:

```
Hold on a moment while we process your request...
```

Announce routing to a specialist conversational agent before the [Wait for Message](./node-wait-for-message.md) that starts the specialist agent's loop:

```
You have been routed to the specialist agent. How can we help you today? 
```

### Expressions with variables

Use variables to emit the output of an upstream node using an expression:

```
`The result is ${$vars.previousNode.output.result}.`
```

## Related pages

- [Wait for Message](./node-wait-for-message.md) — provides the `latestExchangeId` this node consumes.
- [Conversational Agent](./node-conversational-agent.md) — the LLM-driven alternative; produces streamed responses with tool-calls.
- [Chat](./conversational-chat.md) — full palette of chat conversational nodes.
- [Build a chat agent workflow](./build-a-chat-agent-workflow.md) — end-to-end walkthrough that uses Send Message for hand-off acknowledgments and deterministic replies.
- [Chat deployment](https://docs.uipath.com/agents/automation-cloud/latest/user-guide/conversational-agents-deployment) — publish and expose the Flow through various channels.
