Marketoと連携する

MAツールのMarketoと連携することで、CraftChatのボットで会話した顧客と活動履歴を自動登録したり、Marketoのシナリオに沿ったナーチャリングを行うことができます。

CrafterSupport avatar
対応者:CrafterSupport
一週間前以上前にアップデートされました

MarketoとCraftChat連携する際の手順について説明します。

目次

1.概要

CraftChatからMarketoへ

  • チャットボットと話したユーザをリードとして追加

  • 会話内容をユーザのアクティビティとして追加

  • 内容の回答をリードまたは会社の情報として追加

MarketoからCraftChatへ

  • WebhookでCraftChatのユーザにメッセージを送信(スマートキャンペーン利用)

2.CraftChat→Marketoの連携設定

【1】Marketo側の事前設定

1-1 ロールの作成 

Marketoにログインし、「管理」→「セキュリティ」>>「ユーザ&ロール」内の「ロール」タブを選択し、「新規ロール」を選択します。

・ロール名:「API role for CraftChat
・権限:「APIへのアクセス」→「読み取り/書き込み顧客」にチェック
・作成ボタンをクリック

保存をしたら、ロールの作成は完了です。

※こちらはサンプル画像なので上記記載している設定をご使用ください

1-2 CraftChat用ユーザーの作成

「管理」→「セキュリティ」>>「ユーザ&ロール」内の「ユーザ」タブを選択し、「新規ユーザの招待」を選択します。

新規ユーザの招待では以下の設定をします。

注意:メールは、登録したことのないメールアドレスを新規で作成しご利用ください。

メール : api_cb_marketo@XXXXXX.XX  (仮:XXXを貴社ドメインに変更ください)
ファーストネーム : API  
ラストネーム : CB_Marketo
理由 : 空欄  
アクセスの有効期限切 : 指定しない 

入力したら「次」を選択します。

ロールの選択画面になりますので、1-1で作成した「API role for CraftChat」にチェックを入れ、画面下部の「APIのみ」にもチェック を入れた後、「次へ」を選択します。 「APIのみ」の場合は招待メールが不要のため、「ステップ3:メッセージ」では右下の「送信」を選択してください。 「送信」を押下したら、ユーザの作成が完了です。

※以下はサンプル画像なので上記記載している設定をご使用ください

1-3 Marketo REST API認証情報の取得

「管理」→「統合」→「LaunchPoint」を選択し、「新規作成」をクリックしてください。

新規サービスでは以下の設定をします。

表示名 : CraftChat
サービス:カスタム
詳細 : CraftChat
サービスAPI専用ユーザ : api_cb_marketo@XXXXXX.XX (仮:XXXを貴社ドメインに変更ください)

注意:メールは、登録したことのないメールアドレスを新規で作成しご利用ください。

入力したら「作成」を選択します。

※以下はサンプル画像なので上記記載している設定をご使用ください

サービス一覧画面へ戻り名前が「CraftChat」となっているサービスの「詳細の表示」を選択します。

すると「クライアントID」「クライアントシークレット」の情報が出てきますので、それぞれをコピーします。

※こちらはサンプル画像なので貴社環境のものをご使用ください

※こちらはサンプル画像なので貴社環境のものをご使用ください

1-4 Marketo REST API認証情報の取得

「管理」→「統合」→「ウェブサービス」を選択します。ウェブサービス内の「REST API」項目にある、「Endpoint」「ID」をそれぞ れコピーします。

コピーして保管したら、Marketo REST API認証情報の取得は完了です。

1-5 カスタムアクティビティを作成

「管理」→「データベースの管理」→「Marketoカスタムアクティビティ」をクリック

1-5-1 Facebook Messenger用のアクティビティを作成

Facebookメッセンジャーボットを利用する場合、ユーザがメッセンジャー上の行動を記録してMarketoに登録することができます。それをキャンペーンのフィルターやトリガーとして使うことができます。

まずメッセンジャー上の会話アクティビティを作成します:
新規カスタムアクティビティ」をクリック、以下の設定をします。

表示名:Converse on Messenger

API名:converseOnMessenger_c

