ダッシュボードで確認する
メールを送信したはずなのに受信トレイに届かないときは、まず何が起きているかを把握しましょう。Email Logsは、送信したメールの状況を把握するのに便利なツールです。
Email Logsで確認できるイベントタイプ
- Received:SendGridによるメール送信リクエストの受信
- Processed:送信リクエストの処理開始
- Delivered:宛先サーバによるメール受信
- Bounced:恒久的なエラーによる、宛先サーバからのメール受信拒否
- Deferred:一時的なエラーによる、宛先サーバからのメール受信制限(一時拒否)
- Blocked:一時的なエラーによる、宛先サーバからのメール受信拒否
- Dropped:送信リクエストの破棄(バウンスリストや配信停止リストに掲載されていた、など)
- Spam Report:受信者からの迷惑メール報告
- Unsubscribe、Group Unsubscribe、Group Resubscribe:配信停止または配信停止の解除
- Open:HTMLメールの開封
- Click:リンクのクリック
各イベントのさらに詳しい説明はユーザマニュアルを参照してください。

Email Logsの基本的な使い方
Email LogsはダッシュボードのActivity > Email Logsからアクセスできます。メールの送信状況が時系列に降順(上が新しく、下が古い)で表示されます。
Email Logsでは次の情報を確認できます。
- Processed At
SendGridがメール送信処理を開始した時刻。右上のTimezoneで表示時刻のタイムゾーンを変更できます。 日本時間で表示する場合は「UTC+09:00 - Osaka, Sapporo, Tokyo」を選択してください。 - Message ID
SendGridがメールを一意に識別するためのID - Recipient Email
宛先メールアドレス - Subject Line
メールの件名 - Status
メールの送信状況(イベント)- Processed、Delivered、Deferred、Dropped、Bounced、Blocked
- Response
宛先サーバから返されたレスポンス

データを検索する
Search欄に宛先メールアドレスを入力してEnterを押すと、指定したメールアドレスとの完全一致で表示データを絞り込むことができます。

また、Filtersではその他の項目での絞り込みが可能です。
メールの件名(Subject)、イベント(Status)などを検索条件に指定できます。指定可能なフィルタはこちらを参照してください。

送信日時で絞り込みたい場合、FiltersのDateをクリックして、日付範囲を指定してください。Customを選択すると直近30日以内の日付をカレンダーで指定できます。

個々のメールの配信状況を把握する
一覧から各行のMessage IDのリンクを選択すると、Email Detailsが表示されます。Event Historyではメールの配信状況(発生したイベントの情報)を時系列で確認できます。また、各イベントのView detailsをクリックすると、そのイベントの詳細情報をJSON形式で参照できます。

よくあるケース別のEvent Historyの見方
SendGridに送信リクエストが届いていることを確認する
ReceivedイベントはSendGridがメールの送信リクエストを受け付けたことを示します。

メールの送信リクエストを送ったにも関わらずReceivedイベントが発生していない場合、リクエストは受け付けられていません。例えば次のような可能性が考えられます。
- タイムアウト、通信エラーなどが発生している
- 認証に失敗している
- リクエスト内容に問題がある
御社システムのログで送信リクエストに対する応答内容を確認することで、原因など詳細な情報が確認できます。
SendGridが送信処理を開始したことを確認する
ProcessedイベントはSendGridがメールの送信リクエストを受け付けた(Received)後、送信処理を開始したことを示します。

Processedイベントが発生していない場合、SendGrid側の判断で送信リクエストが破棄された可能性が考えられます。Receivedイベントの後にDropイベントが発生している場合は、「メールがDrop(破棄)される」をご確認ください。
メールが宛先サーバに届いていることを確認する
Deliveredイベントは宛先サーバがメールを正常に受け付けた(SMTPの応答コード250)ことを示します。

Deliveredイベントが発生しているのに受信トレイに届かない場合、次の可能性が考えられます。
- 迷惑メールフォルダに振り分けられている
- 受信側の判断によりフィルタリングされたり、破棄されている
- 宛先側の事情により受信トレイに届くのに時間がかかっている
メールが遅延して届く
メールが遅延して届いた場合、宛先サーバから一時的なエラー(400番台のエラーコード)が返され、Deferredイベントが発生していた可能性があります。このときSendGridは最長72時間再送を繰り返し、エラーが解消していればメールは宛先サーバに受け付けられてDeliveredイベントが発生します。一方、再送を続けても受け付けられなかった場合は、最終的にBlockイベントが発生します(Event HistoryのタイムラインではBlocked、EVENTではBounceと表示されます)。
400番台のエラーコードが返される原因には様々なものがありますが、代表的なものとしてスロットリング(送信量の急増により宛先サーバ側の制限に抵触し、一時的に拒否される状態)が挙げられます。スロットリングを未然に防ぐための対策については、こちらをご確認ください。

バウンスする
Bounceイベントは存在しない宛先に送信した場合などに発生します。原因に応じて個別に対処する必要があります。詳しい原因はEvent HistoryのView detailsから確認できます。

メールがDrop(破棄)される
Dropイベントは、SendGrid側で送信できる条件を満たしていないと判断された場合に発生します。メールは送信されず破棄されます。詳しい原因はEvent HistoryのView detailsで確認してください。
Dropは例えば次のようなケースで発生します。
- 配信停止リストに掲載されている宛先に送信しようとした
- バウンスリストに掲載されている宛先に送信しようとした
- SMTP API(X-SMTPAPI)の内容に問題があった

制限事項
イベントの保存期間はメール送信から30日間で、一度に表示できる件数は最大1,000件です。保存期間内のイベントが一覧に全て表示されないときは、Filtersを指定して表示対象を絞り込んでください。
保存期間よりも古いイベントを確認したい場合は、ご自身で用意した任意の環境にイベントデータをPOSTできるEvent Webhookの利用をご検討ください。設定方法は「Event Webhookで確認する」を参照してください。