主な注意点

AdSense Management API には、新しいレポートや保存済みレポートを生成するための呼び出しがあります。これには、1 日あたりの収益などの単純な分析や、国ごとのカスタム チャネルごとのクリック率の非常に複雑なテーブルが含まれます。このガイドでは、API との堅牢な統合のために正しく処理する必要があるエッジケースの一覧を示します。

レポートの構造

レポート結果は ReportResult オブジェクトとして返されます。詳細については、レポートのレスポンスのリファレンスをご覧ください。

時系列ディメンションの使用: DATE、WEEK、MONTH

レポートは空の場合もあれば、ギャップがある場合もあります。

リクエストで指定された期間中にアクティビティがなかった場合、広告リクエストは生成されず、その期間の行はレポート サービスに表示されません。これは、グラフをプロットする場合などに重要です。

詳しくは、日付の入力に関するガイドをご覧ください。

同じレポートで MONTH ディメンションと WEEK ディメンションをリクエストする

その結果、好ましくない、または予期しない結果が生じる可能性があります。1 週間が 2 つの異なる月に属している場合、同じ週が月に 1 つずつ、合計 2 つの行が表示されます。

ディメンション指標開始日終了日
WEEK
MONTH
CLICKS2014-04-28 2014-05-03
戻り値:
MONTHWEEK*CLICKS
2014-04 2014-04-27 50
2014-05 2014-04-27 43

* 週最初の曜日

解決策

レポートから MONTH を削除します。

WEEKCLICKS
2014-04-27 93

ディメンション値の照合

プラットフォーム(パソコン、ハイエンド モバイル デバイスなど)に関連するディメンションをリクエストする場合は、アクティビティのあるプラットフォームのみが表示されます。特定の日、週、月にハイエンド モバイル デバイスからのアクセスがない場合、そのカテゴリの情報はありません。

ディメンション指標開始日終了日
PLATFORM_TYPE_NAME
MONTH
AD_REQUESTS 2014-02-012014-03-31
戻り値:
MONTHPLATFORM_TYPE_NAMEAD_REQUESTS
2014-03 パソコン 100
2014-03 ハイエンド携帯端末 5
2014-04 パソコン 75
解決策

レポートの結果を処理する際、結果にないディメンション値はすべてゼロの値と見なします。

MONTHPLATFORM_TYPE_NAMEAD_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 パブリッシャーはタイムゾーンをいつでも変更できるため、レポートの急激な増加や減少が起こる可能性があります。詳しくは、ローカル タイムゾーン レポートに関するガイドをご覧ください。