取得結果
GoogleAnalyticsの下の数字部分をcurlコマンドで取得しました。
curlコマンドの実行結果
... [{"name":"rt:activeUsers", "columnType":"METRIC", "dataType":"INTEGER"}], "totalsForAllResults":{"rt:activeUsers":"9"}, "rows":[["9"]]}
流れ
最終的に発行するコマンドは以下です。
curl \ 'https://www.googleapis.com/analytics/v3/data/realtime?ids=ga%3A<ビューID>&metrics=rt%3AactiveUsers' \ --header 'Authorization: Bearer <アクセストークン>' \ --header 'Accept: application/json' \ --compressed
要はビューIDとアクセストークンがあれば冒頭の結果を取得できます。
ビューID
自分のブログのビューIDを確認します。
GoogleAnalyticsの設定>にある以下の部分です。
設定>アカウント>プロパティ>ビュー>ビューの設定 で確認できます。
私の環境だと9桁の数字でした。
以下サイトで動作確認もできます。
右側に以下のような箇所があるので
ids欄に ga:XXXXXXX (Xにビューコードを入れる)
metrics欄に rt:activeUsers
とした状態でEXECUTEボタンを押下してください。OAuth認証画面が開き、認証に通るとJSONの出力結果が表示されます。
アクセストークン
認証部分を省略すべく、以下サイトを参考にアクセストークンを取得します。
また、認証用のサービスもGoogleAnalyticsなので以下に変更してください。
https://www.googleapis.com/auth/analytics
リアルタイムユーザを取得
アクセストークンが取得できれば以下の<ビューID>と<アクセストークン>を置き換えてターミナルから実行してください。<>記号も不要です。
curl \ 'https://www.googleapis.com/analytics/v3/data/realtime?ids=ga%3A<ビューID>&metrics=rt%3AactiveUsers' \ --header 'Authorization: Bearer <アクセストークン>' \ --header 'Accept: application/json' \ --compressed
ちなみにアクセストークンを取得した際の
$ curl -d client_id=... { "access_token": "XXX", "expires_in": 3600, "refresh_token": "XXX", "scope": "https://www.googleapis.com/auth/analytics", "token_type": "Bearer"
にあるように3600秒、つまり1時間経つとアクセストークンの値は無効になります。
更新したい場合はrefresh_tokenを用いて以下コマンドで新たなアクセストークンを発行できることも併せて記載しておきます。
curl -d "client_id=XXX&client_secret=XXX&refresh_token=XXX&grant_type=refresh_token" https://accounts.google.com/o/oauth2/token
以上、同様の事を実施したい方の参考になれば幸いです。