Google Analitics Core Reporting API で Audienceのデータが取得できない
標題の通りです。
言語はJavascriptで開発しています。
コードは以下のような感じです。
gapi.client.analytics.data.ga.get({
'ids': 'ga:' + profileId,
'start-date': $(".start_date input").val(),
'end-date': $(".end_date input").val(),
'dimensions': 'ga:userGender',
'metrics': 'ga:sessions'
})
.then(function(response) {
setTimeout(function(){
var formattedJson = JSON.stringify(response.result, null, 2);
$('#query-output').html(formattedJson);
generateTableDataForPage13(response.result["rows"], ".page13-table", sessionCount);
}, 2000);
})
.then(null, function(err) {
// Log any errors.
console.log(err);
}
});
実行すると結果セットの取得まではうまくいきます。
{
"kind": "analytics#gaData",
"id": "****”,
"query": {
"start-date": "2016-08-01",
"end-date": "2016-08-31",
"ids": "ga:****",
"dimensions": "ga:userGender",
"metrics": [
"ga:sessions"
],
"start-index": 1,
"max-results": 1000
},
"itemsPerPage": 1000,
"totalResults": 0,
"selfLink": "https://www.googleapis.com/analytics/v3/data/ga?ids=ga:****&dimensions=ga:userGender&metrics=ga:sessions&start-date=2016-08-01&end-date=2016-08-31",
"profileInfo": {
"profileId": "****",
"accountId": "****",
"webPropertyId": "UA-****-1",
"internalWebPropertyId": "****",
"profileName": "****",
"tableId": "ga:****"
},
"containsSampledData": false,
"columnHeaders": [
{
"name": "ga:userGender",
"columnType": "DIMENSION",
"dataType": "STRING"
},
{
"name": "ga:sessions",
"columnType": "METRIC",
"dataType": "INTEGER"
}
],
"totalsForAllResults": {
"ga:sessions": "0"
}
}
のような感じですが、"totalsForAllResults"が0件になってしまいます。
取得対象のGAアカウントの「ユーザーの分布レポートとインタレスト カテゴリ レポートの有効化」が無効になっていることが原因かと思ったのですが、「ユーザー属性とインタレストカテゴリに関するレポート」が有効になっているアカウントで試しても結果は同じでした。
ちなみに、Audience以外のデータは問題なく取得できております。
さて、どうすれば男女比や年齢別のデータ等、Audienceに関するデータが取得できるでしょうか…
よろしくお願いします。