Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions ad_api/api/brand_metrics.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class BrandMetrics(Client):
Expand Down Expand Up @@ -26,7 +26,7 @@ def post_report(self, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(fill_query_params(kwargs.pop('path')), data=kwargs.pop('body'), params=kwargs)
return self._request(fill_query_params(kwargs.pop('path')), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/insights/brandMetrics/report/{}', method='GET')
def get_report(self, reportId, **kwargs) -> ApiResponse:
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/dsp/reports.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from ad_api.api.dsp.client import DspClient as Client
from ad_api.base import sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import sp_endpoint, fill_query_params, ApiResponse, Utils


class Reports(Client):
Expand Down Expand Up @@ -35,7 +35,7 @@ def post_report(self, dspAccountId, accept='application/vnd.dspcreatereports.v3+
ApiResponse
"""
path = fill_query_params(kwargs.pop('path'), dspAccountId)
return self._request(path, data=kwargs.pop('body'), headers={'Accept': accept}, params=kwargs)
return self._request(path, data=Utils.convert_body(kwargs.pop('body'), False), headers={'Accept': accept}, params=kwargs)

@sp_endpoint('/accounts/{}/dsp/reports/{}', method='GET')
def get_report(self, dspAccountId, reportId, accept='application/vnd.dspgetreports.v3+json', **kwargs) -> ApiResponse:
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/sb/bid_recommendations.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class BidRecommendations(Client):
Expand Down Expand Up @@ -32,4 +32,4 @@ def get_bid_recommendations(self, **kwargs) -> ApiResponse:

"""

return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
4 changes: 2 additions & 2 deletions ad_api/api/sb/campaigns.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ def create_campaigns(self, **kwargs) -> ApiResponse:

**match_type** (NegativeMatchType): [optional] The negative match type. For more information, see negative keyword match types in the Amazon Advertising support center. Enum:[ negativeExact, negativePhrase ]
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/campaigns', method='PUT')
@Utils.deprecated
Expand All @@ -113,7 +113,7 @@ def edit_campaigns(self, **kwargs) -> ApiResponse:
| **end_date** (EndDate > string) [optional] The YYYYMMDD end date of the campaign. Must be greater than the value specified in the startDate field. If this property is not included in the request, the endDate value is not updated. If set to null, endDate is deleted from the draft campaign. [nullable: true] [pattern: ^\\d{8}$]

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/campaigns/{}', method='GET')
def get_campaign(self, campaignId, **kwargs) -> ApiResponse:
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/sb/forecast.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class Forecast(Client):
@sp_endpoint('/sb/campaigns/shopperSegments/forecast', method='POST')
def list_forecast(self, **kwargs) -> ApiResponse:
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
6 changes: 3 additions & 3 deletions ad_api/api/sb/keywords.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class Keywords(Client):
Expand Down Expand Up @@ -50,7 +50,7 @@ def edit_keywords(self, **kwargs) -> ApiResponse:
Returns:
| ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/keywords', method='POST')
def create_keywords(self, **kwargs) -> ApiResponse:
Expand All @@ -75,7 +75,7 @@ def create_keywords(self, **kwargs) -> ApiResponse:
Returns:
| ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/keywords/{}', method='GET')
def get_keyword(self, keywordId, **kwargs) -> ApiResponse:
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/sb/keywords_recommendations.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class KeywordsRecommendations(Client):
@sp_endpoint('/sb/recommendations/keyword', method='POST')
def list_keywords_recommendations(self, **kwargs) -> ApiResponse:
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
2 changes: 1 addition & 1 deletion ad_api/api/sb/landing_page_asins.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class PageAsins(Client):
Expand Down
8 changes: 4 additions & 4 deletions ad_api/api/sb/media.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class Media(Client):
Expand All @@ -23,12 +23,12 @@ def create_media(self, **kwargs) -> ApiResponse:
| ApiResponse

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/media/complete', method='PUT')
def complete_media(self, **kwargs) -> ApiResponse:
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/media/describe', method='GET')
def describe_media(self, **kwargs) -> ApiResponse:
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
8 changes: 4 additions & 4 deletions ad_api/api/sb/negative_product_targeting.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class NegativeTargets(Client):
Expand Down Expand Up @@ -28,7 +28,7 @@ def list_negative_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/negativeTargets', method='PUT')
def edit_negative_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -43,7 +43,7 @@ def edit_negative_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/negativeTargets', method='POST')
def create_negative_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -63,7 +63,7 @@ def create_negative_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/negativeTargets/{}', method='GET')
def get_negative_target(self, negativeTargetId, **kwargs) -> ApiResponse:
Expand Down
8 changes: 4 additions & 4 deletions ad_api/api/sb/product_targeting.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class Targets(Client):
Expand Down Expand Up @@ -31,7 +31,7 @@ def list_products_targets(self, version: float = 3.2, **kwargs) -> ApiResponse:
"""
json_version = 'application/vnd.sblisttargetsresponse.v' + str(version) + "+json"
headers = {'Accept': json_version}
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs, headers=headers)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs, headers=headers)

@sp_endpoint('/sb/targets', method='PUT')
def edit_products_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -49,7 +49,7 @@ def edit_products_targets(self, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/targets', method='POST')
def create_products_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -65,7 +65,7 @@ def create_products_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/targets/{}', method='GET')
def get_products_target(self, targetId, **kwargs) -> ApiResponse:
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/sb/recommendations.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class Recommendations(Client):
@sp_endpoint('/sb​/recommendations​/creative​/headline', method='POST')
def list_recommendations(self, **kwargs) -> ApiResponse:
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
4 changes: 2 additions & 2 deletions ad_api/api/sb/reports.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class Reports(Client):
Expand Down Expand Up @@ -27,7 +27,7 @@ def post_report(self, recordType, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(fill_query_params(kwargs.pop('path'), recordType), data=kwargs.pop('body'), params=kwargs)
return self._request(fill_query_params(kwargs.pop('path'), recordType), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/v2/reports/{}', method='GET')
def get_report(self, reportId, **kwargs) -> ApiResponse:
Expand Down
2 changes: 1 addition & 1 deletion ad_api/api/sb/snapshots.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def post_snapshot(self, recordType, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(fill_query_params(kwargs.pop('path'), recordType), data=kwargs.pop('body'), params=kwargs)
return self._request(fill_query_params(kwargs.pop('path'), recordType), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/v2/hsa/snapshots/{}', method='GET')
@Utils.deprecated
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/sb/stores.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class Stores(Client):
Expand Down Expand Up @@ -41,4 +41,4 @@ def get_store(self, brandEntityId, **kwargs) -> ApiResponse:
@sp_endpoint('/stores/assets', method='POST')
def create_asset(self, contentDisposition, contentType, **kwargs) -> ApiResponse:
headers = {'Content-Disposition': contentDisposition, 'Content-Type': contentType}
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs, headers=headers)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs, headers=headers)
8 changes: 4 additions & 4 deletions ad_api/api/sb/targeting_recommendations.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class TargetsRecommendations(Client):
Expand All @@ -21,7 +21,7 @@ def list_products_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/recommendations/targets/category', method='POST')
def list_category_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -36,7 +36,7 @@ def list_category_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sb/recommendations/targets/brand', method='POST')
def list_brand_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -52,4 +52,4 @@ def list_brand_targets(self, **kwargs) -> ApiResponse:
Returns:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
6 changes: 3 additions & 3 deletions ad_api/api/sd/ad_groups.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class AdGroups(Client):
Expand Down Expand Up @@ -49,7 +49,7 @@ def edit_ad_groups(self, **kwargs) -> ApiResponse:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/adGroups', method='POST')
def create_ad_groups(self, **kwargs) -> ApiResponse:
Expand All @@ -71,7 +71,7 @@ def create_ad_groups(self, **kwargs) -> ApiResponse:
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/adGroups/{}', method='GET')
def get_ad_group(self, adGroupId, **kwargs) -> ApiResponse:
Expand Down
4 changes: 2 additions & 2 deletions ad_api/api/sd/bid_recommendations.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, ApiResponse
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils


class BidRecommendations(Client):
Expand Down Expand Up @@ -88,4 +88,4 @@ def list_targets_bid_recommendations(self, **kwargs) -> ApiResponse:
"""
contentType = 'application/vnd.sdtargetingrecommendations.v3.2+json'
headers = {'Content-Type': contentType}
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs, headers=headers)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs, headers=headers)
6 changes: 3 additions & 3 deletions ad_api/api/sd/campaigns.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class Campaigns(Client):
Expand Down Expand Up @@ -53,7 +53,7 @@ def edit_campaigns(self, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/campaigns', method='POST')
def create_campaigns(self, **kwargs) -> ApiResponse:
Expand Down Expand Up @@ -81,7 +81,7 @@ def create_campaigns(self, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/campaigns/{}', method='GET')
def get_campaign(self, campaignId, **kwargs) -> ApiResponse:
Expand Down
2 changes: 1 addition & 1 deletion ad_api/api/sd/creatives.py
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ def create_creatives(self, **kwargs) -> ApiResponse:
Returns
ApiResponse
"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/moderation/creatives', method='GET')
def list_moderation_creatives(self, **kwargs) -> ApiResponse:
Expand Down
6 changes: 3 additions & 3 deletions ad_api/api/sd/negative_product_targeting.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class NegativeTargets(Client):
Expand Down Expand Up @@ -49,7 +49,7 @@ def edit_negative_targets(self, **kwargs) -> ApiResponse:


"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/negativeTargets', method='POST')
def create_negative_targets(self, **kwargs) -> ApiResponse:
Expand All @@ -73,7 +73,7 @@ def create_negative_targets(self, **kwargs) -> ApiResponse:


"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/negativeTargets/{}', method='GET')
def get_negative_target(self, targetId, **kwargs) -> ApiResponse:
Expand Down
6 changes: 3 additions & 3 deletions ad_api/api/sd/product_ads.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils


class ProductAds(Client):
Expand Down Expand Up @@ -51,7 +51,7 @@ def edit_product_ads(self, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/productAds', method='POST')
def create_product_ads(self, **kwargs) -> ApiResponse:
Expand All @@ -73,7 +73,7 @@ def create_product_ads(self, **kwargs) -> ApiResponse:
ApiResponse

"""
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

@sp_endpoint('/sd/productAds/{}', method='GET')
def get_product_ad(self, adId, **kwargs) -> ApiResponse:
Expand Down
Loading