AdSense Management API には、新しいレポートや保存済みレポートを生成するための呼び出しがあります。これには、1 日あたりの収益などの単純な分析や、国ごとのカスタム チャネルごとのクリック率の非常に複雑なテーブルが含まれます。このガイドでは、API との堅牢な統合のために正しく処理する必要があるエッジケースの一覧を示します。
レポートの構造
レポート結果は ReportResult
オブジェクトとして返されます。詳細については、レポートのレスポンスのリファレンスをご覧ください。
時系列ディメンションの使用: DATE、WEEK、MONTH
レポートは空の場合もあれば、ギャップがある場合もあります。
リクエストで指定された期間中にアクティビティがなかった場合、広告リクエストは生成されず、その期間の行はレポート サービスに表示されません。これは、グラフをプロットする場合などに重要です。
詳しくは、日付の入力に関するガイドをご覧ください。
同じレポートで MONTH ディメンションと WEEK ディメンションをリクエストする
その結果、好ましくない、または予期しない結果が生じる可能性があります。1 週間が 2 つの異なる月に属している場合、同じ週が月に 1 つずつ、合計 2 つの行が表示されます。
例
ディメンション | 指標 | 開始日 | 終了日 |
---|---|---|---|
WEEK MONTH |
CLICKS | 2014-04-28 | 2014-05-03 |
戻り値:
MONTH | WEEK * | CLICKS |
---|---|---|
2014-04 | 2014-04-27 | 50 |
2014-05 | 2014-04-27 | 43 |
* 週最初の曜日
解決策
レポートから MONTH
を削除します。
WEEK | CLICKS |
---|---|
2014-04-27 | 93 |
ディメンション値の照合
プラットフォーム(パソコン、ハイエンド モバイル デバイスなど)に関連するディメンションをリクエストする場合は、アクティビティのあるプラットフォームのみが表示されます。特定の日、週、月にハイエンド モバイル デバイスからのアクセスがない場合、そのカテゴリの情報はありません。
例
ディメンション | 指標 | 開始日 | 終了日 |
---|---|---|---|
PLATFORM_TYPE_NAME MONTH |
AD_REQUESTS |
2014-02-01 | 2014-03-31 |
戻り値:
MONTH | PLATFORM_TYPE_NAME | AD_REQUESTS |
---|---|---|
2014-03 | パソコン | 100 |
2014-03 | ハイエンド携帯端末 | 5 |
2014-04 | パソコン | 75 |
解決策
レポートの結果を処理する際、結果にないディメンション値はすべてゼロの値と見なします。
MONTH | PLATFORM_TYPE_NAME | AD_REQUESTS |
---|---|---|
2014-03 | パソコン | 100 |
2014-03 | ハイエンド携帯端末 | 5 |
2014-04 | パソコン | 75 |
2014-04 | ハイエンド モバイル デバイス | 0 |
連続した複数のレポートを組み合わせる
レポートが大きすぎて一度に生成できない場合は、バッチ処理が必要になることがあります。アプリでこれを行う場合は、次の点を考慮してください。
WEEK
またはMONTH
ディメンションを使用していて、週または月の途中でレポートを分割すると、各レポートに異なるデータを含む重複エントリが存在します。- すべてのレポートの指標とディメンションが同じになるようにしてください。異なるディメンションではデータを組み合わせることができない場合があります。
特別アカウント
ユーザーによっては、予想外の属性や知らない属性を持つ AdSense アカウントを使用していることがあります。次の点を考慮してください。
- 何千ものドメインやサイトを持つパブリッシャー様
- 何千もの広告ユニットやカスタム チャネルを運用しているパブリッシャー様
- 複数の広告クライアント(検索向け AdSense、動画向け AdSense など)に関するレポートを作成するパブリッシャー
複数のアカウント
ユーザーは複数の AdSense アカウントにアクセスできます。このため、API の呼び出しごとにアカウント ID を指定する必要があります。accounts.list
を呼び出すとアカウントのリストが取得され、Account Chooser のダイアログがユーザーに表示されます。取得されたアカウントの数が 1 の場合は、この方法をバイパスできます。
タイムゾーンの変更
AdSense パブリッシャーはタイムゾーンをいつでも変更できるため、レポートの急激な増加や減少が起こる可能性があります。詳しくは、ローカル タイムゾーン レポートに関するガイドをご覧ください。