メインコンテンツにスキップ

Workflows と Inbox 用のデータコネクタの設定方法

Data connectors を使って外部のライブデータを Intercom Inbox と Workflows に接続する方法を学びます。

対応者:Beth-Ann Sher

Data connectors はコード不要で深く組み込まれた統合機能で、外部のライブデータを Intercom に接続できます。このライブデータは Fin、Workflows、および Inbox を活用して、顧客が自動的に問い合わせをセルフサーブできるようにします。

始め方としては、チームメイトがかなりの時間を費やして回答している一般的な質問を考えることが良い方法です。これらは現在 Intercom に存在しない情報を使います。

これらは、顧客が外部システムに保存されている単純な情報を知りたい場合(例:「私の注文状況は?」)や、外部システムで「配達を再スケジュールする」や「返金を処理する」といった Data connector を実行したい場合です。

解決したい質問が分かれば、ほとんど技術的専門知識がなくても、Data connector を設定するのは意外と簡単で迅速です。


Data connector の作成

まず、設定 > 統合 > Data connectors に移動します。

ここで、ユースケースに応じて外部データ(例:Shopify、Salesforce など)へのさまざまな接続を設定します。+ をクリックして New. を選択します。

ヒント: Data connectors for Fin を使うことも可能です。

名前と説明

Data connector に、どの Data connector を実行するかが正確に分かる一意の名前を付けます(例:「注文IDを取得」)。説明欄には、チームメイトがこの Data connector をいつ使うべきかと、取得できる情報を記載してください(例:「指定された ID の注文を取得。注文 ID は Conversation CDA に保存されている必要があります」)。

Fin がこのコネクタを直接使用できるようにするには、Fin タブに移動し、How should Fin use this connector?Enabled (direct trigger) に設定します。Workflow、Task、Procedure、または Macro 内でのみ使用したい場合は、Disabled (manual trigger) に設定してください。

API 接続

次に、リクエストの詳細を入力します。ここで接続先のサードパーティシステムの HTTPS URL(例:Shopify、Salesforce など)を入力する必要があります。

API リクエスト

このリクエストがどの Data connector を実行するかを、メソッドを選択して指定できます。

  • GET - サードパーティシステムから情報を読み取り保存します。

  • POST - サードパーティシステムに情報を作成または追加します。

  • PUT - サードパーティシステムの情報を更新します。

  • DELETE - サードパーティシステムから情報を削除します。

  • PATCH - サードパーティシステムの情報を更新します。

この例では、API から注文 ID を GET するようリクエストし、URL を入力します。

リクエストを行うには、URL は HTTPS アドレスである必要があります。

ヒント:

  • URL や POST、PUT のリクエストボディに User、Conversation、Company、イベントの属性をテンプレート値として挿入できます。すでにワークスペースで設定したカスタムデータ属性を使用してください。あるいは、より柔軟性が必要な場合は、カスタムオブジェクトの使用を検討してください。

  • Data connectors は XML レスポンスを自動的に JSON に変換します。API が XML を返す場合は、通常通りエンドポイントを入力してください—Intercom が変換を処理し、テストレスポンスのステップで結果の JSON を表示します。その後、ネイティブの JSON API と同様にデータをマップして使用できます。

HTTP ヘッダー

Add key value pair をクリックして追加のパラメータをこのリクエストに追加し、HTTP Headers の下で Key value pair を選択できます:

認証

Data connectors は認証に固定トークンと動的トークンの両方をサポートします。HTTP Headers の下で、リクエストで使用したいauthentication tokenを選択すると、ヘッダーに追加されます。

注: 単一のデータコネクタに複数のトークンを添付できます。各トークンを異なるヘッダーキーで構成してください。添付されたすべてのトークンはリクエストとともに送信されます。

リクエストボディ

POST または PUT リクエストを行う場合、リクエストに含めたいデータを指定するためのリクエストボディを提供するオプションがあります:

例えば、accept: application/jsonContent-Type: application/json のように、リクエストを送る API が要求する適切な HTTP ヘッダーを必ず含めてください。JSON ボディを送信する場合は、Content-Type: application/json を明示的に追加する必要があります—これがないと、API はリクエストボディを解析せず、JSON が正しくフォーマットされていてもすべてのフィールドを無効として拒否します。

レスポンステスト

