---
title: "Reusable email templates"
description: "Write an email body once, publish a version of it, and send it from the composer, from your own code or from an agent, with the values filled in at send."
url: "https://openemail.uk/features/templates"
---

[Writing & sending](https://openemail.uk/features.md#writing)

# Templates One body, sent many times.

Write a body once, publish it, then send it from the composer, your own code or an agent.

[Open mail](https://openemail.uk/mail/inbox) [Get Started](https://openemail.uk/signup.md)[All features](https://openemail.uk/features.md)

In short

## What is an email template?

An email template is a body kept apart from the messages made from it, with named placeholders for the details. Each send supplies the values.

23

starting points in the gallery

200

templates per workspace

500

blocks per body, at most

9

endpoints under /templates

How it works

## Two ways to write a body

Thirteen kinds of block on a canvas, checked as you write them, or react-email components you render and post as HTML.

## Slots you set, props you send

A slot carries a default, so a send that names nothing still renders. A missing required prop refuses the send.

## Publishing freezes what sends

Editing a published template mints a new draft, so sends keep resolving the same version until you publish.

What you get

## In the product today

Owned by the workspace

An API key can send a teammate's template, and it outlives their account.

Preview before publishing

Renders what a send would, and names what is still empty.

Its own send record

Sends, opens and clicks per template, split by where each came from.

Four ways in

The composer, the templates screen, the API and MCP, over one service.

Good practice

## Getting the most out of it

1. 01
   
   Require the order number
   
   Otherwise a send without it goes out with a blank nothing reports and nobody can recall.
2. 02
   
   Leave the live one alone
   
   Save drafts freely: what is live stays live until you publish.
3. 03
   
   Pin a version
   
   Pass the version number on a send that must match what was approved.

Where it stands

## Good to know

Questions

## Asked often

Keep going

## Works well with

REST API

A documented HTTP API with issuable, scopable, revocable keys.

MCP server

Point Claude, or any MCP client, at your mailbox.

See when mail you sent was opened

Whether a message you sent has been opened, when, how many times and which of its links were followed. On unless you turn it off, and plain about the readings it cannot get.

Start

## Your domain, your mail.

Point a domain at OpenEmail and read it in a mailbox built around it. The free plan covers one domain.

[Open mail](https://openemail.uk/mail/inbox) [Get Started](https://openemail.uk/signup.md)[Read the reference](https://openemail.uk/docs/knowledge/writing/templates.md)
