React to what happens to your email
Sending an email is only half the story. What happens next — did it land, did anyone open it, did it bounce — is usually invisible, so the follow-up falls to whoever remembers to check. Routario turns those moments into triggers: when something happens to an email you sent, a flow can start on its own and do the next thing.
A few things this unlocks:
- Opened → follow up. Someone opened your quote but didn’t reply — send a gentle nudge a day later.
- Bounced → flag the address. A message bounced — post a heads-up so nobody keeps emailing a dead address.
- Marked as spam → back off. A recipient reported your email — stop the sequence and let a person take a look.
The email events you can react to
Section titled “The email events you can react to”Each event fires once for one message, the moment your email provider reports it:
| Event | Fires when |
|---|---|
Email delivered (mail.delivered) | the message reached the recipient’s mail server |
Email opened (mail.opened) | the recipient opened the message |
Email link clicked (mail.clicked) | the recipient clicked a link inside it |
Email bounced (mail.bounced) | delivery failed at the recipient’s server |
Email marked as spam (mail.complained) | the recipient reported it as spam |
Email delivery delayed (mail.delivery_delayed) | delivery is taking longer than usual (temporary) |
Start a flow on an email event
Section titled “Start a flow on an email event”On the Automations canvas, give your flow an Event trigger, then pick the email event from the list — for example Email opened (mail.opened). From then on, that flow runs automatically every time an email you sent is opened.
Each run carries details about the specific email, ready to drop into any step as template variables:
| Variable | What it holds |
|---|---|
{{ trigger.payload.recipient }} | the address the email went to |
{{ trigger.payload.provider_message_id }} | the sent message’s id, to tie back to the original send |
{{ trigger.event }} | which event fired, e.g. mail.bounced |
{{ trigger.payload.occurred_at }} | when it happened |
Worked example: alert the team when an email bounces
Section titled “Worked example: alert the team when an email bounces”You want to know immediately when a message can’t be delivered, so nobody keeps chasing a dead address.
-
Event trigger. Add an Event trigger and choose Email bounced (
mail.bounced). The flow now runs on every bounce. -
Notify. Add a Send Slack message step (or a Notification) with a body like:
⚠️ Email to {{ trigger.payload.recipient }} bounced.Check the address before sending anything else there.
That’s the whole flow. To turn “opened → follow up” into a flow instead, swap the trigger to Email opened, add a Wait of "1d", then a Send email step addressed to {{ trigger.payload.recipient }}.
Letting an agent react
Section titled “Letting an agent react”Agents react to email events through a flow, not directly: give a flow the email-event trigger and add a Run agent step. The agent receives the same {{ trigger.payload.* }} details and can decide what to do — draft a tailored follow-up, look the contact up in Memory, or ask a person before acting. See How agents ask before they write.
Turning it on
Section titled “Turning it on”These events come from your email provider, so an admin connects them once. In Routario’s email connection settings, add the provider’s event webhook — the same place you set up receiving email — and paste in its signing secret so Routario can trust the events are genuine. Once that’s in place, the email events appear in the Event trigger’s list and start flowing to your automations. Until it’s connected, the triggers simply never fire.
Where to go next
Section titled “Where to go next”- Send email from a flow — the other half: sending the message these events report on.
- Receive email into a flow — start a flow when a message arrives, using the same email connection.
- Building an automation — how triggers and steps fit together on the canvas.
- Template variables — everything you can pull into a step, including
{{ trigger.* }}.