毎回忘れてしまうのでまとめました。
こちらは2022/08時点の情報なので最新情報は下URLをご参照下さい。
まずはGoogle Cloud Platformからプロジェクトを作成します。
作成後は下URLからプロジェクトのAdMobのAPIを有効化します。
APIは下画面の「APIとサービスの有効化」から有効にできます。
次はAPIアクセスのためのリフレッシュトークンを取得します。
先程のページの「認証情報」の「CREATE CREDENTIALS」ボタンからOAuthクライアントIDを作成します。
アプリケーションの種類はデスクトップアプリを選択します。
名前は分かりやすい名前を付けます。
ここで取得したclient_idを使って下のURLにアクセスします。
アクセスするとAdMobのAPIへのアクセス許可を求められるので許可します。
https://accounts.google.com/o/oauth2/v2/auth?scope=https://www.googleapis.com/auth/admob.readonly&access_type=offline&include_granted_scopes=true&redirect_uri=http://localhost:3000&response_type=code&client_id=[先程取得したclient_id]
許可をした後は下のURLに飛ばされます。
このURLのcodeの部分はリフレッシュトークン取得に使うのでメモしておきます。
http://localhost:3000/?code=XXXX&scope=https://www.googleapis.com/auth/admob.readonly%20https://www.googleapis.com/auth/adsense.readonly
今取得したcodeとclient_idとclient_secretを使って下URLにリクエストを送ります。
curl -d client_id=[先程取得したclient_id] -d client_secret=[先程取得したclient_secret] -d redirect_uri=http://localhost:3000 -d grant_type=authorization_code -d code=[先程メモしたcode] https://accounts.google.com/o/oauth2/token
レスポンスは下のとおりです。
refresh_tokenの部分にリフレッシュトークンが入ります。
{ "access_token": "XXX", "expires_in": 3599, "refresh_token": "XXX", "scope": "https://www.googleapis.com/auth/admob.readonly https://www.googleapis.com/auth/adsense.readonly", "token_type": "Bearer" }