python-amazon-sp-api 2.0.15__py3-none-any.whl → 2.1.3__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 (214) hide show
  1. {python_amazon_sp_api-2.0.15.dist-info → python_amazon_sp_api-2.1.3.dist-info}/METADATA +7 -7
  2. python_amazon_sp_api-2.1.3.dist-info/RECORD +350 -0
  3. sp_api/__version__.py +1 -1
  4. sp_api/api/__init__.py +160 -4
  5. sp_api/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py +85 -110
  6. sp_api/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu_2024_05_09.py +456 -0
  7. sp_api/api/aplus_content/aplus_content.py +176 -125
  8. sp_api/api/application_integrations/application_integrations.py +59 -68
  9. sp_api/api/application_management/application_management.py +20 -13
  10. sp_api/api/authorization/authorization.py +8 -26
  11. sp_api/api/catalog/catalog.py +27 -61
  12. sp_api/api/catalog_items/catalog_items.py +108 -78
  13. sp_api/api/catalog_items/catalog_items_2020_12_01.py +86 -0
  14. sp_api/api/catalog_items/catalog_items_2022_04_01.py +89 -0
  15. sp_api/api/customer_feedback/customer_feedback.py +100 -0
  16. sp_api/api/data_kiosk/data_kiosk.py +80 -75
  17. sp_api/api/delivery_by_amazon/__init__.py +0 -0
  18. sp_api/api/delivery_by_amazon/delivery_by_amazon.py +92 -0
  19. sp_api/api/delivery_by_amazon/delivery_by_amazon_2022_07_01.py +81 -0
  20. sp_api/api/easy_ship/easy_ship.py +121 -111
  21. sp_api/api/external_fulfillment/external_fulfillment.py +211 -434
  22. sp_api/api/external_fulfillment/inventory.py +120 -0
  23. sp_api/api/external_fulfillment/inventory_2021_01_06.py +71 -0
  24. sp_api/api/external_fulfillment/inventory_2024_09_11.py +96 -0
  25. sp_api/api/external_fulfillment/returns.py +120 -0
  26. sp_api/api/external_fulfillment/returns_2021_08_19.py +88 -0
  27. sp_api/api/external_fulfillment/returns_2024_09_11.py +141 -0
  28. sp_api/api/external_fulfillment/shipping.py +120 -0
  29. sp_api/api/external_fulfillment/shipping_2021_01_06.py +256 -0
  30. sp_api/api/external_fulfillment/shipping_2024_09_11.py +233 -0
  31. sp_api/api/fba_inbound_eligibility/fba_inbound_eligibility.py +30 -24
  32. sp_api/api/fba_small_and_light/fba_small_and_light.py +60 -99
  33. sp_api/api/feeds/feeds.py +75 -245
  34. sp_api/api/feeds/feeds_2021_06_30.py +320 -0
  35. sp_api/api/finances/finances.py +123 -90
  36. sp_api/api/finances/finances_2024_06_01.py +71 -0
  37. sp_api/api/finances/finances_2024_06_19.py +114 -0
  38. sp_api/api/finances/finances_v0.py +116 -0
  39. sp_api/api/fulfillment_inbound/fulfillment_inbound.py +107 -1784
  40. sp_api/api/fulfillment_inbound/fulfillment_inbound_2024_03_20.py +1722 -0
  41. sp_api/api/fulfillment_inbound/fulfillment_inbound_v0.py +1384 -0
  42. sp_api/api/fulfillment_outbound/fulfillment_outbound.py +256 -480
  43. sp_api/api/inventories/inventories.py +79 -42
  44. sp_api/api/invoices/__init__.py +0 -0
  45. sp_api/api/invoices/invoices.py +92 -0
  46. sp_api/api/invoices/invoices_2024_06_19.py +344 -0
  47. sp_api/api/listings_items/listings_items.py +110 -163
  48. sp_api/api/listings_items/listings_items_2020_09_01.py +189 -0
  49. sp_api/api/listings_items/listings_items_2021_08_01.py +233 -0
  50. sp_api/api/listings_restrictions/listings_restrictions.py +23 -10
  51. sp_api/api/merchant_fulfillment/merchant_fulfillment.py +107 -222
  52. sp_api/api/messaging/messaging.py +184 -198
  53. sp_api/api/notifications/notifications.py +144 -106
  54. sp_api/api/orders/orders.py +9 -46
  55. sp_api/api/orders/orders_2026_01_01.py +19 -65
  56. sp_api/api/orders/orders_v0.py +152 -184
  57. sp_api/api/product_fees/product_fees.py +101 -75
  58. sp_api/api/product_type_definitions/product_type_definitions.py +47 -36
  59. sp_api/api/products/products.py +94 -386
  60. sp_api/api/products/products_2022_05_01.py +96 -0
  61. sp_api/api/products/products_v0.py +389 -0
  62. sp_api/api/replenishment/replenishment.py +58 -69
  63. sp_api/api/reports/reports.py +124 -157
  64. sp_api/api/sales/sales.py +22 -39
  65. sp_api/api/seller_wallet/__init__.py +0 -0
  66. sp_api/api/seller_wallet/seller_wallet.py +92 -0
  67. sp_api/api/seller_wallet/seller_wallet_2024_03_01.py +300 -0
  68. sp_api/api/sellers/sellers.py +15 -35
  69. sp_api/api/services/services.py +479 -82
  70. sp_api/api/shipment_invoicing/__init__.py +0 -0
  71. sp_api/api/shipment_invoicing/shipment_invoicing.py +92 -0
  72. sp_api/api/shipment_invoicing/shipment_invoicing_v0.py +101 -0
  73. sp_api/api/shipping/shipping.py +94 -440
  74. sp_api/api/shipping/shippingV2.py +183 -474
  75. sp_api/api/shipping/shipping_v1.py +330 -0
  76. sp_api/api/shipping/shipping_v2.py +723 -0
  77. sp_api/api/solicitations/solicitations.py +28 -18
  78. sp_api/api/supply_sources/supply_sources.py +67 -57
  79. sp_api/api/tokens/tokens.py +14 -35
  80. sp_api/api/vehicles/__init__.py +0 -0
  81. sp_api/api/vehicles/vehicles.py +92 -0
  82. sp_api/api/vehicles/vehicles_2024_11_01.py +33 -0
  83. sp_api/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py +16 -29
  84. sp_api/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py +116 -189
  85. sp_api/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders_2021_12_28.py +114 -0
  86. sp_api/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders_v1.py +114 -0
  87. sp_api/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py +15 -225
  88. sp_api/api/vendor_direct_fulfillment_sandbox_test_data/__init__.py +0 -0
  89. sp_api/api/vendor_direct_fulfillment_sandbox_test_data/vendor_direct_fulfillment_sandbox_test_data.py +92 -0
  90. sp_api/api/vendor_direct_fulfillment_sandbox_test_data/vendor_direct_fulfillment_sandbox_test_data_2021_10_28.py +50 -0
  91. sp_api/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py +122 -624
  92. sp_api/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping_2021_12_28.py +390 -0
  93. sp_api/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping_v1.py +320 -0
  94. sp_api/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py +113 -29
  95. sp_api/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions_2021_12_28.py +47 -0
  96. sp_api/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions_v1.py +47 -0
  97. sp_api/api/vendor_invoices/vendor_invoices.py +15 -264
  98. sp_api/api/vendor_orders/vendor_orders.py +83 -131
  99. sp_api/api/vendor_shipments/vendor_shipments.py +149 -68
  100. sp_api/api/vendor_transaction_status/vendor_transaction_status.py +16 -11
  101. sp_api/asyncio/api/__init__.py +159 -4
  102. sp_api/asyncio/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py +84 -110
  103. sp_api/asyncio/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu_2024_05_09.py +457 -0
  104. sp_api/asyncio/api/aplus_content/aplus_content.py +176 -125
  105. sp_api/asyncio/api/application_integrations/application_integrations.py +59 -68
  106. sp_api/asyncio/api/application_management/application_management.py +20 -13
  107. sp_api/asyncio/api/authorization/authorization.py +8 -26
  108. sp_api/asyncio/api/catalog/catalog.py +27 -61
  109. sp_api/asyncio/api/catalog_items/catalog_items.py +94 -71
  110. sp_api/asyncio/api/catalog_items/catalog_items_2020_12_01.py +87 -0
  111. sp_api/asyncio/api/catalog_items/catalog_items_2022_04_01.py +90 -0
  112. sp_api/asyncio/api/customer_feedback/customer_feedback.py +100 -0
  113. sp_api/asyncio/api/data_kiosk/data_kiosk.py +80 -75
  114. sp_api/asyncio/api/delivery_by_amazon/__init__.py +0 -0
  115. sp_api/asyncio/api/delivery_by_amazon/delivery_by_amazon.py +92 -0
  116. sp_api/asyncio/api/delivery_by_amazon/delivery_by_amazon_2022_07_01.py +82 -0
  117. sp_api/asyncio/api/easy_ship/easy_ship.py +121 -111
  118. sp_api/asyncio/api/external_fulfillment/external_fulfillment.py +212 -435
  119. sp_api/asyncio/api/external_fulfillment/inventory.py +126 -0
  120. sp_api/asyncio/api/external_fulfillment/inventory_2021_01_06.py +73 -0
  121. sp_api/asyncio/api/external_fulfillment/inventory_2024_09_11.py +98 -0
  122. sp_api/asyncio/api/external_fulfillment/returns.py +124 -0
  123. sp_api/asyncio/api/external_fulfillment/returns_2021_08_19.py +90 -0
  124. sp_api/asyncio/api/external_fulfillment/returns_2024_09_11.py +143 -0
  125. sp_api/asyncio/api/external_fulfillment/shipping.py +124 -0
  126. sp_api/asyncio/api/external_fulfillment/shipping_2021_01_06.py +258 -0
  127. sp_api/asyncio/api/external_fulfillment/shipping_2024_09_11.py +235 -0
  128. sp_api/asyncio/api/fba_inbound_eligibility/fba_inbound_eligibility.py +31 -25
  129. sp_api/asyncio/api/fba_small_and_light/fba_small_and_light.py +61 -100
  130. sp_api/asyncio/api/feeds/feeds.py +75 -243
  131. sp_api/asyncio/api/feeds/feeds_2021_06_30.py +318 -0
  132. sp_api/asyncio/api/finances/finances.py +123 -91
  133. sp_api/asyncio/api/finances/finances_2024_06_01.py +72 -0
  134. sp_api/asyncio/api/finances/finances_2024_06_19.py +115 -0
  135. sp_api/asyncio/api/finances/finances_v0.py +117 -0
  136. sp_api/asyncio/api/fulfillment_inbound/fulfillment_inbound.py +107 -1785
  137. sp_api/asyncio/api/fulfillment_inbound/fulfillment_inbound_2024_03_20.py +1723 -0
  138. sp_api/asyncio/api/fulfillment_inbound/fulfillment_inbound_v0.py +1385 -0
  139. sp_api/asyncio/api/fulfillment_outbound/fulfillment_outbound.py +257 -481
  140. sp_api/asyncio/api/inventories/inventories.py +79 -42
  141. sp_api/asyncio/api/invoices/__init__.py +0 -0
  142. sp_api/asyncio/api/invoices/invoices.py +92 -0
  143. sp_api/asyncio/api/invoices/invoices_2024_06_19.py +345 -0
  144. sp_api/asyncio/api/listings_items/listings_items.py +109 -163
  145. sp_api/asyncio/api/listings_items/listings_items_2020_09_01.py +190 -0
  146. sp_api/asyncio/api/listings_items/listings_items_2021_08_01.py +233 -0
  147. sp_api/asyncio/api/listings_restrictions/listings_restrictions.py +23 -10
  148. sp_api/asyncio/api/merchant_fulfillment/merchant_fulfillment.py +110 -222
  149. sp_api/asyncio/api/messaging/messaging.py +185 -199
  150. sp_api/asyncio/api/notifications/notifications.py +145 -107
  151. sp_api/asyncio/api/orders/orders.py +9 -46
  152. sp_api/asyncio/api/orders/orders_2026_01_01.py +19 -65
  153. sp_api/asyncio/api/orders/orders_v0.py +152 -184
  154. sp_api/asyncio/api/product_fees/product_fees.py +101 -75
  155. sp_api/asyncio/api/product_type_definitions/product_type_definitions.py +47 -36
  156. sp_api/asyncio/api/products/products.py +94 -387
  157. sp_api/asyncio/api/products/products_2022_05_01.py +109 -0
  158. sp_api/asyncio/api/products/products_v0.py +388 -0
  159. sp_api/asyncio/api/replenishment/replenishment.py +59 -70
  160. sp_api/asyncio/api/reports/reports.py +124 -157
  161. sp_api/asyncio/api/sales/sales.py +22 -39
  162. sp_api/asyncio/api/seller_wallet/__init__.py +0 -0
  163. sp_api/asyncio/api/seller_wallet/seller_wallet.py +92 -0
  164. sp_api/asyncio/api/seller_wallet/seller_wallet_2024_03_01.py +301 -0
  165. sp_api/asyncio/api/sellers/sellers.py +16 -36
  166. sp_api/asyncio/api/services/services.py +479 -82
  167. sp_api/asyncio/api/shipment_invoicing/__init__.py +0 -0
  168. sp_api/asyncio/api/shipment_invoicing/shipment_invoicing.py +92 -0
  169. sp_api/asyncio/api/shipment_invoicing/shipment_invoicing_v0.py +102 -0
  170. sp_api/asyncio/api/shipping/shipping.py +94 -441
  171. sp_api/asyncio/api/shipping/shippingV2.py +181 -472
  172. sp_api/asyncio/api/shipping/shipping_v1.py +331 -0
  173. sp_api/asyncio/api/shipping/shipping_v2.py +717 -0
  174. sp_api/asyncio/api/solicitations/solicitations.py +29 -19
  175. sp_api/asyncio/api/supply_sources/supply_sources.py +67 -57
  176. sp_api/asyncio/api/tokens/tokens.py +14 -35
  177. sp_api/asyncio/api/vehicles/__init__.py +0 -0
  178. sp_api/asyncio/api/vehicles/vehicles.py +92 -0
  179. sp_api/asyncio/api/vehicles/vehicles_2024_11_01.py +34 -0
  180. sp_api/asyncio/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py +16 -29
  181. sp_api/asyncio/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py +120 -192
  182. sp_api/asyncio/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders_2021_12_28.py +116 -0
  183. sp_api/asyncio/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders_v1.py +115 -0
  184. sp_api/asyncio/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py +15 -225
  185. sp_api/asyncio/api/vendor_direct_fulfillment_sandbox_test_data/__init__.py +0 -0
  186. sp_api/asyncio/api/vendor_direct_fulfillment_sandbox_test_data/vendor_direct_fulfillment_sandbox_test_data.py +92 -0
  187. sp_api/asyncio/api/vendor_direct_fulfillment_sandbox_test_data/vendor_direct_fulfillment_sandbox_test_data_2021_10_28.py +51 -0
  188. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py +120 -623
  189. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping_2021_12_28.py +392 -0
  190. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping_v1.py +321 -0
  191. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py +112 -29
  192. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions_2021_12_28.py +49 -0
  193. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions_v1.py +48 -0
  194. sp_api/asyncio/api/vendor_invoices/vendor_invoices.py +16 -265
  195. sp_api/asyncio/api/vendor_orders/vendor_orders.py +84 -132
  196. sp_api/asyncio/api/vendor_shipments/vendor_shipments.py +150 -69
  197. sp_api/asyncio/api/vendor_transaction_status/vendor_transaction_status.py +17 -12
  198. sp_api/asyncio/base/client.py +2 -2
  199. sp_api/asyncio/util/load_date_bound.py +1 -1
  200. sp_api/base/__init__.py +10 -0
  201. sp_api/base/_core.py +2 -2
  202. sp_api/base/client.py +3 -3
  203. sp_api/base/helpers.py +12 -1
  204. sp_api/base/marketplaces.py +6 -3
  205. sp_api/util/__init__.py +2 -0
  206. sp_api/util/load_date_bound.py +1 -1
  207. sp_api/util/versioned_client.py +45 -0
  208. python_amazon_sp_api-2.0.15.dist-info/RECORD +0 -255
  209. sp_api/asyncio/api/models/__init__.py +0 -4
  210. sp_api/asyncio/api/overrides/__init__.py +0 -1
  211. {python_amazon_sp_api-2.0.15.data → python_amazon_sp_api-2.1.3.data}/scripts/make_endpoint +0 -0
  212. {python_amazon_sp_api-2.0.15.dist-info → python_amazon_sp_api-2.1.3.dist-info}/WHEEL +0 -0
  213. {python_amazon_sp_api-2.0.15.dist-info → python_amazon_sp_api-2.1.3.dist-info}/licenses/LICENSE +0 -0
  214. {python_amazon_sp_api-2.0.15.dist-info → python_amazon_sp_api-2.1.3.dist-info}/top_level.txt +0 -0
