Метод SendBulkEmail
Отправляет несколько шаблонных писем с адреса в каталоге. Нужный каталог определяется по сервисному аккаунту, от имени которого выполняется запрос.
В одном запросе передается общий шаблон и набор писем к отправке. Для каждого письма указываются адресаты, данные для подстановки в шаблон, заголовки и метки.
Запрос
POST /v2/email/outbound-bulk-emails HTTP/2
Заголовки запроса
Используйте в запросе общие заголовки.
Тело запроса
{
"ConfigurationSetName": "string",
"FromEmailAddress": "<адрес_отправителя>",
"ReplyToAddresses": [
"<адрес_для_ответа>"
],
"DefaultEmailTags": [
{
"Name": "<имя_метки>",
"Value": "<значение_метки>"
}
],
"DefaultContent": {
"Template": {
"Headers": [
{
"Name": "<заголовок>",
"Value": "<значение>"
}
],
"TemplateContent": {
"Html": "<шаблон_HTML>",
"Subject": "<шаблон_темы>",
"Text": "<шаблон_текста>"
},
"TemplateData": "<данные_для_подстановки_в_шаблон>"
}
},
"BulkEmailEntries": [
{
"Destination": {
"ToAddresses": [
"<адрес_получателя>"
],
"CcAddresses": [
"<адрес_получателя_копии>"
],
"BccAddresses": [
"<адрес_получателя_скрытой_копии>"
]
},
"ReplacementEmailContent": {
"ReplacementTemplate": {
"ReplacementTemplateData": "<данные_для_подстановки_в_шаблон>"
}
},
"ReplacementHeaders": [
{
"Name": "<заголовок>",
"Value": "<значение>"
}
],
"ReplacementTags": [
{
"Name": "<имя_метки>",
"Value": "<значение_метки>"
}
]
}
]
}
|
Параметр |
Описание |
|
|
Тип: string. Имя конфигурации, которая используется для отправки писем. Если не указано, используется конфигурация, привязанная к адресу Yandex Cloud Postbox. |
|
|
Тип: string. Адрес, с которого отправляются письма. Он должен быть верифицирован. Обязательный параметр. |
|
|
Тип: array. Адреса, на которые будут отправляться ответы получателей. |
|
|
Тип: array. Метки, которые применяются ко всем письмам в запросе.
Имя и значение метки могут содержать латинские буквы, цифры, дефис и подчеркивание. Максимальная длина — 256 символов. |
|
|
Тип: object. Объект с общим содержимым письма. |
|
|
Тип: object. Шаблонный тип. Шаблон письма передается в запросе. |
|
|
Тип: array. Заголовки, которые применяются ко всем письмам в запросе.
|
|
|
Тип: object. Содержит шаблон письма:
Необходимо указать хотя бы один параметр: |
|
|
Тип: string. Данные по умолчанию, которые используются для заполнения шаблона. JSON-объект, сериализованный в строку. |
|
|
Тип: array. Список писем для отправки. В запросе должен быть хотя бы один элемент. |
|
|
Тип: object. Объект, который содержит адреса для доставки письма.
Для каждого элемента |
|
|
Тип: object. Данные, которые переопределяют содержимое письма для отдельного элемента |
|
|
Тип: object. Объект с данными для подстановки в шаблон отдельного письма. |
|
|
Тип: string. Данные для заполнения шаблона отдельного письма. JSON-объект, сериализованный в строку. Значения из |
|
|
Тип: array. Заголовки отдельного письма. Они дополняют или переопределяют заголовки из |
|
|
Тип: array. Метки отдельного письма. Они дополняют или переопределяют метки из |
Ограничения
В методе SendBulkEmail действуют ограничения:
- Максимальное количество элементов
BulkEmailEntriesв одном запросе — 50. - Максимальное суммарное количество получателей во всех элементах
BulkEmailEntries— 500. - Максимальный размер
TemplateContent.Subject,TemplateContent.TextиTemplateContent.Htmlсуммарно — 1 МБ. - Максимальное количество переменных в шаблоне — 50.
В шаблоне используется синтаксис Handlebars
Ответы
200 OK
{
"BulkEmailEntryResults": [
{
"Status": "SUCCESS",
"MessageId": "<идентификатор_письма>"
},
{
"Status": "INVALID_PARAMETER",
"Error": "<описание_ошибки>"
}
]
}
|
Параметр |
Описание |
|
|
Тип: array. Результаты отправки писем. Порядок элементов в ответе соответствует порядку элементов в |
|
|
Тип: string. Статус обработки отдельного письма. Если письмо принято к отправке, возвращается |
|
|
Тип: string. Уникальный идентификатор письма. Возвращается для писем со статусом |
|
|
Тип: string. Описание ошибки. Возвращается для писем, которые не были приняты к отправке. |
Если ошибка относится к запросу целиком, метод возвращает ошибку уровня запроса. Если ошибка относится только к отдельному элементу BulkEmailEntries, метод возвращает 200 OK, а ошибка указывается в соответствующем элементе BulkEmailEntryResults.
Ошибки
Для всех ошибок тело ответа представлено в одинаковом формате:
{
"Code": "<название_ошибки>",
"message": "<пояснение_к_ошибке>"
}
Название ошибки заимствуется из ее кода, например BadRequestException.
Возможные ошибки:
|
Код ошибки |
Описание |
|
|
В запросе неправильно указаны заголовки или параметры. |
|
|
Отправитель не входит в список разрешенных отправителей, которые указаны в настройках адреса. |
|
|
Возможность отправлять почту для сервисного аккаунта, от имени которого выполняется запрос, навсегда ограничена. |
|
|
Возможность отправлять почту для сервисного аккаунта, от имени которого выполняется запрос, временно ограничена. |
|
|
Письмо содержит некорректные данные. |
|
|
Адрес, с которого отправляется письмо, не верифицирован. |
|
|
Запрошенный ресурс не найден. |
|
|
При вызове запроса превышена квота. |
|
|
При вызове запроса превышен лимит. |