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

リードとユーザープロフィールの統合

リードとユーザープロフィールを手動および自動で統合し、ユーザー情報を単一のプロフィールに紐付ける方法。

対応者:Bobby Stapleton

既存のユーザーがMessengerで匿名(例えばシークレットブラウザモード経由)でチャットすると、Intercomに新しいリードプロフィールが作成されます。これにより、同一人物に対してリードとユーザープロフィールの両方が存在することになります。

Intercomでは、leadはMessengerを通じて関与したが認証されていない未識別の連絡先です。userは識別されログイン済みの連絡先です。

この記事では、Inboxからリードをユーザーに手動で統合する方法、自動統合の設定方法、REST APIを使った統合のトリガー方法を説明します。また、統合が期待通りに行われない場合のトラブルシューティングも扱います。

このような場合、リードプロフィールをユーザープロフィールと統合し、すべての情報を一元管理できます。


リードとユーザープロフィールの統合方法

リードは既存のユーザーアカウントに手動、自動、またはREST API経由で統合できます。リードをユーザーに統合すると、リードに関連付けられた情報がユーザープロフィールに移行されます。

重複プロフィールは、クッキーのクリア、不一致のuser ID、リンクされていないメールのみの通信など、いくつかの一般的なシナリオで発生します。別のシナリオとして、異なるuser_idで識別された場合、メールが一致していても新しいプロフィールが作成されます。

統合できるプロフィールとできないプロフィールの種類があります。

  • リードはユーザープロフィールに統合できます。

  • 2つのリードは統合できません。

  • ユーザープロフィールをリードプロフィールに戻して統合することはできません。

リードをユーザーに手動で統合する方法

手動統合をトリガーする方法は2つあります。

方法1:リードのメールアドレスを変更する。リードのプロフィールを開き、Emailフィールドを見つけて既存のユーザーのメールアドレスに更新します。

Intercomのリードプロフィールのスクリーンショット。メールアドレスフィールドが既存のユーザーのメールに変更され、手動統合がトリガーされる様子。

リードプロフィールは、ユーザーが次回ウェブサイトを訪問またはページを更新した際に、自動的に一致したユーザープロフィールに統合されます。


同じメールアドレスのユーザーが2人以上いる場合、最も最近アクティブだったユーザーとリードが統合されます。

方法2:CSV(カンマ区切り値)でインポートする。リードのデータを含むファイルをインポートします。

注意:統合が行われるには、リードのメールアドレスが既存のユーザーのメールアドレスと同じである必要があります。また、既にIntercomに存在するリードはCSVインポートでユーザーに統合されません。CSVからインポートされたリードは新規リードの場合のみユーザーに統合されます。

IntercomのCSVインポート画面のスクリーンショット。リードデータを含むCSVファイルのインポートオプションが表示されている。リードのメールが既存のユーザーのメールと一致すると統合がトリガーされる。

インポート完了後、統合条件を満たすリードは自動的に一致するユーザープロフィールに統合されます。Intercomでユーザープロフィールを確認すると、リードの会話や属性が表示されます。

Inboxから重複の可能性があるものを手動で統合する方法

注意:このオプションはInboxアクセス権を持つチームメンバーなら誰でも利用可能です。重複ユーザープロフィールが検出されたリードとの会話を表示すると統合オプションが表示されます。

重複の可能性機能は、現在会話中の相手に重複するleadsまたはusersがいる場合、Inboxで警告します。会話相手がリードで検出された重複がユーザーの場合、Merge Lead into Userをクリックできます。統合内容のプレビューが表示され、確認後に確定します。統合プレビューの読み方はこちら。統合後、リードプロフィールは削除され、ユーザープロフィールが残ります。Inboxの会話は統合されたユーザープロフィールに表示されます。

クッキーに基づく自動統合の仕組み

自動統合は操作不要です。ログアウト状態でウェブサイトを訪問すると、Intercom cookieが付与され、個別に識別されます。会話を開始または返信するとリードになります。

匿名訪問者がIntercom cookieがブラウザにある状態で会話を開始し、Intercomでリードになる流れの図。

Intercom cookieがある状態でログインまたはサインアップすると、リードプロフィールは自動的にユーザープロフィールに統合されます。

