Skip to content

Commit

Permalink
Source TikTok Marketing: Spec changes (#26565)
Browse files Browse the repository at this point in the history
* Source TikTok Marketing: Spec changes;
Change default value for `attribution window` to 3 days; add min/max validation

* Source TikTok Marketing: update docs
  • Loading branch information
artem1205 committed May 25, 2023
1 parent 01b1673 commit 4b26835
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 35 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ COPY source_tiktok_marketing ./source_tiktok_marketing
ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py"
ENTRYPOINT ["python", "/airbyte/integration_code/main.py"]

LABEL io.airbyte.version=3.1.0
LABEL io.airbyte.version=3.2.0
LABEL io.airbyte.name=airbyte/source-tiktok-marketing
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ acceptance_tests:
# the spec was changed with the `format: date` for start/end dates input,
# to satisfy the DatePicker requirements
backward_compatibility_tests_config:
disable_for_version: "2.0.4"
disable_for_version: "3.1.0" # attribution windows: add min/max values; change default 0 -> 3
connection:
tests:
- config_path: "secrets/prod_config.json"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ data:
connectorSubtype: api
connectorType: source
definitionId: 4bfac00d-ce15-44ff-95b9-9e3c3e8fbd35
dockerImageTag: 3.1.0
dockerImageTag: 3.2.0
dockerRepository: airbyte/source-tiktok-marketing
githubIssueLabel: source-tiktok-marketing
icon: tiktok.svg
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,9 @@
"attribution_window": {
"title": "Attribution Window",
"description": "The attribution window in days.",
"default": 0,
"minimum": 0,
"maximum": 364,
"default": 3,
"order": 3,
"type": "integer"
}
Expand Down
70 changes: 39 additions & 31 deletions docs/integrations/sources/tiktok-marketing.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,37 +57,44 @@ To access the Sandbox environment:

## Supported streams and sync modes

| Stream | Environment | Key | Incremental |
|:---------------------------------------- |--------------|--------------------------------------------|:------------|
| Advertisers | Prod,Sandbox | advertiser_id | No |
| AdGroups | Prod,Sandbox | adgroup_id | Yes |
| Ads | Prod,Sandbox | ad_id | Yes |
| Campaigns | Prod,Sandbox | campaign_id | Yes |
| AdsReportsHourly | Prod,Sandbox | ad_id, stat_time_hour | Yes |
| AdsReportsDaily | Prod,Sandbox | ad_id, stat_time_day | Yes |
| AdsReportsLifetime | Prod,Sandbox | ad_id | No |
| AdvertisersReportsHourly | Prod | advertiser_id, stat_time_hour | Yes |
| AdvertisersReportsDaily | Prod | advertiser_id, stat_time_day | Yes |
| AdvertisersReportsLifetime | Prod | advertiser_id | No |
| AdGroupsReportsHourly | Prod,Sandbox | adgroup_id, stat_time_hour | Yes |
| AdGroupsReportsDaily | Prod,Sandbox | adgroup_id, stat_time_day | Yes |
| AdGroupsReportsLifetime | Prod,Sandbox | adgroup_id | No |
| CampaignsReportsHourly | Prod,Sandbox | campaign_id, stat_time_hour | Yes |
| CampaignsReportsDaily | Prod,Sandbox | campaign_id, stat_time_day | Yes |
| CampaignsReportsLifetime | Prod,Sandbox | campaign_id | No |
| AdvertisersAudienceReportsDaily | Prod | advertiser_id, stat_time_day, gender, age | Yes |
| AdvertisersAudienceReportsByCountryDaily | Prod | advertiser_id, stat_time_day, country_code | Yes |
| AdvertisersAudienceReportsByPlatformDaily | Prod | advertiser_id, stat_time_day, platform | Yes |
| AdvertisersAudienceReportsLifetime | Prod | advertiser_id, gender, age | No |
| AdGroupAudienceReportsDaily | Prod,Sandbox | adgroup_id, stat_time_day, gender, age | Yes |
| AdGroupAudienceReportsByCountryDaily | Prod,Sandbox | adgroup_id, stat_time_day, country_code | Yes |
| AdGroupAudienceReportsByPlatformDaily | Prod,Sandbox | adgroup_id, stat_time_day, platform | Yes |
| AdsAudienceReportsDaily | Prod,Sandbox | ad_id, stat_time_day, gender, age | Yes |
| AdsAudienceReportsByCountryDaily | Prod,Sandbox | ad_id, stat_time_day, country_code | Yes |
| AdsAudienceReportsByPlatformDaily | Prod,Sandbox | ad_id, stat_time_day, platform | Yes |
| CampaignsAudienceReportsDaily | Prod,Sandbox | campaign_id, stat_time_day, gender, age | Yes |
| CampaignsAudienceReportsByCountryDaily | Prod,Sandbox | campaign_id, stat_time_day, country_code | Yes |
| CampaignsAudienceReportsByPlatformDaily | Prod,Sandbox | campaign_id, stat_time_day, platform | Yes |
| Stream | Environment | Key | Incremental |
|:------------------------------------------|--------------|--------------------------------------------|:------------|
| Advertisers | Prod,Sandbox | advertiser_id | No |
| AdGroups | Prod,Sandbox | adgroup_id | Yes |
| Ads | Prod,Sandbox | ad_id | Yes |
| Campaigns | Prod,Sandbox | campaign_id | Yes |
| AdsReportsHourly | Prod,Sandbox | ad_id, stat_time_hour | Yes |
| AdsReportsDaily | Prod,Sandbox | ad_id, stat_time_day | Yes |
| AdsReportsLifetime | Prod,Sandbox | ad_id | No |
| AdvertisersReportsHourly | Prod | advertiser_id, stat_time_hour | Yes |
| AdvertisersReportsDaily | Prod | advertiser_id, stat_time_day | Yes |
| AdvertisersReportsLifetime | Prod | advertiser_id | No |
| AdGroupsReportsHourly | Prod,Sandbox | adgroup_id, stat_time_hour | Yes |
| AdGroupsReportsDaily | Prod,Sandbox | adgroup_id, stat_time_day | Yes |
| AdGroupsReportsLifetime | Prod,Sandbox | adgroup_id | No |
| CampaignsReportsHourly | Prod,Sandbox | campaign_id, stat_time_hour | Yes |
| CampaignsReportsDaily | Prod,Sandbox | campaign_id, stat_time_day | Yes |
| CampaignsReportsLifetime | Prod,Sandbox | campaign_id | No |
| AdvertisersAudienceReportsDaily | Prod | advertiser_id, stat_time_day, gender, age | Yes |
| AdvertisersAudienceReportsByCountryDaily | Prod | advertiser_id, stat_time_day, country_code | Yes |
| AdvertisersAudienceReportsByPlatformDaily | Prod | advertiser_id, stat_time_day, platform | Yes |
| AdvertisersAudienceReportsLifetime | Prod | advertiser_id, gender, age | No |
| AdGroupAudienceReportsDaily | Prod,Sandbox | adgroup_id, stat_time_day, gender, age | Yes |
| AdGroupAudienceReportsByCountryDaily | Prod,Sandbox | adgroup_id, stat_time_day, country_code | Yes |
| AdGroupAudienceReportsByPlatformDaily | Prod,Sandbox | adgroup_id, stat_time_day, platform | Yes |
| AdsAudienceReportsDaily | Prod,Sandbox | ad_id, stat_time_day, gender, age | Yes |
| AdsAudienceReportsByCountryDaily | Prod,Sandbox | ad_id, stat_time_day, country_code | Yes |
| AdsAudienceReportsByPlatformDaily | Prod,Sandbox | ad_id, stat_time_day, platform | Yes |
| CampaignsAudienceReportsDaily | Prod,Sandbox | campaign_id, stat_time_day, gender, age | Yes |
| CampaignsAudienceReportsByCountryDaily | Prod,Sandbox | campaign_id, stat_time_day, country_code | Yes |
| CampaignsAudienceReportsByPlatformDaily | Prod,Sandbox | campaign_id, stat_time_day, platform | Yes |

:::info

TikTok Reporting API has some [Data Latency](https://ads.tiktok.com/marketing_api/docs?id=1738864894606337), usually of about 11 hours.
It is recommended to use higher values of attribution window (used in Incremental Syncs), at least 3 days, to ensure that the connector updates metrics in already presented records.

:::

### Report Aggregation
Reports synced by this connector can use either hourly, daily, or lifetime granularities for aggregating performance data. For example, if you select the daily-aggregation flavor of a report, the report will contain a row for each day for the duration of the report. Each row will indicate the number of impressions recorded on that day.
Expand Down Expand Up @@ -554,6 +561,7 @@ The connector is restricted by [requests limitation](https://ads.tiktok.com/mark

| Version | Date | Pull Request | Subject |
|:--------|:-----------|:---------------------------------------------------------|:----------------------------------------------------------------------------------------------|
| 3.2.0 | 2023-05-25 | [26565](https://github.com/airbytehq/airbyte/pull/26565) | Change default value for `attribution window` to 3 days; add min/max validation |
| 3.1.0 | 2023-05-12 | [26024](https://github.com/airbytehq/airbyte/pull/26024) | Updated the `Ads` stream schema |
| 3.0.1 | 2023-04-07 | [24712](https://github.com/airbytehq/airbyte/pull/24712) | Added `attribution window` for *-reports streams |
| 3.0.0 | 2023-03-29 | [24630](https://github.com/airbytehq/airbyte/pull/24630) | Migrate to v1.3 API |
Expand Down

0 comments on commit 4b26835

Please sign in to comment.