LoginSignup
2
0

More than 3 years have passed since last update.

LookerActionを使ってBigQueryのデータをMarketoに連携する

Last updated at Posted at 2021-02-06

ナニコレ

https://community.looker.com/general-looker-administration-35/looker-actions-marketo-7796
この記事を参考に、Lookerを使ってBigQueryに入っているデータでMarketoのリード情報を更新したので、そのメモ。

前提

私はLookerユーザーのデータアナリストで、Marketo側のことはよくわかっていない
が、簡単に実装できたという話をしたい。

実装方法

上記記事を適宜参照しつつ解説していきます。

まずはLooker側でMarketoActionを有効化する

image.png
Admin > Platform > ActionsにアクセスするとMarketoのアイコンがあるので"Enable"ボタンを押して有効化する

次にMarketo側でもAPIを有効化&接続情報を確認

image.png
Marketo側設定の詳細はこの辺を参照のこと。
IP制限をかけている場合、ここでLookerインスタンスのIPアドレスをホワイトリストに入れておきましょう。(※ここでめっちゃ詰まった。後述。)
各インスタンスのIPアドレスはこちらのページにまとまってます。

上で確認した接続情報をLookerのMarketoActionの設定に入力

image.png

TestActionも実行しておきましょう。
image.png

viewファイル内でLooker項目とMarketo項目の対応関係を定義

image.png
画像のように、tagsパラメータで定義します。
Marketo側の項目はREST API名を指定するように注意してください。

あとは可視化して送信 or スケジュール設定するだけ!

  1. Lookerでいつものように更新のキーとなる項目、更新したい項目を可視化(LookでもDashboardでもExploreでも良さそう)
  2. 右上の歯車から送信 or スケジュールを押す

image.png
3. データの移動先でMarketoを選択し、Lead Lookup Fieldで更新のキーとなる項目を入力する(※Marketo側の名称を書く必要があるので注意)
4. Additional ActionとしてCampaignやListにデータを追加したい場合はそのIDを設定する(ListID等はURLからわかるらしい)
5. 高度なオプションで"すべての結果"にするのがオススメ。表の結果にしてしまうとLookerで可視化できた行の分しか更新されない(はず)
image.png
6. 送信!

詰まったところ

上述したが、Looker側のIPアドレスがよくわからずめちゃくちゃ詰まった。
ChatSupportにも問合せ、間違いなく弊社のLookerインスタンスは日本、東京(asia-northeast1)ぽいのだが、どうしてもそのIPだと弾かれてしまった。しかもエラーコードは603(権限不足)で余計に混乱。
Marketoに問い合わせて、APIを叩いたタイミングでアクセスがあったIPを教えてもらってホワイトリストに追加するという力技で解決。
SSHトンネルを設定していると上で紹介したページで書かれているIPアドレスではなくなる可能性があると教えてもらったが、果たして…いまだに真相がわかっていない。

[2021/04/16追記]
LookerActionはLooker > ActionHub > Endpointという構成で実行されるとのことで、
最終的にMarketo側のホワイトリストに登録すべきIPはActionHubのIPでした。なるほど。
https://docs.looker.com/ja/sharing-and-publishing/action-hub

エラーを吐く

Marketo側の設計が余程うまく行っていない限り、エラーと向き合い続けることになると思います。
メールで通知されるエラーメッセージは情報量が少ないので、Admin > Server > Logでエラーログを確認しましょう。
僕が出会ったログは以下の2つでした。
* Access denied(code:603) :上の通り、ホワイトリストにLookerのIPアドレスが足りなかったがゆえのエラーでした
* keyとなる項目がないエラー:Lead Lookup Fieldに指定した項目がMarketo側でnullだと起こるっぽいです。

その他注意点

API RequestはbulkではなくLooker側で可視化したリスト一行一行で行われるっぽく、Marketo側のMaxRateLimitにひっかかってしまった。これも状況証拠から推測したにすぎないので、是非詳しい方いたら教えていただきたいです。bulkで実行されるようになったら嬉しい…

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0