SendGridで受信したメールの内容をメールクライアントで確認する
- 2018年5月22日
- by 有田繭子
- Category: 技術ネタ
はじめに
SendGridサポートチームの有田です。
SendGridにメールボックス機能はありませんが、メール受信に相当するParse Webhookという機能があります。この機能を使うと、指定したドメイン宛てのメールをSendGridで受信し、それを任意のURLにPOSTすることができます。ただし、POST先の仕組み(下図の「Webhookの受信アプリケーション」)をユーザ自身が準備する必要があり、技術的なハードルが少し高いかもしれません。Parse Webhookを使ってみたいけれど、受信用のサーバを準備したりアプリを実装したりするのは面倒…という方のために、SendGridとZapierを連携して、SendGridで受信したメールをGmailなどのメールクライアントで確認する方法を紹介します。
前提
- SendGrid・Zapier・Gmailのアカウントを持っていること
- SendGridでメールを受信するドメインのDomain Authentication設定が完了していること
Zapierとは
Zapierは複数のWebサービスを連携させるためのサービスです。連携可能なサービスにはSendGridも含まれます。今回は、
- Parse WebhookのPOST先として利用する
- Parse WebhookのPOSTの受信をトリガとして、その内容を指定したメールアドレス宛てに送信する
という2つの目的のためにZapierを利用します。
設定の手順
今回実現するメール受信の流れは以下の通りです。
設定は大きく分けて以下の4ステップで完了します。
【ステップ1】ZapierでParse WebhookのPOSTを受信するための設定
【ステップ2】SendGridのParse Webhook設定
【ステップ3】テストメールの送信
【ステップ4】Zapierから指定したメールアドレスにメールを送信するための設定
以降で、それぞれの手順を説明します。
【ステップ1】ZapierでParse WebhookのPOSTを受信するための設定
- Zapierにログインし、ダッシュボードの「Make a Zap!」ボタンから新しいZap(一連のサービス連携の単位のこと)を作成します。
- まずは「Trigger(処理の契機となるイベント)」の設定です。Triggerとして「Webhooks」の「Catch Hook」を選択します。
- 「Save + Continue」ボタンから進むと、「サンプルリクエストを送信してください」というメッセージと、POST先URLが表示されます。ここまででZapierの設定は一旦完了です。画面はこのままにしておきましょう。
【ステップ2】SendGridのParse Webhook設定
- SendGridにログインし、Settings > Inbound Parseの画面を開きます。右上の「Add Host & URL」ボタンをクリックし、設定画面を開きます。
- 受信用のサブドメイン.ドメインを選択し、Destination URLに【ステップ1】の3. で表示されたPOST先URLを入力します。「Add」ボタンをクリックしたらSendGridの設定は完了です。
<注意>
Parse Webhook設定で入力したサブドメイン.ドメイン宛てのメールは、すべてSendGridを経由するようになります。すでにメール受信に利用しているドメインを設定すると、既存のメールサーバにはメール配信されなくなりますので、ご注意ください。必要に応じてサブドメインを利用してください。
例)@kke.co.jp宛てのメールを既存のメールサーバで受信している場合、Parse Webhook設定でサブドメイン”hoge“を付与すると、@kke.co.jp宛てのメールは既存のメールサーバで、@hoge.kke.co.jp宛てのメールはSendGridで受信されるようになります。
- メールを受信するドメインのDNSにMXレコードを登録します。
例)Parse Webhook設定のサブドメイン.ドメインでhoge.kke.co.jpを指定した場合、hoge.kke.co.jpのMXレコードが必要です。
【ステップ3】テストメールの送信
- ご利用のメールクライアントから、Parse Webhookを設定したドメインのメールアドレス宛てにメールを送ります。
例)Parse Webhook設定のサブドメイン.ドメインで@hoge.kke.co.jpを設定した場合、test@hoge.kke.co.jp といったメールアドレス宛てにメールを送ります。一般的なメールアドレスの形式であれば、ローカルパート(@より前の“test”の部分)は自由に指定していただいて構いません。 - Zapierの画面(【ステップ1】の3.)に戻り、「Ok, I did this(テスト用のリクエストを送信しました)」ボタンをクリックします。Zapierで正しくリクエストを受信できていれば、送信したテストメールの内容が表示されます。表示内容を確認したら、「Continue」ボタンから次のステップに進みます。
【ステップ4】Zapierから指定したメールアドレスにメールを送信するための設定
- 【ステップ1】で「Trigger」を設定したので、次に「Action(Triggerを契機に実行する処理)」を設定します。Action Appで「Gmail」の「Send Email」を選択します。
- 「Connect an Account」ボタンから、メール送信に利用するGmailのアカウントを登録します。正しく設定できたら、画面にGmailのアカウント情報が表示されます。
- 「Continue」ボタンから進むと、「Set up Gmail Email(送信するメールの設定)」の画面が表示されます。【ステップ3】のテストメールの送信が完了していれば、Subject(件名)やBody(本文)などの項目に、Parse WebhookでPOSTした内容を指定できる状態になっています。送信する内容を指定したら、設定は完了です。
※メールの宛先はToの項目で指定します。
※上記の例では、送信するメールのSubjectとBodyに、Parse WebhookでPOSTしたメールの件名と本文を指定しました。
受信結果の確認
作成したZapを「ON」にします。ご利用のメールクライアントから、Parse Webhookを設定したドメインのメールアドレス宛て(例:test@hoge.kke.co.jp)にメールを送信してみましょう。
送信したメールの内容をメールクライアント(今回はGmailを利用)で確認することができました。
おわりに
今回紹介したように、Zapierのようなツールを利用することで、簡単にParse Webhookを受信する仕組みを準備することができます。みなさんもぜひお試しください。