@acmekit/js-sdk 2.13.2 → 2.13.4

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 (297) hide show
  1. package/dist/admin/index.d.ts +2 -177
  2. package/dist/admin/index.d.ts.map +1 -1
  3. package/dist/admin/index.js +3 -76
  4. package/dist/admin/index.js.map +1 -1
  5. package/dist/esm/admin/index.d.ts +2 -177
  6. package/dist/esm/admin/index.d.ts.map +1 -1
  7. package/dist/esm/admin/index.js +3 -73
  8. package/dist/esm/admin/index.js.map +1 -1
  9. package/dist/esm/store/index.d.ts +5 -1193
  10. package/dist/esm/store/index.d.ts.map +1 -1
  11. package/dist/esm/store/index.js +6 -1418
  12. package/dist/esm/store/index.js.map +1 -1
  13. package/dist/store/index.d.ts +5 -1193
  14. package/dist/store/index.d.ts.map +1 -1
  15. package/dist/store/index.js +6 -1408
  16. package/dist/store/index.js.map +1 -1
  17. package/package.json +2 -2
  18. package/dist/admin/campaign.d.ts +0 -164
  19. package/dist/admin/campaign.d.ts.map +0 -1
  20. package/dist/admin/campaign.js +0 -196
  21. package/dist/admin/campaign.js.map +0 -1
  22. package/dist/admin/claim.d.ts +0 -558
  23. package/dist/admin/claim.d.ts.map +0 -1
  24. package/dist/admin/claim.js +0 -693
  25. package/dist/admin/claim.js.map +0 -1
  26. package/dist/admin/currency.d.ts +0 -95
  27. package/dist/admin/currency.d.ts.map +0 -1
  28. package/dist/admin/currency.js +0 -104
  29. package/dist/admin/currency.js.map +0 -1
  30. package/dist/admin/draft-order.d.ts +0 -430
  31. package/dist/admin/draft-order.d.ts.map +0 -1
  32. package/dist/admin/draft-order.js +0 -547
  33. package/dist/admin/draft-order.js.map +0 -1
  34. package/dist/admin/exchange.d.ts +0 -487
  35. package/dist/admin/exchange.d.ts.map +0 -1
  36. package/dist/admin/exchange.js +0 -602
  37. package/dist/admin/exchange.js.map +0 -1
  38. package/dist/admin/fulfillment-provider.d.ts +0 -78
  39. package/dist/admin/fulfillment-provider.d.ts.map +0 -1
  40. package/dist/admin/fulfillment-provider.js +0 -88
  41. package/dist/admin/fulfillment-provider.js.map +0 -1
  42. package/dist/admin/fulfillment-set.d.ts +0 -141
  43. package/dist/admin/fulfillment-set.d.ts.map +0 -1
  44. package/dist/admin/fulfillment-set.js +0 -170
  45. package/dist/admin/fulfillment-set.js.map +0 -1
  46. package/dist/admin/fulfillment.d.ts +0 -91
  47. package/dist/admin/fulfillment.d.ts.map +0 -1
  48. package/dist/admin/fulfillment.js +0 -111
  49. package/dist/admin/fulfillment.js.map +0 -1
  50. package/dist/admin/inventory-item.d.ts +0 -320
  51. package/dist/admin/inventory-item.d.ts.map +0 -1
  52. package/dist/admin/inventory-item.js +0 -384
  53. package/dist/admin/inventory-item.js.map +0 -1
  54. package/dist/admin/order-edit.d.ts +0 -189
  55. package/dist/admin/order-edit.d.ts.map +0 -1
  56. package/dist/admin/order-edit.js +0 -240
  57. package/dist/admin/order-edit.js.map +0 -1
  58. package/dist/admin/order.d.ts +0 -452
  59. package/dist/admin/order.d.ts.map +0 -1
  60. package/dist/admin/order.js +0 -560
  61. package/dist/admin/order.js.map +0 -1
  62. package/dist/admin/payment-collection.d.ts +0 -72
  63. package/dist/admin/payment-collection.d.ts.map +0 -1
  64. package/dist/admin/payment-collection.js +0 -90
  65. package/dist/admin/payment-collection.js.map +0 -1
  66. package/dist/admin/payment.d.ts +0 -180
  67. package/dist/admin/payment.d.ts.map +0 -1
  68. package/dist/admin/payment.js +0 -208
  69. package/dist/admin/payment.js.map +0 -1
  70. package/dist/admin/price-list.d.ts +0 -234
  71. package/dist/admin/price-list.d.ts.map +0 -1
  72. package/dist/admin/price-list.js +0 -284
  73. package/dist/admin/price-list.js.map +0 -1
  74. package/dist/admin/price-preference.d.ts +0 -152
  75. package/dist/admin/price-preference.d.ts.map +0 -1
  76. package/dist/admin/price-preference.js +0 -182
  77. package/dist/admin/price-preference.js.map +0 -1
  78. package/dist/admin/product-category.d.ts +0 -170
  79. package/dist/admin/product-category.d.ts.map +0 -1
  80. package/dist/admin/product-category.js +0 -205
  81. package/dist/admin/product-category.js.map +0 -1
  82. package/dist/admin/product-collection.d.ts +0 -169
  83. package/dist/admin/product-collection.d.ts.map +0 -1
  84. package/dist/admin/product-collection.js +0 -203
  85. package/dist/admin/product-collection.js.map +0 -1
  86. package/dist/admin/product-tag.d.ts +0 -149
  87. package/dist/admin/product-tag.d.ts.map +0 -1
  88. package/dist/admin/product-tag.js +0 -177
  89. package/dist/admin/product-tag.js.map +0 -1
  90. package/dist/admin/product-type.d.ts +0 -150
  91. package/dist/admin/product-type.d.ts.map +0 -1
  92. package/dist/admin/product-type.js +0 -178
  93. package/dist/admin/product-type.js.map +0 -1
  94. package/dist/admin/product-variant.d.ts +0 -62
  95. package/dist/admin/product-variant.d.ts.map +0 -1
  96. package/dist/admin/product-variant.js +0 -66
  97. package/dist/admin/product-variant.js.map +0 -1
  98. package/dist/admin/product.d.ts +0 -740
  99. package/dist/admin/product.d.ts.map +0 -1
  100. package/dist/admin/product.js +0 -948
  101. package/dist/admin/product.js.map +0 -1
  102. package/dist/admin/promotion.d.ts +0 -310
  103. package/dist/admin/promotion.d.ts.map +0 -1
  104. package/dist/admin/promotion.js +0 -374
  105. package/dist/admin/promotion.js.map +0 -1
  106. package/dist/admin/refund-reasons.d.ts +0 -163
  107. package/dist/admin/refund-reasons.d.ts.map +0 -1
  108. package/dist/admin/refund-reasons.js +0 -192
  109. package/dist/admin/refund-reasons.js.map +0 -1
  110. package/dist/admin/region.d.ts +0 -152
  111. package/dist/admin/region.d.ts.map +0 -1
  112. package/dist/admin/region.js +0 -180
  113. package/dist/admin/region.js.map +0 -1
  114. package/dist/admin/reservation.d.ts +0 -154
  115. package/dist/admin/reservation.d.ts.map +0 -1
  116. package/dist/admin/reservation.js +0 -182
  117. package/dist/admin/reservation.js.map +0 -1
  118. package/dist/admin/return-reason.d.ts +0 -154
  119. package/dist/admin/return-reason.d.ts.map +0 -1
  120. package/dist/admin/return-reason.js +0 -183
  121. package/dist/admin/return-reason.js.map +0 -1
  122. package/dist/admin/return.d.ts +0 -558
  123. package/dist/admin/return.d.ts.map +0 -1
  124. package/dist/admin/return.js +0 -700
  125. package/dist/admin/return.js.map +0 -1
  126. package/dist/admin/sales-channel.d.ts +0 -196
  127. package/dist/admin/sales-channel.d.ts.map +0 -1
  128. package/dist/admin/sales-channel.js +0 -238
  129. package/dist/admin/sales-channel.js.map +0 -1
  130. package/dist/admin/shipping-option-type.d.ts +0 -152
  131. package/dist/admin/shipping-option-type.d.ts.map +0 -1
  132. package/dist/admin/shipping-option-type.js +0 -180
  133. package/dist/admin/shipping-option-type.js.map +0 -1
  134. package/dist/admin/shipping-option.d.ts +0 -171
  135. package/dist/admin/shipping-option.d.ts.map +0 -1
  136. package/dist/admin/shipping-option.js +0 -207
  137. package/dist/admin/shipping-option.js.map +0 -1
  138. package/dist/admin/shipping-profile.d.ts +0 -151
  139. package/dist/admin/shipping-profile.d.ts.map +0 -1
  140. package/dist/admin/shipping-profile.js +0 -181
  141. package/dist/admin/shipping-profile.js.map +0 -1
  142. package/dist/admin/stock-location.d.ts +0 -212
  143. package/dist/admin/stock-location.d.ts.map +0 -1
  144. package/dist/admin/stock-location.js +0 -260
  145. package/dist/admin/stock-location.js.map +0 -1
  146. package/dist/admin/tax-provider.d.ts +0 -64
  147. package/dist/admin/tax-provider.d.ts.map +0 -1
  148. package/dist/admin/tax-provider.js +0 -70
  149. package/dist/admin/tax-provider.js.map +0 -1
  150. package/dist/admin/tax-rate.d.ts +0 -155
  151. package/dist/admin/tax-rate.d.ts.map +0 -1
  152. package/dist/admin/tax-rate.js +0 -186
  153. package/dist/admin/tax-rate.js.map +0 -1
  154. package/dist/admin/tax-region.d.ts +0 -165
  155. package/dist/admin/tax-region.d.ts.map +0 -1
  156. package/dist/admin/tax-region.js +0 -196
  157. package/dist/admin/tax-region.js.map +0 -1
  158. package/dist/esm/admin/campaign.d.ts +0 -164
  159. package/dist/esm/admin/campaign.d.ts.map +0 -1
  160. package/dist/esm/admin/campaign.js +0 -213
  161. package/dist/esm/admin/campaign.js.map +0 -1
  162. package/dist/esm/admin/claim.d.ts +0 -558
  163. package/dist/esm/admin/claim.d.ts.map +0 -1
  164. package/dist/esm/admin/claim.js +0 -740
  165. package/dist/esm/admin/claim.js.map +0 -1
  166. package/dist/esm/admin/currency.d.ts +0 -95
  167. package/dist/esm/admin/currency.d.ts.map +0 -1
  168. package/dist/esm/admin/currency.js +0 -113
  169. package/dist/esm/admin/currency.js.map +0 -1
  170. package/dist/esm/admin/draft-order.d.ts +0 -430
  171. package/dist/esm/admin/draft-order.d.ts.map +0 -1
  172. package/dist/esm/admin/draft-order.js +0 -594
  173. package/dist/esm/admin/draft-order.js.map +0 -1
  174. package/dist/esm/admin/exchange.d.ts +0 -487
  175. package/dist/esm/admin/exchange.d.ts.map +0 -1
  176. package/dist/esm/admin/exchange.js +0 -643
  177. package/dist/esm/admin/exchange.js.map +0 -1
  178. package/dist/esm/admin/fulfillment-provider.d.ts +0 -78
  179. package/dist/esm/admin/fulfillment-provider.d.ts.map +0 -1
  180. package/dist/esm/admin/fulfillment-provider.js +0 -97
  181. package/dist/esm/admin/fulfillment-provider.js.map +0 -1
  182. package/dist/esm/admin/fulfillment-set.d.ts +0 -141
  183. package/dist/esm/admin/fulfillment-set.d.ts.map +0 -1
  184. package/dist/esm/admin/fulfillment-set.js +0 -185
  185. package/dist/esm/admin/fulfillment-set.js.map +0 -1
  186. package/dist/esm/admin/fulfillment.d.ts +0 -91
  187. package/dist/esm/admin/fulfillment.d.ts.map +0 -1
  188. package/dist/esm/admin/fulfillment.js +0 -122
  189. package/dist/esm/admin/fulfillment.js.map +0 -1
  190. package/dist/esm/admin/inventory-item.d.ts +0 -320
  191. package/dist/esm/admin/inventory-item.d.ts.map +0 -1
  192. package/dist/esm/admin/inventory-item.js +0 -411
  193. package/dist/esm/admin/inventory-item.js.map +0 -1
  194. package/dist/esm/admin/order-edit.d.ts +0 -189
  195. package/dist/esm/admin/order-edit.d.ts.map +0 -1
  196. package/dist/esm/admin/order-edit.js +0 -261
  197. package/dist/esm/admin/order-edit.js.map +0 -1
  198. package/dist/esm/admin/order.d.ts +0 -452
  199. package/dist/esm/admin/order.d.ts.map +0 -1
  200. package/dist/esm/admin/order.js +0 -603
  201. package/dist/esm/admin/order.js.map +0 -1
  202. package/dist/esm/admin/payment-collection.d.ts +0 -72
  203. package/dist/esm/admin/payment-collection.d.ts.map +0 -1
  204. package/dist/esm/admin/payment-collection.js +0 -101
  205. package/dist/esm/admin/payment-collection.js.map +0 -1
  206. package/dist/esm/admin/payment.d.ts +0 -180
  207. package/dist/esm/admin/payment.d.ts.map +0 -1
  208. package/dist/esm/admin/payment.js +0 -223
  209. package/dist/esm/admin/payment.js.map +0 -1
  210. package/dist/esm/admin/price-list.d.ts +0 -234
  211. package/dist/esm/admin/price-list.d.ts.map +0 -1
  212. package/dist/esm/admin/price-list.js +0 -305
  213. package/dist/esm/admin/price-list.js.map +0 -1
  214. package/dist/esm/admin/price-preference.d.ts +0 -152
  215. package/dist/esm/admin/price-preference.d.ts.map +0 -1
  216. package/dist/esm/admin/price-preference.js +0 -197
  217. package/dist/esm/admin/price-preference.js.map +0 -1
  218. package/dist/esm/admin/product-category.d.ts +0 -170
  219. package/dist/esm/admin/product-category.d.ts.map +0 -1
  220. package/dist/esm/admin/product-category.js +0 -222
  221. package/dist/esm/admin/product-category.js.map +0 -1
  222. package/dist/esm/admin/product-collection.d.ts +0 -169
  223. package/dist/esm/admin/product-collection.d.ts.map +0 -1
  224. package/dist/esm/admin/product-collection.js +0 -220
  225. package/dist/esm/admin/product-collection.js.map +0 -1
  226. package/dist/esm/admin/product-tag.d.ts +0 -149
  227. package/dist/esm/admin/product-tag.d.ts.map +0 -1
  228. package/dist/esm/admin/product-tag.js +0 -192
  229. package/dist/esm/admin/product-tag.js.map +0 -1
  230. package/dist/esm/admin/product-type.d.ts +0 -150
  231. package/dist/esm/admin/product-type.d.ts.map +0 -1
  232. package/dist/esm/admin/product-type.js +0 -193
  233. package/dist/esm/admin/product-type.js.map +0 -1
  234. package/dist/esm/admin/product-variant.d.ts +0 -62
  235. package/dist/esm/admin/product-variant.d.ts.map +0 -1
  236. package/dist/esm/admin/product-variant.js +0 -73
  237. package/dist/esm/admin/product-variant.js.map +0 -1
  238. package/dist/esm/admin/product.d.ts +0 -740
  239. package/dist/esm/admin/product.d.ts.map +0 -1
  240. package/dist/esm/admin/product.js +0 -995
  241. package/dist/esm/admin/product.js.map +0 -1
  242. package/dist/esm/admin/promotion.d.ts +0 -310
  243. package/dist/esm/admin/promotion.d.ts.map +0 -1
  244. package/dist/esm/admin/promotion.js +0 -401
  245. package/dist/esm/admin/promotion.js.map +0 -1
  246. package/dist/esm/admin/refund-reasons.d.ts +0 -163
  247. package/dist/esm/admin/refund-reasons.d.ts.map +0 -1
  248. package/dist/esm/admin/refund-reasons.js +0 -207
  249. package/dist/esm/admin/refund-reasons.js.map +0 -1
  250. package/dist/esm/admin/region.d.ts +0 -152
  251. package/dist/esm/admin/region.d.ts.map +0 -1
  252. package/dist/esm/admin/region.js +0 -195
  253. package/dist/esm/admin/region.js.map +0 -1
  254. package/dist/esm/admin/reservation.d.ts +0 -154
  255. package/dist/esm/admin/reservation.d.ts.map +0 -1
  256. package/dist/esm/admin/reservation.js +0 -199
  257. package/dist/esm/admin/reservation.js.map +0 -1
  258. package/dist/esm/admin/return-reason.d.ts +0 -154
  259. package/dist/esm/admin/return-reason.d.ts.map +0 -1
  260. package/dist/esm/admin/return-reason.js +0 -198
  261. package/dist/esm/admin/return-reason.js.map +0 -1
  262. package/dist/esm/admin/return.d.ts +0 -558
  263. package/dist/esm/admin/return.d.ts.map +0 -1
  264. package/dist/esm/admin/return.js +0 -749
  265. package/dist/esm/admin/return.js.map +0 -1
  266. package/dist/esm/admin/sales-channel.d.ts +0 -196
  267. package/dist/esm/admin/sales-channel.d.ts.map +0 -1
  268. package/dist/esm/admin/sales-channel.js +0 -257
  269. package/dist/esm/admin/sales-channel.js.map +0 -1
  270. package/dist/esm/admin/shipping-option-type.d.ts +0 -152
  271. package/dist/esm/admin/shipping-option-type.d.ts.map +0 -1
  272. package/dist/esm/admin/shipping-option-type.js +0 -195
  273. package/dist/esm/admin/shipping-option-type.js.map +0 -1
  274. package/dist/esm/admin/shipping-option.d.ts +0 -171
  275. package/dist/esm/admin/shipping-option.d.ts.map +0 -1
  276. package/dist/esm/admin/shipping-option.js +0 -224
  277. package/dist/esm/admin/shipping-option.js.map +0 -1
  278. package/dist/esm/admin/shipping-profile.d.ts +0 -151
  279. package/dist/esm/admin/shipping-profile.d.ts.map +0 -1
  280. package/dist/esm/admin/shipping-profile.js +0 -196
  281. package/dist/esm/admin/shipping-profile.js.map +0 -1
  282. package/dist/esm/admin/stock-location.d.ts +0 -212
  283. package/dist/esm/admin/stock-location.d.ts.map +0 -1
  284. package/dist/esm/admin/stock-location.js +0 -281
  285. package/dist/esm/admin/stock-location.js.map +0 -1
  286. package/dist/esm/admin/tax-provider.d.ts +0 -64
  287. package/dist/esm/admin/tax-provider.d.ts.map +0 -1
  288. package/dist/esm/admin/tax-provider.js +0 -77
  289. package/dist/esm/admin/tax-provider.js.map +0 -1
  290. package/dist/esm/admin/tax-rate.d.ts +0 -155
  291. package/dist/esm/admin/tax-rate.d.ts.map +0 -1
  292. package/dist/esm/admin/tax-rate.js +0 -201
  293. package/dist/esm/admin/tax-rate.js.map +0 -1
  294. package/dist/esm/admin/tax-region.d.ts +0 -165
  295. package/dist/esm/admin/tax-region.d.ts.map +0 -1
  296. package/dist/esm/admin/tax-region.js +0 -211
  297. package/dist/esm/admin/tax-region.js.map +0 -1
