📋
功能概览
Amazon SES 模板管理系统提供了完整的邮件模板生命周期管理功能:
创建模板
创建HTML和纯文本邮件模板
查看模板
查看模板详细信息和内容
编辑模板
修改现有模板的内容
删除模板
安全删除不需要的模板
批量发送
使用模板批量发送个性化邮件
发送跟踪
查看邮件发送状态和结果
1
准备 AWS 访问凭证
在开始使用之前,您需要准备有效的 AWS 访问凭证。
重要: 确保您的 AWS 账户已启用 Amazon SES 服务,并且具有相应的权限
所需权限:
ses:ListEmailTemplates- 查看模板列表ses:GetEmailTemplate- 获取模板详情ses:CreateEmailTemplate- 创建新模板ses:UpdateEmailTemplate- 更新模板ses:DeleteEmailTemplate- 删除模板ses:SendBulkTemplatedEmail- 发送模板邮件
提示: 建议使用 IAM 用户而不是根账户,并遵循最小权限原则
2
查看邮件模板列表
首先输入您的 AWS 访问凭证,然后查询现有的邮件模板。
// Amazon SES ListTemplates API 调用
aws sesv2 list-email-templates
// 限制返回数量
aws sesv2 list-email-templates --max-items 10
// 使用分页
aws sesv2 list-email-templates --max-items 10 --starting-token "your-token"
API 响应示例:
{
"TemplatesMetadata": [
{
"Name": "SpecialOffers",
"CreatedTimestamp": "2020-08-05T16:04:12.640Z"
},
{
"Name": "NewsAndUpdates",
"CreatedTimestamp": "2019-10-03T20:03:34.574Z"
}
]
}
提示: 可以勾选"记住密钥"选项,系统会安全地保存您的凭证30天
3
创建邮件模板
点击"➕ 添加模板"按钮创建新的邮件模板。模板支持HTML和纯文本两种格式。
Amazon SES 创建模板 API:
{
"TemplateName": "MyTemplate",
"TemplateContent": {
"Subject": "Greetings, {{name}}!",
"Text": "Dear {{name}},\r\nYour favorite animal is {{favoriteanimal}}.",
"Html": "Hello {{name}},Your favorite animal is {{favoriteanimal}}."
}
}
变量替换: 使用
{{变量名}} 语法定义可替换的变量,如 {{name}}、{{orderId}} 等
创建步骤:
- 输入模板名称(仅支持字母、数字、下划线和连字符)
- 设置邮件主题
- 编写HTML内容(支持变量替换)
- 编写纯文本内容(可选,建议提供)
- 点击"🚀 创建模板"完成创建
4
查看模板详情
点击模板列表中的"👁️ 查看"按钮,可以获取特定模板的详细信息。
// Amazon SES GetTemplate API 调用
aws sesv2 get-email-template --template-name TestMessage
// 或使用 AWS CLI JSON 格式
aws sesv2 get-email-template --cli-input-json '{
"TemplateName": "TestMessage"
}'
API 响应示例:
{
"Template": {
"TemplateName": "TestMessage",
"SubjectPart": "Amazon SES Test Message",
"TextPart": "Hello! This is the text part of the message.",
"HtmlPart": "Hello!This is the HTML part of the message."
}
}
提示: 模板详情包含完整的邮件内容,可以用于预览和验证模板设计
5
编辑和删除模板
在模板列表中,每个模板都提供了编辑和删除操作。
操作说明:
- ✏️ 编辑: 跳转到编辑页面,可以修改模板的主题和内容
- 🗑️ 删除: 永久删除模板(操作不可撤销)
Amazon SES 更新模板 API:
{
"Template": {
"TemplateName": "TestMessage",
"SubjectPart": "Amazon SES Test Message",
"TextPart": "Hello! This is the text part of the message.",
"HtmlPart": "This is the HTML part of the message."
}
}
注意: 删除模板是不可逆操作,请谨慎操作。建议在删除前备份重要模板
6
批量发送模板邮件
点击模板名称进入发送页面,可以使用模板批量发送个性化邮件。
发送配置:
- 发件人邮箱: 必须是在 Amazon SES 中验证过的邮箱地址
- 默认模板数据: 为所有收件人设置默认变量值
- 收件人列表: 添加收件人邮箱和个性化数据
Amazon SES 批量发送模板邮件 API:
// 使用 AWS CLI 批量发送模板邮件
aws sesv2 send-bulk-email --cli-input-json '{
"FromEmailAddress": "Sender Name ",
"DefaultContent": {
"Template": {
"TemplateName": "Preferences",
"TemplateData": "{\"meta\":{\"userId\":\"\"},\"contact\":{\"firstName\":\"Friend\",\"lastName\":\"\"},\"subscription\":[]}"
}
},
"Destinations": [
{
"Destination": {
"ToAddresses": ["anaya.iyengar@example.com"]
},
"ReplacementEmailContent": {
"Template": {
"TemplateData": "{\"meta\":{\"userId\":\"51806220607\"},\"contact\":{\"firstName\":\"Anaya\",\"lastName\":\"Iyengar\"},\"subscription\":[{\"interest\":\"Sports\"},{\"interest\":\"Travel\"},{\"interest\":\"Cooking\"}]}"
}
}
},
{
"Destination": {
"ToAddresses": ["shirley.rodriguez@example.com"]
},
"ReplacementEmailContent": {
"Template": {
"TemplateData": "{\"meta\":{\"userId\":\"1981624758263\"},\"contact\":{\"firstName\":\"Shirley\",\"lastName\":\"Rodriguez\"},\"subscription\":[{\"interest\":\"Technology\"},{\"interest\":\"Politics\"}]}"
}
}
}
]
}'
发件人验证: 确保发件人邮箱已在 Amazon SES 控制台中完成验证,否则邮件无法发送
7
查看发送结果
邮件发送完成后,系统会显示每个收件人的发送状态。
发送结果示例:
{
"success": true,
"message": "批量邮件发送完成",
"results": [
{
"email": "user1@example.com",
"status": "SUCCESS",
"messageId": "0000014a-f4d4-4f55-9c8a-example12345",
"errorMessage": null
},
{
"email": "invalid@example.com",
"status": "FAILED",
"messageId": null,
"errorMessage": "邮箱地址无效"
}
]
}
状态说明:
- SUCCESS: 邮件发送成功,已提交到 Amazon SES
- FAILED: 邮件发送失败,请检查错误信息
提示: 点击"📄 查看响应报文"按钮可以查看完整的 API 响应数据
💡
最佳实践建议
🔒 安全性
- 定期轮换 AWS 访问密钥
- 使用 IAM 角色而不是长期访问密钥(生产环境)
- 启用 MFA(多因素认证)保护 AWS 账户
📝 模板设计
- 同时提供 HTML 和纯文本版本,确保兼容性
- 使用语义化的变量名,如
{{customerName}}而不是{{x}} - 在模板中包含取消订阅链接(如适用)
- 测试模板在不同邮件客户端中的显示效果
📊 发送管理
- 监控发送配额,避免超出限制
- 处理退信和投诉,维护良好的发送声誉
- 使用适当的发送频率,避免被标记为垃圾邮件
- 保持收件人列表的清洁度,及时清理无效邮箱
合规提醒: 确保遵守相关的邮件营销法规,如 GDPR、CAN-SPAM Act 等
🔧
常见问题排除
❌ 模板创建失败
- 检查模板名称是否符合命名规范
- 确保 HTML 和文本内容不为空
- 验证 AWS 凭证是否有效
📧 邮件发送失败
- 确认发件人邮箱已在 SES 中验证
- 检查收件人邮箱格式是否正确
- 验证模板变量数据格式是否为有效 JSON
- 确认未超出发送配额限制
🔐 权限错误
- 检查 IAM 用户是否具有必要的 SES 权限
- 确认 AWS 区域设置正确
- 验证访问密钥是否已过期