通常、ビジネスはウェブサイト、モバイルアプリ、Messengerのように複数のチャンネルを使用してカスタマーとやり取りを行います。利用者がウェブサイトやモバイルアプリでFacebookログインを使用すると、特定のFacebookアプリに対してID (app-scoped ID)が作成されます。Messenger経由でビジネスとやり取りした場合は、Messengerのボットに関連付けられている特定のページに対してID (page-scoped ID)が作成されます。つまり、利用者は同じでも、コミュニケーションのためのチャンネルが異なると、IDも変わります。app-scoped IDは、利用者がアプリにログインしたときに作成されるため、利用者がまだアプリをインストール、サインインしていない場合は、app-scoped IDが表示されません。
ビジネスでは、複数のチャンネル間で、利用者にシームレスなサービスを提供する必要がある場合があります。たとえば、ある利用者がMessengerのボットを通じてビジネスとやり取りをする場合に、その利用者がFacebookアプリの既存のカスタマー(ウェブサイトやモバイルアプリでFacebookログインを使用したことがあるなど)であることが分かれば、よりパーソナライズされたサービスを提供できます。Facebookには、同じビジネスが所有するアプリやMessengerのボット間で同じ利用者のIDを取得するためのAPIが用意されています。
まず、アプリと、Messengerのボットに関連付けられているページを同じビジネスが所有していることをFacebookに伝える必要があります。そのためには、Facebookビジネスマネージャを使用して次の操作を実行します。
次に、ids_for_apps
エッジまたはids_for_pages
エッジにクエリを実行してユーザーノードを探し、IDを取得します。
初回のAPI呼び出しの時点で、アプリ審査が開始される場合があります。審査は完了までに、約48時間かかります。
本ドキュメントのコンテンツ:
このAPIの主な使用事例として、次のようなものがあります。
ids_for_apps
GET /{user-id}/ids_for_apps ?access_token=[page_access_token] &appsecret_proof=[appsecret_proof]
GET /{user-id}/ids_for_apps ?app=10152368852405295 &access_token=[page_access_token] &appsecret_proof=[appsecret_proof]
ids_for_pages
GET /{user-id}/ids_for_pages ?access_token=[app_access_token] &appsecret_proof=[appsecret_proof]
GET /{user-id}/ids_for_pages ?page=380374449010653 &access_token=[app_access_token] &appsecret_proof=[appsecret_proof]
ids_for_apps
GET /{user-id}/ids_for_apps ?access_token=[app_access_token]
GET /{user-id}/ids_for_apps ?app=10152368852405295 &access_token=[app_access_token]
ids_for_pages
GET /{user-id}/ids_for_pages ?access_token=[page_access_token] &appsecret_proof=[appsecret_proof]
GET /{user-id}/ids_for_pages ?app=380374449010653 &access_token=[page_access_token] &appsecret_proof=[appsecret_proof]
GET /{user-id} ?fields=name,age_range,ids_for_apps,ids_for_pages &access_token=[app_access_token]
{ "name": "John Smith", "age_range": { "min": 21 }, "ids_for_apps": { "data": [ { "id": "10152368852405295", "app": { "category": "Business", "link": "https://www.facebook.com/games/?app_id=1419232575008550", "name": "John's Game App", "id": "1419232575008550" } }, { "id": "645195294", "app": { "link": "https://apps.facebook.com/johnsmovieappns/", "name": "JohnsMovieApp", "namespace": "johnsmovieappns", "id": "259773517400382" } } ], "paging": ... }, "ids_for_pages": { "data": [ { "id": "12345123", // The psid for the user for that page "page": { "category": "Musician", "link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/", "name": "John's Next Great Thing", "id": "380374449010653" } } ], "paging": ... }, "id": "645195294" }
GET /{user-id} ?fields=name,is_payment_enabled,ids_for_apps,ids_for_pages &access_token=[page_access_token] &appsecret_proof=[appsecrete_proof]
{ "name": "John Smith", "is_payment_enabled": true, "ids_for_apps": { "data": [ { "id": "10152368852405295", "app": { "category": "Business", "link": "https://www.facebook.com/games/?app_id=1419232575008550", "name": "John's Game App", "id": "1419232575008550" } }, { "id": "645195294", "app": { "link": "https://apps.facebook.com/johnsmovieappns/", "name": "JohnsMovieApp", "namespace": "johnsmovieappns", "id": "259773517400382" } } ], "paging": ... }, "ids_for_pages": { "data": [ { "id": "12345123", // The psid for the user for that page "page": { "category": "Musician", "link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/", "name": "John's Next Great Thing", "id": "380374449010653" } } ], "paging": ... }, "id": "645195294" }
このAPIは、ビジネスのアプリやページのIDを、そのビジネスが代理で所有、維持する別のアプリやページにリンクさせる場合にのみ使用できます。たとえば、サービスプロバイダがこのAPIを使用して、複数のカスタマーのサポートをすることはありません。
このポリシーに違反する恐れがある場合は、APIリクエストがレビューの対象となり、エラーメッセージ「(#200) Your business is currently going through review to access this API (現在、このAPIへのアクセスについて、あなたのビジネスがレビューされています)」が返されます。