@@ -1,948 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Product = void 0;
4
- const client_1 = require("../client");
5
- class Product {
6
- /**
7
- * @ignore
8
- */
9
- constructor(client) {
10
- this.client = client;
11
- }
12
- /**
13
- * This method creates a product import. The products are only imported after
14
- * the import is confirmed using the {@link confirmImport} method.
15
- *
16
- * This method sends a request to the
17
- * [Create Product Import](https://docs.acmekit.com/api/admin#products_postproductsimport)
18
- * API route.
19
- *
20
- * @param body - The import's details.
21
- * @param query - Query parameters to pass to the request.
22
- * @param headers - Headers to pass in the request.
23
- * @returns The import's details.
24
- *
25
- * @example
26
- * sdk.admin.product.import({
27
- * file // uploaded File instance
28
- * })
29
- * .then(({ transaction_id }) => {
30
- * console.log(transaction_id)
31
- * })
32
- */
33
- async import(body, query, headers) {
34
- const form = new FormData();
35
- form.append("file", body.file);
36
- return await this.client.fetch(`/admin/products/import`, {
37
- method: "POST",
38
- headers: {
39
- ...headers,
40
- // Let the browser determine the content type.
41
- "content-type": null,
42
- },
43
- body: form,
44
- query,
45
- });
46
- }
47
- /**
48
- * This method creates a product import. The products are only imported after
49
- * the import is confirmed using the {@link confirmImport} method.
50
- *
51
- * This method sends a request to the
52
- * [Create Product Import](https://docs.acmekit.com/api/admin#products_postproductsimports)
53
- * API route.
54
- *
55
- * @since 2.8.5
56
- *
57
- * @param body - The import's details.
58
- * @param query - Query parameters to pass to the request.
59
- * @param headers - Headers to pass in the request.
60
- * @returns The import's details.
61
- *
62
- * @example
63
- * sdk.admin.product.createImport({
64
- * file // uploaded File instance
65
- * })
66
- * .then(({ transaction_id }) => {
67
- * console.log(transaction_id)
68
- * })
69
- */
70
- async createImport(body, query, headers) {
71
- /**
72
- * Get signed URL for file uploads
73
- */
74
- const response = await this.client.fetch("admin/uploads/presigned-urls", {
75
- method: "POST",
76
- headers: headers,
77
- body: {
78
- originalname: body.file.name,
79
- mime_type: body.file.type,
80
- size: body.file.size,
81
- },
82
- query,
83
- });
84
- /**
85
- * Upload file using the signed URL. We cannot send cookies or any other
86
- * special headers in this request, since external services like S3 will
87
- * give a CORS error.
88
- */
89
- if (response.url.startsWith("http://") ||
90
- response.url.startsWith("https://")) {
91
- const uploadResponse = await fetch(response.url, {
92
- method: "PUT",
93
- body: body.file,
94
- });
95
- if (uploadResponse.status >= 400) {
96
- throw new client_1.FetchError(uploadResponse.statusText, uploadResponse.statusText, uploadResponse.status);
97
- }
98
- }
99
- else {
100
- const form = new FormData();
101
- form.append("files", body.file);
102
- const localUploadResponse = await this.client.fetch("admin/uploads", {
103
- method: "POST",
104
- headers: {
105
- ...headers,
106
- // Let the browser determine the content type.
107
- "content-type": null,
108
- },
109
- body: form,
110
- query,
111
- });
112
- response.filename = localUploadResponse.files[0].id;
113
- }
114
- /**
115
- * Perform products import using the uploaded file name
116
- */
117
- return await this.client.fetch("/admin/products/imports", {
118
- method: "POST",
119
- headers: {
120
- ...headers,
121
- },
122
- body: {
123
- file_key: response.filename,
124
- originalname: response.originalname,
125
- extension: response.extension,
126
- size: response.size,
127
- mime_type: response.mime_type,
128
- },
129
- query,
130
- });
131
- }
132
- /**
133
- * This method confirms a product import created using the method {@link import}.
134
- * It sends a request to the
135
- * [Confirm Product Import](https://docs.acmekit.com/api/admin#products_postproductsimporttransaction_idconfirm)
136
- * API route.
137
- *
138
- * @since 2.8.5
139
- *
140
- * @param transactionId - The ID of the transaction of the created product import. This is returned
141
- * by the API route used to create the product import.
142
- * @param query - Query parameters to pass in the request.
143
- * @param headers - Headers to pass in the request.
144
- *
145
- * @example
146
- * sdk.admin.product.confirmImport("transaction_123")
147
- * .then(() => {
148
- * console.log("Import confirmed")
149
- * })
150
- */
151
- async confirmImport(transactionId, query, headers) {
152
- return await this.client.fetch(`/admin/products/imports/${transactionId}/confirm`, {
153
- method: "POST",
154
- headers,
155
- body: {},
156
- query,
157
- });
158
- }
159
- /**
160
- * This method starts a product export process to retrieve a CSV of exported products.
161
- *
162
- * You'll receive in the response the transaction ID of the workflow generating the CSV file.
163
- * To check the status of the execution, send a `GET` request to
164
- * `/admin/workflows-executions/export-products/:transaction-id`.
165
- *
166
- * Once the execution finishes successfully, a notification is created for the export.
167
- * You can retrieve the notifications using the `/admin/notification` API route to
168
- * retrieve the file's download URL.
169
- *
170
- * This method sends a request to the [Export Product](https://docs.acmekit.com/api/admin#products_postproductsexport)
171
- * API route.
172
- *
173
- * @param body - The export's details.
174
- * @param query - Filters to specify which products to export.
175
- * @param headers - Headers to pass in the request.
176
- * @returns The export's details.
177
- *
178
- * @example
179
- * sdk.admin.product.export({})
180
- * .then(({ transaction_id }) => {
181
- * console.log(transaction_id)
182
- * })
183
- */
184
- async export(body, query, headers) {
185
- return await this.client.fetch(`/admin/products/export`, {
186
- method: "POST",
187
- headers,
188
- body,
189
- query,
190
- });
191
- }
192
- /**
193
- * This method manages products to create, update, or delete them. It sends a request to the
194
- * [Manage Products](https://docs.acmekit.com/api/admin#products_postproductsbatch)
195
- * API route.
196
- *
197
- * @param body - The products to create, update, or delete.
198
- * @param query - Configure the fields to retrieve in the products.
199
- * @param headers - Headers to pass in the request
200
- * @returns The batch operations details.
201
- *
202
- * @example
203
- * sdk.admin.product.batch({
204
- * create: [
205
- * {
206
- * title: "Shirt",
207
- * options: [{
208
- * title: "Default",
209
- * values: ["Default Option"]
210
- * }],
211
- * variants: [
212
- * {
213
- * title: "Default",
214
- * options: {
215
- * Default: "Default Option"
216
- * },
217
- * prices: []
218
- * }
219
- * ]
220
- * }
221
- * ],
222
- * update: [{
223
- * id: "prod_123",
224
- * title: "Pants"
225
- * }],
226
- * delete: ["prod_321"]
227
- * })
228
- * .then(({ created, updated, deleted }) => {
229
- * console.log(created, updated, deleted)
230
- * })
231
- */
232
- async batch(body, query, headers) {
233
- return await this.client.fetch(`/admin/products/batch`, {
234
- method: "POST",
235
- headers,
236
- body,
237
- query,
238
- });
239
- }
240
- /**
241
- * This method creates a product. It sends a request to the
242
- * [Create Product](https://docs.acmekit.com/api/admin#products_postproducts)
243
- * API route.
244
- *
245
- * @param body - The product's details.
246
- * @param query - Configure the fields to retrieve in the product.
247
- * @param headers - Headers to pass in the request
248
- * @returns The product's details.
249
- *
250
- * @example
251
- * sdk.admin.product.create({
252
- * title: "Shirt",
253
- * options: [{
254
- * title: "Default",
255
- * values: ["Default Option"]
256
- * }],
257
- * variants: [
258
- * {
259
- * title: "Default",
260
- * options: {
261
- * Default: "Default Option"
262
- * },
263
- * prices: []
264
- * }
265
- * ],
266
- * shipping_profile_id: "sp_123"
267
- * })
268
- * .then(({ product }) => {
269
- * console.log(product)
270
- * })
271
- */
272
- async create(body, query, headers) {
273
- return await this.client.fetch(`/admin/products`, {
274
- method: "POST",
275
- headers,
276
- body,
277
- query,
278
- });
279
- }
280
- /**
281
- * This method updates a product. It sends a request to the
282
- * [Update Product](https://docs.acmekit.com/api/admin#products_postproductsid)
283
- * API route.
284
- *
285
- * @param id - The product's ID.
286
- * @param body - The data to update in the product.
287
- * @param query - Configure the fields to retrieve in the product.
288
- * @param headers - Headers to pass in the request
289
- * @returns The product's details.
290
- *
291
- * @example
292
- * sdk.admin.product.update("prod_123", {
293
- * title: "Shirt",
294
- * })
295
- * .then(({ product }) => {
296
- * console.log(product)
297
- * })
298
- */
299
- async update(id, body, query, headers) {
300
- return await this.client.fetch(`/admin/products/${id}`, {
301
- method: "POST",
302
- headers,
303
- body,
304
- query,
305
- });
306
- }
307
- /**
308
- * This method retrieves a paginated list of products. It sends a request to the
309
- * [List Products](https://docs.acmekit.com/api/admin#products_getproducts) API route.
310
- *
311
- * @param queryParams - Filters and pagination configurations.
312
- * @param headers - Headers to pass in the request.
313
- * @returns The paginated list of products.
314
- *
315
- * @example
316
- * To retrieve the list of products:
317
- *
318
- * ```ts
319
- * sdk.admin.product.list()
320
- * .then(({ products, count, limit, offset }) => {
321
- * console.log(products)
322
- * })
323
- * ```
324
- *
325
- * To configure the pagination, pass the `limit` and `offset` query parameters.
326
- *
327
- * For example, to retrieve only 10 items and skip 10 items:
328
- *
329
- * ```ts
330
- * sdk.admin.product.list({
331
- * limit: 10,
332
- * offset: 10
333
- * })
334
- * .then(({ products, count, limit, offset }) => {
335
- * console.log(products)
336
- * })
337
- * ```
338
- *
339
- * Using the `fields` query parameter, you can specify the fields and relations to retrieve
340
- * in each products:
341
- *
342
- * ```ts
343
- * sdk.admin.product.list({
344
- * fields: "id,*variants"
345
- * })
346
- * .then(({ products, count, limit, offset }) => {
347
- * console.log(products)
348
- * })
349
- * ```
350
- *
351
- * Learn more about the `fields` property in the [API reference](https://docs.acmekit.com/api/store#select-fields-and-relations).
352
- */
353
- async list(queryParams, headers) {
354
- return await this.client.fetch(`/admin/products`, {
355
- headers,
356
- query: queryParams,
357
- });
358
- }
359
- /**
360
- * This method retrieves a product by its ID. It sends a request to the
361
- * [Get Product](https://docs.acmekit.com/api/admin#products_getproductsid)
362
- * API route.
363
- *
364
- * @param id - The product's ID.
365
- * @param query - Configure the fields to retrieve in the product.
366
- * @param headers - Headers to pass in the request
367
- * @returns The product's details.
368
- *
369
- * @example
370
- * To retrieve a product by its ID:
371
- *
372
- * ```ts
373
- * sdk.admin.product.retrieve("prod_123")
374
- * .then(({ product }) => {
375
- * console.log(product)
376
- * })
377
- * ```
378
- *
379
- * To specify the fields and relations to retrieve:
380
- *
381
- * ```ts
382
- * sdk.admin.product.retrieve("prod_123", {
383
- * fields: "id,*variants"
384
- * })
385
- * .then(({ product }) => {
386
- * console.log(product)
387
- * })
388
- * ```
389
- *
390
- * Learn more about the `fields` property in the [API reference](https://docs.acmekit.com/api/store#select-fields-and-relations).
391
- */
392
- async retrieve(id, query, headers) {
393
- return await this.client.fetch(`/admin/products/${id}`, {
394
- query,
395
- headers,
396
- });
397
- }
398
- /**
399
- * This method deletes a product. It sends a request to the
400
- * [Delete Product](https://docs.acmekit.com/api/admin#products_deleteproductsid)
401
- * API route.
402
- *
403
- * @param id - The product's ID.
404
- * @param headers - Headers to pass in the request
405
- * @returns The deletion's details.
406
- *
407
- * @example
408
- * sdk.admin.product.delete("prod_123")
409
- * .then(({ deleted }) => {
410
- * console.log(deleted)
411
- * })
412
- */
413
- async delete(id, headers) {
414
- return await this.client.fetch(`/admin/products/${id}`, {
415
- method: "DELETE",
416
- headers,
417
- });
418
- }
419
- /**
420
- * This method manages the variants of a product. It sends a request to the
421
- * [Manage Variants](https://docs.acmekit.com/api/admin#products_postproductsidvariantsbatch)
422
- * API route.
423
- *
424
- * @param productId - The product's ID.
425
- * @param body - The variants to create, update, or delete.
426
- * @param query - Configure the fields to retrieve in the product variants.
427
- * @param headers - Headers to pass in the request
428
- * @returns The product variants' details.
429
- *
430
- * @example
431
- * sdk.admin.product.batchVariants("prod_123", {
432
- * create: [
433
- * {
434
- * title: "Blue Shirt",
435
- * options: {
436
- * Color: "Blue"
437
- * },
438
- * prices: []
439
- * }
440
- * ],
441
- * update: [
442
- * {
443
- * id: "variant_123",
444
- * title: "Pants"
445
- * }
446
- * ],
447
- * delete: ["variant_123"]
448
- * })
449
- * .then(({ created, updated, deleted }) => {
450
- * console.log(created, updated, deleted)
451
- * })
452
- */
453
- async batchVariants(productId, body, query, headers) {
454
- return await this.client.fetch(`/admin/products/${productId}/variants/batch`, {
455
- method: "POST",
456
- headers,
457
- body,
458
- query,
459
- });
460
- }
461
- /**
462
- * This method creates a variant for a product. It sends a request to the
463
- * [Create Variant](https://docs.acmekit.com/api/admin#products_postproductsidvariants)
464
- * API route.
465
- *
466
- * @param productId - The product's ID.
467
- * @param body - The variant's details.
468
- * @param query - Configure the fields to retrieve in the product.
469
- * @param headers - Headers to pass in the request
470
- * @returns The product's details.
471
- *
472
- * @example
473
- * sdk.admin.product.createVariant("prod_123", {
474
- * title: "Blue Shirt",
475
- * options: {
476
- * Color: "Blue"
477
- * },
478
- * prices: [
479
- * {
480
- * amount: 10,
481
- * currency_code: "usd"
482
- * }
483
- * ]
484
- * })
485
- * .then(({ product }) => {
486
- * console.log(product)
487
- * })
488
- */
489
- async createVariant(productId, body, query, headers) {
490
- return await this.client.fetch(`/admin/products/${productId}/variants`, {
491
- method: "POST",
492
- headers,
493
- body,
494
- query,
495
- });
496
- }
497
- /**
498
- * This method updates a variant of a product. It sends a request to the
499
- * [Update Variant](https://docs.acmekit.com/api/admin#products_postproductsidvariantsvariant_id)
500
- * API route.
501
- *
502
- * @param productId - The product's ID.
503
- * @param id - The variant's ID.
504
- * @param body - The data to update in the variant.
505
- * @param query - Configure the fields to retrieve in the product.
506
- * @param headers - Headers to pass in the request
507
- * @returns The product's details.
508
- *
509
- * @example
510
- * sdk.admin.product.updateVariant(
511
- * "prod_123",
512
- * "variant_123",
513
- * {
514
- * title: "Blue Shirt",
515
- * }
516
- * )
517
- * .then(({ product }) => {
518
- * console.log(product)
519
- * })
520
- */
521
- async updateVariant(productId, id, body, query, headers) {
522
- return await this.client.fetch(`/admin/products/${productId}/variants/${id}`, {
523
- method: "POST",
524
- headers,
525
- body,
526
- query,
527
- });
528
- }
529
- /**
530
- * This method retrieves a paginated list of products. It sends a request to the
531
- * [List Products](https://docs.acmekit.com/api/admin#products_getproductsidvariants) API route.
532
- *
533
- * @param productId - The ID of the product to retrieve its variants.
534
- * @param query - Filters and pagination configurations.
535
- * @param headers - Headers to pass in the request.
536
- * @returns The paginated list of product variants.
537
- *
538
- * @example
539
- * To retrieve the list of product variants:
540
- *
541
- * ```ts
542
- * sdk.admin.product.listVariants("prod_123")
543
- * .then(({ variants, count, limit, offset }) => {
544
- * console.log(variants)
545
- * })
546
- * ```
547
- *
548
- * To configure the pagination, pass the `limit` and `offset` query parameters.
549
- *
550
- * For example, to retrieve only 10 items and skip 10 items:
551
- *
552
- * ```ts
553
- * sdk.admin.product.listVariants("prod_123", {
554
- * limit: 10,
555
- * offset: 10
556
- * })
557
- * .then(({ variants, count, limit, offset }) => {
558
- * console.log(variants)
559
- * })
560
- * ```
561
- *
562
- * Using the `fields` query parameter, you can specify the fields and relations to retrieve
563
- * in each product variant:
564
- *
565
- * ```ts
566
- * sdk.admin.product.listVariants("prod_123", {
567
- * fields: "id,*product"
568
- * })
569
- * .then(({ variants, count, limit, offset }) => {
570
- * console.log(variants)
571
- * })
572
- * ```
573
- *
574
- * Learn more about the `fields` property in the [API reference](https://docs.acmekit.com/api/store#select-fields-and-relations).
575
- */
576
- async listVariants(productId, query, headers) {
577
- return await this.client.fetch(`/admin/products/${productId}/variants`, {
578
- headers,
579
- query,
580
- });
581
- }
582
- /**
583
- * This method retrieves a product's variant. It sends a request to the
584
- * [Retrieve Variant](https://docs.acmekit.com/api/admin#products_getproductsidvariantsvariant_id)
585
- * API route.
586
- *
587
- * @param productId - The product's ID.
588
- * @param id - The variant's ID.
589
- * @param query - Configure the fields to retrieve in the product variant.
590
- * @param headers - Headers to pass in the request
591
- * @returns The product variant's details.
592
- *
593
- * @example
594
- * To retrieve a product variant by its ID:
595
- *
596
- * ```ts
597
- * sdk.admin.product.retrieveVariant(
598
- * "prod_123",
599
- * "variant_123"
600
- * )
601
- * .then(({ variant }) => {
602
- * console.log(variant)
603
- * })
604
- * ```
605
- *
606
- * To specify the fields and relations to retrieve:
607
- *
608
- * ```ts
609
- * sdk.admin.product.retrieveVariant(
610
- * "prod_123",
611
- * "variant_123",
612
- * {
613
- * fields: "id, *product"
614
- * }
615
- * )
616
- * .then(({ variant }) => {
617
- * console.log(variant)
618
- * })
619
- * ```
620
- *
621
- * Learn more about the `fields` property in the [API reference](https://docs.acmekit.com/api/store#select-fields-and-relations).
622
- */
623
- async retrieveVariant(productId, id, query, headers) {
624
- return await this.client.fetch(`/admin/products/${productId}/variants/${id}`, {
625
- query,
626
- headers,
627
- });
628
- }
629
- /**
630
- * This method deletes a product's variant. It sends a request to the
631
- * [Delete Variant](https://docs.acmekit.com/api/admin#products_deleteproductsidvariantsvariant_id)
632
- * API route.
633
- *
634
- * @param productId - The product's ID.
635
- * @param id - The ID of the variant.
636
- * @param headers - Headers to pass in the request
637
- * @returns The deletion's details.
638
- *
639
- * @example
640
- * sdk.admin.product.deleteVariant("prod_123", "variant_123")
641
- * .then(({ deleted }) => {
642
- * console.log(deleted)
643
- * })
644
- */
645
- async deleteVariant(productId, id, headers) {
646
- return await this.client.fetch(`/admin/products/${productId}/variants/${id}`, {
647
- method: "DELETE",
648
- headers,
649
- });
650
- }
651
- /**
652
- * This method manages a product's variant's inventories to associate them with inventory items,
653
- * update their inventory items, or delete their association with inventory items.
654
- *
655
- * It sends a request to the
656
- * [Manage Variant Inventory](https://docs.acmekit.com/api/admin#products_postproductsidvariantsinventoryitemsbatch)
657
- * API route.
658
- *
659
- * @param productId - The ID of the product that the variant belongs to.
660
- * @param body - The inventory items to create, update, or delete.
661
- * @param query - Pass query parameters in the request.
662
- * @param headers - Headers to pass in the request
663
- * @returns The details of the created, updated, or deleted inventory items.
664
- *
665
- * @example
666
- * sdk.admin.product.batchVariantInventoryItems(
667
- * "prod_123",
668
- * {
669
- * create: [
670
- * {
671
- * inventory_item_id: "iitem_123",
672
- * variant_id: "variant_123",
673
- * required_quantity: 10
674
- * }
675
- * ],
676
- * update: [
677
- * {
678
- * inventory_item_id: "iitem_1234",
679
- * variant_id: "variant_1234",
680
- * required_quantity: 20
681
- * }
682
- * ],
683
- * delete: [
684
- * {
685
- * inventory_item_id: "iitem_321",
686
- * variant_id: "variant_321"
687
- * }
688
- * ]
689
- * }
690
- * )
691
- * .then(({ created, updated, deleted }) => {
692
- * console.log(created, updated, deleted)
693
- * })
694
- */
695
- async batchVariantInventoryItems(productId, body, query, headers) {
696
- return await this.client.fetch(`/admin/products/${productId}/variants/inventory-items/batch`, {
697
- method: "POST",
698
- headers,
699
- body,
700
- query,
701
- });
702
- }
703
- /**
704
- * This method creates an option in a product. It sends a request to the
705
- * [Create Option](https://docs.acmekit.com/api/admin#products_postproductsidoptions)
706
- * API route.
707
- *
708
- * @param productId - The product's ID.
709
- * @param body - The option's details.
710
- * @param query - Configure the fields to retrieve in the product.
711
- * @param headers - Headers to pass in the request
712
- * @returns The product's details.
713
- *
714
- * @example
715
- * sdk.admin.product.createOption(
716
- * "prod_123",
717
- * {
718
- * title: "Color",
719
- * values: ["Green", "Blue"]
720
- * }
721
- * )
722
- * .then(({ product }) => {
723
- * console.log(product)
724
- * })
725
- */
726
- async createOption(productId, body, query, headers) {
727
- return await this.client.fetch(`/admin/products/${productId}/options`, {
728
- method: "POST",
729
- headers,
730
- body,
731
- query,
732
- });
733
- }
734
- /**
735
- * This method updates a product's option. It sends a request to the
736
- * [Update Option](https://docs.acmekit.com/api/admin#products_postproductsidoptionsoption_id)
737
- * API route.
738
- *
739
- * @param productId - The product's ID.
740
- * @param id - The ID of the option to update.
741
- * @param body - The data to update in the option.
742
- * @param query - Configure the fields to retrieve in the product.
743
- * @param headers - Headers to pass in the request
744
- * @returns The product's details.
745
- *
746
- * @example
747
- * sdk.admin.product.updateOption(
748
- * "prod_123",
749
- * "prodopt_123",
750
- * {
751
- * title: "Color"
752
- * }
753
- * )
754
- * .then(({ product }) => {
755
- * console.log(product)
756
- * })
757
- */
758
- async updateOption(productId, id, body, query, headers) {
759
- return await this.client.fetch(`/admin/products/${productId}/options/${id}`, {
760
- method: "POST",
761
- headers,
762
- body,
763
- query,
764
- });
765
- }
766
- /**
767
- * This method retrieves a paginated list of product options. It sends a request to the
768
- * [List Options](https://docs.acmekit.com/api/admin#products_getproductsidoptions) API route.
769
- *
770
- * @param productId - The ID of the product to retrieve its options
771
- * @param query - Filters and pagination configurations.
772
- * @param headers - Headers to pass in the request.
773
- * @returns The paginated list of product options.
774
- *
775
- * @example
776
- * To retrieve the list of product options:
777
- *
778
- * ```ts
779
- * sdk.admin.product.listOptions("prod_123")
780
- * .then(({ product_options, count, limit, offset }) => {
781
- * console.log(product_options)
782
- * })
783
- * ```
784
- *
785
- * To configure the pagination, pass the `limit` and `offset` query parameters.
786
- *
787
- * For example, to retrieve only 10 items and skip 10 items:
788
- *
789
- * ```ts
790
- * sdk.admin.product.listOptions("prod_123", {
791
- * limit: 10,
792
- * offset: 10
793
- * })
794
- * .then(({ product_options, count, limit, offset }) => {
795
- * console.log(product_options)
796
- * })
797
- * ```
798
- *
799
- * Using the `fields` query parameter, you can specify the fields and relations to retrieve
800
- * in each product options:
801
- *
802
- * ```ts
803
- * sdk.admin.product.listOptions("prod_123", {
804
- * fields: "id,title"
805
- * })
806
- * .then(({ product_options, count, limit, offset }) => {
807
- * console.log(product_options)
808
- * })
809
- * ```
810
- *
811
- * Learn more about the `fields` property in the [API reference](https://docs.acmekit.com/api/store#select-fields-and-relations).
812
- */
813
- async listOptions(productId, query, headers) {
814
- return await this.client.fetch(`/admin/products/${productId}/options`, {
815
- headers,
816
- query,
817
- });
818
- }
819
- /**
820
- * This method retrieves a product's option. It sends a request to the
821
- * [Get Option](https://docs.acmekit.com/api/admin#products_getproductsidoptionsoption_id)
822
- * API route.
823
- *
824
- * @param productId - The product's ID.
825
- * @param id - The product option's ID.
826
- * @param query - Configure the fields to retrieve in the product option.
827
- * @param headers - Headers to pass in the request
828
- * @returns The product option's details.
829
- *
830
- * @example
831
- * To retrieve a product option by its ID:
832
- *
833
- * ```ts
834
- * sdk.admin.product.retrieveOption(
835
- * "prod_123",
836
- * "prodopt_123"
837
- * )
838
- * .then(({ product_option }) => {
839
- * console.log(product_option)
840
- * })
841
- * ```
842
- *
843
- * To specify the fields and relations to retrieve:
844
- *
845
- * ```ts
846
- * sdk.admin.product.retrieveOption(
847
- * "prod_123",
848
- * "prodopt_123",
849
- * {
850
- * fields: "id,title"
851
- * }
852
- * )
853
- * .then(({ product_option }) => {
854
- * console.log(product_option)
855
- * })
856
- * ```
857
- *
858
- * Learn more about the `fields` property in the [API reference](https://docs.acmekit.com/api/store#select-fields-and-relations).
859
- */
860
- async retrieveOption(productId, id, query, headers) {
861
- return await this.client.fetch(`/admin/products/${productId}/options/${id}`, {
862
- query,
863
- headers,
864
- });
865
- }
866
- /**
867
- * This method deletes a product's option. It sends a request to the
868
- * [Delete Option](https://docs.acmekit.com/api/admin#products_deleteproductsidoptionsoption_id)
869
- * API route.
870
- *
871
- * @param productId - The product's ID.
872
- * @param id - The option's ID.
873
- * @param headers - Headers to pass in the request
874
- * @returns The deletion's details.
875
- *
876
- * @example
877
- * sdk.admin.product.deleteOption("prod_123", "prodopt_123")
878
- * .then(({ deleted }) => {
879
- * console.log(deleted)
880
- * })
881
- */
882
- async deleteOption(productId, id, headers) {
883
- return await this.client.fetch(`/admin/products/${productId}/options/${id}`, {
884
- method: "DELETE",
885
- headers,
886
- });
887
- }
888
- /**
889
- * This method manages image-variant associations for a specific image. It sends a request to the
890
- * [Batch Image Variants](https://docs.acmekit.com/api/admin#products_postproductsidimagesimage_idvariantsbatch)
891
- * API route.
892
- *
893
- * @since 2.11.2
894
- *
895
- * @param productId - The product's ID.
896
- * @param imageId - The image's ID.
897
- * @param body - The variants to add or remove from the image.
898
- * @param headers - Headers to pass in the request
899
- * @returns The batch operation details.
900
- *
901
- * @example
902
- * sdk.admin.product.batchImageVariants("prod_123", "img_123", {
903
- * add: ["variant_123", "variant_456"],
904
- * remove: ["variant_789"]
905
- * })
906
- * .then(({ added, removed }) => {
907
- * console.log(added, removed)
908
- * })
909
- */
910
- async batchImageVariants(productId, imageId, body, headers) {
911
- return await this.client.fetch(`/admin/products/${productId}/images/${imageId}/variants/batch`, {
912
- method: "POST",
913
- headers,
914
- body,
915
- });
916
- }
917
- /**
918
- * This method manages variant-image associations for a specific variant. It sends a request to the
919
- * [Batch Variant Images](https://docs.acmekit.com/api/admin#products_postproductsidvariantsvariant_idimagesbatch)
920
- * API route.
921
- *
922
- * @since 2.11.2
923
- *
924
- * @param productId - The product's ID.
925
- * @param variantId - The variant's ID.
926
- * @param body - The images to add or remove from the variant.
927
- * @param headers - Headers to pass in the request
928
- * @returns The batch operation details.
929
- *
930
- * @example
931
- * sdk.admin.product.batchVariantImages("prod_123", "variant_123", {
932
- * add: ["img_123", "img_456"],
933
- * remove: ["img_789"]
934
- * })
935
- * .then(({ added, removed }) => {
936
- * console.log(added, removed)
937
- * })
938
- */
939
- async batchVariantImages(productId, variantId, body, headers) {
940
- return await this.client.fetch(`/admin/products/${productId}/variants/${variantId}/images/batch`, {
941
- method: "POST",
942
- headers,
943
- body,
944
- });
945
- }
946
- }
947
- exports.Product = Product;
948
- //# sourceMappingURL=product.js.map