手順
Google Analytics Data API の有効化
手順1
Google Cloud で左上の「メニュー」から「API とサービス>ライブラリ」を選択する。
(事前にこちらを参考にして Google Cloud のプロジェクトを作成しておく必要がある)
手順2
「Google Analytics Data API」を探して「有効にする」を押す。
手順3
必要に応じて「認証情報>認証情報を作成」から認証情報を作成する。
手順4
必要に応じて「認証情報>同意画面を構成」から OAuth 同意画面を構成する。
(OAuth 同意画面を構成する際は必ずテストユーザーを1人以上追加する)
(引用元:Google APIを有効にし、クライアントファイルをダウンロードする。)
Google Apps Script との連携
手順5
左上の「メニュー」から「Cloud の概要>ダッシュボード」を選択する。
手順6
「プロジェクト情報」の「プロジェクト番号」をコピーする。
手順7
任意の Google Apps Script プロジェクトを開き、左の「プロジェクトの設定」から「Google Cloud Platform(GCP)プロジェクト>プロジェクトを変更」を押す。
手順8
「手順6」でコピーしたプロジェクト番号を「GCP のプロジェクト番号」にペーストして「プロジェクトを設定」を押す。
手順9
エディタに戻り、「サービス」の右の「+」から「Google Analytics Data API」を選択して右下の「追加」を押す。
Google Apps Script での Google Analytics Data API の使用
手順10
Google Analytics に行き、左下の「管理」から「プロパティ>プロパティの詳細」で「プロパティID」をコピーする。
(事前に Google Analytics のアカウントとプロパティを作成しておく必要がある)
手順11
下記のコードを記述して OAuth 同意画面で追加したテストユーザーでこのプログラムを実行する。
//PV数を取得する
function getPageViews()
{
let metric = AnalyticsData.newMetric();
metric.name = "screenPageViews";
let dimension = AnalyticsData.newDimension();
dimension.name = "date";//PV数を日付ごとに分ける
let dateRange = AnalyticsData.newDateRange();
dateRange.startDate = "2024-01-01";//計測開始日
dateRange.endDate = "today";//計測終了日
let request = AnalyticsData.newRunReportRequest();
request.dimensions = [dimension];
request.metrics = [metric];
request.dateRanges = dateRange;
const RESPONSE = JSON.parse(AnalyticsData.Properties.runReport(request, "properties/{プロパティID}").toString());
let pageViews = 0;
for(let i = 0; i < RESPONSE.rows.length; i++)
{
pageViews += parseInt(RESPONSE.rows[i].metricValues[0].value);
}
Logger.log(pageViews);
return pageViews;
}
手順12
権限を承認後、実行ログに PV 数が正確に表示される事を確認する。
(「User does not have sufficient permissions for this property.」と表示された場合は Google Analytics の左下の「管理」から「プロパティ>プロパティのアクセス管理」に行き、右上の「+」からプロパティへの「閲覧者」以上のアクセス権を持つユーザーを追加してそのユーザーでプログラムを実行する)
その他
参考記事
最後に
株式会社ModelingXについて
富山県を拠点とするスタートアップ企業、ModelingXは、2022年4月に創業し、「テクノロジーで感動体験を提供する」というミッションを掲げています。当社が開発中の暮らし体験メタバース「MELIFE(ミライフ)」は、バーチャル住宅展示場や銀行相談、家具購入、婚活などができる「地域単位の新たな経済圏」を目指しています。
↓サービスサイトはこちらから↓
ModelingXはリモートワーク&フレックスタイム制を完備。
UnityやUEを共に探求する仲間を全国から募集しています。
↓企業詳細はこちら↓