Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ Source Bing Ads: add new stream Keywords #32008

Merged
merged 5 commits into from Nov 1, 2023
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Expand Up @@ -485,6 +485,16 @@
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
},
{
"stream": {
"name": "keywords",
"json_schema": {},
"supported_sync_modes": ["incremental", "full_refresh"]
},
"sync_mode": "incremental",
"cursor_field": ["TimePeriod"],
"destination_sync_mode": "append"
}
]
}
Expand Up @@ -38,3 +38,6 @@
{"stream":"campaign_labels","data":{"Status":"Active","Id":10239203506494,"Parent Id":413444833,"Campaign":null,"Client Id":null,"Modified Time":"04/27/2023 17:57:38.110","Account Id":180278106},"emitted_at":1698687214960}
{"stream":"keyword_labels","data":{"Status":"Active","Id":10239203506495,"Parent Id":84868925026027,"Client Id":null,"Modified Time":"04/27/2023 17:22:52.733","Account Id":180278106},"emitted_at":1698687224964}
{"stream":"ad_group_labels","data":{"Status":"Active","Id":10239203506494,"Parent Id":1350201453189474,"Campaign":null,"Ad Group":null,"Client Id":null,"Modified Time":"04/27/2023 18:00:14.970","Account Id":180278106},"emitted_at":1698751388918}
{"stream": "keywords", "data": {"Status": "Active", "Id": 84525593559627, "Parent Id": "1352400325389092", "Campaign": "Test 2", "Ad Group": "Airbyte", "Client Id": null, "Modified Time": "08/13/2021 02:33:08.560", "Tracking Template": null, "Final Url Suffix": null, "Custom Parameter": null, "Final Url": null, "Mobile Final Url": null, "Bid Strategy Type": "InheritFromParent", "Inherited Bid Strategy Type": "MaxClicks", "Destination Url": null, "Editorial Status": "Active", "Editorial Location": null, "Editorial Term": null, "Editorial Reason Code": null, "Editorial Appeal Status": null, "Keyword": "big data integration tools", "Match Type": "Broad", "Bid": "0.11", "Param1": null, "Param2": null, "Param3": null, "Publisher Countries": null, "Quality Score": null, "Keyword Relevance": null, "Landing Page Relevance": null, "Landing Page User Experience": null, "Account Id": 180278106}, "emitted_at": 1698768109942}
{"stream": "keywords", "data": {"Status": "Active", "Id": 84525593559628, "Parent Id": "1352400325389092", "Campaign": "Test 2", "Ad Group": "Airbyte", "Client Id": null, "Modified Time": "08/13/2021 02:33:14.270", "Tracking Template": null, "Final Url Suffix": null, "Custom Parameter": null, "Final Url": null, "Mobile Final Url": null, "Bid Strategy Type": "InheritFromParent", "Inherited Bid Strategy Type": "MaxClicks", "Destination Url": null, "Editorial Status": "Active", "Editorial Location": null, "Editorial Term": null, "Editorial Reason Code": null, "Editorial Appeal Status": null, "Keyword": "best data integration tool", "Match Type": "Broad", "Bid": "0.11", "Param1": null, "Param2": null, "Param3": null, "Publisher Countries": null, "Quality Score": null, "Keyword Relevance": null, "Landing Page Relevance": null, "Landing Page User Experience": null, "Account Id": 180278106}, "emitted_at": 1698768109942}
{"stream": "keywords", "data": {"Status": "Active", "Id": 84525593559629, "Parent Id": "1352400325389092", "Campaign": "Test 2", "Ad Group": "Airbyte", "Client Id": null, "Modified Time": "08/13/2021 02:33:19.053", "Tracking Template": null, "Final Url Suffix": null, "Custom Parameter": null, "Final Url": null, "Mobile Final Url": null, "Bid Strategy Type": "InheritFromParent", "Inherited Bid Strategy Type": "MaxClicks", "Destination Url": null, "Editorial Status": "Active", "Editorial Location": null, "Editorial Term": null, "Editorial Reason Code": null, "Editorial Appeal Status": null, "Keyword": "data integration tools", "Match Type": "Broad", "Bid": "0.11", "Param1": null, "Param2": null, "Param3": null, "Publisher Countries": null, "Quality Score": null, "Keyword Relevance": null, "Landing Page Relevance": null, "Landing Page User Experience": null, "Account Id": 180278106}, "emitted_at": 1698768109943}
Expand Up @@ -16,7 +16,7 @@ data:
connectorSubtype: api
connectorType: source
definitionId: 47f25999-dd5e-4636-8c39-e7cea2453331
dockerImageTag: 1.5.0
dockerImageTag: 1.6.0
dockerRepository: airbyte/source-bing-ads
documentationUrl: https://docs.airbyte.com/integrations/sources/bing-ads
githubIssueLabel: source-bing-ads
Expand Down
@@ -0,0 +1,102 @@
{
"$schema": "https://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"Account Id": {
"type": ["null", "integer"]
},
"Id": {
"type": ["null", "integer"]
},
"Ad Group": {
"type": ["null", "string"]
},
"Bid": {
"type": ["null", "string"]
},
"Bid Strategy Type": {
"type": ["null", "string"]
},
"Campaign": {
"type": ["null", "string"]
},
"Client Id": {
"type": ["null", "integer"]
},
"Custom Parameter": {
"type": ["null", "string"]
},
"Destination Url": {
"type": ["null", "string"]
},
"Modified Time": {
"type": ["null", "string"]
},
"Editorial Appeal Status": {
"type": ["null", "string"]
},
"Editorial Location": {
"type": ["null", "string"]
},
"Editorial Reason Code": {
"type": ["null", "string"]
},
"Editorial Status": {
"type": ["null", "string"]
},
"Editorial Term": {
"type": ["null", "string"]
},
"Final Url": {
"type": ["null", "string"]
},
"Final Url Suffix": {
"type": ["null", "string"]
},
"Inherited Bid Strategy Type": {
"type": ["null", "string"]
},
"Keyword": {
"type": ["null", "string"]
},
"Keyword Relevance": {
"type": ["null", "string"]
},
"Landing Page Relevance": {
"type": ["null", "string"]
},
"Landing Page User Experience": {
"type": ["null", "string"]
},
"Match Type": {
"type": ["null", "string"]
},
"Mobile Final Url": {
"type": ["null", "string"]
},
"Param1": {
"type": ["null", "string"]
},
"Param2": {
"type": ["null", "string"]
},
"Param3": {
"type": ["null", "string"]
},
"Parent Id": {
"type": ["null", "string"]
},
"Publisher Countries": {
"type": ["null", "string"]
},
"Quality Score": {
"type": ["null", "string"]
},
"Status": {
"type": ["null", "string"]
},
"Tracking Template": {
"type": ["null", "string"]
}
}
}
Expand Up @@ -52,6 +52,7 @@
KeywordPerformanceReportHourly,
KeywordPerformanceReportMonthly,
KeywordPerformanceReportWeekly,
Keywords,
Labels,
SearchQueryPerformanceReportDaily,
SearchQueryPerformanceReportHourly,
Expand Down Expand Up @@ -93,6 +94,7 @@ def streams(self, config: Mapping[str, Any]) -> List[Stream]:
BudgetSummaryReport(client, config),
Labels(client, config),
KeywordLabels(client, config),
Keywords(client, config),
CampaignLabels(client, config),
]

