python-amazon-sp-api 1.9.60__py3-none-any.whl → 2.0.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 (137) hide show
  1. {python_amazon_sp_api-1.9.60.dist-info → python_amazon_sp_api-2.0.3.dist-info}/METADATA +41 -14
  2. python_amazon_sp_api-2.0.3.dist-info/RECORD +249 -0
  3. sp_api/__version__.py +1 -1
  4. sp_api/api/catalog/catalog.py +3 -4
  5. sp_api/api/catalog_items/catalog_items.py +3 -6
  6. sp_api/api/data_kiosk/data_kiosk.py +5 -6
  7. sp_api/api/feeds/feeds.py +11 -8
  8. sp_api/api/fulfillment_inbound/fulfillment_inbound.py +2 -2
  9. sp_api/api/inventories/inventories.py +2 -7
  10. sp_api/api/listings_items/listings_items.py +3 -24
  11. sp_api/api/products/products.py +3 -1
  12. sp_api/api/reports/reports.py +61 -97
  13. sp_api/api/sales/sales.py +2 -2
  14. sp_api/asyncio/__init__.py +0 -0
  15. sp_api/asyncio/api/__init__.py +164 -0
  16. sp_api/asyncio/api/amazon_warehousing_and_distribu/__init__.py +9 -0
  17. sp_api/asyncio/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py +130 -0
  18. sp_api/asyncio/api/aplus_content/__init__.py +5 -0
  19. sp_api/asyncio/api/aplus_content/aplus_content.py +330 -0
  20. sp_api/asyncio/api/application_integrations/__init__.py +5 -0
  21. sp_api/asyncio/api/application_integrations/application_integrations.py +119 -0
  22. sp_api/asyncio/api/application_management/__init__.py +5 -0
  23. sp_api/asyncio/api/application_management/application_management.py +36 -0
  24. sp_api/asyncio/api/authorization/__init__.py +5 -0
  25. sp_api/asyncio/api/authorization/authorization.py +54 -0
  26. sp_api/asyncio/api/catalog/__init__.py +5 -0
  27. sp_api/asyncio/api/catalog/catalog.py +111 -0
  28. sp_api/asyncio/api/catalog_items/__init__.py +6 -0
  29. sp_api/asyncio/api/catalog_items/catalog_items.py +93 -0
  30. sp_api/asyncio/api/clients/__init__.py +1 -0
  31. sp_api/asyncio/api/customer_feedback/__init__.py +5 -0
  32. sp_api/asyncio/api/customer_feedback/customer_feedback.py +111 -0
  33. sp_api/asyncio/api/data_kiosk/__init__.py +5 -0
  34. sp_api/asyncio/api/data_kiosk/data_kiosk.py +236 -0
  35. sp_api/asyncio/api/easy_ship/__init__.py +5 -0
  36. sp_api/asyncio/api/easy_ship/easy_ship.py +191 -0
  37. sp_api/asyncio/api/external_fulfillment/__init__.py +5 -0
  38. sp_api/asyncio/api/external_fulfillment/external_fulfillment.py +706 -0
  39. sp_api/asyncio/api/fba_inbound_eligibility/__init__.py +5 -0
  40. sp_api/asyncio/api/fba_inbound_eligibility/fba_inbound_eligibility.py +96 -0
  41. sp_api/asyncio/api/fba_small_and_light/__init__.py +5 -0
  42. sp_api/asyncio/api/fba_small_and_light/fba_small_and_light.py +213 -0
  43. sp_api/asyncio/api/feeds/__init__.py +0 -0
  44. sp_api/asyncio/api/feeds/feeds.py +260 -0
  45. sp_api/asyncio/api/finances/__init__.py +0 -0
  46. sp_api/asyncio/api/finances/finances.py +100 -0
  47. sp_api/asyncio/api/fulfillment_inbound/__init__.py +0 -0
  48. sp_api/asyncio/api/fulfillment_inbound/fulfillment_inbound.py +1798 -0
  49. sp_api/asyncio/api/fulfillment_outbound/__init__.py +0 -0
  50. sp_api/asyncio/api/fulfillment_outbound/fulfillment_outbound.py +736 -0
  51. sp_api/asyncio/api/inventories/__init__.py +0 -0
  52. sp_api/asyncio/api/inventories/inventories.py +74 -0
  53. sp_api/asyncio/api/listings_items/__init__.py +0 -0
  54. sp_api/asyncio/api/listings_items/listings_items.py +170 -0
  55. sp_api/asyncio/api/listings_restrictions/__init__.py +0 -0
  56. sp_api/asyncio/api/listings_restrictions/listings_restrictions.py +36 -0
  57. sp_api/asyncio/api/merchant_fulfillment/__init__.py +0 -0
  58. sp_api/asyncio/api/merchant_fulfillment/merchant_fulfillment.py +384 -0
  59. sp_api/asyncio/api/messaging/__init__.py +0 -0
  60. sp_api/asyncio/api/messaging/messaging.py +511 -0
  61. sp_api/asyncio/api/models/__init__.py +4 -0
  62. sp_api/asyncio/api/notifications/__init__.py +0 -0
  63. sp_api/asyncio/api/notifications/notifications.py +295 -0
  64. sp_api/asyncio/api/orders/__init__.py +0 -0
  65. sp_api/asyncio/api/orders/orders.py +356 -0
  66. sp_api/asyncio/api/overrides/__init__.py +1 -0
  67. sp_api/asyncio/api/product_fees/__init__.py +0 -0
  68. sp_api/asyncio/api/product_fees/product_fees.py +237 -0
  69. sp_api/asyncio/api/product_type_definitions/__init__.py +0 -0
  70. sp_api/asyncio/api/product_type_definitions/product_type_definitions.py +75 -0
  71. sp_api/asyncio/api/products/__init__.py +0 -0
  72. sp_api/asyncio/api/products/products.py +405 -0
  73. sp_api/asyncio/api/products/products_definitions.py +170 -0
  74. sp_api/asyncio/api/replenishment/__init__.py +0 -0
  75. sp_api/asyncio/api/replenishment/replenishment.py +121 -0
  76. sp_api/asyncio/api/reports/__init__.py +0 -0
  77. sp_api/asyncio/api/reports/reports.py +439 -0
  78. sp_api/asyncio/api/sales/__init__.py +0 -0
  79. sp_api/asyncio/api/sales/sales.py +93 -0
  80. sp_api/asyncio/api/sellers/__init__.py +0 -0
  81. sp_api/asyncio/api/sellers/sellers.py +70 -0
  82. sp_api/asyncio/api/services/__init__.py +0 -0
  83. sp_api/asyncio/api/services/services.py +218 -0
  84. sp_api/asyncio/api/shipping/__init__.py +0 -0
  85. sp_api/asyncio/api/shipping/shipping.py +459 -0
  86. sp_api/asyncio/api/shipping/shippingV2.py +651 -0
  87. sp_api/asyncio/api/solicitations/__init__.py +0 -0
  88. sp_api/asyncio/api/solicitations/solicitations.py +78 -0
  89. sp_api/asyncio/api/supply_sources/__init__.py +0 -0
  90. sp_api/asyncio/api/supply_sources/supply_sources.py +138 -0
  91. sp_api/asyncio/api/tokens/__init__.py +0 -0
  92. sp_api/asyncio/api/tokens/tokens.py +65 -0
  93. sp_api/asyncio/api/upload/__init__.py +0 -0
  94. sp_api/asyncio/api/upload/upload.py +18 -0
  95. sp_api/asyncio/api/vendor_direct_fulfillment_inventory/__init__.py +0 -0
  96. sp_api/asyncio/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py +64 -0
  97. sp_api/asyncio/api/vendor_direct_fulfillment_orders/__init__.py +0 -0
  98. sp_api/asyncio/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py +196 -0
  99. sp_api/asyncio/api/vendor_direct_fulfillment_payments/__init__.py +0 -0
  100. sp_api/asyncio/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py +254 -0
  101. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/__init__.py +0 -0
  102. sp_api/asyncio/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py +627 -0
  103. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/__init__.py +0 -0
  104. sp_api/asyncio/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py +43 -0
  105. sp_api/asyncio/api/vendor_invoices/__init__.py +0 -0
  106. sp_api/asyncio/api/vendor_invoices/vendor_invoices.py +295 -0
  107. sp_api/asyncio/api/vendor_orders/__init__.py +0 -0
  108. sp_api/asyncio/api/vendor_orders/vendor_orders.py +210 -0
  109. sp_api/asyncio/api/vendor_shipments/__init__.py +0 -0
  110. sp_api/asyncio/api/vendor_shipments/vendor_shipments.py +118 -0
  111. sp_api/asyncio/api/vendor_transaction_status/__init__.py +0 -0
  112. sp_api/asyncio/api/vendor_transaction_status/vendor_transaction_status.py +41 -0
  113. sp_api/asyncio/auth/__init__.py +12 -0
  114. sp_api/asyncio/auth/access_token_client.py +145 -0
  115. sp_api/asyncio/auth/exceptions.py +5 -0
  116. sp_api/asyncio/base/__init__.py +53 -0
  117. sp_api/asyncio/base/_transport_httpx.py +50 -0
  118. sp_api/asyncio/base/base_client.py +8 -0
  119. sp_api/asyncio/base/client.py +169 -0
  120. sp_api/asyncio/util/__init__.py +29 -0
  121. sp_api/asyncio/util/key_maker.py +5 -0
  122. sp_api/asyncio/util/load_all_pages.py +55 -0
  123. sp_api/asyncio/util/load_date_bound.py +53 -0
  124. sp_api/asyncio/util/retry.py +88 -0
  125. sp_api/auth/_core.py +39 -0
  126. sp_api/auth/access_token_client.py +18 -30
  127. sp_api/base/_core.py +110 -0
  128. sp_api/base/_transport_httpx.py +39 -0
  129. sp_api/base/client.py +40 -63
  130. sp_api/util/__init__.py +16 -0
  131. sp_api/util/params.py +57 -0
  132. sp_api/util/report_document.py +154 -0
  133. python_amazon_sp_api-1.9.60.dist-info/RECORD +0 -133
  134. {python_amazon_sp_api-1.9.60.data → python_amazon_sp_api-2.0.3.data}/scripts/make_endpoint +0 -0
  135. {python_amazon_sp_api-1.9.60.dist-info → python_amazon_sp_api-2.0.3.dist-info}/WHEEL +0 -0
  136. {python_amazon_sp_api-1.9.60.dist-info → python_amazon_sp_api-2.0.3.dist-info}/licenses/LICENSE +0 -0
  137. {python_amazon_sp_api-1.9.60.dist-info → python_amazon_sp_api-2.0.3.dist-info}/top_level.txt +0 -0
