python-amazon-sp-api 1.9.34__py3-none-any.whl → 2.0.7__py3-none-any.whl

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.
Files changed (162) hide show
  1. {python_amazon_sp_api-1.9.34.dist-info → python_amazon_sp_api-2.0.7.dist-info}/METADATA +44 -20
  2. python_amazon_sp_api-2.0.7.dist-info/RECORD +251 -0
  3. {python_amazon_sp_api-1.9.34.dist-info → python_amazon_sp_api-2.0.7.dist-info}/top_level.txt +0 -1
  4. sp_api/__version__.py +1 -1
  5. sp_api/api/__init__.py +5 -2
  6. sp_api/api/application_integrations/application_integrations.py +2 -2
  7. sp_api/api/catalog/catalog.py +3 -4
  8. sp_api/api/catalog_items/catalog_items.py +3 -6
  9. sp_api/api/customer_feedback/customer_feedback.py +110 -0
  10. sp_api/api/data_kiosk/data_kiosk.py +5 -6
  11. sp_api/api/easy_ship/easy_ship.py +5 -5
  12. sp_api/api/external_fulfillment/external_fulfillment.py +706 -0
  13. sp_api/api/feeds/feeds.py +11 -8
  14. sp_api/api/fulfillment_inbound/fulfillment_inbound.py +35 -2
  15. sp_api/api/inventories/inventories.py +2 -7
  16. sp_api/api/listings_items/listings_items.py +3 -24
  17. sp_api/api/messaging/messaging.py +42 -0
  18. sp_api/api/orders/orders.py +7 -0
  19. sp_api/api/product_fees/product_fees.py +31 -74
  20. sp_api/api/products/products.py +3 -1
  21. sp_api/api/products/products_definitions.py +11 -169
  22. sp_api/api/reports/reports.py +61 -96
  23. sp_api/api/sales/sales.py +2 -2
  24. sp_api/asyncio/api/__init__.py +164 -0
  25. sp_api/asyncio/api/amazon_warehousing_and_distribu/__init__.py +9 -0
  26. sp_api/asyncio/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py +130 -0
  27. sp_api/asyncio/api/aplus_content/__init__.py +5 -0
  28. sp_api/asyncio/api/aplus_content/aplus_content.py +330 -0
  29. sp_api/asyncio/api/application_integrations/__init__.py +5 -0
  30. sp_api/asyncio/api/application_integrations/application_integrations.py +119 -0
  31. sp_api/asyncio/api/application_management/__init__.py +5 -0
  32. sp_api/asyncio/api/application_management/application_management.py +36 -0
  33. sp_api/asyncio/api/authorization/__init__.py +5 -0
  34. sp_api/asyncio/api/authorization/authorization.py +54 -0
  35. sp_api/asyncio/api/catalog/__init__.py +5 -0
  36. sp_api/asyncio/api/catalog/catalog.py +111 -0
  37. sp_api/asyncio/api/catalog_items/__init__.py +6 -0
  38. sp_api/asyncio/api/catalog_items/catalog_items.py +93 -0
  39. sp_api/asyncio/api/clients/__init__.py +1 -0
  40. sp_api/asyncio/api/customer_feedback/__init__.py +5 -0
  41. sp_api/asyncio/api/customer_feedback/customer_feedback.py +111 -0
  42. sp_api/asyncio/api/data_kiosk/__init__.py +5 -0
  43. sp_api/asyncio/api/data_kiosk/data_kiosk.py +236 -0
  44. sp_api/asyncio/api/easy_ship/__init__.py +5 -0
  45. sp_api/asyncio/api/easy_ship/easy_ship.py +191 -0
  46. sp_api/asyncio/api/external_fulfillment/__init__.py +5 -0
  47. sp_api/asyncio/api/external_fulfillment/external_fulfillment.py +706 -0
  48. sp_api/asyncio/api/fba_inbound_eligibility/__init__.py +5 -0
  49. sp_api/asyncio/api/fba_inbound_eligibility/fba_inbound_eligibility.py +96 -0
  50. sp_api/asyncio/api/fba_small_and_light/__init__.py +5 -0
  51. sp_api/asyncio/api/fba_small_and_light/fba_small_and_light.py +213 -0
  52. sp_api/asyncio/api/feeds/feeds.py +260 -0
  53. sp_api/asyncio/api/finances/finances.py +100 -0
  54. sp_api/asyncio/api/fulfillment_inbound/fulfillment_inbound.py +1798 -0
  55. sp_api/asyncio/api/fulfillment_outbound/fulfillment_outbound.py +736 -0
  56. sp_api/asyncio/api/inventories/inventories.py +74 -0
  57. sp_api/asyncio/api/listings_items/listings_items.py +170 -0
  58. sp_api/asyncio/api/listings_restrictions/listings_restrictions.py +36 -0
  59. sp_api/asyncio/api/merchant_fulfillment/__init__.py +0 -0
  60. sp_api/asyncio/api/merchant_fulfillment/merchant_fulfillment.py +384 -0
  61. sp_api/asyncio/api/messaging/__init__.py +0 -0
  62. sp_api/asyncio/api/messaging/messaging.py +511 -0
  63. sp_api/asyncio/api/models/__init__.py +4 -0
  64. sp_api/asyncio/api/notifications/__init__.py +0 -0
  65. sp_api/asyncio/api/notifications/notifications.py +295 -0
  66. sp_api/asyncio/api/orders/__init__.py +0 -0
  67. sp_api/asyncio/api/orders/orders.py +362 -0
  68. sp_api/asyncio/api/overrides/__init__.py +1 -0
  69. sp_api/asyncio/api/product_fees/__init__.py +0 -0
  70. sp_api/asyncio/api/product_fees/product_fees.py +194 -0
  71. sp_api/asyncio/api/product_type_definitions/__init__.py +0 -0
  72. sp_api/asyncio/api/product_type_definitions/product_type_definitions.py +75 -0
  73. sp_api/asyncio/api/products/__init__.py +0 -0
  74. sp_api/asyncio/api/products/products.py +405 -0
  75. sp_api/asyncio/api/products/products_definitions.py +11 -0
  76. sp_api/asyncio/api/replenishment/__init__.py +0 -0
  77. sp_api/asyncio/api/replenishment/replenishment.py +121 -0
  78. sp_api/asyncio/api/reports/__init__.py +0 -0
  79. sp_api/asyncio/api/reports/reports.py +439 -0
  80. sp_api/asyncio/api/sales/__init__.py +0 -0
  81. sp_api/asyncio/api/sales/sales.py +93 -0
  82. sp_api/asyncio/api/sellers/__init__.py +0 -0
  83. sp_api/asyncio/api/sellers/sellers.py +70 -0
  84. sp_api/asyncio/api/services/__init__.py +0 -0
  85. sp_api/asyncio/api/services/services.py +218 -0
  86. sp_api/asyncio/api/shipping/__init__.py +0 -0
  87. sp_api/asyncio/api/shipping/shipping.py +459 -0
  88. sp_api/asyncio/api/shipping/shippingV2.py +651 -0
  89. sp_api/asyncio/api/solicitations/__init__.py +0 -0
  90. sp_api/asyncio/api/solicitations/solicitations.py +78 -0
  91. sp_api/asyncio/api/supply_sources/__init__.py +0 -0
  92. sp_api/asyncio/api/supply_sources/supply_sources.py +138 -0
  93. sp_api/asyncio/api/tokens/__init__.py +0 -0
  94. sp_api/asyncio/api/tokens/tokens.py +65 -0
  95. sp_api/asyncio/api/upload/__init__.py +0 -0
  96. sp_api/asyncio/api/upload/upload.py +18 -0
  97. sp_api/asyncio/api/vendor_direct_fulfillment_inventory/__init__.py +0 -0
  98. sp_api/asyncio/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py +64 -0
  99. sp_api/asyncio/api/vendor_direct_fulfillment_orders/__init__.py +0 -0
  100. sp_api/asyncio/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py +196 -0
  101. sp_api/asyncio/api/vendor_direct_fulfillment_payments/__init__.py +0 -0
  102. sp_api/asyncio/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py +254 -0
  103. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/__init__.py +0 -0
  104. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py +627 -0
  105. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/__init__.py +0 -0
  106. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py +43 -0
  107. sp_api/asyncio/api/vendor_invoices/__init__.py +0 -0
  108. sp_api/asyncio/api/vendor_invoices/vendor_invoices.py +295 -0
  109. sp_api/asyncio/api/vendor_orders/__init__.py +0 -0
  110. sp_api/asyncio/api/vendor_orders/vendor_orders.py +210 -0
  111. sp_api/asyncio/api/vendor_shipments/__init__.py +0 -0
  112. sp_api/asyncio/api/vendor_shipments/vendor_shipments.py +118 -0
  113. sp_api/asyncio/api/vendor_transaction_status/__init__.py +0 -0
  114. sp_api/asyncio/api/vendor_transaction_status/vendor_transaction_status.py +41 -0
  115. sp_api/asyncio/auth/__init__.py +12 -0
  116. sp_api/asyncio/auth/access_token_client.py +145 -0
  117. sp_api/asyncio/auth/exceptions.py +5 -0
  118. sp_api/asyncio/base/__init__.py +53 -0
  119. sp_api/asyncio/base/_transport_httpx.py +50 -0
  120. sp_api/asyncio/base/base_client.py +8 -0
  121. sp_api/asyncio/base/client.py +169 -0
  122. sp_api/asyncio/util/__init__.py +29 -0
  123. sp_api/asyncio/util/key_maker.py +5 -0
  124. sp_api/asyncio/util/load_all_pages.py +55 -0
  125. sp_api/asyncio/util/load_date_bound.py +53 -0
  126. sp_api/asyncio/util/retry.py +88 -0
  127. sp_api/auth/_core.py +39 -0
  128. sp_api/auth/access_token_client.py +18 -29
  129. sp_api/base/ApiResponse.py +2 -2
  130. sp_api/base/_core.py +110 -0
  131. sp_api/base/_transport_httpx.py +39 -0
  132. sp_api/base/client.py +40 -63
  133. sp_api/base/helpers.py +1 -1
  134. sp_api/base/reportTypes.py +3 -2
  135. sp_api/util/__init__.py +36 -0
  136. sp_api/util/params.py +57 -0
  137. sp_api/util/product_fees.py +40 -0
  138. sp_api/util/products_definitions.py +169 -0
  139. sp_api/util/report_document.py +154 -0
  140. python_amazon_sp_api-1.9.34.dist-info/RECORD +0 -148
  141. tests/api/finances/test_finances.py +0 -19
  142. tests/api/notifications/test_notifications.py +0 -26
  143. tests/api/orders/test_orders.py +0 -122
  144. tests/api/product_fees/product_fees.py +0 -49
  145. tests/api/reports/test_reports.py +0 -127
  146. tests/client/test_auth.py +0 -59
  147. tests/client/test_base.py +0 -163
  148. tests/client/test_credential_provider.py +0 -45
  149. tests/client/test_helpers.py +0 -142
  150. {python_amazon_sp_api-1.9.34.data → python_amazon_sp_api-2.0.7.data}/scripts/make_endpoint +0 -0
  151. {python_amazon_sp_api-1.9.34.dist-info → python_amazon_sp_api-2.0.7.dist-info}/WHEEL +0 -0
  152. {python_amazon_sp_api-1.9.34.dist-info → python_amazon_sp_api-2.0.7.dist-info}/licenses/LICENSE +0 -0
  153. {tests → sp_api/api/customer_feedback}/__init__.py +0 -0
  154. {tests/api → sp_api/api/external_fulfillment}/__init__.py +0 -0
  155. {tests/api/finances → sp_api/asyncio}/__init__.py +0 -0
  156. {tests/api/notifications → sp_api/asyncio/api/feeds}/__init__.py +0 -0
  157. {tests/api/orders → sp_api/asyncio/api/finances}/__init__.py +0 -0
  158. {tests/api/product_fees → sp_api/asyncio/api/fulfillment_inbound}/__init__.py +0 -0
  159. {tests/api/reports → sp_api/asyncio/api/fulfillment_outbound}/__init__.py +0 -0
  160. {tests/api/sellers → sp_api/asyncio/api/inventories}/__init__.py +0 -0
  161. {tests/client → sp_api/asyncio/api/listings_items}/__init__.py +0 -0
  162. /tests/api/sellers/test_sellers.py → /sp_api/asyncio/api/listings_restrictions/__init__.py +0 -0