詳細:空欄

入力したら「次」をクリックします。

 会話アクティビティのフィルターとトリガーの表示方法を以下に設定をします

フィルター:Has conversation on Messenger

トリガー:Converses on Messenger

入力したら「次」をクリックします。

カスタムアクティビティの主フィールドを定義は以下の設定をします

名前:Conversation

API名:conversation

詳細:Contents of the conversation

入力したら「送信」をクリックします。


次はメッセージを既読になったアクティビティを作成します。
もう一度「新規カスタムアクティビティ」をクリック、以下の設定をします。

表示名:Read on Messenger

API名:readOnMessenger_c

詳細:空欄

入力したら「次」をクリックします。

既読アクティビティのフィルターとトリガーの表示方法を以下に設定をします

フィルター:Has Read Message on Messenger

トリガー:Read Message on Messenger


入力したら「次」をクリックします。

カスタムアクティビティの主フィールドを定義は以下の設定をします

名前:ReadMessage

API名:readMessage

詳細:Action of read message

入力したら「送信」をクリックします。

1-5-2 Webボット用のアクティビティを作成

ウェブボットを利用する場合、ユーザがウェブ上の行動を記録してMarketoに登録することができます。それをキャンペーンのフィルターやトリガーとして使うことができます。


新規カスタムアクティビティ」をクリック、以下の設定をします。

表示名:Converse on Web

API名:converseOnWeb_c

詳細:空欄

入力したら「次」をクリックします。

会話アクティビティのフィルターとトリガーの表示方法を以下に設定をします

フィルター:Has conversation on Web

トリガー:Converses on Web

入力したら「次」をクリックします。

カスタムアクティビティの主フィールドを定義は以下の設定をします

名前:Web Conversation

API名:webConversation

詳細:Contents of the web conversation

入力したら「送信」をクリックします。

1-5-3 LINEボット用のアクティビティを作成

LINEボットを利用する場合、ユーザーがLINE上の会話を記録してMarketoに登録することができます。それをキャンペーンのフィルターやトリガーとして使うことができます。


新規カスタムアクティビティ」をクリック、以下の設定をします。

表示名:Converse on LINE

API名:converseOnLINE_c

詳細:空欄

入力したら「次」をクリックします。

会話アクティビティのフィルターとトリガーの表示方法を以下に設定をします

フィルター:Has conversation on LINE

トリガー:Converses on LINE

入力したら「次」をクリックします。

カスタムアクティビティの主フィールドを定義は以下の設定をします

名前:LINE Conversation

API名:lineConversation

詳細:Contents of the LINE conversation

入力したら「送信」をクリックします。

最後に、先程作成したカスタムアクティビティをそれぞれを承認してください。

1-6 カスタムフィールドを作成

Facebook MessengerまたはLINEと連携する場合、ユーザーIDに基づいてキャンペーンメッセージを送ることができます。ユーザーID情報を保存するためにカスタムフィールドを作成します。

管理]で[フィールド管理]をクリックします。

新規カスタム フィールド]ボタンをクリックします。

フィールドの[タイプ]を選択します。「文字列」を選択します。

カスタムフィールドの詳細は以下のように設定します。

  • Facebook Messengerボットと連携する場合:

名前:CB Facebook ID

API名:cb_facebookId

  • LINEボットと連携する場合:

名前:CB LINE ID

API名:cb_lineId

*両方とも連携する場合は2つを作成してください。タイプは同じく「文字列」です。

入力完了したら「作成」ボタンをクリックしてください。

※こちらはサンプル画像なので上記の情報にしてください

【2】CraftChat側の設定

CraftChatのダッシュボードにアクセス、ボット一覧の画面の左側にある「外部サービス連携」をクリックします。

右側にあるマルケトのカードの「連携」ボタンをクリックします。

次に表示するフォームに、1-3と1-4で取得した情報を入力して「登録」ボタンをクリックします。

「登録」ボタンを押した後このような画面が出てきます。

ここで登録したいアクティビティをチェックを入れて、後ろの空欄にアクティビティのIDを入力してください。アクティビティのIDの確認場所は以下となります。

