The Direct Reply feature lets users reply directly to email notifications, mentions, DMs, or channel messages, with their replies posted back into Rocket.Chat as regular messages. It bridges email and chat so conversations don't get fragmented when users respond from their inbox.
How it works
Direct Reply is the inbound counterpart to your outbound email setup:
Rocket.Chat connects to a dedicated mailbox over IMAP or POP, polls it on a schedule, and processes any new messages it finds. To know which message a reply belongs to, Rocket.Chat uses sub-addressing (also called plus addressing): notification emails are sent from an address like inbox+abc123@yourdomain.com, where abc123 encodes the original message context. When the user replies, the tagged address still routes to the base inbox (inbox@yourdomain.com), and Rocket.Chat reads the tag to post the reply back to the right room.
Important: Use a dedicated mailbox.
When Direct Reply is enabled, Rocket.Chat takes control of the configured mailbox. All unread emails are retrieved, marked as read, and processed. Only enable Direct Reply with a mailbox used exclusively by Rocket.Chat, never one that humans also read or process.
Limitations
English only. Reply parsing relies on the quoted-header phrase
On <date>, <author> wrote:being in English. Replies in other languages may work as long as that quote line is in English or older quoted email content is removed manually before sending.Text only. Attachments are not supported yet. Inline, multiline, bold, and italic formatting all work.
Configure direct reply
Go to Manage → Workspace → Email, expand the Direct Reply section, and update the following fields:
Field | Description |
|---|---|
Enable Direct Reply | Turns the feature on. Once enabled, Rocket.Chat starts polling the configured mailbox. |
Debug Direct Reply | Enables verbose logging to help diagnose connection or parsing issues. Note: when enabled, the mailbox password is shown in plain text in the admin console. Keep this off in production. |
Protocol | Select IMAP or POP depending on your email server. IMAP is recommended where available. |
Host | The email server hostname, for example, |
Port | The email server port. Common values: |
IgnoreTLS | Enable only if your email server doesn't support TLS, typically when using port |
Email Check Frequency | How often Rocket.Chat polls the mailbox, in minutes. Default and minimum is |
Delete Emails | When enabled, every unread email in the mailbox is deleted after processing, including emails that aren't direct replies. Recommended for IMAP to keep the mailbox empty. The mailbox must therefore be used exclusively by Rocket.Chat. |
Separator | The character separating the base and tag parts of the email address, for example, |
Username | The full email address used to log in to the mailbox, for example, |
Reply-to | The address recipients see in the |
Password | The password for the mailbox account. |
Click Save changes. Users can now reply to email notifications and have their replies posted back into Rocket.Chat.
Troubleshooting
Reply didn't appear in Rocket.Chat
If a user replied but no message was posted, check the admin console for an Invalid Email entry. Common causes:
The email format wasn't what Rocket.Chat expected (see Quoted headers below).
The sender was blocked or removed from the workspace.
The original message or room was deleted.
Switching from IMAP to POP
If you switch from IMAP to POP using the same mailbox, empty all folders first. POP treats every message in the mailbox as new on first connect, so leaving old messages results in duplicate posts in Rocket.Chat.
Quoted headers
Rocket.Chat uses the On <date>, <author> wrote: line to find where a quoted reply ends and the new message begins. This breaks down when the email client wraps that line across multiple lines (Gmail wraps lines over 80 characters):
On <date>, <author>
wrote:
> blahRocket.Chat searches for on and wrote together on the same line and won't recognize the wrapped version. The detection also only works in English.
Workaround: when replying, delete the quoted text and keep only your new message.
Signatures
Rocket.Chat trims signatures by looking for lines starting with - or _:
Hello
--
RickCustom signature styles aren't reliably detected. For example, this format won't be stripped automatically:
Hello
Mr Rick Olson
Galactic President Superstar Mc Awesomeville
GitHubIf your signature isn't being trimmed, ask users to either delete it before replying or adopt the standard -- delimiter convention.