File without changes
@@ -0,0 +1,74 @@
1
+ import urllib
2
+
3
+ from sp_api.base import Client, Marketplaces, sp_endpoint, ApiResponse
4
+ from sp_api.asyncio.base import AsyncBaseClient
5
+ from sp_api.base.InventoryEnums import InventoryGranularity
6
+ from sp_api.util import normalize_csv_param
7
+
8
+
9
+ class Inventories(AsyncBaseClient):
10
+ """
11
+ :link: https://github.com/amzn/selling-partner-api-docs/blob/main/references/fba-inventory-api/fbaInventory.md#getinventorysummaries
12
+ """
13
+
14
+ @sp_endpoint("/fba/inventory/v1/summaries")
15
+ async def get_inventory_summary_marketplace(self, **kwargs) -> ApiResponse:
16
+ """
17
+ get_inventory_summary_marketplace(self, **kwargs) -> GetInventorySummariesResponse
18
+
19
+
20
+ Returns a list of inventory summaries. The summaries returned depend on the presence or absence of the startDateTime and sellerSkus parameters:
21
+
22
+ - All inventory summaries with available details are returned when the startDateTime and sellerSkus parameters are omitted.
23
+ - When startDateTime is provided, the operation returns inventory summaries that have had changes after the date and time specified. The sellerSkus parameter is ignored.
24
+ - When the sellerSkus parameter is provided, the operation returns inventory summaries for only the specified sellerSkus.
25
+
26
+ **Usage Plan:**
27
+
28
+ ====================================== ==============
29
+ Rate (requests per second) Burst
30
+ ====================================== ==============
31
+ 2 2
32
+ ====================================== ==============
33
+
34
+
35
+ For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
36
+
37
+ All inventory summaries with available details are returned when the startDateTime and sellerSkus parameters are omitted.
38
+ When startDateTime is provided, the operation returns inventory summaries that have had changes after the date and time specified. The sellerSkus parameter is ignored.
39
+ When the sellerSkus parameter is provided, the operation returns inventory summaries for only the specified sellerSkus.
40
+ Usage Plan:
41
+
42
+ Examples:
43
+ literal blocks::
44
+
45
+ Inventories().get_inventory_summary_marketplace(**{
46
+ "details": True,
47
+ "marketplaceIds": ["ATVPDKIKX0DER"]
48
+ })
49
+
50
+ Args:
51
+ key details: bool | true to return inventory summaries with additional summarized inventory details and quantities. Otherwise, returns inventory summaries only (default value). boolean "false"
52
+ key granularityType: Granularity Type | The granularity type for the inventory aggregation level. enum (GranularityType) -
53
+ key granularityId: str The granularity ID for the inventory aggregation level. string -
54
+ key startDateTime: datetime | A start date and time in ISO8601 format. If specified, all inventory summaries that have changed since then are returned. You must specify a date and time that is no earlier than 18 months prior to the date and time when you call the API. Note: Changes in inboundWorkingQuantity, inboundShippedQuantity and inboundReceivingQuantity are not detected. string (date-time) -
55
+ key sellerSkus: [str] | A list of seller SKUs for which to return inventory summaries. You may specify up to 50 SKUs.
56
+ key nextToken: str | String token returned in the response of your previous request. string -
57
+ key marketplaceIds: str | The marketplace ID for the marketplace for which to return inventory summaries.
58
+
59
+ Returns:
60
+ GetInventorySummariesResponse:
61
+
62
+ """
63
+
64
+ kwargs.update(
65
+ {
66
+ "granularityType": kwargs.get(
67
+ "granularityType", InventoryGranularity.MARKETPLACE.value
68
+ ),
69
+ "granularityId": kwargs.get("granularityId", self.marketplace_id),
70
+ }
71
+ )
72
+ normalize_csv_param(kwargs, "sellerSkus")
73
+
74
+ return await self._request(kwargs.pop("path"), params=kwargs)
File without changes
@@ -0,0 +1,170 @@
1
+ from sp_api.base import (
2
+ Client,
3
+ sp_endpoint,
4
+ fill_query_params,
5
+ ApiResponse,
6
+ IncludedData,
7
+ )
8
+ from sp_api.util import normalize_included_data
9
+ from sp_api.asyncio.base import AsyncBaseClient
10
+
11
+
12
+ class ListingsItems(AsyncBaseClient):
13
+ """
14
+ ListingsItems SP-API Client
15
+ :link:
16
+
17
+ The Selling Partner API for Listings Items (Listings Items API) provides programmatic access to selling partner listings on Amazon. Use this API in collaboration with the Selling Partner API for Product Type Definitions, which you use to retrieve the information about Amazon product types needed to use the Listings Items API.
18
+
19
+ For more information, see the [Listings Items API Use Case Guide](https://github.com/amzn/selling-partner-api-docs/blob/main/guides/en-US/use-case-guides/listings-items-api-use-case-guide/listings-items-api-use-case-guide_2021-08-01.md).
20
+ """
21
+
22
+ @sp_endpoint("/listings/2021-08-01/items/{}/{}", method="DELETE")
23
+ async def delete_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse:
24
+ """
25
+ delete_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse
26
+ Delete a listings item for a selling partner.
27
+ **Usage Plans:**
28
+ ====================================== ==============
29
+ Rate (requests per second) Burst
30
+ ====================================== ==============
31
+ 5 10
32
+ ====================================== ==============
33
+ The x-amzn-RateLimit-Limit response header returns the usage plan rate limits that were applied to the requested operation. Rate limits for some selling partners will vary from the default rate and burst shown in the table above. For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
34
+ Args:
35
+ sellerId:string | * REQUIRED A selling partner identifier, such as a merchant account or vendor code.
36
+ sku:string | * REQUIRED A selling partner provided identifier for an Amazon listing.
37
+ key marketplaceIds:array | * REQUIRED A comma-delimited list of Amazon marketplace identifiers for the request.
38
+ key issueLocale:string | A locale for localization of issues. When not provided, the default language code of the first marketplace is used. Examples: "en_US", "fr_CA", "fr_FR". Localized messages default to "en_US" when a localization is not available in the specified locale.
39
+ Returns:
40
+ ApiResponse:
41
+ """
42
+
43
+ return await self._request(
44
+ fill_query_params(kwargs.pop("path"), sellerId, sku), data=kwargs
45
+ )
46
+
47
+ @sp_endpoint("/listings/2021-08-01/items/{}/{}", method="GET")
48
+ async def get_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse:
49
+ """
50
+ get_listings_item(self, sellerId, **kwargs) -> ApiResponse
51
+ Returns details about a listings item for a selling partner.
52
+ **Usage Plan:**
53
+ ====================================== ==============
54
+ Rate (requests per second) Burst
55
+ ====================================== ==============
56
+ 5 10
57
+ ====================================== ==============
58
+ The `x-amzn-RateLimit-Limit` response header returns the usage plan rate limits that were applied to the requested operation, when available. The table above indicates the default rate and burst values for this operation. Selling partners whose business demands require higher throughput may see higher rate and burst values then those shown here. For more information, see [Usage Plans and Rate Limits in the Selling Partner API](https://github.com/amzn/selling-partner-api-docs/blob/main/guides/en-US/usage-plans-rate-limits/Usage-Plans-and-Rate-Limits.md).
59
+ Args:
60
+ sellerId:string | * REQUIRED A selling partner identifier, such as a merchant account or vendor code
61
+ sku:string | * REQUIRED A selling partner provided identifier for an Amazon listing.
62
+ key marketplaceIds:array | * REQUIRED A comma-delimited list of Amazon marketplace identifiers for the request.
63
+ key issueLocale:string | A locale for localization of issues. When not provided, the default language code of the first marketplace is used. Examples: "en_US", "fr_CA", "fr_FR". Localized messages default to "en_US" when a localization is not available in the specified locale.
64
+ key includedData:array | A comma-delimited list of data sets to include in the response. Default: summaries.
65
+ Returns:
66
+ ApiResponse:
67
+ """
68
+ normalize_included_data(kwargs, enum_cls=IncludedData)
69
+
70
+ return await self._request(
71
+ fill_query_params(kwargs.pop("path"), sellerId, sku), params=kwargs
72
+ )
73
+
74
+ @sp_endpoint("/listings/2021-08-01/items/{}", method="GET")
75
+ async def search_listings_items(self, sellerId, **kwargs) -> ApiResponse:
76
+ """
77
+ search_listings_items(self, sellerId, **kwargs) -> ApiResponse
78
+ Search for and return list of listings items and respective details for a selling partner.
79
+ **Usage Plan:**
80
+ ====================================== ==============
81
+ Rate (requests per second) Burst
82
+ ====================================== ==============
83
+ 5 5
84
+ ====================================== ==============
85
+ The `x-amzn-RateLimit-Limit` response header returns the usage plan rate limits that were applied to the requested operation, when available. The table above indicates the default rate and burst values for this operation. Selling partners whose business demands require higher throughput may see higher rate and burst values then those shown here. For more information, see [Usage Plans and Rate Limits in the Selling Partner API](https://github.com/amzn/selling-partner-api-docs/blob/main/guides/en-US/usage-plans-rate-limits/Usage-Plans-and-Rate-Limits.md).
86
+ Args:
87
+ sellerId:string | * REQUIRED A selling partner identifier, such as a merchant account or vendor code
88
+ key marketplaceIds:array | * REQUIRED A comma-delimited list of Amazon marketplace identifiers for the request.
89
+ key issueLocale:string | A locale for localization of issues. When not provided, the default language code of the first marketplace is used. Examples: "en_US", "fr_CA", "fr_FR". Localized messages default to "en_US" when a localization is not available in the specified locale.
90
+ key includedData:array | A comma-delimited list of data sets to include in the response. Default: summaries.
91
+ Returns:
92
+ ApiResponse:
93
+ """
94
+ normalize_included_data(kwargs, enum_cls=IncludedData)
95
+
96
+ return await self._request(
97
+ fill_query_params(kwargs.pop("path"), sellerId), params=kwargs
98
+ )
99
+
100
+ @sp_endpoint("/listings/2021-08-01/items/{}/{}", method="PATCH")
101
+ async def patch_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse:
102
+ """
103
+ patch_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse
104
+ Partially update (patch) a listings item for a selling partner. Only top-level listings item attributes can be patched. Patching nested attributes is not supported.
105
+ **Usage Plans:**
106
+ ====================================== ==============
107
+ Rate (requests per second) Burst
108
+ ====================================== ==============
109
+ 5 10
110
+ ====================================== ==============
111
+ The x-amzn-RateLimit-Limit response header returns the usage plan rate limits that were applied to the requested operation. Rate limits for some selling partners will vary from the default rate and burst shown in the table above. For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
112
+ Args:
113
+ sellerId:string | * REQUIRED A selling partner identifier, such as a merchant account or vendor code.
114
+ sku:string | * REQUIRED A selling partner provided identifier for an Amazon listing.
115
+ key marketplaceIds:array | * REQUIRED A comma-delimited list of Amazon marketplace identifiers for the request.
116
+ key issueLocale:string | A locale for localization of issues. When not provided, the default language code of the first marketplace is used. Examples: "en_US", "fr_CA", "fr_FR". Localized messages default to "en_US" when a localization is not available in the specified locale.
117
+ body: {
118
+ "productType": "string",
119
+ "patches": [
120
+ {
121
+ "op": "add",
122
+ "path": "string",
123
+ "value": [
124
+ {}
125
+ ]
126
+ }
127
+ ]
128
+ }
129
+
130
+ Returns:
131
+ ApiResponse:
132
+ """
133
+ return await self._request(
134
+ fill_query_params(kwargs.pop("path"), sellerId, sku),
135
+ data=kwargs.pop("body"),
136
+ params=kwargs,
137
+ )
138
+
139
+ @sp_endpoint("/listings/2021-08-01/items/{}/{}", method="PUT")
140
+ async def put_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse:
141
+ """
142
+ put_listings_item(self, sellerId, sku, **kwargs) -> ApiResponse
143
+ Creates a new or fully-updates an existing listings item for a selling partner.
144
+ **Usage Plans:**
145
+ ====================================== ==============
146
+ Rate (requests per second) Burst
147
+ ====================================== ==============
148
+ 5 10
149
+ ====================================== ==============
150
+ The x-amzn-RateLimit-Limit response header returns the usage plan rate limits that were applied to the requested operation. Rate limits for some selling partners will vary from the default rate and burst shown in the table above. For more information, see "Usage Plans and Rate Limits" in the Selling Partner API documentation.
151
+ Args:
152
+ sellerId:string | * REQUIRED A selling partner identifier, such as a merchant account or vendor code.
153
+ sku:string | * REQUIRED A selling partner provided identifier for an Amazon listing.
154
+ key marketplaceIds:array | * REQUIRED A comma-delimited list of Amazon marketplace identifiers for the request.
155
+ key issueLocale:string | A locale for localization of issues. When not provided, the default language code of the first marketplace is used. Examples: "en_US", "fr_CA", "fr_FR". Localized messages default to "en_US" when a localization is not available in the specified locale.
156
+ body: {
157
+ "productType": "string",
158
+ "requirements": "LISTING",
159
+ "attributes": {}
160
+ }
161
+
162
+ Returns:
163
+ ApiResponse:
164
+ """
165
+
166
+ return await self._request(
167
+ fill_query_params(kwargs.pop("path"), sellerId, sku),
168
+ data=kwargs.pop("body"),
169
+ params=kwargs,
170
+ )
File without changes
@@ -0,0 +1,36 @@
1
+ import urllib.parse
2
+
3
+ from sp_api.base import Client, sp_endpoint, fill_query_params, ApiResponse
4
+ from sp_api.asyncio.base import AsyncBaseClient
5
+
6
+
7
+ class ListingsRestrictions(AsyncBaseClient):
8
+ """
9
+ ListingsRestrictions SP-API Client
10
+
11
+ The Selling Partner API for Listings Restrictions provides programmatic access to restrictions on Amazon catalog listings.
12
+
13
+ For more information, see the [Listings Restrictions API Use Case Guide](https://github.com/amzn/selling-partner-api-docs/blob/main/guides/en-US/use-case-guides/listings-restrictions-api-use-case-guide/listings-restrictions-api-use-case-guide_2021-08-01.md).
14
+ """
15
+
16
+ @sp_endpoint("/listings/2021-08-01/restrictions", method="GET")
17
+ async def get_listings_restrictions(self, **kwargs) -> ApiResponse:
18
+ """
19
+ get_listings_restrictions(self, **kwargs) -> ApiResponse
20
+
21
+ Returns listing restrictions for an item in the Amazon Catalog.
22
+
23
+ Args:
24
+
25
+ key asin:string | * REQUIRED The Amazon Standard Identification Number (ASIN) of the item.
26
+ key conditionType:string | The condition used to filter restrictions.
27
+ key sellerId:string | * REQUIRED A selling partner identifier, such as a merchant account.
28
+ key marketplaceIds:array | * REQUIRED A comma-delimited list of Amazon marketplace identifiers for the request.
29
+ key reasonLocale:string | A locale for reason text localization. When not provided, the default language code of the first marketplace is used. Examples: "en_US", "fr_CA", "fr_FR". Localized messages default to "en_US" when a localization is not available in the specified locale.
30
+
31
+
32
+ Returns:
33
+ ApiResponse
34
+ """
35
+
36
+ return await self._request(kwargs.pop("path"), params=kwargs)
File without changes