@simpleapps-com/augur-api 0.3.2 → 0.4.0

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 (843) hide show
  1. package/API-DISCOVERY.md +2 -2
  2. package/API-SERVICES.md +227 -0
  3. package/QUICKSTART.md +2 -2
  4. package/README.md +144 -10
  5. package/dist/cjs/client.d.ts +78 -0
  6. package/dist/cjs/client.d.ts.map +1 -1
  7. package/dist/cjs/client.js +182 -0
  8. package/dist/cjs/client.js.map +1 -1
  9. package/dist/cjs/index.d.ts +1 -1
  10. package/dist/cjs/index.js +1 -1
  11. package/dist/cjs/services/agr-info/client.d.ts +579 -545
  12. package/dist/cjs/services/agr-info/client.d.ts.map +1 -1
  13. package/dist/cjs/services/agr-info/client.js +440 -407
  14. package/dist/cjs/services/agr-info/client.js.map +1 -1
  15. package/dist/cjs/services/agr-site/client.d.ts +156 -85
  16. package/dist/cjs/services/agr-site/client.d.ts.map +1 -1
  17. package/dist/cjs/services/agr-site/client.js +179 -106
  18. package/dist/cjs/services/agr-site/client.js.map +1 -1
  19. package/dist/cjs/services/agr-work/client.d.ts +152 -96
  20. package/dist/cjs/services/agr-work/client.d.ts.map +1 -1
  21. package/dist/cjs/services/agr-work/client.js +155 -81
  22. package/dist/cjs/services/agr-work/client.js.map +1 -1
  23. package/dist/cjs/services/avalara/client.d.ts +260 -316
  24. package/dist/cjs/services/avalara/client.d.ts.map +1 -1
  25. package/dist/cjs/services/avalara/client.js +194 -136
  26. package/dist/cjs/services/avalara/client.js.map +1 -1
  27. package/dist/cjs/services/brand-folder/client.d.ts +200 -170
  28. package/dist/cjs/services/brand-folder/client.d.ts.map +1 -1
  29. package/dist/cjs/services/brand-folder/client.js +181 -124
  30. package/dist/cjs/services/brand-folder/client.js.map +1 -1
  31. package/dist/cjs/services/brand-folder/schemas.d.ts +8 -8
  32. package/dist/cjs/services/commerce/client.d.ts +821 -877
  33. package/dist/cjs/services/commerce/client.d.ts.map +1 -1
  34. package/dist/cjs/services/commerce/client.js +843 -487
  35. package/dist/cjs/services/commerce/client.js.map +1 -1
  36. package/dist/cjs/services/customers/client.d.ts +310 -565
  37. package/dist/cjs/services/customers/client.d.ts.map +1 -1
  38. package/dist/cjs/services/customers/client.js +224 -452
  39. package/dist/cjs/services/customers/client.js.map +1 -1
  40. package/dist/cjs/services/gregorovich/client.d.ts +347 -311
  41. package/dist/cjs/services/gregorovich/client.d.ts.map +1 -1
  42. package/dist/cjs/services/gregorovich/client.js +292 -254
  43. package/dist/cjs/services/gregorovich/client.js.map +1 -1
  44. package/dist/cjs/services/gregorovich/index.d.ts +1 -1
  45. package/dist/cjs/services/gregorovich/index.d.ts.map +1 -1
  46. package/dist/cjs/services/gregorovich/schemas/chatGptAsk.d.ts +371 -0
  47. package/dist/cjs/services/gregorovich/schemas/chatGptAsk.d.ts.map +1 -0
  48. package/dist/cjs/services/gregorovich/schemas/chatGptAsk.js +71 -0
  49. package/dist/cjs/services/gregorovich/schemas/chatGptAsk.js.map +1 -0
  50. package/dist/cjs/services/gregorovich/schemas/documents.d.ts +398 -0
  51. package/dist/cjs/services/gregorovich/schemas/documents.d.ts.map +1 -0
  52. package/dist/cjs/services/gregorovich/schemas/documents.js +61 -0
  53. package/dist/cjs/services/gregorovich/schemas/documents.js.map +1 -0
  54. package/dist/cjs/services/gregorovich/schemas/healthCheck.d.ts +53 -0
  55. package/dist/cjs/services/gregorovich/schemas/healthCheck.d.ts.map +1 -0
  56. package/dist/cjs/services/gregorovich/schemas/healthCheck.js +11 -0
  57. package/dist/cjs/services/gregorovich/schemas/healthCheck.js.map +1 -0
  58. package/dist/cjs/services/gregorovich/schemas/index.d.ts +5 -0
  59. package/dist/cjs/services/gregorovich/schemas/index.d.ts.map +1 -0
  60. package/dist/cjs/services/gregorovich/schemas/index.js +21 -0
  61. package/dist/cjs/services/gregorovich/schemas/index.js.map +1 -0
  62. package/dist/cjs/services/gregorovich/schemas/ollamaGenerate.d.ts +433 -0
  63. package/dist/cjs/services/gregorovich/schemas/ollamaGenerate.d.ts.map +1 -0
  64. package/dist/cjs/services/gregorovich/schemas/ollamaGenerate.js +100 -0
  65. package/dist/cjs/services/gregorovich/schemas/ollamaGenerate.js.map +1 -0
  66. package/dist/cjs/services/gregorovich/schemas.d.ts +1 -1217
  67. package/dist/cjs/services/gregorovich/schemas.d.ts.map +1 -1
  68. package/dist/cjs/services/gregorovich/schemas.js +16 -198
  69. package/dist/cjs/services/gregorovich/schemas.js.map +1 -1
  70. package/dist/cjs/services/items/client.d.ts +1865 -1724
  71. package/dist/cjs/services/items/client.d.ts.map +1 -1
  72. package/dist/cjs/services/items/client.js +1726 -1171
  73. package/dist/cjs/services/items/client.js.map +1 -1
  74. package/dist/cjs/services/items/schemas/attributes.d.ts +2 -2
  75. package/dist/cjs/services/items/schemas/brandsItems.d.ts +304 -0
  76. package/dist/cjs/services/items/schemas/brandsItems.d.ts.map +1 -0
  77. package/dist/cjs/services/items/schemas/brandsItems.js +44 -0
  78. package/dist/cjs/services/items/schemas/brandsItems.js.map +1 -0
  79. package/dist/cjs/services/items/schemas/categoriesImages.d.ts +127 -0
  80. package/dist/cjs/services/items/schemas/categoriesImages.d.ts.map +1 -0
  81. package/dist/cjs/services/items/schemas/categoriesImages.js +24 -0
  82. package/dist/cjs/services/items/schemas/categoriesImages.js.map +1 -0
  83. package/dist/cjs/services/items/schemas/index.d.ts +12 -0
  84. package/dist/cjs/services/items/schemas/index.d.ts.map +1 -1
  85. package/dist/cjs/services/items/schemas/index.js +12 -0
  86. package/dist/cjs/services/items/schemas/index.js.map +1 -1
  87. package/dist/cjs/services/items/schemas/internalPdf.d.ts +212 -0
  88. package/dist/cjs/services/items/schemas/internalPdf.d.ts.map +1 -0
  89. package/dist/cjs/services/items/schemas/internalPdf.js +44 -0
  90. package/dist/cjs/services/items/schemas/internalPdf.js.map +1 -0
  91. package/dist/cjs/services/items/schemas/invMastAccessory.d.ts +127 -0
  92. package/dist/cjs/services/items/schemas/invMastAccessory.d.ts.map +1 -0
  93. package/dist/cjs/services/items/schemas/invMastAccessory.js +21 -0
  94. package/dist/cjs/services/items/schemas/invMastAccessory.js.map +1 -0
  95. package/dist/cjs/services/items/schemas/invMastAlternateCode.d.ts +147 -0
  96. package/dist/cjs/services/items/schemas/invMastAlternateCode.d.ts.map +1 -0
  97. package/dist/cjs/services/items/schemas/invMastAlternateCode.js +26 -0
  98. package/dist/cjs/services/items/schemas/invMastAlternateCode.js.map +1 -0
  99. package/dist/cjs/services/items/schemas/invMastAttributes.d.ts +177 -0
  100. package/dist/cjs/services/items/schemas/invMastAttributes.d.ts.map +1 -0
  101. package/dist/cjs/services/items/schemas/invMastAttributes.js +35 -0
  102. package/dist/cjs/services/items/schemas/invMastAttributes.js.map +1 -0
  103. package/dist/cjs/services/items/schemas/invMastAttributesValues.d.ts +333 -0
  104. package/dist/cjs/services/items/schemas/invMastAttributesValues.d.ts.map +1 -0
  105. package/dist/cjs/services/items/schemas/invMastAttributesValues.js +49 -0
  106. package/dist/cjs/services/items/schemas/invMastAttributesValues.js.map +1 -0
  107. package/dist/cjs/services/items/schemas/invMastDoc.d.ts +137 -0
  108. package/dist/cjs/services/items/schemas/invMastDoc.d.ts.map +1 -0
  109. package/dist/cjs/services/items/schemas/invMastDoc.js +22 -0
  110. package/dist/cjs/services/items/schemas/invMastDoc.js.map +1 -0
  111. package/dist/cjs/services/items/schemas/invMastLinks.d.ts +147 -0
  112. package/dist/cjs/services/items/schemas/invMastLinks.d.ts.map +1 -0
  113. package/dist/cjs/services/items/schemas/invMastLinks.js +10 -0
  114. package/dist/cjs/services/items/schemas/invMastLinks.js.map +1 -0
  115. package/dist/cjs/services/items/schemas/invMastSimilar.d.ts +127 -0
  116. package/dist/cjs/services/items/schemas/invMastSimilar.d.ts.map +1 -0
  117. package/dist/cjs/services/items/schemas/invMastSimilar.js +21 -0
  118. package/dist/cjs/services/items/schemas/invMastSimilar.js.map +1 -0
  119. package/dist/cjs/services/items/schemas/invMastSub.d.ts +127 -0
  120. package/dist/cjs/services/items/schemas/invMastSub.d.ts.map +1 -0
  121. package/dist/cjs/services/items/schemas/invMastSub.js +21 -0
  122. package/dist/cjs/services/items/schemas/invMastSub.js.map +1 -0
  123. package/dist/cjs/services/items/schemas/invMastSubParts.d.ts +187 -0
  124. package/dist/cjs/services/items/schemas/invMastSubParts.d.ts.map +1 -0
  125. package/dist/cjs/services/items/schemas/invMastSubParts.js +14 -0
  126. package/dist/cjs/services/items/schemas/invMastSubParts.js.map +1 -0
  127. package/dist/cjs/services/items/schemas/itemFavorites.d.ts +236 -0
  128. package/dist/cjs/services/items/schemas/itemFavorites.d.ts.map +1 -0
  129. package/dist/cjs/services/items/schemas/itemFavorites.js +11 -0
  130. package/dist/cjs/services/items/schemas/itemFavorites.js.map +1 -0
  131. package/dist/cjs/services/items/schemas/locationsBins.d.ts +381 -0
  132. package/dist/cjs/services/items/schemas/locationsBins.d.ts.map +1 -0
  133. package/dist/cjs/services/items/schemas/locationsBins.js +35 -0
  134. package/dist/cjs/services/items/schemas/locationsBins.js.map +1 -0
  135. package/dist/cjs/services/legacy/client.d.ts +522 -280
  136. package/dist/cjs/services/legacy/client.d.ts.map +1 -1
  137. package/dist/cjs/services/legacy/client.js +388 -146
  138. package/dist/cjs/services/legacy/client.js.map +1 -1
  139. package/dist/cjs/services/nexus/client.d.ts +169 -156
  140. package/dist/cjs/services/nexus/client.d.ts.map +1 -1
  141. package/dist/cjs/services/nexus/client.js +158 -145
  142. package/dist/cjs/services/nexus/client.js.map +1 -1
  143. package/dist/cjs/services/open-search/client.d.ts +434 -162
  144. package/dist/cjs/services/open-search/client.d.ts.map +1 -1
  145. package/dist/cjs/services/open-search/client.js +248 -115
  146. package/dist/cjs/services/open-search/client.js.map +1 -1
  147. package/dist/cjs/services/{pricing/schemas/health.d.ts → open-search/schemas/healthCheck.d.ts} +19 -49
  148. package/dist/cjs/services/open-search/schemas/healthCheck.d.ts.map +1 -0
  149. package/dist/cjs/services/open-search/schemas/healthCheck.js +17 -0
  150. package/dist/cjs/services/open-search/schemas/healthCheck.js.map +1 -0
  151. package/dist/cjs/services/open-search/schemas/index.d.ts +5 -0
  152. package/dist/cjs/services/open-search/schemas/index.d.ts.map +1 -1
  153. package/dist/cjs/services/open-search/schemas/index.js +27 -0
  154. package/dist/cjs/services/open-search/schemas/index.js.map +1 -1
  155. package/dist/cjs/services/open-search/schemas/itemSearch.d.ts +394 -0
  156. package/dist/cjs/services/open-search/schemas/itemSearch.d.ts.map +1 -0
  157. package/dist/cjs/services/open-search/schemas/itemSearch.js +74 -0
  158. package/dist/cjs/services/open-search/schemas/itemSearch.js.map +1 -0
  159. package/dist/cjs/services/open-search/schemas/itemSearchAttributes.d.ts +359 -0
  160. package/dist/cjs/services/open-search/schemas/itemSearchAttributes.d.ts.map +1 -0
  161. package/dist/cjs/services/open-search/schemas/itemSearchAttributes.js +47 -0
  162. package/dist/cjs/services/open-search/schemas/itemSearchAttributes.js.map +1 -0
  163. package/dist/cjs/services/open-search/schemas/itemsRefresh.d.ts +512 -0
  164. package/dist/cjs/services/open-search/schemas/itemsRefresh.d.ts.map +1 -0
  165. package/dist/cjs/services/open-search/schemas/itemsRefresh.js +62 -0
  166. package/dist/cjs/services/open-search/schemas/itemsRefresh.js.map +1 -0
  167. package/dist/cjs/services/open-search/schemas/ping.d.ts +57 -0
  168. package/dist/cjs/services/open-search/schemas/ping.d.ts.map +1 -0
  169. package/dist/cjs/services/open-search/schemas/ping.js +14 -0
  170. package/dist/cjs/services/open-search/schemas/ping.js.map +1 -0
  171. package/dist/cjs/services/orders/client.d.ts +496 -646
  172. package/dist/cjs/services/orders/client.d.ts.map +1 -1
  173. package/dist/cjs/services/orders/client.js +311 -476
  174. package/dist/cjs/services/orders/client.js.map +1 -1
  175. package/dist/cjs/services/orders/schemas/invoices.d.ts +10 -10
  176. package/dist/cjs/services/orders/schemas/invoices.js +1 -1
  177. package/dist/cjs/services/p21-apis/client.d.ts +311 -534
  178. package/dist/cjs/services/p21-apis/client.d.ts.map +1 -1
  179. package/dist/cjs/services/p21-apis/client.js +303 -636
  180. package/dist/cjs/services/p21-apis/client.js.map +1 -1
  181. package/dist/cjs/services/p21-apis/schemas.d.ts +9 -78
  182. package/dist/cjs/services/p21-apis/schemas.d.ts.map +1 -1
  183. package/dist/cjs/services/p21-apis/schemas.js +9 -32
  184. package/dist/cjs/services/p21-apis/schemas.js.map +1 -1
  185. package/dist/cjs/services/p21-core/client.d.ts +111 -75
  186. package/dist/cjs/services/p21-core/client.d.ts.map +1 -1
  187. package/dist/cjs/services/p21-core/client.js +146 -106
  188. package/dist/cjs/services/p21-core/client.js.map +1 -1
  189. package/dist/cjs/services/p21-pim/client.d.ts +163 -37
  190. package/dist/cjs/services/p21-pim/client.d.ts.map +1 -1
  191. package/dist/cjs/services/p21-pim/client.js +163 -37
  192. package/dist/cjs/services/p21-pim/client.js.map +1 -1
  193. package/dist/cjs/services/p21-pim/schemas/ai-suggestions.d.ts +6 -6
  194. package/dist/cjs/services/p21-pim/schemas/ai-suggestions.d.ts.map +1 -1
  195. package/dist/cjs/services/p21-pim/schemas/ai-suggestions.js +1 -1
  196. package/dist/cjs/services/p21-pim/schemas/ai-suggestions.js.map +1 -1
  197. package/dist/cjs/services/p21-pim/schemas/inventory.d.ts +32 -32
  198. package/dist/cjs/services/p21-sism/client.d.ts +315 -261
  199. package/dist/cjs/services/p21-sism/client.d.ts.map +1 -1
  200. package/dist/cjs/services/p21-sism/client.js +371 -313
  201. package/dist/cjs/services/p21-sism/client.js.map +1 -1
  202. package/dist/cjs/services/pricing/client.d.ts +289 -59
  203. package/dist/cjs/services/pricing/client.d.ts.map +1 -1
  204. package/dist/cjs/services/pricing/client.js +318 -70
  205. package/dist/cjs/services/pricing/client.js.map +1 -1
  206. package/dist/cjs/services/pricing/schemas/healthCheck.d.ts +70 -0
  207. package/dist/cjs/services/pricing/schemas/healthCheck.d.ts.map +1 -0
  208. package/dist/cjs/services/pricing/schemas/{health.js → healthCheck.js} +2 -3
  209. package/dist/cjs/services/pricing/schemas/healthCheck.js.map +1 -0
  210. package/dist/cjs/services/pricing/schemas/index.d.ts +6 -4
  211. package/dist/cjs/services/pricing/schemas/index.d.ts.map +1 -1
  212. package/dist/cjs/services/pricing/schemas/index.js +9 -5
  213. package/dist/cjs/services/pricing/schemas/index.js.map +1 -1
  214. package/dist/cjs/services/pricing/schemas/jobPriceHdr.d.ts +391 -0
  215. package/dist/cjs/services/pricing/schemas/jobPriceHdr.d.ts.map +1 -0
  216. package/dist/cjs/services/pricing/schemas/jobPriceHdr.js +34 -0
  217. package/dist/cjs/services/pricing/schemas/jobPriceHdr.js.map +1 -0
  218. package/dist/cjs/services/pricing/schemas/{job-pricing.d.ts → jobPriceHdrLines.d.ts} +1 -390
  219. package/dist/cjs/services/pricing/schemas/jobPriceHdrLines.d.ts.map +1 -0
  220. package/dist/cjs/services/pricing/schemas/{job-pricing.js → jobPriceHdrLines.js} +5 -29
  221. package/dist/cjs/services/pricing/schemas/jobPriceHdrLines.js.map +1 -0
  222. package/dist/cjs/services/pricing/schemas/ping.d.ts +49 -0
  223. package/dist/cjs/services/pricing/schemas/ping.d.ts.map +1 -0
  224. package/dist/cjs/services/pricing/schemas/ping.js +6 -0
  225. package/dist/cjs/services/pricing/schemas/ping.js.map +1 -0
  226. package/dist/cjs/services/pricing/schemas/{pricing.d.ts → priceEngine.d.ts} +1 -1
  227. package/dist/cjs/services/pricing/schemas/priceEngine.d.ts.map +1 -0
  228. package/dist/cjs/services/pricing/schemas/{pricing.js → priceEngine.js} +4 -2
  229. package/dist/cjs/services/pricing/schemas/priceEngine.js.map +1 -0
  230. package/dist/{types/services/pricing/schemas/tax.d.ts → cjs/services/pricing/schemas/taxEngine.d.ts} +1 -1
  231. package/dist/cjs/services/pricing/schemas/taxEngine.d.ts.map +1 -0
  232. package/dist/cjs/services/pricing/schemas/{tax.js → taxEngine.js} +7 -2
  233. package/dist/cjs/services/pricing/schemas/taxEngine.js.map +1 -0
  234. package/dist/cjs/services/shipping/client.d.ts +47 -110
  235. package/dist/cjs/services/shipping/client.d.ts.map +1 -1
  236. package/dist/cjs/services/shipping/client.js +62 -115
  237. package/dist/cjs/services/shipping/client.js.map +1 -1
  238. package/dist/cjs/services/shipping/index.d.ts +2 -2
  239. package/dist/cjs/services/shipping/index.d.ts.map +1 -1
  240. package/dist/cjs/services/shipping/index.js +3 -3
  241. package/dist/cjs/services/shipping/index.js.map +1 -1
  242. package/dist/cjs/services/shipping/schemas/healthCheck.d.ts +118 -0
  243. package/dist/cjs/services/shipping/schemas/healthCheck.d.ts.map +1 -0
  244. package/dist/cjs/services/shipping/schemas/healthCheck.js +27 -0
  245. package/dist/cjs/services/shipping/schemas/healthCheck.js.map +1 -0
  246. package/dist/cjs/services/shipping/schemas/index.d.ts +5 -0
  247. package/dist/cjs/services/shipping/schemas/index.d.ts.map +1 -0
  248. package/dist/cjs/services/shipping/schemas/index.js +18 -0
  249. package/dist/cjs/services/shipping/schemas/index.js.map +1 -0
  250. package/dist/cjs/services/shipping/{schemas.d.ts → schemas/rates.d.ts} +1 -117
  251. package/dist/cjs/services/shipping/{schemas.d.ts.map → schemas/rates.d.ts.map} +1 -1
  252. package/dist/cjs/services/shipping/{schemas.js → schemas/rates.js} +3 -27
  253. package/dist/cjs/services/shipping/schemas/rates.js.map +1 -0
  254. package/dist/cjs/services/slack/client.d.ts +289 -260
  255. package/dist/cjs/services/slack/client.d.ts.map +1 -1
  256. package/dist/cjs/services/slack/client.js +322 -279
  257. package/dist/cjs/services/slack/client.js.map +1 -1
  258. package/dist/cjs/services/slack/index.d.ts +2 -2
  259. package/dist/cjs/services/slack/index.d.ts.map +1 -1
  260. package/dist/cjs/services/slack/index.js +5 -5
  261. package/dist/cjs/services/slack/index.js.map +1 -1
  262. package/dist/cjs/services/slack/schemas/healthCheck.d.ts +138 -0
  263. package/dist/cjs/services/slack/schemas/healthCheck.d.ts.map +1 -0
  264. package/dist/cjs/services/slack/schemas/healthCheck.js +29 -0
  265. package/dist/cjs/services/slack/schemas/healthCheck.js.map +1 -0
  266. package/dist/cjs/services/slack/schemas/index.d.ts +4 -0
  267. package/dist/cjs/services/slack/schemas/index.d.ts.map +1 -0
  268. package/dist/cjs/services/slack/schemas/index.js +19 -0
  269. package/dist/cjs/services/slack/schemas/index.js.map +1 -0
  270. package/dist/{types/services/slack/schemas.d.ts → cjs/services/slack/schemas/webHook.d.ts} +3 -298
  271. package/dist/cjs/services/slack/schemas/webHook.d.ts.map +1 -0
  272. package/dist/cjs/services/slack/{schemas.js → schemas/webHook.js} +4 -56
  273. package/dist/cjs/services/slack/schemas/webHook.js.map +1 -0
  274. package/dist/cjs/services/slack/schemas/webHookRefresh.d.ts +161 -0
  275. package/dist/cjs/services/slack/schemas/webHookRefresh.d.ts.map +1 -0
  276. package/dist/cjs/services/slack/schemas/webHookRefresh.js +32 -0
  277. package/dist/cjs/services/slack/schemas/webHookRefresh.js.map +1 -0
  278. package/dist/cjs/services/smarty-streets/client.d.ts +238 -214
  279. package/dist/cjs/services/smarty-streets/client.d.ts.map +1 -1
  280. package/dist/cjs/services/smarty-streets/client.js +273 -250
  281. package/dist/cjs/services/smarty-streets/client.js.map +1 -1
  282. package/dist/cjs/services/smarty-streets/index.d.ts +2 -2
  283. package/dist/cjs/services/smarty-streets/index.d.ts.map +1 -1
  284. package/dist/cjs/services/smarty-streets/index.js +9 -9
  285. package/dist/cjs/services/smarty-streets/index.js.map +1 -1
  286. package/dist/cjs/services/smarty-streets/schemas/healthCheck.d.ts +140 -0
  287. package/dist/cjs/services/smarty-streets/schemas/healthCheck.d.ts.map +1 -0
  288. package/dist/cjs/services/smarty-streets/schemas/healthCheck.js +31 -0
  289. package/dist/cjs/services/smarty-streets/schemas/healthCheck.js.map +1 -0
  290. package/dist/cjs/services/smarty-streets/schemas/index.d.ts +7 -0
  291. package/dist/cjs/services/smarty-streets/schemas/index.d.ts.map +1 -0
  292. package/dist/cjs/services/smarty-streets/schemas/index.js +25 -0
  293. package/dist/cjs/services/smarty-streets/schemas/index.js.map +1 -0
  294. package/dist/cjs/services/smarty-streets/schemas/ping.d.ts +120 -0
  295. package/dist/cjs/services/smarty-streets/schemas/ping.d.ts.map +1 -0
  296. package/dist/cjs/services/smarty-streets/schemas/ping.js +29 -0
  297. package/dist/cjs/services/smarty-streets/schemas/ping.js.map +1 -0
  298. package/dist/cjs/services/smarty-streets/{schemas.d.ts → schemas/usLookup.d.ts} +11 -262
  299. package/dist/cjs/services/smarty-streets/schemas/usLookup.d.ts.map +1 -0
  300. package/dist/cjs/services/smarty-streets/{schemas.js → schemas/usLookup.js} +9 -55
  301. package/dist/cjs/services/smarty-streets/schemas/usLookup.js.map +1 -0
  302. package/dist/cjs/services/ups/client.d.ts +65 -95
  303. package/dist/cjs/services/ups/client.d.ts.map +1 -1
  304. package/dist/cjs/services/ups/client.js +76 -105
  305. package/dist/cjs/services/ups/client.js.map +1 -1
  306. package/dist/cjs/services/ups/schemas/healthCheck.d.ts +138 -0
  307. package/dist/cjs/services/ups/schemas/healthCheck.d.ts.map +1 -0
  308. package/dist/cjs/services/ups/schemas/healthCheck.js +29 -0
  309. package/dist/cjs/services/ups/schemas/healthCheck.js.map +1 -0
  310. package/dist/cjs/services/ups/schemas/index.d.ts +5 -0
  311. package/dist/cjs/services/ups/schemas/index.d.ts.map +1 -0
  312. package/dist/cjs/services/ups/schemas/index.js +18 -0
  313. package/dist/cjs/services/ups/schemas/index.js.map +1 -0
  314. package/dist/cjs/services/ups/schemas/ratesShop.d.ts +1751 -0
  315. package/dist/cjs/services/ups/schemas/ratesShop.d.ts.map +1 -0
  316. package/dist/cjs/services/ups/schemas/ratesShop.js +175 -0
  317. package/dist/cjs/services/ups/schemas/ratesShop.js.map +1 -0
  318. package/dist/cjs/services/ups/schemas.d.ts +4 -1886
  319. package/dist/cjs/services/ups/schemas.d.ts.map +1 -1
  320. package/dist/cjs/services/ups/schemas.js +15 -198
  321. package/dist/cjs/services/ups/schemas.js.map +1 -1
  322. package/dist/cjs/services/vmi/client.d.ts +605 -550
  323. package/dist/cjs/services/vmi/client.d.ts.map +1 -1
  324. package/dist/cjs/services/vmi/client.js +604 -558
  325. package/dist/cjs/services/vmi/client.js.map +1 -1
  326. package/dist/esm/client.d.ts +78 -0
  327. package/dist/esm/client.d.ts.map +1 -1
  328. package/dist/esm/client.js +182 -0
  329. package/dist/esm/client.js.map +1 -1
  330. package/dist/esm/index.d.ts +1 -1
  331. package/dist/esm/index.js +1 -1
  332. package/dist/esm/services/agr-info/client.d.ts +579 -545
  333. package/dist/esm/services/agr-info/client.d.ts.map +1 -1
  334. package/dist/esm/services/agr-info/client.js +440 -407
  335. package/dist/esm/services/agr-info/client.js.map +1 -1
  336. package/dist/esm/services/agr-site/client.d.ts +156 -85
  337. package/dist/esm/services/agr-site/client.d.ts.map +1 -1
  338. package/dist/esm/services/agr-site/client.js +179 -106
  339. package/dist/esm/services/agr-site/client.js.map +1 -1
  340. package/dist/esm/services/agr-work/client.d.ts +152 -96
  341. package/dist/esm/services/agr-work/client.d.ts.map +1 -1
  342. package/dist/esm/services/agr-work/client.js +155 -81
  343. package/dist/esm/services/agr-work/client.js.map +1 -1
  344. package/dist/esm/services/avalara/client.d.ts +260 -316
  345. package/dist/esm/services/avalara/client.d.ts.map +1 -1
  346. package/dist/esm/services/avalara/client.js +195 -137
  347. package/dist/esm/services/avalara/client.js.map +1 -1
  348. package/dist/esm/services/brand-folder/client.d.ts +200 -170
  349. package/dist/esm/services/brand-folder/client.d.ts.map +1 -1
  350. package/dist/esm/services/brand-folder/client.js +182 -125
  351. package/dist/esm/services/brand-folder/client.js.map +1 -1
  352. package/dist/esm/services/brand-folder/schemas.d.ts +8 -8
  353. package/dist/esm/services/commerce/client.d.ts +821 -877
  354. package/dist/esm/services/commerce/client.d.ts.map +1 -1
  355. package/dist/esm/services/commerce/client.js +844 -488
  356. package/dist/esm/services/commerce/client.js.map +1 -1
  357. package/dist/esm/services/customers/client.d.ts +310 -565
  358. package/dist/esm/services/customers/client.d.ts.map +1 -1
  359. package/dist/esm/services/customers/client.js +224 -452
  360. package/dist/esm/services/customers/client.js.map +1 -1
  361. package/dist/esm/services/gregorovich/client.d.ts +347 -311
  362. package/dist/esm/services/gregorovich/client.d.ts.map +1 -1
  363. package/dist/esm/services/gregorovich/client.js +292 -254
  364. package/dist/esm/services/gregorovich/client.js.map +1 -1
  365. package/dist/esm/services/gregorovich/index.d.ts +1 -1
  366. package/dist/esm/services/gregorovich/index.d.ts.map +1 -1
  367. package/dist/esm/services/gregorovich/schemas/chatGptAsk.d.ts +371 -0
  368. package/dist/esm/services/gregorovich/schemas/chatGptAsk.d.ts.map +1 -0
  369. package/dist/esm/services/gregorovich/schemas/chatGptAsk.js +68 -0
  370. package/dist/esm/services/gregorovich/schemas/chatGptAsk.js.map +1 -0
  371. package/dist/esm/services/gregorovich/schemas/documents.d.ts +398 -0
  372. package/dist/esm/services/gregorovich/schemas/documents.d.ts.map +1 -0
  373. package/dist/esm/services/gregorovich/schemas/documents.js +58 -0
  374. package/dist/esm/services/gregorovich/schemas/documents.js.map +1 -0
  375. package/dist/esm/services/gregorovich/schemas/healthCheck.d.ts +53 -0
  376. package/dist/esm/services/gregorovich/schemas/healthCheck.d.ts.map +1 -0
  377. package/dist/esm/services/gregorovich/schemas/healthCheck.js +8 -0
  378. package/dist/esm/services/gregorovich/schemas/healthCheck.js.map +1 -0
  379. package/dist/esm/services/gregorovich/schemas/index.d.ts +5 -0
  380. package/dist/esm/services/gregorovich/schemas/index.d.ts.map +1 -0
  381. package/dist/esm/services/gregorovich/schemas/index.js +9 -0
  382. package/dist/esm/services/gregorovich/schemas/index.js.map +1 -0
  383. package/dist/esm/services/gregorovich/schemas/ollamaGenerate.d.ts +433 -0
  384. package/dist/esm/services/gregorovich/schemas/ollamaGenerate.d.ts.map +1 -0
  385. package/dist/esm/services/gregorovich/schemas/ollamaGenerate.js +97 -0
  386. package/dist/esm/services/gregorovich/schemas/ollamaGenerate.js.map +1 -0
  387. package/dist/esm/services/gregorovich/schemas.d.ts +1 -1217
  388. package/dist/esm/services/gregorovich/schemas.d.ts.map +1 -1
  389. package/dist/esm/services/gregorovich/schemas.js +2 -197
  390. package/dist/esm/services/gregorovich/schemas.js.map +1 -1
  391. package/dist/esm/services/items/client.d.ts +1865 -1724
  392. package/dist/esm/services/items/client.d.ts.map +1 -1
  393. package/dist/esm/services/items/client.js +1738 -1176
  394. package/dist/esm/services/items/client.js.map +1 -1
  395. package/dist/esm/services/items/schemas/attributes.d.ts +2 -2
  396. package/dist/esm/services/items/schemas/brandsItems.d.ts +304 -0
  397. package/dist/esm/services/items/schemas/brandsItems.d.ts.map +1 -0
  398. package/dist/esm/services/items/schemas/brandsItems.js +41 -0
  399. package/dist/esm/services/items/schemas/brandsItems.js.map +1 -0
  400. package/dist/esm/services/items/schemas/categoriesImages.d.ts +127 -0
  401. package/dist/esm/services/items/schemas/categoriesImages.d.ts.map +1 -0
  402. package/dist/esm/services/items/schemas/categoriesImages.js +21 -0
  403. package/dist/esm/services/items/schemas/categoriesImages.js.map +1 -0
  404. package/dist/esm/services/items/schemas/index.d.ts +12 -0
  405. package/dist/esm/services/items/schemas/index.d.ts.map +1 -1
  406. package/dist/esm/services/items/schemas/index.js +12 -0
  407. package/dist/esm/services/items/schemas/index.js.map +1 -1
  408. package/dist/esm/services/items/schemas/internalPdf.d.ts +212 -0
  409. package/dist/esm/services/items/schemas/internalPdf.d.ts.map +1 -0
  410. package/dist/esm/services/items/schemas/internalPdf.js +41 -0
  411. package/dist/esm/services/items/schemas/internalPdf.js.map +1 -0
  412. package/dist/esm/services/items/schemas/invMastAccessory.d.ts +127 -0
  413. package/dist/esm/services/items/schemas/invMastAccessory.d.ts.map +1 -0
  414. package/dist/esm/services/items/schemas/invMastAccessory.js +18 -0
  415. package/dist/esm/services/items/schemas/invMastAccessory.js.map +1 -0
  416. package/dist/esm/services/items/schemas/invMastAlternateCode.d.ts +147 -0
  417. package/dist/esm/services/items/schemas/invMastAlternateCode.d.ts.map +1 -0
  418. package/dist/esm/services/items/schemas/invMastAlternateCode.js +23 -0
  419. package/dist/esm/services/items/schemas/invMastAlternateCode.js.map +1 -0
  420. package/dist/esm/services/items/schemas/invMastAttributes.d.ts +177 -0
  421. package/dist/esm/services/items/schemas/invMastAttributes.d.ts.map +1 -0
  422. package/dist/esm/services/items/schemas/invMastAttributes.js +32 -0
  423. package/dist/esm/services/items/schemas/invMastAttributes.js.map +1 -0
  424. package/dist/esm/services/items/schemas/invMastAttributesValues.d.ts +333 -0
  425. package/dist/esm/services/items/schemas/invMastAttributesValues.d.ts.map +1 -0
  426. package/dist/esm/services/items/schemas/invMastAttributesValues.js +46 -0
  427. package/dist/esm/services/items/schemas/invMastAttributesValues.js.map +1 -0
  428. package/dist/esm/services/items/schemas/invMastDoc.d.ts +137 -0
  429. package/dist/esm/services/items/schemas/invMastDoc.d.ts.map +1 -0
  430. package/dist/esm/services/items/schemas/invMastDoc.js +19 -0
  431. package/dist/esm/services/items/schemas/invMastDoc.js.map +1 -0
  432. package/dist/esm/services/items/schemas/invMastLinks.d.ts +147 -0
  433. package/dist/esm/services/items/schemas/invMastLinks.d.ts.map +1 -0
  434. package/dist/esm/services/items/schemas/invMastLinks.js +7 -0
  435. package/dist/esm/services/items/schemas/invMastLinks.js.map +1 -0
  436. package/dist/esm/services/items/schemas/invMastSimilar.d.ts +127 -0
  437. package/dist/esm/services/items/schemas/invMastSimilar.d.ts.map +1 -0
  438. package/dist/esm/services/items/schemas/invMastSimilar.js +18 -0
  439. package/dist/esm/services/items/schemas/invMastSimilar.js.map +1 -0
  440. package/dist/esm/services/items/schemas/invMastSub.d.ts +127 -0
  441. package/dist/esm/services/items/schemas/invMastSub.d.ts.map +1 -0
  442. package/dist/esm/services/items/schemas/invMastSub.js +18 -0
  443. package/dist/esm/services/items/schemas/invMastSub.js.map +1 -0
  444. package/dist/esm/services/items/schemas/invMastSubParts.d.ts +187 -0
  445. package/dist/esm/services/items/schemas/invMastSubParts.d.ts.map +1 -0
  446. package/dist/esm/services/items/schemas/invMastSubParts.js +11 -0
  447. package/dist/esm/services/items/schemas/invMastSubParts.js.map +1 -0
  448. package/dist/esm/services/items/schemas/itemFavorites.d.ts +236 -0
  449. package/dist/esm/services/items/schemas/itemFavorites.d.ts.map +1 -0
  450. package/dist/esm/services/items/schemas/itemFavorites.js +8 -0
  451. package/dist/esm/services/items/schemas/itemFavorites.js.map +1 -0
  452. package/dist/esm/services/items/schemas/locationsBins.d.ts +381 -0
  453. package/dist/esm/services/items/schemas/locationsBins.d.ts.map +1 -0
  454. package/dist/esm/services/items/schemas/locationsBins.js +32 -0
  455. package/dist/esm/services/items/schemas/locationsBins.js.map +1 -0
  456. package/dist/esm/services/legacy/client.d.ts +522 -280
  457. package/dist/esm/services/legacy/client.d.ts.map +1 -1
  458. package/dist/esm/services/legacy/client.js +388 -146
  459. package/dist/esm/services/legacy/client.js.map +1 -1
  460. package/dist/esm/services/nexus/client.d.ts +169 -156
  461. package/dist/esm/services/nexus/client.d.ts.map +1 -1
  462. package/dist/esm/services/nexus/client.js +158 -145
  463. package/dist/esm/services/nexus/client.js.map +1 -1
  464. package/dist/esm/services/open-search/client.d.ts +434 -162
  465. package/dist/esm/services/open-search/client.d.ts.map +1 -1
  466. package/dist/esm/services/open-search/client.js +253 -116
  467. package/dist/esm/services/open-search/client.js.map +1 -1
  468. package/dist/esm/services/{pricing/schemas/health.d.ts → open-search/schemas/healthCheck.d.ts} +19 -49
  469. package/dist/esm/services/open-search/schemas/healthCheck.d.ts.map +1 -0
  470. package/dist/esm/services/open-search/schemas/healthCheck.js +14 -0
  471. package/dist/esm/services/open-search/schemas/healthCheck.js.map +1 -0
  472. package/dist/esm/services/open-search/schemas/index.d.ts +5 -0
  473. package/dist/esm/services/open-search/schemas/index.d.ts.map +1 -1
  474. package/dist/esm/services/open-search/schemas/index.js +6 -0
  475. package/dist/esm/services/open-search/schemas/index.js.map +1 -1
  476. package/dist/esm/services/open-search/schemas/itemSearch.d.ts +394 -0
  477. package/dist/esm/services/open-search/schemas/itemSearch.d.ts.map +1 -0
  478. package/dist/esm/services/open-search/schemas/itemSearch.js +71 -0
  479. package/dist/esm/services/open-search/schemas/itemSearch.js.map +1 -0
  480. package/dist/esm/services/open-search/schemas/itemSearchAttributes.d.ts +359 -0
  481. package/dist/esm/services/open-search/schemas/itemSearchAttributes.d.ts.map +1 -0
  482. package/dist/esm/services/open-search/schemas/itemSearchAttributes.js +44 -0
  483. package/dist/esm/services/open-search/schemas/itemSearchAttributes.js.map +1 -0
  484. package/dist/esm/services/open-search/schemas/itemsRefresh.d.ts +512 -0
  485. package/dist/esm/services/open-search/schemas/itemsRefresh.d.ts.map +1 -0
  486. package/dist/esm/services/open-search/schemas/itemsRefresh.js +59 -0
  487. package/dist/esm/services/open-search/schemas/itemsRefresh.js.map +1 -0
  488. package/dist/esm/services/open-search/schemas/ping.d.ts +57 -0
  489. package/dist/esm/services/open-search/schemas/ping.d.ts.map +1 -0
  490. package/dist/esm/services/open-search/schemas/ping.js +11 -0
  491. package/dist/esm/services/open-search/schemas/ping.js.map +1 -0
  492. package/dist/esm/services/orders/client.d.ts +496 -646
  493. package/dist/esm/services/orders/client.d.ts.map +1 -1
  494. package/dist/esm/services/orders/client.js +311 -476
  495. package/dist/esm/services/orders/client.js.map +1 -1
  496. package/dist/esm/services/orders/schemas/invoices.d.ts +10 -10
  497. package/dist/esm/services/orders/schemas/invoices.js +1 -1
  498. package/dist/esm/services/p21-apis/client.d.ts +311 -534
  499. package/dist/esm/services/p21-apis/client.d.ts.map +1 -1
  500. package/dist/esm/services/p21-apis/client.js +304 -637
  501. package/dist/esm/services/p21-apis/client.js.map +1 -1
  502. package/dist/esm/services/p21-apis/schemas.d.ts +9 -78
  503. package/dist/esm/services/p21-apis/schemas.d.ts.map +1 -1
  504. package/dist/esm/services/p21-apis/schemas.js +9 -32
  505. package/dist/esm/services/p21-apis/schemas.js.map +1 -1
  506. package/dist/esm/services/p21-core/client.d.ts +111 -75
  507. package/dist/esm/services/p21-core/client.d.ts.map +1 -1
  508. package/dist/esm/services/p21-core/client.js +146 -106
  509. package/dist/esm/services/p21-core/client.js.map +1 -1
  510. package/dist/esm/services/p21-pim/client.d.ts +163 -37
  511. package/dist/esm/services/p21-pim/client.d.ts.map +1 -1
  512. package/dist/esm/services/p21-pim/client.js +163 -37
  513. package/dist/esm/services/p21-pim/client.js.map +1 -1
  514. package/dist/esm/services/p21-pim/schemas/ai-suggestions.d.ts +6 -6
  515. package/dist/esm/services/p21-pim/schemas/ai-suggestions.d.ts.map +1 -1
  516. package/dist/esm/services/p21-pim/schemas/ai-suggestions.js +1 -1
  517. package/dist/esm/services/p21-pim/schemas/ai-suggestions.js.map +1 -1
  518. package/dist/esm/services/p21-pim/schemas/inventory.d.ts +32 -32
  519. package/dist/esm/services/p21-sism/client.d.ts +315 -261
  520. package/dist/esm/services/p21-sism/client.d.ts.map +1 -1
  521. package/dist/esm/services/p21-sism/client.js +371 -313
  522. package/dist/esm/services/p21-sism/client.js.map +1 -1
  523. package/dist/esm/services/pricing/client.d.ts +289 -59
  524. package/dist/esm/services/pricing/client.d.ts.map +1 -1
  525. package/dist/esm/services/pricing/client.js +318 -70
  526. package/dist/esm/services/pricing/client.js.map +1 -1
  527. package/dist/esm/services/pricing/schemas/healthCheck.d.ts +70 -0
  528. package/dist/esm/services/pricing/schemas/healthCheck.d.ts.map +1 -0
  529. package/dist/esm/services/pricing/schemas/healthCheck.js +3 -0
  530. package/dist/esm/services/pricing/schemas/healthCheck.js.map +1 -0
  531. package/dist/esm/services/pricing/schemas/index.d.ts +6 -4
  532. package/dist/esm/services/pricing/schemas/index.d.ts.map +1 -1
  533. package/dist/esm/services/pricing/schemas/index.js +9 -5
  534. package/dist/esm/services/pricing/schemas/index.js.map +1 -1
  535. package/dist/esm/services/pricing/schemas/jobPriceHdr.d.ts +391 -0
  536. package/dist/esm/services/pricing/schemas/jobPriceHdr.d.ts.map +1 -0
  537. package/dist/esm/services/pricing/schemas/jobPriceHdr.js +31 -0
  538. package/dist/esm/services/pricing/schemas/jobPriceHdr.js.map +1 -0
  539. package/dist/{types/services/pricing/schemas/job-pricing.d.ts → esm/services/pricing/schemas/jobPriceHdrLines.d.ts} +1 -390
  540. package/dist/esm/services/pricing/schemas/jobPriceHdrLines.d.ts.map +1 -0
  541. package/dist/esm/services/pricing/schemas/{job-pricing.js → jobPriceHdrLines.js} +4 -28
  542. package/dist/esm/services/pricing/schemas/jobPriceHdrLines.js.map +1 -0
  543. package/dist/esm/services/pricing/schemas/ping.d.ts +49 -0
  544. package/dist/esm/services/pricing/schemas/ping.d.ts.map +1 -0
  545. package/dist/esm/services/pricing/schemas/ping.js +3 -0
  546. package/dist/esm/services/pricing/schemas/ping.js.map +1 -0
  547. package/dist/{types/services/pricing/schemas/pricing.d.ts → esm/services/pricing/schemas/priceEngine.d.ts} +1 -1
  548. package/dist/esm/services/pricing/schemas/priceEngine.d.ts.map +1 -0
  549. package/dist/esm/services/pricing/schemas/{pricing.js → priceEngine.js} +4 -2
  550. package/dist/esm/services/pricing/schemas/priceEngine.js.map +1 -0
  551. package/dist/{cjs/services/pricing/schemas/tax.d.ts → esm/services/pricing/schemas/taxEngine.d.ts} +1 -1
  552. package/dist/esm/services/pricing/schemas/taxEngine.d.ts.map +1 -0
  553. package/dist/esm/services/pricing/schemas/{tax.js → taxEngine.js} +7 -2
  554. package/dist/esm/services/pricing/schemas/taxEngine.js.map +1 -0
  555. package/dist/esm/services/shipping/client.d.ts +47 -110
  556. package/dist/esm/services/shipping/client.d.ts.map +1 -1
  557. package/dist/esm/services/shipping/client.js +62 -115
  558. package/dist/esm/services/shipping/client.js.map +1 -1
  559. package/dist/esm/services/shipping/index.d.ts +2 -2
  560. package/dist/esm/services/shipping/index.d.ts.map +1 -1
  561. package/dist/esm/services/shipping/index.js +1 -1
  562. package/dist/esm/services/shipping/index.js.map +1 -1
  563. package/dist/esm/services/shipping/schemas/healthCheck.d.ts +118 -0
  564. package/dist/esm/services/shipping/schemas/healthCheck.d.ts.map +1 -0
  565. package/dist/esm/services/shipping/schemas/healthCheck.js +24 -0
  566. package/dist/esm/services/shipping/schemas/healthCheck.js.map +1 -0
  567. package/dist/esm/services/shipping/schemas/index.d.ts +5 -0
  568. package/dist/esm/services/shipping/schemas/index.d.ts.map +1 -0
  569. package/dist/esm/services/shipping/schemas/index.js +5 -0
  570. package/dist/esm/services/shipping/schemas/index.js.map +1 -0
  571. package/dist/esm/services/shipping/{schemas.d.ts → schemas/rates.d.ts} +1 -117
  572. package/dist/{types/services/shipping/schemas.d.ts.map → esm/services/shipping/schemas/rates.d.ts.map} +1 -1
  573. package/dist/esm/services/shipping/{schemas.js → schemas/rates.js} +2 -26
  574. package/dist/esm/services/shipping/schemas/rates.js.map +1 -0
  575. package/dist/esm/services/slack/client.d.ts +289 -260
  576. package/dist/esm/services/slack/client.d.ts.map +1 -1
  577. package/dist/esm/services/slack/client.js +323 -280
  578. package/dist/esm/services/slack/client.js.map +1 -1
  579. package/dist/esm/services/slack/index.d.ts +2 -2
  580. package/dist/esm/services/slack/index.d.ts.map +1 -1
  581. package/dist/esm/services/slack/index.js +1 -1
  582. package/dist/esm/services/slack/index.js.map +1 -1
  583. package/dist/esm/services/slack/schemas/healthCheck.d.ts +138 -0
  584. package/dist/esm/services/slack/schemas/healthCheck.d.ts.map +1 -0
  585. package/dist/esm/services/slack/schemas/healthCheck.js +26 -0
  586. package/dist/esm/services/slack/schemas/healthCheck.js.map +1 -0
  587. package/dist/esm/services/slack/schemas/index.d.ts +4 -0
  588. package/dist/esm/services/slack/schemas/index.d.ts.map +1 -0
  589. package/dist/esm/services/slack/schemas/index.js +7 -0
  590. package/dist/esm/services/slack/schemas/index.js.map +1 -0
  591. package/dist/esm/services/slack/{schemas.d.ts → schemas/webHook.d.ts} +3 -298
  592. package/dist/esm/services/slack/schemas/webHook.d.ts.map +1 -0
  593. package/dist/esm/services/slack/{schemas.js → schemas/webHook.js} +3 -55
  594. package/dist/esm/services/slack/schemas/webHook.js.map +1 -0
  595. package/dist/esm/services/slack/schemas/webHookRefresh.d.ts +161 -0
  596. package/dist/esm/services/slack/schemas/webHookRefresh.d.ts.map +1 -0
  597. package/dist/esm/services/slack/schemas/webHookRefresh.js +29 -0
  598. package/dist/esm/services/slack/schemas/webHookRefresh.js.map +1 -0
  599. package/dist/esm/services/smarty-streets/client.d.ts +238 -214
  600. package/dist/esm/services/smarty-streets/client.d.ts.map +1 -1
  601. package/dist/esm/services/smarty-streets/client.js +274 -251
  602. package/dist/esm/services/smarty-streets/client.js.map +1 -1
  603. package/dist/esm/services/smarty-streets/index.d.ts +2 -2
  604. package/dist/esm/services/smarty-streets/index.d.ts.map +1 -1
  605. package/dist/esm/services/smarty-streets/index.js +2 -2
  606. package/dist/esm/services/smarty-streets/index.js.map +1 -1
  607. package/dist/esm/services/smarty-streets/schemas/healthCheck.d.ts +140 -0
  608. package/dist/esm/services/smarty-streets/schemas/healthCheck.d.ts.map +1 -0
  609. package/dist/esm/services/smarty-streets/schemas/healthCheck.js +28 -0
  610. package/dist/esm/services/smarty-streets/schemas/healthCheck.js.map +1 -0
  611. package/dist/esm/services/smarty-streets/schemas/index.d.ts +7 -0
  612. package/dist/esm/services/smarty-streets/schemas/index.d.ts.map +1 -0
  613. package/dist/esm/services/smarty-streets/schemas/index.js +8 -0
  614. package/dist/esm/services/smarty-streets/schemas/index.js.map +1 -0
  615. package/dist/esm/services/smarty-streets/schemas/ping.d.ts +120 -0
  616. package/dist/esm/services/smarty-streets/schemas/ping.d.ts.map +1 -0
  617. package/dist/esm/services/smarty-streets/schemas/ping.js +26 -0
  618. package/dist/esm/services/smarty-streets/schemas/ping.js.map +1 -0
  619. package/dist/esm/services/smarty-streets/{schemas.d.ts → schemas/usLookup.d.ts} +11 -262
  620. package/dist/esm/services/smarty-streets/schemas/usLookup.d.ts.map +1 -0
  621. package/dist/esm/services/smarty-streets/{schemas.js → schemas/usLookup.js} +8 -54
  622. package/dist/esm/services/smarty-streets/schemas/usLookup.js.map +1 -0
  623. package/dist/esm/services/ups/client.d.ts +65 -95
  624. package/dist/esm/services/ups/client.d.ts.map +1 -1
  625. package/dist/esm/services/ups/client.js +76 -105
  626. package/dist/esm/services/ups/client.js.map +1 -1
  627. package/dist/esm/services/ups/schemas/healthCheck.d.ts +138 -0
  628. package/dist/esm/services/ups/schemas/healthCheck.d.ts.map +1 -0
  629. package/dist/esm/services/ups/schemas/healthCheck.js +26 -0
  630. package/dist/esm/services/ups/schemas/healthCheck.js.map +1 -0
  631. package/dist/esm/services/ups/schemas/index.d.ts +5 -0
  632. package/dist/esm/services/ups/schemas/index.d.ts.map +1 -0
  633. package/dist/esm/services/ups/schemas/index.js +5 -0
  634. package/dist/esm/services/ups/schemas/index.js.map +1 -0
  635. package/dist/esm/services/ups/schemas/ratesShop.d.ts +1751 -0
  636. package/dist/esm/services/ups/schemas/ratesShop.d.ts.map +1 -0
  637. package/dist/esm/services/ups/schemas/ratesShop.js +172 -0
  638. package/dist/esm/services/ups/schemas/ratesShop.js.map +1 -0
  639. package/dist/esm/services/ups/schemas.d.ts +4 -1886
  640. package/dist/esm/services/ups/schemas.d.ts.map +1 -1
  641. package/dist/esm/services/ups/schemas.js +4 -197
  642. package/dist/esm/services/ups/schemas.js.map +1 -1
  643. package/dist/esm/services/vmi/client.d.ts +605 -550
  644. package/dist/esm/services/vmi/client.d.ts.map +1 -1
  645. package/dist/esm/services/vmi/client.js +604 -558
  646. package/dist/esm/services/vmi/client.js.map +1 -1
  647. package/dist/types/client.d.ts +78 -0
  648. package/dist/types/client.d.ts.map +1 -1
  649. package/dist/types/index.d.ts +1 -1
  650. package/dist/types/services/agr-info/client.d.ts +579 -545
  651. package/dist/types/services/agr-info/client.d.ts.map +1 -1
  652. package/dist/types/services/agr-site/client.d.ts +156 -85
  653. package/dist/types/services/agr-site/client.d.ts.map +1 -1
  654. package/dist/types/services/agr-work/client.d.ts +152 -96
  655. package/dist/types/services/agr-work/client.d.ts.map +1 -1
  656. package/dist/types/services/avalara/client.d.ts +260 -316
  657. package/dist/types/services/avalara/client.d.ts.map +1 -1
  658. package/dist/types/services/brand-folder/client.d.ts +200 -170
  659. package/dist/types/services/brand-folder/client.d.ts.map +1 -1
  660. package/dist/types/services/brand-folder/schemas.d.ts +8 -8
  661. package/dist/types/services/commerce/client.d.ts +821 -877
  662. package/dist/types/services/commerce/client.d.ts.map +1 -1
  663. package/dist/types/services/customers/client.d.ts +310 -565
  664. package/dist/types/services/customers/client.d.ts.map +1 -1
  665. package/dist/types/services/gregorovich/client.d.ts +347 -311
  666. package/dist/types/services/gregorovich/client.d.ts.map +1 -1
  667. package/dist/types/services/gregorovich/index.d.ts +1 -1
  668. package/dist/types/services/gregorovich/index.d.ts.map +1 -1
  669. package/dist/types/services/gregorovich/schemas/chatGptAsk.d.ts +371 -0
  670. package/dist/types/services/gregorovich/schemas/chatGptAsk.d.ts.map +1 -0
  671. package/dist/types/services/gregorovich/schemas/documents.d.ts +398 -0
  672. package/dist/types/services/gregorovich/schemas/documents.d.ts.map +1 -0
  673. package/dist/types/services/gregorovich/schemas/healthCheck.d.ts +53 -0
  674. package/dist/types/services/gregorovich/schemas/healthCheck.d.ts.map +1 -0
  675. package/dist/types/services/gregorovich/schemas/index.d.ts +5 -0
  676. package/dist/types/services/gregorovich/schemas/index.d.ts.map +1 -0
  677. package/dist/types/services/gregorovich/schemas/ollamaGenerate.d.ts +433 -0
  678. package/dist/types/services/gregorovich/schemas/ollamaGenerate.d.ts.map +1 -0
  679. package/dist/types/services/gregorovich/schemas.d.ts +1 -1217
  680. package/dist/types/services/gregorovich/schemas.d.ts.map +1 -1
  681. package/dist/types/services/items/client.d.ts +1865 -1724
  682. package/dist/types/services/items/client.d.ts.map +1 -1
  683. package/dist/types/services/items/schemas/attributes.d.ts +2 -2
  684. package/dist/types/services/items/schemas/brandsItems.d.ts +304 -0
  685. package/dist/types/services/items/schemas/brandsItems.d.ts.map +1 -0
  686. package/dist/types/services/items/schemas/categoriesImages.d.ts +127 -0
  687. package/dist/types/services/items/schemas/categoriesImages.d.ts.map +1 -0
  688. package/dist/types/services/items/schemas/index.d.ts +12 -0
  689. package/dist/types/services/items/schemas/index.d.ts.map +1 -1
  690. package/dist/types/services/items/schemas/internalPdf.d.ts +212 -0
  691. package/dist/types/services/items/schemas/internalPdf.d.ts.map +1 -0
  692. package/dist/types/services/items/schemas/invMastAccessory.d.ts +127 -0
  693. package/dist/types/services/items/schemas/invMastAccessory.d.ts.map +1 -0
  694. package/dist/types/services/items/schemas/invMastAlternateCode.d.ts +147 -0
  695. package/dist/types/services/items/schemas/invMastAlternateCode.d.ts.map +1 -0
  696. package/dist/types/services/items/schemas/invMastAttributes.d.ts +177 -0
  697. package/dist/types/services/items/schemas/invMastAttributes.d.ts.map +1 -0
  698. package/dist/types/services/items/schemas/invMastAttributesValues.d.ts +333 -0
  699. package/dist/types/services/items/schemas/invMastAttributesValues.d.ts.map +1 -0
  700. package/dist/types/services/items/schemas/invMastDoc.d.ts +137 -0
  701. package/dist/types/services/items/schemas/invMastDoc.d.ts.map +1 -0
  702. package/dist/types/services/items/schemas/invMastLinks.d.ts +147 -0
  703. package/dist/types/services/items/schemas/invMastLinks.d.ts.map +1 -0
  704. package/dist/types/services/items/schemas/invMastSimilar.d.ts +127 -0
  705. package/dist/types/services/items/schemas/invMastSimilar.d.ts.map +1 -0
  706. package/dist/types/services/items/schemas/invMastSub.d.ts +127 -0
  707. package/dist/types/services/items/schemas/invMastSub.d.ts.map +1 -0
  708. package/dist/types/services/items/schemas/invMastSubParts.d.ts +187 -0
  709. package/dist/types/services/items/schemas/invMastSubParts.d.ts.map +1 -0
  710. package/dist/types/services/items/schemas/itemFavorites.d.ts +236 -0
  711. package/dist/types/services/items/schemas/itemFavorites.d.ts.map +1 -0
  712. package/dist/types/services/items/schemas/locationsBins.d.ts +381 -0
  713. package/dist/types/services/items/schemas/locationsBins.d.ts.map +1 -0
  714. package/dist/types/services/legacy/client.d.ts +522 -280
  715. package/dist/types/services/legacy/client.d.ts.map +1 -1
  716. package/dist/types/services/nexus/client.d.ts +169 -156
  717. package/dist/types/services/nexus/client.d.ts.map +1 -1
  718. package/dist/types/services/open-search/client.d.ts +434 -162
  719. package/dist/types/services/open-search/client.d.ts.map +1 -1
  720. package/dist/types/services/{pricing/schemas/health.d.ts → open-search/schemas/healthCheck.d.ts} +19 -49
  721. package/dist/types/services/open-search/schemas/healthCheck.d.ts.map +1 -0
  722. package/dist/types/services/open-search/schemas/index.d.ts +5 -0
  723. package/dist/types/services/open-search/schemas/index.d.ts.map +1 -1
  724. package/dist/types/services/open-search/schemas/itemSearch.d.ts +394 -0
  725. package/dist/types/services/open-search/schemas/itemSearch.d.ts.map +1 -0
  726. package/dist/types/services/open-search/schemas/itemSearchAttributes.d.ts +359 -0
  727. package/dist/types/services/open-search/schemas/itemSearchAttributes.d.ts.map +1 -0
  728. package/dist/types/services/open-search/schemas/itemsRefresh.d.ts +512 -0
  729. package/dist/types/services/open-search/schemas/itemsRefresh.d.ts.map +1 -0
  730. package/dist/types/services/open-search/schemas/ping.d.ts +57 -0
  731. package/dist/types/services/open-search/schemas/ping.d.ts.map +1 -0
  732. package/dist/types/services/orders/client.d.ts +496 -646
  733. package/dist/types/services/orders/client.d.ts.map +1 -1
  734. package/dist/types/services/orders/schemas/invoices.d.ts +10 -10
  735. package/dist/types/services/p21-apis/client.d.ts +311 -534
  736. package/dist/types/services/p21-apis/client.d.ts.map +1 -1
  737. package/dist/types/services/p21-apis/schemas.d.ts +9 -78
  738. package/dist/types/services/p21-apis/schemas.d.ts.map +1 -1
  739. package/dist/types/services/p21-core/client.d.ts +111 -75
  740. package/dist/types/services/p21-core/client.d.ts.map +1 -1
  741. package/dist/types/services/p21-pim/client.d.ts +163 -37
  742. package/dist/types/services/p21-pim/client.d.ts.map +1 -1
  743. package/dist/types/services/p21-pim/schemas/ai-suggestions.d.ts +6 -6
  744. package/dist/types/services/p21-pim/schemas/ai-suggestions.d.ts.map +1 -1
  745. package/dist/types/services/p21-pim/schemas/inventory.d.ts +32 -32
  746. package/dist/types/services/p21-sism/client.d.ts +315 -261
  747. package/dist/types/services/p21-sism/client.d.ts.map +1 -1
  748. package/dist/types/services/pricing/client.d.ts +289 -59
  749. package/dist/types/services/pricing/client.d.ts.map +1 -1
  750. package/dist/types/services/pricing/schemas/healthCheck.d.ts +70 -0
  751. package/dist/types/services/pricing/schemas/healthCheck.d.ts.map +1 -0
  752. package/dist/types/services/pricing/schemas/index.d.ts +6 -4
  753. package/dist/types/services/pricing/schemas/index.d.ts.map +1 -1
  754. package/dist/types/services/pricing/schemas/jobPriceHdr.d.ts +391 -0
  755. package/dist/types/services/pricing/schemas/jobPriceHdr.d.ts.map +1 -0
  756. package/dist/{esm/services/pricing/schemas/job-pricing.d.ts → types/services/pricing/schemas/jobPriceHdrLines.d.ts} +1 -390
  757. package/dist/types/services/pricing/schemas/jobPriceHdrLines.d.ts.map +1 -0
  758. package/dist/types/services/pricing/schemas/ping.d.ts +49 -0
  759. package/dist/types/services/pricing/schemas/ping.d.ts.map +1 -0
  760. package/dist/{esm/services/pricing/schemas/pricing.d.ts → types/services/pricing/schemas/priceEngine.d.ts} +1 -1
  761. package/dist/types/services/pricing/schemas/priceEngine.d.ts.map +1 -0
  762. package/dist/{esm/services/pricing/schemas/tax.d.ts → types/services/pricing/schemas/taxEngine.d.ts} +1 -1
  763. package/dist/types/services/pricing/schemas/taxEngine.d.ts.map +1 -0
  764. package/dist/types/services/shipping/client.d.ts +47 -110
  765. package/dist/types/services/shipping/client.d.ts.map +1 -1
  766. package/dist/types/services/shipping/index.d.ts +2 -2
  767. package/dist/types/services/shipping/index.d.ts.map +1 -1
  768. package/dist/types/services/shipping/schemas/healthCheck.d.ts +118 -0
  769. package/dist/types/services/shipping/schemas/healthCheck.d.ts.map +1 -0
  770. package/dist/types/services/shipping/schemas/index.d.ts +5 -0
  771. package/dist/types/services/shipping/schemas/index.d.ts.map +1 -0
  772. package/dist/types/services/shipping/{schemas.d.ts → schemas/rates.d.ts} +1 -117
  773. package/dist/{esm/services/shipping/schemas.d.ts.map → types/services/shipping/schemas/rates.d.ts.map} +1 -1
  774. package/dist/types/services/slack/client.d.ts +289 -260
  775. package/dist/types/services/slack/client.d.ts.map +1 -1
  776. package/dist/types/services/slack/index.d.ts +2 -2
  777. package/dist/types/services/slack/index.d.ts.map +1 -1
  778. package/dist/types/services/slack/schemas/healthCheck.d.ts +138 -0
  779. package/dist/types/services/slack/schemas/healthCheck.d.ts.map +1 -0
  780. package/dist/types/services/slack/schemas/index.d.ts +4 -0
  781. package/dist/types/services/slack/schemas/index.d.ts.map +1 -0
  782. package/dist/{cjs/services/slack/schemas.d.ts → types/services/slack/schemas/webHook.d.ts} +3 -298
  783. package/dist/types/services/slack/schemas/webHook.d.ts.map +1 -0
  784. package/dist/types/services/slack/schemas/webHookRefresh.d.ts +161 -0
  785. package/dist/types/services/slack/schemas/webHookRefresh.d.ts.map +1 -0
  786. package/dist/types/services/smarty-streets/client.d.ts +238 -214
  787. package/dist/types/services/smarty-streets/client.d.ts.map +1 -1
  788. package/dist/types/services/smarty-streets/index.d.ts +2 -2
  789. package/dist/types/services/smarty-streets/index.d.ts.map +1 -1
  790. package/dist/types/services/smarty-streets/schemas/healthCheck.d.ts +140 -0
  791. package/dist/types/services/smarty-streets/schemas/healthCheck.d.ts.map +1 -0
  792. package/dist/types/services/smarty-streets/schemas/index.d.ts +7 -0
  793. package/dist/types/services/smarty-streets/schemas/index.d.ts.map +1 -0
  794. package/dist/types/services/smarty-streets/schemas/ping.d.ts +120 -0
  795. package/dist/types/services/smarty-streets/schemas/ping.d.ts.map +1 -0
  796. package/dist/types/services/smarty-streets/{schemas.d.ts → schemas/usLookup.d.ts} +11 -262
  797. package/dist/types/services/smarty-streets/schemas/usLookup.d.ts.map +1 -0
  798. package/dist/types/services/ups/client.d.ts +65 -95
  799. package/dist/types/services/ups/client.d.ts.map +1 -1
  800. package/dist/types/services/ups/schemas/healthCheck.d.ts +138 -0
  801. package/dist/types/services/ups/schemas/healthCheck.d.ts.map +1 -0
  802. package/dist/types/services/ups/schemas/index.d.ts +5 -0
  803. package/dist/types/services/ups/schemas/index.d.ts.map +1 -0
  804. package/dist/types/services/ups/schemas/ratesShop.d.ts +1751 -0
  805. package/dist/types/services/ups/schemas/ratesShop.d.ts.map +1 -0
  806. package/dist/types/services/ups/schemas.d.ts +4 -1886
  807. package/dist/types/services/ups/schemas.d.ts.map +1 -1
  808. package/dist/types/services/vmi/client.d.ts +605 -550
  809. package/dist/types/services/vmi/client.d.ts.map +1 -1
  810. package/package.json +3 -1
  811. package/dist/cjs/services/pricing/schemas/health.d.ts.map +0 -1
  812. package/dist/cjs/services/pricing/schemas/health.js.map +0 -1
  813. package/dist/cjs/services/pricing/schemas/job-pricing.d.ts.map +0 -1
  814. package/dist/cjs/services/pricing/schemas/job-pricing.js.map +0 -1
  815. package/dist/cjs/services/pricing/schemas/pricing.d.ts.map +0 -1
  816. package/dist/cjs/services/pricing/schemas/pricing.js.map +0 -1
  817. package/dist/cjs/services/pricing/schemas/tax.d.ts.map +0 -1
  818. package/dist/cjs/services/pricing/schemas/tax.js.map +0 -1
  819. package/dist/cjs/services/shipping/schemas.js.map +0 -1
  820. package/dist/cjs/services/slack/schemas.d.ts.map +0 -1
  821. package/dist/cjs/services/slack/schemas.js.map +0 -1
  822. package/dist/cjs/services/smarty-streets/schemas.d.ts.map +0 -1
  823. package/dist/cjs/services/smarty-streets/schemas.js.map +0 -1
  824. package/dist/esm/services/pricing/schemas/health.d.ts.map +0 -1
  825. package/dist/esm/services/pricing/schemas/health.js +0 -4
  826. package/dist/esm/services/pricing/schemas/health.js.map +0 -1
  827. package/dist/esm/services/pricing/schemas/job-pricing.d.ts.map +0 -1
  828. package/dist/esm/services/pricing/schemas/job-pricing.js.map +0 -1
  829. package/dist/esm/services/pricing/schemas/pricing.d.ts.map +0 -1
  830. package/dist/esm/services/pricing/schemas/pricing.js.map +0 -1
  831. package/dist/esm/services/pricing/schemas/tax.d.ts.map +0 -1
  832. package/dist/esm/services/pricing/schemas/tax.js.map +0 -1
  833. package/dist/esm/services/shipping/schemas.js.map +0 -1
  834. package/dist/esm/services/slack/schemas.d.ts.map +0 -1
  835. package/dist/esm/services/slack/schemas.js.map +0 -1
  836. package/dist/esm/services/smarty-streets/schemas.d.ts.map +0 -1
  837. package/dist/esm/services/smarty-streets/schemas.js.map +0 -1
  838. package/dist/types/services/pricing/schemas/health.d.ts.map +0 -1
  839. package/dist/types/services/pricing/schemas/job-pricing.d.ts.map +0 -1
  840. package/dist/types/services/pricing/schemas/pricing.d.ts.map +0 -1
  841. package/dist/types/services/pricing/schemas/tax.d.ts.map +0 -1
  842. package/dist/types/services/slack/schemas.d.ts.map +0 -1
  843. package/dist/types/services/smarty-streets/schemas.d.ts.map +0 -1
