def get_feed_result_document(self, feed_id, **kwargs) -> str: """ Returns the decrypted, unpacked FeedResponse **Usage Plan:** ====================================== ============== Rate (requests per second) Burst ====================================== ============== 0.0222 10 ====================================== ============== Args: feed_id: str **kwargs: Returns: str: The feed results' contents """ response = GetFeedDocumentResponse( **self._request(fill_query_params(kwargs.pop('path'), feed_id), params=kwargs, add_marketplace=False).json()) url = response.payload.get('url') decrypted = decrypt_aes( requests.get(url).content, response.payload.get('encryptionDetails').get('key'), response.payload.get('encryptionDetails').get( 'initializationVector')) if 'compressionAlgorithm' in response.payload: return zlib.decompress(bytearray(decrypted), 15 + 32).decode('iso-8859-1') return decrypted.decode('iso-8859-1')
def decrypt_report_document(url, initialization_vector, key, encryption_standard, payload): """ Decrypts and unpacks a report document, currently AES encryption is implemented """ if encryption_standard == 'AES': decrypted = decrypt_aes(requests.get(url).content, key, initialization_vector) if 'compressionAlgorithm' in payload: return zlib.decompress(bytearray(decrypted), 15 + 32).decode('iso-8859-1') return decrypted.decode('iso-8859-1') raise SellingApiException([{ 'message': 'Only AES decryption is implemented. Contribute: https://github.com/saleweaver/python-sp-api' }])
def get_feed_result_document(self, feed_id, **kwargs): response = GetFeedDocumentResponse( **self._request(fill_query_params(kwargs.pop('path'), feed_id), params=kwargs, add_marketplace=False).json()) url = response.payload.get('url') decrypted = decrypt_aes( requests.get(url).content, response.payload.get('encryptionDetails').get('key'), response.payload.get('encryptionDetails').get( 'initializationVector')) if 'compressionAlgorithm' in response.payload: return zlib.decompress(bytearray(decrypted), 15 + 32).decode('iso-8859-1') return decrypted.decode('iso-8859-1')
def decrypt_report_document(url, initialization_vector, key, encryption_standard): """ Decrypts a report document, currently AES encryption is implemented :param url: :param initialization_vector: :param key: :param encryption_standard: :return: """ if encryption_standard == 'AES': return decrypt_aes( requests.get(url).content, key, initialization_vector).decode('iso-8859-1') raise SellingApiException([{ 'message': 'Only AES decryption is implemented. Contribute: https://github.com/saleweaver/python-sp-api' }])