Позволяет управлять шаблонами для конкретного сервера.
Пожалуйста, обратите внимание, что на одном сервере может быть до 100 шаблонов. Запросы, превышающие этот лимит, не будут обработаны. Свяжитесь со службой поддержки, если вам требуется больше шаблонов на одном сервере.
| Accept | обязательный
application/json |
|---|---|
| Content-Type | обязательный
application/json |
| X-Haskimail-Server-Token | обязательный
Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API». |
curl "https://api.haskimail.ru/email/withTemplate" \
-X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Haskimail-Server-Token: server token" \
-d '{
"From": "sender@example.com",
"To": "receiver@example.com",
"TemplateId": 1234,
"TemplateModel": {
"user_name": "Иван Дурак"
}
}' | TemplateId | integer | обязательный
ID шаблона для использования при отправке этого письма. Обязательно, если не указан |
|---|---|---|
| TemplateAlias | string | обязательный
Псевдоним шаблона для использования при отправке этого письма. Обязательно, если не указан |
| TemplateModel | object | обязательный
Модель данных, которая будет применена к указанному шаблону для генерации |
| From | string | обязательный
Email-адрес отправителя. Должен иметь зарегистрированную и подтвержденную подпись отправителя. Чтобы указать имя, используйте формат |
| To | string | обязательный
Email-адрес получателя. Несколько адресов разделяются запятой. Максимум 50. |
| Cc | string |
Email-адрес получателя для копии (Cc). Несколько адресов разделяются запятой. Максимум 50. |
| Bcc | string |
Email-адрес получателя для скрытой копии (Bcc). Несколько адресов разделяются запятой. Максимум 50. |
| Tag | string |
Тег, позволяющий категоризировать исходящие письма для получения детальной статистики. Максимум 1000 символов. |
| ReplyTo | string |
Email-адрес для ответа, переопределяющий стандартный. По умолчанию используется адрес, указанный в подписи отправителя. |
| Headers | array |
Список пользовательских заголовков для включения. |
| TrackOpens | boolean |
Активировать отслеживание открытий для этого письма. |
| TrackLinks | string |
Активировать отслеживание кликов по ссылкам в HTML или текстовой версии письма. Возможные значения: |
| Attachments | array |
Список вложений. |
| Metadata | object |
Пользовательские метаданные в формате ключ/значение. |
| MessageStream | string |
ID канала, который будет использоваться для отправки. Если не указан, по умолчанию будет использован исходящий транзакционный канал. |
{
"TemplateId": 1234,
"TemplateModel": {
"user_name": "John Smith",
"company": {
"name": "ACME"
}
},
"From": "sender@example.com",
"To": "receiver@example.com",
"Cc": "copied@example.com",
"Bcc": "blank-copied@example.com",
"Tag": "Invitation",
"ReplyTo": "reply@example.com",
"Headers": [
{
"Name": "CUSTOM-HEADER",
"Value": "value"
}
],
"TrackOpens": true,
"TrackLinks": "None",
"Attachments": [
{
"Name": "readme.txt",
"Content": "dGVzdCBjb250ZW50",
"ContentType": "text/plain"
},
{
"Name": "report.pdf",
"Content": "dGVzdCBjb250ZW50",
"ContentType": "application/octet-stream"
}
],
"Metadata": {
"color":"blue",
"client-id":"12345"
},
"MessageStream": "outbound"
} | To | string |
Email-адрес получателя. |
|---|---|---|
| SubmittedAt | string |
Временная метка отправки. |
| MessageID | string |
ID сообщения. |
| ErrorCode | integer | |
| Message | string |
Сообщение ответа. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"To": "receiver@example.com",
"SubmittedAt": "2014-02-17T07:25:01.4178645-05:00",
"MessageID": "0a129aee-e1cd-480d-b08d-4f48548ff48d",
"ErrorCode": 0,
"Message": "OK"
} Переносит все шаблоны с изменениями на другой сервер. Если шаблон уже существует на целевом сервере, он будет обновлен. Если шаблон не существует на целевом сервере, он будет создан, и ему будет присвоен псевдоним шаблона с исходного сервера.
| Accept | обязательный
application/json |
|---|---|
| Content-Type | обязательный
application/json |
| X-Haskimail-Account-Token | обязательный
Для этого запроса требуются права доступа на уровне аккаунта. Этот токен, доступный только владельцу аккаунта, можно найти на вкладке «Токены API» вашего аккаунта Haskimail. |
curl "https://api.haskimail.ru/templates/push" \
-X PUT \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Haskimail-Account-Token: account token" \
-d '{
"SourceServerID": 997287,
"DestinationServerID": 997285,
"PerformChanges": true
}' | SourceServerID | string | обязательный
ID исходного сервера, содержащего шаблоны, которые будут перенесены. |
|---|---|---|
| DestinationServerID | string | обязательный
ID целевого сервера, на который будут перенесены шаблоны. |
| PerformChanges | boolean | обязательный
Указывает, следует ли переносить шаблоны на целевой сервер. Этот параметр можно установить в |
{
"SourceServerID": 997287 ,
"DestinationServerID":997285 ,
"PerformChanges": true
} | TotalCount | integer |
Указывает общее количество изменений в шаблонах. |
|---|---|---|
| Templates | object |
Список затронутых шаблонов на целевом сервере. |
| Name | string |
Название шаблона. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"TotalCount": 1,
"Templates": [
{
"TemplateId": 7270,
"Name": "Comment notification"
}
]
} | Accept | обязательный
application/json |
|---|---|
| X-Haskimail-Server-Token | обязательный
Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API». |
curl "https://api.haskimail.ru/templates/{templateIdOrAlias}" \
-X GET \
-H "Accept: application/json" \
-H "X-Haskimail-Server-Token: server token" | TemplateId | integer |
ID шаблона. |
|---|---|---|
| Name | string |
Название шаблона. |
| Subject | string |
Содержимое для поля Subject при отправке письма с этим шаблоном. |
| HtmlBody | string |
Содержимое для поля HtmlBody при отправке письма с этим шаблоном. |
| TextBody | string |
Содержимое для поля TextBody при отправке письма с этим шаблоном. |
| AssociatedServerId | integer |
ID сервера, с которым связан этот шаблон. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"Name": "Onboarding Email",
"TemplateId": 1234,
"Subject": "Hi there, {{Name}}",
"HtmlBody": "Hello dear Haskimail user. {{Name}}",
"TextBody": "{{Name}} is a {{Occupation}}",
"AssociatedServerId": 1,
},
{
"Name": "Receipt Email",
"TemplateId": 1235,
"Subject": "Receipt for {{ product_name }}",
"HtmlBody": "<body><span class="preheader">This is a receipt for {{ product_name }}...",
"TextBody": "This is a receipt for {{ product_name }}",
"AssociatedServerId": 1
} | Accept | обязательный
application/json |
|---|---|
| Content-Type | обязательный
application/json |
| X-Haskimail-Server-Token | обязательный
Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API». |
curl "https://api.haskimail.ru/templates" \
-X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Haskimail-Server-Token: server token" \
-d '{
"Name": "Welcome Email",
"HtmlBody": "<html><body>Hello{{name}}<body><html>",
"TextBody": "Hello, {{name}}",
"Subject": "Hello, from {{company.name}}",
"AssociatedServerId": "1"
}' | Name | string | обязательный
Название шаблона. |
|---|---|---|
| HtmlBody | string | обязательный
HTML-содержимое, которое будет использоваться, когда этот шаблон применяется для отправки письма. Обязательно, если не указан Для шаблона-макета (Layout) обязательно наличие заполнителя контента ({{{@content}}}), который может быть размещен в |
| TextBody | string | обязательный
Текстовое содержимое, которое будет использоваться, когда этот шаблон применяется для отправки письма. Обязательно, если не указан Для шаблона-макета (Layout) обязательно наличие заполнителя контента ({{{@content}}}), который может быть размещен в TextBody только один раз. |
| Subject | string | обязательный
Содержимое для поля Subject при отправке письма с этим шаблоном.Поле Subject обязательно только для стандартных шаблонов. Подробнее о синтаксисе этого поля см. в нашей документации по языку шаблонов. Указывать тему для шаблонов-макетов запрещено, это приведет к ошибке API. |
| AssociatedServerId | integer | обязательный
ID сервера, к которому будет привязан шаблон. |
{
"Name": "Onboarding Email",
"Subject": "Hello from {{company.name}}!",
"TextBody": "Hello, {{name}}!",
"HtmlBody": "<html><body>Hello, {{name}}!</body></html>"
} | TemplateId | integer |
ID шаблона. |
|---|---|---|
| Name | string |
Название шаблона. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"TemplateId": 1234,
"Name": "Onboarding Email"
} | Accept | обязательный
application/json |
|---|---|
| Content-Type | обязательный
application/json |
| X-Haskimail-Server-Token | обязательный
Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API». |
curl "https://api.haskimail.ru/templates/{templateIdOrAlias}" \
-X PUT \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Haskimail-Server-Token: server token" \
-d '{
"Name": "Onboarding Email",
"Subject": "Hello from {{company.name}}!",
"TextBody": "Hello, {{name}}!",
"HtmlBody": "<html><body>Hello, {{name}}!</body></html>"
}' | Name | string | обязательный
Название шаблона. |
|---|---|---|
| Subject | string | обязательный
Содержимое для поля Subject при отправке письма с этим шаблоном. Подробнее о синтаксисе этого поля см. в нашей документации по языку шаблонов. |
| HtmlBody | string | обязательный
Содержимое для поля HtmlBody при отправке письма с этим шаблоном. Обязательно, если не указан |
| TextBody | string | обязательный
Содержимое для поля TextBody при отправке письма с этим шаблоном. Обязательно, если не указан |
{
"Name": "Onboarding Email",
"Subject": "Hello from {{company.name}}!",
"TextBody": "Hello, {{name}}!",
"HtmlBody": "<html><body>Hello, {{name}}!</body></html>"
} | TemplateId | integer |
ID шаблона. |
|---|---|---|
| Name | string |
Название шаблона. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"TemplateId": 1234,
"Name": "Onboarding Email"
} | Accept | обязательный
application/json |
|---|---|
| X-Haskimail-Server-Token | обязательный
Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API». |
curl "https://api.haskimail.ru/templates?count=100&offset=0&LayoutTemplate=my-layout" \
-X GET \
-H "Accept: application/json" \
-H "X-Haskimail-Server-Token: server token" | Count | обязательный
Количество возвращаемых шаблонов. |
|---|---|
| Offset | обязательный
Количество шаблонов, которое нужно «пропустить» перед возвратом результатов. |
| TotalCount | integer |
Общее количество шаблонов, связанных с текущим сервером. |
|---|---|---|
| Templates | array |
Список шаблонов, связанных с этим сервером. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"TotalCount": 2,
"Templates": [
{
"TemplateId": 1234,
"Name": "Password Recovery Email"
},
{
"Active": true,
"TemplateId": 5678,
"Name": "Default Layout"
}]
} | Accept | обязательный
application/json |
|---|---|
| X-Haskimail-Server-Token | обязательный
Для этого запроса требуются права доступа на уровне сервера. Этот токен можно найти в настройках вашего сервера Haskimail на вкладке «Токены API». |
curl "https://api.haskimail.ru/templates/{templateIdOrAlias}" \
-X DELETE \
-H "Accept: application/json" \
-H "X-Haskimail-Server-Token: server token" | ErrorCode | integer | |
|---|---|---|
| Message | string |
Связанное сообщение об успехе или ошибке. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"ErrorCode": 0,
"Message": "Template 1234 removed."
}