@@ -38,7 +38,7 @@ const schemas_1 = require("./schemas");
38
38
  *
39
39
  * // Get category with items
40
40
  * const category = await items.categories.get(100);
41
- * const categoryItems = await items.categories.getItems(100, { limit: 12 });
41
+ * const categoryItems = await items.categories.item.list(100);
42
42
  * ```
43
43
  */
44
44
  class ItemsClient extends base_client_1.BaseServiceClient {
@@ -54,19 +54,22 @@ class ItemsClient extends base_client_1.BaseServiceClient {
54
54
  * @description Methods for product management including search, details, alternate codes, and accessories
55
55
  */
56
56
  /**
57
- * Category management endpoints
58
- * @description Methods for hierarchical product categorization including category details, items, attributes, and filtering
57
+ * Item Category management endpoints
58
+ * @description Methods for /item-category/* paths following OpenAPI Path Mirroring Pattern
59
59
  */
60
- this.categories = {
60
+ this.itemCategory = {
61
61
  /**
62
- * List all categories with filtering and pagination
63
- * @description Retrieve a paginated list of categories with filtering options
62
+ * List all item categories with filtering and pagination
63
+ * @description Retrieve a paginated list of item categories with filtering options
64
+ * @fullPath api.items.itemCategory.list
65
+ * @service items
66
+ * @domain inventory-management
64
67
  * @param params Optional filtering and pagination parameters
65
- * @returns Array of category entities
68
+ * @returns Array of item category entities
66
69
  * @throws ValidationError When parameters are invalid or response is malformed
67
70
  * @example
68
71
  * ```typescript
