diff --git a/modules/stock_package_shipping_sendcloud/carrier.py b/modules/stock_package_shipping_sendcloud/carrier.py index d80804f913..e66feadbc8 100644 --- a/modules/stock_package_shipping_sendcloud/carrier.py +++ b/modules/stock_package_shipping_sendcloud/carrier.py @@ -19,6 +19,9 @@ from .exceptions import SendcloudError SENDCLOUD_API_URL = 'https://panel.sendcloud.sc/api/v2/' TIMEOUT = config.getfloat( 'stock_package_shipping_sendcloud', 'requests_timeout', default=300) +HEADERS = { + 'Sendcloud-Partner-Id': '03c1facb-63da-4bb1-889c-192fc91ec4e6', + } def sendcloud_api(func): @@ -87,7 +90,7 @@ class CredentialSendcloud(sequence_ordered(), ModelSQL, ModelView, MatchMixin): return addresses response = requests.get( SENDCLOUD_API_URL + 'user/addresses/sender', - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() addresses = response.json()['sender_addresses'] self._addresses_sender_cache.set(self.id, addresses) @@ -121,7 +124,7 @@ class CredentialSendcloud(sequence_ordered(), ModelSQL, ModelView, MatchMixin): params['is_return'] = is_return response = requests.get( SENDCLOUD_API_URL + 'shipping_methods', params=params, - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() methods = response.json()['shipping_methods'] self._shiping_methods_cache.set(key, methods) @@ -146,7 +149,7 @@ class CredentialSendcloud(sequence_ordered(), ModelSQL, ModelView, MatchMixin): def get_parcel(self, id): response = requests.get( SENDCLOUD_API_URL + 'parcels/%s' % id, - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() return response.json()['parcel'] @@ -154,7 +157,7 @@ class CredentialSendcloud(sequence_ordered(), ModelSQL, ModelView, MatchMixin): def create_parcels(self, parcels): response = requests.post( SENDCLOUD_API_URL + 'parcels', json={'parcels': parcels}, - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) if response.status_code == 400: msg = response.json()['error']['message'] raise requests.HTTPError(msg, response=response) @@ -163,7 +166,8 @@ class CredentialSendcloud(sequence_ordered(), ModelSQL, ModelView, MatchMixin): @sendcloud_api def get_label(self, url): - response = requests.get(url, auth=self.auth, timeout=TIMEOUT) + response = requests.get( + url, auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() return response.content