Google AnalyticsのAPIで コンバージョンの件数と収益を取得し、Slackにレポートする


Google Analyticsでサイトのコンバージョンを測定しています。

APIでコンバージョン数値取得

コンバージョン件数や収益の値を自動で取得するために、Google Analytics APIを使いました。

python
  response = analytics.reports().batchGet(
      body={
        'reportRequests': [
        { 'viewId':     view_id,
          'dateRanges': [{'startDate': start_date, 'endDate': end_date}],
          'metrics': [{'expression': 'ga:transactions'}, {'expression': 'ga:transactionRevenue'}]
        }]
      }
  ).execute()
  values = response.get['reports'][0]['data']['totals'][0]['values']
  transactions       = values[0]
  transactionRevenue = values[1]

レファレンスマニュアルでmetricsを探しました。

slackに通知

slackwebを使いました。

  slack = slackweb.Slack(url=slack_webhook_url))
  slack.notify(text=text)

お手軽です。

手間がかかるところ

初めてだと、コード以外の部分、Googleのサービスアカウントキーの作成に関わる知識や、Google Analyticsの構成とユーザー管理の知識や、キーの種類P12かJSONかとか、Slackのwebhook設定とか、いろいろ盛りだくさんなので時間の余裕があるといいと思います。
それに比べると、コードの難易度は低いです。

参考

Dimensions & Metrics Explorer | Analytics Reporting API v4 | Google Developers
https://developers.google.com/analytics/devguides/reporting/core/dimsmets

Google AnalyticsのデータをPython経由で収集する | Developers.IO
http://dev.classmethod.jp/business/business-analytics/getting-google-analytics-data-via-python/

Slackにincoming webhook経由でpythonからメッセージをPOSTする
http://qiita.com/satoshi03/items/14495bf431b1932cb90b