---
title: "EmailTemplates.create"
method: POST
path: "/entities/EmailTemplates"
tags: ["Email"]
---

# EmailTemplates.create

`POST /entities/EmailTemplates`

## Request

- Base URL: `https://us-east.api.coevera.com/api/v100/rest/spaces/your_space_id`
- URL: `https://us-east.api.coevera.com/api/v100/rest/spaces/your_space_id/entities/EmailTemplates`
- Auth: HTTP basic
- TypeScript: <https://skmtc.dev/coevera/apis/coevera-crm-api/docs/entities/EmailTemplates/post.ts> (a function with typed inputs; its response is checked against the schema)

Creates a EmailTemplate record.

## Query parameters

- `validation-level` integer

## Request body

- CreateEmailTemplateInput: Field values of a new EmailTemplate record.
  - `modified` string, date-time: Last modification time.
  - `created` string, date-time: Creation time.
  - `body` string: HTML body of the template. May use merge-field placeholders that are filled with record values when the template is composed.
  - `email_template_folder_id` string, uuid: Id of the folder the template belongs to. Empty for templates at the root level.
  - `name` string, required: Name of the entity and its default text representation.
  - `owner_id` string, uuid, required: Id of the template owner.
  - `recent_colors` object: Colors recently used in the editor of the template body, as integer color values.
  - `share_mode` 0 | 1 | 2 | 3: Sharing model for the template (e.g. shared with selected sales units, selected users, or open for editing by all). Integer enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit
  - `sharing_url_is_enabled` boolean: When true, the template's public sharing URL is active and accessible. Setting to false invalidates outstanding sharing URLs.
  - `sharing_url_settings` object: Public sharing-link configuration: resolved URL plus optional personalisation context (entity type, entity id) used to pre-fill merge fields. Empty when no sharing link is configured.
  - `subject` string, required: Subject line of emails composed from this template. Supports merge-field placeholders.
  - `type` 0 | 1 | 2, required: Template format: plain text (TextTemplate), raw HTML (HtmlTemplate) or built in the visual editor (WysiwygTemplate). Integer enum value: 0 - TextTemplate, 1 - HtmlTemplate, 2 - WysiwygTemplate
  - `revision` integer: Revision when entity was lastly changed.
  - `sharing_units` object[]: Sales units granted shared access to this template (custom share mode).
    - `id` string, uuid: Id of the related EmailTemplateSharingSalesUnitRelation record.
  - `sharing_clients` object[]: Users granted shared access to this template (custom share mode).
    - `id` string, uuid: Id of the related EmailTemplateSharingClientRelation record.
  - `documents` object[]: Files attached to the template (used as default attachments).
    - `id` string, uuid: Id of the related CloudObjectRelation record.

## Response `201`

The created EmailTemplate record.

- object
  - `success` boolean: True when the request succeeded; false on error.
  - `data` EmailTemplate: Reusable email whose body can contain placeholders filled with record values; templates are organized in folders and can be shared.
    - `is_delete_protected` boolean, required: True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.
    - `id` string, uuid, required: Unique identifier of entity.
    - `is_deleted` boolean: Specifies if the entity is considered deleted.
    - `modified` string, date-time: Last modification time.
    - `created` string, date-time: Creation time.
    - `email_template_folder` string, uri: Folder in the template hierarchy that the template belongs to. Empty for templates at the root level. Related EmailTemplateFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplateFolder' for its fields.
    - `owner` string, uri, required: User who owns the template. Related Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields.
    - `body` string: HTML body of the template. May use merge-field placeholders that are filled with record values when the template is composed.
    - `email_template_folder_id` string, uuid: Id of the folder the template belongs to. Empty for templates at the root level.
    - `name` string, required: Name of the entity and its default text representation.
    - `owner_id` string, uuid, required: Id of the template owner.
    - `recent_colors` object: Colors recently used in the editor of the template body, as integer color values.
    - `share_mode` 0 | 1 | 2 | 3: Sharing model for the template (e.g. shared with selected sales units, selected users, or open for editing by all). Integer enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit
    - `sharing_url_is_enabled` boolean: When true, the template's public sharing URL is active and accessible. Setting to false invalidates outstanding sharing URLs.
    - `sharing_url_settings` object: Public sharing-link configuration: resolved URL plus optional personalisation context (entity type, entity id) used to pre-fill merge fields. Empty when no sharing link is configured.
    - `subject` string, required: Subject line of emails composed from this template. Supports merge-field placeholders.
    - `type` 0 | 1 | 2, required: Template format: plain text (TextTemplate), raw HTML (HtmlTemplate) or built in the visual editor (WysiwygTemplate). Integer enum value: 0 - TextTemplate, 1 - HtmlTemplate, 2 - WysiwygTemplate
    - `revision` integer: Revision when entity was lastly changed.
    - `sharing_units` string[]: Sales units granted shared access to this template (custom share mode).
    - `sharing_clients` string[]: Users granted shared access to this template (custom share mode).
    - `documents` string[]: Files attached to the template (used as default attachments).

## Other responses

- `400`: Bad request: a bad or unknown parameter (codes 117, 118), a missing permission (code 50), conflicting data (code 2002) or any other API error. The REST API answers 400 where others answer 403 or 409; check `code`.
- `401`: Not authenticated: missing or wrong credentials, a credential of another space, or an expired token (code 401, ERROR_UNAUTHORIZED).
- `422`: Validation failed (code 40000, with the failing fields) or a required parameter is missing (code 119). By default one failed item fails a whole batch and nothing is written.
- `429`: Too many requests (code 182). Wait for the seconds in Retry-After, then retry.
- `500`: Unexpected server error (code 1000, ERROR_UNKNOWN).

---

[API](https://skmtc.dev/coevera/apis/coevera-crm-api.md) - [All operations](https://skmtc.dev/coevera/apis/coevera-crm-api/llms.txt) - [OpenAPI document](https://skmtc.dev/coevera/apis/coevera-crm-api/revisions/40ebbc83f179?raw)
