Audience NetworkレポートAPI V2とFacebookログインの統合

Facebookログインは、Audience NetworkレポートAPIデータへのアクセスを許可するための新しい手段です。これは、収益化マネージャインターフェイスからシステムユーザートークンをコピーペーストする従来の方法を置き換えるアプローチです。収益化マネージャトークンの場合はビジネスの部外者への漏洩リスクがありますが、このアプローチではより安全にユーザーのデータにアクセスできます。

このドキュメントの主な目的は、パブリッシャーに代わってレポートAPIデータにアクセスするダイレクトレポートAPI統合パートナー、モバイル測定パートナー、メディエーションパートナーといったFacebookパートナーを対象に、ガイダンスを提供することです。

レポートAPIデータの取得にサードパーティを使用している場合

すでにパートナー(モバイル測定パートナーまたはメディエーションパートナー)を利用している場合、追加のコーディング作業を行う必要はありません。パートナーがFacebookログインフローを統合していることを確認してください。「FBでログイン」オプションをクリックし、生成するトークンでアクセスできるようにするプロパティを選択する必要があります。

すべてのプロパティを選択した場合、トークンは、トークンを作成したユーザーがビジネスマネージャのプロパティにアクセスできる限り、ビジネスのすべてのプロパティへのアクセスを提供します。

アクセス許可

レポートAPIを直接使用する必要がある場合は、まずFacebookアプリを作成し、必要なアクセス許可を取得する必要があります。アプリがAudience NetworkレポートAPIデータにアクセスするには、read_audience_network_insightsアクセス許可が必要になります。アプリのためにこのアクセス許可を取得するには、ビジネスがAudience Networkにオンボーディングする必要があります。

  • ビジネスアカウントのフィールドで、新たに作成したビジネスを選択します

アプリの作成後、「Audience Network」を選択し、[設定]ボタンをクリックして収益化マネージャアカウントにリンクする必要があります。リンクしたい収益化マネージャアカウントを選択する必要があります。

これは、 developers.facebook.com/apps にアクセスして、今作成したばかりのアプリを選択して行うこともできます。

これで該当アプリがAudience Networkにオンボーディングされ、read_audience_network_insightsアクセス許可を使用できるようになります。read_audience_network_insightsが表示されない場合は、アプリが収益化マネージャビジネスアカウントにアクセスできることを確認してください。

Facebookログインですでにread_insights permissionを取得している場合は、それを利用することもできますが、read_audience_network_insightsアクセス許可への移行をおすすめします。

レポートAPIへのアクセス方法は、統合の種類によって異なります。以下のうち、自分のケースに該当する指示に従ってください。

UIインターフェイスなしの直接API統合

フロントエンド/UIインターフェイスなしのカスタム(直接)レポートAPI統合があり、それを使用して自分のビジネスのデータのみをクエリする場合、以下の指示に従ってレポートAPIにアクセスできます。

グラフAPIエクスプローラでユーザートークンを作成する

  1. アプリですでに「マーケティングAPI」を使っている場合は、このステップをスキップします。それ以外の場合は、read_audience_network_insightsアクセス許可の取得に関する手順に従ってください。
  2. グラフAPIエクスプローラを開きます。
  3. アプリを選択する
  4. read_audience_network_insightsアクセス許可([許可] > [イベントグループページ]と選択すると見つかります)を選択し、[アクセストークンを生成]をクリックします。
    1. このトークンを収益化マネージャから得たトークンの代わりに使用することで、Audience NetworkレポートAPIデータに短時間アクセスできるようになります。
    2. 免責事項: このトークンは2時間で期限切れになります。以下の手順に従って長期アクセストークンに切り替える必要があります。

作成したトークンを長期アクセストークンに切り替える

  1. アクセストークンデバッガーに移動します。
  2. トークンを挿入し、[デバッグ]を押します。
  3. すべてのトークン情報を掲載した表の一番下までスクロールして、[アクセストークンを延長]ボタンをクリックします。
  4. 生成されたトークンをコピーします。

このトークンでAudience NetworkレポートAPIデータにアクセスできるようになりました。

UIインターフェイスありの直接API統合

以下のガイドは、Facebookログインボタンを配置できる独自のUIインターフェイスを持つパブリッシャーやパートナーを対象としています。このガイドは、独自のデータにアクセスするパブリッシャーや、他のパブリッシャーの収益化データにそのアクセス許可を使ってアクセスするパートナーにご活用いただけます。

以下のガイドのエンドツーエンドデモビデオ(上記のアクセス許可のステップを含む)も参照できます。

