python-amazon-ad-api 1.2.5__tar.gz → 1.2.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/PKG-INFO +3 -3
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/README.md +2 -2
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/creative_assets.py +69 -1
- python_amazon_ad_api-1.2.7/ad_api/api/insights.py +52 -0
- python_amazon_ad_api-1.2.7/ad_api/version.py +1 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/PKG-INFO +3 -3
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/setup.cfg +1 -1
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/setup.py +1 -1
- python_amazon_ad_api-1.2.5/ad_api/api/insights.py +0 -42
- python_amazon_ad_api-1.2.5/ad_api/version.py +0 -1
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/LICENSE +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/account.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/advertising_test_account.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/attribution.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/audiences.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/billing.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/brand_metrics.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/eligibility.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/exports.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/history.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/invoices.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/localization.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/manager_accounts.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/metadata.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/portfolios.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/portfolios_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/profiles.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/reports.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/ad_creatives_v4.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/ad_groups.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/ad_groups_v4.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/ads_v4.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/benchmarks.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/bid_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/brands.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/budget_rules.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/campaigns.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/campaigns_v4.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/forecast.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/keywords.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/keywords_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/landing_page_asins.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/media.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/migration.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/negative_keywords.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/negative_product_targeting.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/optimization_rules.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/product_targeting.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/reports.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/stores.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/targeting_categories.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/targeting_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/themes.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/ad_groups.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/bid_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/brand_safety.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/budget_rules.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/campaigns.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/campaigns_budget_usage.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/creatives.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/forecast.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/negative_product_targeting.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/product_ads.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/product_targeting.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/reports.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/snapshots.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/targeting_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/ad_groups_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/bid_recommendations_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/budget_initial_recommendation.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/budget_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/budget_rules.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/budget_rules_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaign_consolidated_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaign_negative_keywords_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaign_negative_targets.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaigns_budget_usage.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaigns_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaings_optimization.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/keywords_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/negative_keywords_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/negative_product_targeting_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/product_ads_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/product_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/product_targeting_v3.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/ranked_keywords_recommendations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/schedule_based_bid_optimization.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/stores.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/stream.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/v1/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/v1/ad_groups.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/v1/ads.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/v1/campaigns.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/v1/targets.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/validation_configurations.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/access_token_client.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/access_token_response.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/credentials.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/exceptions.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/__init__.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/api_response.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/base_client.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/client.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/config.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/credential_provider.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/exceptions.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/helpers.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/marketplaces.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/utils.py +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/pyproject.toml +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/SOURCES.txt +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/dependency_links.txt +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/requires.txt +0 -0
- {python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-amazon-ad-api
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.7
|
|
4
4
|
Summary: Python wrapper for the Amazon Advertising API
|
|
5
5
|
Home-page: https://github.com/denisneuf/python-amazon-ad-api
|
|
6
6
|
Author: Daniel Alvaro
|
|
@@ -267,8 +267,8 @@ curl \
|
|
|
267
267
|
* [Invoices](https://python-amazon-ad-api.readthedocs.io/en/latest/api/invoices.html)
|
|
268
268
|
* [Billing](https://python-amazon-ad-api.readthedocs.io/en/latest/api/billing.html)
|
|
269
269
|
* [Audiences](https://python-amazon-ad-api.readthedocs.io/en/latest/api/audiences.html)
|
|
270
|
-
* [Change History
|
|
271
|
-
* [Creative Assets
|
|
270
|
+
* [Change History](https://python-amazon-ad-api.readthedocs.io/en/latest/api/history.html)
|
|
271
|
+
* [Creative Assets](https://python-amazon-ad-api.readthedocs.io/en/latest/api/creative_assets.html)
|
|
272
272
|
* [Elegibility](https://python-amazon-ad-api.readthedocs.io/en/latest/api/eligibility.html)
|
|
273
273
|
* [Insights](https://python-amazon-ad-api.readthedocs.io/en/latest/api/insights.html)
|
|
274
274
|
* [Localization](https://python-amazon-ad-api.readthedocs.io/en/latest/api/localization.html)
|
|
@@ -239,8 +239,8 @@ curl \
|
|
|
239
239
|
* [Invoices](https://python-amazon-ad-api.readthedocs.io/en/latest/api/invoices.html)
|
|
240
240
|
* [Billing](https://python-amazon-ad-api.readthedocs.io/en/latest/api/billing.html)
|
|
241
241
|
* [Audiences](https://python-amazon-ad-api.readthedocs.io/en/latest/api/audiences.html)
|
|
242
|
-
* [Change History
|
|
243
|
-
* [Creative Assets
|
|
242
|
+
* [Change History](https://python-amazon-ad-api.readthedocs.io/en/latest/api/history.html)
|
|
243
|
+
* [Creative Assets](https://python-amazon-ad-api.readthedocs.io/en/latest/api/creative_assets.html)
|
|
244
244
|
* [Elegibility](https://python-amazon-ad-api.readthedocs.io/en/latest/api/eligibility.html)
|
|
245
245
|
* [Insights](https://python-amazon-ad-api.readthedocs.io/en/latest/api/insights.html)
|
|
246
246
|
* [Localization](https://python-amazon-ad-api.readthedocs.io/en/latest/api/localization.html)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils
|
|
1
|
+
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
class CreativeAssets(Client):
|
|
@@ -121,3 +121,71 @@ class CreativeAssets(Client):
|
|
|
121
121
|
|
|
122
122
|
"""
|
|
123
123
|
return self._request(kwargs.pop('path'), params=kwargs)
|
|
124
|
+
|
|
125
|
+
@sp_endpoint('/assets/batchRegister', method='POST')
|
|
126
|
+
def batch_register_assets(self, **kwargs) -> ApiResponse:
|
|
127
|
+
r"""
|
|
128
|
+
Registers several uploaded assets in one call.
|
|
129
|
+
|
|
130
|
+
This route is asynchronous. It answers a ``requestId`` and nothing else,
|
|
131
|
+
so the result has to be read with ``get_batch_register_status``.
|
|
132
|
+
|
|
133
|
+
Request Body (required)
|
|
134
|
+
|
|
135
|
+
- ``assetDetailsList`` (array): between 1 and 50 entries, each one shaped
|
|
136
|
+
like the body ``register_asset`` accepts:
|
|
137
|
+
|
|
138
|
+
- ``url`` (string): where the file sits, from ``upload_asset``.
|
|
139
|
+
- ``name`` (string): the name to give the asset.
|
|
140
|
+
- ``assetType`` (string): ``IMAGE``.
|
|
141
|
+
- ``assetSubTypeList`` (array): ``LOGO``, ``PRODUCT_IMAGE``,
|
|
142
|
+
``AUTHOR_IMAGE``, ``LIFESTYLE_IMAGE`` or ``OTHER_IMAGE``.
|
|
143
|
+
- ``asinList`` (array): tags the asset with ASINs, so it can be found
|
|
144
|
+
by product later.
|
|
145
|
+
- ``associatedPrograms`` (array): up to 100 entries, one per program
|
|
146
|
+
the asset belongs to.
|
|
147
|
+
- ``otherMetadata`` (object): free key-value pairs of strings.
|
|
148
|
+
- ``tagList`` (array): tags for the asset.
|
|
149
|
+
- ``versionInfo`` (object): ``linkedAssetId`` and ``versionNotes``, to
|
|
150
|
+
register this file as a new version of an existing asset.
|
|
151
|
+
- ``skipAssetSubTypesDetection`` (boolean): keep the subtype as given
|
|
152
|
+
instead of letting the service reclassify it.
|
|
153
|
+
|
|
154
|
+
- ``batchRegistrationContext`` (object): the context applied to the whole
|
|
155
|
+
batch.
|
|
156
|
+
|
|
157
|
+
Returns
|
|
158
|
+
ApiResponse with ``requestId``, which ``get_batch_register_status``
|
|
159
|
+
takes.
|
|
160
|
+
|
|
161
|
+
"""
|
|
162
|
+
headers = {
|
|
163
|
+
'Accept': 'application/vnd.assetsbatchregisterresponse.v1+json',
|
|
164
|
+
'Content-Type': 'application/vnd.assetsbatchregisterrequest.v1+json',
|
|
165
|
+
}
|
|
166
|
+
body = Utils.convert_body(kwargs.pop('body'), wrap=False)
|
|
167
|
+
return self._request(kwargs.pop('path'), data=body, params=kwargs, headers=headers)
|
|
168
|
+
|
|
169
|
+
@sp_endpoint('/assets/batchRegister/{}', method='GET')
|
|
170
|
+
def get_batch_register_status(self, requestId, **kwargs) -> ApiResponse:
|
|
171
|
+
r"""
|
|
172
|
+
Reports whether a batch registration has finished.
|
|
173
|
+
|
|
174
|
+
The ``requestId`` comes from ``batch_register_assets``. An id the service
|
|
175
|
+
does not know answers ``400`` with
|
|
176
|
+
``AARServiceBadRequestException ... No request exists for the requestId``,
|
|
177
|
+
not a ``404``: the route answers either way, and the message says the id
|
|
178
|
+
was not found.
|
|
179
|
+
|
|
180
|
+
Path
|
|
181
|
+
|
|
182
|
+
- ``requestId`` (string): required. The identifier the batch call
|
|
183
|
+
returned.
|
|
184
|
+
|
|
185
|
+
Returns
|
|
186
|
+
ApiResponse with the state of that batch.
|
|
187
|
+
|
|
188
|
+
"""
|
|
189
|
+
headers = {'Accept': 'application/vnd.creativeassetsgetbatchregisterresponse.v3+json'}
|
|
190
|
+
return self._request(fill_query_params(kwargs.pop('path'), requestId),
|
|
191
|
+
params=kwargs, headers=headers)
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class Insights(Client):
|
|
5
|
+
""" """
|
|
6
|
+
|
|
7
|
+
@sp_endpoint('/insights/audiences/{}/overlappingAudiences', method='GET')
|
|
8
|
+
def get_insights(self, audienceId: str, version: int = 2, **kwargs) -> ApiResponse:
|
|
9
|
+
r"""
|
|
10
|
+
Returns the audiences that overlap with the one given, ranked by affinity.
|
|
11
|
+
|
|
12
|
+
Keyword Args
|
|
13
|
+
|
|
14
|
+
- ``version`` (int): the ``Accept`` version. **Only 2 answers**; 1 was
|
|
15
|
+
retired and replies ``415`` naming v2 as the sole supported type.
|
|
16
|
+
Defaults to 2. [optional]
|
|
17
|
+
|
|
18
|
+
Path
|
|
19
|
+
|
|
20
|
+
- ``audienceId`` (string): required. The audience to measure against.
|
|
21
|
+
|
|
22
|
+
Query
|
|
23
|
+
|
|
24
|
+
- ``adType`` (string): required in practice, ``SD`` or ``DSP``. When it
|
|
25
|
+
is left out the service assumes ``DSP`` and answers
|
|
26
|
+
``400 Missing advertiserId parameter for DSP request``, which names the
|
|
27
|
+
wrong parameter. Send it explicitly.
|
|
28
|
+
- ``advertiserId`` (string): required for ``DSP``, ignored for ``SD``.
|
|
29
|
+
- ``audienceCategory`` (string): keep only audiences of that category,
|
|
30
|
+
such as ``"In-market"``. The contract calls it an array; a plain string
|
|
31
|
+
is what the service accepts and applies.
|
|
32
|
+
- ``maxResults`` (integer): how many overlaps to return. Default 30.
|
|
33
|
+
Works, and the count follows it.
|
|
34
|
+
- ``nextToken`` (string): token from a previous answer. Subsequent calls
|
|
35
|
+
must repeat the same parameters.
|
|
36
|
+
|
|
37
|
+
Three parameters are accepted and then ignored: ``minimumAudienceSize``,
|
|
38
|
+
``maximumAudienceSize`` and ``minimumOverlapAffinity``. The call answers
|
|
39
|
+
``200`` with the same count as without them, so a filter that was never
|
|
40
|
+
applied is indistinguishable from one that matched everything. Check the
|
|
41
|
+
count, not the status.
|
|
42
|
+
|
|
43
|
+
Returns
|
|
44
|
+
ApiResponse with ``requestedAudienceMetadata``, ``overlappingAudiences``,
|
|
45
|
+
``marketplace`` and ``nextToken``. Each overlap carries
|
|
46
|
+
``audienceMetadata`` and ``affinity``, a number where higher means a
|
|
47
|
+
closer match.
|
|
48
|
+
|
|
49
|
+
"""
|
|
50
|
+
contentType = 'application/vnd.insightsaudiencesoverlap.v' + str(version) + '+json'
|
|
51
|
+
headers = {'Accept': contentType}
|
|
52
|
+
return self._request(fill_query_params(kwargs.pop('path'), audienceId), params=kwargs, headers=headers)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1.2.7"
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-amazon-ad-api
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.7
|
|
4
4
|
Summary: Python wrapper for the Amazon Advertising API
|
|
5
5
|
Home-page: https://github.com/denisneuf/python-amazon-ad-api
|
|
6
6
|
Author: Daniel Alvaro
|
|
@@ -267,8 +267,8 @@ curl \
|
|
|
267
267
|
* [Invoices](https://python-amazon-ad-api.readthedocs.io/en/latest/api/invoices.html)
|
|
268
268
|
* [Billing](https://python-amazon-ad-api.readthedocs.io/en/latest/api/billing.html)
|
|
269
269
|
* [Audiences](https://python-amazon-ad-api.readthedocs.io/en/latest/api/audiences.html)
|
|
270
|
-
* [Change History
|
|
271
|
-
* [Creative Assets
|
|
270
|
+
* [Change History](https://python-amazon-ad-api.readthedocs.io/en/latest/api/history.html)
|
|
271
|
+
* [Creative Assets](https://python-amazon-ad-api.readthedocs.io/en/latest/api/creative_assets.html)
|
|
272
272
|
* [Elegibility](https://python-amazon-ad-api.readthedocs.io/en/latest/api/eligibility.html)
|
|
273
273
|
* [Insights](https://python-amazon-ad-api.readthedocs.io/en/latest/api/insights.html)
|
|
274
274
|
* [Localization](https://python-amazon-ad-api.readthedocs.io/en/latest/api/localization.html)
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
class Insights(Client):
|
|
5
|
-
""" """
|
|
6
|
-
|
|
7
|
-
@sp_endpoint('/insights/audiences/{}/overlappingAudiences', method='GET')
|
|
8
|
-
def get_insights(self, audienceId: str, version: int = 1, **kwargs) -> ApiResponse:
|
|
9
|
-
r"""
|
|
10
|
-
get_insights(audienceId: str, version: int = 1, **kwargs) -> ApiResponse
|
|
11
|
-
|
|
12
|
-
Retrieves the top audiences that overlap with the provided audience.
|
|
13
|
-
|
|
14
|
-
Requires one of these permissions: ["advertiser_campaign_edit","advertiser_campaign_view"]
|
|
15
|
-
|
|
16
|
-
path **audienceId**:string | Required. The identifier of an audience.
|
|
17
|
-
|
|
18
|
-
internal **version**:int | Optional. The version of the overlapping audiences accept 'application/vnd.insightsaudiencesoverlap.v'+str(version)+'+json'. Available values : 1, 2 Default: 1
|
|
19
|
-
|
|
20
|
-
query **adType**:string | Required. The advertising program. Available values : DSP, SD
|
|
21
|
-
|
|
22
|
-
query **advertiserId**:string | Optional. The identifier of the advertiser you'd like to retrieve overlapping audiences for. This parameter is required for the DSP adType, but is optional for the SD adType.
|
|
23
|
-
|
|
24
|
-
query **minimumAudienceSize**:number | Optional. If specified, the sizes of all returned overlapping audiences will be at least the provided size. This parameter is supported only for request to return application/vnd.insightsaudiencesoverlap.v1+json.
|
|
25
|
-
|
|
26
|
-
query **maximumAudienceSize**:number | Optional. If specified, the sizes of all returned overlapping audiences will be at most the provided size. This parameter is supported only for request to return application/vnd.insightsaudiencesoverlap.v1+json.
|
|
27
|
-
|
|
28
|
-
query **minimumOverlapAffinity**:number | Optional. If specified, the affinities of all returned overlapping audiences will be at least the provided affinity.
|
|
29
|
-
|
|
30
|
-
query **maximumOverlapAffinity**:number | Optional. If specified, the affinities of all returned overlapping audiences will be at most the provided affinity.
|
|
31
|
-
|
|
32
|
-
query **audienceCategory**:array[string] | Optional. f specified, the categories of all returned overlapping audiences will be one of the provided categories.
|
|
33
|
-
|
|
34
|
-
query **maxResults**:integer | Optional. Sets the maximum number of overlapping audiences in the response. This parameter is supported only for request to return application/vnd.insightsaudiencesoverlap.v2+json. Default value : 30
|
|
35
|
-
|
|
36
|
-
query **nextToken**:string | Optional. TToken to be used to request additional overlapping audiences. If not provided, the top 30 overlapping audiences are returned. Note: subsequent calls must be made using the same parameters as used in previous requests.
|
|
37
|
-
|
|
38
|
-
"""
|
|
39
|
-
|
|
40
|
-
contentType = 'application/vnd.insightsaudiencesoverlap.v' + str(version) + '+json'
|
|
41
|
-
headers = {'Accept': contentType}
|
|
42
|
-
return self._request(fill_query_params(kwargs.pop('path'), audienceId), params=kwargs, headers=headers)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "1.2.5"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/advertising_test_account.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/bid_recommendations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/keywords_recommendations.py
RENAMED
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/landing_page_asins.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/negative_keywords.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/optimization_rules.py
RENAMED
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/product_targeting.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/targeting_categories.py
RENAMED
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sb/targeting_recommendations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/bid_recommendations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/campaigns_budget_usage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/product_targeting.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sd/targeting_recommendations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/bid_recommendations_v3.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/budget_recommendations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaign_negative_targets.py
RENAMED
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaigns_budget_usage.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/campaings_optimization.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/negative_keywords_v3.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/product_recommendations.py
RENAMED
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/sp/product_targeting_v3.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/api/validation_configurations.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/access_token_client.py
RENAMED
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/auth/access_token_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/ad_api/base/credential_provider.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{python_amazon_ad_api-1.2.5 → python_amazon_ad_api-1.2.7}/python_amazon_ad_api.egg-info/requires.txt
RENAMED
|
File without changes
|
|
File without changes
|