見出し画像

BigQuery+Hasura+Zapier+Salesforce マーケティングでも自動化できた。

Hasuraのマーケティング、セールスのチームではBigQueryをデータウェアハウスとして使っています。さまざまなとこから、BigQueryに情報をStoreするようにしているのですが、BigQueryのResultからSalesforceをアップデートするというのが、エンジニアではない自分には自動化できず、月々まとめってアップデートしていたのですが、このたびHasura、Zapierを使って自動化できたので、紹介したいと思います。

今回の例はLead to Account Matchingと呼ばれるリードをアカウントに紐づけする作業です。Salesforce内でリードは基本的には、個別の情報で、アカウント=会社に紐づけられていません。なので、月一のアップデートで、リードのカスタムで作ったフィールドに、アカウントを紐づけする作業をしていました。ちなみにHasuraでは、Websiteのドメインと国名を確認するロジックになってます。

自動化した後のデータの流れはこんな感じ。

画像1

BigQuery側で、HasuraからDBにアクセスできるように設定。
Google CloudのService Accountを設定して、キーをJSONのファイルとして作成します。

やり方は、こちらから。

Salesforceで、まだ作成していなければ、このマッチしたアカウントの情報を入力するフィールドを作成します。こちらはLookupというタイプのフィールドにします。アップデートする際にはアカウントのIDを入力するか、手動でアップデートする場合には、マッチしたアカウントを会社名などから検索することもできます。

画像2

GoogleのBigQuery内でマッチングするQueryを書いてViewとして保存しておきます。

Hasuraだとロジックはこんな感じです。

画像3

そしてHasuraの設定。

BigQueryとHasuraのつなげ方は、先週の記事に書いてあります。

そして必要なQueryがでてくるようになったらREST APIのエンドポイントを作ってしまいます。この例ではLead IDとAccount IDが必要になります。

この画面で、RESTというボタンをクリック。

画像4

NameにこのEnd Pointの名前を付けます。
Hasura内でしか使わないですが、このQueryの内容にあった名前を付けます。LocationはURLの一部になりますので、こちらもQueryの内容にあったlocation名を付けます。そしてMethodsはGETをチェックマーク。

このURLをZapierでWebhookで使います。

画像5

Zapier

そしてその後はZapierの設定
ZapierのWebhookでRetrieve Pollを使います。

画像6

Triggerの設定はこんな感じ。
Hasuraで作成したEnd PointのURL

画像7

KeyのFieldには、下記のハイライトされている部分を入力します。(Queryの頭の部分?というのでしょうか?)

画像8

Duplication Keyというフィールドも必須です。idと入力します。

そしてTriggerのテストをすると、データが表示されます♪

画像9

そして次のステップでSalesforceのアップデート。

画像10

これでZapierをOnにすれば終了です。

Queryに新しいマッチがある場合のみ、Salesforceがアップデートされます。

No Codeで自動化成功です。


元の記事

https://hasura.io/blog/how-our-marketing-ops-team-built-a-realtime-lead-to-account-matching-solution-with-hasura-bigquery-zapier-and-salesforce/

いいなと思ったら応援しよう!