---
title: "Send email from template."
method: POST
path: "/emails/v1/send/template"
tags: ["emails"]
---

# Send email from template.

`POST /emails/v1/send/template`

Send email using an existing template with merge tags.

## Query parameters

- `projectId` string, required

## Request body

- object
  - `templateId` string, required — ID of the template to use
  - `to` string, email, required — Recipient email address
  - `subject` string — Email subject line (optional, uses template default if not provided)
  - `mergeTags` object — Optional merge tags for personalization

## Response `200`

Default Response

- object
  - `data` object
    - `messageId` string — Unique message identifier
    - `status` 'sent' | 'queued' | 'failed'

## Other responses

- `400` — Default Response
- `401` — Default Response
- `403` — Default Response
- `404` — Default Response

## Changes

- **2026-01-19** `42ce261f6dec` — 1 breaking, 2 warning, 9 info
  - the `query` request parameter `projectId` became required
  - removed the optional property `messageId` from the response with the `200` status
  - removed the optional property `status` from the response with the `200` status
  - added the optional property `data` to the response with the `200` status
  - …8 more
- **2026-01-13** `343ccfa7da7d` — 3 info
  - added the new optional `query` request parameter `projectId`
  - added the non-success response with the status `401`
  - added the non-success response with the status `403`
- **2025-12-09** `9c0284025bec` — 1 breaking, 1 info
  - api path removed without deprecation
  - endpoint added

[Change history](https://skmtc.dev/unlayer/apis/unlayer-api/changes/emails/v1/send/template/post.md)

---

[API](https://skmtc.dev/unlayer/apis/unlayer-api.md) · [All operations](https://skmtc.dev/unlayer/apis/unlayer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/unlayer/unlayer-api/revisions/42ce261f6dec/schema)
