Skip to content

Commit

Permalink
✨ Source Bing Ads: Add new stream: `AdGroupImpressionPerformanceRepor…
Browse files Browse the repository at this point in the history
…t` (daily, hourly, weekly, monthly) (#32027)
  • Loading branch information
artem1205 committed Nov 1, 2023
1 parent fa1f57f commit 0df2c7b
Show file tree
Hide file tree
Showing 11 changed files with 627 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -40,16 +40,18 @@ acceptance_tests:
bypass_reason: "Empty report; hourly data fetched is limited to 180 days"
- name: account_impression_performance_report_hourly
bypass_reason: "Empty report; hourly data fetched is limited to 180 days"
- name: ad_group_impression_performance_report_hourly
bypass_reason: "Empty report; hourly data fetched is limited to 180 days"
- name: app_install_ads
bypass_reason: "Can not populate; new campaign with link to app needed; feature is not available yet"
- name: app_install_ad_labels
bypass_reason: "Can not populate; depends on stream app_install_ads"
timeout_seconds: 3600
timeout_seconds: 4800
full_refresh:
tests:
- config_path: secrets/config.json
configured_catalog_path: integration_tests/configured_catalog.json
timeout_seconds: 3600
timeout_seconds: 4800
incremental:
tests:
bypass_reason: "SAT doesn't support complex nested states used in incremental report streams"
Original file line number Diff line number Diff line change
Expand Up @@ -495,6 +495,46 @@
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
},
{
"stream": {
"name": "ad_group_impression_performance_report_hourly",
"json_schema": {},
"supported_sync_modes": ["incremental", "full_refresh"]
},
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
},
{
"stream": {
"name": "ad_group_impression_performance_report_daily",
"json_schema": {},
"supported_sync_modes": ["incremental", "full_refresh"]
},
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
},
{
"stream": {
"name": "ad_group_impression_performance_report_weekly",
"json_schema": {},
"supported_sync_modes": ["incremental", "full_refresh"]
},
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
},
{
"stream": {
"name": "ad_group_impression_performance_report_monthly",
"json_schema": {},
"supported_sync_modes": ["incremental", "full_refresh"]
},
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
}
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
{"stream":"ad_group_performance_report_daily","data":{"AccountId":180278106,"CampaignId":413444833,"AdGroupId":1352400325389092,"TimePeriod":"2021-06-09","CurrencyCode":"USD","AdDistribution":"Search","DeviceType":"Computer","Network":"Bing and Yahoo! search","DeliveredMatchType":"Phrase","DeviceOS":"Windows","TopVsOther":"Bing and Yahoo! search - Top","BidMatchType":"Broad","Language":"English","AccountName":"Daxtarity Inc.","CampaignName":"Test 2","CampaignType":"Search & content","AdGroupName":"Airbyte","AdGroupType":"Standard","Impressions":1,"Clicks":0,"Ctr":0.0,"Spend":0.0,"CostPerConversion":null,"QualityScore":null,"ExpectedCtr":null,"AdRelevance":null,"LandingPageExperience":null,"PhoneImpressions":0,"PhoneCalls":0,"Ptr":null,"Assists":0,"CostPerAssist":null,"CustomParameters":null,"FinalUrlSuffix":null,"ViewThroughConversions":0,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"AllConversions":0,"AllConversionRate":null,"AllRevenue":0.0,"AllRevenuePerConversion":null,"AverageCpc":0.0,"AveragePosition":0.0,"AverageCpm":0.0,"Conversions":0.0,"ConversionRate":null,"ConversionsQualified":0.0,"Revenue":0.0,"RevenuePerConversion":null,"RevenuePerAssist":null,"HistoricalQualityScore":8.0,"HistoricalExpectedCtr":2.0,"HistoricalAdRelevance":3.0,"HistoricalLandingPageExperience":3.0},"emitted_at":1698149811393}
{"stream":"ad_group_performance_report_weekly","data":{"AccountId":180278106,"CampaignId":413444833,"AdGroupId":1352400325389092,"TimePeriod":"2021-06-06","CurrencyCode":"USD","AdDistribution":"Search","DeviceType":"Computer","Network":"Bing and Yahoo! search","DeliveredMatchType":"Phrase","DeviceOS":"Windows","TopVsOther":"Bing and Yahoo! search - Top","BidMatchType":"Broad","Language":"English","AccountName":"Daxtarity Inc.","CampaignName":"Test 2","CampaignType":"Search & content","AdGroupName":"Airbyte","AdGroupType":"Standard","Impressions":1,"Clicks":0,"Ctr":0.0,"Spend":0.0,"CostPerConversion":null,"QualityScore":null,"ExpectedCtr":null,"AdRelevance":null,"LandingPageExperience":null,"PhoneImpressions":0,"PhoneCalls":0,"Ptr":null,"Assists":0,"CostPerAssist":null,"CustomParameters":null,"FinalUrlSuffix":null,"ViewThroughConversions":0,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"AllConversions":0,"AllConversionRate":null,"AllRevenue":0.0,"AllRevenuePerConversion":null,"AverageCpc":0.0,"AveragePosition":0.0,"AverageCpm":0.0,"Conversions":0.0,"ConversionRate":null,"ConversionsQualified":0.0,"Revenue":0.0,"RevenuePerConversion":null,"RevenuePerAssist":null,"HistoricalQualityScore":8.0,"HistoricalExpectedCtr":2.0,"HistoricalAdRelevance":3.0,"HistoricalLandingPageExperience":3.0},"emitted_at":1698149821559}
{"stream":"ad_group_performance_report_monthly","data":{"AccountId":180278106,"CampaignId":413444833,"AdGroupId":1352400325389092,"TimePeriod":"2021-06-01","CurrencyCode":"USD","AdDistribution":"Search","DeviceType":"Computer","Network":"Bing and Yahoo! search","DeliveredMatchType":"Exact","DeviceOS":"Windows","TopVsOther":"Bing and Yahoo! search - Other","BidMatchType":"Broad","Language":"German","AccountName":"Daxtarity Inc.","CampaignName":"Test 2","CampaignType":"Search & content","AdGroupName":"Airbyte","AdGroupType":"Standard","Impressions":1,"Clicks":0,"Ctr":0.0,"Spend":0.0,"CostPerConversion":null,"QualityScore":null,"ExpectedCtr":null,"AdRelevance":null,"LandingPageExperience":null,"PhoneImpressions":0,"PhoneCalls":0,"Ptr":null,"Assists":0,"CostPerAssist":null,"CustomParameters":null,"FinalUrlSuffix":null,"ViewThroughConversions":0,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"AllConversions":0,"AllConversionRate":null,"AllRevenue":0.0,"AllRevenuePerConversion":null,"AverageCpc":0.0,"AveragePosition":0.0,"AverageCpm":0.0,"Conversions":0.0,"ConversionRate":null,"ConversionsQualified":0.0,"Revenue":0.0,"RevenuePerConversion":null,"RevenuePerAssist":null,"HistoricalQualityScore":8.0,"HistoricalExpectedCtr":2.0,"HistoricalAdRelevance":3.0,"HistoricalLandingPageExperience":3.0},"emitted_at":1698149830886}
{"stream":"ad_group_impression_performance_report_daily","data":{"AccountName":"Daxtarity Inc.","AccountNumber":"F149GKV5","AccountId":180278106,"TimePeriod":"2021-08-02","Status":"Active","CampaignName":"Test 2","CampaignId":413444833,"AdGroupName":"Airbyte","AdGroupId":1352400325389092,"CurrencyCode":"USD","AdDistribution":"Search","Impressions":26,"Clicks":1,"Ctr":3.85,"AverageCpc":0.11,"Spend":0.11,"AveragePosition":0.0,"Conversions":0,"ConversionRate":0.0,"CostPerConversion":null,"DeviceType":"Computer","Language":"English","ImpressionSharePercent":10.83,"ImpressionLostToBudgetPercent":0.83,"ImpressionLostToRankAggPercent":88.33,"QualityScore":null,"ExpectedCtr":null,"AdRelevance":null,"LandingPageExperience":null,"HistoricalQualityScore":8,"HistoricalExpectedCtr":2,"HistoricalAdRelevance":3,"HistoricalLandingPageExperience":3,"PhoneImpressions":0,"PhoneCalls":0,"Ptr":null,"Network":"Syndicated search partners","Assists":0,"Revenue":0.0,"ReturnOnAdSpend":0.0,"CostPerAssist":null,"RevenuePerConversion":null,"RevenuePerAssist":null,"TrackingTemplate":null,"CustomParameters":null,"AccountStatus":"Active","CampaignStatus":"Paused","AdGroupLabels":null,"ExactMatchImpressionSharePercent":80.0,"ClickSharePercent":3.33,"AbsoluteTopImpressionSharePercent":1.35,"FinalUrlSuffix":null,"CampaignType":"Search & content","TopImpressionShareLostToRankPercent":91.89,"TopImpressionShareLostToBudgetPercent":0.45,"AbsoluteTopImpressionShareLostToRankPercent":98.2,"AbsoluteTopImpressionShareLostToBudgetPercent":0.45,"TopImpressionSharePercent":7.66,"AbsoluteTopImpressionRatePercent":11.54,"TopImpressionRatePercent":65.38,"BaseCampaignId":413444833,"AllConversions":0,"AllRevenue":0.0,"AllConversionRate":0.0,"AllCostPerConversion":null,"AllReturnOnAdSpend":0.0,"AllRevenuePerConversion":null,"ViewThroughConversions":0,"AudienceImpressionSharePercent":null,"AudienceImpressionLostToRankPercent":null,"AudienceImpressionLostToBudgetPercent":null,"RelativeCtr":null,"AdGroupType":"Standard","AverageCpm":4.23,"ConversionsQualified":0.0,"AllConversionsQualified":0.0,"ViewThroughConversionsQualified":null,"ViewThroughRevenue":0.0,"VideoViews":0,"ViewThroughRate":0.0,"AverageCPV":null,"VideoViewsAt25Percent":0,"VideoViewsAt50Percent":0,"VideoViewsAt75Percent":0,"CompletedVideoViews":0,"VideoCompletionRate":null,"TotalWatchTimeInMS":0,"AverageWatchTimePerVideoView":null,"AverageWatchTimePerImpression":0.0,"Sales":0,"CostPerSale":null,"RevenuePerSale":null,"Installs":0,"CostPerInstall":null,"RevenuePerInstall":null},"emitted_at":1698788776673}
{"stream":"ad_group_impression_performance_report_weekly","data":{"AccountName":"Daxtarity Inc.","AccountNumber":"F149GKV5","AccountId":180278106,"TimePeriod":"2021-08-01","Status":"Active","CampaignName":"Test 2","CampaignId":413444833,"AdGroupName":"Airbyte","AdGroupId":1352400325389092,"CurrencyCode":"USD","AdDistribution":"Search","Impressions":59,"Clicks":1,"Ctr":1.69,"AverageCpc":0.11,"Spend":0.11,"AveragePosition":0.0,"Conversions":0,"ConversionRate":0.0,"CostPerConversion":null,"DeviceType":"Computer","Language":"English","ImpressionSharePercent":14.46,"ImpressionLostToBudgetPercent":0.49,"ImpressionLostToRankAggPercent":85.05,"QualityScore":null,"ExpectedCtr":null,"AdRelevance":null,"LandingPageExperience":null,"HistoricalQualityScore":8,"HistoricalExpectedCtr":2,"HistoricalAdRelevance":3,"HistoricalLandingPageExperience":3,"PhoneImpressions":0,"PhoneCalls":0,"Ptr":null,"Network":"Syndicated search partners","Assists":0,"Revenue":0.0,"ReturnOnAdSpend":0.0,"CostPerAssist":null,"RevenuePerConversion":null,"RevenuePerAssist":null,"TrackingTemplate":null,"CustomParameters":null,"AccountStatus":"Active","CampaignStatus":"Paused","AdGroupLabels":null,"ExactMatchImpressionSharePercent":87.5,"ClickSharePercent":1.69,"AbsoluteTopImpressionSharePercent":1.55,"FinalUrlSuffix":null,"CampaignType":"Search & content","TopImpressionShareLostToRankPercent":87.6,"TopImpressionShareLostToBudgetPercent":0.26,"AbsoluteTopImpressionShareLostToRankPercent":98.19,"AbsoluteTopImpressionShareLostToBudgetPercent":0.26,"TopImpressionSharePercent":12.14,"AbsoluteTopImpressionRatePercent":10.17,"TopImpressionRatePercent":79.66,"BaseCampaignId":413444833,"AllConversions":0,"AllRevenue":0.0,"AllConversionRate":0.0,"AllCostPerConversion":null,"AllReturnOnAdSpend":0.0,"AllRevenuePerConversion":null,"ViewThroughConversions":0,"AudienceImpressionSharePercent":null,"AudienceImpressionLostToRankPercent":null,"AudienceImpressionLostToBudgetPercent":null,"RelativeCtr":null,"AdGroupType":"Standard","AverageCpm":1.86,"ConversionsQualified":0.0,"AllConversionsQualified":0.0,"ViewThroughConversionsQualified":null,"ViewThroughRevenue":0.0,"VideoViews":0,"ViewThroughRate":0.0,"AverageCPV":null,"VideoViewsAt25Percent":0,"VideoViewsAt50Percent":0,"VideoViewsAt75Percent":0,"CompletedVideoViews":0,"VideoCompletionRate":null,"TotalWatchTimeInMS":0,"AverageWatchTimePerVideoView":null,"AverageWatchTimePerImpression":0.0,"Sales":0,"CostPerSale":null,"RevenuePerSale":null,"Installs":0,"CostPerInstall":null,"RevenuePerInstall":null},"emitted_at":1698788763314}
{"stream":"ad_group_impression_performance_report_monthly","data":{"AccountName":"Daxtarity Inc.","AccountNumber":"F149GKV5","AccountId":180278106,"TimePeriod":"2021-07-01","Status":"Active","CampaignName":"Test 2","CampaignId":413444833,"AdGroupName":"Airbyte","AdGroupId":1352400325389092,"CurrencyCode":"USD","AdDistribution":"Search","Impressions":2,"Clicks":0,"Ctr":0.0,"AverageCpc":0.0,"Spend":0.0,"AveragePosition":0.0,"Conversions":0,"ConversionRate":null,"CostPerConversion":null,"DeviceType":"Computer","Language":"Portuguese","ImpressionSharePercent":null,"ImpressionLostToBudgetPercent":null,"ImpressionLostToRankAggPercent":null,"QualityScore":null,"ExpectedCtr":null,"AdRelevance":null,"LandingPageExperience":null,"HistoricalQualityScore":8,"HistoricalExpectedCtr":2,"HistoricalAdRelevance":3,"HistoricalLandingPageExperience":3,"PhoneImpressions":0,"PhoneCalls":0,"Ptr":null,"Network":"Bing and Yahoo! search","Assists":0,"Revenue":0.0,"ReturnOnAdSpend":null,"CostPerAssist":null,"RevenuePerConversion":null,"RevenuePerAssist":null,"TrackingTemplate":null,"CustomParameters":null,"AccountStatus":"Active","CampaignStatus":"Paused","AdGroupLabels":null,"ExactMatchImpressionSharePercent":null,"ClickSharePercent":null,"AbsoluteTopImpressionSharePercent":null,"FinalUrlSuffix":null,"CampaignType":"Search & content","TopImpressionShareLostToRankPercent":null,"TopImpressionShareLostToBudgetPercent":null,"AbsoluteTopImpressionShareLostToRankPercent":null,"AbsoluteTopImpressionShareLostToBudgetPercent":null,"TopImpressionSharePercent":null,"AbsoluteTopImpressionRatePercent":0.0,"TopImpressionRatePercent":100.0,"BaseCampaignId":413444833,"AllConversions":0,"AllRevenue":0.0,"AllConversionRate":null,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"AllRevenuePerConversion":null,"ViewThroughConversions":0,"AudienceImpressionSharePercent":null,"AudienceImpressionLostToRankPercent":null,"AudienceImpressionLostToBudgetPercent":null,"RelativeCtr":null,"AdGroupType":"Standard","AverageCpm":0.0,"ConversionsQualified":0.0,"AllConversionsQualified":0.0,"ViewThroughConversionsQualified":null,"ViewThroughRevenue":0.0,"VideoViews":0,"ViewThroughRate":0.0,"AverageCPV":null,"VideoViewsAt25Percent":0,"VideoViewsAt50Percent":0,"VideoViewsAt75Percent":0,"CompletedVideoViews":0,"VideoCompletionRate":null,"TotalWatchTimeInMS":0,"AverageWatchTimePerVideoView":null,"AverageWatchTimePerImpression":0.0,"Sales":0,"CostPerSale":null,"RevenuePerSale":null,"Installs":0,"CostPerInstall":null,"RevenuePerInstall":null},"emitted_at":1698775265485}
{"stream":"ad_performance_report_daily","data":{"AccountId":180278106,"CampaignId":413444833,"AdGroupId":1352400325389092,"AdId":84525295496190,"TimePeriod":"2021-06-09","CurrencyCode":"USD","AdDistribution":"Search","DeviceType":"Computer","Language":"English","Network":"Bing and Yahoo! search","DeviceOS":"Unknown","TopVsOther":"Bing and Yahoo! search - Other","BidMatchType":"Broad","DeliveredMatchType":"Broad","AccountName":"Daxtarity Inc.","CampaignName":"Test 2","CampaignType":"Search & content","AdGroupName":"Airbyte","Impressions":2,"Clicks":0,"Ctr":0.0,"Spend":0.0,"CostPerConversion":null,"DestinationUrl":null,"Assists":0,"ReturnOnAdSpend":null,"CostPerAssist":null,"CustomParameters":null,"FinalAppUrl":null,"AdDescription":null,"AdDescription2":null,"ViewThroughConversions":0,"ViewThroughConversionsQualified":null,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"Conversions":0.0,"ConversionRate":null,"ConversionsQualified":0.0,"AverageCpc":0.0,"AveragePosition":0.0,"AverageCpm":0.0,"AllConversions":0,"AllConversionRate":null,"AllRevenue":0.0,"AllRevenuePerConversion":null,"Revenue":0.0,"RevenuePerConversion":null,"RevenuePerAssist":null},"emitted_at":1698149848147}
{"stream":"ad_performance_report_weekly","data":{"AccountId":180278106,"CampaignId":413444833,"AdGroupId":1352400325389092,"AdId":84525295496190,"TimePeriod":"2021-06-06","CurrencyCode":"USD","AdDistribution":"Search","DeviceType":"Computer","Language":"German","Network":"Syndicated search partners","DeviceOS":"Unknown","TopVsOther":"Syndicated search partners - Other","BidMatchType":"Broad","DeliveredMatchType":"Broad","AccountName":"Daxtarity Inc.","CampaignName":"Test 2","CampaignType":"Search & content","AdGroupName":"Airbyte","Impressions":1,"Clicks":0,"Ctr":0.0,"Spend":0.0,"CostPerConversion":null,"DestinationUrl":null,"Assists":0,"ReturnOnAdSpend":null,"CostPerAssist":null,"CustomParameters":null,"FinalAppUrl":null,"AdDescription":null,"AdDescription2":null,"ViewThroughConversions":0,"ViewThroughConversionsQualified":null,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"Conversions":0.0,"ConversionRate":null,"ConversionsQualified":0.0,"AverageCpc":0.0,"AveragePosition":0.0,"AverageCpm":0.0,"AllConversions":0,"AllConversionRate":null,"AllRevenue":0.0,"AllRevenuePerConversion":null,"Revenue":0.0,"RevenuePerConversion":null,"RevenuePerAssist":null},"emitted_at":1698149858191}
{"stream":"ad_performance_report_monthly","data":{"AccountId":180278106,"CampaignId":413444833,"AdGroupId":1352400325389092,"AdId":84525295496190,"TimePeriod":"2021-06-01","CurrencyCode":"USD","AdDistribution":"Search","DeviceType":"Computer","Language":"German","Network":"Bing and Yahoo! search","DeviceOS":"Windows","TopVsOther":"Bing and Yahoo! search - Other","BidMatchType":"Broad","DeliveredMatchType":"Exact","AccountName":"Daxtarity Inc.","CampaignName":"Test 2","CampaignType":"Search & content","AdGroupName":"Airbyte","Impressions":1,"Clicks":0,"Ctr":0.0,"Spend":0.0,"CostPerConversion":null,"DestinationUrl":null,"Assists":0,"ReturnOnAdSpend":null,"CostPerAssist":null,"CustomParameters":null,"FinalAppUrl":null,"AdDescription":null,"AdDescription2":null,"ViewThroughConversions":0,"ViewThroughConversionsQualified":null,"AllCostPerConversion":null,"AllReturnOnAdSpend":null,"Conversions":0.0,"ConversionRate":null,"ConversionsQualified":0.0,"AverageCpc":0.0,"AveragePosition":0.0,"AverageCpm":0.0,"AllConversions":0,"AllConversionRate":null,"AllRevenue":0.0,"AllRevenuePerConversion":null,"Revenue":0.0,"RevenuePerConversion":null,"RevenuePerAssist":null},"emitted_at":1698149867383}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ data:
connectorSubtype: api
connectorType: source
definitionId: 47f25999-dd5e-4636-8c39-e7cea2453331
dockerImageTag: 1.6.0
dockerImageTag: 1.7.0
dockerRepository: airbyte/source-bing-ads
documentationUrl: https://docs.airbyte.com/integrations/sources/bing-ads
githubIssueLabel: source-bing-ads
Expand Down
2 changes: 1 addition & 1 deletion airbyte-integrations/connectors/source-bing-ads/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

from setuptools import find_packages, setup

MAIN_REQUIREMENTS = ["airbyte-cdk", "bingads~=13.0.13", "urllib3<2.0", "pandas"]
MAIN_REQUIREMENTS = ["airbyte-cdk", "bingads~=13.0.17", "urllib3<2.0", "pandas"]

TEST_REQUIREMENTS = [
"requests-mock~=1.9.3",
Expand Down
Loading

0 comments on commit 0df2c7b

Please sign in to comment.