← All posts

Agent Mailboxes Now Hold Whole Conversations

Agent mailboxes used to show only what came in. Now every thread keeps both sides of the conversation, and you can reply or start a new one straight from the dashboard.

An agent mailbox is an email address your AI agent owns. People write to it, the agent picks up each message, deals with it, and marks it done. That part has worked for a long time. What was missing was the other half of any conversation: the answer.

Until this month, a reply your agent sent was not kept in the mailbox. You could see what the customer wrote, but not what went back. And when the customer replied to that answer, we could not tell which conversation it belonged to, so it showed up as a brand new one. I noticed this while answering our own support mail through the product, which is not the way you want to find out.

Both halves are fixed now. Here is what that looks like.

One row per conversation#

The mailbox page used to be a list of messages, newest first. If someone wrote three times, you saw three rows. Now each row is one conversation: who it is with, how many messages it holds, how many you have not read, whether you have replied, and when it last moved.

Mailbox page listing five conversations, two marked unread, one marked replied, each with its message count and last activity
The support mailbox. Unread only counts mail that came in, and "replied" means someone answered from this mailbox.

Open one and you get the whole exchange in order, both directions. Your replies sit in the same timeline as the customer's messages, marked as sent. At the bottom is a reply box, already addressed to the right person.

Thread page showing four messages in order, two received from a customer and two sent from the mailbox, with a reply form at the bottom
A billing question, answered, followed up, answered again. All in one place.

If you want to start a conversation rather than answer one, there is a "New message" button on the mailbox page.

New message form on the mailbox page with From fixed to the mailbox address and fields for To, Cc, Subject and Message
New message. It goes out from the mailbox address, so the answer comes back to the same place.

Replying takes one box and one button#

Open an unread conversation, write the answer, send. It appears in the thread as a sent message.

A reply from the dashboard goes through exactly the same checks as any email you send through the API: your sending quota, your suppression list, the content scan, the scam classifier. We did not build a second, lighter path for the dashboard. In July a different part of the dashboard did have its own path, one that skipped those checks, and it cost us a bounce spike we are still a little sore about. So this time the dashboard hands the reply to the same machinery your API calls use, and nothing more.

Your agents get the same thing. A reply sent through the API is stored in the thread, and when the customer answers, the answer lands in that thread too. An agent never sees its own replies as new mail, so there is nothing to filter out.

Three things we were careful about#

You answer the message you are looking at. If a new message arrives in a conversation while you are typing, and it asks for replies to go somewhere else, your reply still goes where the page told you it would. We had a version where the reply target was picked at send time. We removed it.

A huge conversation cannot slow the page down. Email can be big. Some messages are tens of megabytes. The thread page shows the newest 200 messages with long bodies trimmed, and a trimmed message says so and links to the full one. You will never wait on a page because someone once sent a large attachment.

If we are not sure a reply went out, we say so. Most of the time a reply is either sent or refused, and the page tells you which and why. Once in a while the connection drops at the wrong moment and we cannot know. In that case the page says the outcome is unconfirmed, rather than "nothing was sent", because the second phrasing invites you to click again and send a duplicate.

What is next#

Two things are still on the list. First, a retry after an unconfirmed send can still send twice; we are adding a safeguard so it cannot. Second, team members with the Viewer role are blocked from sending in the dashboard, but that block does not yet extend to the API. Both are tracked and coming.

Try it#

If you already have an agent mailbox, open it in the dashboard and reply to something. If you do not, the Agent Mailboxes guide shows how to create one with a single API call.

Share

Start sending GDPR-compliant email today

Create a free account and send your first email in minutes. Email storage and AI processing in Finland, with a DPA on every plan.

Create free account Read the Docs

Subscribe for tutorials and product updates. No spam.

Keep reading

Product

A card check, only when an account looks risky

euromail now asks for a card check when an account shows the signs of spam: a burst of mail from a brand-new account, a domain registered last week, or bounces and complaints. Everyone else never sees it, and nothing is charged.