Skip to content

Commit 04d5a96

Browse files
authored
Merge pull request #241 from felixlu/fix-sd-payload
fix: 🐛 APIs' body format (add Utils.convert_body)
2 parents 664de06 + 56ccce8 commit 04d5a96

39 files changed

+93
-93
lines changed

ad_api/api/brand_metrics.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils
22

33

44
class BrandMetrics(Client):
@@ -26,7 +26,7 @@ def post_report(self, **kwargs) -> ApiResponse:
2626
ApiResponse
2727
2828
"""
29-
return self._request(fill_query_params(kwargs.pop('path')), data=kwargs.pop('body'), params=kwargs)
29+
return self._request(fill_query_params(kwargs.pop('path')), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
3030

3131
@sp_endpoint('/insights/brandMetrics/report/{}', method='GET')
3232
def get_report(self, reportId, **kwargs) -> ApiResponse:

ad_api/api/dsp/reports.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from ad_api.api.dsp.client import DspClient as Client
2-
from ad_api.base import sp_endpoint, fill_query_params, ApiResponse
2+
from ad_api.base import sp_endpoint, fill_query_params, ApiResponse, Utils
33

44

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

4040
@sp_endpoint('/accounts/{}/dsp/reports/{}', method='GET')
4141
def get_report(self, dspAccountId, reportId, accept='application/vnd.dspgetreports.v3+json', **kwargs) -> ApiResponse:

ad_api/api/sb/bid_recommendations.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from ad_api.base import Client, sp_endpoint, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils
22

33

44
class BidRecommendations(Client):
@@ -32,4 +32,4 @@ def get_bid_recommendations(self, **kwargs) -> ApiResponse:
3232
3333
"""
3434

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

ad_api/api/sb/campaigns.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ def create_campaigns(self, **kwargs) -> ApiResponse:
8686
8787
**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 ]
8888
"""
89-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
89+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
9090

9191
@sp_endpoint('/sb/campaigns', method='PUT')
9292
@Utils.deprecated
@@ -113,7 +113,7 @@ def edit_campaigns(self, **kwargs) -> ApiResponse:
113113
| **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}$]
114114
115115
"""
116-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
116+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
117117

118118
@sp_endpoint('/sb/campaigns/{}', method='GET')
119119
def get_campaign(self, campaignId, **kwargs) -> ApiResponse:

ad_api/api/sb/forecast.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from ad_api.base import Client, sp_endpoint, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils
22

33

44
class Forecast(Client):
55
@sp_endpoint('/sb/campaigns/shopperSegments/forecast', method='POST')
66
def list_forecast(self, **kwargs) -> ApiResponse:
7-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
7+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

ad_api/api/sb/keywords.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils
22

33

44
class Keywords(Client):
@@ -50,7 +50,7 @@ def edit_keywords(self, **kwargs) -> ApiResponse:
5050
Returns:
5151
| ApiResponse
5252
"""
53-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
53+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
5454

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

8080
@sp_endpoint('/sb/keywords/{}', method='GET')
8181
def get_keyword(self, keywordId, **kwargs) -> ApiResponse:
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from ad_api.base import Client, sp_endpoint, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils
22

33

44
class KeywordsRecommendations(Client):
55
@sp_endpoint('/sb/recommendations/keyword', method='POST')
66
def list_keywords_recommendations(self, **kwargs) -> ApiResponse:
7-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
7+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

ad_api/api/sb/landing_page_asins.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from ad_api.base import Client, sp_endpoint, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils
22

33

44
class PageAsins(Client):

ad_api/api/sb/media.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from ad_api.base import Client, sp_endpoint, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, ApiResponse, Utils
22

33

44
class Media(Client):
@@ -23,12 +23,12 @@ def create_media(self, **kwargs) -> ApiResponse:
2323
| ApiResponse
2424
2525
"""
26-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
26+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
2727

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

3232
@sp_endpoint('/media/describe', method='GET')
3333
def describe_media(self, **kwargs) -> ApiResponse:
34-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
34+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)

ad_api/api/sb/negative_product_targeting.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
1+
from ad_api.base import Client, sp_endpoint, fill_query_params, ApiResponse, Utils
22

33

44
class NegativeTargets(Client):
@@ -28,7 +28,7 @@ def list_negative_targets(self, **kwargs) -> ApiResponse:
2828
Returns:
2929
ApiResponse
3030
"""
31-
return self._request(kwargs.pop('path'), data=kwargs.pop('body'), params=kwargs)
31+
return self._request(kwargs.pop('path'), data=Utils.convert_body(kwargs.pop('body'), False), params=kwargs)
3232

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

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

6868
@sp_endpoint('/sb/negativeTargets/{}', method='GET')
6969
def get_negative_target(self, negativeTargetId, **kwargs) -> ApiResponse:

0 commit comments

Comments
 (0)