@shushed/helpers 0.0.202 → 0.0.203-bug-erp-770-20251208112219

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 (290) hide show
  1. package/dist/index.d.ts +34970 -0
  2. package/dist/index.js +113321 -0
  3. package/dist/package.json +3 -6
  4. package/package.json +4 -7
  5. package/dist/cjs/contracts/asset.schema.json +0 -78
  6. package/dist/cjs/contracts/category.schema.json +0 -86
  7. package/dist/cjs/contracts/country.schema.json +0 -258
  8. package/dist/cjs/contracts/currency.schema.json +0 -177
  9. package/dist/cjs/contracts/customer-segment.schema.json +0 -32
  10. package/dist/cjs/contracts/development-colour.schema.json +0 -97
  11. package/dist/cjs/contracts/index.js +0 -48
  12. package/dist/cjs/contracts/marketing-preferences.schema.json +0 -41
  13. package/dist/cjs/contracts/messages/ean-change.schema.json +0 -22
  14. package/dist/cjs/contracts/messages/index.js +0 -29
  15. package/dist/cjs/contracts/messages/order/delivered.schema.json +0 -26
  16. package/dist/cjs/contracts/messages/order/index.js +0 -18
  17. package/dist/cjs/contracts/messages/order/new.schema.json +0 -32
  18. package/dist/cjs/contracts/messages/order/processed.schema.json +0 -15
  19. package/dist/cjs/contracts/messages/order/return-initiated.schema.json +0 -26
  20. package/dist/cjs/contracts/messages/order/returned.schema.json +0 -25
  21. package/dist/cjs/contracts/messages/order/shipped.schema.json +0 -26
  22. package/dist/cjs/contracts/messages/product-category.schema.json +0 -21
  23. package/dist/cjs/contracts/messages/product-draft.schema.json +0 -66
  24. package/dist/cjs/contracts/messages/product.schema.json +0 -29
  25. package/dist/cjs/contracts/money.schema.json +0 -54
  26. package/dist/cjs/contracts/order/address.schema.json +0 -127
  27. package/dist/cjs/contracts/order/customer.schema.json +0 -149
  28. package/dist/cjs/contracts/order/index.js +0 -31
  29. package/dist/cjs/contracts/order/item.schema.json +0 -98
  30. package/dist/cjs/contracts/order/payment.schema.json +0 -115
  31. package/dist/cjs/contracts/order/shipment/index.js +0 -29
  32. package/dist/cjs/contracts/order/shipment/item/index.js +0 -8
  33. package/dist/cjs/contracts/order/shipment/item/returned.schema.json +0 -30
  34. package/dist/cjs/contracts/order/shipment/item.schema.json +0 -22
  35. package/dist/cjs/contracts/order/shipment/pos/index.js +0 -10
  36. package/dist/cjs/contracts/order/shipment/pos/outbound.schema.json +0 -37
  37. package/dist/cjs/contracts/order/shipment/pos/return.schema.json +0 -31
  38. package/dist/cjs/contracts/order/shipment/pos.schema.json +0 -48
  39. package/dist/cjs/contracts/order/shipment/shipped/index.js +0 -10
  40. package/dist/cjs/contracts/order/shipment/shipped/outbound.schema.json +0 -34
  41. package/dist/cjs/contracts/order/shipment/shipped/return.schema.json +0 -43
  42. package/dist/cjs/contracts/order/shipment/shipped.schema.json +0 -52
  43. package/dist/cjs/contracts/order/shipment.schema.json +0 -58
  44. package/dist/cjs/contracts/order.schema.json +0 -231
  45. package/dist/cjs/contracts/product-category.schema.json +0 -34
  46. package/dist/cjs/contracts/product-draft.schema.json +0 -782
  47. package/dist/cjs/contracts/product.schema.json +0 -816
  48. package/dist/cjs/contracts/total.schema.json +0 -41
  49. package/dist/cjs/dist-dereferenced/asset.js +0 -4
  50. package/dist/cjs/dist-dereferenced/category.js +0 -4
  51. package/dist/cjs/dist-dereferenced/country.js +0 -4
  52. package/dist/cjs/dist-dereferenced/currency.js +0 -4
  53. package/dist/cjs/dist-dereferenced/customer-segment.js +0 -4
  54. package/dist/cjs/dist-dereferenced/development-colour.js +0 -4
  55. package/dist/cjs/dist-dereferenced/index.js +0 -69
  56. package/dist/cjs/dist-dereferenced/marketing-preferences.js +0 -4
  57. package/dist/cjs/dist-dereferenced/messages/ean-change.js +0 -4
  58. package/dist/cjs/dist-dereferenced/messages/index.js +0 -50
  59. package/dist/cjs/dist-dereferenced/messages/order/delivered.js +0 -4
  60. package/dist/cjs/dist-dereferenced/messages/order/index.js +0 -18
  61. package/dist/cjs/dist-dereferenced/messages/order/new.js +0 -4
  62. package/dist/cjs/dist-dereferenced/messages/order/processed.js +0 -4
  63. package/dist/cjs/dist-dereferenced/messages/order/return-initiated.js +0 -4
  64. package/dist/cjs/dist-dereferenced/messages/order/returned.js +0 -4
  65. package/dist/cjs/dist-dereferenced/messages/order/shipped.js +0 -4
  66. package/dist/cjs/dist-dereferenced/messages/price-change.js +0 -4
  67. package/dist/cjs/dist-dereferenced/messages/product-category.js +0 -4
  68. package/dist/cjs/dist-dereferenced/messages/product-draft.js +0 -4
  69. package/dist/cjs/dist-dereferenced/messages/product.js +0 -4
  70. package/dist/cjs/dist-dereferenced/money.js +0 -4
  71. package/dist/cjs/dist-dereferenced/order/address.js +0 -4
  72. package/dist/cjs/dist-dereferenced/order/customer.js +0 -4
  73. package/dist/cjs/dist-dereferenced/order/index.js +0 -51
  74. package/dist/cjs/dist-dereferenced/order/item.js +0 -4
  75. package/dist/cjs/dist-dereferenced/order/orderMain.js +0 -4
  76. package/dist/cjs/dist-dereferenced/order/payment.js +0 -4
  77. package/dist/cjs/dist-dereferenced/order/shipment/index.js +0 -45
  78. package/dist/cjs/dist-dereferenced/order/shipment/item/index.js +0 -11
  79. package/dist/cjs/dist-dereferenced/order/shipment/item/itemMain.js +0 -4
  80. package/dist/cjs/dist-dereferenced/order/shipment/item/returned.js +0 -4
  81. package/dist/cjs/dist-dereferenced/order/shipment/pos/index.js +0 -13
  82. package/dist/cjs/dist-dereferenced/order/shipment/pos/outbound.js +0 -4
  83. package/dist/cjs/dist-dereferenced/order/shipment/pos/posMain.js +0 -4
  84. package/dist/cjs/dist-dereferenced/order/shipment/pos/return.js +0 -4
  85. package/dist/cjs/dist-dereferenced/order/shipment/shipmentMain.js +0 -4
  86. package/dist/cjs/dist-dereferenced/order/shipment/shipped/index.js +0 -13
  87. package/dist/cjs/dist-dereferenced/order/shipment/shipped/outbound.js +0 -4
  88. package/dist/cjs/dist-dereferenced/order/shipment/shipped/return.js +0 -4
  89. package/dist/cjs/dist-dereferenced/order/shipment/shipped/shippedMain.js +0 -4
  90. package/dist/cjs/dist-dereferenced/price.js +0 -4
  91. package/dist/cjs/dist-dereferenced/product-category.js +0 -4
  92. package/dist/cjs/dist-dereferenced/product-draft.js +0 -4
  93. package/dist/cjs/dist-dereferenced/product.js +0 -4
  94. package/dist/cjs/dist-dereferenced/stock.js +0 -4
  95. package/dist/cjs/dist-dereferenced/total.js +0 -4
  96. package/dist/cjs/dist-types/asset.js +0 -2
  97. package/dist/cjs/dist-types/category.js +0 -2
  98. package/dist/cjs/dist-types/country.js +0 -2
  99. package/dist/cjs/dist-types/currency.js +0 -2
  100. package/dist/cjs/dist-types/customer-segment.js +0 -2
  101. package/dist/cjs/dist-types/development-colour.js +0 -2
  102. package/dist/cjs/dist-types/index.js +0 -38
  103. package/dist/cjs/dist-types/marketing-preferences.js +0 -2
  104. package/dist/cjs/dist-types/messages/ean-change.js +0 -2
  105. package/dist/cjs/dist-types/messages/index.js +0 -37
  106. package/dist/cjs/dist-types/messages/order/delivered.js +0 -2
  107. package/dist/cjs/dist-types/messages/order/index.js +0 -2
  108. package/dist/cjs/dist-types/messages/order/new.js +0 -2
  109. package/dist/cjs/dist-types/messages/order/processed.js +0 -2
  110. package/dist/cjs/dist-types/messages/order/return-initiated.js +0 -2
  111. package/dist/cjs/dist-types/messages/order/returned.js +0 -2
  112. package/dist/cjs/dist-types/messages/order/shipped.js +0 -2
  113. package/dist/cjs/dist-types/messages/price-change.js +0 -2
  114. package/dist/cjs/dist-types/messages/product-category.js +0 -2
  115. package/dist/cjs/dist-types/messages/product-draft.js +0 -2
  116. package/dist/cjs/dist-types/messages/product.js +0 -2
  117. package/dist/cjs/dist-types/money.js +0 -2
  118. package/dist/cjs/dist-types/order/address.js +0 -2
  119. package/dist/cjs/dist-types/order/customer.js +0 -2
  120. package/dist/cjs/dist-types/order/index.js +0 -37
  121. package/dist/cjs/dist-types/order/item.js +0 -2
  122. package/dist/cjs/dist-types/order/orderMain.js +0 -2
  123. package/dist/cjs/dist-types/order/payment.js +0 -2
  124. package/dist/cjs/dist-types/order/shipment/index.js +0 -39
  125. package/dist/cjs/dist-types/order/shipment/item/index.js +0 -2
  126. package/dist/cjs/dist-types/order/shipment/item/itemMain.js +0 -2
  127. package/dist/cjs/dist-types/order/shipment/item/returned.js +0 -2
  128. package/dist/cjs/dist-types/order/shipment/pos/index.js +0 -2
  129. package/dist/cjs/dist-types/order/shipment/pos/outbound.js +0 -2
  130. package/dist/cjs/dist-types/order/shipment/pos/posMain.js +0 -2
  131. package/dist/cjs/dist-types/order/shipment/pos/return.js +0 -2
  132. package/dist/cjs/dist-types/order/shipment/shipmentMain.js +0 -2
  133. package/dist/cjs/dist-types/order/shipment/shipped/index.js +0 -2
  134. package/dist/cjs/dist-types/order/shipment/shipped/outbound.js +0 -2
  135. package/dist/cjs/dist-types/order/shipment/shipped/return.js +0 -2
  136. package/dist/cjs/dist-types/order/shipment/shipped/shippedMain.js +0 -2
  137. package/dist/cjs/dist-types/price.js +0 -2
  138. package/dist/cjs/dist-types/product-category.js +0 -2
  139. package/dist/cjs/dist-types/product-draft.js +0 -2
  140. package/dist/cjs/dist-types/product.js +0 -2
  141. package/dist/cjs/dist-types/stock.js +0 -2
  142. package/dist/cjs/dist-types/total.js +0 -2
  143. package/dist/cjs/index.js +0 -39
  144. package/dist/cjs/src-public/airtable.js +0 -625
  145. package/dist/cjs/src-public/bcOrder.js +0 -943
  146. package/dist/cjs/src-public/bigquery.js +0 -59
  147. package/dist/cjs/src-public/centra.js +0 -1053
  148. package/dist/cjs/src-public/cloudtasks.js +0 -207
  149. package/dist/cjs/src-public/dato.js +0 -403
  150. package/dist/cjs/src-public/env.js +0 -900
  151. package/dist/cjs/src-public/getEventTime.js +0 -28
  152. package/dist/cjs/src-public/index.js +0 -54
  153. package/dist/cjs/src-public/ipValidation.js +0 -167
  154. package/dist/cjs/src-public/jwks.js +0 -108
  155. package/dist/cjs/src-public/pubsub.js +0 -423
  156. package/dist/cjs/src-public/rateLimit.js +0 -140
  157. package/dist/cjs/src-public/redisClient.js +0 -44
  158. package/dist/cjs/src-public/runtime.js +0 -145
  159. package/dist/cjs/src-public/sanitize.js +0 -25
  160. package/dist/cjs/src-public/scheduler.js +0 -247
  161. package/dist/cjs/src-public/secret.js +0 -16
  162. package/dist/cjs/src-public/setHeaders.js +0 -16
  163. package/dist/cjs/src-public/types.js +0 -2
  164. package/dist/cjs/src-public/utils.js +0 -457
  165. package/dist/cjs/src-public/validate.js +0 -74
  166. package/dist/types/contracts/index.d.ts +0 -15
  167. package/dist/types/contracts/messages/index.d.ts +0 -5
  168. package/dist/types/contracts/messages/order/index.d.ts +0 -6
  169. package/dist/types/contracts/order/index.d.ts +0 -6
  170. package/dist/types/contracts/order/shipment/index.d.ts +0 -6
  171. package/dist/types/contracts/order/shipment/item/index.d.ts +0 -1
  172. package/dist/types/contracts/order/shipment/pos/index.d.ts +0 -2
  173. package/dist/types/contracts/order/shipment/shipped/index.d.ts +0 -2
  174. package/dist/types/dist-dereferenced/asset.d.ts +0 -51
  175. package/dist/types/dist-dereferenced/category.d.ts +0 -58
  176. package/dist/types/dist-dereferenced/country.d.ts +0 -8
  177. package/dist/types/dist-dereferenced/currency.d.ts +0 -8
  178. package/dist/types/dist-dereferenced/customer-segment.d.ts +0 -26
  179. package/dist/types/dist-dereferenced/development-colour.d.ts +0 -114
  180. package/dist/types/dist-dereferenced/index.d.ts +0 -16
  181. package/dist/types/dist-dereferenced/marketing-preferences.d.ts +0 -31
  182. package/dist/types/dist-dereferenced/messages/ean-change.d.ts +0 -17
  183. package/dist/types/dist-dereferenced/messages/index.d.ts +0 -6
  184. package/dist/types/dist-dereferenced/messages/order/delivered.d.ts +0 -3438
  185. package/dist/types/dist-dereferenced/messages/order/index.d.ts +0 -6
  186. package/dist/types/dist-dereferenced/messages/order/new.d.ts +0 -3438
  187. package/dist/types/dist-dereferenced/messages/order/processed.d.ts +0 -3432
  188. package/dist/types/dist-dereferenced/messages/order/return-initiated.d.ts +0 -3438
  189. package/dist/types/dist-dereferenced/messages/order/returned.d.ts +0 -3437
  190. package/dist/types/dist-dereferenced/messages/order/shipped.d.ts +0 -3436
  191. package/dist/types/dist-dereferenced/messages/price-change.d.ts +0 -67
  192. package/dist/types/dist-dereferenced/messages/product-category.d.ts +0 -33
  193. package/dist/types/dist-dereferenced/messages/product-draft.d.ts +0 -589
  194. package/dist/types/dist-dereferenced/messages/product.d.ts +0 -628
  195. package/dist/types/dist-dereferenced/money.d.ts +0 -41
  196. package/dist/types/dist-dereferenced/order/address.d.ts +0 -98
  197. package/dist/types/dist-dereferenced/order/customer.d.ts +0 -312
  198. package/dist/types/dist-dereferenced/order/index.d.ts +0 -3428
  199. package/dist/types/dist-dereferenced/order/item.d.ts +0 -339
  200. package/dist/types/dist-dereferenced/order/orderMain.d.ts +0 -3423
  201. package/dist/types/dist-dereferenced/order/payment.d.ts +0 -110
  202. package/dist/types/dist-dereferenced/order/shipment/index.d.ts +0 -253
  203. package/dist/types/dist-dereferenced/order/shipment/item/index.d.ts +0 -19
  204. package/dist/types/dist-dereferenced/order/shipment/item/itemMain.d.ts +0 -18
  205. package/dist/types/dist-dereferenced/order/shipment/item/returned.d.ts +0 -34
  206. package/dist/types/dist-dereferenced/order/shipment/pos/index.d.ts +0 -282
  207. package/dist/types/dist-dereferenced/order/shipment/pos/outbound.d.ts +0 -319
  208. package/dist/types/dist-dereferenced/order/shipment/pos/posMain.d.ts +0 -280
  209. package/dist/types/dist-dereferenced/order/shipment/pos/return.d.ts +0 -330
  210. package/dist/types/dist-dereferenced/order/shipment/shipmentMain.d.ts +0 -250
  211. package/dist/types/dist-dereferenced/order/shipment/shipped/index.d.ts +0 -288
  212. package/dist/types/dist-dereferenced/order/shipment/shipped/outbound.d.ts +0 -286
  213. package/dist/types/dist-dereferenced/order/shipment/shipped/return.d.ts +0 -287
  214. package/dist/types/dist-dereferenced/order/shipment/shipped/shippedMain.d.ts +0 -286
  215. package/dist/types/dist-dereferenced/price.d.ts +0 -58
  216. package/dist/types/dist-dereferenced/product-category.d.ts +0 -24
  217. package/dist/types/dist-dereferenced/product-draft.d.ts +0 -580
  218. package/dist/types/dist-dereferenced/product.d.ts +0 -619
  219. package/dist/types/dist-dereferenced/stock.d.ts +0 -74
  220. package/dist/types/dist-dereferenced/total.d.ts +0 -172
  221. package/dist/types/dist-types/asset.d.ts +0 -16
  222. package/dist/types/dist-types/category.d.ts +0 -20
  223. package/dist/types/dist-types/country.d.ts +0 -2
  224. package/dist/types/dist-types/currency.d.ts +0 -2
  225. package/dist/types/dist-types/customer-segment.d.ts +0 -6
  226. package/dist/types/dist-types/development-colour.d.ts +0 -31
  227. package/dist/types/dist-types/index.d.ts +0 -16
  228. package/dist/types/dist-types/marketing-preferences.d.ts +0 -9
  229. package/dist/types/dist-types/messages/ean-change.d.ts +0 -5
  230. package/dist/types/dist-types/messages/index.d.ts +0 -6
  231. package/dist/types/dist-types/messages/order/delivered.d.ts +0 -300
  232. package/dist/types/dist-types/messages/order/index.d.ts +0 -6
  233. package/dist/types/dist-types/messages/order/new.d.ts +0 -300
  234. package/dist/types/dist-types/messages/order/processed.d.ts +0 -300
  235. package/dist/types/dist-types/messages/order/return-initiated.d.ts +0 -300
  236. package/dist/types/dist-types/messages/order/returned.d.ts +0 -301
  237. package/dist/types/dist-types/messages/order/shipped.d.ts +0 -301
  238. package/dist/types/dist-types/messages/price-change.d.ts +0 -16
  239. package/dist/types/dist-types/messages/product-category.d.ts +0 -7
  240. package/dist/types/dist-types/messages/product-draft.d.ts +0 -136
  241. package/dist/types/dist-types/messages/product.d.ts +0 -144
  242. package/dist/types/dist-types/money.d.ts +0 -11
  243. package/dist/types/dist-types/order/address.d.ts +0 -27
  244. package/dist/types/dist-types/order/customer.d.ts +0 -82
  245. package/dist/types/dist-types/order/index.d.ts +0 -8
  246. package/dist/types/dist-types/order/item.d.ts +0 -86
  247. package/dist/types/dist-types/order/orderMain.d.ts +0 -297
  248. package/dist/types/dist-types/order/payment.d.ts +0 -30
  249. package/dist/types/dist-types/order/shipment/index.d.ts +0 -6
  250. package/dist/types/dist-types/order/shipment/item/index.d.ts +0 -4
  251. package/dist/types/dist-types/order/shipment/item/itemMain.d.ts +0 -6
  252. package/dist/types/dist-types/order/shipment/item/returned.d.ts +0 -11
  253. package/dist/types/dist-types/order/shipment/pos/index.d.ts +0 -5
  254. package/dist/types/dist-types/order/shipment/pos/outbound.d.ts +0 -76
  255. package/dist/types/dist-types/order/shipment/pos/posMain.d.ts +0 -71
  256. package/dist/types/dist-types/order/shipment/pos/return.d.ts +0 -75
  257. package/dist/types/dist-types/order/shipment/shipmentMain.d.ts +0 -62
  258. package/dist/types/dist-types/order/shipment/shipped/index.d.ts +0 -5
  259. package/dist/types/dist-types/order/shipment/shipped/outbound.d.ts +0 -68
  260. package/dist/types/dist-types/order/shipment/shipped/return.d.ts +0 -68
  261. package/dist/types/dist-types/order/shipment/shipped/shippedMain.d.ts +0 -69
  262. package/dist/types/dist-types/price.d.ts +0 -15
  263. package/dist/types/dist-types/product-category.d.ts +0 -6
  264. package/dist/types/dist-types/product-draft.d.ts +0 -135
  265. package/dist/types/dist-types/product.d.ts +0 -143
  266. package/dist/types/dist-types/stock.d.ts +0 -19
  267. package/dist/types/dist-types/total.d.ts +0 -44
  268. package/dist/types/index.d.ts +0 -3
  269. package/dist/types/src-public/airtable.d.ts +0 -227
  270. package/dist/types/src-public/bcOrder.d.ts +0 -84
  271. package/dist/types/src-public/bigquery.d.ts +0 -17
  272. package/dist/types/src-public/centra.d.ts +0 -176
  273. package/dist/types/src-public/cloudtasks.d.ts +0 -74
  274. package/dist/types/src-public/dato.d.ts +0 -62
  275. package/dist/types/src-public/env.d.ts +0 -144
  276. package/dist/types/src-public/getEventTime.d.ts +0 -1
  277. package/dist/types/src-public/index.d.ts +0 -19
  278. package/dist/types/src-public/ipValidation.d.ts +0 -15
  279. package/dist/types/src-public/jwks.d.ts +0 -15
  280. package/dist/types/src-public/pubsub.d.ts +0 -95
  281. package/dist/types/src-public/rateLimit.d.ts +0 -21
  282. package/dist/types/src-public/redisClient.d.ts +0 -6
  283. package/dist/types/src-public/runtime.d.ts +0 -58
  284. package/dist/types/src-public/sanitize.d.ts +0 -4
  285. package/dist/types/src-public/scheduler.d.ts +0 -71
  286. package/dist/types/src-public/secret.d.ts +0 -6
  287. package/dist/types/src-public/setHeaders.d.ts +0 -13
  288. package/dist/types/src-public/types.d.ts +0 -264
  289. package/dist/types/src-public/utils.d.ts +0 -101
  290. package/dist/types/src-public/validate.d.ts +0 -9