Intercom cookieがある状態でユーザーがログイン後、リードプロフィールが自動的にユーザープロフィールに統合される流れの図。

メールのみの自動統合を有効にする方法

注意:この設定はワークスペース管理者権限が必要です。

セキュリティ設定で「未検証のLeadsをUsersに統合」を有効にできます。これにより、メールアドレスのみでリードとユーザーを統合するロジックに変わります。リードとユーザーは同じデバイス、cookie、セッションを共有する必要がなくなります。この設定を有効にする前に、Messengerインストールのセキュリティ設定で「JSON Web Tokens (JWTs)でMessengerを保護する」がオンになっていることを確認してください。テストおよび本番環境でuser_hashを生成する際は正しいワークスペースシークレットを使用してください。

重複を最小限に抑えるため、関連ページで識別設定を有効にしてください。特にログイン済みデータを一貫して渡す必要があるシングルページアプリケーションで重要です。また、顧客がアプリでメールを変更した際にIntercomのデフォルトEmail属性を更新する統合を確実に行い、別プロフィールの作成を防いでください。

これを有効にする場合は、事前にIdentity Verificationを有効にしてください。これにより、ユーザーのリクエストが本人からのものであることが保証されます。

注意:自動統合はユーザーが次回Intercomにログインした際に行われます。

APIを使ったプロフィールの統合方法

注意:このセクションはREST APIアクセス権を持つ開発者向けです。

REST APIを使ってleadをuserに変換できます。統合リクエストには次のJSON構造を使用します:{ "from": "<leadのIntercom ID>", "into": "<userのIntercom ID>" }。統合成功後、リードは削除され、ユーザーが存続レコードになります。

統合成功時は更新されたユーザー連絡先オブジェクトが返されます。Contacts APIでユーザーを取得して統合を確認できます。

注意:リードをユーザーに統合後、フロントエンドは検証済みuser_idと計算されたuser_hash(Messenger Secret Keyで署名されたuser_idのHMAC-SHA256ハッシュ)でMessengerを再初期化する必要があります。これにより強制されたIdentity Verificationに準拠します。これらの値はワンタイムパスワード(OTP)検証応答で返し、フロントエンドが正しいユーザーとしてMessengerを起動できるようにします。


プロフィール統合に関するよくある質問

統合に含まれるデータは?

  1. リードプロフィールの属性(既存のユーザープロフィールにその属性の値がない場合のみ)

  2. 会話(リードとユーザープロフィールに関連付けられたすべての会話が含まれます)

  3. イベント(最初/最後の発生日時とイベント数;メタデータは含まれません)

特定のプロフィールペアに何が起こるか、どの値が残り、会話、tickets、ノート、タグ、電話がどれだけ移動するかを正確に確認するには、統合プレビューを使用してください。

なぜリードが統合されなかったのか?

ほとんどの場合、リードとユーザープロフィールは即座に統合されますが、バックグラウンド処理のため遅延が発生することがあります。例えば、ユーザーがログインし、cookieやメールに基づいて統合が必要なリードがある場合、自動統合はユーザーの次回のping(ページ更新)時に開始されます。トラブルシューティングには、Intercomに渡されるユーザーデータに正しい識別子(user_idやemail)が含まれているか確認し、ブラウザが必要なcookieを保持しているか(期限切れや削除されていないか)を確認してください。

REST API経由で作成されたleadsはブラウザのセッションcookieを持たないため、cookieベースのleadsのように自動統合されません。以下のシナリオはすべて自動統合されません。

  • APIでleadを作成し、その後同じメールアドレスのユーザーが存在しなかった場合にアプリにログインしてpingを送信しても、leadとuserのプロフィールは自動統合されません。Intercomはleadとuserが同じanonymous_id(ブラウザのセッションcookieに保存される一意識別子)を持つ場合のみ非同期統合を行います。API経由で作成されたleadsはcookieを持ちません。代わりにAPIで手動統合が可能です。

  • APIでleadを作成し、同じメールアドレスのユーザーが既に存在する場合、その既存ユーザーがアプリにログインしてpingを送信しても、leadとuserのレコードは自動統合されません。

  • APIでleadを作成し、その後APIでuserを作成した場合、そのユーザーがアプリにログインしてpingを送信しても、leadプロフィールは自動的にuserプロフィールに統合されません。

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