---
title: "Patch email template"
method: POST
path: "/public/v1/email-templates/{templateId}/patch"
tags: ["Email Templates"]
---

# Patch email template

`POST /public/v1/email-templates/{templateId}/patch`

Applies a focused list of operations. `expectedVersion` is required; a mismatch returns 409 with the current version and document.

## Path parameters

- `templateId` integer, required

## Request body

- object
  - `expectedVersion` integer, required
  - `operations` union[], required
    - union
      - object
        - `op` 'SET_NAME', required
        - `name` string, required
      - object
        - `op` 'SET_SUBJECT', required
        - `subject` string, required
      - object
        - `op` 'REPLACE_BLOCK', required
        - `blockId` string, required
        - `block` object, required
      - object
        - `op` 'INSERT_BLOCK_AFTER', required
        - `afterBlockId` string, nullable, required
        - `block` object, required
      - object
        - `op` 'DELETE_BLOCK', required
        - `blockId` string, required
      - object
        - `op` 'REPLACE_DOCUMENT', required
        - `document` object, nullable

## Response `200`

Template patched

- object
  - `id` number, required
  - `accountId` number, required
  - `name` string, required
  - `description` string, nullable, required
  - `subject` string, required
  - `bodyDocument` object, nullable
  - `bodyHtml` string, required
  - `bodyText` string, required
  - `contentHash` string, required
  - `documentSchemaVersion` number, required
  - `rendererVersion` number, required
  - `status` 'ACTIVE' | 'ARCHIVED', required
  - `version` number, required
  - `archivedAt` string, nullable, required
  - `createdAt` string, nullable, required
  - `updatedAt` string, nullable, required
  - `createdBy` object, nullable
    - `id` number, required
    - `firstName` string, required
    - `lastName` string, required
    - `email` string, email, required
    - `avatar` string, nullable
  - `updatedBy` object, nullable
    - `id` number, required
    - `firstName` string, required
    - `lastName` string, required
    - `email` string, email, required
    - `avatar` string, nullable

## Other responses

- `400` — Invalid request
- `401` — Unauthorized
- `404` — Email template not found
- `409` — Version conflict (TEMPLATE_VERSION_CONFLICT)

## Changes

- **2026-10-03** `666cd9efa9f3` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/getfrontline/apis/public-api/changes/public/v1/email-templates/:templateId/patch/post.md)

---

[API](https://skmtc.dev/getfrontline/apis/public-api.md) · [All operations](https://skmtc.dev/getfrontline/apis/public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getfrontline/apis/public-api/revisions/666cd9efa9f3?raw)
