Event Templates
A transactional email doesn't ship its own copy. It names an event, and the matching template renders at send time with that event's data — so the words, the layout, and the links come from a document you can change without touching code.
From event to email
Application code sends a message that references an event key, not a block of HTML. A registry resolves that key to the right template at send time, so the code that fires an email never has to know how the email looks.
order.shippedstore / shipping-noticeRendered per recipient
When a message goes to one person, the template renders with their data — and the unsubscribe and preferences links in the footer are minted just for them, so a single click works without a login. Out comes a subject, an HTML body, a plaintext alternative, and any inline images.
Versions & rollback
Templates are published as versioned artifacts, and a project can pin the exact version it sends. If a change goes wrong, roll the pin back to a known-good version — no redeploy, no scramble, just the previous template taking over on the next send.
Keep exploring
Real-time chat and reliable email and push, in one place.
Real-time chat channels with threads, reactions, and presence.
Know whether each message was delivered, deferred, or bounced.
Per-channel opt-outs, quiet hours, and automatic suppression.