69
- * const categories = await client.categories.list({
72
+ * const categories = await client.itemCategory.list({
70
73
  * displayOnWebFlag: 'Y',
71
74
  * limit: 50
72
75
  * });
@@ -81,257 +84,267 @@ class ItemsClient extends base_client_1.BaseServiceClient {
81
84
  }, params);
82
85
  },
83
86
  /**
84
- * Lookup category with hierarchical structure
85
- * @description Retrieve category with subcategories in hierarchical structure
86
- * @param params Lookup parameters including category UID or ID
87
- * @returns Category with subcategories
88
- * @throws ValidationError When parameters are invalid or response is malformed
87
+ * Get item category details by ID
88
+ * @description Retrieve comprehensive item category information
89
+ * @fullPath api.items.itemCategory.get
90
+ * @service items
91
+ * @domain inventory-management
92
+ * @param itemCategoryUid Item category unique identifier
93
+ * @returns Complete item category details
94
+ * @throws ValidationError When response is malformed
89
95
  * @example
90
96
  * ```typescript
91
- * const categoryLookup = await client.categories.lookup({
92
- * itemCategoryUid: 100,
93
- * includeSubCategories: true
94
- * });
97
+ * const category = await client.itemCategory.get(100);
98
+ * console.log(category.data.itemCategoryDesc);
95
99
  * ```
96
100
  */
97
- lookup: async (params) => {
101
+ get: async (itemCategoryUid) => {
98
102
  return this.executeRequest({
99
103
  method: 'GET',
100
- path: '/item-category/lookup',
101
- paramsSchema: schemas_1.CategoryLookupParamsSchema,
102
- responseSchema: schemas_1.CategoryLookupResponseSchema,
103
- }, params);
104
+ path: '/item-category/{itemCategoryUid}',
105
+ responseSchema: schemas_1.CategoryResponseSchema,
106
+ }, undefined, { itemCategoryUid: String(itemCategoryUid) });
104
107
  },
105
108
  /**
106
- * Pre-cache a single category
107
- * @description Trigger pre-caching for a specific category to improve response times
108
- * @param itemCategoryUid Category unique identifier
109
- * @returns Boolean indicating if pre-cache was queued successfully
110
- * @throws ValidationError When response is malformed
111
- * @example
112
- * ```typescript
113
- * const cached = await client.categories.preCache(100);
114
- * if (cached.data) {
115
- * console.log('Category pre-cache queued successfully');
116
- * }
117
- * ```
109
+ * Item category lookup - Direct path mapping to /item-category/lookup
110
+ * @description OpenAPI Path Mirroring: /item-category/lookup itemCategory.lookup.get()
118
111
  */
119
- preCache: async (itemCategoryUid) => {
120
- return this.executeRequest({
121
- method: 'GET',
122
- path: '/item-category/{id}/precache',
123
- responseSchema: schemas_1.CategoryPreCacheResponseSchema,
124
- }, undefined, { id: String(itemCategoryUid) });
112
+ lookup: {
113
+ /**
114
+ * Lookup item category with hierarchical structure
115
+ * @description Retrieve item category with subcategories in hierarchical structure
116
+ * @fullPath api.items.itemCategory.lookup.get
117
+ * @service items
118
+ * @domain inventory-management
119
+ * @param params Lookup parameters
120
+ * @returns Item category with hierarchical structure
121
+ * @throws ValidationError When parameters are invalid or response is malformed
122
+ * @example
123
+ * ```typescript
124
+ * const categoryLookup = await client.itemCategory.lookup.get();
125
+ * ```
126
+ */
127
+ get: async (params) => {
128
+ return this.executeRequest({
129
+ method: 'GET',
130
+ path: '/item-category/lookup',
131
+ paramsSchema: schemas_1.CategoryLookupParamsSchema,
132
+ responseSchema: schemas_1.CategoryLookupResponseSchema,
133
+ }, params);
134
+ },
135
+ },
136
+ /**
137
+ * Item category documentation - Direct path mapping to /item-category/{itemCategoryUid}/doc
138
+ * @description OpenAPI Path Mirroring: /item-category/{itemCategoryUid}/doc → itemCategory.doc.get()
139
+ */
140
+ doc: {
141
+ /**
142
+ * Get item category documentation
143
+ * @description Retrieve documentation for a specific item category
144
+ * @fullPath api.items.itemCategory.doc.get
145
+ * @service items
146
+ * @domain inventory-management
147
+ * @param itemCategoryUid Item category unique identifier
148
+ * @returns Item category documentation
149
+ * @throws ValidationError When response is malformed
150
+ * @example
151
+ * ```typescript
152
+ * const docs = await client.itemCategory.doc.get(100);
153
+ * ```
154
+ */
155
+ get: async (itemCategoryUid) => {
156
+ return this.executeRequest({
157
+ method: 'GET',
158
+ path: '/item-category/{itemCategoryUid}/doc',
159
+ responseSchema: schemas_1.CategoryResponseSchema,
160
+ }, undefined, { itemCategoryUid: String(itemCategoryUid) });
161
+ },
125
162
  },
163
+ };
164
+ /**
165
+ * Category management endpoints
166
+ * @description Methods for /categories/* paths following OpenAPI Path Mirroring Pattern
167
+ */
168
+ this.categories = {
126
169
  /**
127
- * Get category details by ID or path
128
- * @description Retrieve comprehensive category information including children, attributes, and metadata
170
+ * Get category details by ID
171
+ * @description Retrieve comprehensive category information
129
172
  * @fullPath api.items.categories.get
130
173
  * @service items
131
174
  * @domain inventory-management
132
- * @dataMethod categoriesData.get
133
- * @discoverable true
134
- * @searchTerms ["category details", "category info", "category by id", "category lookup", "hierarchical categories"]
135
- * @relatedEndpoints ["api.items.categories.getItems", "api.items.categories.list", "api.items.categories.getAttributes", "api.opensearch.categories"]
136
- * @commonPatterns ["Category navigation", "Get category info", "Category detail page", "Hierarchical browsing"]
137
- * @workflow ["category-navigation", "product-browsing", "taxonomy-management"]
138
- * @prerequisites ["Valid category UID or path", "Category access permissions"]
139
- * @nextSteps ["api.items.categories.getItems", "api.items.categories.getAttributes", "api.items.categories.getFilters"]
140
- * @businessRules ["Returns category hierarchy", "Includes subcategories if requested", "Respects category visibility settings"]
141
- * @functionalArea "category-and-taxonomy-management"
142
- * @caching "Cache for 30 minutes, invalidate on category structure changes"
143
- * @performance "Optimized for category navigation, supports path-based lookups"
144
- * @param itemCategoryUid Category unique identifier (use 0 for path-based lookup)
145
- * @param params Optional parameters for path lookup, filtering, and children pagination
146
- * @returns Complete category details with children and attributes
147
- * @throws ValidationError When parameters are invalid or response is malformed
175
+ * @param itemCategoryUid Category unique identifier
176
+ * @returns Complete category details
177
+ * @throws ValidationError When response is malformed
148
178
  * @example
149
179
  * ```typescript
150
- * // Get category by ID
151
180
  * const category = await client.categories.get(100);
152
- * console.log(category.data.itemCategoryDesc, category.data.path);
153
- *
154
- * // Get category by path
155
- * const categoryByPath = await client.categories.get(0, {
156
- * path: '/Electronics/Cables'
157
- * });
158
- *
159
- * // Get category with filtered children
160
- * const categoryWithChildren = await client.categories.get(100, {
161
- * childrenLimit: 10,
162
- * childrenFilter: 'audio'
163
- * });
181
+ * console.log(category.data.itemCategoryDesc);
164
182
  * ```
165
183
  */
166
184
  get: async (itemCategoryUid, params) => {
167
185
  return this.executeRequest({
168
186
  method: 'GET',
169
- path: '/categories/{id}',
187
+ path: '/categories/{itemCategoryUid}',
170
188
  paramsSchema: schemas_1.CategoryDetailsParamsSchema,
171
189
  responseSchema: schemas_1.CategoryResponseSchema,
172
- }, params, { id: String(itemCategoryUid) });
190
+ }, params, { itemCategoryUid: String(itemCategoryUid) });
173
191
  },
174
192
  /**
175
- * Get items within a category
176
- * @description Retrieve items within a specific category with advanced filtering, sorting, and pagination
177
- * @param itemCategoryUid Category unique identifier
178
- * @param params Optional filtering, sorting, and pagination parameters
179
- * @returns Array of category items with optional stock information
180
- * @throws ValidationError When parameters are invalid or response is malformed
181
- * @example
182
- * ```typescript
183
- * // Get category items with basic pagination
184
- * const items = await client.categories.getItems(100, { limit: 12 });
185
- *
186
- * // Get items with filtering and stock information
187
- * const filteredItems = await client.categories.getItems(100, {
188
- * limit: 20,
189
- * sortBy: 'listPrice|ASC',
190
- * includeStock: 'Y',
191
- * displayOnWebFlag: 'Y',
192
- * filters: JSON.stringify([
193
- * { attributeId: 'color', values: ['red', 'blue'], operator: 'IN' }
194
- * ])
195
- * });
196
- *
197
- * // Search within category
198
- * const searchResults = await client.categories.getItems(100, {
199
- * q: 'wireless',
200
- * limit: 10
201
- * });
202
- * ```
193
+ * Category lookup - Direct path mapping to /categories/lookup
194
+ * @description OpenAPI Path Mirroring: /categories/lookup categories.lookup.get()
203
195
  */