@@ -1,14 +1,14 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-amazon-sp-api
3
- Version: 1.9.34
3
+ Version: 2.0.7
4
4
  Summary: Python wrapper for the Amazon Selling-Partner API
5
5
  Home-page: https://github.com/saleweaver/python-amazon-sp-api
6
- Author: Michael
7
- Author-email: info@saleweaver.com
6
+ Author: Michael Primke
7
+ Author-email: primke.michael@gmail.com
8
8
  License: MIT
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
- Requires-Dist: requests>=2.32.1
11
+ Requires-Dist: httpx>=0.27.0
12
12
  Requires-Dist: cachetools>=4.2
13
13
  Requires-Dist: confuse>=1.4
14
14
  Provides-Extra: aws-caching
@@ -25,6 +25,7 @@ Dynamic: provides-extra
25
25
  Dynamic: requires-dist
26
26
  Dynamic: summary
27
27
 
28
+ [![CodeFactor](https://www.codefactor.io/repository/github/saleweaver/python-amazon-sp-api/badge)](https://www.codefactor.io/repository/github/saleweaver/python-amazon-sp-api)
28
29
  [![Downloads](https://static.pepy.tech/badge/python-amazon-sp-api)](https://pepy.tech/project/python-amazon-sp-api)
29
30
  [![Downloads](https://static.pepy.tech/badge/python-amazon-sp-api/month)](https://pepy.tech/project/python-amazon-sp-api)
30
31
  [![Downloads](https://static.pepy.tech/badge/python-amazon-sp-api/week)](https://pepy.tech/project/python-amazon-sp-api)
@@ -37,25 +38,14 @@ A wrapper to access **Amazon's Selling Partner API** with an easy-to-use interfa
37
38
 
38
39
  ---
39
40
 
40
- 🚀 Streamline Your Amazon Seller Reporting!
41
+ ### New Features
41
42
 
42
- Automatically download all your Amazon seller reports and effortlessly forward them directly to Google Sheets or your database.
43
- If you're looking to download reports from Amazon, or get real-time alerts, [have a look at my service](https://clairinsights.com).
43
+ #### Async support!
44
44
 
45
+ - httpx-based transport for sync clients, enabling connection pooling and consistent streaming behavior.
46
+ - Async client package under `sp_api.asyncio` for non-blocking calls across services.
45
47
 
46
48
 
47
- ---
48
-
49
- ### 🚀 Version 2 is coming! 🚀
50
-
51
- You have decided, and since it's so close I think we'll have to do both, pydantic and async.
52
- Thanks to everyone who voted!
53
- Contributors welcome - please join [the discussion](https://github.com/saleweaver/python-amazon-sp-api/discussions/1762)
54
-
55
- ![Alt](votes.png "Votes")
56
-
57
- ---
58
-
59
49
  # 🌟 Thank you for using python-amazon-sp-api! 🌟
60
50
 
61
51
  This tool helps developers and businesses connect seamlessly with Amazon's vast marketplace, enabling powerful automations and data management.
@@ -143,6 +133,41 @@ orders = Orders().get_orders(
143
133
 
144
134
  ---
145
135
 
136
+ ### Async Usage
137
+
138
+ ```python
139
+ import asyncio
140
+ from datetime import datetime, timedelta
141
+
142
+ from sp_api.asyncio.api import Orders, Reports
143
+ from sp_api.base.reportTypes import ReportType
144
+
145
+
146
+ async def main():
147
+ async with Orders() as orders_client:
148
+ res = await orders_client.get_orders(
149
+ LastUpdatedAfter=(datetime.utcnow() - timedelta(days=1)).isoformat()
150
+ )
151
+ print(res.payload)
152
+
153
+ async with Reports() as reports_client:
154
+ report = await reports_client.create_report(
155
+ reportType=ReportType.GET_MERCHANT_LISTINGS_ALL_DATA
156
+ )
157
+ print(report.payload)
158
+
159
+ # OR
160
+ await Reports().create_report(
161
+ reportType=ReportType.GET_MERCHANT_LISTINGS_ALL_DATA
162
+ )
163
+
164
+
165
+ if __name__ == "__main__":
166
+ asyncio.run(main())
167
+ ```
168
+
169
+ ---
170
+
146
171
 
147
172
  ### New endpoints
148
173
 
@@ -179,4 +204,3 @@ The client is pretty extensible and can be used for any other API. Check it out
179
204
 
180
205
 
181
206
  ![Alt](https://repobeats.axiom.co/api/embed/25e8a3fe715fe68f2996ab99fe2e6188cd96a459.svg "Repobeats analytics image")
182
-
@@ -0,0 +1,251 @@
1
+ python_amazon_sp_api-2.0.7.data/scripts/make_endpoint,sha256=QWcwG6z4RWFJlzj4-xyHJymjObyKtwkvWFRq8T18iG0,8568
2
+ python_amazon_sp_api-2.0.7.dist-info/licenses/LICENSE,sha256=nbzomPIVo1PVl5bpGAntofsYAF7ZQ2UhzOtKgf7IiNw,1071
3
+ sp_api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ sp_api/__version__.py,sha256=Eqd_jrp6aA0AOwkbRY6r2MSGXmOOkqUkdUqKDmktZJM,22
5
+ sp_api/api/__init__.py,sha256=QTDz2g_fryNGkGszhytqhI8K3x_ttP7fbXLJ5uRvmj0,4747
6
+ sp_api/api/amazon_warehousing_and_distribu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ sp_api/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py,sha256=bMBIxIj0eu6Gi6WY3XLdHHYDzNCwz0-9X59Jo9DoqfE,5863
8
+ sp_api/api/aplus_content/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ sp_api/api/aplus_content/aplus_content.py,sha256=ugQd0ZbzK28JL7qCliufqqrnStqRlsR417vhO7eaTjs,18532
10
+ sp_api/api/application_integrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ sp_api/api/application_integrations/application_integrations.py,sha256=yfxCp4J_1Rs-F00QJ3_a43AZfTikZfFbTCEPsnSqqqQ,6478
12
+ sp_api/api/application_management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ sp_api/api/application_management/application_management.py,sha256=nQ2PLHnvmjciOXnbQLodd32i8rISi_bDlHikuRzFMuc,1881
14
+ sp_api/api/authorization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
+ sp_api/api/authorization/authorization.py,sha256=G4bHrtfaCmkIkVONK5dfiXzTnTeLacxImQOitOK3Iu0,2798
16
+ sp_api/api/catalog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
+ sp_api/api/catalog/catalog.py,sha256=LWNO8P_MagvOQn3quhPITb2GQo20juDov728jiabPIg,3893
18
+ sp_api/api/catalog_items/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
+ sp_api/api/catalog_items/catalog_items.py,sha256=QZikJEBLhC35lFiJ0bNjgInZxVXEZqJKJG3t_uamV7A,4597
20
+ sp_api/api/customer_feedback/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
+ sp_api/api/customer_feedback/customer_feedback.py,sha256=3QJOu7-nHTdHWGricL6hnmX0qKcmqmoVsBLIpo1IJv4,3559
22
+ sp_api/api/data_kiosk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ sp_api/api/data_kiosk/data_kiosk.py,sha256=QLLJzwwSKoR8wk4AsgADPZJ_noIVl2q91JwLmcPBilc,12190
24
+ sp_api/api/easy_ship/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
+ sp_api/api/easy_ship/easy_ship.py,sha256=ddYbTUVpnrvSiJBZYcdPAMYUMi6QBPMmUig-KY7ylD8,10996
26
+ sp_api/api/external_fulfillment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
+ sp_api/api/external_fulfillment/external_fulfillment.py,sha256=6mXwCzcWhzMZmUK_ViG0jadXsB4Vpt3E9SdG-QMa4g4,28671
28
+ sp_api/api/fba_inbound_eligibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
+ sp_api/api/fba_inbound_eligibility/fba_inbound_eligibility.py,sha256=rwzr7OF69b9OuNiq8wd2yL62_aGKgP8dAhkibUSjFcA,4425
30
+ sp_api/api/fba_small_and_light/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
+ sp_api/api/fba_small_and_light/fba_small_and_light.py,sha256=L959fSutNR5fNE6CGG7Fi44FLPgMixOM4u_vSfrh0b4,8416
32
+ sp_api/api/feeds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
+ sp_api/api/feeds/feeds.py,sha256=O4rjPjDxE_65DOho1gA2Z7KAd4-tVSoh9Ln0AaeSwBM,10304
34
+ sp_api/api/finances/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
+ sp_api/api/finances/finances.py,sha256=FW4B3uPfZC8ak6-CraMC59AZp3vPw83eUSvT9KeNEgA,2661
36
+ sp_api/api/fulfillment_inbound/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
+ sp_api/api/fulfillment_inbound/fulfillment_inbound.py,sha256=eHiWm5DcA9b9-VhG8k6NdRcB7hZU9X9rdeZ2AUEDmNM,86420
38
+ sp_api/api/fulfillment_outbound/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
+ sp_api/api/fulfillment_outbound/fulfillment_outbound.py,sha256=2XW8ZSJPzWTi3Pn6ewV6L_e_mi8UtJq0xiUIZXeUeQw,28789
40
+ sp_api/api/inventories/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
+ sp_api/api/inventories/inventories.py,sha256=lK9U_QsKuSxgDcM9JCq6GP8EH9k9QK1ueai6gwJhAjk,4017
42
+ sp_api/api/listings_items/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
+ sp_api/api/listings_items/listings_items.py,sha256=IVeV95KI-G3gop6B3orRxJeVgcGqy7yczj1WMHzzGd0,11072
44
+ sp_api/api/listings_restrictions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
+ sp_api/api/listings_restrictions/listings_restrictions.py,sha256=6ByAcUJuGfsr3Ww71DtraNUxejMFChjYcnBL9Hg7BwM,1710
46
+ sp_api/api/merchant_fulfillment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
+ sp_api/api/merchant_fulfillment/merchant_fulfillment.py,sha256=AXAhRBhOlcNtdgZk8butZvaSXD4OJ37RsX94EtIDYB8,15363
48
+ sp_api/api/messaging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
+ sp_api/api/messaging/messaging.py,sha256=pb_LWzBiE6RRVR6NTT6AW0uoBsiPMaoE7TJ-ugeLnlE,18759
50
+ sp_api/api/notifications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
+ sp_api/api/notifications/notifications.py,sha256=VbMQcRHlrLuZqx252kDR9n0zX2FVcEUOO0rW-1QJ3Oc,10937
52
+ sp_api/api/orders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
+ sp_api/api/orders/orders.py,sha256=TIbhUVnrm1CE7Wobgz3uKmHBpynVmSKzQREshT5fpiw,13227
54
+ sp_api/api/product_fees/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
+ sp_api/api/product_fees/product_fees.py,sha256=QwIVQKpXLXrc1Z2yQ2miSMizQsvprHVmxvG9vM_5niM,6913
56
+ sp_api/api/product_type_definitions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
+ sp_api/api/product_type_definitions/product_type_definitions.py,sha256=sbQ4IurgxcXSJUTooX4KA8yu9e3EC0qq7Ax15T8lxcM,4472
58
+ sp_api/api/products/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
+ sp_api/api/products/products.py,sha256=xngNvsnILm011BT8HRM22XSqHzsX-iAuGqTUl0YCetE,16420
60
+ sp_api/api/products/products_definitions.py,sha256=bvnIrWmcR4ld_8YaqbwI18ht3B5V_NgClP4pzklF9Yg,341
61
+ sp_api/api/replenishment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
+ sp_api/api/replenishment/replenishment.py,sha256=ehaeQSClepIk3jp7vaHwgVrWljryk-C0WIFKcweeb_8,7506
63
+ sp_api/api/reports/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
64
+ sp_api/api/reports/reports.py,sha256=jQ67gX7MlK_bkOwv4QihrYR7BqbB2R1DBGWe5yrNxR4,18414
65
+ sp_api/api/sales/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
66
+ sp_api/api/sales/sales.py,sha256=pWptoS4vSBWypRdxFT5a4xyhcH3ZEew3pxep6Xh12yg,5775
67
+ sp_api/api/sellers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
+ sp_api/api/sellers/sellers.py,sha256=_tKEkBxZfeUxAAsHJIztq0PVADXg0s6Av3eatnsxtLQ,2275
69
+ sp_api/api/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
+ sp_api/api/services/services.py,sha256=09cJucV0zQsC8lRuQ5kJyG51t9ZkJ3HSYweKc1PoiG0,9242
71
+ sp_api/api/shipping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
+ sp_api/api/shipping/shipping.py,sha256=xIjmu9LqGvnsSD7dGuFH7KY0VykHV3vfyvvX27aoLew,14531
73
+ sp_api/api/shipping/shippingV2.py,sha256=EMxAo0R1WqlyPBUzdc4fZpn4Oy2X4YJlwbkKdI7vmj0,25015
74
+ sp_api/api/solicitations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
+ sp_api/api/solicitations/solicitations.py,sha256=gTPST51WtEhcSIUF-DTsFy2Ag8DBglwWI1Q2GFP9BIU,3934
76
+ sp_api/api/supply_sources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
+ sp_api/api/supply_sources/supply_sources.py,sha256=UpWpuyZac5of-hZ0WKjn9V4kIrFcNM-3MGmXjqjRj60,4544
78
+ sp_api/api/tokens/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
+ sp_api/api/tokens/tokens.py,sha256=UMuK3yBpXX0u5wUIEYJuOD7aH410gXy8pmFvBUMiK6M,3368
80
+ sp_api/api/upload/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
+ sp_api/api/upload/upload.py,sha256=fp-so8uvqMs1cKuR6C54dDijfCjPr0ozMa9hrUBmDkc,652
82
+ sp_api/api/vendor_direct_fulfillment_inventory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
83
+ sp_api/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py,sha256=jVWIVsFhF4_h08kdZGObb011gKJSJSB4m1qcymrr0DY,2359
84
+ sp_api/api/vendor_direct_fulfillment_orders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
+ sp_api/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py,sha256=Z28k0zBEbHA-NhzKkx7W_4NRy1IgJWb0C2ngUCGevpU,9454
86
+ sp_api/api/vendor_direct_fulfillment_payments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
+ sp_api/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py,sha256=OOMl4ddojBdyWVSPlQ4fmo0wH4cQ5_uJ_XkPD6_5WF4,10134
88
+ sp_api/api/vendor_direct_fulfillment_shipping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
+ sp_api/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py,sha256=PmmhA9QDd5r_QXkbH3POTGR7MDckgGqY2F26lpgxWpI,28808
90
+ sp_api/api/vendor_direct_fulfillment_transactions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
+ sp_api/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py,sha256=hxpiZfJYslQhZF8ak-zKxH2_91Dwef6l3APYNa1T1oQ,1726
92
+ sp_api/api/vendor_invoices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
93
+ sp_api/api/vendor_invoices/vendor_invoices.py,sha256=wFT5rwXVTxx9rZg1tQJALn6HKEyY34easU25KWq4Ois,11261
94
+ sp_api/api/vendor_orders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
95
+ sp_api/api/vendor_orders/vendor_orders.py,sha256=cA9QQjiwdlNEL0z8syuDovpahb2AAs6H9EGT2fyhbGw,13364
96
+ sp_api/api/vendor_shipments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
97
+ sp_api/api/vendor_shipments/vendor_shipments.py,sha256=EFzVetejcR3RLzH9iOMN_JFFXaIhPXi3cJ_4rNQf1JM,8678
98
+ sp_api/api/vendor_transaction_status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
99
+ sp_api/api/vendor_transaction_status/vendor_transaction_status.py,sha256=hHDA4NSaLxuNUBWNpV5_MfPgRSEm3t0A7Yl9MY6pULc,1690
100
+ sp_api/asyncio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
101
+ sp_api/asyncio/api/__init__.py,sha256=QTDz2g_fryNGkGszhytqhI8K3x_ttP7fbXLJ5uRvmj0,4747
102
+ sp_api/asyncio/api/amazon_warehousing_and_distribu/__init__.py,sha256=euZc6oTWMvMEOl-qcaVlS9QuQ5VC6FcUkF-tWYfbGAY,233
103
+ sp_api/asyncio/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py,sha256=LDYSQNjGuWdTbfH-9ApC8QY2iRph_wv_Fc6Jv5L2m8k,5947
104
+ sp_api/asyncio/api/aplus_content/__init__.py,sha256=JWgnKrh9Q6eUXogOMDl8ap5si-zjWoPzZGJ_TeJ5rSo,74
105
+ sp_api/asyncio/api/aplus_content/aplus_content.py,sha256=VDC5_9Hgj_5r5IcpqfF3KrwW1FS-jkdmDY7XEiOcziU,18701
106
+ sp_api/asyncio/api/application_integrations/__init__.py,sha256=mGwAQ9lcYC-T8osUGiBnwXCFtWg5WD7ZFEHvrit2ULI,107
107
+ sp_api/asyncio/api/application_integrations/application_integrations.py,sha256=cbcLnmesPuuLCbIQHl4d_oP5bc6z48xXUhI-D6eGrrs,6562
108
+ sp_api/asyncio/api/application_management/__init__.py,sha256=d9-YuAe0RRnvEBOk8j1DrU6qe5IoSZa8xZ4BFuvM5u0,101
109
+ sp_api/asyncio/api/application_management/application_management.py,sha256=5oahqYOcJ4rpqbpH-zT7WSfMuzyjc8ZXTwSNNOBmAfs,1941
110
+ sp_api/asyncio/api/authorization/__init__.py,sha256=nbpVTM18kXKaYV46t9IHQiQLv7bsQzJxZaZYOSomFcc,76
111
+ sp_api/asyncio/api/authorization/authorization.py,sha256=RglkTIDFL7FEWQGtejRmFC68wX389DW6jA685LWXkhY,2858
112
+ sp_api/asyncio/api/catalog/__init__.py,sha256=FSAPgs74vlFK6gtx2bfBR2bKcQmuUXHjXjQw9W904rM,58
113
+ sp_api/asyncio/api/catalog/catalog.py,sha256=R2H7iRBqooupOANAwYhZHDd20byXnoKgxHpGy1bpcVc,4000
114
+ sp_api/asyncio/api/catalog_items/__init__.py,sha256=nr2l6VzR1qJwzHt9CVelWLWoB-SxEaENcmC7EukZbNc,122
115
+ sp_api/asyncio/api/catalog_items/catalog_items.py,sha256=pGIIURMVuHvO9oJnKMuLAE_CdftE-rPWmKGX2GJw4fs,4692
116
+ sp_api/asyncio/api/clients/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
117
+ sp_api/asyncio/api/customer_feedback/__init__.py,sha256=Fk0oRP45N5GTbdK2ZF5J9vwVvjEQGOnT5rWW9mEOUMk,86
118
+ sp_api/asyncio/api/customer_feedback/customer_feedback.py,sha256=hdaPRFuWQwnGMfCo3sUsjKuSk3DtrwoBQ2_OtxMbkII,3691
119
+ sp_api/asyncio/api/data_kiosk/__init__.py,sha256=CEVFlAj9CdmH24DMqaf-Gv1BHef7cnI6xw2ne8kZllg,65
120
+ sp_api/asyncio/api/data_kiosk/data_kiosk.py,sha256=qzr7z4I3T2W8nUfKijHBHFmlyyoQGKvJjsDZBkWE5Uc,12314
121
+ sp_api/asyncio/api/easy_ship/__init__.py,sha256=pqA8wt8zxL3mGKCuaZQiH0xd8d7Cz53uHDA6mSvIz_c,62
122
+ sp_api/asyncio/api/easy_ship/easy_ship.py,sha256=c3d66x96aRZgf7wzhOIFBMA3V6yDJSW1PQBeutSGcJM,11105
123
+ sp_api/asyncio/api/external_fulfillment/__init__.py,sha256=NJ9c1Md5rOOrAEQb8Gb0NcX1dobbkk7RU8G0qADRfZU,95
124
+ sp_api/asyncio/api/external_fulfillment/external_fulfillment.py,sha256=sudg9PP_0iTx8-GfC-rQ2KmdNlNvwzyBRcjnUYfm8zA,28836
125
+ sp_api/asyncio/api/fba_inbound_eligibility/__init__.py,sha256=Hkb1LbzW2WF1MqzYgYIsi2xyBrGFUkdDnvNpNo2LrEs,102
126
+ sp_api/asyncio/api/fba_inbound_eligibility/fba_inbound_eligibility.py,sha256=zpMPPS1h-8KPDjePuUU8Sv4A59CfanLoMMoIejpp2p4,4493
127
+ sp_api/asyncio/api/fba_small_and_light/__init__.py,sha256=rw75XNOmQSIlpq1SFQ0cGaFwgXLWiqbcIZEipN8WnLA,88
128
+ sp_api/asyncio/api/fba_small_and_light/fba_small_and_light.py,sha256=rDEN6W4s7qNeq6jFghAENC-twtjjO6u992tfPECzl2M,8660
129
+ sp_api/asyncio/api/feeds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
130
+ sp_api/asyncio/api/feeds/feeds.py,sha256=JBpkI9fG8LUl1HMQQenyC5Lw9qetPEEFH1k_kjCCDDw,10411
131
+ sp_api/asyncio/api/finances/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
132
+ sp_api/asyncio/api/finances/finances.py,sha256=5-zomf92cnRK-LpA97XmFZeJz-GTbIoEnDbzybdGvtU,2778
133
+ sp_api/asyncio/api/fulfillment_inbound/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
134
+ sp_api/asyncio/api/fulfillment_inbound/fulfillment_inbound.py,sha256=WUiNQs5nlfPyJnACw1knVal773GPbRENT4vMxgNn1aQ,87167
135
+ sp_api/asyncio/api/fulfillment_outbound/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
136
+ sp_api/asyncio/api/fulfillment_outbound/fulfillment_outbound.py,sha256=qwokjv2IVNmAPHQl_n81eiMcHtn8BezoYpm4Jh3UMt4,28989
137
+ sp_api/asyncio/api/inventories/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
138
+ sp_api/asyncio/api/inventories/inventories.py,sha256=cNU6HhErPwZa8Etgx4QfuWsYJwCjjhls59YEM1ErUlI,4086
139
+ sp_api/asyncio/api/listings_items/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
140
+ sp_api/asyncio/api/listings_items/listings_items.py,sha256=N-zgbKgiTf-dcY1AqEYwLZfZphS97g1_KRwWwWjYSL0,11189
141
+ sp_api/asyncio/api/listings_restrictions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
142
+ sp_api/asyncio/api/listings_restrictions/listings_restrictions.py,sha256=nI9gRA7qMnWYsLKNM79RNdpig4xVXKoJWdpTmXKiioI,1778
143
+ sp_api/asyncio/api/merchant_fulfillment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
144
+ sp_api/asyncio/api/merchant_fulfillment/merchant_fulfillment.py,sha256=cJxKftswLjQbiGM2Fm9fIDn0FQOJ8Ew2NvfFKAHgRW8,15515
145
+ sp_api/asyncio/api/messaging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
146
+ sp_api/asyncio/api/messaging/messaging.py,sha256=_vGUXO9yON0gp_e392YCQyAXND31AgUHhoW-_9fKhg0,18971
147
+ sp_api/asyncio/api/models/__init__.py,sha256=uHFaIn5OjyNVh8VXOqzqnC0ehTmd6fp_SRtsRP4J9e8,130
148
+ sp_api/asyncio/api/notifications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
149
+ sp_api/asyncio/api/notifications/notifications.py,sha256=xjg6nQ3Jgvk82TAovreQTneGocXKcY-Jk6flXrz0GhQ,11083
150
+ sp_api/asyncio/api/orders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
151
+ sp_api/asyncio/api/orders/orders.py,sha256=IKns8nkkaYYSekquS6F_JAcLEGboecSXRWUqb0YBp7w,13358
152
+ sp_api/asyncio/api/overrides/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
153
+ sp_api/asyncio/api/product_fees/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
154
+ sp_api/asyncio/api/product_fees/product_fees.py,sha256=9GIQuoz37_QDmKnCe9wdjyqAhX5-z1n_AaTdvVyt_N8,6998
155
+ sp_api/asyncio/api/product_type_definitions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
156
+ sp_api/asyncio/api/product_type_definitions/product_type_definitions.py,sha256=ncXLOEHo62bj4GWuMFEKe3IOv0F5i-VnaGsVA6EWK_Q,4552
157
+ sp_api/asyncio/api/products/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
158
+ sp_api/asyncio/api/products/products.py,sha256=6bDiSvhzio0do2yRnMppUB7c5FbmRDy2suhcquctDK0,16585
159
+ sp_api/asyncio/api/products/products_definitions.py,sha256=bvnIrWmcR4ld_8YaqbwI18ht3B5V_NgClP4pzklF9Yg,341
160
+ sp_api/asyncio/api/replenishment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
+ sp_api/asyncio/api/replenishment/replenishment.py,sha256=wFhkCmRKcyY3CCHiIacGrQUfZAKozIupgNMS_CvS-Wk,7598
162
+ sp_api/asyncio/api/reports/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
163
+ sp_api/asyncio/api/reports/reports.py,sha256=_WXLk-W1JV_mKcYNFyU2bSdOQN3i3dorW1PAo3yneKs,18523
164
+ sp_api/asyncio/api/sales/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
165
+ sp_api/asyncio/api/sales/sales.py,sha256=X36QTCMtRmxN8emhMScTCLbpISVrSOo8vrw8jCbpUIY,5844
166
+ sp_api/asyncio/api/sellers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
167
+ sp_api/asyncio/api/sellers/sellers.py,sha256=T-jhus0vE9mRfYliI_iM4xGOs3vgj5KNPbJ_vxDTB10,2355
168
+ sp_api/asyncio/api/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
169
+ sp_api/asyncio/api/services/services.py,sha256=JBczt_9VBwMKPyZrxrAnYK7s3nx3lRX-9Zv1ZgSFmng,9370
170
+ sp_api/asyncio/api/shipping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
171
+ sp_api/asyncio/api/shipping/shipping.py,sha256=t2Rz94ITsAngpwjHshBp5BTKkeHLvqvnkwEqIUHDs2Y,14695
172
+ sp_api/asyncio/api/shipping/shippingV2.py,sha256=iHU6pVxE7c5P1vnfsbHq8Y-y2wlFOn5llwvItahfgAg,24979
173
+ sp_api/asyncio/api/solicitations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
174
+ sp_api/asyncio/api/solicitations/solicitations.py,sha256=4m1E2Ncx1I8ksrsLmL2G0gPMzl0ud9ZG3H7TDqtgB1s,4014
175
+ sp_api/asyncio/api/supply_sources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
176
+ sp_api/asyncio/api/supply_sources/supply_sources.py,sha256=kCWfFmfrdW-6AmXTmXqVCNz19vsa8piOYUXPkzg0Nwg,4672
177
+ sp_api/asyncio/api/tokens/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
178
+ sp_api/asyncio/api/tokens/tokens.py,sha256=bfhURf_YMIggJfTcU9GmF2Fa0w1g4ntablJu2xUas6w,3436
179
+ sp_api/asyncio/api/upload/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
180
+ sp_api/asyncio/api/upload/upload.py,sha256=_-8xOYX7pVnX15EJtZGcA5APQE2kXXUVLrhk8waSGOo,720
181
+ sp_api/asyncio/api/vendor_direct_fulfillment_inventory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
182
+ sp_api/asyncio/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py,sha256=wzcSqmrAvpNLdJ7dsTKLUTojkNezk6X3zRyped0QZqU,2427
183
+ sp_api/asyncio/api/vendor_direct_fulfillment_orders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
184
+ sp_api/asyncio/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py,sha256=eBTgFLY2aLr9hWW0G7kR7x7auMvNuJIHOdycLHnyGKs,9546
185
+ sp_api/asyncio/api/vendor_direct_fulfillment_payments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
186
+ sp_api/asyncio/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py,sha256=gpt-TyZoa1d7ESQgXyPpzj0Q37WifiTAINW543djS_c,10202
187
+ sp_api/asyncio/api/vendor_direct_fulfillment_shipping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
188
+ sp_api/asyncio/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py,sha256=L6skQEE-0mSox4soFNQKDQ_zzpRGKvjZroGC0wazDnw,28972
189
+ sp_api/asyncio/api/vendor_direct_fulfillment_transactions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
190
+ sp_api/asyncio/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py,sha256=bl_cXNd8VbT_bK5T0ljobBFX0fzPQtdJ-rVoMX2-Fdw,1794
191
+ sp_api/asyncio/api/vendor_invoices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
192
+ sp_api/asyncio/api/vendor_invoices/vendor_invoices.py,sha256=oAFzgM29_Uxt76Wyu0FCbMTNUdEVXXBUFh8xn1MjKNc,11329
193
+ sp_api/asyncio/api/vendor_orders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
194
+ sp_api/asyncio/api/vendor_orders/vendor_orders.py,sha256=Dj9taJEzyzKuhC7Sg3D-MX0b6xSHzTi8Ri3sO4JxjA4,13468
195
+ sp_api/asyncio/api/vendor_shipments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
196
+ sp_api/asyncio/api/vendor_shipments/vendor_shipments.py,sha256=H7_pn5lQpiSRb1tkgamcMXgqPMFCccsXi-yKCQjXuvI,8770
197
+ sp_api/asyncio/api/vendor_transaction_status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
198
+ sp_api/asyncio/api/vendor_transaction_status/vendor_transaction_status.py,sha256=ADHNOLz-omqhkQM8_i-C02UC4DJJY4as0nqQ5o6kySw,1758
199
+ sp_api/asyncio/auth/__init__.py,sha256=Lz5CvJjuI8DBBSWStnzODzIt4ClLk_NXMp2Ow9DcL9o,332
200
+ sp_api/asyncio/auth/access_token_client.py,sha256=Jluz_ld1B9MpzmzkFhtS-oK81tuKoctZd2G6vVi7w3E,5123
201
+ sp_api/asyncio/auth/exceptions.py,sha256=dca0HDqrvkZvZOpWtlZrW5RsARtRRxZdKqdlT9otbmQ,95
202
+ sp_api/asyncio/base/__init__.py,sha256=NzhwCKcCYPI6rOz-ognIobwrkOvtpIQ7uqMlpBaNqww,1130
203
+ sp_api/asyncio/base/_transport_httpx.py,sha256=AcCcgt_eJbBooPPUolHQEeJZe7JO4WPlqChD9zXChTI,1184
204
+ sp_api/asyncio/base/base_client.py,sha256=uQEIgDexDlUPCTFuZucEsIxktBlZDmsSw4LUvNrVPxo,223
205
+ sp_api/asyncio/base/client.py,sha256=yeSZ0IzO_UC2NfG1D41m8LGOrX4V_Fupu-9x2T0CSRE,5631
206
+ sp_api/asyncio/util/__init__.py,sha256=f-3ITOn0vjT1dpj9frFjxKSUdazZ9mfPAyj-auwCYjU,696
207
+ sp_api/asyncio/util/key_maker.py,sha256=oP4aMPbtKo4ACgJQHJUKZrCk68tcVGXb84bOI9T7SKI,74
208
+ sp_api/asyncio/util/load_all_pages.py,sha256=vd4RZ2iWEB5eRBu0eMenAyPX9R45bgWHJmixFSIrWTE,1871
209
+ sp_api/asyncio/util/load_date_bound.py,sha256=gbXafCQBHzJ2oHtOWB1J23iYfjCS4n2-1pt3fYq7ROk,1738
210
+ sp_api/asyncio/util/retry.py,sha256=eYzgWWLdMa-X2PY6rpMzdrUa6yF_dTOIaCXtdbtQn9k,2436
211
+ sp_api/auth/__init__.py,sha256=gb6opFLhOc3wL3lt7iS879P_ljflMepaFYEkqdlD_GQ,229
212
+ sp_api/auth/_core.py,sha256=X705VSBcENOodK4-IyDfxmuy8TpAXnxNxQhTQmRk6I4,1100
213
+ sp_api/auth/access_token_client.py,sha256=t9SpU4n7q6Iso4CuBhlaL2YICJdSMptW90ZZZc_19nk,4358
214
+ sp_api/auth/access_token_response.py,sha256=_0UUopFHGNWHFwyeerCYWEDI61FRysDfSRb5JefCEuw,275
215
+ sp_api/auth/credentials.py,sha256=OndGKpAOupU6F6CmvOYNlK7uqgXia4DdHhW-u3IRKCk,262
216
+ sp_api/auth/exceptions.py,sha256=JCY74CZbxqSQ09huA1r_Z5kuD1k0O_sjD7sHhJI0aIk,424
217
+ sp_api/base/ApiResponse.py,sha256=jcxfWXYVb8LZKokQF_R-ZvVhBSFcE8tyJufUh5i6Jcc,2287
218
+ sp_api/base/InventoryEnums.py,sha256=IQJ9AhcKpXadO4qP5i76kzHfP2EWQ-KTaZdR6MoOFjI,95
219
+ sp_api/base/__init__.py,sha256=IaBNIYLWsgvCKAfbMXLVPZdo2Wkw5ZdUhH8vxFfj0wc,2617
220
+ sp_api/base/_core.py,sha256=dDd9Hp8AI2fUKfXLgz_3iKhb9OWYcR-whjUW73xyNkc,2907
221
+ sp_api/base/_transport_httpx.py,sha256=euO7zkSdIwoNBaDKQmU-yFoZUVy-vh50vrJEMXWxlvI,1026
222
+ sp_api/base/base_client.py,sha256=uQEIgDexDlUPCTFuZucEsIxktBlZDmsSw4LUvNrVPxo,223
223
+ sp_api/base/client.py,sha256=V91mv7HxBkqX5g0aYjj-Swq0CA-izhLXfmGi02keOL0,6678
224
+ sp_api/base/credential_provider.py,sha256=PbhHsVXGw0abdmHNSk5UiEy3cn5cf7AQttnelSYOofY,5972
225
+ sp_api/base/exceptions.py,sha256=gniV45duxHdD_TWsN9023SObVpPLwMtBzkXlKQrWvYo,4001
226
+ sp_api/base/feedTypes.py,sha256=9iI64uXULqUbVLVANftzltFmpFRgtgSDsARTMQ28jvo,2479
227
+ sp_api/base/fulfillment_channel.py,sha256=x-0DnVC1U_6GdeYViGQxM7Ree48HKBSXR2x8y33MuO4,93
228
+ sp_api/base/helpers.py,sha256=H38w9T_QWAyUzLsBAQWRhC5Q0CysdWuus1xrwp-ISqc,2518
229
+ sp_api/base/identifiersType.py,sha256=3jBIeSlXDaV7Ikc8k9p67m4T7rJYfkevdGW3ZOdAScQ,562
230
+ sp_api/base/included_data.py,sha256=WccyLjgeiUTApIu6UFOsn0-o_SjfnBF1r-3zj7EQ7Ag,2977
231
+ sp_api/base/inegibility_reasons.py,sha256=vyQ8buMNwXUeV2cp7kZxtzbBkflqaMxuND_LlUtY2hA,9349
232
+ sp_api/base/marketplaces.py,sha256=H96HaIrnpAVcFCJF9LYEA_U0nuSHhVw1v-exzVbmxnQ,4258
233
+ sp_api/base/notifications.py,sha256=yAajFMCPAYzuuc1VaVNp1Jt71M_KR1PiSoq92TvHwxE,5448
234
+ sp_api/base/processing_status.py,sha256=V6YVoAE1pO3vrusDz0Sahc-DqgJqeNDuIaJIduXuDb4,183
235
+ sp_api/base/reportTypes.py,sha256=26ZjqGlaSD6s3DDHlicvscuh6z7NBw9qQWSE5nVHhNQ,10395
236
+ sp_api/base/report_status.py,sha256=mHPPFvK2xpfucCl6Vk87BHFJO8FB1x0Ej-h3fQFOetE,179
237
+ sp_api/base/sales_enum.py,sha256=O08knipDvuPEBYPM3kYEofl7t6uGZ-nJrn0L9q3CX9w,395
238
+ sp_api/base/schedules.py,sha256=WX0tYSAK4kI-ceBqeE_cY2_MaKC2usEgV2FDqujioqI,433
239
+ sp_api/util/__init__.py,sha256=_Kl02VHEvLih6A4LwUhYvv_qh5AK5uPsNtmkeKxVLtk,1332
240
+ sp_api/util/key_maker.py,sha256=T4I2rdBZzvWtX32qgrv9DA5EzVK3LEAWtbRffup-_kE,2172
241
+ sp_api/util/load_all_pages.py,sha256=K6Suml4_GWZ5L9-YcnhaM9q-dA7Xr6wNLE-kWP_8MPk,1839
242
+ sp_api/util/load_date_bound.py,sha256=j9gu9WucENqU9xaQ-xG7c4yK4RB-FXK39_r1mLT76z0,1726
243
+ sp_api/util/params.py,sha256=wXM5LgwB0EjA2T5guVjsdZUXHaXwB401cbXzH6B_GOE,1526
244
+ sp_api/util/product_fees.py,sha256=uvTct-armJYwkRsDn_2PBNOAD2H3_mfc8NqkFpjXzi4,1118
245
+ sp_api/util/products_definitions.py,sha256=TVO1L-vjyzSmL54Xfa0m3K6rVUFaTNsYBjeGnLpscDI,5061
246
+ sp_api/util/report_document.py,sha256=_LxuIJDIb6DTvzobY4qdlQ78ibZi6rwQ1dDK3FMxegs,4682
247
+ sp_api/util/retry.py,sha256=V8SeSeX3Brdou138hNA5HeQkKlHppZcqbZobIDjmBYw,2407
248
+ python_amazon_sp_api-2.0.7.dist-info/METADATA,sha256=cCwizrFOz0V2JCtHcXXCc2bJW03Sw9sjwil4iu9SQUo,6968
249
+ python_amazon_sp_api-2.0.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
250
+ python_amazon_sp_api-2.0.7.dist-info/top_level.txt,sha256=mEzPMFyyy0LmJGY4KFXfh5usUka4eeouIr7-2IAzoE0,7
251
+ python_amazon_sp_api-2.0.7.dist-info/RECORD,,
sp_api/__version__.py CHANGED
@@ -1 +1 @@
1
- __version__ = '1.9.34'
1
+ __version__ = '2.0.7'
sp_api/api/__init__.py CHANGED
@@ -26,7 +26,7 @@ from .application_integrations.application_integrations import ApplicationIntegr
26
26
 
27
27
  from .easy_ship.easy_ship import EasyShip
28
28
 
29
-
29
+ from .customer_feedback.customer_feedback import CustomerFeedback
30
30
 
31
31
  from .listings_restrictions.listings_restrictions import ListingsRestrictions
32
32
 
@@ -97,6 +97,8 @@ from .amazon_warehousing_and_distribu.amazon_warehousing_and_distribu import (
97
97
  AmazonWarehousingAndDistributionVersion,
98
98
  )
99
99
 
100
+ from .external_fulfillment.external_fulfillment import ExternalFulfillment
101
+
100
102
  __all__ = [
101
103
  "Sales",
102
104
  "Products",
@@ -115,8 +117,9 @@ __all__ = [
115
117
  "FulfillmentInbound",
116
118
  "MerchantFulfillment",
117
119
  ##### DO NOT DELETE ########## INSERT TITLE HERE #######
120
+ "ExternalFulfillment",
118
121
  "ApplicationIntegrations",
119
-
122
+ "CustomerFeedback",
120
123
  "FulfillmentInbound",
121
124
 
122
125
  "EasyShip",
@@ -42,7 +42,7 @@ class ApplicationIntegrations(Client):
42
42
  ApiResponse:
43
43
  """
44
44
 
45
- return self._request(kwargs.pop('path'), data=kwargs)
45
+ return self._request(kwargs.pop('path'), data=kwargs)
46
46
 
47
47
 
48
48
  @sp_endpoint('/appIntegrations/2024-04-01/notifications/deletion', method='POST')
@@ -78,7 +78,7 @@ class ApplicationIntegrations(Client):
78
78
  ApiResponse:
79
79
  """
80
80
 
81
- return self._request(kwargs.pop('path'), data=kwargs)
81
+ return self._request(kwargs.pop('path'), data=kwargs)
82
82
 
83
83
 
84
84
  @sp_endpoint('/appIntegrations/2024-04-01/notifications/{}/feedback', method='POST')
@@ -1,6 +1,7 @@
1
1
  import urllib.parse
2
2
 
3
3
  from sp_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
4
+ from sp_api.util import encode_kwarg
4
5
 
5
6
 
6
7
  class Catalog(Client):
@@ -75,8 +76,7 @@ class Catalog(Client):
75
76
  Returns:
76
77
  ListCatalogItemsResponse:
77
78
  """
78
- if "Query" in kwargs:
79
- kwargs.update({"Query": urllib.parse.quote_plus(kwargs.pop("Query"))})
79
+ encode_kwarg(kwargs, "Query", urllib.parse.quote_plus)
80
80
  return self._request(kwargs.pop("path"), params=kwargs)
81
81
 
82
82
  @sp_endpoint("/catalog/v0/categories")
@@ -104,6 +104,5 @@ class Catalog(Client):
104
104
  Returns:
105
105
  ListCatalogCategoriesResponse:
106
106
  """
107
- if "Query" in kwargs:
108
- kwargs.update({"Query": urllib.parse.quote_plus(kwargs.pop("Query"))})
107
+ encode_kwarg(kwargs, "Query", urllib.parse.quote_plus)
109
108
  return self._request(kwargs.pop("path"), params=kwargs)
@@ -1,6 +1,7 @@
1
1
  import enum
2
2
 
3
3
  from sp_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
4
+ from sp_api.util import normalize_included_data
4
5
 
5
6
 
6
7
  class CatalogItemsVersion(str, enum.Enum):
@@ -56,9 +57,7 @@ class CatalogItems(Client):
56
57
  ApiResponse:
57
58
  """
58
59
 
59
- includedData = kwargs.get("includedData", [])
60
- if includedData and isinstance(includedData, list):
61
- kwargs["includedData"] = ",".join(includedData)
60
+ normalize_included_data(kwargs)
62
61
  return self._request(kwargs.pop("path"), params=kwargs)
63
62
 
64
63
  @sp_endpoint("/catalog/<version>/items/{}", method="GET")
@@ -87,7 +86,5 @@ class CatalogItems(Client):
87
86
  ApiResponse:
88
87
  """
89
88
 
90
- includedData = kwargs.get("includedData", [])
91
- if includedData and isinstance(includedData, list):
92
- kwargs["includedData"] = ",".join(includedData)
89
+ normalize_included_data(kwargs)
93
90
  return self._request(fill_query_params(kwargs.pop("path"), asin), params=kwargs)
@@ -0,0 +1,110 @@
1
+ from sp_api.base import Client, sp_endpoint, ApiResponse, fill_query_params
2
+
3
+
4
+ class CustomerFeedback(Client):
5
+ """
6
+ The Selling Partner API for CustomerFeedback - 2024-06-01
7
+
8
+ The Selling Partner API for Customer Feedback (Customer Feedback API) provides information about customer reviews and returns at both the item and browse node level.
9
+ """
10
+
11
+ @sp_endpoint(
12
+ "/customerFeedback/2024-06-01/items/{}/reviews/topics", method="GET"
13
+ )
14
+ def get_item_review_topics(
15
+ self, asin, *args, **kwargs
16
+ ) -> ApiResponse:
17
+ """
18
+ Retrieve an item's ten most positive and ten most negative review topics.
19
+ """
20
+
21
+ return self._request(
22
+ fill_query_params(kwargs.pop('path'), asin), params=kwargs
23
+ )
24
+
25
+ @sp_endpoint("/customerFeedback/2024-06-01/items/{}/browseNode", method="GET")
26
+ def get_item_browse_node(self, asin, *args, **kwargs) -> ApiResponse:
27
+ """
28
+ This API returns the associated browse node of the requested ASIN. A browse node is a location in a browse tree that is used for navigation, product classification, and website content on the Amazon retail website.
29
+ """
30
+
31
+ return self._request(
32
+ fill_query_params(kwargs.pop('path'), asin), params=kwargs
33
+ )
34
+
35
+
36
+ @sp_endpoint(
37
+ "/customerFeedback/2024-06-01/browseNodes/{}/reviews/topics",
38
+ method="GET",
39
+ )
40
+ def get_browse_node_review_topics(
41
+ self, browseNodeId, *args, **kwargs
42
+ ) -> ApiResponse:
43
+ """
44
+ Retrieve a browse node's ten most positive and ten most negative review topics.
45
+ """
46
+
47
+ return self._request(
48
+ fill_query_params(kwargs.pop('path'), browseNodeId), params=kwargs
49
+ )
50
+
51
+
52
+ @sp_endpoint(
53
+ "/customerFeedback/2024-06-01/items/{}/reviews/trends", method="GET"
54
+ )
55
+ def get_item_review_trends(
56
+ self, asin, *args, **kwargs
57
+ ) -> ApiResponse:
58
+ """
59
+ Retrieve an item's positive and negative review trends for the past six months.
60
+ """
61
+
62
+ return self._request(
63
+ fill_query_params(kwargs.pop('path'), asin), params=kwargs
64
+ )
65
+
66
+
67
+ @sp_endpoint(
68
+ "/customerFeedback/2024-06-01/browseNodes/{}/reviews/trends",
69
+ method="GET",
70
+ )
71
+ def get_browse_node_review_trends(
72
+ self, browseNodeId, *args, **kwargs
73
+ ) -> ApiResponse:
74
+ """
75
+ Retrieve the positive and negative review trends of items in a browse node for the past six months.
76
+ """
77
+
78
+ return self._request(
79
+ fill_query_params(kwargs.pop('path'), browseNodeId), params=kwargs
80
+ )
81
+
82
+ @sp_endpoint(
83
+ "/customerFeedback/2024-06-01/browseNodes/{}/returns/topics",
84
+ method="GET",
85
+ )
86
+ def get_browse_node_return_topics(
87
+ self, browseNodeId, *args, **kwargs
88
+ ) -> ApiResponse:
89
+ """
90
+ Retrieve the topics that customers mention when they return items in a browse node.
91
+ """
92
+
93
+ return self._request(
94
+ fill_query_params(kwargs.pop('path'), browseNodeId), params=kwargs
95
+ )
96
+
97
+ @sp_endpoint(
98
+ "/customerFeedback/2024-06-01/browseNodes/{}/returns/trends",
99
+ method="GET",
100
+ )
101
+ def get_browse_node_return_trends(
102
+ self, browseNodeId, *args, **kwargs
103
+ ) -> ApiResponse:
104
+ """
105
+ Retrieve the trends of topics that customers mention when they return items in a browse node.
106
+ """
107
+
108
+ return self._request(
109
+ fill_query_params(kwargs.pop('path'), browseNodeId), params=kwargs
110
+ )
@@ -1,3 +1,4 @@
1
+ import httpx
1
2
  import urllib.parse
2
3
  from io import BytesIO, StringIO
3
4
  from typing import Union, BinaryIO, TextIO
@@ -190,14 +191,12 @@ class DataKiosk(Client):
190
191
  add_marketplace=False,
191
192
  )
192
193
  if download or file or ("decrypt" in kwargs and kwargs["decrypt"]):
193
- import requests
194
-
195
- document_response = requests.get(
196
- res.payload.get("documentUrl"),
194
+ with httpx.Client(
197
195
  proxies=self.proxies,
198
196
  verify=self.verify,
199
- )
200
- document = document_response.content
197
+ ) as client:
198
+ document_response = client.get(res.payload.get("documentUrl"))
199
+ document = document_response.content
201
200
  if download:
202
201
  res.payload.update(
203
202
  {