Skip to content

Commit

Permalink
📚 Docs Refresh: Google Analytics v4 Source (#6662)
Browse files Browse the repository at this point in the history
* Docs Refresh: Google Analytics V4

* Add Airbyte Cloud section and other details.

* Update docs/integrations/sources/google-analytics-v4.md

Co-authored-by: Sherif A. Nada <[email protected]>

* Update docs/integrations/sources/google-analytics-v4.md

Co-authored-by: Sherif A. Nada <[email protected]>

Co-authored-by: Sherif A. Nada <[email protected]>
  • Loading branch information
avaidyanatha and sherifnada authored Oct 4, 2021
1 parent ff2e8ee commit 1a4d5ef
Showing 1 changed file with 33 additions and 31 deletions.
64 changes: 33 additions & 31 deletions docs/integrations/sources/google-analytics-v4.md
Original file line number Diff line number Diff line change
@@ -1,46 +1,46 @@
# Google Analytics
# Google Analytics V4

## Overview

The Google Analytics source supports Full Refresh syncs. That is, every time a sync is run, Airbyte will copy all rows in the tables and columns you set up for replication into the destination in a new table.

This Source Connector is based on a [Airbyte CDK](https://docs.airbyte.io/connector-development/cdk-python).

### Output streams

* `website_overview` \(Incremental\)
* `traffic_sources` \(Incremental\)
* `pages` \(Incremental\)
* `locations` \(Incremental\)
* `monthly_active_users` \(Incremental\)
* `four_weekly_active_users` \(Incremental\)
* `two_weekly_active_users` \(Incremental\)
* `weekly_active_users` \(Incremental\)
* `daily_active_users` \(Incremental\)
* `devices` \(Incremental\)
* Any custom reports you configure. See the section below on custom reports.

Please reach out to us on Slack or [create an issue](https://github.com/airbytehq/airbyte/issues) if you need to send custom Google Analytics report data with Airbyte.

### Features
## Features

| Feature | Supported? |
| :--- | :--- |
| Full Refresh Sync | Yes |
| Incremental Sync | Yes |
| Replicate Incremental Deletes | No |
| SSL connection | Yes |
| Namespaces | No |
| Custom Reports | Yes |

### Performance considerations
### Supported Tables

The Google Analytics connector should not run into Google Analytics API limitations under normal usage. Please [create an issue](https://github.com/airbytehq/airbyte/issues) if you see any rate limit issues that are not automatically retried successfully.
This source is capable of syncing the following tables and their data:

## Getting started
* website_overview
* traffic_sources
* pages
* locations
* monthly_active_users
* four_weekly_active_users
* two_weekly_active_users
* weekly_active_users
* daily_active_users
* devices
* Any custom reports. See [below](https://docs.airbyte.io/integrations/sources/google-analytics-v4#reading-custom-reports-from-google-analytics) for details.

Please reach out to us on Slack or [create an issue](https://github.com/airbytehq/airbyte/issues) if you need to send custom Google Analytics report data with Airbyte.

## Getting Started (Airbyte Cloud)

1. Click `OAuth2.0 authorization` then `Authenticate your Google Analytics account`.
2. Find your View ID for the view you want to fetch data from. Find it [here](https://ga-dev-tools.web.app/account-explorer/).
3. Enter a start date, window size, and custom report information.
4. You're done.

## Getting Started (Airbyte Open-Source)

There are 2 options of setting up authorization for this source:
- Create service account specifically for Airbyte and authorize with JWT. Select "JWT authorization" from the "Authentication mechanism" dropdown list.
- Use your Google account and authorize over Google's OAuth on connection setup. Select "Default OAuth2.0 authorization" from dropdown list.

#### Create a Service Account

First, need to select or create a project in the Google Developers Console:
Expand All @@ -54,12 +54,12 @@ First, need to select or create a project in the Google Developers Console:

Use the service account email address to [add a user](https://support.google.com/analytics/answer/1009702) to the Google analytics view you want to access via the API. You will need to grant [Read & Analyze permissions](https://support.google.com/analytics/answer/2884495).

### Enable the APIs
#### Enable the APIs

1. Go to the [Google Analytics Reporting API dashboard](https://console.developers.google.com/apis/api/analyticsreporting.googleapis.com/overview) in the project for your service user. Enable the API for your account. You can set quotas and check usage.
2. Go to the [Google Analytics API dashboard](https://console.developers.google.com/apis/api/analytics.googleapis.com/overview) in the project for your service user. Enable the API for your account.

### Reading custom reports from Google Analytics
## Reading Custom Reports

You can replicate Google Analytics [Custom Reports](https://support.google.com/analytics/answer/1033013?hl=en) using this source. To do this, input a JSON object as a string in the "Custom Reports" field when setting up the connector. The JSON is an array of objects where each object has the following schema:

Expand Down Expand Up @@ -116,7 +116,7 @@ A custom report can contain no more than 10 unique metrics. The default availabl

Incremental sync supports only if you add `ga:date` dimension to your custom report.

### Limits and Quotas on API Requests
## Rate Limits & Performance Considerations (Airbyte Open-Source)

[Analytics Reporting API v4](https://developers.google.com/analytics/devguides/reporting/core/v4/limits-quotas)

Expand All @@ -125,6 +125,8 @@ Incremental sync supports only if you add `ga:date` dimension to your custom rep
* Number of requests per 100 seconds per project: 2,000
* Number of requests per 100 seconds per user per project: 100 \(can be increased in Google API Console to 1,000\).

The Google Analytics connector should not run into Google Analytics API limitations under normal usage. Please [create an issue](https://github.com/airbytehq/airbyte/issues) if you see any rate limit issues that are not automatically retried successfully.

## Changelog

| Version | Date | Pull Request | Subject |
Expand Down

0 comments on commit 1a4d5ef

Please sign in to comment.