入力したら「更新」ボタンを押してください。これで連携は完了です。

これでCraftChat→Marketoの設定は完了しました。

3.確認方法

会話がスタートすると、新規ユーザはMarketoの「Lead Database」→「システムスマートリスト」に追加されます

会話内容も自動的にリードのアクティビティに登録されます

4.リードまたは会社の情報を追加で設定

CraftChatの既存のプロフィール設定機能を使用します。

詳細は下記のリンクを参考にしてください。
ユーザープロフィールの設定について

Marketo → CraftChatの連携設定

【1】 CraftChatの設定

 1-1 APIキーを発行

 CraftChatのダッシュボードにアクセスして、「API管理」→「APIキー生成」ボタンをクリックし、API名と説明をいれて「保存」ボタンをクリックします。

そして「詳細を見る」をクリックして、「APIキー」と「APIシークレット」をコピーして保存

1-2 キャンペーンメッセージを作成

該当のボットを選択して、「作成」画面で「キャンペーングループ」の下に新規グループを作成します

その後通常のメッセージ作成方法と同じですが、グループ作成>キャンペーンメッセージを選択します。

(メッセージ作成について詳しくはこちらをご覧下さい)

そしてグループ名の右の青色のIDをコピーして保存します。

【2】 Marketo側の設定

2-1 Webhookを作成

Marketoにログインし、「管理」→「統合」→「ウェブフック」を選択します。「新規ウェブフック」を選択してください。

以下の情報を入力し、「作成」を選択します。

ウェブフック名:CraftChat送信
URL:https://marketo.craftchat.ai/v1/messages/{{my.camId}}
リクエストタイプ:POST
テンプレート:

{
"senderKey": {{lead.CB Facebook ID}},
"source": "marketo",
"apiKey": "<1-1で取得したapiKey>",
"apiSecret":"<1-1で取得したapiSecret>"
}

リクエストトークンのエンコード:JSON
応答タイプ:JSON

上記のテンプレートの部分は1-1で取得したapiKeyとapiSecretを書き換えてください。それ以外のところは全部そのままにしてください。

先ほど作成したウェブフックが右側に表示されるので、そちらを選択して、画面上部の「ウェブフックアクション」→「カスタムヘッダの 設定」を選択します。

「追加」を選択したら

ヘッダ : Content-type 

値 : application/json

と入力し、「保存」してください。

2-2 トリガーキャンペーンを作成

「マーケティング活動」→「新規作成」→「新規キャンペーンフォルダ」を作成

名前は管理しやすいように設定してください。

そして「新規作成」→「新規プログラム」を作成します。以下の設定をします。

名前:CraftChat送信イベント(例)
プログラムのタイプ:デフォルト
チャネル:Content

入力完了したら「作成」してください。

作成したプログラムは左側に表示されるので、それをクリックして、「マイ トークン」を作成します。右側のタイプ選択から「テキスト」を選択してキャンバスにドラッグ&ドロップします。

トークン名に「camId」と入力し。値には1-2で取得した「キャンペーンID」を入力します。入力後、「保存」 を押します。

次は「新規作成」→「新規スマートキャンペーン」を選択します。名前は任意で、今回はテストのために名前は「Send Test Message」に設定します。

スマートキャンペーン作成後、 「スマートリスト」を設定します。

「スマートリスト」の設定としては トリガー「Converses on Messenger」→ Conversationは指定の値と等しいと設定すると、ある回答したユーザに送信することはできます。

※値の入力は、テキストで直接入力ください。

続いて「フロー」とスケジュールです。フローでは「ウェブフックを呼び出し」を設定し、呼び出すウェブフックは2-1で設定したウェブ フックを選択します。

その後、スケジュールで「有効化」をすることにより、MarketoからリードにMessenger経由で送信できます。

送信結果については、こちらのブログをご覧ください。

本事例は一つの事例です。

他のトリガーと2-1で設定したウェブフックを組み合わせ、様々なパターンを作ってみてください。

関連リンク

How to Integrate Marketo with CraftChat(本記事の英語版)


こちらの回答で解決しましたか?