@@ -1,816 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "title": "Product",
4
- "$id": "https://shushed.example.com/product.schema.json",
5
- "additionalProperties": false,
6
- "type": "object",
7
- "properties": {
8
- "product_id": {
9
- "type": "string",
10
- "description": "Colour & Style ID combination seperated by a dash - Example: 000004-2763 "
11
- },
12
- "slug": {
13
- "type": [
14
- "string"
15
- ],
16
- "description": "URI of the product eg. leather-jack-barrel-trousers-chocolate-brown/013464-0533.html"
17
- },
18
- "style_slug": {
19
- "type": [
20
- "string"
21
- ],
22
- "description": "URI of the style eg. leather-jack-barrel-trousers/013464.html"
23
- },
24
- "style_id": {
25
- "type": [
26
- "string"
27
- ],
28
- "faker": {
29
- "custom.style": []
30
- },
31
- "description": "Parent style_id - Example: 000697"
32
- },
33
- "colour_id": {
34
- "type": "string",
35
- "description": "ID of the colour inside the colour library. Part of the product ID (for the 000697-3203 it would be 3203). Warning! The id dos not link to a single generally-understood colour. I.e. leopard print has ~40 different colour ids. Instead it links to SPECIFIC leopard print ordered for this specific material (specific shared of Navy Dusk Blue etc.)"
36
- },
37
- "style_name": {
38
- "type": "string",
39
- "description": "Style Name - Example: Puff Sleeve Sweatshirt"
40
- },
41
- "product_name": {
42
- "type": "string",
43
- "description": "Product Name - Example: Puff Sleeve Sweatshirt (Blue)"
44
- },
45
- "display_name": {
46
- "type": [
47
- "string",
48
- "null"
49
- ],
50
- "description": "Centra Name - Example: Brown Puff Shirt"
51
- },
52
- "buffer_quantity": {
53
- "type": "integer",
54
- "minimum": 0,
55
- "description": "Quantity of product we keep on hand to guard against unforseen fluctuations in demand/supply"
56
- },
57
- "display_type": {
58
- "description": "Change of how product is represented in the website. Example [{ channel: \"DIRECT-UK\", display_type: \"Out-of-stock\" }]. By default all products will have default display_type available",
59
- "type": "string",
60
- "enum": [
61
- "Out-of-stock",
62
- "Permanently-unavailable"
63
- ]
64
- },
65
- "available_to_sell_from": {
66
- "type": [
67
- "string",
68
- "null"
69
- ],
70
- "format": "date",
71
- "description": "The Date (inclusive) from which the product should be available to sell. The string should be used for pre-orders, or product release dates. For the latter, the date should be coordinated with online_from"
72
- },
73
- "online_from": {
74
- "type": [
75
- "string",
76
- "null"
77
- ],
78
- "format": "date-time",
79
- "description": "The DateTime (inclusive) from which the product should be shown (in any way / design / display type) on the website (direct channel). Every online product should have a date, default to 1970-01-01T00:00:00.000Z"
80
- },
81
- "online_to": {
82
- "type": [
83
- "string",
84
- "null"
85
- ],
86
- "format": "date-time",
87
- "description": "The DateTime (inclusive) until which product should be shown (in any way / design / display type) on the website."
88
- },
89
- "first_online_at": {
90
- "type": [
91
- "string",
92
- "null"
93
- ],
94
- "format": "date-time",
95
- "description": "The DateTime of product last online in the direct channel"
96
- },
97
- "last_online_at": {
98
- "type": [
99
- "string",
100
- "null"
101
- ],
102
- "format": "date-time",
103
- "description": "The DateTime of product last online in the direct channel"
104
- },
105
- "first_purchased_at": {
106
- "type": "string",
107
- "format": "date-time",
108
- "faker": {
109
- "date.between": [
110
- "2024-01-01T00:00:00.000Z",
111
- "2025-04-30T00:00:00.000Z"
112
- ]
113
- }
114
- },
115
- "first_markdown_at": {
116
- "type": [
117
- "string",
118
- "null"
119
- ],
120
- "format": "date-time",
121
- "faker": {
122
- "date.between": [
123
- "2024-01-01T00:00:00.000Z",
124
- "2025-04-30T00:00:00.000Z"
125
- ]
126
- }
127
- },
128
- "created_at": {
129
- "type": "string",
130
- "format": "date-time",
131
- "faker": {
132
- "date.between": [
133
- "2024-01-01T00:00:00.000Z",
134
- "2025-04-30T00:00:00.000Z"
135
- ]
136
- }
137
- },
138
- "last_modified_at": {
139
- "type": "string",
140
- "format": "date-time",
141
- "faker": {
142
- "date.between": [
143
- "2024-01-01T00:00:00.000Z",
144
- "2025-04-30T00:00:00.000Z"
145
- ]
146
- }
147
- },
148
- "colour_family_name": {
149
- "type": "string",
150
- "faker": {
151
- "color.human": []
152
- },
153
- "description": "New Tags To Add - Example: yellow"
154
- },
155
- "colour_code": {
156
- "type": "string",
157
- "description": "Colours as Text - Example: buttercup-yellow from initial input of Buttercup Yellow"
158
- },
159
- "colour_name": {
160
- "type": "string",
161
- "description": "Toffee Brown"
162
- },
163
- "display_tags": {
164
- "type": "array",
165
- "items": {
166
- "type": "string"
167
- },
168
- "description": "Example - [20% Off, Summer Sale])"
169
- },
170
- "sizerange_code": {
171
- "type": "string",
172
- "description": "Size range assigned to this product. Defines sizes to be created"
173
- },
174
- "sizerange_name": {
175
- "type": "string",
176
- "description": "Size range name for this product"
177
- },
178
- "variants": {
179
- "type": "array",
180
- "items": {
181
- "type": "object",
182
- "properties": {
183
- "code": {
184
- "type": "string",
185
- "description": "Size code - Example: 10"
186
- },
187
- "name": {
188
- "type": [
189
- "string"
190
- ],
191
- "faker": {
192
- "custom.size": []
193
- },
194
- "description": "Size label - Example: 10 becomes M"
195
- }
196
- },
197
- "required": [
198
- "code",
199
- "name"
200
- ]
201
- }
202
- },
203
- "images": {
204
- "type": "array",
205
- "items": {
206
- "type": "object",
207
- "properties": {
208
- "type": {
209
- "type": "string",
210
- "enum": [
211
- "Campaign",
212
- "Ecom",
213
- "Flatlay",
214
- "UGC",
215
- "AI"
216
- ],
217
- "description": "Image type for product - Example: Campaign"
218
- },
219
- "url": {
220
- "type": "string",
221
- "format": "uri",
222
- "description": "Image URl for product"
223
- },
224
- "description": {
225
- "type": "string",
226
- "description": "Style Title - Example: Puff Sleeve Sweatshirt"
227
- }
228
- },
229
- "required": [
230
- "type",
231
- "url"
232
- ]
233
- }
234
- },
235
- "vat_rate_uk": {
236
- "type": [
237
- "number",
238
- "null"
239
- ],
240
- "minimum": 0,
241
- "description": "VAT represented as integer (percentage), 0.2 becomes 20 (as 20%)"
242
- },
243
- "supply_chain": {
244
- "type": "object",
245
- "properties": {
246
- "hs_code": {
247
- "type": [
248
- "string",
249
- "null"
250
- ],
251
- "description": "HS Code"
252
- },
253
- "commodity_code_ref": {
254
- "type": "string",
255
- "description": "Harmonized Commodity Code - Example: C0/101888|DutyRate"
256
- },
257
- "country_of_origin": {
258
- "$ref": "https://shushed.example.com/country.schema.json",
259
- "description": "Country Of Origin - Example: RO"
260
- },
261
- "port_of_origin": {
262
- "type": "string",
263
- "description": "Port Of Origin - Example: MUMBAI"
264
- },
265
- "supplier_id": {
266
- "type": "string",
267
- "pattern": "^SUP\\d{5}$",
268
- "description": "Supplier ID in the format 'SUP00099', where 'SUP' is followed by exactly five digits - Example: SUP00045"
269
- },
270
- "supplier_name": {
271
- "type": "string",
272
- "description": "Supplier Name - Example: Binh Dinh Footwear Joint Stock Company"
273
- },
274
- "factory_id": {
275
- "type": "string",
276
- "pattern": "^FAC\\d{5}$",
277
- "description": "Factory ID in the format 'FAC00074', where 'FAC' is followed by exactly five digits"
278
- },
279
- "packing_method": {
280
- "type": [
281
- "string",
282
- "null"
283
- ],
284
- "enum": [
285
- "Standard",
286
- "Hanging"
287
- ],
288
- "description": "Packing Method; must be 'Standard', 'Hanging' or null"
289
- },
290
- "is_bought_in_product": {
291
- "type": "boolean",
292
- "description": "Bought In Product - Example: true or false"
293
- }
294
- },
295
- "required": []
296
- },
297
- "merch": {
298
- "type": "object",
299
- "properties": {
300
- "strategy_type": {
301
- "type": "string",
302
- "description": "Strategy Type - Example: Seasonal New"
303
- },
304
- "product_type": {
305
- "type": "string",
306
- "description": "Product Type - Example: Knit"
307
- },
308
- "stock_type": {
309
- "type": "string",
310
- "description": "Stock Type - Example: Knit"
311
- },
312
- "category": {
313
- "type": "string",
314
- "faker": {
315
- "commerce.department": []
316
- },
317
- "description": "Category - Example: Knitwear"
318
- },
319
- "subcategory": {
320
- "type": "string",
321
- "faker": {
322
- "commerce.product": []
323
- },
324
- "description": "Subcategory - Example: Parka Coat"
325
- },
326
- "range": {
327
- "type": [
328
- "string",
329
- "null"
330
- ],
331
- "enum": [
332
- "Main Collection",
333
- "Seasonal"
334
- ],
335
- "description": "Range - Example: Main Collection"
336
- },
337
- "channels_availability": {
338
- "type": [
339
- "array"
340
- ],
341
- "items": {
342
- "type": "string",
343
- "enum": [
344
- "DIRECT-UK",
345
- "DIRECT-INT",
346
- "DIRECT-US",
347
- "JL-STORES",
348
- "JL-WEB",
349
- "NEXT",
350
- "MS",
351
- "FENWICK",
352
- "MORLEYS"
353
- ]
354
- },
355
- "description": "List of channels the product is exclusive to - Example: [MS]"
356
- },
357
- "collections": {
358
- "type": [
359
- "string"
360
- ],
361
- "description": "Collections [Centra] - Example: Spring 2025"
362
- },
363
- "seasons": {
364
- "type": [
365
- "array"
366
- ],
367
- "items": {
368
- "type": "string"
369
- },
370
- "description": "Seasons ordered in cronological order - Example: [AW20, SS25]"
371
- },
372
- "drops": {
373
- "type": [
374
- "array"
375
- ],
376
- "items": {
377
- "type": "string"
378
- },
379
- "description": "Drop - Example: [SS26 - December, SS25 - April]"
380
- },
381
- "fashionability": {
382
- "type": [
383
- "string",
384
- "null"
385
- ],
386
- "description": "Fashionability - Example: Core"
387
- }
388
- },
389
- "required": []
390
- },
391
- "attributes": {
392
- "type": "object",
393
- "properties": {
394
- "seo_url_name": {
395
- "type": "string",
396
- "pattern": "^[a-z-]+$",
397
- "description": "Part of the URL with the SEO-friendly product name (/${url_name}/${product_id}.html) - Example: for url_name: \"square-neck-texture-bikini-top-sage-green\" the final url will be /square-neck-texture-bikini-top-sage-green/013234-2274.html . Remember that this field will be filled in even before the product is published"
398
- },
399
- "embellishment": {
400
- "type": [
401
- "string",
402
- "null"
403
- ]
404
- },
405
- "seo_title": {
406
- "type": [
407
- "string",
408
- "null"
409
- ],
410
- "description": "SEO Title - Example: Puff Sleeve Sweatshirt. null if the root.product_name should be used"
411
- },
412
- "seo_description": {
413
- "type": [
414
- "string",
415
- "null"
416
- ],
417
- "description": "SEO Description - Example: Puff Sleeve Sweatshirt. null if root.description should be used"
418
- },
419
- "fit_description": {
420
- "type": [
421
- "string",
422
- "null"
423
- ],
424
- "description": "Accordion product fit"
425
- },
426
- "description": {
427
- "type": [
428
- "string",
429
- "null"
430
- ],
431
- "description": "Product description"
432
- },
433
- "fabric_care": {
434
- "type": [
435
- "string",
436
- "null"
437
- ],
438
- "description": "Fabric and care accordion on the website"
439
- },
440
- "delivery_returns": {
441
- "type": [
442
- "string",
443
- "null"
444
- ],
445
- "description": "Delivery & Returns accordion on the website"
446
- },
447
- "weight": {
448
- "type": [
449
- "number",
450
- "null"
451
- ],
452
- "description": "The average weight of the garmet (across sizes)"
453
- },
454
- "weight_statement": {
455
- "type": [
456
- "string",
457
- "null"
458
- ],
459
- "description": "The weight statement"
460
- },
461
- "main_fibre": {
462
- "type": [
463
- "string",
464
- "null"
465
- ],
466
- "description": "Main Fibre - Applicable to garmets - Example: Cotton"
467
- },
468
- "main_metal": {
469
- "type": [
470
- "string",
471
- "null"
472
- ],
473
- "description": "Main Metal - Applicable to jewellery - Example: Silver"
474
- },
475
- "extra_selling_points": {
476
- "type": "array",
477
- "items": {
478
- "type": "string"
479
- },
480
- "description": "Extra Selling Points - Example: [Lovely Print, Recyclable Fabric]"
481
- },
482
- "length_measurement": {
483
- "type": [
484
- "string",
485
- "null"
486
- ],
487
- "description": "Length Measurement - Example: Sole height: 1.5 cm"
488
- },
489
- "measurement_table_code": {
490
- "type": [
491
- "string"
492
- ],
493
- "description": "Measurement Table Code"
494
- },
495
- "fit": {
496
- "type": [
497
- "string",
498
- "null"
499
- ],
500
- "description": "Fit of the garmet"
501
- },
502
- "pockets": {
503
- "type": [
504
- "string",
505
- "null"
506
- ],
507
- "description": "Pockets details"
508
- },
509
- "pleats_gathers": {
510
- "type": [
511
- "string",
512
- "null"
513
- ],
514
- "description": "Pleats & Gathers details"
515
- },
516
- "lining": {
517
- "type": [
518
- "string",
519
- "null"
520
- ],
521
- "description": "Lining details"
522
- },
523
- "bias_cut": {
524
- "type": [
525
- "string",
526
- "null"
527
- ],
528
- "description": "Bias cut details"
529
- },
530
- "designer": {
531
- "type": [
532
- "string",
533
- "null"
534
- ],
535
- "description": "Designer of the garmet"
536
- },
537
- "fabric": {
538
- "type": [
539
- "string",
540
- "null"
541
- ],
542
- "description": "Main fabric of the garmet"
543
- },
544
- "fabric_composition": {
545
- "type": [
546
- "string",
547
- "null"
548
- ],
549
- "description": "Composition details"
550
- },
551
- "certificate_code": {
552
- "type": [
553
- "string",
554
- "null"
555
- ],
556
- "description": "Certificate of the fabric"
557
- },
558
- "shape": {
559
- "type": [
560
- "string",
561
- "null"
562
- ],
563
- "description": "Shape of the garmet"
564
- },
565
- "development_type": {
566
- "type": "string",
567
- "description": "Development Type - Example: Update"
568
- },
569
- "occasion": {
570
- "type": [
571
- "string",
572
- "null"
573
- ],
574
- "description": "Occasion - Example: Party"
575
- },
576
- "design": {
577
- "type": [
578
- "string",
579
- "null"
580
- ],
581
- "description": "Design type"
582
- },
583
- "block": {
584
- "type": [
585
- "string",
586
- "null"
587
- ],
588
- "description": "Block"
589
- },
590
- "pattern_name": {
591
- "type": [
592
- "string",
593
- "null"
594
- ],
595
- "description": "Pattern Name - Example: Interest"
596
- },
597
- "fit_type": {
598
- "type": [
599
- "string",
600
- "null"
601
- ],
602
- "description": "Fit Styling Description(ESP) - Example: Oversized"
603
- },
604
- "neckline": {
605
- "type": [
606
- "string",
607
- "null"
608
- ],
609
- "description": "Neckline - Example: Crew"
610
- },
611
- "sleeve_length": {
612
- "type": [
613
- "string",
614
- "null"
615
- ],
616
- "nullable": true,
617
- "description": "Sleeve Length - Example: Sleeveless"
618
- },
619
- "sleeve_type": {
620
- "type": [
621
- "string",
622
- "null"
623
- ],
624
- "nullable": true,
625
- "description": "Type of Sleeve i.e. "
626
- },
627
- "heel_height": {
628
- "type": [
629
- "string",
630
- "null"
631
- ],
632
- "description": "Heel Height - Example: 0.5CM"
633
- },
634
- "heel_shape": {
635
- "type": [
636
- "string",
637
- "null"
638
- ],
639
- "description": "Heel Shape - Example: Flat"
640
- },
641
- "toe_shape": {
642
- "type": [
643
- "string",
644
- "null"
645
- ],
646
- "description": "Toe Shape - Example: Round"
647
- },
648
- "trouser_fit": {
649
- "type": [
650
- "string",
651
- "null"
652
- ],
653
- "nullable": true
654
- },
655
- "leg_length": {
656
- "type": [
657
- "string",
658
- "null"
659
- ],
660
- "description": "Leg Length - Example: Long"
661
- },
662
- "handle_straps": {
663
- "type": [
664
- "string",
665
- "null"
666
- ],
667
- "description": "Handle Straps - Example: XBody Strap"
668
- },
669
- "straps_features": {
670
- "type": [
671
- "string",
672
- "null"
673
- ],
674
- "description": "Features of the straps i.e. \"Detachable staps\""
675
- },
676
- "fastening": {
677
- "anyOf": [
678
- {
679
- "type": [
680
- "array",
681
- "null"
682
- ],
683
- "items": {
684
- "type": "string"
685
- }
686
- },
687
- {
688
- "type": "null"
689
- }
690
- ],
691
- "description": "Fastening - Example: Zip Front"
692
- },
693
- "sole_material": {
694
- "type": [
695
- "string",
696
- "null"
697
- ],
698
- "description": "Sole Material - Example: Rubber"
699
- },
700
- "care_instructions": {
701
- "type": "array",
702
- "items": {
703
- "type": "string"
704
- },
705
- "description": " - Example: Fabric unlined / do not tumble dry"
706
- }
707
- },
708
- "required": []
709
- },
710
- "presentations": {
711
- "type": "object",
712
- "description": "Presentation-specific overrides by key (e.g., default, website, email, website-US). Each key maps to an object containing a locale and presentation_type plus optional overrides of selected root fields.",
713
- "additionalProperties": false,
714
- "patternProperties": {
715
- ".*": {
716
- "type": "object",
717
- "additionalProperties": false,
718
- "properties": {
719
- "locale": {
720
- "type": "string",
721
- "pattern": "^[a-z]{2}-[A-Z]{2}$",
722
- "description": "Locale for this presentation (e.g., en-GB, en-US)."
723
- },
724
- "presentation_type": {
725
- "type": "string",
726
- "description": "Presentation type, e.g. website, email, default, website-US.",
727
- "examples": [
728
- "default",
729
- "website",
730
- "email",
731
- "website-US"
732
- ]
733
- },
734
- "slug": {
735
- "$ref": "#/properties/slug"
736
- },
737
- "style_slug": {
738
- "$ref": "#/properties/style_slug"
739
- },
740
- "style_name": {
741
- "$ref": "#/properties/style_name"
742
- },
743
- "display_name": {
744
- "$ref": "#/properties/display_name"
745
- },
746
- "display_type": {
747
- "$ref": "#/properties/display_type"
748
- },
749
- "available_to_sell_from": {
750
- "$ref": "#/properties/available_to_sell_from"
751
- },
752
- "online_from": {
753
- "$ref": "#/properties/online_from"
754
- },
755
- "online_to": {
756
- "$ref": "#/properties/online_to"
757
- },
758
- "last_online_at": {
759
- "$ref": "#/properties/last_online_at"
760
- },
761
- "first_purchased_at": {
762
- "$ref": "#/properties/first_purchased_at"
763
- },
764
- "first_markdown_at": {
765
- "$ref": "#/properties/first_markdown_at"
766
- },
767
- "colour_family_name": {
768
- "$ref": "#/properties/colour_family_name"
769
- },
770
- "colour_name": {
771
- "$ref": "#/properties/colour_name"
772
- },
773
- "display_tags": {
774
- "$ref": "#/properties/display_tags"
775
- },
776
- "sizerange_name": {
777
- "$ref": "#/properties/sizerange_name"
778
- },
779
- "variants": {
780
- "type": "array",
781
- "items": {
782
- "type": "object",
783
- "properties": {
784
- "code": {
785
- "$ref": "#/properties/variants/items/properties/code"
786
- },
787
- "name": {
788
- "$ref": "#/properties/variants/items/properties/name"
789
- }
790
- },
791
- "required": [
792
- "code",
793
- "name"
794
- ]
795
- },
796
- "description": "Per-variant display overrides. Include entries only for variants that differ."
797
- },
798
- "attributes": {
799
- "$ref": "#/properties/attributes"
800
- }
801
- },
802
- "required": [
803
- "locale",
804
- "presentation_type"
805
- ]
806
- }
807
- }
808
- }
809
- },
810
- "required": [
811
- "product_id",
812
- "style_id",
813
- "product_name",
814
- "online_from"
815
- ]
816
- }