Email Templates
Create reusable email templates by submitting rendered HTML, personalized at send time via {{variable}} placeholders.
Create reusable email templates by submitting rendered HTML — write them by hand
or render a React Email component locally with @react-email/render and submit
the result. Templates are stored server-side and personalized at send time via
{{variable}} placeholders.
Creating templates
Templates can be created in the Templates section of the dashboard, which provides a live-preview editor. They can also be created via the API.
API endpoints
POST
/templates| Parameter | Type | Description |
|---|---|---|
namerequired | string | Display name for the template. |
subjectrequired | string | Default email subject. Supports {{variable}} placeholders. Can be overridden per send. |
htmlrequired | string | HTML content. Supports {{variable}} placeholders. Variable values are HTML-escaped at render time, so put HTML structure in the template itself — not in variable values. |
curl -X POST https://api.eusend.dev/templates \
-H "Authorization: Bearer eu_live_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Order Confirmation",
"subject": "Your order #{{order_id}} is confirmed",
"html": "<h1>Hi {{first_name}}!</h1><p>Order #{{order_id}} confirmed.</p>",
"text": "Hi {{first_name}}! Order #{{order_id}} confirmed."
}'{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Order Confirmation",
"createdAt": "2026-05-20T10:00:00.000Z"
}The rest of the template CRUD surface:
GET
/templatesList all templates.
GET
/templates/:idGet a template.
PATCH
/templates/:idUpdate a template.
DELETE
/templates/:idDelete a template.