何らかのエラーが発生しました
エラーが発生し、この動画を再生できませんでした。
  • 開発者ポータルで、前のステップで新規作成したビジネスアプリを選択します。
  • このアプリに新しい「Facebookログイン」製品を追加します。
  • [ウェブ]オプションを選択し、統合の手順に従います。
  • Facebookログインエクスペリエンスを表示するウェブサイトURLを挿入してください。このURLは、HTTPS プロトコルをサポートするものでなければなりません。
  • 統合ステップの終わりに、自身のサイトにFacebookログインを統合するためのサンプルコードが提供されます。このコードをコピーできますが、提案されているpublic_profile,emailアクセス許可ではなく、新たにアクセスされたread_audience_network_insightsアクセス許可を利用してください。この新しいアクセス許可を使うと、ボタンコードは次のようになります。
<fb:login-button 
  scope="read_audience_network_insights"
  onlogin="checkLoginState();">
</fb:login-button>
  • アプリのFacebookログインの製品設定ページで、JavaScript SDKが有効になっていることを確認してください
  • これでユーザーは、対象のページでFacebookログインフローを実施して、アクセストークンを生成できるようになります。
  • アクセストークンは、前のステップのstatusChangeCallback JavaScriptメソッドに渡された引数の一部として返されます。
  • デフォルトでは、このトークンは約2時間で期限切れになります。
  • 開発者は、このトークンをユーザーインタラクションの追加なしの長期アクセストークンに拡張するリクエストを出すことができます。
    • 長期トークンは、FacebookのサーバーへのレポートAPIリクエストが行われるタイミングで、1日1回更新されます。リクエストがまったく行われないと、トークンは約60日後に有効期限切れになり、利用者は新しいトークンを生成する必要があります。
  • このトークンを通じて入手可能なデータは、このFacebookログインフローを行った人や、どのようなデータを共有することに同意されたかによって大きく左右されることに注意してください。そのため、ビジネス従業員がこのフローを実行している場合、結果として得られるアクセストークンはその従業員と同じ権限を持つことになります。

トラブルシューティング

エラーメッセージ説明アクション/解決方法

クエリを実行しているユーザーまたはアプリが所有しているものではないページ、ビジネス、アプリ、ドメイン、またはイベントソースグループのインサイトを読み取っています

Facebookログインのトークンの場合、トークンを発行するアプリに十分なアクセス許可(read_audience_network_insights)がないか、ユーザー自身に特定のプロパティを閲覧するアクセス許可がないということです。これは次のような理由で起こります: * トークンを生成したユーザーにビジネスマネージャへのアクセスが付与されていない。* トークンを作成したユーザーに、クエリ対象の一部のプロパティへのアクセスが付与されていない。

ビジネス管理者は、トークンを生成したいユーザーまたはトークンを作成したユーザーに、すべてのプロパティへのアクセスを提供する必要があります。

データがないか空のデータです

これは通常、データの全部または一部がMetaのプライバシー集約を使用してフィルタリングされたことを意味します。これは、MoMaデータと照らして検証することもできます。

omitted_resultsの配列があるかどうかを確認してください。この配列があると、データが集約されていることを意味します。より大規模なリクエストを試してください。詳細については、集約セクションをご覧ください。

read_audience_network_insightsがトークンに認識されません

トークンを生成するために作成されたアプリはタイプがビジネスとして作成されておらず、かつそのアプリがAudience Network収益化マネージャにリンクされています。

トークンを生成するためのアプリは、必ずビジネスとして作成してください。新しいアプリを作成して、「アクセス許可」セクションの指示に確実に従ってください。 developers.facebook.com/apps にアクセスしてread_audience_network_insightsを認識しないアプリを選択し「Audience Network」を選択し[設定]ボタンをクリックしてください。

Error validating access token: Session has expired on ...

トークンの期限が切れています

トークンが長期トークンに変換されていることを確認してください。「作成したトークンを長期アクセストークンに切り替える」セクションの指示に従い、FacebookのサーバーにレポートAPIリクエストを送信して、長期トークンを1日1回更新してください。リクエストがまったく行われないと、トークンは約60日後に有効期限切れになり、利用者は新しいトークンを生成する必要があります。

同じ名前のアプリが2つ表示されています

どちらかのアプリにread_audience_network_insightsアクセス許可があるか確認します

正しいread_audience_network_insightsアクセス許可がある方のアプリを使用します

(#200)レポートAPI v2.0へのアクセス方法が変更されました。このAPIにアクセスするには、アプリにFacebookログインを実装する必要があります。

新しい方法でAPIにアクセスするための資格情報を使用していません。

新しいアプリを最初から作成し(トークンの作成のみに使用する)、その際にビジネスタイプとして作成してください。