Marketo Engage(以下はMarketoと表記)などのMAツールを活用する際に重要なのが、タイムリーなフォローです。しかしEメールアドレスへの通知だけでは、問い合わせに即座に対応できない場合もあります。そんなときはChatworkなどのチャットツールと連携させるのがおススメです。非エンジニアの方でもスムーズに設定できるよう、よくあるトラブルもまとめて解説しますので、お役立てください。
◆目次
1. MarketoとChatworkではいろいろな連携ができる!
2. 実装手順:Marketoの問い合わせフォーム入力をChatworkに通知する
3. 実装手順:メッセージだけでなくタスクセットも行う
4. MarketoとChatwork連携における注意点
5. まとめ
1.MarketoとChatworkではいろいろな連携ができる!
MarketoとChatworkを連携させるとさまざまな処理が自動でできます。連携にはAPIとWebhookという仕組みを使います。
APIはWebアプリケーション同士が情報をやり取りするためのルールです。Webhookは情報の登録や更新といった、行動をトリガーにして、他のアプリケーションを操作する仕組みです。
①メッセージを通知する
Marketoの問い合わせフォームに入力があった際に、Chatworkのグループにメッセージを飛ばす、といったことが可能です。問い合わせ対応や営業フォロー管理などに活用できます。
②タスクを設定する
メッセージを飛ばすだけでなく、グループに参加している特定のユーザーに対しタスクをセットすることも可能です。たとえば、問合せ対応をサポート担当に期限付きでセットする、といった具合です。
③そのほかにもこんなことが可能!
ChatworkではAPI連携することで、他にも下記のようなことが可能です。
・グループチャットを新しく作成する
・チャットのメッセージを更新する
・チャットにファイルをアップロードする
参考・出典:APIドキュメント
https://developer.chatwork.com/ja/endpoint_rooms.html
2. 実装手順:Marketoの問い合わせフォーム入力をChatworkに通知する
Marketoの問い合わせフォームに入力があった際に、Chatworkのグループへメッセージを飛ばす方法について解説します。
①Chatworkでの準備:APIトークンの取得
まずはChatworkで「APIトークン」というものを取得します。APIトークンとは、APIを識別するための情報です。
プロフィールの「サービス連携」から「API Token」を確認しメモしておきましょう。APIトークンの発行にはパスワードが必要です。
②MarketoでWebhookの設定を行う
次にMarketo側でWebhookの設定を行いましょう。ウェブフック名と詳細は自由に設定いただいてOKです。ただし後から見てわかりやすいものにしておきましょう。ポイントは下記の通りです。
・URLを設定
URLのルールは下記の通りです。「room_id」にメッセージを送るグループチャットのルームIDを設定します。
https://api.chatwork.com/v2/rooms/{room_id}/messages
ルームIDは「グループチャットの設定」から確認できます。
・リクエストタイプは「POST」を選ぶ
※POSTとは?
POSTは入力情報を送信するための方法です。主に情報を追加したいときに用いられます。情報を「更新」する際には「PUT」を選択しましょう。
・テンプレートの記述方法はChatworkのドキュメントを参考に
テンプレートが具体的な指示内容になります。こちらはChatworkの公式ドキュメントを参考にするとよいでしょう。メッセージを送る際の記述方法は下記の通りです。
body=問い合わせがありました&self_unread=0
「body=」の後にメッセージ内容を記載しましょう。「&self_unread=0」の「0」を「1」にすると未読状態にできます。参考・出典:APIドキュメント
https://developer.chatwork.com/ja/endpoint_rooms.html#POST-rooms-room_id-messages
・リクエスト トークンのエンコードは「フォーム/URL」を選ぶ
・応答タイプは「JSON」を選ぶ
※JSONとは?
JSONは「JavaScript Object Notation」の頭文字を取ったものです。シンプルにいうとプログラム間でデータをやり取りするための書式です。
・カスタムヘッダを設定する
Webhookのカスタムヘッダを設定します。
「ヘッダ」には「X-chatworkToken」、「値」には先ほどメモしたAPIトークンを設定します。
(1)メッセージのカスタマイズは?
Marketoの「マイトークン」を使えば会社名や氏名などをメッセージの中に組み込めます。たとえば下記のようになります。
body=問い合わせがありました。/n氏名:/n会社名&self_unread=1
(2)改行について
メッセージを改行して見やすくするにはバックスラッシュ「/n」を使います。
body=問い合わせがありました。/n氏名:/n会社名&self_unread=1
参考・出典:JSONで改行を含むテキストデータをハンドリングする
https://hodalog.com/how-to-handle-linebreaks-in-json/
参考・出典:記号の「バックスラッシュ(\)」をキーボードから入力する方法を教えてください。
https://www.fmworld.net/cs/azbyclub/qanavi/jsp/qacontents.jsp?PID=7507-4556
(3)複数のルームへ同時に通知するには?
メッセージを複数のルームへ同時に通知したいという場合もあるかもしれません。その場合は、ルームごとにWebhookを設定し、後述するスマートキャンペーンの設定時に同時に走らせます。
③Marketo上でスマートキャンペーンの設定を行う
スマートキャンペーンとはMarketoの核となる機能の一つです。「スマートリスト」「フロー」「スケジュール」の3つから構成されます。下図のとおり、「スマートリスト」できっかけや対象を選択、「フロー」で処理を指定するという流れです。Webhookはこの「フロー」で設定します。最後に「スケジュール」で処理のタイミングを指定します。
参考・出典:スマートキャンペーンについて
https://experienceleague.adobe.com/docs/marketo/using/product-docs/core-marketo-concepts/smart-campaigns/understanding-smart-campaigns.html?lang=ja
ステップは下記の通りです。
例:お問い合わせフォームから問い合わせがあった場合に、Chatworkに通知をする場合
・新規スマートキャンペーンを作成する
まずは新しいスマートキャンペーンを作成します。
・「フォームの入力」のトリガーを選択
今回は「お問い合わせフォームの入力」がきっかけですので、スマートリストは、トリガーから「フォームの入力」を選びます。その後、該当のフォームを選択します。
・「ウェブフックを呼び出し」のフローを選択
フローのタブに移動し、先ほど作成したWebhook「Chatworkメッセージ連携」を選択します。
・「スケジュール」でキャンペーンを有効化
スケジュールタブでキャンペーンを有効化しましょう。これで設定はOKです。
3.実装手順:メッセージだけでなくタスクセットも行う
MarketoとChatworkを連携させると、メッセージを通知するだけでなくタスクの登録もできます。具体的に見ていきましょう。
①Chatworkでの準備:アカウントIDの確認
MarketoからChatworkのメンバーにタスクを割り当てるためには、誰かを特定しなければなりません。その際に用いるのが「アカウントID」です。アカウントIDは「環境設定」→「Chatworkについて」から確認できます。「チャットワークID」とな異なるので注意しましょう。
②MarketoでWebhookの設定を行う
Webhookの設定はメッセージの通知と同じ流れで行います。
・URLを設定
URLのルールは下記の通りです。「room_id」にメッセージを送るグループチャットのルームIDを設定します。
https://api.chatwork.com/v2/rooms/{room_id}/tasks
・リクエストタイプは「POST」を選ぶ
・テンプレートの記述方法はChatworkのドキュメントを参考に下記の通り設定します。
body=営業担当を割り当ててください&to_ids=○○○&limit=○○○&limit_type=time
「body=」の後にタスクの内容を設定します。期限については公式ドキュメントを見ると「Unix timeで入力してください」とあります。「Unix time」とはコンピューターで時間を処理するときに使うデータ形式です。下記サイトで日付からUnix timeを生成できます。
・リクエスト トークンのエンコードは「フォーム/URL」を選ぶ
・応答タイプは「JSON」を選ぶ
・カスタムヘッダを設定する
Webhookのカスタムヘッダを設定します。
「ヘッダ」には「X-chatworkToken」、「値」には先ほどメモしたAPIトークンを設定します。
③Marketo上でスマートキャンペーンの設定を行う
Webhookの設定が完了したら、Marketo上でスマートキャンペーンの設定を行いましょう。
・新規スマートキャンペーンを作成する
まずは新しいスマートキャンペーンを作成します。
・「フォームの入力」のトリガーを選択
今回は「お問い合わせフォームの入力」がきっかけですので、スマートリストは、トリガーから「フォームの入力」を選びます。その後、該当のフォームを選択します。
・「ウェブフックを呼び出し」のフローを選択
フローのタブに移動し、先ほど作成したWebhook「Chatwork連携タスクの追加」を選択します。
・「スケジュール」でキャンペーンを有効化
スケジュールタブでキャンペーンを有効化しましょう。これで設定はOKです。
お問い合わせがあった際に、下記のようにChatworkのタスクを追加できます。
4. MarketoとChatwork連携における注意点
MarketoとChatworkを連携する際によくあるトラブルについて解説します。
①APIトークン発行者をルームに入れておく必要がある
意外と盲点なのが、「APIトークン発行者」をグループチャットのルームに参加させておく必要がある点です。APIトークンを発行するのは情シス担当であることも少なくありません。その場合、情シス担当がルームに入っていないとメッセージ等を送れないのです。
②ChatworkIDとアカウントIDは別物
すでに解説したとおり、タスクを割り振る際には「アカウントID」を使用します。普段よく使用する「チャットワークID」とは別物なので注意しましょう。「アカウントID」は「環境設定」から確認できます。
5. まとめ
MarketoとChatworkを連携することで、タイムリーな対応を実現できます。対応漏れはもちろんのこと、情報共有が効率的に行えますので、ぜひ活用してみてください。
BrizzyではMarketoをはじめとしたMAの運用代行や導入支援を行っていますので、お困りごとがあった際には、お気軽にご相談ください。
- トップ
- ブログ一覧