Templates
Templates are reusable message blueprints. They let you define content (and often styling) once, and then send consistent messages by referencing a template id and supplying variables at send time.
What a template is
A template is a saved definition of message content. Depending on your setup, a template can include:
- In-app content (title/snippet/body/actions)
- Email content (subject/title/body/layout)
- Variables that personalize content for a specific recipient
Templates are ideal when you want repeatable messaging behavior across your product — password resets, onboarding nudges, billing notifications, release announcements, and so on.
How it fits into the system
- Messages can be sent using ad-hoc content, but templates are the recommended path once you move beyond experiments.
- Categories (under Messages) help users manage preferences across repeated messages (for example, “Marketing” vs “Product updates”).
- Workflows often use templates in steps so that the sequence is consistent and maintainable.
Getting started
- Create a template in the Dashboard for the channel(s) you care about (start with in-app).
- Add variables for personalization (for example,
firstName,plan,invoiceUrl). - Send the template:
- From the Dashboard for a quick test, or
- From your backend using the Server SDK or
/sdk/v1/messages/sendwithcontent.templateId.
If you need full control over rendering, you can also send manual channel content (without a template). Templates are about repeatability and shared ownership across engineering + product teams.