...
Go to Source Data tab and Add new source application and select REST API application type. To fill fields with default values, in field Import definition paste example source application definition.
REST API source parameters
...
After registration you will get your application Client ID and Client Secret - please paste them in flex.bi REST API source parameters page corresponding fields.
Image RemovedImage Added
If you will create several Google Analytics REST API sources in your flex.bi account then you can use the same Client ID and Client Secret for all these REST API sources.
...
Next you need to enable Analytics API. In order to do that you must go to console Dashboard page, click on the "ENABLE APIS AND SERVICES" and add "Analytics API" to the list:
Image RemovedImage Added
Authorize access to REST API source
...
Example of Google Analytics import column mappings
Image RemovedImage Added
Google Analytics source application definition example
If you would like to use this Google Analytics import example from this tutorial then you can use the following source application definition:
Expand |
---|
|
Code Block |
---|
{
"application_type": "rest_api",
"application_params": {
"source_params": {
"url": "https://www.googleapis.com/analytics/v3/data/ga?ids=ga:XXXX&start-date=2016-10-01&end-date=2017-11-30&metrics=ga%3APageLoadTime&dimensions=ga%3Adate",
"skip_ssl_verification": "0",
"pagination": "offset_limit",
"authentication_type": "oauth2",
"content_type": "json",
"oauth2_scope": "https://www.googleapis.com/auth/analytics.readonly",
"oauth2_authorize_url": "https://accounts.google.com/o/oauth2/auth?access_type=offline",
"oauth2_token_url": "https://accounts.google.com/o/oauth2/token",
"custom_javascript_code": "function formatDate(s) {\n return s.substr(0,4)+'-'+s.substr(4,2)+'-'+s.substr(6,2);\n}\n\nreturn _.map(doc.rows, function(row) {\n var rowdoc = {};\n for (var i = 0; i < doc.columnHeaders.length; i++) {\n var name = doc.columnHeaders[i].name.replace(/^ga:/, '');\n rowdoc[name] = name == 'date' ? formatDate(row[i]) : row[i];\n }\n rowdoc[\"Project\"] = \"Project 1\";\n return rowdoc;\n});",
"offset_parameter": "start-index",
"limit_parameter": "max-results",
"limit_value": 1000
}
},
"source_cube_name": "GA_TEST3",
"columns": [
{
"name": "date",
"data_type": "date",
"dimension": "Time"
},
{
"name": "PageLoadTime",
"data_type": "integer"
},
{
"name": "Project",
"data_type": "string"
}
]
} |
|
Troubleshooting
If you have some issues please read analytics API troubleshooting section. To reset the authorization you can remove your app from your google account.