2024/11/4(月) SESでインラインテンプレートの機能が実装されたのでID登録からインラインテンプレートを使用したメール送信テストを行ってみた。
aws.amazon.com
前提条件
実践!
1.SES ID登録
1-1.AWS - SES - ID
1-2.[ID の作成]
1-3.下記を選択
ID の詳細:
ID タイプ:ドメイン
※ドメイン:取得しているドメインでSESを利用する場合
Eメールアドレス:取得しているEメールアドレスでSESを利用する場合
ドメイン:Route53で取得したドメイン
デフォルト設定セットの割り当て:□
カスタム MAIL FROM ドメインの使用:□
ドメインの検証:
DKIM 署名キーの長さ:RSA_2048_BIT
DNS レコードの Route53 への発行:
有効化:✅
DKIM 署名:
有効化:✅
1-4.[ID の作成]
1-5.ID ステータスが検証済みになることを確認
※5分程度かかる
2.送信先メールアドレス登録
※サンドボックスを解除しないと不特定多数へ送信できないため、今回はサンドボックスを解除せず、送信先もID登録して送受信テストを行う
2-1.AWS - SES - ID
2-2.[ID の作成]
2-3.下記を選択
ID の詳細:
ID タイプ:Eメールアドレス
Eメールアドレス:送信先として使うEメールアドレス
2-4.[ID の作成]
2-5.設定したEメールアドレスに承認メールが届くため、承認用のURLをクリック
2-6.ID ステータスが検証済みになることを確認
3.メール送信テスト
3-1.ローカルにテンプレートJSONを作成する
※今までは事前にテンプレートをSESに登録しておく必要があったが、今回のアップデートでローカルのJSONファイルを指定できるようなった。
※ChatGPTで作ってもらったのでよくわからないものも入っている、、、
{ "FromEmailAddress": "sender@<ID登録したドメイン>", "Destination": { "ToAddresses": ["<送信先で登録したEメールアドレス>"] }, "Content": { "Template": { "TemplateData": "{\"name\":\"Recipient Name\",\"favoriteanimal\":\"Dolphin\"}", "Subject": "Hello, {{name}}!", "Html": "<h1>Hello {{name}},</h1><p>Your favorite animal is {{favoriteanimal}}.</p>", "Text": "Hello {{name}},\nYour favorite animal is {{favoriteanimal}}." } } }
3-2.コマンドプロンプトを起動し、下記を実行
# aws sesv2 send-email --cli-input-json file://<JSONファイルパス>
C:\U>aws sesv2 send-email --cli-input-json file://C:\template.json --profile testvault { "MessageId": "01060193575eaf0f-6e25243c-c82f-4dff-87d4-f64c38278b54-000000" }
2-3.メールが受信されたことを確認
感想
新機能も追わなきゃいけないし、資格も取らなきゃいけないし、なにがおもしろいのやら、、、