Subscription Management - 订阅管理

此功能只能使用 Amazon SES API ,不能在 Amazon SES 控制台中完成。

订阅者有不同的兴趣爱好,有些人可能不想收到所有主题的更新。为了向受众提供个性化体验并遵守电子邮件营销最佳实践, Amazon Simple Email Service (SES) 支持实现订阅管理。

设置 ListManagementOptions

要为我们的电子邮件启用订阅管理,我们需要在 SendEmail 操作请求中包含 ListManagementOptions 标头。此标头指定Contact List和主题名称,Amazon SES 使用这些信息在我们的电子邮件中启用退订链接。

运行以下 AWS CLI 命令发送电子邮件:

aws sesv2 send-email \
    --from-email-address sender@example.com \
    --destination '{"ToAddresses":["recipient@example.com"]}' \
    --content '{"Simple":{"Subject":{"Data":"Test email"},"Body":{"Text":{"Data":"This is a test email"},"Html":{"Data":"<html><body><p>This is a test email</p></body></html>"}}}}' \
    --list-management-options '{"ContactListName":"MyContactList", "TopicName":"MyTopic"}'

ListManagementOptions 部分,将 MyContactList 替换为我们在上节创建的Contact List名称(例如 AWSomeNewsletterContactList),将 TopicName 替换为上节创建的主题名称。

我们应该会收到一封测试电子邮件,目前只是一个简单的 HTML。

image-20240721133848027

添加退订页脚链接

要允许收件人退订我们的电子邮件,我们需要在电子邮件中包含退订页脚链接。我们可以使用 {{amazonSESUnsubscribeUrl}} 占位符在我们的电子邮件中添加退订 URL。

修改 AWS CLI --content 属性以包含占位符:

aws sesv2 send-email \
    --from-email-address sender@example.com \
    --destination '{"ToAddresses":["recipient@example.com"]}' \
    --content '{"Simple":{"Subject":{"Data":"Test email"},"Body":{"Text":{"Data":"This is a test email.\n\nTo unsubscribe, click {{amazonSESUnsubscribeUrl}}."},"Html":{"Data":"<html><body><p>This is a test email.</p><p>To unsubscribe, click <a href=\"{{amazonSESUnsubscribeUrl}}\">here</a>.</p></body></html>"}}}}' \
    --list-management-options '{"ContactListName":"MyContactList", "TopicName":"MyTopic"}'

同样,在 ListManagementOptions 部分,将 MyContactList 替换为我们在上节创建的Contact List名称(例如 AWSomeNewsletterContactList),将 TopicName 替换为上节创建的主题名称。

现在,检查我们的电子邮件并点击 Amazon SES 生成的退订链接。

image-20240721135522776

我们会被重定向到一个类似于下面的页面:

image-20240721135602827

假如我们只选择前三个,退订最后一个,然后提交:

image-20240721135648436

查看contact list:

aws sesv2 list-contacts --contact-list-name "AWSomeNewsletterContactList" --page-size 10 --region us-east-1 | jq

已经成功更新:

image-20240721135755883

结论

订阅管理是一个强大的工具,可以自动管理我们的电子邮件列表订阅。通过使用 ListManagementOptions 标头和 {{amazonSESUnsubscribeUrl}} 占位符,我们可以在我们的电子邮件中启用退订链接,并让收件人能够管理他们的电子邮件偏好。