次に、この Data connector が接続しているサードパーティシステムから正しいデータを取得しているかを確認するためにレスポンスをテストする必要があります。

重要: このリクエストをテストすると API と接続されるため、作成した Data connector が実行されます。例えば、データを DELETE するようリクエストした場合、その情報は削除されます。まずは GET リクエストでテストして、情報を読み取るだけにしてください。

Test request をクリックして Data connector が正しく構成されているか確認します。接続が API によって検証されると、緑のチェックが表示され、そのリクエストの詳細が見えるはずです。

これらはすべて、Workflows を活用して顧客に迅速な回答(例:注文状況)を提供するために使用できる情報です。

ヒント: Data connectors は XML レスポンスを自動的に JSON に変換します。API が XML を返す場合は、通常通りエンドポイントを入力してください—Intercom が変換を処理し、テストレスポンスのステップで結果の JSON を表示します。その後、ネイティブの JSON API と同様にデータをマップして使用できます。

データ変換

デフォルトでは、Fin は応答の全データにアクセスして返信を生成できます。Fin が読み取るデータを制限したい場合は、Manually restrict access を選択し、Fin にアクセスさせたいデータフィールドを選択してください。

応答データの個々の項目を編集するには、edit アイコンをクリックして、表示名を付けたりデータの変換を指定したりできます。

例えば、API レスポンスが残高を 0 と返す場合、Fin が未払い残高が 0 と述べる代わりに、現在未払い残高はないと応答するようにできます。

レスポンスをフィルタまたは変換するためのコードの使用

Data connectors の コードブロック を使うことで、コネクタ設定内で直接 Python を用いて API レスポンスを変換・操作できます。

オブジェクトマッピング

このステップは任意です。Data connector によって取得した情報を Intercom 内のどこに保存するかを指定し、Workflows で顧客への回答として使用できるようにします。

保存が不要な一般的なシナリオは、PUT、POST、DELETE のリクエストタイプです。すべての GET リクエストについて、ボットでデータを使用したい場合は、このデータを Intercom に保存する必要があります。

Fin用のデータコネクタを作成する際、レスポンスデータをIntercomの属性やオブジェクトにマッピングする必要はありません。代わりに、FinはJSONレスポンスを直接解釈し、それを使って質問を解決できます。レスポンスは「Test response」セクションに基づいて生成されます。各行項目はJSONレスポンス内のデータポイントに対応します。

JSONレスポンスデータは次の場所に保存できます:

  • 標準オブジェクト:UserおよびConversationの属性。

  • Custom Objects:Intercomで作成したオブジェクト属性。

Intercomのオブジェクトを選択し、外部APIオブジェクトとマッピングします。

すべてのcustom attributesおよびcustom objectsは、ここでレスポンス保存に使用する前に作成されている必要があります。

次に、この情報を保存したいIntercomのデータ属性を選択します。例として、Intercomオブジェクトに「Order」を選択し、外部システムのAPIオブジェクトに「root」を選んで、API属性「currency」とマッピングしました:

外部データは標準のIntercomデータ属性ではなく、カスタムデータ属性にのみ保存できます。

レスポンスデータをCustom Objectsにマッピングする

Custom Objectsとマッピングする際は、IDをexternal_idフィールドにマップする必要があります。そうしないと各GETリクエストで重複が作成されます。Custom Objectsの適切な参照設定について学ぶ

PeopleまたはConversationからの参照の更新

次のステップは、更新したいカスタムオブジェクトに関連するPeopleまたはConversationからのどの参照を選択するかです。

本番化(Set live)

Data connectorのテストが成功したら、本番化する準備が整います。

Note: Data connectorsはドラフト/ライブのバージョニングシステムを使用します。FinタブのFinトリガー設定を含むあなたの変更はドラフトとして保存され、Set liveをクリックするまでライブのコネクタには影響しません。変更後にコネクタの動作が予期せず見える場合は、更新版が本番化されているか確認してください。設定のコネクタ一覧には各コネクタの現在のステータス(liveまたはdraft)が表示されます。

Data connectorsのタイムアウト制限は15秒で、ユーザー側で設定できません。適格なワークスペースでFin Procedures内で使用されるData connectorsについては、タイムアウトが30秒に延長されます。

Tip: Data Connectorsの成功率や失敗率をよりリアルタイムで確認したい場合は、Data Connector Execution Webhookを使用できます。これにより、外部サービスでのリアルタイムダッシュボード、アラート、SLA監視の実行イベントを受け取るのに役立ちます。


