Google API 第14回

投稿者: | 2015年8月3日

今回はAnalytics Multi-Channel Funnels Reporting APIと
Analytics Real Time Reporting APIについて紹介します。

■Analytics Multi-Channel Funnels Reporting APIについて
時間の経過とともに複数のマーケティングチャネルを分析することができます。
マルチチャネルのデータを使用してカスタムレポートを作成できます。
※マーケティングチャネルとは商品が消費者に届くまでの流通経路のことです。
※マルチチャネルとは販売やコンバージョンに至るまでのマーケティングチャネルのことです。
※コンバージョンとはウェブサイトごとに設定された最終目標のことで、ウェブサイトの目的によって異なります。

■Analytics Real Time Reporting APIについて
現在、ウェブサイトを閲覧しているユーザーを分析することができます。
リアルタイムのデータを使用してカスタムレポートを作成できます。

■Analytics Multi-Channel Funnels Reporting APIと
Analytics Real Time Reporting APIの使用方法

VBAを用いた方法を紹介します。
Google APIを用いたVBAの認証方法は第12回で紹介しているので省略します。
※Google APIを用いたVBAの認証方法は参考サイトにあるGoogle API 第12回を参照してください。

・Analytics Multi-Channel Funnels Reporting API
まずリクエストするURLを作成します。

baseUrl = "https://www.googleapis.com/analytics/v3/data/mcf"
sUrl = baseUrl
sUrl = sUrl & "?ids=ga:" & CStr(viewID)
sUrl = sUrl & "&start-date=" & Format(sDate, "YYYY-MM-DD")
sUrl = sUrl & "&end-date=" & Format(eDate, "YYYY-MM-DD")
sUrl = sUrl & "&metrics=mcf:firstImpressionConversions"

必須パラメータはids、start-date、end-date、metricsです。
その他のパラメータはdimensions、filters、max-results、sort、start-indexです。
idsには解析するビューIDを指定します。
start-dateとend-dateには解析する期間を指定します。
metricsとdimensionsには取得するパラメータを指定します。
ここで使用するパラメータはAnalytics Multi-Channel Funnels Reporting API専用です。
パラメータは全て「mcf:」の接頭から始まります。
※パラメータは参考サイトのAnalytics Multi-Channel Funnels Reporting APIのdimensionsとmetricsを参照してください。

次にヘッダーにAPI通信するためのアクセストークンとXMLを取得するためのコンテンツタイプを付与しリクエストを行います。

oHTTP.Open "GET", sUrl, False
oHTTP.setRequestHeader "Authorization", "Bearer " & access_token
oHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded;charset=UTF-8"
oHTTP.send

返り値は下記のようなJSONで取得できます。
リクエストしたデータはtotalsForAllResultsに配列として格納されています。
※JSONの処理については参考サイトのGoogle API第13回を参照してください。

{
 "kind": "analytics#mcfData",
 "id": "https://www.googleapis.com/analytics/v3/data/mcf?ids=ga:xxxxxxxxx&metrics=mcf:firstImpressionConversions&start-date=2015-06-01&end-date=2015-06-30",
 "query": {
  "start-date": "2015-06-01",
  "end-date": "2015-06-30",
  "ids": "ga:xxxxxxxxx",
  "metrics": [
   "mcf:firstImpressionConversions"
  ],
  "start-index": 1,
  "max-results": 1000
 },
 "itemsPerPage": 1000,
 "totalResults": 0,
 "selfLink": "https://www.googleapis.com/analytics/v3/data/mcf?ids=ga:xxxxxxxxx&metrics=mcf:firstImpressionConversions&start-date=2015-06-01&end-date=2015-06-30",
 "profileInfo": {
  "profileId": "xxxxxxxxx",
  "accountId": "yyyyyyyy",
  "webPropertyId": "UA-yyyyyyyy-1",
  "internalWebPropertyId": "zzzzzzzz",
  "profileName": "すべてのウェブサイトのデータ",
  "tableId": "mcf:xxxxxxxxx"
 },
 "containsSampledData": false,
 "columnHeaders": [
 {
  "name": "mcf:firstImpressionConversions",
  "columnType": "METRIC",
  "dataType": "INTEGER"
  }
 ],
 "totalsForAllResults": {
  "mcf:firstImpressionConversions": "0"
 }
}

・Analytics Real Time Reporting API
まずリクエストするURLを作成します。

baseUrl = "https://www.googleapis.com/analytics/v3/data/realtime"
sUrl = baseUrl
sUrl = sUrl & "?ids=ga:" & CStr(viewID)
sUrl = sUrl & "&metrics=rt:activeUsers"

必須パラメータはids、metricsです。
その他のパラメータはdimensions、filters、max-results、sortです。
ここで使用するパラメータはAnalytics Real Time Reporting API専用です。
パラメータは全て「rt:」の接頭から始まります。
※パラメータは参考サイトのAnalytics Real Time Reporting APIのdimensionsとmetricsを参照してください。

次にヘッダーにAPI通信するためのアクセストークンとXMLを取得するためのコンテンツタイプを付与し
リクエストを行います。

oHTTP.Open "GET", sUrl, False
oHTTP.setRequestHeader "Authorization", "Bearer " & access_token
oHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded;charset=UTF-8"
oHTTP.send

返り値は下記のようなJSONで取得できます。
リクエストしたデータはtotalsForAllResultsに配列として格納されています。

{
 "kind": "analytics#realtimeData",
 "id": "https://www.googleapis.com/analytics/v3/data/realtime?ids=ga:xxxxxxxxx&metrics=rt:activeUsers",
 "query": {
  "ids": "ga:xxxxxxxxx",
  "metrics": [
   "rt:activeUsers"
  ],
  "max-results": 1000
 },
 "totalResults": 1,
 "selfLink": "https://www.googleapis.com/analytics/v3/data/realtime?ids=ga:xxxxxxxxx&metrics=rt:activeUsers",
 "profileInfo": {
  "profileId": "xxxxxxxxx",
  "accountId": "yyyyyyyy",
  "webPropertyId": "UA-yyyyyyyy-1",
  "internalWebPropertyId": "zzzzzzzz",
  "profileName": "すべてのウェブサイトのデータ",
  "tableId": "realtime:xxxxxxxxx"
 },
 "columnHeaders": [
  {
   "name": "rt:activeUsers",
   "columnType": "METRIC",
   "dataType": "INTEGER"
  }
 ],
 "totalsForAllResults": {
  "rt:activeUsers": "1"
 }
}

以上がAnalytics Multi-Channel Funnels Reporting APIと
Analytics Real Time Reporting APIの説明になります。

今回紹介したAPIを使用すると
コンバージョンに至るまでのアクセス数やコンバージョンに至る経路の種類、
リアルタイムで現在のウェブサイト閲覧者数や閲覧時間を調べることができるので
ウェブサイト管理者にはとても魅力的なAPIだと思います。

次回は、Analytics Embed APIについて紹介します。

<参考サイト>
Analytics Multi-Channel Funnels Reporting API
Analytics Real Time Reporting API
Analytics Multi-Channel Funnels Reporting APIのdimensionsとmetrics
Analytics Real Time Reporting APIのdimensionsとmetrics
Google API 第12回
Google API 第13回