Google API 第17回

投稿者: | 2015年9月16日

今回はAnalytics Management APIについて紹介します。
Analytics Management APIとは、アカウント情報の管理やAnalytics Core Reporting APIで
使用するビューIDの取得、目標の設定などAnalyticsに関する管理ができるAPIです。

一般的にAnalyticsに関する管理はブラウザからGoogle Analyticsにログインして行いますが、
管理する情報が多いと画面遷移が煩わしくなったり、リスト化した情報が欲しくなったりします。
その煩わしさなどを解決してくれるのがAnalytics Management APIです。

そんなAnalytics Management APIで取得できる情報、バージョン、使用方法について説明します。

■Analytics Management APIで取得できる情報
・すべてのアカウント情報
・Webプロパティ、ビューの情報
・Analytics Core Reporting APIで使用するビューID
・Analytics Core Reporting APIで使用するセグメント
などの情報が取得できます。

■Analytics Management APIのバージョンについて
現在、Analytics Management APIのバージョンはXMLに対応しているバージョン2.4と
JSONに対応しているバージョン3.0があります。
※以前のバージョン2.3は廃止されています。

■Analytics Management APIの使用方法
VBAを用いた方法を紹介します。
VBAのAPIを使用する場合は、アクセストークンが必要になります。
※アクセストークンの取得方法は参考サイトのGoogle API 第12回を参照してください。

バージョン2.4とバージョン3.0でアカウントを取得する方法を説明します。
・バージョン2.4
まずリクエストするURLを作成します。
※URLについては参考サイトのAnalytics Management API 2.4を参照してください。

    baseUrl = "https://www.googleapis.com/analytics/v2.4"
    sUrl = baseUrl & "/management/accounts"

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

    oHTTP.Open "GET", sUrl, False
    oHTTP.setRequestHeader "Authorization", "Bearer " & access_token
    oHTTP.setRequestHeader "Content-Type", "application/atom+xml"
    oHTTP.send

返り値は下記のようなXMLで取得できます。
リクエストしたアカウントのデータは「link/dxp:property」タグに格納されています。
アカウントIDを取得する場合は「link/dxp:property」タグの「ga:accountId」を指定します。
※値の取得方法については参考サイトGoogle API 第13回を参照してください。



    https://www.googleapis.com/analytics/v2.4/management/accounts
    2015-09-02T06:49:34.074Z
    Google Analytics Accounts for example@gmail.com
    	
        
            Google Analytics
        
        Google Analytics
        1
        1
        1000
        
            https://www.googleapis.com/analytics/v2.4/management/accounts/XXXXXXXX
            2015-08-10T18:49:01.944Z
            Google Analytics Account test
        
    
    	
    
    	
        
        
    

・バージョン3.0
まずリクエストするURLを作成します。
バージョン2.4との違いはベースとなるURLです。
※URLについては参考サイトのAnalytics Management API 3.0を参照してください。

    baseUrl = "https://www.googleapis.com/analytics/v3"
    sUrl = baseUrl & "/management/accounts"

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

    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で取得できます。
リクエストしたアカウントデータはitemsに配列として格納されています。
※値の取得方法については参考サイトのGoogle API 第13回を参照してください。

{
    "items": [
        {
            "childLink": {
                "href": "https://www.googleapis.com/analytics/v3/management/accounts/XXXXXXXX/webproperties", 
                "type": "analytics#webproperties"
            }, 
            "created": "2015-06-02T09:02:09.181Z", 
            "id": "XXXXXXXX", 
            "kind": "analytics#account", 
            "name": "test", 
            "permissions": {
                "effective": [
                    "COLLABORATE", 
                    "EDIT", 
                    "MANAGE_USERS", 
                    "READ_AND_ANALYZE"
                ]
            }, 
            "selfLink": "https://www.googleapis.com/analytics/v3/management/accounts/XXXXXXXX", 
            "updated": "2015-08-10T18:49:01.944Z"
        }
    ], 
    "itemsPerPage": 1000, 
    "kind": "analytics#accounts", 
    "startIndex": 1, 
    "totalResults": 1, 
    "username": "example@gmail.com"
}

バージョン2.4とバージョン3.0を比較すると、
データをJSONで取得できるバージョン3.0の方が軽量で可読性があります。
また個人的にJOSNの方が処理が簡単なのでおすすめです。

以上がAnalytics Management APIの説明になります。

上記の通り、Analytics Management APIを使用すると簡単に情報を取得できます。
今回はアカウント情報の取得を行いましたが、URLを変更するだけで
WEBプロパティやビューなどの情報を簡単に取得することができます。

バージョンが上がるにつれて対応言語や機能が増えているので、
今後のAnalytics Management APIに期待したいです。

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

<参考サイト>
Analytics Management API 3.0
Analytics Management API 2.4
Google API 第12回
Google API 第13回