Data connectorの依存関係の表示

Data connectorsを大規模に安全に管理または編集するため、各Data ConnectorやMCPアクションがIntercom内のどこで使用されているかを事前に監査できます。

「Used by」ビューを有効にする方法:

Used by列はデフォルトで非表示になっている場合があります。表示するには:

  1. テーブル右上のmenu (横三本線)をクリックします。

  2. Used byの横のボックスにチェックを入れます。

この列は参照のライブでクリック可能なリストを提供します。任意の項目をクリックすると、そのソースに直接移動します。

それはData connectorの使用状況を次で追跡します:

  • Workflows

  • Procedures & Tasks

  • Custom Answers

  • Macros


Data connectorのヘルス監視

Data connectorがライブになったら、Settings > Integrations > Data connectorsから直接パフォーマンスを監視できます。

ヘルスステータスの指標

Health列は、最近の実行成功率とレイテンシに基づいて各コネクタの稼働状況を表示します。

Status

Criteria

Implication

Healthy

成功率>95%かつ通常のレイテンシ。

最適に稼働しています。

Degraded

成功率が80〜95%の間、またはレイテンシが過去の基準の2倍。

問題が発生しているが、部分的には機能しています。

Unhealthy

成功率が80%以下です。

即時対応が必要な重大な問題。

任意のヘルスステータスバッジにカーソルを合わせると、最近のパフォーマンスの詳細な内訳が表示されます:

Field Name

説明

成功率

分析対象の合計に対する成功実行の割合。

外部レイテンシ

外部API/サービスの応答時間(p90、p50、平均、最小、最大、ミリ秒)。

注:成功した実行のみが含まれます。

内部レイテンシ

内部処理オーバーヘッド(データコネクタを実行するためにIntercomのシステムで費やされた時間)(p90、p50、平均、最小、最大、ミリ秒)。

Intercomレイテンシ

合計実行時間。外部レイテンシ + 内部レイテンシとして計算されます(p90、p50、平均、最小、最大、ミリ秒)。

HTTPステータス分布

外部サービスが返すHTTPステータスコード(例:200、500、timeout)の分布。件数と割合を表示します。実行が存在しない場合はnullを返します。

障害タイプの分布

障害タイプの内訳(例:「Connection Timeout」、「Authentication Failed」)。発生頻度順に並べ、件数と割合を表示します。障害が発生しなかった場合はnullを返します。

実行件数

現在の期間で分析された実際の実行数。

時間フィルタ

ダッシュボード上部の時間フィルタを使用してレポート対象の期間を調整します。利用可能なオプション:1h6h24h7d、または 14d

ログ

任意のコネクタをクリックして専用のヘルスダッシュボードを開き、Logsタブを選択すると時刻付きの各実行記録が表示されます。各エントリには実行されたチャネルと成功/失敗が示され、任意のエントリをクリックすると完全な実行詳細が展開されます。

ログをフィルタできます:

  • 実行ID

  • 会話

  • ステータス(成功または失敗)

  • 障害タイプ

注:ログは最大14日間保持されます。短い7日間のウィンドウを希望する場合はサポートチームに連絡してください。ダッシュボードを超えた実行データへのプログラムによるアクセスについては、API access to execution resultsを参照してください。


データコネクタをドラフトに移動する

もはや必要ない古いデータコネクタを廃止したい場合、それらをドラフト状態に移動できます。

Settings > Integrations > Data connectorsに移動し、ドラフトに移動するデータコネクタをクリックしてからSet to draft.を選択します。

Intercomはアクティブな依存関係があるコネクタのドラフト化をブロックしますが、'Used by'列を使用してこれらを事前に管理できるようになりました。この列はアクションを参照するすべてのWorkflow, Procedure, Task, Macro, and Custom Answerのライブでインデックス化されたリストを提供します。リスト内の任意の項目を直接クリックして該当の自動化にジャンプし、依存関係を解決できます。

注:一時停止状態のProcedureもアクティブな依存関係としてカウントされます。コネクタをドラフトに移動することは、参照しているすべてのProcedureがライブではなく一時停止中であってもブロックされます。ドラフトに設定する前に、一時停止中のProcedureを含むすべてのコネクタ参照を解決してください。

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