SendTemplatedEmail オペレーションを使用している Amazon SES E メールの配信が失敗する理由を確認するには、どうすれば良いですか?

最終更新日: 2019 年 4 月 3 日

私は、Amazon Simple Email Service (Amazon SES) アカウントからメッセージを送信するために SendTemplatedEmail オペレーションを使用しています。しかし、一部の E メールは配信されません。失敗した理由を見つける方法はありますか?

解決方法

E メールテンプレートを使用すると、Amazon SES は、テンプレートに必要な変数が送信したテンプレートデータに含まれていることを検証します。テンプレートデータに無効な変数があるか、変数が存在しない場合、Amazon SES は E メールを配信できません。これはレンダリング失敗といいます。

SendTemplatedEmail オペレーションを使用して E メールが配信されなかった理由を確認するには、Amazon Simple Notification Service (Amazon SNS) を使用してレンダリング失敗イベント通知を設定します。

レンダリング失敗イベント通知を設定すると、今後、テンプレート E メールの配信が失敗したときに Amazon SNS 通知を受け取ります。通知には、テンプレートデータのどの部分がレンダリング失敗につながったかに関する情報が含まれています。

たとえば、このテンプレートには変数の namefavoritecolor が含まれています。

{
  "Template": {
    "TemplateName": "ExampleTemplate",
    "SubjectPart": "Hello, {{name}}!",
    "HtmlPart": "<h1>Hello {{name}},</h1><p>Your favorite color is {{favoritecolor}}.</p>",
    "TextPart": "Dear {{name}},\r\nYour favorite color is {{favoritecolor}}."
  }
}

次のテンプレートデータを送信した場合、favoritenumber がテンプレートの有効な変数ではないため、Amazon SES は E メールを配信しません。

"TemplateData": "{ \"name\":\"Jane\", \"favoritenumber\": \"10\" }"

レンダリング失敗イベント通知を使用すると、次のような失敗通知を受け取ります。

{
    "eventType": "Rendering Failure",
    "mail": {
        "timestamp": "2019-09-09T04:38:19.788Z",
        "source": "sender@example.com",
        "sourceArn": "arn:aws:ses:us-west-2:1234567890123:identity/sender@example.com",
        "sendingAccountId": "1234567890123",
        "messageId": "01010161a734a0eb-a706827a-3bda-490f-8eaa-63cf4b00d10c-000000",
        "destination": [
            "receiver@example.com"
        ],
        "headersTruncated": false,
        "tags": {
            "ses:configuration-set": [
                "RenderFailure"
            ]
        }
    },
    "failure": {
        "errorMessage": "Attribute 'favoritenumber' is not present in the rendering data.",
        "templateName": "ExampleTemplate"
    }
}

レンダリング失敗を回避するには、次のガイドラインに従ってください。

  • テンプレートデータの変数名の大文字と小文字を確認してください。テンプレートの変数名は大文字と小文字を区別します。
  • テンプレートデータにテンプレートの変数がすべて含まれていることを確認してください。

このページは役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合