@@ -10,35 +10,35 @@ class ExternalFulfillment(AsyncBaseClient):
10
10
  :link:
11
11
 
12
12
  The Selling Partner API to work with Amazon External Fulfillment shipments management/processing services.
13
+
14
+ Deprecated: use ExternalFulfillmentInventory, ExternalFulfillmentReturns, and
15
+ ExternalFulfillmentShipping for versioned access. This facade remains for backward compatibility.
13
16
  """
14
17
 
15
18
  @sp_endpoint("/externalFulfillment/2024-09-11/shipments", method="GET")
16
19
  async def get_shipments(self, **kwargs) -> ApiResponse:
17
20
  """
18
21
  get_shipments(self, **kwargs) -> ApiResponse
19
-
20
- Get a list of shipments dropped for the seller in the specified status. Shipments can be further filtered based on the fulfillment node and/or shipments' last updated date and time.
21
-
22
- **Usage Plans:**
23
-
24
- ======================================
25
- Rate (requests per second)
26
- ======================================
27
- 5
28
- ======================================
29
-
30
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
31
-
22
+
23
+ Get a list of shipments created for the seller in the status you specify. Shipments can be further filtered based on the fulfillment node or the time of the shipments' last update.
24
+
25
+ Examples:
26
+ literal blocks::
27
+
28
+ await ExternalFulfillment().get_shipments()
29
+
32
30
  Args:
