---
title: "Render an email template"
method: POST
path: "/email_templates/{id}/render"
tags: ["Email Templates"]
---

# Render an email template

`POST /email_templates/{id}/render`

Renders a template using the provided Liquid variables. Missing `template_variables` defaults to `{}`.

## Path parameters

- `id` string, uuid, required

## Request body

- RenderEmailTemplateRequest
  - `template_variables` object — Variables for Liquid template rendering. Non-object values are silently treated as an empty object.

## Response `200`

Rendered template content.

- RenderedEmailTemplateResponse
  - `data` RenderedEmailTemplate, required — Template object with `subject`, `html_body`, and `text_body` replaced by their Liquid-rendered values. All other template fields (id, name, variables, etc.) remain unchanged.
    - `created_at` string, date-time, required
    - `html_body` string, nullable, required
    - `id` string, uuid, required
    - `name` string, required
    - `record_type` 'email_template', required
    - `subject` string, nullable, required
    - `text_body` string, nullable, required
    - `updated_at` string, date-time, required
    - `variables` string[], required

## Other responses

- `401` — Not authorized (10006).
- `404` — Resource not found (10001).
- `422` — Standalone template render failure (10015).

## Changes

- **2026-07-21** `80833e66e010` — 1 breaking, 12 warning, 6 info
  - removed the required property `errors/items/message` from the response with the `422` status
  - added the new `10001` enum value to the `errors/items/code` response property for the response status `422`
  - added the new `10006` enum value to the `errors/items/code` response property for the response status `422`
  - added the new `10007` enum value to the `errors/items/code` response property for the response status `422`
  - …15 more
- **2026-07-16** `2fb3b617430a` — 4 warning, 2 info
  - added the new `recipient_suppressed` enum value to the `errors/items/code` response property for the response status `401`
  - added the new `recipient_suppressed` enum value to the `errors/items/code` response property for the response status `404`
  - added the new `reputation_suspended` enum value to the `errors/items/code` response property for the response status `401`
  - added the new `reputation_suspended` enum value to the `errors/items/code` response property for the response status `404`
  - …2 more
- …earlier changes not shown

[Full history](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/changes/email_templates/:id/render/post.md)

---

[API](https://skmtc.dev/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/team-telnyx/telnyx-api-2/revisions/3fdc16374d70/schema)