204
- getItems: async (itemCategoryUid, params) => {
205
- return this.executeRequest({
206
- method: 'GET',
207
- path: '/categories/{id}/items',
208
- paramsSchema: schemas_1.CategoryItemsParamsSchema,
209
- responseSchema: schemas_1.CategoryItemsResponseSchema,
210
- }, params, { id: String(itemCategoryUid) });
196
+ lookup: {
197
+ /**
198
+ * Lookup category with hierarchical structure
199
+ * @description Retrieve category with subcategories in hierarchical structure
200
+ * @fullPath api.items.categories.lookup.get
201
+ * @service items
202
+ * @domain inventory-management
203
+ * @param params Lookup parameters
204
+ * @returns Category with subcategories
205
+ * @throws ValidationError When parameters are invalid or response is malformed
206
+ * @example
207
+ * ```typescript
208
+ * const categoryLookup = await client.categories.lookup.get();
209
+ * ```
210
+ */
211
+ get: async (params) => {
212
+ return this.executeRequest({
213
+ method: 'GET',
214
+ path: '/categories/lookup',
215
+ paramsSchema: schemas_1.CategoryLookupParamsSchema,
216
+ responseSchema: schemas_1.CategoryLookupResponseSchema,
217
+ }, params);
218
+ },
211
219
  },
212
220
  /**
213
- * Get attributes available for a category
214
- * @description Retrieve attributes available for filtering within a category
215
- * @param itemCategoryUid Category unique identifier
216
- * @returns Array of category attributes with their available values
217
- * @throws ValidationError When response is malformed
218
- * @example
219
- * ```typescript
220
- * const attributes = await client.categories.getAttributes(100);
221
- * attributes.data.forEach(attr => {
222
- * console.log(`${attr.attributeDesc}: ${attr.values?.join(', ')}`);
223
- * });
224
- * ```
221
+ * Category items - Direct path mapping to /categories/{itemCategoryUid}/item
222
+ * @description OpenAPI Path Mirroring: /categories/{itemCategoryUid}/item categories.item.list()
225
223
  */
226
- getAttributes: async (itemCategoryUid) => {
227
- return this.executeRequest({
228
- method: 'GET',
229
- path: '/categories/{id}/attributes',
230
- responseSchema: schemas_1.CategoryAttributesResponseSchema,
231
- }, undefined, { id: String(itemCategoryUid) });
224
+ item: {
225
+ /**
226
+ * List items within a category
227
+ * @description Retrieve items within a specific category
228
+ * @fullPath api.items.categories.item.list
229
+ * @service items
230
+ * @domain inventory-management
231
+ * @param itemCategoryUid Category unique identifier
232
+ * @returns Array of category items
233
+ * @throws ValidationError When response is malformed
234
+ * @example
235
+ * ```typescript
236
+ * const items = await client.categories.item.list(100);
237
+ * ```
238
+ */
239
+ list: async (itemCategoryUid) => {
240
+ return this.executeRequest({
241
+ method: 'GET',
242
+ path: '/categories/{itemCategoryUid}/item',
243
+ responseSchema: schemas_1.CategoryItemsResponseSchema,
244
+ }, undefined, { itemCategoryUid: String(itemCategoryUid) });
245
+ },
232
246
  },
233
247
  /**
234
- * Get available filter options for a category
235
- * @description Get available filter options for a category based on its items
236
- * @param itemCategoryUid Category unique identifier
237
- * @returns Array of filter options with values and counts
238
- * @throws ValidationError When response is malformed
239
- * @example
240
- * ```typescript
241
- * const filters = await client.categories.getFilters(100);
242
- * filters.data.forEach(filter => {
243
- * console.log(`${filter.attributeDesc}:`);
244
- * filter.values.forEach(value => {
245
- * console.log(` ${value.value} (${value.count})`);
246
- * });
247
- * });
248
- * ```
248
+ * Category attributes - Direct path mapping to /categories/{itemCategoryUid}/attributes
249
+ * @description OpenAPI Path Mirroring: /categories/{itemCategoryUid}/attributes categories.attributes.list()
249
250
  */
250
- getFilters: async (itemCategoryUid) => {
251
- return this.executeRequest({
252
- method: 'GET',
253
- path: '/categories/{id}/filters',
254
- responseSchema: schemas_1.CategoryFiltersResponseSchema,
255
- }, undefined, { id: String(itemCategoryUid) });
251
+ attributes: {
252
+ /**
253
+ * List attributes available for a category
254
+ * @description Retrieve attributes available for filtering within a category
255
+ * @fullPath api.items.categories.attributes.list
256
+ * @service items
257
+ * @domain inventory-management
258
+ * @param itemCategoryUid Category unique identifier
259
+ * @returns Array of category attributes with their available values
260
+ * @throws ValidationError When response is malformed
261
+ * @example
262
+ * ```typescript
263
+ * const attributes = await client.categories.attributes.list(100);
264
+ * attributes.data.forEach(attr => {
265
+ * console.log(`${attr.attributeDesc}: ${attr.values?.join(', ')}`);
266
+ * });
267
+ * ```
268
+ */
269
+ list: async (itemCategoryUid) => {
270
+ return this.executeRequest({
271
+ method: 'GET',
272
+ path: '/categories/{itemCategoryUid}/attributes',
273
+ responseSchema: schemas_1.CategoryAttributesResponseSchema,
274
+ }, undefined, { itemCategoryUid: String(itemCategoryUid) });
275
+ },
256
276
  },
257
277
  /**
258
- * Get images for a category
259
- * @description Retrieve images associated with a category
260
- * @param itemCategoryUid Category unique identifier
261
- * @returns Array of category images
262
- * @throws ValidationError When response is malformed
263
- * @example
264
- * ```typescript
265
- * const images = await client.categories.getImages(100);
266
- * images.data.forEach(image => {
267
- * console.log(`Image: ${image.imagePath} (${image.imageType})`);
268
- * });
269
- * ```
278
+ * Category images - Direct path mapping to /categories/{itemCategoryUid}/images
279
+ * @description OpenAPI Path Mirroring: /categories/{itemCategoryUid}/images categories.images.list()
270
280
  */
271
- getImages: async (itemCategoryUid) => {
272
- return this.executeRequest({
273
- method: 'GET',
274
- path: '/categories/{id}/images',
275
- responseSchema: schemas_1.CategoryImagesResponseSchema,
276
- }, undefined, { id: String(itemCategoryUid) });
281
+ images: {
282
+ /**
283
+ * List images for a category
284
+ * @description Retrieve images associated with a category
285
+ * @fullPath api.items.categories.images.list
286
+ * @service items
287
+ * @domain inventory-management
288
+ * @param itemCategoryUid Category unique identifier
289
+ * @returns Array of category images
290
+ * @throws ValidationError When response is malformed
291
+ * @example
292
+ * ```typescript
293
+ * const images = await client.categories.images.list(100);
294
+ * images.data.forEach(image => {
295
+ * console.log(`Image: ${image.imagePath} (${image.imageType})`);
296
+ * });
297
+ * ```
298
+ */
299
+ list: async (itemCategoryUid) => {
300
+ return this.executeRequest({
301
+ method: 'GET',
302
+ path: '/categories/{itemCategoryUid}/images',
303
+ responseSchema: schemas_1.CategoryImagesResponseSchema,
304
+ }, undefined, { itemCategoryUid: String(itemCategoryUid) });
305
+ },
277
306
  },
278
307
  };
279
308
  /**
280
- * Category data-only endpoints
281
- * @description Data-only methods that return just the data portion of category responses
309
+ * Item Category data-only endpoints
310
+ * @description Data-only methods that return just the data portion of item category responses
282
311
  */
283
- this.categoriesData = {
312
+ this.itemCategoryData = {
284
313
  /**
285
- * Get category details data only
286
- * @description Returns only the data portion of category details response
287
- * @fullPath api.items.categoriesData.get
288
- * @service items
289
- * @domain inventory-management
290
- * @discoverable true
291
- * @searchTerms ["category data", "category details data only"]
292
- * @relatedEndpoints ["api.items.categories.get"]
293
- * @commonPatterns ["Get category data without metadata"]
294
- * @param itemCategoryUid Category unique identifier
295
- * @param params Optional parameters
296
- * @returns Category data only
314
+ * Get item category details data only
315
+ * @description Returns only the data portion of item category details response
316
+ * @param itemCategoryUid Item category unique identifier
317
+ * @returns Item category data only
297
318
  */
298
- get: async (itemCategoryUid, params) => {
299
- const response = await this.categories.get(itemCategoryUid, params);
319
+ get: async (itemCategoryUid) => {
320
+ const response = await this.itemCategory.get(itemCategoryUid);
300
321
  return response.data;
301
322
  },
302
323
  /**
303
- * List categories data only
304
- * @description Returns only the data portion of category list response
305
- * @fullPath api.items.categoriesData.list
306
- * @service items
307
- * @domain inventory-management
308
- * @discoverable true
309
- * @searchTerms ["category list data", "categories data only"]
310
- * @relatedEndpoints ["api.items.categories.list"]
311
- * @commonPatterns ["List categories without metadata"]
324
+ * List item categories data only
325
+ * @description Returns only the data portion of item category list response
312
326
  * @param params Optional filtering parameters
313
- * @returns Category list data only
327
+ * @returns Item category list data only
314
328
  */
315
329
  list: async (params) => {
316
- const response = await this.categories.list(params);
330
+ const response = await this.itemCategory.list(params);
317
331
  return response.data;
318
332
  },
333
+ };
334
+ /**
335
+ * Category data-only endpoints
336
+ * @description Data-only methods that return just the data portion of category responses
337
+ */
338
+ this.categoriesData = {
319
339
  /**
320
- * Get category items data only
321
- * @description Returns only the data portion of category items response
322
- * @fullPath api.items.categoriesData.getItems
323
- * @service items
324
- * @domain inventory-management
325
- * @discoverable true
326
- * @searchTerms ["category items data", "items in category data only"]
327
- * @relatedEndpoints ["api.items.categories.getItems"]
328
- * @commonPatterns ["Get category items without metadata"]
340
+ * Get category details data only
341
+ * @description Returns only the data portion of category details response
329
342
  * @param itemCategoryUid Category unique identifier
330
- * @param params Optional filtering parameters
331
- * @returns Category items data only
343
+ * @param params Optional parameters
344
+ * @returns Category data only
332
345
  */
333
- getItems: async (itemCategoryUid, params) => {
334
- const response = await this.categories.getItems(itemCategoryUid, params);
346
+ get: async (itemCategoryUid, params) => {
347
+ const response = await this.categories.get(itemCategoryUid, params);
335
348
  return response.data;
336
349
  },
337
350
  };
@@ -374,7 +387,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
374
387
  * console.log(attribute.attributeDesc, attribute.dataType, attribute.maxLength);
375
388
  * ```
376
389
  */
377
- get: this.createGetMethod('/attributes/{id}', schemas_1.AttributeResponseSchema),
390
+ get: this.createGetMethod('/attributes/{attributeUid}', schemas_1.AttributeResponseSchema),
378
391
  /**
379
392
  * Create a new attribute
380
393
  * @description Create a new attribute with specified properties
@@ -408,7 +421,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
408
421
  * });
409
422
  * ```
410
423
  */
411
- update: this.createUpdateMethod('/attributes/{id}', schemas_1.UpdateAttributeRequestSchema, schemas_1.AttributeResponseSchema),
424
+ update: this.createUpdateMethod('/attributes/{attributeUid}', schemas_1.UpdateAttributeRequestSchema, schemas_1.AttributeResponseSchema),
412
425
  /**
413
426
  * Delete an attribute
414
427
  * @description Soft delete an attribute (sets status to inactive)
@@ -426,87 +439,319 @@ class ItemsClient extends base_client_1.BaseServiceClient {
426
439
  delete: async (attributeUid) => {
427
440
  await this.executeRequest({
428
441
  method: 'DELETE',
429
- path: '/attributes/{id}',
442
+ path: '/attributes/{attributeUid}',
430
443
  responseSchema: zod_1.z.undefined(),
431
- }, undefined, { id: String(attributeUid) });
444
+ }, undefined, { attributeUid: String(attributeUid) });
432
445
  return true;
433
446
  },
434
- };
435
- /**
436
- * Stock and location management endpoints
437
- * @description Methods for inventory stock information across locations
438
- */
439
- this.stock = {
440
- /**
441
- * Get comprehensive stock details for an item
442
- * @description Retrieve comprehensive stock information for an item across all locations with detailed calculations
443
- * @param invMastUid Inventory master unique identifier
444
- * @param params Optional parameters for filtering and including additional data
445
- * @returns Stock details with location breakdown and company summary
446
- * @throws ValidationError When response is malformed
447
- * @example
448
- * ```typescript
449
- * const stockInfo = await client.stock.getDetails(12345);
450
- * console.log('Company Summary:', stockInfo.data.companySummary);
451
- *
452
- * stockInfo.data.stockData.forEach(location => {
453
- * console.log(`Location ${location.locationName}: ${location.qtyOnHand} on hand, ${location.qtyAvailable} available`);
454
- * console.log(` Calculated: ${location.calcQtyOnHand} (${location.defaultSellingUnit})`);
455
- * });
456
- * ```
457
- */
458
- getDetails: async (invMastUid, params) => {
459
- return this.executeRequest({
460
- method: 'GET',
461
- path: '/inv-loc/{id}/stock',
462
- paramsSchema: schemas_1.GetStockParamsSchema,
463
- responseSchema: schemas_1.GetStockResponseSchema,
464
- }, params, { id: String(invMastUid) });
465
- },
466
- };
467
- /**
468
- * Brand management endpoints
469
- * @description Methods for managing product brands including CRUD operations
470
- */
471
- this.brands = {
472
- /**
473
- * List all brands
474
- * @description Retrieve a paginated list of brands with filtering options
475
- * @param params Optional filtering and pagination parameters
476
- * @returns Array of brands
477
- * @throws ValidationError When parameters are invalid or response is malformed
478
- * @example
479
- * ```typescript
480
- * const brands = await client.brands.list({ limit: 50, statusCd: 704 });
481
- * brands.data.forEach(brand => {
482
- * console.log(`${brand.brandsId}: ${brand.brandsName}`);
483
- * });
484
- * ```
485
- */
486
- list: async (params) => {
487
- return this.executeRequest({
488
- method: 'GET',
489
- path: '/brands',
490
- paramsSchema: schemas_1.BrandListParamsSchema,
491
- responseSchema: schemas_1.BrandListResponseSchema,
492
- }, params);
493
- },
494
447
  /**
495
- * Get brand details by ID
496
- * @description Retrieve details for a specific brand
497
- * @param brandsUid Brand unique identifier
498
- * @returns Brand details
499
- * @throws ValidationError When response is malformed
500
- * @example
501
- * ```typescript
502
- * const brand = await client.brands.get(123);
503
- * console.log(brand.data.brandsName, brand.data.brandsDesc);
504
- * ```
448
+ * Attribute values - Direct path mapping to /attributes/{attributeUid}/values
449
+ * @description OpenAPI Path Mirroring: /attributes/{attributeUid}/values attributes.values.*
505
450
  */
506
- get: this.createGetMethod('/brands/{id}', schemas_1.BrandResponseSchema),
507
- /**
508
- * Create a new brand
509
- * @description Create a new brand with specified properties
451
+ values: {
452
+ /**
453
+ * List attribute values for a specific attribute
454
+ * @description Retrieve all values for an attribute
455
+ * @fullPath api.items.attributes.values.list
456
+ * @service items
457
+ * @domain attribute-management
458
+ * @dataMethod attributesValuesData.list
459
+ * @discoverable true
460
+ * @searchTerms ["attribute values", "attribute options", "value list", "attribute choices"]
461
+ * @relatedEndpoints ["api.items.attributes.list", "api.items.attributeGroups.attributes.list"]
462
+ * @commonPatterns ["List available values for an attribute", "Manage attribute options"]
463
+ * @workflow ["attribute-management", "value-management"]
464
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Attribute must exist"]
465
+ * @nextSteps ["Create new values", "Edit value details", "Associate with products"]
466
+ * @businessRules ["Values define available options for attributes", "Can be used across multiple products"]
467
+ * @functionalArea "attribute-and-value-management"
468
+ * @caching "Standard pagination caching"
469
+ * @performance "Use pagination for attributes with many values"
470
+ * @param attributeUid Attribute unique identifier
471
+ * @param params Optional pagination parameters
472
+ * @returns Array of attribute values
473
+ * @throws ValidationError When parameters are invalid or response is malformed
474
+ * @example
475
+ * ```typescript
476
+ * const values = await client.attributes.values.list(123);
477
+ * values.data.forEach(value => {
478
+ * console.log(`${value.attributeValueId}: ${value.value}`);
479
+ * });
480
+ * ```
481
+ */
482
+ list: async (attributeUid, params) => {
483
+ return this.executeRequest({
484
+ method: 'GET',
485
+ path: '/attributes/{attributeUid}/values',
486
+ paramsSchema: common_schemas_1.StandardPaginationParamsSchema,
487
+ responseSchema: schemas_1.AttributeValueListResponseSchema,
488
+ }, params, { attributeUid: String(attributeUid) });
489
+ },
490
+ /**
491
+ * Get specific attribute value details
492
+ * @description Retrieve details for a specific attribute value
493
+ * @fullPath api.items.attributes.values.get
494
+ * @service items
495
+ * @domain attribute-management
496
+ * @dataMethod attributesValuesData.get
497
+ * @discoverable true
498
+ * @searchTerms ["attribute value details", "specific value", "value information"]
499
+ * @relatedEndpoints ["api.items.attributes.values.list", "api.items.attributes.get"]
500
+ * @commonPatterns ["Get value details", "View value information"]
501
+ * @workflow ["attribute-management", "value-details"]
502
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Value must exist"]
503
+ * @nextSteps ["Update value", "Delete value", "Use in product associations"]
504
+ * @businessRules ["Value belongs to specific attribute", "Includes display and internal values"]
505
+ * @functionalArea "attribute-and-value-management"
506
+ * @caching "Standard detail caching"
507
+ * @performance "Direct lookup by ID"
508
+ * @param attributeUid Attribute unique identifier
509
+ * @param attributeValueUid Attribute value unique identifier
510
+ * @returns Attribute value details
511
+ * @throws ValidationError When response is malformed
512
+ * @example
513
+ * ```typescript
514
+ * const value = await client.attributes.values.get(123, 456);
515
+ * console.log(value.data.value, value.data.displayValue);
516
+ * ```
517
+ */
518
+ get: async (attributeUid, attributeValueUid) => {
519
+ return this.executeRequest({
520
+ method: 'GET',
521
+ path: '/attributes/{attributeUid}/values/{attributeValueUid}',
522
+ responseSchema: zod_1.z.object({
523
+ count: zod_1.z.number(),
524
+ data: zod_1.z.object({
525
+ attributeValueUid: zod_1.z.number(),
526
+ attributeUid: zod_1.z.number(),
527
+ value: zod_1.z.string(),
528
+ displayValue: zod_1.z.string().optional(),
529
+ sequenceNo: zod_1.z.number().optional(),
530
+ }),
531
+ message: zod_1.z.string(),
532
+ options: zod_1.z.any(),
533
+ params: zod_1.z.any(),
534
+ status: zod_1.z.number(),
535
+ total: zod_1.z.number(),
536
+ totalResults: zod_1.z.number(),
537
+ }),
538
+ }, undefined, {
539
+ attributeUid: String(attributeUid),
540
+ attributeValueUid: String(attributeValueUid),
541
+ });
542
+ },
543
+ /**
544
+ * Create new attribute value
545
+ * @description Create a new value for an attribute
546
+ * @fullPath api.items.attributes.values.create
547
+ * @service items
548
+ * @domain attribute-management
549
+ * @dataMethod attributesValuesData.create
550
+ * @discoverable true
551
+ * @searchTerms ["create attribute value", "add value", "new attribute option"]
552
+ * @relatedEndpoints ["api.items.attributes.values.list", "api.items.attributes.get"]
553
+ * @commonPatterns ["Add new attribute option", "Expand attribute choices"]
554
+ * @workflow ["attribute-management", "value-creation"]
555
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Attribute must exist"]
556
+ * @nextSteps ["List updated values", "Use in products"]
557
+ * @businessRules ["Value must be unique within attribute", "Display value enhances user experience"]
558
+ * @functionalArea "attribute-and-value-management"
559
+ * @caching "Invalidates attribute cache"
560
+ * @performance "Direct creation operation"
561
+ * @param attributeUid Attribute unique identifier
562
+ * @param request Attribute value data
563
+ * @returns Created attribute value information
564
+ * @throws ValidationError When request is invalid or response is malformed
565
+ * @example
566
+ * ```typescript
567
+ * const value = await client.attributes.values.create(123, {
568
+ * value: 'Blue',
569
+ * displayValue: 'Royal Blue',
570
+ * sequenceNo: 10
571
+ * });
572
+ * ```
573
+ */
574
+ create: async (attributeUid, request) => {
575
+ return this.executeRequest({
576
+ method: 'POST',
577
+ path: '/attributes/{attributeUid}/values',
578
+ paramsSchema: zod_1.z.object({
579
+ value: zod_1.z.string(),
580
+ displayValue: zod_1.z.string().optional(),
581
+ sequenceNo: zod_1.z.number().optional(),
582
+ }),
583
+ responseSchema: zod_1.z.object({
584
+ count: zod_1.z.number(),
585
+ data: zod_1.z.object({
586
+ attributeValueUid: zod_1.z.number(),
587
+ attributeUid: zod_1.z.number(),
588
+ value: zod_1.z.string(),
589
+ displayValue: zod_1.z.string().optional(),
590
+ sequenceNo: zod_1.z.number().optional(),
591
+ }),
592
+ message: zod_1.z.string(),
593
+ options: zod_1.z.any(),
594
+ params: zod_1.z.any(),
595
+ status: zod_1.z.number(),
596
+ total: zod_1.z.number(),
597
+ totalResults: zod_1.z.number(),
598
+ }),
599
+ }, request, { attributeUid: String(attributeUid) });
600
+ },
601
+ /**
602
+ * Update existing attribute value
603
+ * @description Update an existing attribute value
604
+ * @fullPath api.items.attributes.values.update
605
+ * @service items
606
+ * @domain attribute-management
607
+ * @dataMethod attributesValuesData.update
608
+ * @discoverable true
609
+ * @searchTerms ["update attribute value", "modify value", "edit attribute option"]
610
+ * @relatedEndpoints ["api.items.attributes.values.get", "api.items.attributes.values.list"]
611
+ * @commonPatterns ["Update value details", "Modify attribute options"]
612
+ * @workflow ["attribute-management", "value-maintenance"]
613
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Value must exist"]
614
+ * @nextSteps ["Verify changes", "Update product associations if needed"]
615
+ * @businessRules ["Cannot change core value without affecting products", "Display value changes are safe"]
616
+ * @functionalArea "attribute-and-value-management"
617
+ * @caching "Invalidates attribute cache"
618
+ * @performance "Direct update operation"
619
+ * @param attributeUid Attribute unique identifier
620
+ * @param attributeValueUid Attribute value unique identifier
621
+ * @param request Update data
622
+ * @returns Updated attribute value information
623
+ * @throws ValidationError When request is invalid or response is malformed
624
+ * @example
625
+ * ```typescript
626
+ * const updated = await client.attributes.values.update(123, 456, {
627
+ * displayValue: 'Deep Royal Blue',
628
+ * sequenceNo: 15
629
+ * });
630
+ * ```
631
+ */
632
+ update: async (attributeUid, attributeValueUid, request) => {
633
+ return this.executeRequest({
634
+ method: 'PUT',
635
+ path: '/attributes/{attributeUid}/values/{attributeValueUid}',
636
+ paramsSchema: zod_1.z.object({
637
+ value: zod_1.z.string().optional(),
638
+ displayValue: zod_1.z.string().optional(),
639
+ sequenceNo: zod_1.z.number().optional(),
640
+ }),
641
+ responseSchema: zod_1.z.object({
642
+ count: zod_1.z.number(),
643
+ data: zod_1.z.object({
644
+ attributeValueUid: zod_1.z.number(),
645
+ attributeUid: zod_1.z.number(),
646
+ value: zod_1.z.string(),
647
+ displayValue: zod_1.z.string().optional(),
648
+ sequenceNo: zod_1.z.number().optional(),
649
+ }),
650
+ message: zod_1.z.string(),
651
+ options: zod_1.z.any(),
652
+ params: zod_1.z.any(),
653
+ status: zod_1.z.number(),
654
+ total: zod_1.z.number(),
655
+ totalResults: zod_1.z.number(),
656
+ }),
657
+ }, request, {
658
+ attributeUid: String(attributeUid),
659
+ attributeValueUid: String(attributeValueUid),
660
+ });
661
+ },
662
+ /**
663
+ * Delete attribute value
664
+ * @description Delete an attribute value
665
+ * @fullPath api.items.attributes.values.delete
666
+ * @service items
667
+ * @domain attribute-management
668
+ * @dataMethod attributesValuesData.delete
669
+ * @discoverable true
670
+ * @searchTerms ["delete attribute value", "remove value", "delete attribute option"]
671
+ * @relatedEndpoints ["api.items.attributes.values.list", "api.items.attributes.values.create"]
672
+ * @commonPatterns ["Remove attribute option", "Clean up unused values"]
673
+ * @workflow ["attribute-management", "value-cleanup"]
674
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Value must exist", "Value not in use by products"]
675
+ * @nextSteps ["Verify removal", "List remaining values"]
676
+ * @businessRules ["Cannot delete values in use by products", "Deletion may affect product availability"]
677
+ * @functionalArea "attribute-and-value-management"
678
+ * @caching "Invalidates attribute cache"
679
+ * @performance "Direct deletion operation"
680
+ * @param attributeUid Attribute unique identifier
681
+ * @param attributeValueUid Attribute value unique identifier
682
+ * @returns Success status
683
+ * @throws ValidationError When response is malformed
684
+ * @example
685
+ * ```typescript
686
+ * await client.attributes.values.delete(123, 456);
687
+ * ```
688
+ */
689
+ delete: async (attributeUid, attributeValueUid) => {
690
+ await this.executeRequest({
691
+ method: 'DELETE',
692
+ path: '/attributes/{attributeUid}/values/{attributeValueUid}',
693
+ responseSchema: zod_1.z.object({
694
+ count: zod_1.z.number(),
695
+ data: zod_1.z.any(),
696
+ message: zod_1.z.string(),
697
+ options: zod_1.z.any(),
698
+ params: zod_1.z.any(),
699
+ status: zod_1.z.number(),
700
+ total: zod_1.z.number(),
701
+ totalResults: zod_1.z.number(),
702
+ }),
703
+ }, undefined, {
704
+ attributeUid: String(attributeUid),
705
+ attributeValueUid: String(attributeValueUid),
706
+ });
707
+ return true;
708
+ },
709
+ },
710
+ };
711
+ // Note: stock endpoints removed - not part of OpenAPI specification
712
+ /**
713
+ * Brand management endpoints
714
+ * @description Methods for managing product brands including CRUD operations
715
+ */
716
+ this.brands = {
717
+ /**
718
+ * List all brands
719
+ * @description Retrieve a paginated list of brands with filtering options
720
+ * @param params Optional filtering and pagination parameters
721
+ * @returns Array of brands
722
+ * @throws ValidationError When parameters are invalid or response is malformed
723
+ * @example
724
+ * ```typescript
725
+ * const brands = await client.brands.list({ limit: 50, statusCd: 704 });
726
+ * brands.data.forEach(brand => {
727
+ * console.log(`${brand.brandsId}: ${brand.brandsName}`);
728
+ * });
729
+ * ```
730
+ */
731
+ list: async (params) => {
732
+ return this.executeRequest({
733
+ method: 'GET',
734
+ path: '/brands',
735
+ paramsSchema: schemas_1.BrandListParamsSchema,
736
+ responseSchema: schemas_1.BrandListResponseSchema,
737
+ }, params);
738
+ },
739
+ /**
740
+ * Get brand details by ID
741
+ * @description Retrieve details for a specific brand
742
+ * @param brandsUid Brand unique identifier
743
+ * @returns Brand details
744
+ * @throws ValidationError When response is malformed
745
+ * @example
746
+ * ```typescript
747
+ * const brand = await client.brands.get(123);
748
+ * console.log(brand.data.brandsName, brand.data.brandsDesc);
749
+ * ```
750
+ */
751
+ get: this.createGetMethod('/brands/{brandsUid}', schemas_1.BrandResponseSchema),
752
+ /**
753
+ * Create a new brand
754
+ * @description Create a new brand with specified properties
510
755
  * @param request Brand creation data
511
756
  * @returns Created brand information
512
757
  * @throws ValidationError When request is invalid or response is malformed
@@ -534,7 +779,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
534
779
  * });
535
780
  * ```
536
781
  */
537
- update: this.createUpdateMethod('/brands/{id}', schemas_1.UpdateBrandRequestSchema, schemas_1.BrandResponseSchema),
782
+ update: this.createUpdateMethod('/brands/{brandsUid}', schemas_1.UpdateBrandRequestSchema, schemas_1.BrandResponseSchema),
538
783
  /**
539
784
  * Delete a brand
540
785
  * @description Soft delete a brand (sets status to inactive)
@@ -552,11 +797,220 @@ class ItemsClient extends base_client_1.BaseServiceClient {
552
797
  delete: async (brandsUid) => {
553
798
  await this.executeRequest({
554
799
  method: 'DELETE',
555
- path: '/brands/{id}',
800
+ path: '/brands/{brandsUid}',
556
801
  responseSchema: zod_1.z.undefined(),
557
- }, undefined, { id: String(brandsUid) });
802
+ }, undefined, { brandsUid: String(brandsUid) });
558
803
  return true;
559
804
  },
805
+ /**
806
+ * Brand items - Direct path mapping to /brands/{brandsUid}/items
807
+ * @description OpenAPI Path Mirroring: /brands/{brandsUid}/items → brands.items.*
808
+ */
809
+ items: {
810
+ /**
811
+ * List items associated with a brand
812
+ * @description Retrieve all items associated with a specific brand
813
+ * @fullPath api.items.brands.items.list
814
+ * @service items
815
+ * @domain product-catalog
816
+ * @dataMethod brandsItemsData.list
817
+ * @discoverable true
818
+ * @searchTerms ["brand items", "brand products", "brand relationships", "manufacturer items", "brand catalog"]
819
+ * @relatedEndpoints ["api.items.brands.list", "api.items.invMast.list"]
820
+ * @commonPatterns ["List products from a manufacturer", "Browse brand catalog"]
821
+ * @workflow ["product-catalog", "brand-management"]
822
+ * @prerequisites ["Valid authentication token", "Product catalog permissions", "Brand must exist"]
823
+ * @nextSteps ["Get item details", "Create brand associations"]
824
+ * @businessRules ["Items can belong to multiple brands", "Primary brand relationships have priority"]
825
+ * @functionalArea "product-catalog-and-brand-management"
826
+ * @caching "Standard pagination caching"
827
+ * @performance "Use pagination for brands with many items"
828
+ * @param brandsUid Brand unique identifier
829
+ * @param params Optional pagination parameters
830
+ * @returns Array of items associated with the brand
831
+ * @throws ValidationError When parameters are invalid or response is malformed
832
+ * @example
833
+ * ```typescript
834
+ * const brandItems = await client.brands.items.list(123);
835
+ * brandItems.data.forEach(item => {
836
+ * console.log(`${item.itemId}: ${item.itemDesc}`);
837
+ * });
838
+ * ```
839
+ */
840
+ list: async (brandsUid, params) => {
841
+ return this.executeRequest({
842
+ method: 'GET',
843
+ path: '/brands/{brandsUid}/items',
844
+ paramsSchema: schemas_1.BrandItemListParamsSchema,
845
+ responseSchema: schemas_1.BrandItemListResponseSchema,
846
+ }, params, { brandsUid: String(brandsUid) });
847
+ },
848
+ /**
849
+ * Get specific brand-item association
850
+ * @description Retrieve details for a specific brand-item association
851
+ * @fullPath api.items.brands.items.get
852
+ * @service items
853
+ * @domain product-catalog
854
+ * @dataMethod brandsItemsData.get
855
+ * @discoverable true
856
+ * @searchTerms ["brand item association", "brand product details", "manufacturer item details"]
857
+ * @relatedEndpoints ["api.items.brands.items.list", "api.items.invMast.get"]
858
+ * @commonPatterns ["Get brand-item relationship details", "View manufacturer part information"]
859
+ * @workflow ["product-catalog", "brand-relationship-details"]
860
+ * @prerequisites ["Valid authentication token", "Product catalog permissions", "Association must exist"]
861
+ * @nextSteps ["Update association", "Remove brand relationship"]
862
+ * @businessRules ["Includes manufacturer part numbers", "Shows relationship priority"]
863
+ * @functionalArea "product-catalog-and-brand-management"
864
+ * @caching "Standard detail caching"
865
+ * @performance "Direct lookup by ID"
866
+ * @param brandsUid Brand unique identifier
867
+ * @param brandsXItemsUid Brand-item association unique identifier
868
+ * @returns Brand-item association details
869
+ * @throws ValidationError When response is malformed
870
+ * @example
871
+ * ```typescript
872
+ * const association = await client.brands.items.get(123, 789);
873
+ * console.log(association.data.brandPartNumber, association.data.isPrimary);
874
+ * ```
875
+ */
876
+ get: async (brandsUid, brandsXItemsUid) => {
877
+ return this.executeRequest({
878
+ method: 'GET',
879
+ path: '/brands/{brandsUid}/items/{brandsXItemsUid}',
880
+ responseSchema: schemas_1.BrandItemResponseSchema,
881
+ }, undefined, {
882
+ brandsUid: String(brandsUid),
883
+ brandsXItemsUid: String(brandsXItemsUid),
884
+ });
885
+ },
886
+ /**
887
+ * Create brand-item association
888
+ * @description Create a new association between a brand and an item
889
+ * @fullPath api.items.brands.items.create
890
+ * @service items
891
+ * @domain product-catalog
892
+ * @dataMethod brandsItemsData.create
893
+ * @discoverable true
894
+ * @searchTerms ["create brand association", "add item to brand", "brand item relationship"]
895
+ * @relatedEndpoints ["api.items.brands.items.list", "api.items.invMast.get"]
896
+ * @commonPatterns ["Associate product with manufacturer", "Add brand to product"]
897
+ * @workflow ["product-catalog", "brand-association"]
898
+ * @prerequisites ["Valid authentication token", "Product catalog permissions", "Both brand and item must exist"]
899
+ * @nextSteps ["List updated brand items", "Set as primary brand"]
900
+ * @businessRules ["Item can have multiple brand associations", "Only one primary brand per item"]
901
+ * @functionalArea "product-catalog-and-brand-management"
902
+ * @caching "Invalidates brand catalog cache"
903
+ * @performance "Direct creation operation"
904
+ * @param brandsUid Brand unique identifier
905
+ * @param request Brand-item association data
906
+ * @returns Created association information
907
+ * @throws ValidationError When request is invalid or response is malformed
908
+ * @example
909
+ * ```typescript
910
+ * const association = await client.brands.items.create(123, {
911
+ * invMastUid: 456,
912
+ * brandPartNumber: 'ACME-12345',
913
+ * isPrimary: 'Y'
914
+ * });
915
+ * ```
916
+ */
917
+ create: async (brandsUid, request) => {
918
+ return this.executeRequest({
919
+ method: 'POST',
920
+ path: '/brands/{brandsUid}/items',
921
+ paramsSchema: schemas_1.CreateBrandItemRequestSchema,
922
+ responseSchema: schemas_1.BrandItemResponseSchema,
923
+ }, request, { brandsUid: String(brandsUid) });
924
+ },
925
+ /**
926
+ * Update brand-item association
927
+ * @description Update an existing brand-item association
928
+ * @fullPath api.items.brands.items.update
929
+ * @service items
930
+ * @domain product-catalog
931
+ * @dataMethod brandsItemsData.update
932
+ * @discoverable true
933
+ * @searchTerms ["update brand association", "modify brand relationship", "brand item update"]
934
+ * @relatedEndpoints ["api.items.brands.items.get", "api.items.brands.items.list"]
935
+ * @commonPatterns ["Update manufacturer part number", "Change primary brand status"]
936
+ * @workflow ["product-catalog", "brand-maintenance"]
937
+ * @prerequisites ["Valid authentication token", "Product catalog permissions", "Association must exist"]
938
+ * @nextSteps ["Verify changes", "Update product information"]
939
+ * @businessRules ["Cannot change core brand-item link", "Can update metadata like part numbers"]
940
+ * @functionalArea "product-catalog-and-brand-management"
941
+ * @caching "Invalidates brand catalog cache"
942
+ * @performance "Direct update operation"
943
+ * @param brandsUid Brand unique identifier
944
+ * @param brandsXItemsUid Brand-item association unique identifier
945
+ * @param request Update data
946
+ * @returns Updated association information
947
+ * @throws ValidationError When request is invalid or response is malformed
948
+ * @example
949
+ * ```typescript
950
+ * const updated = await client.brands.items.update(123, 789, {
951
+ * brandPartNumber: 'ACME-12345-V2',
952
+ * isPrimary: 'N'
953
+ * });
954
+ * ```
955
+ */
956
+ update: async (brandsUid, brandsXItemsUid, request) => {
957
+ return this.executeRequest({
958
+ method: 'PUT',
959
+ path: '/brands/{brandsUid}/items/{brandsXItemsUid}',
960
+ paramsSchema: schemas_1.UpdateBrandItemRequestSchema,
961
+ responseSchema: schemas_1.BrandItemResponseSchema,
962
+ }, request, {
963
+ brandsUid: String(brandsUid),
964
+ brandsXItemsUid: String(brandsXItemsUid),
965
+ });
966
+ },
967
+ /**
968
+ * Delete brand-item association
969
+ * @description Remove an item from a brand
970
+ * @fullPath api.items.brands.items.delete
971
+ * @service items
972
+ * @domain product-catalog
973
+ * @dataMethod brandsItemsData.delete
974
+ * @discoverable true
975
+ * @searchTerms ["remove brand association", "delete brand relationship", "brand item removal"]
976
+ * @relatedEndpoints ["api.items.brands.items.list", "api.items.brands.items.create"]
977
+ * @commonPatterns ["Remove product from brand", "Clean up brand associations"]
978
+ * @workflow ["product-catalog", "brand-cleanup"]
979
+ * @prerequisites ["Valid authentication token", "Product catalog permissions", "Association must exist"]
980
+ * @nextSteps ["Verify removal", "Update product brand information"]
981
+ * @businessRules ["Only removes association, not the item or brand", "May affect primary brand status"]
982
+ * @functionalArea "product-catalog-and-brand-management"
983
+ * @caching "Invalidates brand catalog cache"
984
+ * @performance "Direct deletion operation"
985
+ * @param brandsUid Brand unique identifier
986
+ * @param brandsXItemsUid Brand-item association unique identifier
987
+ * @returns Success status
988
+ * @throws ValidationError When response is malformed
989
+ * @example
990
+ * ```typescript
991
+ * await client.brands.items.delete(123, 789);
992
+ * ```
993
+ */
994
+ delete: async (brandsUid, brandsXItemsUid) => {
995
+ return this.executeRequest({
996
+ method: 'DELETE',
997
+ path: '/brands/{brandsUid}/items/{brandsXItemsUid}',
998
+ responseSchema: zod_1.z.object({
999
+ count: zod_1.z.number(),
1000
+ data: zod_1.z.any(),
1001
+ message: zod_1.z.string(),
1002
+ options: zod_1.z.any(),
1003
+ params: zod_1.z.any(),
1004
+ status: zod_1.z.number(),
1005
+ total: zod_1.z.number(),
1006
+ totalResults: zod_1.z.number(),
1007
+ }),
1008
+ }, undefined, {
1009
+ brandsUid: String(brandsUid),
1010
+ brandsXItemsUid: String(brandsXItemsUid),
1011
+ });
1012
+ },
1013
+ },
560
1014
  };
561
1015
  /**
562
1016
  * Attribute group management endpoints
@@ -600,7 +1054,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
600
1054
  * console.log(group.data.attributeGroupDesc, group.data.attributeGroupType);
601
1055
  * ```
602
1056
  */
603
- get: this.createGetMethod('/attribute-groups/{id}', schemas_1.AttributeGroupResponseSchema),
1057
+ get: this.createGetMethod('/attribute-groups/{attributeGroupUid}', schemas_1.AttributeGroupResponseSchema),
604
1058
  /**
605
1059
  * Create a new attribute group
606
1060
  * @description Create a new attribute group with specified properties
@@ -632,7 +1086,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
632
1086
  * });
633
1087
  * ```
634
1088
  */
635
- update: this.createUpdateMethod('/attribute-groups/{id}', schemas_1.UpdateAttributeGroupRequestSchema, schemas_1.AttributeGroupResponseSchema),
1089
+ update: this.createUpdateMethod('/attribute-groups/{attributeGroupUid}', schemas_1.UpdateAttributeGroupRequestSchema, schemas_1.AttributeGroupResponseSchema),
636
1090
  /**
637
1091
  * Delete an attribute group
638
1092
  * @description Soft delete an attribute group (sets status to inactive)
@@ -648,9 +1102,264 @@ class ItemsClient extends base_client_1.BaseServiceClient {
648
1102
  delete: async (attributeGroupUid) => {
649
1103
  return this.executeRequest({
650
1104
  method: 'DELETE',
651
- path: '/attribute-groups/{id}',
1105
+ path: '/attribute-groups/{attributeGroupUid}',
652
1106
  responseSchema: schemas_1.AttributeGroupResponseSchema,
653
- }, undefined, { id: String(attributeGroupUid) });
1107
+ }, undefined, { attributeGroupUid: String(attributeGroupUid) });
1108
+ },
1109
+ /**
1110
+ * Attribute group attributes - Direct path mapping to /attribute-groups/{attributeGroupUid}/attributes
1111
+ * @description OpenAPI Path Mirroring: /attribute-groups/{attributeGroupUid}/attributes → attributeGroups.attributes.*
1112
+ */
1113
+ attributes: {
1114
+ /**
1115
+ * List attributes in a group
1116
+ * @description Retrieve all attributes associated with an attribute group
1117
+ * @fullPath api.items.attributeGroups.attributes.list
1118
+ * @service items
1119
+ * @domain attribute-management
1120
+ * @dataMethod attributeGroupsAttributesData.list
1121
+ * @discoverable true
1122
+ * @searchTerms ["attribute group attributes", "group attributes", "attribute associations"]
1123
+ * @relatedEndpoints ["api.items.attributes.list", "api.items.attributeGroups.list"]
1124
+ * @commonPatterns ["List attributes in a group", "Manage attribute groups"]
1125
+ * @workflow ["attribute-management", "group-management"]
1126
+ * @prerequisites ["Valid authentication token", "Attribute management permissions"]
1127
+ * @nextSteps ["Create attribute associations", "Manage individual attributes"]
1128
+ * @businessRules ["Attributes can belong to multiple groups", "Group membership controls attribute display"]
1129
+ * @functionalArea "attribute-and-group-management"
1130
+ * @caching "Standard pagination caching"
1131
+ * @performance "Use pagination for large attribute groups"
1132
+ * @param attributeGroupUid Attribute group unique identifier
1133
+ * @param params Optional pagination parameters
1134
+ * @returns Array of attributes in the group
1135
+ * @throws ValidationError When parameters are invalid or response is malformed
1136
+ * @example
1137
+ * ```typescript
1138
+ * const groupAttrs = await client.attributeGroups.attributes.list(123);
1139
+ * groupAttrs.data.forEach(attr => {
1140
+ * console.log(`${attr.attributeId}: ${attr.attributeDesc}`);
1141
+ * });
1142
+ * ```
1143
+ */
1144
+ list: async (attributeGroupUid, params) => {
1145
+ return this.executeRequest({
1146
+ method: 'GET',
1147
+ path: '/attribute-groups/{attributeGroupUid}/attributes',
1148
+ paramsSchema: common_schemas_1.StandardPaginationParamsSchema,
1149
+ responseSchema: schemas_1.AttributeValueListResponseSchema,
1150
+ }, params, { attributeGroupUid: String(attributeGroupUid) });
1151
+ },
1152
+ /**
1153
+ * Get specific attribute association in a group
1154
+ * @description Retrieve details for a specific attribute-group association
1155
+ * @fullPath api.items.attributeGroups.attributes.get
1156
+ * @service items
1157
+ * @domain attribute-management
1158
+ * @dataMethod attributeGroupsAttributesData.get
1159
+ * @discoverable true
1160
+ * @searchTerms ["attribute group association", "group attribute details", "attribute association"]
1161
+ * @relatedEndpoints ["api.items.attributeGroups.attributes.list", "api.items.attributes.get"]
1162
+ * @commonPatterns ["Get attribute association details", "View group membership"]
1163
+ * @workflow ["attribute-management", "association-details"]
1164
+ * @prerequisites ["Valid authentication token", "Attribute management permissions"]
1165
+ * @nextSteps ["Update association", "Remove from group"]
1166
+ * @businessRules ["Association must exist", "Includes sequence information"]
1167
+ * @functionalArea "attribute-and-group-management"
1168
+ * @caching "Standard detail caching"
1169
+ * @performance "Direct lookup by ID"
1170
+ * @param attributeGroupUid Attribute group unique identifier
1171
+ * @param attributeXAttributeGroupUid Attribute association unique identifier
1172
+ * @returns Attribute association details
1173
+ * @throws ValidationError When response is malformed
1174
+ * @example
1175
+ * ```typescript
1176
+ * const association = await client.attributeGroups.attributes.get(123, 789);
1177
+ * console.log(association.data.attributeUid, association.data.sequenceNo);
1178
+ * ```
1179
+ */
1180
+ get: async (attributeGroupUid, attributeXAttributeGroupUid) => {
1181
+ return this.executeRequest({
1182
+ method: 'GET',
1183
+ path: '/attribute-groups/{attributeGroupUid}/attributes/{attributeXAttributeGroupUid}',
1184
+ responseSchema: zod_1.z.object({
1185
+ count: zod_1.z.number(),
1186
+ data: zod_1.z.object({
1187
+ attributeXAttributeGroupUid: zod_1.z.number(),
1188
+ attributeGroupUid: zod_1.z.number(),
1189
+ attributeUid: zod_1.z.number(),
1190
+ sequenceNo: zod_1.z.number().optional(),
1191
+ }),
1192
+ message: zod_1.z.string(),
1193
+ options: zod_1.z.any(),
1194
+ params: zod_1.z.any(),
1195
+ status: zod_1.z.number(),
1196
+ total: zod_1.z.number(),
1197
+ totalResults: zod_1.z.number(),
1198
+ }),
1199
+ }, undefined, {
1200
+ attributeGroupUid: String(attributeGroupUid),
1201
+ attributeXAttributeGroupUid: String(attributeXAttributeGroupUid),
1202
+ });
1203
+ },
1204
+ /**
1205
+ * Create attribute association in a group
1206
+ * @description Create an association between an attribute and an attribute group
1207
+ * @fullPath api.items.attributeGroups.attributes.create
1208
+ * @service items
1209
+ * @domain attribute-management
1210
+ * @dataMethod attributeGroupsAttributesData.create
1211
+ * @discoverable true
1212
+ * @searchTerms ["create attribute association", "add attribute to group", "attribute group membership"]
1213
+ * @relatedEndpoints ["api.items.attributeGroups.attributes.list", "api.items.attributes.list"]
1214
+ * @commonPatterns ["Add attribute to group", "Organize attributes"]
1215
+ * @workflow ["attribute-management", "group-organization"]
1216
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Both attribute and group must exist"]
1217
+ * @nextSteps ["Update association sequence", "List group attributes"]
1218
+ * @businessRules ["Attribute can belong to multiple groups", "Sequence controls display order"]
1219
+ * @functionalArea "attribute-and-group-management"
1220
+ * @caching "Invalidates group cache"
1221
+ * @performance "Direct creation operation"
1222
+ * @param attributeGroupUid Attribute group unique identifier
1223
+ * @param request Attribute association data
1224
+ * @returns Created association information
1225
+ * @throws ValidationError When request is invalid or response is malformed
1226
+ * @example
1227
+ * ```typescript
1228
+ * const association = await client.attributeGroups.attributes.create(123, {
1229
+ * attributeUid: 456,
1230
+ * sequenceNo: 10
1231
+ * });
1232
+ * ```
1233
+ */
1234
+ create: async (attributeGroupUid, request) => {
1235
+ return this.executeRequest({
1236
+ method: 'POST',
1237
+ path: '/attribute-groups/{attributeGroupUid}/attributes',
1238
+ paramsSchema: zod_1.z.object({
1239
+ attributeUid: zod_1.z.number(),
1240
+ sequenceNo: zod_1.z.number().optional(),
1241
+ }),
1242
+ responseSchema: zod_1.z.object({
1243
+ count: zod_1.z.number(),
1244
+ data: zod_1.z.object({
1245
+ attributeXAttributeGroupUid: zod_1.z.number(),
1246
+ attributeGroupUid: zod_1.z.number(),
1247
+ attributeUid: zod_1.z.number(),
1248
+ sequenceNo: zod_1.z.number().optional(),
1249
+ }),
1250
+ message: zod_1.z.string(),
1251
+ options: zod_1.z.any(),
1252
+ params: zod_1.z.any(),
1253
+ status: zod_1.z.number(),
1254
+ total: zod_1.z.number(),
1255
+ totalResults: zod_1.z.number(),
1256
+ }),
1257
+ }, request, { attributeGroupUid: String(attributeGroupUid) });
1258
+ },
1259
+ /**
1260
+ * Update attribute association in a group
1261
+ * @description Update an existing attribute-group association
1262
+ * @fullPath api.items.attributeGroups.attributes.update
1263
+ * @service items
1264
+ * @domain attribute-management
1265
+ * @dataMethod attributeGroupsAttributesData.update
1266
+ * @discoverable true
1267
+ * @searchTerms ["update attribute association", "modify group membership", "attribute sequence"]
1268
+ * @relatedEndpoints ["api.items.attributeGroups.attributes.get", "api.items.attributeGroups.attributes.list"]
1269
+ * @commonPatterns ["Update display sequence", "Modify group organization"]
1270
+ * @workflow ["attribute-management", "group-organization"]
1271
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Association must exist"]
1272
+ * @nextSteps ["List updated group attributes", "Verify changes"]
1273
+ * @businessRules ["Can only update sequence and other non-key fields", "Sequence controls display order"]
1274
+ * @functionalArea "attribute-and-group-management"
1275
+ * @caching "Invalidates group cache"
1276
+ * @performance "Direct update operation"
1277
+ * @param attributeGroupUid Attribute group unique identifier
1278
+ * @param attributeXAttributeGroupUid Attribute association unique identifier
1279
+ * @param request Update data
1280
+ * @returns Updated association information
1281
+ * @throws ValidationError When request is invalid or response is malformed
1282
+ * @example
1283
+ * ```typescript
1284
+ * const updated = await client.attributeGroups.attributes.update(123, 789, {
1285
+ * sequenceNo: 20
1286
+ * });
1287
+ * ```
1288
+ */
1289
+ update: async (attributeGroupUid, attributeXAttributeGroupUid, request) => {
1290
+ return this.executeRequest({
1291
+ method: 'PUT',
1292
+ path: '/attribute-groups/{attributeGroupUid}/attributes/{attributeXAttributeGroupUid}',
1293
+ paramsSchema: zod_1.z.object({
1294
+ sequenceNo: zod_1.z.number().optional(),
1295
+ }),
1296
+ responseSchema: zod_1.z.object({
1297
+ count: zod_1.z.number(),
1298
+ data: zod_1.z.object({
1299
+ attributeXAttributeGroupUid: zod_1.z.number(),
1300
+ attributeGroupUid: zod_1.z.number(),
1301
+ attributeUid: zod_1.z.number(),
1302
+ sequenceNo: zod_1.z.number().optional(),
1303
+ }),
1304
+ message: zod_1.z.string(),
1305
+ options: zod_1.z.any(),
1306
+ params: zod_1.z.any(),
1307
+ status: zod_1.z.number(),
1308
+ total: zod_1.z.number(),
1309
+ totalResults: zod_1.z.number(),
1310
+ }),
1311
+ }, request, {
1312
+ attributeGroupUid: String(attributeGroupUid),
1313
+ attributeXAttributeGroupUid: String(attributeXAttributeGroupUid),
1314
+ });
1315
+ },
1316
+ /**
1317
+ * Delete attribute association from a group
1318
+ * @description Remove an attribute from an attribute group
1319
+ * @fullPath api.items.attributeGroups.attributes.delete
1320
+ * @service items
1321
+ * @domain attribute-management
1322
+ * @dataMethod attributeGroupsAttributesData.delete
1323
+ * @discoverable true
1324
+ * @searchTerms ["remove attribute from group", "delete attribute association", "group membership removal"]
1325
+ * @relatedEndpoints ["api.items.attributeGroups.attributes.list", "api.items.attributeGroups.attributes.create"]
1326
+ * @commonPatterns ["Remove attribute from group", "Clean up attribute organization"]
1327
+ * @workflow ["attribute-management", "group-cleanup"]
1328
+ * @prerequisites ["Valid authentication token", "Attribute management permissions", "Association must exist"]
1329
+ * @nextSteps ["List remaining group attributes", "Verify removal"]
1330
+ * @businessRules ["Only removes association, not the attribute itself", "Does not affect other group memberships"]
1331
+ * @functionalArea "attribute-and-group-management"
1332
+ * @caching "Invalidates group cache"
1333
+ * @performance "Direct deletion operation"
1334
+ * @param attributeGroupUid Attribute group unique identifier
1335
+ * @param attributeXAttributeGroupUid Attribute association unique identifier
1336
+ * @returns Success status
1337
+ * @throws ValidationError When response is malformed
1338
+ * @example
1339
+ * ```typescript
1340
+ * await client.attributeGroups.attributes.delete(123, 789);
1341
+ * ```
1342
+ */
1343
+ delete: async (attributeGroupUid, attributeXAttributeGroupUid) => {
1344
+ await this.executeRequest({
1345
+ method: 'DELETE',
1346
+ path: '/attribute-groups/{attributeGroupUid}/attributes/{attributeXAttributeGroupUid}',
1347
+ responseSchema: zod_1.z.object({
1348
+ count: zod_1.z.number(),
1349
+ data: zod_1.z.any(),
1350
+ message: zod_1.z.string(),
1351
+ options: zod_1.z.any(),
1352
+ params: zod_1.z.any(),
1353
+ status: zod_1.z.number(),
1354
+ total: zod_1.z.number(),
1355
+ totalResults: zod_1.z.number(),
1356
+ }),
1357
+ }, undefined, {
1358
+ attributeGroupUid: String(attributeGroupUid),
1359
+ attributeXAttributeGroupUid: String(attributeXAttributeGroupUid),
1360
+ });
1361
+ return true;
1362
+ },
654
1363
  },
655
1364
  };
656
1365
  /**
@@ -680,26 +1389,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
680
1389
  responseSchema: schemas_1.AttributeValueListResponseSchema,
681
1390
  }, params);
682
1391
  },
683
- /**
684
- * Get attribute value details by ID
685
- * @description Retrieve details for a specific attribute value
686
- * @param attributeValueUid Attribute value unique identifier
687
- * @returns Attribute value details
688
- * @throws ValidationError When response is malformed
689
- * @example
690
- * ```typescript
691
- * const value = await client.attributeValues.get(123);
692
- * console.log(value.attributeValue, value.displayValue);
693
- * ```
694
- */
695
- get: async (attributeValueUid) => {
696
- const response = await this.executeRequest({
697
- method: 'GET',
698
- path: '/attribute-values/{id}',
699
- responseSchema: schemas_1.AttributeValueListResponseSchema,
700
- }, undefined, { id: String(attributeValueUid) });
701
- return response.data[0];
702
- },
1392
+ // Note: get method removed - /attribute-values/{id} not in OpenAPI specification
703
1393
  };
704
1394
  /**
705
1395
  * Item attribute value management endpoints
@@ -747,20 +1437,20 @@ class ItemsClient extends base_client_1.BaseServiceClient {
747
1437
  create: this.createCreateMethod('/item-attribute-values', schemas_1.CreateItemAttributeValueRequestSchema, schemas_1.ItemAttributeValueResponseSchema),
748
1438
  };
749
1439
  /**
750
- * Health monitoring endpoints
751
- * @description Service health monitoring and connectivity testing
1440
+ * Health check endpoint - Direct path mapping to /health-check
1441
+ * @description OpenAPI Path Mirroring: /health-check healthCheck.get()
752
1442
  */
753
- this.health = {
1443
+ this.healthCheck = {
754
1444
  /**
755
1445
  * Service health check
756
1446
  * @description Verify service health and trigger seed jobs if needed
757
- * @fullPath api.items.health.check
1447
+ * @fullPath api.items.healthCheck.get
758
1448
  * @service items
759
1449
  * @domain system-health
760
- * @dataMethod healthData.check
1450
+ * @dataMethod healthCheckData.get
761
1451
  * @discoverable true
762
1452
  * @searchTerms ["health check", "service status", "system health", "service monitoring"]
763
- * @relatedEndpoints ["api.joomla.health.check", "api.nexus.health.check", "api.commerce.health.check"]
1453
+ * @relatedEndpoints ["api.joomla.healthCheck.get", "api.nexus.healthCheck.get", "api.commerce.healthCheck.get"]
764
1454
  * @commonPatterns ["Check service health", "Monitor system status", "Verify connectivity"]
765
1455
  * @workflow ["service-monitoring", "health-verification", "system-diagnostics"]
766
1456
  * @prerequisites ["Valid authentication token", "System monitoring permissions"]
@@ -773,26 +1463,32 @@ class ItemsClient extends base_client_1.BaseServiceClient {
773
1463
  * @throws ValidationError When response is malformed
774
1464
  * @example
775
1465
  * ```typescript
776
- * const health = await client.health.check();
1466
+ * const health = await client.healthCheck.get();
777
1467
  * console.log('Site ID:', health.data.siteId);
778
1468
  * console.log('Site Hash:', health.data.siteHash);
779
1469
  * ```
780
1470
  */
781
- check: this.createHealthCheckMethod(schemas_1.HealthCheckResponseSchema),
1471
+ get: this.createHealthCheckMethod(schemas_1.HealthCheckResponseSchema),
1472
+ };
1473
+ /**
1474
+ * Ping endpoint - Direct path mapping to /ping
1475
+ * @description OpenAPI Path Mirroring: /ping → ping.get()
1476
+ */
1477
+ this.ping = {
782
1478
  /**
783
1479
  * Simple connectivity test
784
1480
  * @description Simple connectivity test endpoint (no authentication required)
785
- * @fullPath api.items.health.ping
1481
+ * @fullPath api.items.ping.get
786
1482
  * @service items
787
1483
  * @domain system-health
788
- * @dataMethod healthData.ping
1484
+ * @dataMethod pingData.get
789
1485
  * @discoverable true
790
1486
  * @searchTerms ["ping", "connectivity test", "service alive", "basic health"]
791
- * @relatedEndpoints ["api.joomla.health.ping", "api.nexus.health.ping", "api.commerce.health.ping"]
1487
+ * @relatedEndpoints ["api.joomla.ping.get", "api.nexus.ping.get", "api.commerce.ping.get"]
792
1488
  * @commonPatterns ["Test connectivity", "Basic health check", "Service alive check"]
793
1489
  * @workflow ["connectivity-verification", "basic-monitoring"]
794
1490
  * @prerequisites ["Network connectivity"]
795
- * @nextSteps ["api.items.health.check for full health verification"]
1491
+ * @nextSteps ["api.items.healthCheck.get for full health verification"]
796
1492
  * @businessRules ["No authentication required", "Always returns 'pong'", "Minimal resource usage"]
797
1493
  * @functionalArea "basic-connectivity-testing"
798
1494
  * @caching "No caching, real-time response"
@@ -801,11 +1497,11 @@ class ItemsClient extends base_client_1.BaseServiceClient {
801
1497
  * @throws ValidationError When response is malformed
802
1498
  * @example
803
1499
  * ```typescript
804
- * const pong = await client.health.ping();
1500
+ * const pong = await client.ping.get();
805
1501
  * console.log(pong.data); // "pong"
806
1502
  * ```
807
1503
  */
808
- ping: async () => {
1504
+ get: async () => {
809
1505
  return this.executeRequest({
810
1506
  method: 'GET',
811
1507
  path: '/ping',
@@ -815,510 +1511,318 @@ class ItemsClient extends base_client_1.BaseServiceClient {
815
1511
  },
816
1512
  };
817
1513
  /**
818
- * Health monitoring data-only endpoints
819
- * @description Data-only methods that return just the data portion of health responses
1514
+ * Health check data-only endpoints
1515
+ * @description Data-only methods that return just the data portion of health check responses
820
1516
  */
821
- this.healthData = {
1517
+ this.healthCheckData = {
822
1518
  /**
823
1519
  * Service health check data only
824
1520
  * @description Returns only the data portion of health check response
825
- * @fullPath api.items.healthData.check
1521
+ * @fullPath api.items.healthCheckData.get
826
1522
  * @service items
827
1523
  * @domain system-health
828
1524
  * @discoverable true
829
1525
  * @searchTerms ["health data", "service status data", "health check data only"]
830
- * @relatedEndpoints ["api.items.health.check"]
1526
+ * @relatedEndpoints ["api.items.healthCheck.get"]
831
1527
  * @commonPatterns ["Get health status without metadata"]
832
1528
  * @returns Health check data only
833
1529
  */
834
- check: async () => {
835
- const response = await this.health.check();
1530
+ get: async () => {
1531
+ const response = await this.healthCheck.get();
836
1532
  return response.data;
837
1533
  },
1534
+ };
1535
+ /**
1536
+ * Ping data-only endpoints
1537
+ * @description Data-only methods that return just the data portion of ping responses
1538
+ */
1539
+ this.pingData = {
838
1540
  /**
839
1541
  * Simple connectivity test data only
840
1542
  * @description Returns only the data portion of ping response
841
- * @fullPath api.items.healthData.ping
1543
+ * @fullPath api.items.pingData.get
842
1544
  * @service items
843
1545
  * @domain system-health
844
1546
  * @discoverable true
845
1547
  * @searchTerms ["ping data", "connectivity data", "service alive data"]
846
- * @relatedEndpoints ["api.items.health.ping"]
1548
+ * @relatedEndpoints ["api.items.ping.get"]
847
1549
  * @commonPatterns ["Test connectivity without metadata"]
848
1550
  * @returns Ping data only
849
1551
  */
850
- ping: async () => {
851
- const response = await this.health.ping();
852
- return response.data;
853
- },
854
- };
855
- /**
856
- * Item favorites management endpoints
857
- * @description Methods for managing user favorite items
858
- */
859
- this.itemFavorites = {
860
- /**
861
- * List user's favorite items
862
- * @description Retrieve a list of the current user's favorite items
863
- * @fullPath api.items.itemFavorites.list
864
- * @service items
865
- * @domain user-preferences
866
- * @dataMethod itemFavoritesData.list
867
- * @discoverable true
868
- * @searchTerms ["favorites", "user favorites", "liked items", "bookmarked items", "favorite products"]
869
- * @relatedEndpoints ["api.items.itemWishlist.list", "api.customers.users.preferences"]
870
- * @commonPatterns ["Show user favorites", "Manage favorite items", "User preference management"]
871
- * @workflow ["user-preferences", "favorites-management"]
872
- * @prerequisites ["Valid authentication token", "User context"]
873
- * @nextSteps ["api.items.invMast.get for product details", "api.commerce.cartHeaders.addItem for adding to cart"]
874
- * @businessRules ["Shows only current user's favorites", "Respects product visibility", "Returns active favorites only"]
875
- * @functionalArea "user-preference-management"
876
- * @caching "Cache for 5 minutes, invalidate on favorites changes"
877
- * @performance "Paginated results for large favorite lists"
878
- * @param params Optional filtering and pagination parameters
879
- * @returns Array of user's favorite items
880
- * @throws ValidationError When parameters are invalid or response is malformed
881
- * @example
882
- * ```typescript
883
- * const favorites = await client.itemFavorites.list({ limit: 20 });
884
- * favorites.data.forEach(fav => {
885
- * console.log(`Favorite: ${fav.itemDesc} (${fav.itemId})`);
886
- * });
887
- * ```
888
- */
889
- list: async (params) => {
890
- return this.executeRequest({
891
- method: 'GET',
892
- path: '/item-favorites',
893
- paramsSchema: schemas_1.ItemFavoritesListParamsSchema,
894
- responseSchema: schemas_1.ItemFavoriteListResponseSchema,
895
- }, params);
896
- },
897
- /**
898
- * Add item to favorites
899
- * @description Add an item to the current user's favorites
900
- * @param request Favorite item creation data
901
- * @returns Created favorite item information
902
- * @throws ValidationError When request is invalid or response is malformed
903
- * @example
904
- * ```typescript
905
- * const favorite = await client.itemFavorites.create({
906
- * invMastUid: 12345,
907
- * itemNote: 'Great product for my projects'
908
- * });
909
- * ```
910
- */
911
- create: this.createCreateMethod('/item-favorites', schemas_1.CreateItemFavoriteRequestSchema, schemas_1.ItemFavoriteResponseSchema),
912
- /**
913
- * Remove item from favorites
914
- * @description Remove an item from the current user's favorites
915
- * @param favoriteUid Favorite item unique identifier
916
- * @returns Success response
917
- * @throws ValidationError When response is malformed
918
- * @example
919
- * ```typescript
920
- * await client.itemFavorites.delete(123);
921
- * ```
922
- */
923
- delete: this.createDeleteMethod('/item-favorites/{id}', schemas_1.ItemFavoriteResponseSchema),
924
- /**
925
- * Update favorite item
926
- * @description Update a favorite item's information
927
- * @param favoriteUid Favorite item unique identifier
928
- * @param request Update data
929
- * @returns Updated favorite item information
930
- * @throws ValidationError When request is invalid or response is malformed
931
- * @example
932
- * ```typescript
933
- * const updated = await client.itemFavorites.update(123, {
934
- * itemNote: 'Updated note about this favorite item'
935
- * });
936
- * ```
937
- */
938
- update: this.createUpdateMethod('/item-favorites/{id}', schemas_1.UpdateItemFavoriteRequestSchema, schemas_1.ItemFavoriteResponseSchema),
939
- };
940
- /**
941
- * Item favorites data-only endpoints
942
- * @description Data-only methods that return just the data portion of favorites responses
943
- */
944
- this.itemFavoritesData = {
945
- /**
946
- * List user's favorite items data only
947
- * @description Returns only the data portion of favorites list response
948
- * @param params Optional filtering and pagination parameters
949
- * @returns Array of favorite items data
950
- */
951
- list: async (params) => {
952
- const response = await this.itemFavorites.list(params);
1552
+ get: async () => {
1553
+ const response = await this.ping.get();
953
1554
  return response.data;
954
1555
  },
955
1556
  };
956
1557
  /**
957
- * Item wishlists management endpoints
958
- * @description Methods for managing user wishlists and wishlist items
959
- */
960
- this.itemWishlist = {
961
- /**
962
- * List user's wishlists
963
- * @description Retrieve a list of the current user's wishlists
964
- * @fullPath api.items.itemWishlist.list
965
- * @service items
966
- * @domain user-preferences
967
- * @dataMethod itemWishlistData.list
968
- * @discoverable true
969
- * @searchTerms ["wishlists", "user wishlists", "shopping lists", "saved lists", "wishlist management"]
970
- * @relatedEndpoints ["api.items.itemFavorites.list", "api.commerce.cartHeaders.list"]
971
- * @commonPatterns ["Show user wishlists", "Manage wishlist collections", "Shopping list management"]
972
- * @workflow ["user-preferences", "wishlist-management"]
973
- * @prerequisites ["Valid authentication token", "User context"]
974
- * @nextSteps ["api.items.itemWishlist.getLines for wishlist items", "api.commerce.cartHeaders.create for converting to cart"]
975
- * @businessRules ["Shows only current user's wishlists", "Includes public wishlists if shared", "Returns active wishlists only"]
976
- * @functionalArea "user-preference-management"
977
- * @caching "Cache for 5 minutes, invalidate on wishlist changes"
978
- * @performance "Paginated results for large wishlist collections"
979
- * @param params Optional filtering and pagination parameters
980
- * @returns Array of user's wishlists
981
- * @throws ValidationError When parameters are invalid or response is malformed
982
- * @example
983
- * ```typescript
984
- * const wishlists = await client.itemWishlist.list({ limit: 10 });
985
- * wishlists.data.forEach(list => {
986
- * console.log(`Wishlist: ${list.wishlistName} (${list.wishlistDescription})`);
987
- * });
988
- * ```
989
- */
990
- list: async (params) => {
991
- return this.executeRequest({
992
- method: 'GET',
993
- path: '/item-wishlist',
994
- paramsSchema: schemas_1.ItemWishlistListParamsSchema,
995
- responseSchema: schemas_1.ItemWishlistHeaderListResponseSchema,
996
- }, params);
997
- },
998
- /**
999
- * Get wishlist details
1000
- * @description Retrieve details for a specific wishlist
1001
- * @param wishlistUid Wishlist unique identifier
1002
- * @returns Wishlist details
1003
- * @throws ValidationError When response is malformed
1004
- * @example
1005
- * ```typescript
1006
- * const wishlist = await client.itemWishlist.get(123);
1007
- * console.log(wishlist.data.wishlistName, wishlist.data.wishlistDescription);
1008
- * ```
1009
- */
1010
- get: this.createGetMethod('/item-wishlist/{id}', schemas_1.ItemWishlistHeaderResponseSchema),
1011
- /**
1012
- * Create new wishlist
1013
- * @description Create a new wishlist for the current user
1014
- * @param request Wishlist creation data
1015
- * @returns Created wishlist information
1016
- * @throws ValidationError When request is invalid or response is malformed
1017
- * @example
1018
- * ```typescript
1019
- * const wishlist = await client.itemWishlist.create({
1020
- * wishlistName: 'Home Office Setup',
1021
- * wishlistDescription: 'Items for my home office renovation',
1022
- * isPublic: 'N'
1023
- * });
1024
- * ```
1025
- */
1026
- create: this.createCreateMethod('/item-wishlist', schemas_1.CreateItemWishlistHeaderRequestSchema, schemas_1.ItemWishlistHeaderResponseSchema),
1027
- /**
1028
- * Update wishlist
1029
- * @description Update a wishlist's information
1030
- * @param wishlistUid Wishlist unique identifier
1031
- * @param request Update data
1032
- * @returns Updated wishlist information
1033
- * @throws ValidationError When request is invalid or response is malformed
1034
- * @example
1035
- * ```typescript
1036
- * const updated = await client.itemWishlist.update(123, {
1037
- * wishlistName: 'Updated Office Setup',
1038
- * wishlistDescription: 'Updated description for my office items'
1039
- * });
1040
- * ```
1041
- */
1042
- update: this.createUpdateMethod('/item-wishlist/{id}', schemas_1.UpdateItemWishlistHeaderRequestSchema, schemas_1.ItemWishlistHeaderResponseSchema),
1043
- /**
1044
- * Delete wishlist
1045
- * @description Delete a wishlist and all its items
1046
- * @param wishlistUid Wishlist unique identifier
1047
- * @returns Success response
1048
- * @throws ValidationError When response is malformed
1049
- * @example
1050
- * ```typescript
1051
- * await client.itemWishlist.delete(123);
1052
- * ```
1053
- */
1054
- delete: this.createDeleteMethod('/item-wishlist/{id}', schemas_1.ItemWishlistHeaderResponseSchema),
1055
- /**
1056
- * Get wishlist items
1057
- * @description Retrieve items in a specific wishlist
1058
- * @param wishlistUid Wishlist unique identifier
1059
- * @param params Optional filtering and pagination parameters
1060
- * @returns Array of wishlist items
1061
- * @throws ValidationError When parameters are invalid or response is malformed
1062
- * @example
1063
- * ```typescript
1064
- * const items = await client.itemWishlist.getLines(123, { limit: 20 });
1065
- * items.data.forEach(item => {
1066
- * console.log(`${item.itemDesc} - Qty: ${item.qtyDesired}, Priority: ${item.priority}`);
1067
- * });
1068
- * ```
1069
- */
1070
- getLines: async (wishlistUid, params) => {
1071
- return this.executeRequest({
1072
- method: 'GET',
1073
- path: '/item-wishlist/{id}/lines',
1074
- paramsSchema: schemas_1.ItemWishlistLineListParamsSchema,
1075
- responseSchema: schemas_1.ItemWishlistLineListResponseSchema,
1076
- }, params, { id: String(wishlistUid) });
1077
- },
1078
- /**
1079
- * Add item to wishlist
1080
- * @description Add an item to a specific wishlist
1081
- * @param wishlistUid Wishlist unique identifier
1082
- * @param request Wishlist item creation data
1083
- * @returns Created wishlist item information
1084
- * @throws ValidationError When request is invalid or response is malformed
1085
- * @example
1086
- * ```typescript
1087
- * const item = await client.itemWishlist.addLine(123, {
1088
- * invMastUid: 12345,
1089
- * qtyDesired: 2,
1090
- * priority: 1,
1091
- * notes: 'Need this for the new office setup'
1092
- * });
1093
- * ```
1094
- */
1095
- addLine: async (wishlistUid, request) => {
1096
- return this.executeRequest({
1097
- method: 'POST',
1098
- path: '/item-wishlist/{id}/lines',
1099
- paramsSchema: schemas_1.CreateItemWishlistLineRequestSchema,
1100
- responseSchema: schemas_1.ItemWishlistLineResponseSchema,
1101
- }, request, { id: String(wishlistUid) });
1102
- },
1103
- /**
1104
- * Update wishlist item
1105
- * @description Update an item in a wishlist
1106
- * @param wishlistUid Wishlist unique identifier
1107
- * @param lineUid Wishlist line unique identifier
1108
- * @param request Update data
1109
- * @returns Updated wishlist item information
1110
- * @throws ValidationError When request is invalid or response is malformed
1111
- * @example
1112
- * ```typescript
1113
- * const updated = await client.itemWishlist.updateLine(123, 456, {
1114
- * qtyDesired: 3,
1115
- * priority: 2,
1116
- * notes: 'Updated quantity needed'
1117
- * });
1118
- * ```
1119
- */
1120
- updateLine: async (wishlistUid, lineUid, request) => {
1121
- return this.executeRequest({
1122
- method: 'PUT',
1123
- path: '/item-wishlist/{wishlistId}/lines/{lineId}',
1124
- paramsSchema: schemas_1.UpdateItemWishlistLineRequestSchema,
1125
- responseSchema: schemas_1.ItemWishlistLineResponseSchema,
1126
- }, request, { wishlistId: String(wishlistUid), lineId: String(lineUid) });
1127
- },
1128
- /**
1129
- * Remove item from wishlist
1130
- * @description Remove an item from a wishlist
1131
- * @param wishlistUid Wishlist unique identifier
1132
- * @param lineUid Wishlist line unique identifier
1133
- * @returns Success response
1134
- * @throws ValidationError When response is malformed
1135
- * @example
1136
- * ```typescript
1137
- * await client.itemWishlist.deleteLine(123, 456);
1138
- * ```
1139
- */
1140
- deleteLine: async (wishlistUid, lineUid) => {
1141
- return this.executeRequest({
1142
- method: 'DELETE',
1143
- path: '/item-wishlist/{wishlistId}/lines/{lineId}',
1144
- responseSchema: schemas_1.ItemWishlistLineResponseSchema,
1145
- }, undefined, { wishlistId: String(wishlistUid), lineId: String(lineUid) });
1146
- },
1147
- };
1148
- /**
1149
- * Item wishlists data-only endpoints
1150
- * @description Data-only methods that return just the data portion of wishlists responses
1558
+ * Internal endpoints - Direct path mapping to /internal/*
1559
+ * @description OpenAPI Path Mirroring: /internal/* internal.*
1151
1560
  */
1152
- this.itemWishlistData = {
1153
- /**
1154
- * List user's wishlists data only
1155
- * @description Returns only the data portion of wishlists list response
1156
- * @param params Optional filtering and pagination parameters
1157
- * @returns Array of wishlists data
1158
- */
1159
- list: async (params) => {
1160
- const response = await this.itemWishlist.list(params);
1161
- return response.data;
1162
- },
1561
+ this.internal = {
1163
1562
  /**
1164
- * Get wishlist items data only
1165
- * @description Returns only the data portion of wishlist items response
1166
- * @param wishlistUid Wishlist unique identifier
1167
- * @param params Optional filtering and pagination parameters
1168
- * @returns Array of wishlist items data
1563
+ * PDF generation endpoints - Direct path mapping to /internal/pdf
1564
+ * @description OpenAPI Path Mirroring: /internal/pdf internal.pdf.create()
1169
1565
  */
1170
- getLines: async (wishlistUid, params) => {
1171
- const response = await this.itemWishlist.getLines(wishlistUid, params);
1172
- return response.data;
1566
+ pdf: {
1567
+ /**
1568
+ * Create internal PDF
1569
+ * @description Generate internal PDF documents
1570
+ * @fullPath api.items.internal.pdf.create
1571
+ * @service items
1572
+ * @domain document-generation
1573
+ * @dataMethod internalPdfData.create
1574
+ * @discoverable true
1575
+ * @searchTerms ["pdf generation", "internal pdf", "document creation", "pdf templates"]
1576
+ * @relatedEndpoints ["api.joomla.internal.pdf.create", "api.nexus.internal.pdf.create"]
1577
+ * @commonPatterns ["Generate PDF documents", "Create reports", "Export data to PDF"]
1578
+ * @workflow ["document-generation", "report-creation"]
1579
+ * @prerequisites ["Valid authentication token", "Document generation permissions"]
1580
+ * @nextSteps ["Download generated PDF", "Store PDF reference"]
1581
+ * @businessRules ["Template must exist", "Data structure must match template requirements"]
1582
+ * @functionalArea "document-and-report-generation"
1583
+ * @caching "No caching, dynamic generation"
1584
+ * @performance "PDF generation can take 1-5 seconds depending on complexity"
1585
+ * @param request PDF generation parameters
1586
+ * @returns PDF generation result
1587
+ * @throws ValidationError When request is invalid or response is malformed
1588
+ * @example
1589
+ * ```typescript
1590
+ * const pdf = await client.internal.pdf.create({
1591
+ * templateId: 'invoice',
1592
+ * data: { orderId: 12345 }
1593
+ * });
1594
+ * console.log('PDF URL:', pdf.data.pdfUrl);
1595
+ * ```
1596
+ */
1597
+ create: async (request) => {
1598
+ return this.executeRequest({
1599
+ method: 'POST',
1600
+ path: '/internal/pdf',
1601
+ paramsSchema: zod_1.z.object({
1602
+ templateId: zod_1.z.string(),
1603
+ data: zod_1.z.record(zod_1.z.unknown()),
1604
+ }),
1605
+ responseSchema: schemas_1.InternalPdfResponseSchema,
1606
+ }, request);
1607
+ },
1173
1608
  },
1174
1609
  };
1175
1610
  /**
1176
- * Item category management endpoints
1177
- * @description Methods for managing item categories following OpenAPI path mirroring pattern
1611
+ * Legacy itemFavorites removed - now using OpenAPI Path Mirroring Pattern
1612
+ * @see itemFavorites implementation below that follows /item-favorites/{usersId} structure
1178
1613
  */
1179
- this.itemCategory = {
1614
+ // Legacy implementation removed
1615
+ /**
1616
+ * Item wishlists management endpoints
1617
+ * @description Methods for managing user wishlists and wishlist items
1618
+ */
1619
+ this.itemWishlist = {
1180
1620
  /**
1181
- * List item categories
1182
- * @description Retrieve a list of item categories
1183
- * @fullPath api.items.itemCategory.list
1621
+ * Get user's wishlists
1622
+ * @description Retrieve wishlists for a specific user (OpenAPI: /item-wishlist/{usersId})
1623
+ * @fullPath api.items.itemWishlist.get
1184
1624
  * @service items
1185
- * @domain product-catalog
1186
- * @dataMethod itemCategoryData.list
1625
+ * @domain user-preferences
1626
+ * @dataMethod itemWishlistData.get
1187
1627
  * @discoverable true
1188
- * @searchTerms ["categories", "item categories", "product categories", "category management"]
1189
- * @relatedEndpoints ["api.items.invMast.list", "api.items.attributes.list"]
1190
- * @commonPatterns ["Show categories", "Manage category structure", "Category navigation"]
1191
- * @workflow ["product-catalog-management", "category-management"]
1192
- * @prerequisites ["Valid authentication token", "Catalog permissions"]
1193
- * @nextSteps ["api.items.itemCategory.get for category details", "api.items.invMast.list for category products"]
1194
- * @businessRules ["Shows active categories only", "Respects category hierarchy", "Returns visible categories"]
1195
- * @functionalArea "product-catalog-management"
1196
- * @caching "Cache for 30 minutes, invalidate on category changes"
1197
- * @performance "Paginated results for large category trees"
1198
- * @param params Optional filtering and pagination parameters
1199
- * @returns Array of item categories
1628
+ * @searchTerms ["wishlists", "user wishlists", "shopping lists", "user lists"]
1629
+ * @relatedEndpoints ["api.items.itemFavorites.list", "api.items.itemWishlist.hdr.get"]
1630
+ * @commonPatterns ["Get user wishlists", "Wishlist management by user"]
1631
+ * @workflow ["user-preferences", "wishlist-management"]
1632
+ * @prerequisites ["Valid authentication token", "User context"]
1633
+ * @nextSteps ["api.items.itemWishlist.hdr.get for specific wishlist", "api.items.itemWishlist.hdr.line.get for line items"]
1634
+ * @businessRules ["Shows wishlists for specified user", "Includes accessible wishlists only"]
1635
+ * @functionalArea "user-preference-management"
1636
+ * @caching "Cache for 5 minutes, invalidate on wishlist changes"
1637
+ * @performance "Returns all wishlists for user"
1638
+ * @param usersId User unique identifier
1639
+ * @returns Array of user's wishlists
1200
1640
  * @throws ValidationError When parameters are invalid or response is malformed
1201
1641
  * @example
1202
1642
  * ```typescript
1203
- * const categories = await client.itemCategory.list({ parentUid: 100 });
1204
- * categories.data.forEach(cat => {
1205
- * console.log(`Category: ${cat.itemCategoryDesc} (${cat.path})`);
1643
+ * const wishlists = await client.itemWishlist.get(12345);
1644
+ * wishlists.data.forEach(list => {
1645
+ * console.log(`Wishlist: ${list.wishlistName} (${list.wishlistDescription})`);
1206
1646
  * });
1207
1647
  * ```
1208
1648
  */
1209
- list: async (params) => {
1649
+ get: async (usersId) => {
1210
1650
  return this.executeRequest({
1211
1651
  method: 'GET',
1212
- path: '/item-category',
1213
- paramsSchema: schemas_1.CategoryListParamsSchema,
1214
- responseSchema: schemas_1.CategoryListResponseSchema,
1215
- }, params);
1652
+ path: '/item-wishlist/{usersId}',
1653
+ responseSchema: schemas_1.ItemWishlistHeaderListResponseSchema,
1654
+ }, undefined, { usersId: String(usersId) });
1216
1655
  },
1656
+ // Note: duplicate get method removed - OpenAPI structure requires usersId parameter
1217
1657
  /**
1218
- * Get item category details
1219
- * @description Retrieve detailed information about a specific item category
1220
- * @fullPath api.items.itemCategory.get
1221
- * @service items
1222
- * @domain product-catalog
1223
- * @dataMethod itemCategoryData.get
1224
- * @discoverable true
1225
- * @searchTerms ["category details", "category info", "category data"]
1226
- * @relatedEndpoints ["api.items.itemCategory.list", "api.items.invMast.list"]
1227
- * @commonPatterns ["Show category details", "Category information lookup"]
1228
- * @param itemCategoryUid Category unique identifier
1229
- * @param params Optional query parameters
1230
- * @returns Category details
1231
- * @throws ValidationError When response is malformed
1658
+ * Create new wishlist for user
1659
+ * @description Create a new wishlist for a specific user (OpenAPI: /item-wishlist/{usersId})
1660
+ * @param usersId User unique identifier
1661
+ * @param request Wishlist creation data
1662
+ * @returns Created wishlist information
1663
+ * @throws ValidationError When request is invalid or response is malformed
1232
1664
  * @example
1233
1665
  * ```typescript
1234
- * const category = await client.itemCategory.get(123);
1235
- * console.log(category.data.itemCategoryDesc, category.data.path);
1666
+ * const wishlist = await client.itemWishlist.create(12345, {
1667
+ * wishlistName: 'Home Office Setup',
1668
+ * wishlistDescription: 'Items for my home office renovation',
1669
+ * isPublic: 'N'
1670
+ * });
1236
1671
  * ```
1237
1672
  */
1238
- get: this.createGetMethod('/item-category/{id}', schemas_1.CategoryResponseSchema),
1673
+ create: async (usersId, request) => {
1674
+ return this.executeRequest({
1675
+ method: 'POST',
1676
+ path: '/item-wishlist/{usersId}',
1677
+ paramsSchema: schemas_1.CreateItemWishlistHeaderRequestSchema,
1678
+ responseSchema: schemas_1.ItemWishlistHeaderResponseSchema,
1679
+ }, request, { usersId: String(usersId) });
1680
+ },
1239
1681
  /**
1240
- * Get category documentation
1241
- * @description Retrieve documentation for a specific item category
1242
- * @fullPath api.items.itemCategory.doc.get
1243
- * @service items
1244
- * @domain product-catalog
1245
- * @discoverable true
1246
- * @searchTerms ["category documentation", "category docs", "category help"]
1247
- * @relatedEndpoints ["api.items.itemCategory.get", "api.items.itemCategory.list"]
1248
- * @commonPatterns ["Show category documentation", "Category help content"]
1249
- * @param itemCategoryUid Category unique identifier
1250
- * @returns Category documentation
1251
- * @throws ValidationError When response is malformed
1252
- * @example
1253
- * ```typescript
1254
- * const docs = await client.itemCategory.doc.get(123);
1255
- * console.log(docs.data.documentationContent);
1256
- * ```
1682
+ * Wishlist header management endpoints
1683
+ * @description Methods for managing specific wishlist headers (OpenAPI: /item-wishlist/{usersId}/hdr/{itemWishlistHdrUid})
1257
1684
  */
1258
- doc: {
1259
- get: async (itemCategoryUid) => {
1685
+ hdr: {
1686
+ /**
1687
+ * Get wishlist header details
1688
+ * @description Retrieve details for a specific wishlist header
1689
+ * @fullPath api.items.itemWishlist.hdr.get
1690
+ * @service items
1691
+ * @domain user-preferences
1692
+ * @param usersId User unique identifier
1693
+ * @param itemWishlistHdrUid Wishlist header unique identifier
1694
+ * @returns Wishlist header details
1695
+ * @throws ValidationError When response is malformed
1696
+ * @example
1697
+ * ```typescript
1698
+ * const wishlist = await client.itemWishlist.hdr.get(12345, 678);
1699
+ * console.log(wishlist.data.wishlistName);
1700
+ * ```
1701
+ */
1702
+ get: async (usersId, itemWishlistHdrUid) => {
1260
1703
  return this.executeRequest({
1261
1704
  method: 'GET',
1262
- path: '/item-category/{itemCategoryUid}/doc',
1263
- responseSchema: schemas_1.CategoryResponseSchema,
1264
- }, undefined, { itemCategoryUid: String(itemCategoryUid) });
1705
+ path: '/item-wishlist/{usersId}/hdr/{itemWishlistHdrUid}',
1706
+ responseSchema: schemas_1.ItemWishlistHeaderResponseSchema,
1707
+ }, undefined, { usersId: String(usersId), itemWishlistHdrUid: String(itemWishlistHdrUid) });
1708
+ },
1709
+ /**
1710
+ * Create wishlist header
1711
+ * @description Create a new wishlist header
1712
+ * @param usersId User unique identifier
1713
+ * @param itemWishlistHdrUid Wishlist header unique identifier
1714
+ * @param request Wishlist header creation data
1715
+ * @returns Created wishlist header information
1716
+ * @throws ValidationError When request is invalid or response is malformed
1717
+ */
1718
+ create: async (usersId, itemWishlistHdrUid, request) => {
1719
+ return this.executeRequest({
1720
+ method: 'POST',
1721
+ path: '/item-wishlist/{usersId}/hdr/{itemWishlistHdrUid}',
1722
+ paramsSchema: schemas_1.CreateItemWishlistHeaderRequestSchema,
1723
+ responseSchema: schemas_1.ItemWishlistHeaderResponseSchema,
1724
+ }, request, { usersId: String(usersId), itemWishlistHdrUid: String(itemWishlistHdrUid) });
1725
+ },
1726
+ /**
1727
+ * Wishlist line management endpoints
1728
+ * @description Methods for managing specific wishlist line items
1729
+ */
1730
+ line: {
1731
+ /**
1732
+ * Get wishlist line details
1733
+ * @description Retrieve details for a specific wishlist line item
1734
+ * @fullPath api.items.itemWishlist.hdr.line.get
1735
+ * @service items
1736
+ * @domain user-preferences
1737
+ * @param usersId User unique identifier
1738
+ * @param itemWishlistHdrUid Wishlist header unique identifier
1739
+ * @param itemWishlistLineUid Wishlist line unique identifier
1740
+ * @returns Wishlist line details
1741
+ * @throws ValidationError When response is malformed
1742
+ * @example
1743
+ * ```typescript
1744
+ * const line = await client.itemWishlist.hdr.line.get(12345, 678, 901);
1745
+ * console.log(`Item: ${line.data.itemDesc}, Qty: ${line.data.qtyDesired}`);
1746
+ * ```
1747
+ */
1748
+ get: async (usersId, itemWishlistHdrUid, itemWishlistLineUid) => {
1749
+ return this.executeRequest({
1750
+ method: 'GET',
1751
+ path: '/item-wishlist/{usersId}/hdr/{itemWishlistHdrUid}/line/{itemWishlistLineUid}',
1752
+ responseSchema: schemas_1.ItemWishlistLineResponseSchema,
1753
+ }, undefined, {
1754
+ usersId: String(usersId),
1755
+ itemWishlistHdrUid: String(itemWishlistHdrUid),
1756
+ itemWishlistLineUid: String(itemWishlistLineUid),
1757
+ });
1758
+ },
1759
+ /**
1760
+ * Delete wishlist line item
1761
+ * @description Remove a specific item from a wishlist
1762
+ * @fullPath api.items.itemWishlist.hdr.line.delete
1763
+ * @service items
1764
+ * @domain user-preferences
1765
+ * @dataMethod itemWishlistData.hdr.line.delete
1766
+ * @discoverable true
1767
+ * @searchTerms ["delete wishlist item", "remove wishlist item", "wishlist line deletion"]
1768
+ * @relatedEndpoints ["api.items.itemWishlist.hdr.line.get", "api.items.itemWishlist.hdr.get"]
1769
+ * @commonPatterns ["Remove item from wishlist", "Clean up wishlist"]
1770
+ * @workflow ["user-preferences", "wishlist-maintenance"]
1771
+ * @prerequisites ["Valid authentication token", "User context", "Line item must exist"]
1772
+ * @nextSteps ["Verify deletion", "Update wishlist display"]
1773
+ * @businessRules ["Removes specific line item only", "Does not affect other wishlist items"]
1774
+ * @functionalArea "user-preference-management"
1775
+ * @caching "Invalidates wishlist cache"
1776
+ * @performance "Direct deletion operation"
1777
+ * @param usersId User unique identifier
1778
+ * @param itemWishlistHdrUid Wishlist header unique identifier
1779
+ * @param itemWishlistLineUid Wishlist line unique identifier
1780
+ * @returns Success status
1781
+ * @throws ValidationError When response is malformed
1782
+ * @example
1783
+ * ```typescript
1784
+ * await client.itemWishlist.hdr.line.delete(12345, 678, 901);
1785
+ * ```
1786
+ */
1787
+ delete: async (usersId, itemWishlistHdrUid, itemWishlistLineUid) => {
1788
+ return this.executeRequest({
1789
+ method: 'DELETE',
1790
+ path: '/item-wishlist/{usersId}/hdr/{itemWishlistHdrUid}/line/{itemWishlistLineUid}',
1791
+ responseSchema: zod_1.z.object({
1792
+ count: zod_1.z.number(),
1793
+ data: zod_1.z.any(),
1794
+ message: zod_1.z.string(),
1795
+ options: zod_1.z.any(),
1796
+ params: zod_1.z.any(),
1797
+ status: zod_1.z.number(),
1798
+ total: zod_1.z.number(),
1799
+ totalResults: zod_1.z.number(),
1800
+ }),
1801
+ }, undefined, {
1802
+ usersId: String(usersId),
1803
+ itemWishlistHdrUid: String(itemWishlistHdrUid),
1804
+ itemWishlistLineUid: String(itemWishlistLineUid),
1805
+ });
1806
+ },
1265
1807
  },
1266
- },
1267
- /**
1268
- * Category lookup
1269
- * @description Lookup categories by various criteria
1270
- * @fullPath api.items.itemCategory.lookup
1271
- * @service items
1272
- * @domain product-catalog
1273
- * @discoverable true
1274
- * @searchTerms ["category lookup", "find categories", "category search"]
1275
- * @relatedEndpoints ["api.items.itemCategory.list", "api.items.itemCategory.get"]
1276
- * @commonPatterns ["Find categories", "Category search", "Category filtering"]
1277
- * @param params Lookup criteria
1278
- * @returns Matching categories
1279
- * @throws ValidationError When parameters are invalid or response is malformed
1280
- * @example
1281
- * ```typescript
1282
- * const categories = await client.itemCategory.lookup({
1283
- * categoryPath: '/Electronics/Components'
1284
- * });
1285
- * ```
1286
- */
1287
- lookup: async (params) => {
1288
- return this.executeRequest({
1289
- method: 'GET',
1290
- path: '/item-category/lookup',
1291
- paramsSchema: schemas_1.CategoryLookupParamsSchema,
1292
- responseSchema: schemas_1.CategoryListResponseSchema,
1293
- }, params);
1294
1808
  },
1295
1809
  };
1296
1810
  /**
1297
- * Item category data-only endpoints
1298
- * @description Data-only methods that return just the data portion of category responses
1811
+ * Item wishlists data-only endpoints
1812
+ * @description Data-only methods that return just the data portion of wishlists responses
1299
1813
  */
1300
- this.itemCategoryData = {
1301
- /**
1302
- * List item categories data only
1303
- * @description Returns only the data portion of categories list response
1304
- * @param params Optional filtering and pagination parameters
1305
- * @returns Array of category data
1306
- */
1307
- list: async (params) => {
1308
- const response = await this.itemCategory.list(params);
1309
- return response.data;
1310
- },
1814
+ this.itemWishlistData = {
1311
1815
  /**
1312
- * Get item category details data only
1313
- * @description Returns only the data portion of category details response
1314
- * @param itemCategoryUid Category unique identifier
1315
- * @param params Optional query parameters
1316
- * @returns Category data
1816
+ * Get user's wishlists data only
1817
+ * @description Returns only the data portion of user wishlists response
1818
+ * @param usersId User unique identifier
1819
+ * @returns Array of wishlists data
1317
1820
  */
1318
- get: async (itemCategoryUid) => {
1319
- const response = await this.itemCategory.get(itemCategoryUid);
1821
+ get: async (usersId) => {
1822
+ const response = await this.itemWishlist.get(usersId);
1320
1823
  return response.data;
1321
1824
  },
1825
+ // Note: getLines data method removed - parent method was removed for OpenAPI compliance
1322
1826
  };
1323
1827
  /**
1324
1828
  * Product variants management endpoints
@@ -1374,7 +1878,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1374
1878
  * console.log(variant.data.variantGroupName, variant.data.variantType);
1375
1879
  * ```
1376
1880
  */
1377
- get: this.createGetMethod('/variants/{id}', schemas_1.ItemVariantHeaderResponseSchema),
1881
+ get: this.createGetMethod('/variants/{itemVariantHdrUid}', schemas_1.ItemVariantHeaderResponseSchema),
1378
1882
  /**
1379
1883
  * Create new variant group
1380
1884
  * @description Create a new product variant group
@@ -1407,7 +1911,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1407
1911
  * });
1408
1912
  * ```
1409
1913
  */
1410
- update: this.createUpdateMethod('/variants/{id}', schemas_1.UpdateItemVariantHeaderRequestSchema, schemas_1.ItemVariantHeaderResponseSchema),
1914
+ update: this.createUpdateMethod('/variants/{itemVariantHdrUid}', schemas_1.UpdateItemVariantHeaderRequestSchema, schemas_1.ItemVariantHeaderResponseSchema),
1411
1915
  /**
1412
1916
  * Delete variant group
1413
1917
  * @description Delete a variant group and all its variant items
@@ -1419,7 +1923,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1419
1923
  * await client.variants.delete(123);
1420
1924
  * ```
1421
1925
  */
1422
- delete: this.createDeleteMethod('/variants/{id}', schemas_1.ItemVariantHeaderResponseSchema),
1926
+ delete: this.createDeleteMethod('/variants/{itemVariantHdrUid}', schemas_1.ItemVariantHeaderResponseSchema),
1423
1927
  /**
1424
1928
  * Get variant items
1425
1929
  * @description Retrieve items in a specific variant group
@@ -1437,9 +1941,9 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1437
1941
  getLines: async (variantHeaderUid) => {
1438
1942
  return this.executeRequest({
1439
1943
  method: 'GET',
1440
- path: '/variants/{id}/lines',
1944
+ path: '/variants/{itemVariantHdrUid}/lines',
1441
1945
  responseSchema: schemas_1.ItemVariantLineListResponseSchema,
1442
- }, undefined, { id: String(variantHeaderUid) });
1946
+ }, undefined, { itemVariantHdrUid: String(variantHeaderUid) });
1443
1947
  },
1444
1948
  /**
1445
1949
  * Add variant item
@@ -1462,10 +1966,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1462
1966
  addLine: async (variantHeaderUid, request) => {
1463
1967
  return this.executeRequest({
1464
1968
  method: 'POST',
1465
- path: '/variants/{id}/lines',
1969
+ path: '/variants/{itemVariantHdrUid}/lines',
1466
1970
  paramsSchema: schemas_1.CreateItemVariantLineRequestSchema,
1467
1971
  responseSchema: schemas_1.ItemVariantLineResponseSchema,
1468
- }, request, { id: String(variantHeaderUid) });
1972
+ }, request, { itemVariantHdrUid: String(variantHeaderUid) });
1469
1973
  },
1470
1974
  /**
1471
1975
  * Update variant item
@@ -1577,10 +2081,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1577
2081
  list: async (invMastUid, params) => {
1578
2082
  return this.executeRequest({
1579
2083
  method: 'GET',
1580
- path: '/inv-mast/{id}/faq',
2084
+ path: '/inv-mast/{invMastUid}/faq',
1581
2085
  paramsSchema: schemas_1.ItemFaqListParamsSchema,
1582
2086
  responseSchema: schemas_1.ItemFaqListResponseSchema,
1583
- }, params, { id: String(invMastUid) });
2087
+ }, params, { invMastUid: String(invMastUid) });
1584
2088
  },
1585
2089
  /**
1586
2090
  * Get FAQ details
@@ -1622,10 +2126,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1622
2126
  create: async (invMastUid, request) => {
1623
2127
  return this.executeRequest({
1624
2128
  method: 'POST',
1625
- path: '/inv-mast/{id}/faq',
2129
+ path: '/inv-mast/{invMastUid}/faq',
1626
2130
  paramsSchema: schemas_1.CreateItemFaqRequestSchema,
1627
2131
  responseSchema: schemas_1.ItemFaqResponseSchema,
1628
- }, request, { id: String(invMastUid) });
2132
+ }, request, { invMastUid: String(invMastUid) });
1629
2133
  },
1630
2134
  /**
1631
2135
  * Update FAQ
@@ -1709,155 +2213,6 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1709
2213
  return response.data;
1710
2214
  },
1711
2215
  };
1712
- /**
1713
- * Brand-item relationship management endpoints
1714
- * @description Methods for managing relationships between brands and items
1715
- */
1716
- this.brandItems = {
1717
- /**
1718
- * List brand-item relationships
1719
- * @description Retrieve brand-item relationships for a specific brand
1720
- * @fullPath api.items.brandItems.list
1721
- * @service items
1722
- * @domain product-catalog
1723
- * @dataMethod brandItemsData.list
1724
- * @discoverable true
1725
- * @searchTerms ["brand items", "brand products", "brand relationships", "manufacturer items", "brand catalog"]
1726
- * @relatedEndpoints ["api.items.brands.list", "api.items.products.get"]
1727
- * @commonPatterns ["Show brand products", "Manage brand relationships", "Brand catalog management"]
1728
- * @workflow ["product-catalog-management", "brand-management"]
1729
- * @prerequisites ["Valid authentication token", "Brand management permissions"]
1730
- * @nextSteps ["api.items.products.get for product details", "api.items.brands.get for brand details"]
1731
- * @businessRules ["Shows active relationships only", "Respects product visibility", "Primary brand identification"]
1732
- * @functionalArea "product-catalog-management"
1733
- * @caching "Cache for 20 minutes, invalidate on relationship changes"
1734
- * @performance "Paginated results for brands with many products"
1735
- * @param brandUid Brand unique identifier
1736
- * @param params Optional filtering and pagination parameters
1737
- * @returns Array of brand-item relationships
1738
- * @throws ValidationError When parameters are invalid or response is malformed
1739
- * @example
1740
- * ```typescript
1741
- * const brandItems = await client.brandItems.list(123, { isPrimary: 'Y' });
1742
- * brandItems.data.forEach(item => {
1743
- * console.log(`${item.itemDesc} - Brand Part: ${item.brandPartNumber}`);
1744
- * });
1745
- * ```
1746
- */
1747
- list: async (brandUid, params) => {
1748
- return this.executeRequest({
1749
- method: 'GET',
1750
- path: '/brands/{id}/items',
1751
- paramsSchema: schemas_1.BrandItemListParamsSchema,
1752
- responseSchema: schemas_1.BrandItemListResponseSchema,
1753
- }, params, { id: String(brandUid) });
1754
- },
1755
- /**
1756
- * Get brand-item relationship details
1757
- * @description Retrieve details for a specific brand-item relationship
1758
- * @param brandUid Brand unique identifier
1759
- * @param brandItemUid Brand-item relationship unique identifier
1760
- * @returns Brand-item relationship details
1761
- * @throws ValidationError When response is malformed
1762
- * @example
1763
- * ```typescript
1764
- * const relationship = await client.brandItems.get(123, 456);
1765
- * console.log(relationship.data.brandPartNumber, relationship.data.brandItemDesc);
1766
- * ```
1767
- */
1768
- get: async (brandUid, brandItemUid) => {
1769
- return this.executeRequest({
1770
- method: 'GET',
1771
- path: '/brands/{brandId}/items/{itemId}',
1772
- responseSchema: schemas_1.BrandItemResponseSchema,
1773
- }, undefined, { brandId: String(brandUid), itemId: String(brandItemUid) });
1774
- },
1775
- /**
1776
- * Create brand-item relationship
1777
- * @description Create a new relationship between a brand and an item
1778
- * @param brandUid Brand unique identifier
1779
- * @param request Brand-item relationship creation data
1780
- * @returns Created relationship information
1781
- * @throws ValidationError When request is invalid or response is malformed
1782
- * @example
1783
- * ```typescript
1784
- * const relationship = await client.brandItems.create(123, {
1785
- * invMastUid: 12345,
1786
- * brandPartNumber: 'BRD-001',
1787
- * brandItemDesc: 'Brand-specific description',
1788
- * isPrimary: 'Y'
1789
- * });
1790
- * ```
1791
- */
1792
- create: async (brandUid, request) => {
1793
- return this.executeRequest({
1794
- method: 'POST',
1795
- path: '/brands/{id}/items',
1796
- paramsSchema: schemas_1.CreateBrandItemRequestSchema,
1797
- responseSchema: schemas_1.BrandItemResponseSchema,
1798
- }, request, { id: String(brandUid) });
1799
- },
1800
- /**
1801
- * Update brand-item relationship
1802
- * @description Update an existing brand-item relationship
1803
- * @param brandUid Brand unique identifier
1804
- * @param brandItemUid Brand-item relationship unique identifier
1805
- * @param request Update data
1806
- * @returns Updated relationship information
1807
- * @throws ValidationError When request is invalid or response is malformed
1808
- * @example
1809
- * ```typescript
1810
- * const updated = await client.brandItems.update(123, 456, {
1811
- * brandPartNumber: 'BRD-001-V2',
1812
- * brandItemDesc: 'Updated brand-specific description'
1813
- * });
1814
- * ```
1815
- */
1816
- update: async (brandUid, brandItemUid, request) => {
1817
- return this.executeRequest({
1818
- method: 'PUT',
1819
- path: '/brands/{brandId}/items/{itemId}',
1820
- paramsSchema: schemas_1.UpdateBrandItemRequestSchema,
1821
- responseSchema: schemas_1.BrandItemResponseSchema,
1822
- }, request, { brandId: String(brandUid), itemId: String(brandItemUid) });
1823
- },
1824
- /**
1825
- * Delete brand-item relationship
1826
- * @description Remove a relationship between a brand and an item
1827
- * @param brandUid Brand unique identifier
1828
- * @param brandItemUid Brand-item relationship unique identifier
1829
- * @returns Success response
1830
- * @throws ValidationError When response is malformed
1831
- * @example
1832
- * ```typescript
1833
- * await client.brandItems.delete(123, 456);
1834
- * ```
1835
- */
1836
- delete: async (brandUid, brandItemUid) => {
1837
- return this.executeRequest({
1838
- method: 'DELETE',
1839
- path: '/brands/{brandId}/items/{itemId}',
1840
- responseSchema: schemas_1.BrandItemResponseSchema,
1841
- }, undefined, { brandId: String(brandUid), itemId: String(brandItemUid) });
1842
- },
1843
- };
1844
- /**
1845
- * Brand-item relationship data-only endpoints
1846
- * @description Data-only methods that return just the data portion of brand-item responses
1847
- */
1848
- this.brandItemsData = {
1849
- /**
1850
- * List brand-item relationships data only
1851
- * @description Returns only the data portion of brand-item relationships response
1852
- * @param brandUid Brand unique identifier
1853
- * @param params Optional filtering and pagination parameters
1854
- * @returns Array of brand-item relationships data
1855
- */
1856
- list: async (brandUid, params) => {
1857
- const response = await this.brandItems.list(brandUid, params);
1858
- return response.data;
1859
- },
1860
- };
1861
2216
  /**
1862
2217
  * Product links management endpoints
1863
2218
  * @description Methods for managing relationships between products (accessories, related items, etc.)
@@ -1896,10 +2251,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1896
2251
  list: async (invMastUid, params) => {
1897
2252
  return this.executeRequest({
1898
2253
  method: 'GET',
1899
- path: '/inv-mast/{id}/links',
2254
+ path: '/inv-mast/{invMastUid}/links',
1900
2255
  paramsSchema: schemas_1.ProductLinkListParamsSchema,
1901
2256
  responseSchema: schemas_1.ProductLinkListResponseSchema,
1902
- }, params, { id: String(invMastUid) });
2257
+ }, params, { invMastUid: String(invMastUid) });
1903
2258
  },
1904
2259
  /**
1905
2260
  * Get product link details
@@ -1941,10 +2296,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
1941
2296
  create: async (invMastUid, request) => {
1942
2297
  return this.executeRequest({
1943
2298
  method: 'POST',
1944
- path: '/inv-mast/{id}/links',
2299
+ path: '/inv-mast/{invMastUid}/links',
1945
2300
  paramsSchema: schemas_1.CreateProductLinkRequestSchema,
1946
2301
  responseSchema: schemas_1.ProductLinkResponseSchema,
1947
- }, request, { id: String(invMastUid) });
2302
+ }, request, { invMastUid: String(invMastUid) });
1948
2303
  },
1949
2304
  /**
1950
2305
  * Update product link
@@ -2045,10 +2400,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2045
2400
  list: async (invMastUid, params) => {
2046
2401
  return this.executeRequest({
2047
2402
  method: 'GET',
2048
- path: '/inv-mast/{id}/subparts',
2403
+ path: '/inv-mast/{invMastUid}/subparts',
2049
2404
  paramsSchema: schemas_1.SubPartListParamsSchema,
2050
2405
  responseSchema: schemas_1.SubPartListResponseSchema,
2051
- }, params, { id: String(invMastUid) });
2406
+ }, params, { invMastUid: String(invMastUid) });
2052
2407
  },
2053
2408
  /**
2054
2409
  * Get sub-part details
@@ -2091,10 +2446,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2091
2446
  create: async (invMastUid, request) => {
2092
2447
  return this.executeRequest({
2093
2448
  method: 'POST',
2094
- path: '/inv-mast/{id}/subparts',
2449
+ path: '/inv-mast/{invMastUid}/subparts',
2095
2450
  paramsSchema: schemas_1.CreateSubPartRequestSchema,
2096
2451
  responseSchema: schemas_1.SubPartResponseSchema,
2097
- }, request, { id: String(invMastUid) });
2452
+ }, request, { invMastUid: String(invMastUid) });
2098
2453
  },
2099
2454
  /**
2100
2455
  * Update sub-part relationship
@@ -2168,62 +2523,61 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2168
2523
  */
2169
2524
  bins: {
2170
2525
  /**
2171
- * List location bins
2172
- * @description Retrieve bins for a specific location
2526
+ * List all items in bins at a location
2527
+ * @description OpenAPI: /locations/{locationId}/bins - "List all items in bins at a location"
2173
2528
  * @fullPath api.items.locations.bins.list
2174
2529
  * @service items
2175
2530
  * @domain inventory-management
2176
- * @dataMethod locationsData.bins.list
2177
- * @discoverable true
2178
- * @searchTerms ["bins", "warehouse bins", "location bins", "storage bins", "inventory locations"]
2179
- * @relatedEndpoints ["api.nexus.inventory.locations", "api.items.stock.getDetails"]
2180
- * @commonPatterns ["Warehouse management", "Inventory location tracking", "Bin organization"]
2181
- * @workflow ["inventory-management", "warehouse-operations"]
2182
- * @prerequisites ["Valid authentication token", "Warehouse access permissions"]
2183
- * @nextSteps ["api.items.bins.getInventory for stock levels", "api.nexus.inventory.movements for movements"]
2184
- * @businessRules ["Shows active bins only", "Location-specific access", "Capacity tracking"]
2185
- * @functionalArea "warehouse-and-inventory-management"
2186
- * @caching "Cache for 10 minutes, invalidate on bin changes"
2187
- * @performance "Paginated results for locations with many bins"
2188
2531
  * @param locationId Location unique identifier
2189
- * @param params Optional filtering and pagination parameters
2190
- * @returns Array of location bins
2191
- * @throws ValidationError When parameters are invalid or response is malformed
2532
+ * @param params Optional filtering parameters (excludeZero, bin filter, pagination)
2533
+ * @returns Array of inventory items in bins at the location
2192
2534
  * @example
2193
2535
  * ```typescript
2194
- * const bins = await client.locations.bins.list(123, { zone: 'A', isActive: 'Y' });
2195
- * bins.data.forEach(bin => {
2196
- * console.log(`${bin.bin} - ${bin.binDesc} (${bin.zone}-${bin.aisle}-${bin.shelf})`);
2536
+ * const items = await client.locations.bins.list(123);
2537
+ * items.data.forEach(item => {
2538
+ * console.log(`${item.bin}: ${item.itemId} (${item.qtyOnHand})`);
2197
2539
  * });
2198
2540
  * ```
2199
2541
  */
2200
2542
  list: async (locationId, params) => {
2201
2543
  return this.executeRequest({
2202
2544
  method: 'GET',
2203
- path: '/locations/{id}/bins',
2204
- paramsSchema: schemas_1.BinListParamsSchema,
2205
- responseSchema: schemas_1.BinListResponseSchema,
2206
- }, params, { id: String(locationId) });
2545
+ path: '/locations/{locationId}/bins',
2546
+ paramsSchema: schemas_1.LocationsBinsParamsSchema,
2547
+ responseSchema: schemas_1.LocationsBinsResponseSchema,
2548
+ }, params, { locationId: String(locationId) });
2207
2549
  },
2208
2550
  /**
2209
- * Get bin details
2210
- * @description Retrieve details for a specific bin
2211
- * @param locationId Location unique identifier
2212
- * @param bin Bin identifier
2213
- * @returns Bin details
2214
- * @throws ValidationError When response is malformed
2215
- * @example
2216
- * ```typescript
2217
- * const binDetails = await client.bins.get(123, 'A01-B02-S03');
2218
- * console.log(binDetails.data.binDesc, binDetails.data.maxCapacity);
2219
- * ```
2551
+ * Specific bin endpoints
2552
+ * @description Methods for accessing specific bins by identifier
2220
2553
  */
2221
- get: async (locationId, bin) => {
2222
- return this.executeRequest({
2223
- method: 'GET',
2224
- path: '/locations/{locationId}/bins/{bin}',
2225
- responseSchema: schemas_1.BinResponseSchema,
2226
- }, undefined, { locationId: String(locationId), bin });
2554
+ bin: {
2555
+ /**
2556
+ * List all items in a specific bin
2557
+ * @description OpenAPI: /locations/{locationId}/bins/{bin} - "List all items in a specific bin"
2558
+ * @fullPath api.items.locations.bins.bin.get
2559
+ * @service items
2560
+ * @domain inventory-management
2561
+ * @param locationId Location unique identifier
2562
+ * @param bin Bin identifier
2563
+ * @param params Optional filtering parameters (excludeZero, pagination)
2564
+ * @returns Array of inventory items in the specific bin
2565
+ * @example
2566
+ * ```typescript
2567
+ * const items = await client.locations.bins.bin.get(123, 'A-01');
2568
+ * items.data.forEach(item => {
2569
+ * console.log(`${item.itemId}: ${item.qtyOnHand}`);
2570
+ * });
2571
+ * ```
2572
+ */
2573
+ get: async (locationId, bin, params) => {
2574
+ return this.executeRequest({
2575
+ method: 'GET',
2576
+ path: '/locations/{locationId}/bins/{bin}',
2577
+ paramsSchema: schemas_1.LocationsBinsParamsSchema,
2578
+ responseSchema: schemas_1.LocationsBinsResponseSchema,
2579
+ }, params, { locationId: String(locationId), bin });
2580
+ },
2227
2581
  },
2228
2582
  /**
2229
2583
  * Create new bin
@@ -2248,10 +2602,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2248
2602
  create: async (locationId, request) => {
2249
2603
  return this.executeRequest({
2250
2604
  method: 'POST',
2251
- path: '/locations/{id}/bins',
2605
+ path: '/locations/{locationId}/bins',
2252
2606
  paramsSchema: schemas_1.CreateBinRequestSchema,
2253
2607
  responseSchema: schemas_1.BinResponseSchema,
2254
- }, request, { id: String(locationId) });
2608
+ }, request, { locationId: String(locationId) });
2255
2609
  },
2256
2610
  /**
2257
2611
  * Update bin
@@ -2316,8 +2670,8 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2316
2670
  return this.executeRequest({
2317
2671
  method: 'GET',
2318
2672
  path: '/inv-mast/{invMastId}/locations/{locationId}/bins',
2319
- paramsSchema: schemas_1.InventoryLocationBinListParamsSchema,
2320
- responseSchema: schemas_1.InventoryLocationBinListResponseSchema,
2673
+ paramsSchema: schemas_1.LocationsBinsParamsSchema,
2674
+ responseSchema: schemas_1.LocationsBinsResponseSchema,
2321
2675
  }, params, { invMastId: String(invMastUid), locationId: String(locationId) });
2322
2676
  },
2323
2677
  },
@@ -2355,6 +2709,40 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2355
2709
  const response = await this.locations.bins.getInventory(invMastUid, locationId, params);
2356
2710
  return response.data;
2357
2711
  },
2712
+ /**
2713
+ * Bin-specific data methods
2714
+ * @description Data-only methods for specific bin operations
2715
+ */
2716
+ bin: {
2717
+ /**
2718
+ * Get items in specific bin data only
2719
+ * @description Returns only the data portion of items in a specific bin
2720
+ *
2721
+ * @fullPath api.items.locations.bins.bin.get
2722
+ * @service items
2723
+ * @domain inventory
2724
+ * @dataMethod true
2725
+ * @discoverable true
2726
+ * @searchTerms ["specific bin items", "bin contents", "single bin inventory"]
2727
+ * @relatedEndpoints ["locations.bins.list"]
2728
+ * @commonPatterns ["show items in bin A-01", "what's in bin B-02"]
2729
+ *
2730
+ * @param locationId Location unique identifier
2731
+ * @param bin Bin identifier
2732
+ * @param params Optional filtering parameters
2733
+ * @returns Array of items in the specified bin
2734
+ *
2735
+ * @example
2736
+ * ```typescript
2737
+ * // Get items in specific bin
2738
+ * const items = await client.locationsData.bins.bin.get(100, 'A-01');
2739
+ * ```
2740
+ */
2741
+ get: async (locationId, bin, params) => {
2742
+ const response = await this.locations.bins.bin.get(locationId, bin, params);
2743
+ return response.data;
2744
+ },
2745
+ },
2358
2746
  },
2359
2747
  };
2360
2748
  /**
@@ -2702,157 +3090,6 @@ class ItemsClient extends base_client_1.BaseServiceClient {
2702
3090
  * Brand item associations
2703
3091
  * @description Methods for managing item associations within brands
2704
3092
  */
2705
- this.brandsItems = {
2706
- /**
2707
- * List items for a brand
2708
- * @description Retrieve all items associated with a brand
2709
- * @param brandsUid Brand unique identifier
2710
- * @param params Optional pagination parameters
2711
- * @returns Array of items for the brand
2712
- * @throws ValidationError When parameters are invalid or response is malformed
2713
- * @example
2714
- * ```typescript
2715
- * const brandItems = await client.brandsItems.list(123);
2716
- * brandItems.data.forEach(item => {
2717
- * console.log(`${item.itemId}: ${item.itemDesc}`);
2718
- * });
2719
- * ```
2720
- */
2721
- list: async (brandsUid, params) => {
2722
- return this.executeRequest({
2723
- method: 'GET',
2724
- path: '/brands/{brandsUid}/items',
2725
- paramsSchema: common_schemas_1.StandardPaginationParamsSchema,
2726
- responseSchema: schemas_1.ProductListResponseSchema,
2727
- }, params, { brandsUid: String(brandsUid) });
2728
- },
2729
- /**
2730
- * Add item to brand
2731
- * @description Associate an item with a brand
2732
- * @param brandsUid Brand unique identifier
2733
- * @param request Association data
2734
- * @returns Created association
2735
- * @throws ValidationError When request is invalid or response is malformed
2736
- * @example
2737
- * ```typescript
2738
- * const association = await client.brandsItems.create(123, {
2739
- * invMastUid: 456
2740
- * });
2741
- * ```
2742
- */
2743
- create: async (brandsUid, request) => {
2744
- return this.executeRequest({
2745
- method: 'POST',
2746
- path: '/brands/{brandsUid}/items',
2747
- paramsSchema: zod_1.z.object({
2748
- invMastUid: zod_1.z.number(),
2749
- }),
2750
- responseSchema: zod_1.z.object({
2751
- count: zod_1.z.number(),
2752
- data: zod_1.z.object({
2753
- brandsXItemsUid: zod_1.z.number(),
2754
- brandsUid: zod_1.z.number(),
2755
- invMastUid: zod_1.z.number(),
2756
- }),
2757
- message: zod_1.z.string(),
2758
- options: zod_1.z.any(),
2759
- params: zod_1.z.any(),
2760
- status: zod_1.z.number(),
2761
- total: zod_1.z.number(),
2762
- totalResults: zod_1.z.number(),
2763
- }),
2764
- }, request, { brandsUid: String(brandsUid) });
2765
- },
2766
- /**
2767
- * Get specific brand-item association
2768
- * @description Get details of a specific brand-item association
2769
- * @param brandsUid Brand unique identifier
2770
- * @param brandsXItemsUid Association unique identifier
2771
- * @returns Association details
2772
- * @throws ValidationError When response is malformed
2773
- * @example
2774
- * ```typescript
2775
- * const association = await client.brandItems.get(123, 789);
2776
- * console.log(association.data.invMastUid);
2777
- * ```
2778
- */
2779
- get: async (brandsUid, brandsXItemsUid) => {
2780
- return this.executeRequest({
2781
- method: 'GET',
2782
- path: '/brands/{brandsUid}/items/{brandsXItemsUid}',
2783
- responseSchema: zod_1.z.object({
2784
- count: zod_1.z.number(),
2785
- data: zod_1.z.object({
2786
- brandsXItemsUid: zod_1.z.number(),
2787
- brandsUid: zod_1.z.number(),
2788
- invMastUid: zod_1.z.number(),
2789
- }),
2790
- message: zod_1.z.string(),
2791
- options: zod_1.z.any(),
2792
- params: zod_1.z.any(),
2793
- status: zod_1.z.number(),
2794
- total: zod_1.z.number(),
2795
- totalResults: zod_1.z.number(),
2796
- }),
2797
- }, undefined, { brandsUid: String(brandsUid), brandsXItemsUid: String(brandsXItemsUid) });
2798
- },
2799
- /**
2800
- * Update brand-item association
2801
- * @description Update a brand-item association
2802
- * @param brandsUid Brand unique identifier
2803
- * @param brandsXItemsUid Association unique identifier
2804
- * @param request Update data
2805
- * @returns Updated association
2806
- * @throws ValidationError When request is invalid or response is malformed
2807
- * @example
2808
- * ```typescript
2809
- * const updated = await client.brandItems.update(123, 789, {
2810
- * invMastUid: 999
2811
- * });
2812
- * ```
2813
- */
2814
- update: async (brandsUid, brandsXItemsUid, request) => {
2815
- return this.executeRequest({
2816
- method: 'PUT',
2817
- path: '/brands/{brandsUid}/items/{brandsXItemsUid}',
2818
- paramsSchema: schemas_1.UpdateBrandItemRequestSchema,
2819
- responseSchema: zod_1.z.object({
2820
- count: zod_1.z.number(),
2821
- data: zod_1.z.object({
2822
- brandsXItemsUid: zod_1.z.number(),
2823
- brandsUid: zod_1.z.number(),
2824
- invMastUid: zod_1.z.number(),
2825
- }),
2826
- message: zod_1.z.string(),
2827
- options: zod_1.z.any(),
2828
- params: zod_1.z.any(),
2829
- status: zod_1.z.number(),
2830
- total: zod_1.z.number(),
2831
- totalResults: zod_1.z.number(),
2832
- }),
2833
- }, request, { brandsUid: String(brandsUid), brandsXItemsUid: String(brandsXItemsUid) });
2834
- },
2835
- /**
2836
- * Remove item from brand
2837
- * @description Remove an item association from a brand
2838
- * @param brandsUid Brand unique identifier
2839
- * @param brandsXItemsUid Association unique identifier
2840
- * @returns Success indication
2841
- * @throws ValidationError When response is malformed
2842
- * @example
2843
- * ```typescript
2844
- * await client.brandItems.delete(123, 789);
2845
- * ```
2846
- */
2847
- delete: async (brandsUid, brandsXItemsUid) => {
2848
- await this.executeRequest({
2849
- method: 'DELETE',
2850
- path: '/brands/{brandsUid}/items/{brandsXItemsUid}',
2851
- responseSchema: zod_1.z.undefined(),
2852
- }, undefined, { brandsUid: String(brandsUid), brandsXItemsUid: String(brandsXItemsUid) });
2853
- return true;
2854
- },
2855
- };
2856
3093
  /**
2857
3094
  * Additional missing endpoints
2858
3095
  * @description Methods for endpoints that were missing from the implementation
@@ -3239,7 +3476,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3239
3476
  * console.log(invMast.data.itemId, invMast.data.itemDesc, invMast.data.listPrice);
3240
3477
  * ```
3241
3478
  */
3242
- get: this.createGetMethod('/inv-mast/{id}', schemas_1.ProductResponseSchema),
3479
+ get: this.createGetMethod('/inv-mast/{invMastUid}', schemas_1.ProductResponseSchema),
3243
3480
  /**
3244
3481
  * List inventory masters with filtering and pagination
3245
3482
  * @description Retrieve a paginated list of inventory masters with comprehensive filtering options
@@ -3342,7 +3579,7 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3342
3579
  get: async (invMastUid, params) => {
3343
3580
  return this.executeRequest({
3344
3581
  method: 'GET',
3345
- path: '/inv-mast/{id}/doc',
3582
+ path: '/inv-mast/{invMastUid}/doc',
3346
3583
  paramsSchema: zod_1.z
3347
3584
  .object({
3348
3585
  includePricing: zod_1.z.string().optional(),
@@ -3350,13 +3587,13 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3350
3587
  })
3351
3588
  .optional(),
3352
3589
  responseSchema: schemas_1.ProductResponseSchema,
3353
- }, params, { id: String(invMastUid) });
3590
+ }, params, { invMastUid: String(invMastUid) });
3354
3591
  },
3355
3592
  },
3356
3593
  /**
3357
3594
  * Get similar inventory masters
3358
3595
  * @description Retrieve similar inventory masters to the specified one
3359
- * @fullPath api.items.invMast.similar.get
3596
+ * @fullPath api.items.invMast.similar.list
3360
3597
  * @service items
3361
3598
  * @domain inventory-management
3362
3599
  * @discoverable true
@@ -3366,22 +3603,22 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3366
3603
  * @throws ValidationError When response is malformed
3367
3604
  * @example
3368
3605
  * ```typescript
3369
- * const similar = await client.invMast.similar.get(12345);
3606
+ * const similar = await client.invMast.similar.list(12345);
3370
3607
  * ```
3371
3608
  */
3372
3609
  similar: {
3373
- get: async (invMastUid) => {
3610
+ list: async (invMastUid) => {
3374
3611
  return this.executeRequest({
3375
3612
  method: 'GET',
3376
- path: '/inv-mast/{id}/similar',
3613
+ path: '/inv-mast/{invMastUid}/similar',
3377
3614
  responseSchema: schemas_1.ProductListResponseSchema,
3378
- }, undefined, { id: String(invMastUid) });
3615
+ }, undefined, { invMastUid: String(invMastUid) });
3379
3616
  },
3380
3617
  },
3381
3618
  /**
3382
3619
  * Get inventory master alternate codes
3383
3620
  * @description Retrieve alternate codes for a specific inventory master
3384
- * @fullPath api.items.invMast.alternateCode.get
3621
+ * @fullPath api.items.invMast.alternateCode.list
3385
3622
  * @service items
3386
3623
  * @domain inventory-management
3387
3624
  * @discoverable true
@@ -3391,34 +3628,23 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3391
3628
  * @throws ValidationError When response is malformed
3392
3629
  * @example
3393
3630
  * ```typescript
3394
- * const altCodes = await client.invMast.alternateCode.get(12345);
3631
+ * const altCodes = await client.invMast.alternateCode.list(12345);
3395
3632
  * ```
3396
3633
  */
3397
3634
  alternateCode: {
3398
- get: async (invMastUid) => {
3635
+ list: async (invMastUid, params) => {
3399
3636
  return this.executeRequest({
3400
3637
  method: 'GET',
3401
- path: '/inv-mast/{id}/alternate-code',
3402
- responseSchema: zod_1.z.object({
3403
- count: zod_1.z.number(),
3404
- data: zod_1.z.array(zod_1.z.object({
3405
- alternateCode: zod_1.z.string(),
3406
- codeType: zod_1.z.string().optional(),
3407
- })),
3408
- message: zod_1.z.string(),
3409
- options: zod_1.z.any(),
3410
- params: zod_1.z.any(),
3411
- status: zod_1.z.number(),
3412
- total: zod_1.z.number(),
3413
- totalResults: zod_1.z.number(),
3414
- }),
3415
- }, undefined, { id: String(invMastUid) });
3638
+ path: '/inv-mast/{invMastUid}/alternate-code',
3639
+ paramsSchema: schemas_1.AlternateCodeListParamsSchema,
3640
+ responseSchema: schemas_1.AlternateCodeListResponseSchema,
3641
+ }, params, { invMastUid: String(invMastUid) });
3416
3642
  },
3417
3643
  },
3418
3644
  /**
3419
3645
  * Get inventory master accessories
3420
3646
  * @description Retrieve accessories for a specific inventory master
3421
- * @fullPath api.items.invMast.invAccessory.get
3647
+ * @fullPath api.items.invMast.invAccessory.list
3422
3648
  * @service items
3423
3649
  * @domain inventory-management
3424
3650
  * @discoverable true
@@ -3428,22 +3654,22 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3428
3654
  * @throws ValidationError When response is malformed
3429
3655
  * @example
3430
3656
  * ```typescript
3431
- * const accessories = await client.invMast.invAccessory.get(12345);
3657
+ * const accessories = await client.invMast.invAccessory.list(12345);
3432
3658
  * ```
3433
3659
  */
3434
3660
  invAccessory: {
3435
- get: async (invMastUid) => {
3661
+ list: async (invMastUid) => {
3436
3662
  return this.executeRequest({
3437
3663
  method: 'GET',
3438
- path: '/inv-mast/{id}/inv-accessory',
3664
+ path: '/inv-mast/{invMastUid}/inv-accessory',
3439
3665
  responseSchema: schemas_1.AccessoryListResponseSchema,
3440
- }, undefined, { id: String(invMastUid) });
3666
+ }, undefined, { invMastUid: String(invMastUid) });
3441
3667
  },
3442
3668
  },
3443
3669
  /**
3444
3670
  * Get inventory master sub-items
3445
3671
  * @description Retrieve sub-items for a specific inventory master
3446
- * @fullPath api.items.invMast.invSub.get
3672
+ * @fullPath api.items.invMast.invSub.list
3447
3673
  * @service items
3448
3674
  * @domain inventory-management
3449
3675
  * @discoverable true
@@ -3453,16 +3679,16 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3453
3679
  * @throws ValidationError When response is malformed
3454
3680
  * @example
3455
3681
  * ```typescript
3456
- * const subItems = await client.invMast.invSub.get(12345);
3682
+ * const subItems = await client.invMast.invSub.list(12345);
3457
3683
  * ```
3458
3684
  */
3459
3685
  invSub: {
3460
- get: async (invMastUid) => {
3686
+ list: async (invMastUid) => {
3461
3687
  return this.executeRequest({
3462
3688
  method: 'GET',
3463
- path: '/inv-mast/{id}/inv-sub',
3689
+ path: '/inv-mast/{invMastUid}/inv-sub',
3464
3690
  responseSchema: schemas_1.ProductListResponseSchema,
3465
- }, undefined, { id: String(invMastUid) });
3691
+ }, undefined, { invMastUid: String(invMastUid) });
3466
3692
  },
3467
3693
  },
3468
3694
  /**
@@ -3486,10 +3712,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3486
3712
  get: async (invMastUid, params) => {
3487
3713
  return this.executeRequest({
3488
3714
  method: 'GET',
3489
- path: '/inv-mast/{id}/stock',
3715
+ path: '/inv-mast/{invMastUid}/stock',
3490
3716
  paramsSchema: schemas_1.GetStockParamsSchema,
3491
3717
  responseSchema: schemas_1.GetStockResponseSchema,
3492
- }, params, { id: String(invMastUid) });
3718
+ }, params, { invMastUid: String(invMastUid) });
3493
3719
  },
3494
3720
  },
3495
3721
  /**
@@ -3507,10 +3733,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3507
3733
  list: async (invMastUid, params) => {
3508
3734
  return this.executeRequest({
3509
3735
  method: 'GET',
3510
- path: '/inv-mast/{id}/faq',
3736
+ path: '/inv-mast/{invMastUid}/faq',
3511
3737
  paramsSchema: schemas_1.ItemFaqListParamsSchema,
3512
3738
  responseSchema: schemas_1.ItemFaqListResponseSchema,
3513
- }, params, { id: String(invMastUid) });
3739
+ }, params, { invMastUid: String(invMastUid) });
3514
3740
  },
3515
3741
  /**
3516
3742
  * Create FAQ for an inventory master
@@ -3522,10 +3748,10 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3522
3748
  create: async (invMastUid, request) => {
3523
3749
  return this.executeRequest({
3524
3750
  method: 'POST',
3525
- path: '/inv-mast/{id}/faq',
3751
+ path: '/inv-mast/{invMastUid}/faq',
3526
3752
  paramsSchema: schemas_1.CreateItemFaqRequestSchema,
3527
3753
  responseSchema: schemas_1.ItemFaqResponseSchema,
3528
- }, request, { id: String(invMastUid) });
3754
+ }, request, { invMastUid: String(invMastUid) });
3529
3755
  },
3530
3756
  /**
3531
3757
  * Get specific FAQ for an inventory master
@@ -3832,6 +4058,335 @@ class ItemsClient extends base_client_1.BaseServiceClient {
3832
4058
  },
3833
4059
  },
3834
4060
  };
4061
+ /**
4062
+ * Inventory Master Links - Direct OpenAPI Path Mirror
4063
+ * @description New OpenAPI endpoint for listing document links for an item
4064
+ *
4065
+ * **CRITICAL: This endpoint follows OpenAPI Path Mirroring Pattern**
4066
+ * OpenAPI Path: /inv-mast-links/{invMastUid} → api.items.invMastLinks.list()
4067
+ */
4068
+ this.invMastLinks = {
4069
+ /**
4070
+ * List document links for an inventory master item
4071
+ *
4072
+ * @fullPath api.items.invMastLinks.list
4073
+ * @service items
4074
+ * @domain inventory-management
4075
+ * @dataMethod listData - returns only the links array without metadata
4076
+ * @discoverable true
4077
+ * @searchTerms ["inventory links", "item documents", "product links", "inv mast links", "document links"]
4078
+ * @relatedEndpoints ["api.items.productLinks.list", "api.items.invMast.get", "api.legacy.invMastTags.list"]
4079
+ * @commonPatterns ["Get item documentation links", "Find product documents", "Document management"]
4080
+ * @workflow ["inventory-management", "document-management", "product-information"]
4081
+ * @prerequisites ["Valid authentication token", "Inventory access permissions"]
4082
+ * @nextSteps ["api.items.invMast.get for item details", "api.legacy.invMastTags for additional metadata"]
4083
+ * @businessRules ["Returns active document links only", "Ordered by link type and display order"]
4084
+ * @functionalArea "inventory-master-management"
4085
+ * @caching "Cache for 10 minutes, invalidate on item changes"
4086
+ * @performance "Fast lookup by inventory master UID"
4087
+ *
4088
+ * @param invMastUid Inventory master unique identifier
4089
+ * @returns Promise<InvMastLinksResponse> Complete response with document links array and metadata
4090
+ *
4091
+ * @example
4092
+ * ```typescript
4093
+ * // Get all document links for an item
4094
+ * const response = await api.items.invMastLinks.list(12345);
4095
+ * console.log(response.data); // ProductLink[]
4096
+ *
4097
+ * // Get just the data
4098
+ * const links = await api.items.invMastLinks.listData(12345);
4099
+ * ```
4100
+ */
4101
+ list: async (invMastUid) => {
4102
+ return this.executeRequest({
4103
+ method: 'GET',
4104
+ path: '/inv-mast-links/{invMastUid}',
4105
+ responseSchema: schemas_1.InvMastLinksResponseSchema,
4106
+ }, undefined, { invMastUid: String(invMastUid) });
4107
+ },
4108
+ /**
4109
+ * List document links data only
4110
+ * @description Returns only the links array without BaseResponse wrapper
4111
+ * @param invMastUid Inventory master unique identifier
4112
+ * @returns Promise<ProductLink[]> Links array only
4113
+ */
4114
+ listData: async (invMastUid) => {
4115
+ const response = await this.invMastLinks.list(invMastUid);
4116
+ return response.data;
4117
+ },
4118
+ };
4119
+ /**
4120
+ * Inventory Master Sub Parts - Direct OpenAPI Path Mirror
4121
+ * @description New OpenAPI endpoint for listing sub parts for an item
4122
+ *
4123
+ * **CRITICAL: This endpoint follows OpenAPI Path Mirroring Pattern**
4124
+ * OpenAPI Path: /inv-mast-sub-parts/{invMastUid} → api.items.invMastSubParts.list()
4125
+ */
4126
+ this.invMastSubParts = {
4127
+ /**
4128
+ * List sub parts for an inventory master item
4129
+ *
4130
+ * @fullPath api.items.invMastSubParts.list
4131
+ * @service items
4132
+ * @domain inventory-management
4133
+ * @dataMethod listData - returns only the sub parts array without metadata
4134
+ * @discoverable true
4135
+ * @searchTerms ["inventory sub parts", "item subparts", "product parts", "inv mast subparts", "component parts"]
4136
+ * @relatedEndpoints ["api.items.subparts.list", "api.items.invMast.get", "api.items.invMastLinks.list"]
4137
+ * @commonPatterns ["Get item sub parts", "Find product components", "Parts management"]
4138
+ * @workflow ["inventory-management", "parts-management", "product-assembly"]
4139
+ * @prerequisites ["Valid authentication token", "Inventory access permissions"]
4140
+ * @nextSteps ["api.items.invMast.get for part details", "api.items.subparts.get for specific subpart info"]
4141
+ * @businessRules ["Returns active sub parts only", "Optional filtering by links", "Ordered by display sequence"]
4142
+ * @functionalArea "inventory-master-management"
4143
+ * @caching "Cache for 15 minutes, invalidate on parts changes"
4144
+ * @performance "Supports optional filtering by inv mast links UID"
4145
+ *
4146
+ * @param invMastUid Inventory master unique identifier
4147
+ * @param params Optional filtering parameters
4148
+ * @returns Promise<InvMastSubPartsResponse> Complete response with sub parts array and metadata
4149
+ *
4150
+ * @example
4151
+ * ```typescript
4152
+ * // Get all sub parts for an item
4153
+ * const response = await api.items.invMastSubParts.list(12345);
4154
+ * console.log(response.data); // Subpart[]
4155
+ *
4156
+ * // Filter by specific link
4157
+ * const filtered = await api.items.invMastSubParts.list(12345, { invMastLinksUid: 67890 });
4158
+ *
4159
+ * // Get just the data
4160
+ * const parts = await api.items.invMastSubParts.listData(12345);
4161
+ * ```
4162
+ */
4163
+ list: async (invMastUid, params) => {
4164
+ return this.executeRequest({
4165
+ method: 'GET',
4166
+ path: '/inv-mast-sub-parts/{invMastUid}',
4167
+ paramsSchema: schemas_1.InvMastSubPartsParamsSchema,
4168
+ responseSchema: schemas_1.InvMastSubPartsResponseSchema,
4169
+ }, params, { invMastUid: String(invMastUid) });
4170
+ },
4171
+ /**
4172
+ * List sub parts data only
4173
+ * @description Returns only the sub parts array without BaseResponse wrapper
4174
+ * @param invMastUid Inventory master unique identifier
4175
+ * @param params Optional filtering parameters
4176
+ * @returns Promise<Subpart[]> Sub parts array only
4177
+ */
4178
+ listData: async (invMastUid, params) => {
4179
+ const response = await this.invMastSubParts.list(invMastUid, params);
4180
+ return response.data;
4181
+ },
4182
+ };
4183
+ /**
4184
+ * User Favorites (User-based) - Direct OpenAPI Path Mirror
4185
+ * @description New OpenAPI endpoints for user-specific item favorites
4186
+ *
4187
+ * **CRITICAL: This endpoint follows OpenAPI Path Mirroring Pattern**
4188
+ * OpenAPI Paths:
4189
+ * - /item-favorites/{usersId} → api.items.itemFavorites.list()
4190
+ * - /item-favorites/{usersId}/{invMastUid} → api.items.itemFavorites.get/create/delete()
4191
+ */
4192
+ this.itemFavorites = {
4193
+ /**
4194
+ * List favorites for a specific user
4195
+ *
4196
+ * @fullPath api.items.itemFavorites.list
4197
+ * @service items
4198
+ * @domain user-management
4199
+ * @dataMethod listData - returns only the favorites array without metadata
4200
+ * @discoverable true
4201
+ * @searchTerms ["user favorites", "item favorites", "user wishlist", "favorite products", "bookmarked items"]
4202
+ * @relatedEndpoints ["api.items.favorites.list", "api.joomla.users.get", "api.items.itemWishlist.list"]
4203
+ * @commonPatterns ["Get user's favorite items", "User preference management", "Personalized catalogs"]
4204
+ * @workflow ["user-experience", "personalization", "catalog-management"]
4205
+ * @prerequisites ["Valid authentication token", "User access permissions"]
4206
+ * @nextSteps ["api.items.invMast.get for item details", "api.items.itemFavorites.create to add favorites"]
4207
+ * @businessRules ["User can only see their own favorites", "Returns active favorites only"]
4208
+ * @functionalArea "user-and-account-management"
4209
+ * @caching "Cache for 5 minutes per user, invalidate on user changes"
4210
+ * @performance "Indexed by user ID for fast retrieval"
4211
+ *
4212
+ * @param usersId User unique identifier
4213
+ * @returns Promise<ItemFavoritesListResponse> Complete response with user favorites array and metadata
4214
+ *
4215
+ * @example
4216
+ * ```typescript
4217
+ * // Get all favorites for a user
4218
+ * const response = await api.items.itemFavorites.list(123);
4219
+ * console.log(response.data); // ItemFavorite[]
4220
+ *
4221
+ * // Get just the data
4222
+ * const favorites = await api.items.itemFavorites.listData(123);
4223
+ * ```
4224
+ */
4225
+ list: async (usersId) => {
4226
+ return this.executeRequest({
4227
+ method: 'GET',
4228
+ path: '/item-favorites/{usersId}',
4229
+ responseSchema: schemas_1.ItemFavoritesListResponseSchema,
4230
+ }, undefined, { usersId: String(usersId) });
4231
+ },
4232
+ /**
4233
+ * Create a favorite item for a user
4234
+ *
4235
+ * @fullPath api.items.itemFavorites.create
4236
+ * @service items
4237
+ * @domain user-management
4238
+ * @dataMethod N/A - creation operation
4239
+ * @discoverable true
4240
+ * @searchTerms ["add favorite", "bookmark item", "save favorite", "user preferences"]
4241
+ * @relatedEndpoints ["api.items.itemFavorites.list", "api.items.itemFavorites.delete"]
4242
+ * @commonPatterns ["Add item to favorites", "Bookmark product", "User preference setting"]
4243
+ * @workflow ["user-experience", "personalization"]
4244
+ * @prerequisites ["Valid authentication token", "User must own the favorites"]
4245
+ * @nextSteps ["api.items.itemFavorites.list to view updated favorites"]
4246
+ * @businessRules ["Users can only manage their own favorites", "Prevents duplicate favorites"]
4247
+ * @functionalArea "user-and-account-management"
4248
+ * @performance "Fast creation with duplicate prevention"
4249
+ *
4250
+ * @param usersId User unique identifier
4251
+ * @returns Promise<ItemFavoritesItemResponse> Complete response with created favorite and metadata
4252
+ *
4253
+ * @example
4254
+ * ```typescript
4255
+ * // Add item to user's favorites
4256
+ * const response = await api.items.itemFavorites.create(123);
4257
+ * console.log(response.data); // ItemFavorite
4258
+ * ```
4259
+ */
4260
+ create: async (usersId) => {
4261
+ return this.executeRequest({
4262
+ method: 'POST',
4263
+ path: '/item-favorites/{usersId}',
4264
+ responseSchema: schemas_1.ItemFavoritesItemResponseSchema,
4265
+ }, undefined, { usersId: String(usersId) });
4266
+ },
4267
+ /**
4268
+ * Get specific favorite item for a user
4269
+ *
4270
+ * @fullPath api.items.itemFavorites.get
4271
+ * @service items
4272
+ * @domain user-management
4273
+ * @dataMethod getData - returns only the favorite data without metadata
4274
+ * @discoverable true
4275
+ * @searchTerms ["get favorite", "check favorite", "favorite status", "user item preference"]
4276
+ * @relatedEndpoints ["api.items.itemFavorites.list", "api.items.invMast.get"]
4277
+ * @commonPatterns ["Check if item is favorited", "Get favorite details"]
4278
+ * @workflow ["user-experience", "personalization"]
4279
+ * @prerequisites ["Valid authentication token", "User access permissions"]
4280
+ * @nextSteps ["api.items.invMast.get for full item details"]
4281
+ * @businessRules ["Users can only see their own favorites", "Returns 404 if not favorited"]
4282
+ * @functionalArea "user-and-account-management"
4283
+ * @performance "Direct lookup by user and item IDs"
4284
+ *
4285
+ * @param usersId User unique identifier
4286
+ * @param invMastUid Inventory master unique identifier
4287
+ * @returns Promise<ItemFavoritesItemResponse> Complete response with favorite details and metadata
4288
+ *
4289
+ * @example
4290
+ * ```typescript
4291
+ * // Check if user has favorited specific item
4292
+ * const response = await api.items.itemFavorites.get(123, 12345);
4293
+ * console.log(response.data); // ItemFavorite or null
4294
+ *
4295
+ * // Get just the data
4296
+ * const favorite = await api.items.itemFavorites.getData(123, 12345);
4297
+ * ```
4298
+ */
4299
+ get: async (usersId, invMastUid) => {
4300
+ return this.executeRequest({
4301
+ method: 'GET',
4302
+ path: '/item-favorites/{usersId}/{invMastUid}',
4303
+ responseSchema: schemas_1.ItemFavoritesItemResponseSchema,
4304
+ }, undefined, { usersId: String(usersId), invMastUid: String(invMastUid) });
4305
+ },
4306
+ /**
4307
+ * Delete specific favorite item for a user
4308
+ *
4309
+ * @fullPath api.items.itemFavorites.delete
4310
+ * @service items
4311
+ * @domain user-management
4312
+ * @dataMethod N/A - deletion operation
4313
+ * @discoverable true
4314
+ * @searchTerms ["remove favorite", "delete favorite", "unfavorite", "remove bookmark"]
4315
+ * @relatedEndpoints ["api.items.itemFavorites.list", "api.items.itemFavorites.create"]
4316
+ * @commonPatterns ["Remove from favorites", "Unfavorite item", "User preference removal"]
4317
+ * @workflow ["user-experience", "personalization"]
4318
+ * @prerequisites ["Valid authentication token", "User must own the favorite"]
4319
+ * @nextSteps ["api.items.itemFavorites.list to view updated favorites"]
4320
+ * @businessRules ["Users can only delete their own favorites", "Idempotent operation"]
4321
+ * @functionalArea "user-and-account-management"
4322
+ * @performance "Fast deletion with proper cleanup"
4323
+ *
4324
+ * @param usersId User unique identifier
4325
+ * @param invMastUid Inventory master unique identifier
4326
+ * @returns Promise<UserFavoriteResponse> Complete response confirming deletion
4327
+ *
4328
+ * @example
4329
+ * ```typescript
4330
+ * // Remove item from user's favorites
4331
+ * const response = await api.items.itemFavorites.delete(123, 12345);
4332
+ * console.log(response.success); // true
4333
+ * ```
4334
+ */
4335
+ delete: async (usersId, invMastUid) => {
4336
+ return this.executeRequest({
4337
+ method: 'DELETE',
4338
+ path: '/item-favorites/{usersId}/{invMastUid}',
4339
+ responseSchema: schemas_1.ItemFavoritesItemResponseSchema,
4340
+ }, undefined, { usersId: String(usersId), invMastUid: String(invMastUid) });
4341
+ },
4342
+ /**
4343
+ * Update specific favorite item for a user
4344
+ *
4345
+ * @fullPath api.items.itemFavorites.update
4346
+ * @service items
4347
+ * @domain user-management
4348
+ * @dataMethod N/A - update operation
4349
+ * @discoverable true
4350
+ * @searchTerms ["update favorite", "modify favorite", "favorite metadata", "user preference update"]
4351
+ * @relatedEndpoints ["api.items.itemFavorites.get", "api.items.itemFavorites.list"]
4352
+ * @commonPatterns ["Update favorite details", "Modify user preference"]
4353
+ * @workflow ["user-experience", "personalization"]
4354
+ * @prerequisites ["Valid authentication token", "User must own the favorite", "Favorite must exist"]
4355
+ * @nextSteps ["api.items.itemFavorites.get to verify changes"]
4356
+ * @businessRules ["Users can only update their own favorites", "Maintains favorite relationship"]
4357
+ * @functionalArea "user-and-account-management"
4358
+ * @performance "Direct update by user and item IDs"
4359
+ *
4360
+ * @param usersId User unique identifier
4361
+ * @param invMastUid Inventory master unique identifier
4362
+ * @returns Promise<ItemFavoritesItemResponse> Complete response with updated favorite and metadata
4363
+ *
4364
+ * @example
4365
+ * ```typescript
4366
+ * // Update user's favorite item metadata
4367
+ * const response = await api.items.itemFavorites.update(123, 12345);
4368
+ * console.log(response.data); // Updated ItemFavorite
4369
+ * ```
4370
+ */
4371
+ update: async (usersId, invMastUid) => {
4372
+ return this.executeRequest({
4373
+ method: 'PUT',
4374
+ path: '/item-favorites/{usersId}/{invMastUid}',
4375
+ responseSchema: schemas_1.ItemFavoritesItemResponseSchema,
4376
+ }, undefined, { usersId: String(usersId), invMastUid: String(invMastUid) });
4377
+ },
4378
+ /**
4379
+ * Data-only methods for item favorites
4380
+ */
4381
+ listData: async (usersId) => {
4382
+ const response = await this.itemFavorites.list(usersId);
4383
+ return response.data;
4384
+ },
4385
+ getData: async (usersId, invMastUid) => {
4386
+ const response = await this.itemFavorites.get(usersId, invMastUid);
4387
+ return response.data;
4388
+ },
4389
+ };
3835
4390
  }
3836
4391
  }
3837
4392
  exports.ItemsClient = ItemsClient;