Expand Down
Expand Up @@ -298,6 +298,17 @@ class KeywordLabels(BingAdsBulkStream):
primary_key = "Id"


class Keywords(BingAdsBulkStream):
"""
https://learn.microsoft.com/en-us/advertising/bulk-service/keyword-label?view=bingads-13
"""

data_scope = ["EntityData"]
download_entities = ["Keywords"]

primary_key = "Id"


class CampaignLabels(BingAdsBulkStream):
"""
https://learn.microsoft.com/en-us/advertising/bulk-service/campaign-label?view=bingads-13
Expand Down
1 change: 1 addition & 0 deletions docs/integrations/sources/bing-ads.md
Expand Up @@ -141,6 +141,7 @@ The Bing Ads API limits the number of requests for all Microsoft Advertising cli

| Version | Date | Pull Request | Subject |
|:--------|:-----------|:---------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------|
| 1.6.0 | 2023-10-31 | [32008](https://github.com/airbytehq/airbyte/pull/32008) | Add new streams `Keywords` |
| 1.5.0 | 2023-10-30 | [31952](https://github.com/airbytehq/airbyte/pull/31952) | Add new streams `Labels`, `App install ads`, `Keyword Labels`, `Campaign Labels`, `App Install Ad Labels`, `Ad Group Labels` |
| 1.4.0 | 2023-10-27 | [31885](https://github.com/airbytehq/airbyte/pull/31885) | Add new stream: `AccountImpressionPerformanceReport` (daily, hourly, weekly, monthly) |
| 1.3.0 | 2023-10-26 | [31837](https://github.com/airbytehq/airbyte/pull/31837) | Add new stream: `UserLocationPerformanceReport` (daily, hourly, weekly, monthly) |
Expand Down