Description
This integration allows you to import data from Google Ads.
For a complete overview of all available resources provided by the Google Ads API, refer to Google Ads API.
Supported Features
Feature Name | Supported | Comment |
---|---|---|
Full Import | Yes | |
Incremental Import | Yes | |
Re-Import | Yes | |
Start Date Selection | Yes | |
Import Empty Tables | No | |
Custom Data | Yes | |
Retroactive Updating | No | |
Dynamic Column Selection | Yes |
Sync Overview
Real-time data
Real-time data is supported, unless there is a quota issue for the API.
Edge cases or known limitations
- All limitations that applied on Google Ads API is also applied to our integration. For the detailed overview of the limitations, you can visit Google Ads API documentation.
Recommendations
-
'resource_name' attribute is the key property for all streams. Also, some tables which has same names are likely to join with each other. For example; there are three tables such as campaign, campaign_label and label which can be connected by the 'label' or the 'campaign_name' attributes.
-
In some tables, Google Ads is not allowed selecting month and month of year or day and day of week together. In such tables, please select only one of them in order to get a successful import.
Connector
This connector was developed following the standards of Singer SDK with Google Ads API.
For more details, see the Google Ads API and Singer
Authentication
- Google Ads integration is using OAuth2 as authentication method.
Workflow
After the customer selects the desired table and columns, the integration creates a query which also called as GAQL (Google Ads Query Language).
With the help of this query and the credentials that provided on setup; the connector searches through Google Ads stream data of yours and pulls the data into the system.
Of course, this data can be less than the default page size; then it means we are handling the issue with just one page. If it is more, the integration paginates for other records (by the page size) until reaches the last record.
If the customer selects multiple accounts on integration setup, then the same operation applies for each account and as a result, you can see all the data for selected accounts inside the integration's "Data" link.
Rate limits & Pagination
- Rate limiting applies on:
- Queries per second (QPS) per client customer id (CID)
- Queries per second (QPS) per developer token
So, it depends both on developer token and CID. Also, QPS limit is calculating via Token Bucket algorithm, so the exact limit will vary depending on the overall server load at any given time. For the details of the API rate limit and proposed ways to reduce rate limit issues, you can see the Google Ads documentation.
- Default (and maximum) page size is 10.000 for the Google Ads API, however this limit can be changed with page_size attribute. On each request, if the result exceeded the page size, 'next_page_token' attribute is placed on the response. If this token is using on the next request, Google Ads API returns the next 10.000 records.
Same thing applies until reaching the last record of the stream. Thus, we can pull all the data from the API using pagination.
Schema
This source is based on the {API_NAME}, and is currently in the version {API_Version}.