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

なぜ重複したusersがいるのですか?

対応者:Alek Toumert


この回答はIntercom Community forumからのものです。👌


同じメールアドレスを持つusersの重複があります。これはなぜ起こったのですか?どうすれば修正できますか?

Intercomのワークスペースに同じメールアドレスを持つ複数の顧客がいる場合、それぞれに異なるuser_IDを渡している可能性があります。さらに、複数のプロファイルが同じメールアドレスを使用している場合、Intercomは最新に更新されたユーザープロファイルに着信通信を関連付けることがあります。混乱を避けるために、各userは一貫して一意のuser IDで識別されていることを確認してください。

対象者: Contactsにアクセスできるワークスペース管理者またはチームメンバー。APIベースの重複排除にはAPI認証情報が必要です。LeadsをUsersに統合するには、Intercom APIまたはInboxから直接行えます。

Intercomがusersを識別する方法

userにメールアドレスとuser_IDの両方を定義すると、Intercomはuser_IDを一意の識別子として使用します。Intercomはまた、メールなしのプロファイルをマージするためにクッキーに基づく識別を使用することがあり、これによりデバイスの動作に基づいてVisitor/LeadとUserのプロファイルを自動的に統合します。既存のメールに対してuser_idを変更すると新しいUserプロファイルが作成され、重複が発生するため避けてください。

CSVインポートによる重複

Intercomでは、Userはuser_idが設定された識別済みの連絡先であり、Leadは未識別の連絡先、つまりまだログインしていないサイト訪問者などです。

CSV(カンマ区切り値)インポート時にユーザープロファイルが重複する一般的な原因は、既存のユーザープロファイルにuser_idが設定されていないが、インポートするCSVにメールとuser_idの両方が含まれている場合です。Intercomは連絡先をIntercom ID、次にuser_id、最後にメールの順で識別するため、インポートにuser_idがある場合はメールでの照合に戻りません。そのため新しい連絡先が作成され、重複が発生します。CSVでデータをインポートする際は、LeadのメールがUserのメールと一致していることを確認してください。Intercomは新しいLeadを既存のUserプロファイルに自動的に統合します。Leadが既に存在する場合は手動での統合が必要です。

CSVインポート時のユーザープロファイルの重複を防ぐには、すべてのusersに対してuser_idの値が一貫して設定されていることを確認してください。既存のuserでuser_idがない場合はAPIを使って更新してください。

重複を防ぐための主要な戦略

  • 「未確認のLeadsをUsersに統合」を有効にして、識別されたセッション中に過去のLeadsをUsersに統合します。

  • 電話ベースのチャネルでは、電話属性に基づいて連絡先を統合するために電話照合を有効にします。

  • システムからの単一で安定したuser_idを主要な識別子として使用し、メールと組み合わせてください。

  • すべての統合(例:Messenger、API、CSVインポート)が同じ識別子を使用していることを確認してください。

例えば、メールアドレスがtest@example.comで異なるuser_IDを持つ2人のusersがいる場合、Intercomはこれらの顧客を2つの異なるusersとして認識します。

user_idが設定されているusersを確認するには、Contacts > People > All usersに移動し、フィルターUser ID has any valueを適用します。フィルターされたビューには、以下の例のように各userのuser_idが表示されます。

「User ID has any value」でフィルターされたIntercom Contactsページのスクリーンショット。アクティブなフィルターは上部バーで強調表示され、結果リストにはUUID形式の文字列や短い整数のuser IDとともにuser名が表示され、どのusersにuser_idが設定されているかが確認できます。

LeadをUserに統合すると、Leadに関連付けられたデータはUserに引き継がれ、Leadプロファイルは削除されます。

LeadをUserに統合する手順

  1. 保持したいUserプロファイルを特定します。

  2. 「merge a lead and a user」APIエンドポイントを使うか、Inboxから手動でLeadをUserプロファイルに変換します。

  3. 重複がある場合は、追加のLeadsをUserプロファイルに統合します。

統合後、Leadプロファイルは完全に削除されます。Userプロファイルは以前Leadに関連付けられていたすべての会話履歴とデータを保持します。

重複の特定方法

保持したくないusersはアーカイブして整理できます。ただし、どちらのレコードを保持するかをまず決める必要があります。方法は2つあります。

1. Rest APIの使用

次のことを行うスクリプトを作成します。

  • Usersの一覧取得

  • 重複の特定

  • 削除したい重複に対してアーカイブリクエストを送る

2. CSVエクスポートの使用

もう一つの方法は連絡先をCSVとしてエクスポートし、Google SheetsやExcelのCOUNTIFなどのスプレッドシート関数を使って重複するメールアドレスの行を特定することです。あるいはGoogle Workspace Marketplaceの重複排除アドオンを使うこともできます。

削除したい重複ユーザープロファイルを特定したら、CSVインポートでタグ付けし、そのタグに基づいてContactsページからアーカイブします。

アーカイブされたusersはContactsリストからは非表示になりますが、完全に削除されるわけではありません。Contacts > People > All usersでアーカイブフィルターを外せばいつでも復元可能です。

ベストプラクティスと推奨事項

Intercomワークスペースで重複ユーザープロファイルを減らすために、以下のベストプラクティスに従ってください。

  1. 識別子の標準化: すべてのデータソースで一貫したuser_idとメールの値を使用してください。

  2. データの事前読み込み: 正確な照合のために、インポートする連絡先に国際形式の電話番号などの属性を含めてください。

  3. 定期的な監視とクリーンアップ: 定期的にデータをエクスポートして重複を特定し、プロファイルを整理してください。

  4. 信頼できるシステムの採用: 一意の識別子を発行し、すべてのデータソースを整合させる集中管理システムを使用してください。

会話を正しいuserプロファイルに移動するには?

Intercomのinbox内の会話が誤った(重複した)userプロファイルに関連付けられている場合、手動で再割り当てできます。

  • 正しいuserを会話の参加者として追加します。

  • 誤ったuserプロファイルを会話から削除します。

重複の整理方法については、Intercom Communityでスレッド全体をお読みください。

誰かがログインせずにあなたのサイトを訪問すると、Intercomはブラウザ生成IDを使って匿名の訪問者として追跡します。その訪問者がリードフォームを送信したり会話を開始した場合、IntercomはそのブラウザIDを識別子としてLead連絡先に昇格させます。

このIDは特定のブラウザとセッションに紐づいているため、異なるデバイスやブラウザからの同一人物の訪問は新しい連絡先として表示されます。確認済みのIDがない限り、Intercomは同一人物であることを認識できません。

推奨される解決策はJWT(JSON Web Token)を使ったIdentity Verificationです。 有効にすると、バックエンドがユーザーの実際のIDを含む暗号署名付きトークンをIntercomに送信します。Intercomはこれを権威ある識別子として扱い、デバイスやブラウザに関係なく同一人物を常に同じ連絡先として認識します。

Messenger経由で送信するデータのセキュリティについては、JWTで学べます。

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