Шаблонизация письма
Статья создана
Обновлена 11 марта 2025 г.
Чтобы отправлять письма с заполненным шаблоном, передайте шаблон и данные, которые нужно подставить в него, с помощью AWS CLI или API.
Перед началом работы
- Создайте сервисный аккаунт в том же каталоге, в котором находится адрес. Если вы создадите сервисный аккаунт и адрес в разных каталогах, при попытке отправить письмо возникнет ошибка.
- Назначьте сервисному аккаунту роль
postbox.sender
. - Создайте статический ключ доступа. Надежно сохраните идентификатор и секретный ключ. После того как вы закроете окно, параметры секретного ключа станут недоступны.
Отправка письма через AWS CLI
-
Подготовьте шаблон письма. Например, создайте файл
message.json
со следующим содержимым:{ "FromEmailAddress": "Alice <alice@example.com>", "Destination": { "ToAddresses": [ "bob@example.com", "Charlie <charlie@example.com>" ] }, "Content": { "Template": { "Headers": [ { "Name": "List-Unsubscribe", "Value": "<https://example.com/unsubscribe?user_id=sercet_hash>" }, { "Name": "List-Unsubscribe-Post", "Value": "List-Unsubscribe=One-Click" } ], "TemplateContent": { "Subject": "Greetings, {{name}}!", "Text": "Dear {{name}},\r\nYour favorite animal is {{favoriteanimal}}.", "Html": "<h1>Hello {{name}},</h1><p>Your favorite animal is {{favoriteanimal}}.</p>" }, "TemplateData": "{ \"name\":\"Bob\", \"favoriteanimal\": \"bobcat\" }" } }, "ConfigurationSetName": "ConfigSet" }
-
Чтобы отправить письмо, выполните команду:
aws sesv2 send-email --cli-input-json file://message.json \ --endpoint-url https://postbox.cloud.yandex.net
Примечание
В шаблоне используется синтаксис Handlebars
. При передаче шаблона в запросе можно использовать только простые подстановки. Циклы, условия и другие конструкции не поддерживаются.