インフラ

Sendgridでメールのワンクリック配信停止をやってみた

こんにちは、ちゃりおです。

突然ですが、メルマガの配信停止ってめちゃくちゃ面倒じゃないですか。

  • メール内の配信停止ボタンがどこだかわからない
  • ログイン必須(ログインパスワード覚えていない)
  • ログインしても、配信停止の設定までなかなかたどり着けない

エンジニアとしても、配信停止は簡単にしてほしいものです。

最近、メール配信サービスで有名なSendgridのセミナーに行きました。
セミナー内で簡単にメール配信を停止する方法を教えてもらったので、共有します。

ちゃりお
ちゃりお
ワンクリックでメールを配信停止します!

Contents

Sendgridとは

SendGridは、簡単かつ確実にメール配信を行うためのクラウドサービスです。 到達率を高めるための送信ドメイン認証への対応、ビジネスの成長に合わせ柔軟に拡張できるスケーラビリティ、配信状況や開封、クリックなどのリアルタイム分析機能など、メール配信に必要な様々な機能を提供します。

公式サイトより引用

一言でいうと、メール配信のクラウドサービスです。
AWSのSESとかMailChimpとかと同じ感じです。

メールの配信停止のあるべき姿

Sendgridのベストプラクティスから抜粋します。

  • ログインを必須にしない。
  • 複数回のクリックが必要になると面倒に感じるので、シンプルに1クリックで完了させる。
  • 配信停止リクエストを受け取ったら、すぐに配信をやめる。時間をあけるのはNG。
  • 配信停止の意志確認をするためのメールを送信しない。(配信停止を希望している人に対して別のメールを送ると、不快に思われる)

Sendgrid 配信停止 ベストプラクティス

配信停止が面倒で迷惑メールとして報告されるより、簡単に配信停止できるほういいです。

迷惑メール報告されると、送信元の信頼性が下がり他のユーザへのメールも迷惑メールフォルダに振り分けられやすくなります。

メール送っても、見られなければ意味ないですよね。

Sendgridでメールのワンクリック配信停止を実装してみる

  • Sendgridアカウント
  • メールアドレス

実際に試す場合は、上記を用意しておいてください。

Sendgridダッシュボードにログイン

サブユーザの場合だと、日本語サイトからログインできないので英語サイトのリンクも張っておきます。
APIのリファレンスも開いておいてください。

日本語サイト: https://sendgrid.kke.co.jp/app?p=login.index
英語サイト: https://app.sendgrid.com/lgoin

APIリファレンス: https://sendgrid.com/docs/API_Reference/api_v3.html

APIキーを作成しておく

ログインしたら、Sendgridのダッシュボードから
Setting>API Keys>Create API Keyの順に選択してください。
権限は以下の通りにしてください

  • Restricted Access
  • MailSend: FullAccess
  • Suppressions: ReadAccess

画面の通りに操作すると、API keyが表示されます。どこかに保存しておいてくだいさい。

Unsubscribeグループの作成

Sendgridのダッシュボードで配信停止に必要な設定をします。

サイドバー「Suppressions」>「Unsubscribe Groups」>「Create New Group」を選択します

下記の画面が表示されるので、「GroupName」「GroupDescription」は任意の値をいれておいてください。
「Make default group」にチェックを入れて、「Save」を選択します。

SendGrid-3

下記のように表示されます。「GROUP ID」の4桁の数字は後ほど使います。

SendGrid-4

メール送信してみる

配信停止のリンクを付けたメールを送信してみます。
APIリファレンスの方に移動してくだしさい。

サイドバーから、「MAIL SEND」を選択します。
スクロールすると、「Try it out」というのがあるので、選択します。

下記のコードを一部書き換えて、貼り付けてください。

  • 「”to”: [{“email”: “hoge@example.com”}]」を自分のメールアドレスに書き換える
  • 「”group_id”: 0000」の「0000」の部分を「GROUP ID」の数字に書き換える。

「Send Request」を押した際に「202」が表示されていれば、送信が成功しています。

SendGrid_API_v3_-_SendGrid_Documentation___SendGrid

配信停止してみる

メールがこんな感じで来るので、「配信停止はこちら」をクリックします。

メール件名

すると、以下の画面に飛びます。これで配信停止は完了です。

Unsubscribe_Preferences-2

ダッシュボードの「Suppressions」>「Group Unsubscribes」で配信停止されたメールアドレスが表示されます。

SendGrid-5

この状態で、もう一度メール送信しても配信されないです。
もう一度配信したい場合は、「Group Unsubscribes」のリストから削除する必要があります。

まとめ

今回は、Sendgridの機能を使ってメールの配信停止をやってみました。

Sendgridで弾いているので宛先には届きませんが、アプリケーション側でも該当の宛先に送らないようにしないとメールの送信数はカウントされるので注意が必要です。

Amazonで「メール」についてみてみる!!

現役インフラエンジニアが選ぶUdemyインフラ系のおすすめコース3選動画学習プラットフォームUdemyのインフラ系おすすめコースを厳選しました。どのコースも基礎から学べるので、インフラ経験が浅い人にもおすすめです。...
新人〜中堅におすすめ インフラエンジニアの教科書をよんでみた
新人〜中堅におすすめ「インフラエンジニアの教科書」を読んでみた3年目インフラエンジニアのちゃりおです。 今回は、こちらの本を紹介します。 インフラエンジニアに必要な知識が幅広くまとまっていて、勉強...
aws
これからAWSを勉強する人へ 〜AWSを勉強する3つのメリット〜インフラって範囲が広くて、「何を勉強すればいいか」わからないですよね。 個人的には、AWSを勉強したのが一番役に立っています。 今回は...