MakeのDataStore(データストア)を使って、Gmailの一括送信先を管理する方法

MakeのDataStore(データストア)を使って、Gmailの一括送信先を管理する方法

DataStore(データストア)とは

Make公式のデータストア解説ページ
Data Storeは、Make内にデータを一時的または長期的に保存するためのストレージ機能です。ワークフローの実行中に取得したデータを、次のステップや後続の処理で再利用したい場合に使用します。
簡易的な「データベース」として利用でき、異なるシナリオ間でデータをやり取りする事が出来ます。

Data structure(データストラクチャー)について

Make上で扱うデータの形式や構造を定義できる機能です。Data Store は、Data structure で定義された形式に従ってデータを保存・取得することができます。

Data structureとData Storeの関係図

シナリオの紹介

今回はMakeのDataStore(データストア)を使って複数のメールアドレスを管理し、DataStore内に登録されているメールアドレスに対して、Gmailを使ってメールを一斉送信するシナリオの作成方法を紹介します。
シナリオの完成イメージ

構築手順

メールアドレスを管理するためのData Store を作成する

ダッシュボード画面のサイドバーから「Data Store」を選択します。
Data Storeを選択する手順

画面右上の「Add data store」をクリックします。
Add data storeをクリックする手順

Data storeの名前を設定します。ここでは”Send list data store”としています。
Data structure欄の「add」をクリックします。
Data structureを追加する手順

Data structureの名前を設定します。ここでは”Send list data structure”としています。
Data structureの名前を設定する手順

Specification欄の「Add item」をクリックし、名前を入力するデータを定義します。
Name(データ名):”name”
Type(データタイプ):Text
Default(デフォルト値):なし
Required(必須かどうか):Yes
Multi-line(複数行か):No
Data structureにitemを追加1つ目

もう一度「Add item」をクリックし、メールアドレスを入力するデータを定義します。
Name(データ名):”e-mail”
Type(データタイプ):Text
Default(デフォルト値):なし
Required(必須かどうか):Yes
Multi-line(複数行か):No
Data structureにitemを追加2つ目
「Save」をクリックします。

作成したData structureが設定されます。
Data structureが設定された様子
「Save」をクリックし、新しいData Storeを登録します。

データストアにデータを登録する

「Brows」をクリックします。
Browsをクリックする手順

画面右上の「add」をクリックします。
addをクリックする手順

新しいデータが1行追加されますので、
name列の編集ボタンをクリックし、名前を入力します。ここでは、”山田太郎”を入力しています。
nameの追加例

同じ用に、e-mail列にもメールアドレスを入力します。ここでは、”yamada@example.com”を入力しています。
メールアドレスの追加例

画面右上の「Save」をクリックし、データを保存します。
(複数行入力しても「Save」をクリックするまではデータがData Storeに保存されませんのでご注意ください。)
保存の様子

テスト用にもう1行データを追加しておきます。
ここでは、”田中二郎”、”tanaka@example.com”としました。
2行目のデータを追加した様子

シナリオを作成する

一度ダッシュボード画面に戻り、「Create a new scenario」からシナリオを作成します。
data storeで検索し、Search recordsのモジュールを選択します。
新規のシナリオを作成する画面

Data Storeのプルダウンから、先程作成したData Store(ここでは、Send list data store)を選択します。
今回は追加の設定は必要ありませんので、そのまま「OK」をクリックします。
(フィルタを設定するとDeta Storeから取得するデータを条件で絞り込む事ができます。)
データストアモジュールの追加手順

一度「Run once」でシナリオを実行してみると、
Data Storeに保存したデータが取得できている事が確認できます。
シナリオのテスト実行結果

Data Storeから取得したデータはBundle毎に取得されています。
メールアドレスのみをカンマ(,)区切りで抽出するため、Text Aggregatorのモジュールを追加します。
Text Aggregatorモジュールの追加手順

「Show advanced settings」をクリックし、以下のように設定します。
Row separator:Other
Separator:,
Text:※Data Storeから取得したレコードのe-mail
Text Aggregatorモジュールの設定手順

「Run once」でシナリオを実行してみると、メールアドレスのみがカンマ区切りで取得できています。
(Run onceを実行すると警告がでますが、無視して実行します)
シナリオの2回目のテスト実行結果

続いてParse jsonモジュールを使用して、メールアドレスを配列にします。
Parse jsonモジュールの設定方法

「Run once」で実行してみると、メールアドレス一覧が配列で取得できています。
シナリオの3回目のテスト実行結果

最後にGmailのSend an Emailモジュールを追加します。
※ToはMapを有効にし、直前のPerse JSONで作成した値を入力します。
Gmailモジュールの設定方法

Data Storeの活用について

今回はシンプルなシナリオでData Storeの使い方について解説しました。
同様のシナリオを作成する方法としてスプレッドシートを活用する方法もありますが、データの管理が煩雑になりがちです。わざわざ外部にデータを持ち出す必要がないケースにおいてData Storeはとても有用です。
是非活用してみてください。

Make Tipsカテゴリの最新記事