プロジェクトを作成する
Google API コンソールから新しくプロジェクトを作成しておく。
[新しいプロジェクト] を選択後、プロジェクト名(と必要であればプロジェクトID)を指定して [作成] するだけ。
API を有効化する
[+ APIとサービスの有効化] ボタンからAPIライブラリを開く。AdSense Management API を選択後、[有効にする] を押せばAPIの有効化は完了。
同意画面の設定を行う
同意画面とは一般ユーザがサービスを利用する場合に利用に同意するための画面を指す。OAuthクライアントIDを作成するためにはこの同意画面の設定が必要となる。
User Type
User Type の選択では [外部] にチェック。Google Workspace ユーザではない場合、[内部] を選択することはできない。[作成] で先に進む。
アプリケーション情報
アプリ名とユーザーサポートメール、デベロッパーの連絡先情報のメールアドレスを入力。アプリ名に AdSense App は指定できなかった。[保存して次へ]
アプリケーションのスコープ
[スコープを追加または削除] からスコープを更新する。AdSense Management API にチェックを入れて [更新] を押す。AdSense Management API にも「AdSense データの表示と管理」「AdSense データを表示」の2種類あるが、目的によって使い分ける。データの管理を行わない場合は、「AdSense データを表示」を選択しておくのが無難。あとで更新できる。[保存して次へ]
テストユーザ登録
テストユーザを登録するテストとして公開する場合は、テストユーザのメールアドレスを指定する。本番公開すると全てのユーザがアクセスできるようになる。
OAuthクライアントID作成
[+ 認証情報を作成] から [OAuthクライアント ID] を選択。
[アプリケーションの種類] から適切なものを選ぶ。クライアント名を指定して [作成] を押すと完了する。
リダイレクトURIを適当なものに設定しておく(http://localhost/authorize とかで十分)。この後の認証作業で、リダイレクトURIの不一致で何度かひっかかった。注意書きにあるように変更の反映には多少時間がかかることがある。
Python による実装
公式が出しているサンプルをベースに実装する。
初回認証
adsense_util.py
で credentials を取得している。作成したクライアント情報を JSON ファイルとしてダウンロードして client_secrets.json として保存しておいて get_adsense_credentials を実行する。
表示される URL にアクセスしてアプリを許可すると adsense.dat ファイルが作成される。この作業は初回のみ必要で、次回以降は adsense.dat があればアプリを許可する作業はスキップできる。これで準備が整った
レポートの取得
レポートを取得する場合は generate_report.py
を参考にする。取得した credentials を使って service を作成し service.accounts().reports().generate().execute()
する。