Skip to content

Commit c9c5acb

Browse files
📝 Source Amazon Ads: add info agency account to docs/spec/error messages (#37655)
1 parent 787352c commit c9c5acb

File tree

7 files changed

+18
-8
lines changed

7 files changed

+18
-8
lines changed

airbyte-integrations/connectors/source-amazon-ads/acceptance-test-config.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,6 @@ acceptance_tests:
5656
tests:
5757
- spec_path: integration_tests/spec.json
5858
backward_compatibility_tests_config:
59-
disable_for_version: 3.4.3
59+
disable_for_version: 5.0.0
6060
connector_image: airbyte/source-amazon-ads:dev
6161
test_strictness_level: high

airbyte-integrations/connectors/source-amazon-ads/integration_tests/spec.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
},
5151
"profiles": {
5252
"title": "Profile IDs",
53-
"description": "Profile IDs you want to fetch data for. See <a href=\"https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles\">docs</a> for more details. Note: If Marketplace IDs are also selected, profiles will be selected if they match the Profile ID OR the Marketplace ID.",
53+
"description": "Profile IDs you want to fetch data for. The Amazon Ads source connector supports only profiles with seller and vendor type, profiles with agency type will be ignored. See <a href=\"https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles\">docs</a> for more details. Note: If Marketplace IDs are also selected, profiles will be selected if they match the Profile ID OR the Marketplace ID.",
5454
"order": 6,
5555
"type": "array",
5656
"items": {

airbyte-integrations/connectors/source-amazon-ads/metadata.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ data:
1313
connectorSubtype: api
1414
connectorType: source
1515
definitionId: c6b0a29e-1da9-4512-9002-7bfd0cba2246
16-
dockerImageTag: 5.0.0
16+
dockerImageTag: 5.0.1
1717
dockerRepository: airbyte/source-amazon-ads
1818
documentationUrl: https://docs.airbyte.com/integrations/sources/amazon-ads
1919
githubIssueLabel: source-amazon-ads

airbyte-integrations/connectors/source-amazon-ads/pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ requires = [ "poetry-core>=1.0.0",]
33
build-backend = "poetry.core.masonry.api"
44

55
[tool.poetry]
6-
version = "5.0.0"
6+
version = "5.0.1"
77
name = "source-amazon-ads"
88
description = "Source implementation for Amazon Ads."
99
authors = [ "Airbyte <[email protected]>",]

airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/manifest.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ spec:
6464
type: string
6565
profiles:
6666
title: Profile IDs
67-
description: 'Profile IDs you want to fetch data for. See <a href="https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles">docs</a> for more details. Note: If Marketplace IDs are also selected, profiles will be selected if they match the Profile ID OR the Marketplace ID.'
67+
description: 'Profile IDs you want to fetch data for. The Amazon Ads source connector supports only profiles with seller and vendor type, profiles with agency type will be ignored. See <a href="https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles">docs</a> for more details. Note: If Marketplace IDs are also selected, profiles will be selected if they match the Profile ID OR the Marketplace ID.'
6868
order: 6
6969
type: array
7070
items:

airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/source.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,10 @@ def check_connection(self, logger: logging.Logger, config: Mapping[str, Any]) ->
8484
profiles_list = Profiles(config, authenticator=self._make_authenticator(config)).get_all_profiles()
8585
filtered_profiles = self._choose_profiles(config, profiles_list)
8686
if not filtered_profiles:
87-
return False, "No profiles found after filtering by Profile ID and Marketplace ID"
87+
return False, (
88+
"No profiles with seller or vendor type found after filtering by Profile ID and Marketplace ID."
89+
" If you have only agency profile, please use accounts associated with the profile of seller/vendor type."
90+
)
8891
return True, None
8992

9093
def streams(self, config: Mapping[str, Any]) -> List[Stream]:

docs/integrations/sources/amazon-ads.md

+9-2
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ To use the [Amazon Ads API](https://advertising.amazon.com/API/docs/en-us), you
3232
5. Log in and Authorize to the Amazon account.
3333
6. Select **Region** to pull data from **North America (NA)**, **Europe (EU)**, **Far East (FE)**. See [docs](https://advertising.amazon.com/API/docs/en-us/info/api-overview#api-endpoints) for more details.
3434
7. **Start Date (Optional)** is used for generating reports starting from the specified start date. This should be in YYYY-MM-DD format and not more than 60 days in the past. If a date is not specified, today's date is used. The date is treated in the timezone of the processed profile.
35-
8. **Profile IDs (Optional)** you want to fetch data for. See [docs](https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles) for more details.
35+
8. **Profile IDs (Optional)** you want to fetch data for. The Amazon Ads source connector supports only profiles with seller and vendor type, profiles with agency type will be ignored. See [docs](https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles) for more details.
3636
9. **Marketplace IDs (Optional)** you want to fetch data for. _Note: If Profile IDs are also selected, profiles will be selected if they match the Profile ID **OR** the Marketplace ID._
3737
10. Click **Set up source**.
3838
<!-- /env:cloud -->
@@ -45,10 +45,16 @@ To use the [Amazon Ads API](https://advertising.amazon.com/API/docs/en-us), you
4545
3. **Refresh Token**. See [onboarding process](https://advertising.amazon.com/API/docs/en-us/setting-up/overview) for more details.
4646
4. Select **Region** to pull data from **North America (NA)**, **Europe (EU)**, **Far East (FE)**. See [docs](https://advertising.amazon.com/API/docs/en-us/info/api-overview#api-endpoints) for more details.
4747
5. **Start Date (Optional)** is used for generating reports starting from the specified start date. This should be in YYYY-MM-DD format and not more than 60 days in the past. If a date is not specified, today's date is used. The date is treated in the timezone of the processed profile.
48-
6. **Profile IDs (Optional)** you want to fetch data for. See [docs](https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles) for more details.
48+
6. **Profile IDs (Optional)** you want to fetch data for. The Amazon Ads source connector supports only profiles with seller and vendor type, profiles with agency type will be ignored. See [docs](https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles) for more details.
4949
7. **Marketplace IDs (Optional)** you want to fetch data for. _Note: If Profile IDs are also selected, profiles will be selected if they match the Profile ID **OR** the Marketplace ID._
5050
<!-- /env:oss -->
5151

52+
:::note
53+
The Amazon Ads source connector uses Sponsored Products, Sponsored Brands, and Sponsored Display APIs which are not compatible with agency account type. See [docs](https://advertising.amazon.com/API/docs/en-us/concepts/authorization/profiles) for more details.
54+
If you have only agency profile, please use accounts associated with the profile of seller/vendor type.
55+
:::
56+
57+
5258
## Supported sync modes
5359
The Amazon Ads source connector supports the following [sync modes](https://docs.airbyte.com/cloud/core-concepts/#connection-sync-mode):
5460
- Full Refresh
@@ -114,6 +120,7 @@ Information about expected report generation waiting time can be found [here](ht
114120

115121
| Version | Date | Pull Request | Subject |
116122
|:--------|:-----------|:---------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------|
123+
| 5.0.1 | 2024-04-29 | [37655](https://github.com/airbytehq/airbyte/pull/37655) | Update error messages and spec with info about `agency` profile type. |
117124
| 5.0.0 | 2024-03-22 | [36169](https://github.com/airbytehq/airbyte/pull/36169) | Update `SponsoredBrand` and `SponsoredProduct` streams due to API endpoint deprecation |
118125
| 4.1.0 | 2024-03-19 | [36267](https://github.com/airbytehq/airbyte/pull/36267) | Pin airbyte-cdk version to `^0` |
119126
| 4.0.4 | 2024-02-23 | [35481](https://github.com/airbytehq/airbyte/pull/35481) | Migrate source to `YamlDeclarativeSource` with custom `check_connection` |

0 commit comments

Comments
 (0)