Amazon SES の E メール送信エラー - Amazon Simple Email Service Classic

Amazon SES Classic のユーザーガイドです。更新プログラムや新機能は、推奨している新しい Amazon SES デベロッパーガイドに記述されています。

Amazon SES の E メール送信エラー

このトピックでは、Amazon SES 経由で E メールを送信するときに発生する可能性がある E メール送信に固有のエラーのタイプについて説明します。Amazon SES 経由でメールを送信しようとしたときに Amazon SES の呼び出しに失敗すると、Amazon SES からアプリケーションにエラーメッセージが返され、E メールは送信されません。このエラーメッセージがどのように表示されるかは、Amazon SES を呼び出す方法によって異なります。

  • Amazon SES API を直接呼び出す場合は、Query アクションによってエラーが返されます。エラーは「MessageRejected」あるいは、Amazon Simple Email Service API リファレンスの「一般的なエラー」トピック内で指定されたエラーの一つである可能性があります。

  • 例外をサポートするプログラミング言語を使用する AWS SDK を使用して Amazon SES を呼び出した場合、Amazon SES は例外をスローします。例外のタイプは、SDK とエラーによって異なります。例えば、Amazon SES MessageRejectedException の例外 (実際の名前は SDK によって異なります) または一般的な AWS の例外がスローされます。例外のタイプにかかわらず、例外のエラータイプとエラーメッセージからより多くの情報が得られます。

  • SMTP インターフェイスを介して Amazon SES を呼び出した場合、エラーがどのように示されるかはアプリケーションによって異なります。アプリケーションによって、特定のエラーメッセージが表示される場合もあれば、表示されない場合もあります。Amazon SES から返される SMTP 応答コードのリストについては、「Amazon SES から返される SMTP 応答コード」を参照してください。

注記

E メール送信のための Amazon SES 呼び出しが失敗した場合、対象の E メールについては課金されません。

E メールを送信しようとしたときに Amazon SES がエラーを返す原因となる、Amazon SES に固有の問題のタイプを次に示します。これらのエラーは、Amazon Simple Email Service API Reference の「一般的なエラー」トピックに指定されている MalformedQueryString などの一般的な AWS エラーとは別のエラーです。

  • E メールアドレスが検証されていません。以下のアイデンティティが、リージョン内でチェックできませんでしたリージョン: identity1identity2identity3。- Amazon SES で検証されていない E メールアドレスまたはドメインから E メールを送信しようとしています。このエラーは、「From」、「Source」、「Sender」、または「Return-Path」のアドレスに該当する場合があります。アカウントが Amazon SES サンドボックスにまだある場合は、Amazon SES のメールボックスシミュレーターから提供されているアドレスを除く、すべての受信者のアドレスも検証する必要があります。Amazon SES が失敗した ID をすべて表示できない場合は、エラーメッセージが省略符号で終了します。

    注記

    Amazon SES は複数の AWS リージョンにエンドポイントを持ち、E メールアドレスの検証ステータスは AWS のリージョンごとに別個に扱われます。使用する AWS リージョンの各送信者について、検証プロセスを完了する必要があります。

  • Account is paused - アカウントによる E メール送信機能を一時停止します。Amazon SES コンソールには引き続きアクセスでき、ほとんどの操作を実行できます。ただし、E メールを送信しようとした場合、このメッセージが表示されます。

    アカウントの E メール送信機能を一時停止する場合、 AWS アカウントに関連付けられている E メールアドレスに通知を送信します。詳細については、「Amazon SES 送信レビュープロセスに関するよくある質問」を参照してください。

  • スロットリング - アプリケーションが 1 秒あたりに送信しようとしているメッセージが多すぎるか、過去 24 時間に送信した E メールが多すぎる可能性があります。このような場合は、エラーメッセージは次の例のようになります。

    • Daily message quota exceeded - 24 時間の期間に送信することが許可されたメッセージの最大数に達しました。日次クォータを超過した場合、次の 24 時間の期間にならないとそれ以上 E メールを送信できません。

    • Maximum sending rate exceeded - 送信を試みた 1 秒あたりの E メールの件数が、許可された最大送信レートを超えました。送信レートを超過した場合、E メールの送信を継続できますが、送信レートを引き下げる必要があります。詳細については、「AWS メッセージングとターゲティングブログ」の「"Throttling – Maximum sending rate exceeded (スロットリング – 最大送信レートの超過)" エラーの対処法」を参照してください。

    • Sigv2 SMTP の最大送信速度を超過しました — 2019 年 1 月 10 日より前に作成された SMTP 認証情報を使用してメッセージを送信しようとしています。SMTP 認証情報は古いバージョンの AWS 署名を使用して作成されています。セキュリティのため、この日付よりも前に作成した認証情報を削除して、新しい認証情報に置き換える必要があります。古い認証情報は、IAM コンソールを使用して削除できます。認証情報ファイルの作成の詳細については、「Amazon SES SMTP 認証情報を取得」を参照してください。

    送信アクティビティを定期的に監視して、送信クォータにどれだけ近づいているかを確認する必要があります。詳細については、「Amazon SES 送信クォータのモニタリング」を参照してください。送信クォータに関する一般的な情報については、「Amazon SES 送信クォータの管理」を参照してください。送信クォータを引き上げる方法については、「Amazon SES 送信クォータの引き上げ」を参照してください。

    重要

    スロットリングエラーを説明するエラーテキストが日次クォータまたは最大送信レートの超過に関係ない場合は、システム全体の問題が原因で送信機能が制限されている可能性があります。サービスステータスについては、「AWS Service Health Dashboard を参照してください。

  • There are no recipients specified – 受信者が指定されていません。

  • There are non-ASCII characters in the email address - E メールアドレス文字列は 7 ビット ASCII である必要があります。送信先または送信元の E メールアドレス内で、ドメインの部分に Unicode 文字が含まれる場合は、Punycode を使用してドメインをエンコードする必要があります。Punycode は E メールアドレスのローカル部分 (@ 記号の前の部分) では許可されていません。また、「差出人」名にも許可されていません。「差出人」名に Unicode 文字を使用する場合は、Amazon SES API を使用して raw E メールを送信する に説明されているとおりに MIME encoded-word 構文を使用して「差出人」名をエンコードする必要があります。Punycode の詳細については、RFC 3492 を参照してください。

  • Mail FROM domain is not verified - Amazon SES は、指定された MAIL FROM ドメインを使用するために必要な MX レコードを読み取ることができませんでした。カスタム MAIL FROM ドメインの設定については、カスタムの MAIL FROM ドメインの設定 を参照してください。

  • Configuration set does not exist - 指定した設定セットが存在しません。設定セットは、メール送信イベントの発行に使用するオプションのパラメータです。詳細については、「Amazon SES イベント発行を使用して E メール送信をモニタリングする」を参照してください。