Airtableの宛先リストにノーコードで一斉送信する方法

Airtableの宛先リストにノーコードで一斉送信する方法

近年ノーコード・ローコードというキーワードが注目されていますが、リレーショナルデータベースのノーコードツールとして有名なのがAirtableです。ExcelやGoogle スプレッドシートの感覚でデータベースを扱えるサービスで、活用している方も多いのではないでしょうか。今回は、Webサービスを連携させてワークフローを自動化するiPaaS (Integration Platform as a Service) の一つであるIntegromatを用いて、ノーコードでAirtableのリスト内の宛先にメールを一斉送信する方法を紹介します。

1. Airtableで宛先リストの作成

まず、メールを送信する宛先のリストをAirtableで作成しましょう。Airtableのアカウントさえあれば、Excelのような直感的な操作でリストを作成できるので、詳しく解説する必要はないかと思います。今回は「SendGrid送信リスト」という名前でBase(Excelで言うところの一つのファイル)を作成し、その中のTable(Excelのシートに相当)に以下のような簡単なリストを用意しました。メール送信には、「名前」カラムと「メールアドレス」カラムの情報を利用します。

Airtableで宛先リストの作成

また、あとで利用するので、AirtableのAPIキーをアカウントページで確認し、どこかにメモしておきましょう。

AirtableのAPIキーをアカウントページで確認

2. SendGridのAPIキーの作成

次にSendGridでメール送信するために必要なAPIキーを作成します。手順の詳細はドキュメントをご覧ください。今回はメール送信さえできれば良いので、API Key PermissionsをRestricted Accessにして、Mail SendをFull Accessに設定するだけでもOKです(下図)。作成したSendGridのAPIキー(SGから始まる文字列)は、Airtableと同様どこかにメモしておきましょう。

SendGridのAPIキーの作成

3. Integromatでメール送信のシナリオの作成

最後に、IntegromatでAirtableとSendGridを連携させるScenario(ワークフロー)を作成します。Integromatにサインアップして、「Create a new scenario」からワークフローを新規作成します。

「Create a new scenario」からワークフローを新規作成

画面中央に表示される大きなプラスマークをクリックして「Airtable」を検索しましょう。Airtableがヒットしたら、クリックします。

画面中央に表示される大きなプラスマークをクリックして「Airtable」を検索

するとAirtableを使ってどんな操作を行うか一覧表示されます。今回は「Search Records」を選びます。

「Search Records」を選択

次に、自分のAirtableアカウントとの紐付けを行います。AirtableのAPIキーを入力すると、アカウント内のBaseが読み込まれ、Integromat側で選択できるようになります。

自分のAirtableアカウントとの紐付け

Baseとして今回作成した「SendGrid送信リスト」を、Tableとして「Table 1」をそれぞれプルダウンから選択します。

Baseとして今回作成した「SendGrid送信リスト」を、Tableとして「Table 1」をそれぞれプルダウンから選択

Airtableの設定はこれで完了です。次にAirtableの連携先として、SendGridを検索して選択します。

Airtableの連携先として、SendGridを検索して選択

利用する機能として、「Send an Email」を選びましょう。

利用する機能として、「Send an Email」を選択

次に、Airtableと同様、アカウント紐付けのためにAPIキーを入力します。

アカウント紐付けのためにAPIキーを入力

ここまできたら、送信するメールを構築します。設定が必要な項目は一覧で表示されるので、直感的に操作できます。まず、「From」に送信者名と送信元メールアドレスを設定します。

「From」に送信者名と送信元メールアドレスを設定

次に「Send To」に宛先メールアドレスと名前を設定します。入力しようとすると、下の図のようにAirtableの各カラムの値が候補として表示されるので、「Email address」欄にAirtableの「メールアドレス」カラムを、「Name」欄にAirtableの「名前」カラムを選択します。

「Send To」に宛先メールアドレスと名前を設定

最後に、メールの中身を作っていきます。単純なテキストメールを作成してみましょう。以下のように、「Use SendGrid Transactional template?」はNoにして、SubjectとContentに適当な文字を入力します。Content TypeはPlaintextにします。

メールの中身

「OK」ボタンを押してSendGridの設定を完了させたら、早速メール送信を試してみましょう。Integromat操作画面の左下の「Run once」という再生ボタンを押して、受信ボックスを確認します。以下のようなメールがちゃんと届いていたら、成功です!

受信ボックスに届くメール

テキストメールだと味気ないという方は、SendGridのDynamic TemplateでHTMLメールのテンプレートを作成して送信してみましょう。まず、SendGridダッシュボードメニューの「Email API」の中から「Dynamic Template」を選択し、テンプレートを作成します。テンプレートを作成する際は、自分で一から作ることもできますが、SendGridが用意しているテンプレートを選択して編集することもできます。
今回は、メール本文と題名に受信者の名前が挿入されるようにしてみましょう。下のように、該当する箇所に置換タグ{{name}}を配置しておきます。この部分が受信者の名前に置き換わります。

Dynamic TemplateでHTMLメールのテンプレートを作成

テンプレートをSaveしたら、テンプレート一覧画面に戻り、”d-”から始まるTemplate IDを確認してメモしておきましょう。

”d-”から始まるTemplate IDを確認してメモしておく

Integromatの画面に戻り、メールの設定を少し変更しましょう。FromやSend Toの設定は同じにしたまま、「Use SendGrid Transactional template?」をYesにして、上のTemplate IDを入力します。次に置換タグの設定を行うため、「Map JSON or fill Keys and Values」欄で「Keys & Values」を選択します。その下のDynamic Template DataのAdd itemをクリックし、下の図のようにKeyに「name」を入力、ValueにAirtableの「名前」カラムを選択します。最後にContent TypeにHTMLを、Contentに適当な文字を入力します(このContent欄の中身はテンプレートに置き換わって受信者には届かないので、なんでもOKです)。

メールの設定を変更

先ほどと同様、OKボタンでSendGridの設定を完了し、「Run once」すると、メールが届くはずです。

受信ボックスに届くHTMLメール

きちんと名前が置き換わって届きました!

おわりに

いかがだったでしょうか?SendGridのAPIを知らなくても、画面上で設定していくだけでAirtableのリストに一斉送信することができました。実はAirtableの有料プランではSendGridプラグインが使えるのですが、無料プランの範囲内でSendGridを簡単に活用する方法としてIntegromatとの連携を紹介しました。今回は単に一回送信するだけでしたが、定時に送信する、Airtableのリストが更新されたら送信するなど、様々な応用が可能なので、Integromat等のiPaaSツールとの連携も是非お試しください。

メールを成功の原動力に

開発者にもマーケターにも信頼されているメールサービスを利用して、
時間の節約、スケーラビリティ、メール配信に関する専門知識を手に入れましょう。