33
- key locationId:string | The SmartConnect location identifier for which shipments are to be retrieved
34
- key channelName:string | The channel name associated with the location. Valid values are FBA, MFN
35
- key status*:string | * REQUIRED Retrieves only those shipments which are in the specified status. The most common use-case would be to fetch all new shipments which would be in the ACCEPTED status. Valid values are ACCEPTED, CONFIRMED, PACKAGE_CREATED, PICKUP_SLOT_RETRIEVED, INVOICE_GENERATED, SHIPLABEL_GENERATED, SHIPPED, DELIVERED and CANCELLED.
36
- key lastUpdatedAfter:string | Shipments whose latest update is after the specified date/time are included in the response. This field should be in the ISO8601 date/time format.
37
- key lastUpdatedBefore:string | Shipments whose latest update is before the specified date/time are included in the response. This field should be in the ISO8601 date/time format.
38
- key maxResults:integer | Specify the number of shipments to be included in the response.
39
- key paginationToken:string | The nexToken value returned from a previous call to get shipments. Use this to retrieve the next page of shipments.
31
+ key locationId: object | The Amazon channel location identifier for the shipments you want to retrieve.
32
+ key marketplaceId: object | The marketplace ID associated with the location. To find the ID for your marketplace, refer to [Marketplace IDs](https://developer-docs.amazon.com/sp-api/docs/marketplace-ids).
33
+ key channelName: object | The channel name associated with the location.
34
+ key status: object | required The status of shipment you want to include in the response. To retrieve all new shipments, set this value to `ACCEPTED`.
35
+ key lastUpdatedAfter: object | The response includes shipments whose latest update is after the specified time. In [ISO 8601](https://developer-docs.amazon.com/sp-api/docs/iso-8601) date-time format.
36
+ key lastUpdatedBefore: object | The response includes shipments whose latest update is before the specified time. In [ISO 8601](https://developer-docs.amazon.com/sp-api/docs/iso-8601) date-time format.
37
+ key maxResults: object | The maximum number of shipments to include in the response.
38
+ key paginationToken: object | A token that you use to retrieve the next page of results. The response includes `nextToken` when there are multiple pages of results. To get the next page of results, call the operation with this token and include the same arguments as the call that produced the token. To get a complete list, call this operation until `nextToken` is null. Note that this operation can return empty pages.
39
+
40
40
  Returns:
41
- ApiResponse:
41
+ ApiResponse
42
42
  """
43
43
 
44
44
  return await self._request(kwargs.pop("path"), params=kwargs)
@@ -47,24 +47,19 @@ class ExternalFulfillment(AsyncBaseClient):
47
47
  async def get_shipment(self, shipmentId, **kwargs) -> ApiResponse:
48
48
  """
49
49
  get_shipment(self, shipmentId, **kwargs) -> ApiResponse
50
-
51
- Get a single shipment with the specified id.
52
-
53
- **Usage Plan:**
54
-
55
- ======================================
56
- Rate (requests per second)
57
- ======================================
58
- 5
59
- ======================================
60
-
61
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
62
-
50
+
51
+ Get a single shipment with the ID you specify.
52
+
53
+ Examples:
54
+ literal blocks::
55
+
56
+ await ExternalFulfillment().get_shipment("value")
57
+
63
58
  Args:
64
- shipmentId:string | * REQUIRED The id of the shipment to be retrieved.
65
-
59
+ shipmentId: object | required The ID of the shipment you want to retrieve.
60
+
66
61
  Returns:
67
- ApiResponse:
62
+ ApiResponse
68
63
  """
69
64
  return await self._request(
70
65
  fill_query_params(kwargs.pop("path"), shipmentId),
@@ -75,39 +70,22 @@ class ExternalFulfillment(AsyncBaseClient):
75
70
  @sp_endpoint("/externalFulfillment/shipments/2021-01-06/shipments/{}", method="POST")
76
71
  async def process_shipment(self, shipmentId, operation, **kwargs) -> ApiResponse:
77
72
  """
78
- process_shipment(self, shipmentId, **kwargs) -> ApiResponse
79
-
73
+ process_shipment(self, shipmentId, operation, **kwargs) -> ApiResponse
74
+
80
75
  Confirms/Rejects that a seller will be fulfilling or cancelling the specified shipment.
81
-
82
- **Usage Plan:**
83
-
84
- ======================================
85
- Rate (requests per second)
86
- ======================================
87
- 5
88
- ======================================
89
-
90
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
91
-
76
+
77
+ Examples:
78
+ literal blocks::
79
+
80
+ await ExternalFulfillment().process_shipment("value", "value")
81
+
92
82
  Args:
93
- shipmentId:string | * REQUIRED The id of the shipment which is to be confirmed for fulfillment.
94
- operation:string | * REQUIRED The status in which shipment should be moved. Valid values are CONFIRM and REJECT.
95
-
96
- body: {
97
- "referenceId": "string",
98
- "lineItems": [
99
- {
100
- "lineItem": {
101
- "id": "string",
102
- "quantity": 1
103
- },
104
- "reason": "OUT_OF_STOCK"
105
- }
106
- ]
107
- }
108
-
83
+ shipmentId: | required
84
+ operation: | required
85
+ **kwargs:
86
+
109
87
  Returns:
110
- ApiResponse:
88
+ ApiResponse
111
89
  """
112
90
  return await self._request(
113
91
  fill_query_params(kwargs.pop("path"), shipmentId),
@@ -121,60 +99,20 @@ class ExternalFulfillment(AsyncBaseClient):
121
99
  async def create_packages(self, shipmentId, **kwargs) -> ApiResponse:
122
100
  """
123
101
  create_packages(self, shipmentId, **kwargs) -> ApiResponse
124
-
102
+
125
103
  Provides details about the packages that will be used to fulfill the specified shipment.
126
-
127
- **Usage Plan:**
128
-
129
- ======================================
130
- Rate (requests per second)
131
- ======================================
132
- 5
133
- ======================================
134
-
135
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
136
-
104
+
105
+ Examples:
106
+ literal blocks::
107
+
108
+ await ExternalFulfillment().create_packages("value")
109
+
137
110
  Args:
138
- shipmentId:string | * REQUIRED The id of the shipment for which package information is being provided.
139
-
140
- body: {
141
- "packages": [
142
- {
143
- "id": "string",
144
- "dimensions": {
145
- "length": {
146
- "value": "string",
147
- "dimensionUnit": "CM"
148
- },
149
- "width": {
150
- "value": "string",
151
- "dimensionUnit": "CM"
152
- },
153
- "height": {
154
- "value": "string",
155
- "dimensionUnit": "CM"
156
- },
157
- },
158
- "weight": {
159
- "value": "string",
160
- "weightUnit": "kilograms"
161
- },
162
- "hazmatLabels": [],
163
- "packageLineItems": [
164
- {
165
- "packageLineItemId": "string",
166
- "quantity": 1,
167
- "serialNumbers": [],
168
- "pieces": 1,
169
- "countryOfOrigin": "ES"
170
- }
171
- ],
172
- "status": "CREATED"
173
- }
174
- ]
175
- }
111
+ shipmentId: | required
112
+ **kwargs:
113
+
176
114
  Returns:
177
- ApiResponse:
115
+ ApiResponse
178
116
  """
179
117
 
180
118
  return await self._request(
@@ -187,61 +125,21 @@ class ExternalFulfillment(AsyncBaseClient):
187
125
  async def update_package(self, shipmentId, packageId, **kwargs) -> ApiResponse:
188
126
  """
189
127
  update_package(self, shipmentId, packageId, **kwargs) -> ApiResponse
190
-
128
+
191
129
  Updates the details about the packages that will be used to fulfill the specified shipment.
192
-
193
- **Usage Plan:**
194
-
195
- ======================================
196
- Rate (requests per second)
197
- ======================================
198
- 5
199
- ======================================
200
-
201
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
202
-
130
+
131
+ Examples:
132
+ literal blocks::
133
+
134
+ await ExternalFulfillment().update_package("value", "value")
135
+
203
136
  Args:
204
- shipmentId:string | * REQUIRED The id of the shipment for which package information is being updated.
205
- packageId:string | * REQUIRED The id of the shipment for which package information is being updated.
206
-
207
- body: {
208
- "packages": [
209
- {
210
- "id": "string",
211
- "dimensions": {
212
- "length": {
213
- "value": "string",
214
- "dimensionUnit": "CM"
215
- },
216
- "width": {
217
- "value": "string",
218
- "dimensionUnit": "CM"
219
- },
220
- "height": {
221
- "value": "string",
222
- "dimensionUnit": "CM"
223
- },
224
- },
225
- "weight": {
226
- "value": "string",
227
- "weightUnit": "kilograms"
228
- },
229
- "hazmatLabels": [],
230
- "packageLineItems": [
231
- {
232
- "packageLineItemId": "string",
233
- "quantity": 1,
234
- "serialNumbers": [],
235
- "pieces": 1,
236
- "countryOfOrigin": "ES"
237
- }
238
- ],
239
- "status": "SHIPPED"
240
- }
241
- ]
242
- }
137
+ shipmentId: | required
138
+ packageId: | required
139
+ **kwargs:
140
+
243
141
  Returns:
244
- ApiResponse:
142
+ ApiResponse
245
143
  """
246
144
 
247
145
  return await self._request(
@@ -253,33 +151,22 @@ class ExternalFulfillment(AsyncBaseClient):
253
151
  @sp_endpoint("/externalFulfillment/shipments/2021-01-06/shipments/{}/packages/{}", method="PATCH")
254
152
  async def update_package_status(self, shipmentId, packageId, **kwargs) -> ApiResponse:
255
153
  """
256
- update_package_status(self, shipmentId, **kwargs) -> ApiResponse
257
-
154
+ update_package_status(self, shipmentId, packageId, **kwargs) -> ApiResponse
155
+
258
156
  Updates the status of the packages.
259
-
260
- **Usage Plan:**
261
-
262
- ======================================
263
- Rate (requests per second)
264
- ======================================
265
- 5
266
- ======================================
267
-
268
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
269
-
157
+
158
+ Examples:
159
+ literal blocks::
160
+
161
+ await ExternalFulfillment().update_package_status("value", "value")
162
+
270
163
  Args:
271
- shipmentId:string | * REQUIRED The id of the shipment for which package information is being updated.
272
- packageId:string | * REQUIRED The id of the shipment for which package information is being updated.
273
- key status:string | * REQUIRED This field is deprecated. All the package status details should be defined in the body parameter.
274
-
275
- body: {
276
- "status": "SHIPPED",
277
- "subStatus": "OUT_FOR_DELIVERY",
278
- "reason": "OutForDelivery"
279
- }
280
-
164
+ shipmentId: | required
165
+ packageId: | required
166
+ **kwargs:
167
+
281
168
  Returns:
282
- ApiResponse:
169
+ ApiResponse
283
170
  """
284
171
  params = {}
285
172
  if "status" in kwargs:
@@ -297,24 +184,20 @@ class ExternalFulfillment(AsyncBaseClient):
297
184
  async def generate_invoice(self, shipmentId, **kwargs) -> ApiResponse:
298
185
  """
299
186
  generate_invoice(self, shipmentId, **kwargs) -> ApiResponse
300
-
187
+
301
188
  Generates and retrieves the invoice for the specified shipment.
302
-
303
- **Usage Plan:**
304
-
305
- ======================================
306
- Rate (requests per second)
307
- ======================================
308
- 5
309
- ======================================
310
-
311
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
312
-
189
+
190
+ Examples:
191
+ literal blocks::
192
+
193
+ await ExternalFulfillment().generate_invoice("value")
194
+
313
195
  Args:
314
- shipmentId:string | * REQUIRED The id of the shipment whose invoice is to be generated and retrieved.
315
-
196
+ shipmentId: | required
197
+ **kwargs:
198
+
316
199
  Returns:
317
- ApiResponse:
200
+ ApiResponse
318
201
  """
319
202
 
320
203
  return await self._request(
@@ -327,25 +210,20 @@ class ExternalFulfillment(AsyncBaseClient):
327
210
  async def retrieve_invoice(self, shipmentId, **kwargs) -> ApiResponse:
328
211
  """
329
212
  retrieve_invoice(self, shipmentId, **kwargs) -> ApiResponse
330
-
213
+
331
214
  Retrieves invoice for the specified shipment.
332
-
333
- **Usage Plan:**
334
-
335
- ======================================
336
- Rate (requests per second)
337
- ======================================
338
- 5
339
- ======================================
340
-
341
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
342
-
215
+
216
+ Examples:
217
+ literal blocks::
218
+
219
+ await ExternalFulfillment().retrieve_invoice("value")
220
+
343
221
  Args:
344
- shipmentId:string | * REQUIRED The id of the shipment whose invoice is to be retrieved.
345
-
222
+ shipmentId: | required
223
+ **kwargs:
224
+
346
225
  Returns:
347
- ApiResponse:
348
-
226
+ ApiResponse
349
227
  """
350
228
 
351
229
  return await self._request(
@@ -358,29 +236,25 @@ class ExternalFulfillment(AsyncBaseClient):
358
236
  async def retrieve_shipping_options(self, shipmentId, packageId, **kwargs) -> ApiResponse:
359
237
  """
360
238
  retrieve_shipping_options(self, shipmentId, packageId, **kwargs) -> ApiResponse
361
-
239
+
362
240
  An API for a client to retrieve an optional list of shippingOptions that marketplace/channel provides
363
- for the pickup of the packages of an shipment. This API will return a list of shippingOptions if the
364
- marketplace/channel provides transportation and allows the seller to choose a shippingOption. If the
365
- marketplace/channel does not allow for a shippingOption to be selected, but has a pre-determined shippingOption,
366
- then this API will return an empty response.
367
-
368
- **Usage Plan:**
369
-
370
- ======================================
371
- Rate (requests per second)
372
- ======================================
373
- 1
374
- ======================================
375
-
376
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
377
-
241
+ for the pickup of the packages of an shipment. This API will return a list of shippingOptions if the
242
+ marketplace/channel provides transportation and allows the seller to choose a shippingOption. If the
243
+ marketplace/channel does not allow for a shippingOption to be selected, but has a pre-determined shippingOption,
244
+ then this API will return an empty response.
245
+
246
+ Examples:
247
+ literal blocks::
248
+
249
+ await ExternalFulfillment().retrieve_shipping_options("value", "value")
250
+
378
251
  Args:
379
- shipmentId:string | * REQUIRED The id of the shipment for which available shipping option needs to be fetched.
380
- packageId:string | * REQUIRED The id of the package for which available shipping option needs to be fetched.
381
-
252
+ shipmentId: | required
253
+ packageId: | required
254
+ **kwargs:
255
+
382
256
  Returns:
383
- ApiResponse:
257
+ ApiResponse
384
258
  """
385
259
  params = {"shipmentId": shipmentId, "packageId": packageId}
386
260
  return await self._request(kwargs.pop("path"), params=params, add_marketplace=False)
@@ -389,35 +263,21 @@ class ExternalFulfillment(AsyncBaseClient):
389
263
  async def generate_ship_labels(self, shipmentId, operation, **kwargs) -> ApiResponse:
390
264
  """
391
265
  generate_ship_labels(self, shipmentId, operation, **kwargs) -> ApiResponse
392
-
266
+
393
267
  Generates and retrieves all ship-labels for one or more packages in the specified shipment.
394
-
395
- **Usage Plan:**
396
-
397
- ======================================
398
- Rate (requests per second)
399
- ======================================
400
- 1
401
- ======================================
402
-
403
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
404
-
268
+
269
+ Examples:
270
+ literal blocks::
271
+
272
+ await ExternalFulfillment().generate_ship_labels("value", "value")
273
+
405
274
  Args:
406
- shipmentId:string | * REQUIRED The id of the shipment whose ship-label is to be generated and retrieved.
407
- key shippingOptionId:string | The id of the shippingOption for which a ship-label is to be generated and retrieved. Applicable only for MFN channels.
408
- operation:string | * REQUIRED The operation which says it is generation or regeneration of label. Valid values are GENERATE, REGENERATE
409
-
410
- body: {
411
- "packageIds": [
412
- "string"
413
- ],
414
- "courierSupportedAttributes": {
415
- "carrierName": "string",
416
- "trackingId": "string"
417
- }
418
- }
275
+ shipmentId: | required
276
+ operation: | required
277
+ **kwargs:
278
+
419
279
  Returns:
420
- ApiResponse:
280
+ ApiResponse
421
281
  """
422
282
 
423
283
  params = {"operation": operation}
@@ -435,25 +295,21 @@ class ExternalFulfillment(AsyncBaseClient):
435
295
  async def retrieve_ship_label(self, shipmentId, packageId, **kwargs) -> ApiResponse:
436
296
  """
437
297
  retrieve_ship_label(self, shipmentId, packageId, **kwargs) -> ApiResponse
438
-
298
+
439
299
  retrieves a ship-label for the specified package in the specified shipment.
440
-
441
- **Usage Plan:**
442
-
443
- ======================================
444
- Rate (requests per second)
445
- ======================================
446
- 1
447
- ======================================
448
-
449
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
450
-
300
+
301
+ Examples:
302
+ literal blocks::
303
+
304
+ await ExternalFulfillment().retrieve_ship_label("value", "value")
305
+
451
306
  Args:
452
- shipmentId:string | * REQUIRED The id of the shipment whose ship-label is to be generated and retrieved.
453
- packageId:string | * REQUIRED The id of the package for which a ship-label is to be generated and retrieved.
454
-
307
+ shipmentId: | required
308
+ packageId: | required
309
+ **kwargs:
310
+
455
311
  Returns:
456
- ApiResponse:
312
+ ApiResponse
457
313
  """
458
314
 
459
315
  return await self._request(
@@ -466,35 +322,19 @@ class ExternalFulfillment(AsyncBaseClient):
466
322
  async def list_returns(self, **kwargs) -> ApiResponse:
467
323
  """
468
324
  list_returns(self, **kwargs) -> ApiResponse
469
-
325
+
470
326
  Get a list of return items dropped for the seller in the specified node, and in the specified status. Returns can be further filtered based on their creation date/time
471
-
472
- **Usage Plans:**
473
-
474
- ======================================
475
- Rate (requests per second)
476
- ======================================
477
- 5
478
- ======================================
479
-
480
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
481
-
327
+
328
+ Examples:
329
+ literal blocks::
330
+
331
+ await ExternalFulfillment().list_returns()
332
+
482
333
  Args:
483
- key returnLocationId:string | The SmartConnect location identifier for which return items are to be retrieved
484
- key rmaId:string | The RMA id of the return items to be listed
485
- key status:string | Retrieves only those return items which are in the specified status. The most common use-case would be to fetch all new return items which would be in the CREATED status
486
- key reverseTrackingId:string | The reverseTrackingId of the return items to be listed
487
- key createdSince:string | Return items whose creation is after the specified date/time are included in the response. This field should be in the ISO8601 date/time format.
488
- key createdUntil:string | Return items whose creation is before the specified date/time are included in the response. This field should be in the ISO8601 date/time format.
489
- key lastUpdatedSince:string | Return items whose last update is after the specified date/time are included in the response. This field should be in the ISO8601 date/time format. Only to be used along with returnLocationId and status params.
490
- key lastUpdatedUntil:string | Return items whose last update is before the specified date/time are included in the response. This field should be in the ISO8601 date/time format. Only to be used along with returnLocationId and status params.
491
- key lastUpdatedAfter:string | DEPRECATED. Use createdFrom param instead for same results. Return items whose creation is after the specified date/time are included in the response. This field should be in the ISO8601 date/time format.
492
- key lastUpdatedBefore:string | DEPRECATED. Use createdTo param instead for same results. Return items whose creation is before the specified date/time are included in the response. This field should be in the ISO8601 date/time format.
493
- key maxResults:integer | Specify the number of return items to be included in the response. It will default to 10 in case not provided. Maximum limit is 100.
494
- key nextToken:string | A cursor representing information about the next page of returns. Use the value returned in previous calls to page through the complete list of returns.
495
-
334
+ **kwargs:
335
+
496
336
  Returns:
497
- ApiResponse:
337
+ ApiResponse
498
338
  """
499
339
 
500
340
  return await self._request(kwargs.pop("path"), params=kwargs, add_marketplace=False)
@@ -503,24 +343,20 @@ class ExternalFulfillment(AsyncBaseClient):
503
343
  async def get_return(self, returnId, **kwargs) -> ApiResponse:
504
344
  """
505
345
  get_return(self, returnId, **kwargs) -> ApiResponse
506
-
346
+
507
347
  Get a single return item with the specified id.
508
-
509
- **Usage Plan:**
510
-
511
- ======================================
512
- Rate (requests per second)
513
- ======================================
514
- 5
515
- ======================================
516
-
517
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
518
-
348
+
349
+ Examples:
350
+ literal blocks::
351
+
352
+ await ExternalFulfillment().get_return("value")
353
+
519
354
  Args:
520
- returnId:string | * REQUIRED The id of the return item to be retrieved.
521
-
355
+ returnId: | required
356
+ **kwargs:
357
+
522
358
  Returns:
523
- ApiResponse:
359
+ ApiResponse
524
360
  """
525
361
  return await self._request(
526
362
  fill_query_params(kwargs.pop("path"), returnId),
@@ -532,37 +368,20 @@ class ExternalFulfillment(AsyncBaseClient):
532
368
  async def process_return_item(self, returnId, **kwargs) -> ApiResponse:
533
369
  """
534
370
  process_return_item(self, returnId, **kwargs) -> ApiResponse
535
-
371
+
536
372
  Process a return by grading. Determine the item condition and update the quantities for each item condition.
537
-
538
- **Usage Plan:**
539
-
540
- ======================================
541
- Rate (requests per second)
542
- ======================================
543
- 5
544
- ======================================
545
-
546
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
547
-
373
+
374
+ Examples:
375
+ literal blocks::
376
+
377
+ await ExternalFulfillment().process_return_item("value")
378
+
548
379
  Args:
549
- returnId:string | * REQUIRED The id of the return item to be retrieved.
550
-
551
- body: {
552
- "op": "increment",
553
- "path": "/processedReturns",
554
- "value": {
555
- "Sellable": 0,
556
- "Defective": 0,
557
- "CustomerDamaged": 0,
558
- "CarrierDamaged": 0,
559
- "Fraud": 0,
560
- "WrongItem": 0
561
- }
562
- }
563
-
380
+ returnId: | required
381
+ **kwargs:
382
+
564
383
  Returns:
565
- ApiResponse:
384
+ ApiResponse
566
385
  """
567
386
 
568
387
  headers = await self._get_headers()
@@ -582,25 +401,21 @@ class ExternalFulfillment(AsyncBaseClient):
582
401
  async def get_inventory(self, locationId, skuId, **kwargs) -> ApiResponse:
583
402
  """
584
403
  get_inventory(self, locationId, skuId, **kwargs) -> ApiResponse
585
-
404
+
586
405
  Get the current inventory for a given SKU at a given location.
587
-
588
- **Usage Plan:**
589
-
590
- ======================================
591
- Rate (requests per second)
592
- ======================================
593
- 5
594
- ======================================
595
-
596
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
597
-
406
+
407
+ Examples:
408
+ literal blocks::
409
+
410
+ await ExternalFulfillment().get_inventory("value", "value")
411
+
598
412
  Args:
599
- locationId:string | * REQUIRED The node identifier for the seller's location in smart connect for which inventory is being updated
600
- skuId:string | * REQUIRED The seller's identifier for the SKU for which inventory is being updated
601
-
413
+ locationId: | required
414
+ skuId: | required
415
+ **kwargs:
416
+
602
417
  Returns:
603
- ApiResponse:
418
+ ApiResponse
604
419
  """
605
420
  return await self._request(
606
421
  fill_query_params(kwargs.pop("path"), locationId, skuId),
@@ -612,28 +427,22 @@ class ExternalFulfillment(AsyncBaseClient):
612
427
  async def update_inventory(self, locationId, skuId, quantity, **kwargs) -> ApiResponse:
613
428
  """
614
429
  update_inventory(self, locationId, skuId, quantity, **kwargs) -> ApiResponse
615
-
430
+
616
431
  Get the current inventory for a given SKU at a given location.
617
-
618
- **Usage Plan:**
619
-
620
- ======================================
621
- Rate (requests per second)
622
- ======================================
623
- 5
624
- ======================================
625
-
626
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
627
-
432
+
433
+ Examples:
434
+ literal blocks::
435
+
436
+ await ExternalFulfillment().update_inventory("value", "value", "value")
437
+
628
438
  Args:
629
- locationId:string | * REQUIRED The node identifier for the seller's location in smart connect for which inventory is being updated
630
- skuId:string | * REQUIRED The seller's identifier for the SKU for which inventory is being updated
631
- quantity:integer | * REQUIRED The absolute number of items of the specified SKU available at the specified node. This value should always be a non-zero or zero positive integer
632
- key if_match:string | A unique number provided with each call to update the inventory. This number must be latest version of entity that exist in system. It will be equal to comparison against existing version of entity.
633
- key if_unmodified_since:string | Timestamp or increasing number which does greater than comparison before applying the change. This is different than version of entity and used to overwrite the latest data. It should follow data/time format of rfc2616
634
-
439
+ locationId: | required
440
+ skuId: | required
441
+ quantity: | required
442
+ **kwargs:
443
+
635
444
  Returns:
636
- ApiResponse:
445
+ ApiResponse
637
446
  """
638
447
  kwargs["quantity"] = quantity
639
448
 
@@ -652,55 +461,23 @@ class ExternalFulfillment(AsyncBaseClient):
652
461
  async def batch_inventory(self, **kwargs) -> ApiResponse:
653
462
  """
654
463
  batch_inventory(self, **kwargs) -> ApiResponse
655
-
656
- Returns the set of responses that correspond to the batched list of up to 10 requests defined in the request
657
- body. The response for each successful (HTTP status code 200) request in the set includes the inventory count
658
- for provided sku and locationId pair
659
-
660
- **Usage Plan:**
661
-
662
- ======================================
663
- Rate (requests per second)
664
- ======================================
665
- 5
666
- ======================================
667
-
668
- For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
669
-
464
+
465
+ Make up to 10 inventory requests. The response includes the set of responses that correspond to requests. The response for each successful request in the set includes the inventory count for the provided `sku` and `locationId` pair.
466
+
467
+ Examples:
468
+ literal blocks::
469
+
470
+ await ExternalFulfillment().batch_inventory()
471
+
670
472
  Args:
671
- body: {
672
- "requests": [
673
- {
674
- "method": "POST",
675
- "uri": "/inventory/update?locationId=EXSB&skuId=efptestsku1",
676
- "body": {
677
- "quantity": 15,
678
- "clientSequenceNumber": 12345678,
679
- "marketplaceAttributes": {
680
- "marketplaceId": "AXJDDKDFDKDF",
681
- "channelName": "FBA"
682
- }
683
- }
684
- },
685
- {
686
- "method": "POST",
687
- "uri": "/inventory/fetch?locationId=EXSB&skuId=efptestsku2",
688
- "body": {
689
- "marketplaceAttributes": {
690
- "marketplaceId": "AXJDDKDFDKDF",
691
- "channelName": "FBA"
692
- }
693
- }
694
- }
695
- ]
696
- }
697
-
473
+ body: BatchInventoryRequest | required A list of inventory requests.
474
+
698
475
  Returns:
699
- ApiResponse:
476
+ ApiResponse
700
477
  """
701
478
 
702
479
  return await self._request(
703
480
  kwargs.pop("path"),
704
481
  data=kwargs,
705
482
  add_marketplace=False,
706
- )
483
+ )