sfcc-dev-mcp 1.0.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 (497) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +338 -0
  3. package/dist/best-practices-client.d.ts +55 -0
  4. package/dist/best-practices-client.d.ts.map +1 -0
  5. package/dist/best-practices-client.js +201 -0
  6. package/dist/best-practices-client.js.map +1 -0
  7. package/dist/cache.d.ts +105 -0
  8. package/dist/cache.d.ts.map +1 -0
  9. package/dist/cache.js +225 -0
  10. package/dist/cache.js.map +1 -0
  11. package/dist/config.d.ts +26 -0
  12. package/dist/config.d.ts.map +1 -0
  13. package/dist/config.js +67 -0
  14. package/dist/config.js.map +1 -0
  15. package/dist/docs-client.d.ts +124 -0
  16. package/dist/docs-client.d.ts.map +1 -0
  17. package/dist/docs-client.js +442 -0
  18. package/dist/docs-client.js.map +1 -0
  19. package/dist/index.d.ts +18 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +18 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/log-client.d.ts +79 -0
  24. package/dist/log-client.d.ts.map +1 -0
  25. package/dist/log-client.js +226 -0
  26. package/dist/log-client.js.map +1 -0
  27. package/dist/main.d.ts +15 -0
  28. package/dist/main.d.ts.map +1 -0
  29. package/dist/main.js +110 -0
  30. package/dist/main.js.map +1 -0
  31. package/dist/server.d.ts +35 -0
  32. package/dist/server.d.ts.map +1 -0
  33. package/dist/server.js +539 -0
  34. package/dist/server.js.map +1 -0
  35. package/dist/types.d.ts +79 -0
  36. package/dist/types.d.ts.map +1 -0
  37. package/dist/types.js +8 -0
  38. package/dist/types.js.map +1 -0
  39. package/dist/utils.d.ts +46 -0
  40. package/dist/utils.d.ts.map +1 -0
  41. package/dist/utils.js +96 -0
  42. package/dist/utils.js.map +1 -0
  43. package/docs/TopLevel/APIException.md +68 -0
  44. package/docs/TopLevel/Array.md +897 -0
  45. package/docs/TopLevel/ArrayBuffer.md +79 -0
  46. package/docs/TopLevel/BigInt.md +132 -0
  47. package/docs/TopLevel/Boolean.md +62 -0
  48. package/docs/TopLevel/ConversionError.md +23 -0
  49. package/docs/TopLevel/DataView.md +352 -0
  50. package/docs/TopLevel/Date.md +924 -0
  51. package/docs/TopLevel/ES6Iterator.md +33 -0
  52. package/docs/TopLevel/Error.md +88 -0
  53. package/docs/TopLevel/EvalError.md +23 -0
  54. package/docs/TopLevel/Fault.md +87 -0
  55. package/docs/TopLevel/Float32Array.md +124 -0
  56. package/docs/TopLevel/Float64Array.md +124 -0
  57. package/docs/TopLevel/Function.md +105 -0
  58. package/docs/TopLevel/Generator.md +78 -0
  59. package/docs/TopLevel/IOError.md +62 -0
  60. package/docs/TopLevel/Int16Array.md +124 -0
  61. package/docs/TopLevel/Int32Array.md +124 -0
  62. package/docs/TopLevel/Int8Array.md +124 -0
  63. package/docs/TopLevel/InternalError.md +23 -0
  64. package/docs/TopLevel/Iterable.md +41 -0
  65. package/docs/TopLevel/Iterator.md +48 -0
  66. package/docs/TopLevel/JSON.md +162 -0
  67. package/docs/TopLevel/Map.md +216 -0
  68. package/docs/TopLevel/Math.md +865 -0
  69. package/docs/TopLevel/Module.md +45 -0
  70. package/docs/TopLevel/Namespace.md +96 -0
  71. package/docs/TopLevel/Number.md +375 -0
  72. package/docs/TopLevel/Object.md +641 -0
  73. package/docs/TopLevel/QName.md +96 -0
  74. package/docs/TopLevel/RangeError.md +23 -0
  75. package/docs/TopLevel/ReferenceError.md +23 -0
  76. package/docs/TopLevel/RegExp.md +109 -0
  77. package/docs/TopLevel/Set.md +165 -0
  78. package/docs/TopLevel/StopIteration.md +20 -0
  79. package/docs/TopLevel/String.md +1299 -0
  80. package/docs/TopLevel/Symbol.md +78 -0
  81. package/docs/TopLevel/SyntaxError.md +23 -0
  82. package/docs/TopLevel/SystemError.md +62 -0
  83. package/docs/TopLevel/TypeError.md +23 -0
  84. package/docs/TopLevel/URIError.md +23 -0
  85. package/docs/TopLevel/Uint16Array.md +124 -0
  86. package/docs/TopLevel/Uint32Array.md +124 -0
  87. package/docs/TopLevel/Uint8Array.md +124 -0
  88. package/docs/TopLevel/Uint8ClampedArray.md +124 -0
  89. package/docs/TopLevel/WeakMap.md +137 -0
  90. package/docs/TopLevel/WeakSet.md +92 -0
  91. package/docs/TopLevel/XML.md +937 -0
  92. package/docs/TopLevel/XMLList.md +484 -0
  93. package/docs/TopLevel/XMLStreamError.md +74 -0
  94. package/docs/TopLevel/arguments.md +34 -0
  95. package/docs/TopLevel/global.md +462 -0
  96. package/docs/best-practices/ocapi_hooks.md +295 -0
  97. package/docs/best-practices/scapi_custom_endpoint.md +176 -0
  98. package/docs/best-practices/scapi_hooks.md +295 -0
  99. package/docs/best-practices/sfra_controllers.md +190 -0
  100. package/docs/dw_campaign/ABTest.md +47 -0
  101. package/docs/dw_campaign/ABTestMgr.md +70 -0
  102. package/docs/dw_campaign/ABTestSegment.md +96 -0
  103. package/docs/dw_campaign/AmountDiscount.md +51 -0
  104. package/docs/dw_campaign/ApproachingDiscount.md +124 -0
  105. package/docs/dw_campaign/BonusChoiceDiscount.md +146 -0
  106. package/docs/dw_campaign/BonusDiscount.md +48 -0
  107. package/docs/dw_campaign/Campaign.md +365 -0
  108. package/docs/dw_campaign/CampaignMgr.md +395 -0
  109. package/docs/dw_campaign/CampaignStatusCodes.md +24 -0
  110. package/docs/dw_campaign/Coupon.md +292 -0
  111. package/docs/dw_campaign/CouponMgr.md +138 -0
  112. package/docs/dw_campaign/CouponRedemption.md +94 -0
  113. package/docs/dw_campaign/CouponStatusCodes.md +20 -0
  114. package/docs/dw_campaign/Discount.md +160 -0
  115. package/docs/dw_campaign/DiscountPlan.md +282 -0
  116. package/docs/dw_campaign/FixedPriceDiscount.md +52 -0
  117. package/docs/dw_campaign/FixedPriceShippingDiscount.md +52 -0
  118. package/docs/dw_campaign/FreeDiscount.md +17 -0
  119. package/docs/dw_campaign/FreeShippingDiscount.md +17 -0
  120. package/docs/dw_campaign/PercentageDiscount.md +52 -0
  121. package/docs/dw_campaign/PercentageOptionDiscount.md +48 -0
  122. package/docs/dw_campaign/PriceBookPriceDiscount.md +47 -0
  123. package/docs/dw_campaign/Promotion.md +826 -0
  124. package/docs/dw_campaign/PromotionMgr.md +386 -0
  125. package/docs/dw_campaign/PromotionPlan.md +318 -0
  126. package/docs/dw_campaign/SlotContent.md +144 -0
  127. package/docs/dw_campaign/SourceCodeGroup.md +72 -0
  128. package/docs/dw_campaign/SourceCodeInfo.md +126 -0
  129. package/docs/dw_campaign/SourceCodeStatusCodes.md +24 -0
  130. package/docs/dw_campaign/TotalFixedPriceDiscount.md +47 -0
  131. package/docs/dw_catalog/Catalog.md +122 -0
  132. package/docs/dw_catalog/CatalogMgr.md +182 -0
  133. package/docs/dw_catalog/Category.md +1296 -0
  134. package/docs/dw_catalog/CategoryAssignment.md +192 -0
  135. package/docs/dw_catalog/CategoryLink.md +96 -0
  136. package/docs/dw_catalog/PriceBook.md +242 -0
  137. package/docs/dw_catalog/PriceBookMgr.md +205 -0
  138. package/docs/dw_catalog/Product.md +2593 -0
  139. package/docs/dw_catalog/ProductActiveData.md +1275 -0
  140. package/docs/dw_catalog/ProductAttributeModel.md +277 -0
  141. package/docs/dw_catalog/ProductAvailabilityLevels.md +142 -0
  142. package/docs/dw_catalog/ProductAvailabilityModel.md +356 -0
  143. package/docs/dw_catalog/ProductInventoryList.md +140 -0
  144. package/docs/dw_catalog/ProductInventoryMgr.md +99 -0
  145. package/docs/dw_catalog/ProductInventoryRecord.md +563 -0
  146. package/docs/dw_catalog/ProductLink.md +96 -0
  147. package/docs/dw_catalog/ProductMgr.md +138 -0
  148. package/docs/dw_catalog/ProductOption.md +214 -0
  149. package/docs/dw_catalog/ProductOptionModel.md +246 -0
  150. package/docs/dw_catalog/ProductOptionValue.md +123 -0
  151. package/docs/dw_catalog/ProductPriceInfo.md +172 -0
  152. package/docs/dw_catalog/ProductPriceModel.md +745 -0
  153. package/docs/dw_catalog/ProductPriceTable.md +134 -0
  154. package/docs/dw_catalog/ProductSearchHit.md +545 -0
  155. package/docs/dw_catalog/ProductSearchModel.md +1912 -0
  156. package/docs/dw_catalog/ProductSearchRefinementDefinition.md +97 -0
  157. package/docs/dw_catalog/ProductSearchRefinementValue.md +73 -0
  158. package/docs/dw_catalog/ProductSearchRefinements.md +216 -0
  159. package/docs/dw_catalog/ProductVariationAttribute.md +100 -0
  160. package/docs/dw_catalog/ProductVariationAttributeValue.md +238 -0
  161. package/docs/dw_catalog/ProductVariationModel.md +849 -0
  162. package/docs/dw_catalog/Recommendation.md +296 -0
  163. package/docs/dw_catalog/SearchModel.md +877 -0
  164. package/docs/dw_catalog/SearchRefinementDefinition.md +146 -0
  165. package/docs/dw_catalog/SearchRefinementValue.md +185 -0
  166. package/docs/dw_catalog/SearchRefinements.md +156 -0
  167. package/docs/dw_catalog/SortingOption.md +120 -0
  168. package/docs/dw_catalog/SortingRule.md +47 -0
  169. package/docs/dw_catalog/Store.md +562 -0
  170. package/docs/dw_catalog/StoreGroup.md +96 -0
  171. package/docs/dw_catalog/StoreInventoryFilter.md +74 -0
  172. package/docs/dw_catalog/StoreInventoryFilterValue.md +74 -0
  173. package/docs/dw_catalog/StoreMgr.md +236 -0
  174. package/docs/dw_catalog/Variant.md +859 -0
  175. package/docs/dw_catalog/VariationGroup.md +792 -0
  176. package/docs/dw_content/Content.md +534 -0
  177. package/docs/dw_content/ContentMgr.md +160 -0
  178. package/docs/dw_content/ContentSearchModel.md +670 -0
  179. package/docs/dw_content/ContentSearchRefinementDefinition.md +49 -0
  180. package/docs/dw_content/ContentSearchRefinementValue.md +17 -0
  181. package/docs/dw_content/ContentSearchRefinements.md +208 -0
  182. package/docs/dw_content/Folder.md +467 -0
  183. package/docs/dw_content/Library.md +121 -0
  184. package/docs/dw_content/MarkupText.md +88 -0
  185. package/docs/dw_content/MediaFile.md +317 -0
  186. package/docs/dw_crypto/CertificateRef.md +42 -0
  187. package/docs/dw_crypto/Cipher.md +524 -0
  188. package/docs/dw_crypto/Encoding.md +220 -0
  189. package/docs/dw_crypto/JWE.md +182 -0
  190. package/docs/dw_crypto/JWS.md +264 -0
  191. package/docs/dw_crypto/JWSHeader.md +148 -0
  192. package/docs/dw_crypto/KeyRef.md +44 -0
  193. package/docs/dw_crypto/Mac.md +109 -0
  194. package/docs/dw_crypto/MessageDigest.md +139 -0
  195. package/docs/dw_crypto/SecureRandom.md +148 -0
  196. package/docs/dw_crypto/Signature.md +246 -0
  197. package/docs/dw_crypto/WeakCipher.md +532 -0
  198. package/docs/dw_crypto/WeakMac.md +109 -0
  199. package/docs/dw_crypto/WeakMessageDigest.md +139 -0
  200. package/docs/dw_crypto/WeakSignature.md +242 -0
  201. package/docs/dw_customer/AddressBook.md +163 -0
  202. package/docs/dw_customer/AgentUserMgr.md +83 -0
  203. package/docs/dw_customer/AgentUserStatusCodes.md +24 -0
  204. package/docs/dw_customer/AuthenticationStatus.md +96 -0
  205. package/docs/dw_customer/Credentials.md +494 -0
  206. package/docs/dw_customer/Customer.md +571 -0
  207. package/docs/dw_customer/CustomerActiveData.md +552 -0
  208. package/docs/dw_customer/CustomerAddress.md +852 -0
  209. package/docs/dw_customer/CustomerCDPData.md +70 -0
  210. package/docs/dw_customer/CustomerContextMgr.md +64 -0
  211. package/docs/dw_customer/CustomerGroup.md +134 -0
  212. package/docs/dw_customer/CustomerList.md +71 -0
  213. package/docs/dw_customer/CustomerMgr.md +735 -0
  214. package/docs/dw_customer/CustomerPasswordConstraints.md +142 -0
  215. package/docs/dw_customer/CustomerPaymentInstrument.md +125 -0
  216. package/docs/dw_customer/CustomerStatusCodes.md +24 -0
  217. package/docs/dw_customer/EncryptedObject.md +18 -0
  218. package/docs/dw_customer/ExternalProfile.md +160 -0
  219. package/docs/dw_customer/OrderHistory.md +111 -0
  220. package/docs/dw_customer/ProductList.md +952 -0
  221. package/docs/dw_customer/ProductListItem.md +492 -0
  222. package/docs/dw_customer/ProductListItemPurchase.md +145 -0
  223. package/docs/dw_customer/ProductListMgr.md +234 -0
  224. package/docs/dw_customer/ProductListRegistrant.md +193 -0
  225. package/docs/dw_customer/Profile.md +1128 -0
  226. package/docs/dw_customer/Wallet.md +118 -0
  227. package/docs/dw_extensions.applepay/ApplePayHookResult.md +161 -0
  228. package/docs/dw_extensions.applepay/ApplePayHooks.md +255 -0
  229. package/docs/dw_extensions.facebook/FacebookFeedHooks.md +47 -0
  230. package/docs/dw_extensions.facebook/FacebookProduct.md +1483 -0
  231. package/docs/dw_extensions.paymentrequest/PaymentRequestHookResult.md +159 -0
  232. package/docs/dw_extensions.paymentrequest/PaymentRequestHooks.md +160 -0
  233. package/docs/dw_extensions.payments/SalesforceBancontactPaymentDetails.md +79 -0
  234. package/docs/dw_extensions.payments/SalesforceCardPaymentDetails.md +103 -0
  235. package/docs/dw_extensions.payments/SalesforceEpsPaymentDetails.md +51 -0
  236. package/docs/dw_extensions.payments/SalesforceIdealPaymentDetails.md +51 -0
  237. package/docs/dw_extensions.payments/SalesforceKlarnaPaymentDetails.md +51 -0
  238. package/docs/dw_extensions.payments/SalesforcePayPalOrder.md +234 -0
  239. package/docs/dw_extensions.payments/SalesforcePayPalOrderAddress.md +191 -0
  240. package/docs/dw_extensions.payments/SalesforcePayPalOrderPayer.md +118 -0
  241. package/docs/dw_extensions.payments/SalesforcePayPalPaymentDetails.md +79 -0
  242. package/docs/dw_extensions.payments/SalesforcePaymentDetails.md +57 -0
  243. package/docs/dw_extensions.payments/SalesforcePaymentIntent.md +269 -0
  244. package/docs/dw_extensions.payments/SalesforcePaymentMethod.md +304 -0
  245. package/docs/dw_extensions.payments/SalesforcePaymentRequest.md +622 -0
  246. package/docs/dw_extensions.payments/SalesforcePaymentsHooks.md +45 -0
  247. package/docs/dw_extensions.payments/SalesforcePaymentsMgr.md +592 -0
  248. package/docs/dw_extensions.payments/SalesforcePaymentsSiteConfiguration.md +95 -0
  249. package/docs/dw_extensions.payments/SalesforceSepaDebitPaymentDetails.md +51 -0
  250. package/docs/dw_extensions.payments/SalesforceVenmoPaymentDetails.md +79 -0
  251. package/docs/dw_extensions.pinterest/PinterestAvailability.md +86 -0
  252. package/docs/dw_extensions.pinterest/PinterestFeedHooks.md +69 -0
  253. package/docs/dw_extensions.pinterest/PinterestOrder.md +172 -0
  254. package/docs/dw_extensions.pinterest/PinterestOrderHooks.md +45 -0
  255. package/docs/dw_extensions.pinterest/PinterestProduct.md +814 -0
  256. package/docs/dw_io/CSVStreamReader.md +80 -0
  257. package/docs/dw_io/CSVStreamWriter.md +60 -0
  258. package/docs/dw_io/File.md +554 -0
  259. package/docs/dw_io/FileReader.md +41 -0
  260. package/docs/dw_io/FileWriter.md +103 -0
  261. package/docs/dw_io/InputStream.md +34 -0
  262. package/docs/dw_io/OutputStream.md +34 -0
  263. package/docs/dw_io/PrintWriter.md +71 -0
  264. package/docs/dw_io/RandomAccessFileReader.md +167 -0
  265. package/docs/dw_io/Reader.md +274 -0
  266. package/docs/dw_io/StringWriter.md +81 -0
  267. package/docs/dw_io/Writer.md +92 -0
  268. package/docs/dw_io/XMLIndentingStreamWriter.md +112 -0
  269. package/docs/dw_io/XMLStreamConstants.md +24 -0
  270. package/docs/dw_io/XMLStreamReader.md +1043 -0
  271. package/docs/dw_io/XMLStreamWriter.md +572 -0
  272. package/docs/dw_net/FTPClient.md +675 -0
  273. package/docs/dw_net/FTPFileInfo.md +122 -0
  274. package/docs/dw_net/HTTPClient.md +769 -0
  275. package/docs/dw_net/HTTPRequestPart.md +206 -0
  276. package/docs/dw_net/Mail.md +431 -0
  277. package/docs/dw_net/SFTPClient.md +579 -0
  278. package/docs/dw_net/SFTPFileInfo.md +122 -0
  279. package/docs/dw_net/WebDAVClient.md +667 -0
  280. package/docs/dw_net/WebDAVFileInfo.md +184 -0
  281. package/docs/dw_object/ActiveData.md +75 -0
  282. package/docs/dw_object/CustomAttributes.md +16 -0
  283. package/docs/dw_object/CustomObject.md +73 -0
  284. package/docs/dw_object/CustomObjectMgr.md +291 -0
  285. package/docs/dw_object/Extensible.md +64 -0
  286. package/docs/dw_object/ExtensibleObject.md +68 -0
  287. package/docs/dw_object/Note.md +121 -0
  288. package/docs/dw_object/ObjectAttributeDefinition.md +373 -0
  289. package/docs/dw_object/ObjectAttributeGroup.md +170 -0
  290. package/docs/dw_object/ObjectAttributeValueDefinition.md +72 -0
  291. package/docs/dw_object/ObjectTypeDefinition.md +216 -0
  292. package/docs/dw_object/PersistentObject.md +94 -0
  293. package/docs/dw_object/SimpleExtensible.md +46 -0
  294. package/docs/dw_object/SystemObjectMgr.md +153 -0
  295. package/docs/dw_order/AbstractItem.md +244 -0
  296. package/docs/dw_order/AbstractItemCtnr.md +240 -0
  297. package/docs/dw_order/Appeasement.md +325 -0
  298. package/docs/dw_order/AppeasementItem.md +90 -0
  299. package/docs/dw_order/Basket.md +362 -0
  300. package/docs/dw_order/BasketMgr.md +402 -0
  301. package/docs/dw_order/BonusDiscountLineItem.md +248 -0
  302. package/docs/dw_order/CouponLineItem.md +272 -0
  303. package/docs/dw_order/CreateAgentBasketLimitExceededException.md +18 -0
  304. package/docs/dw_order/CreateBasketFromOrderException.md +26 -0
  305. package/docs/dw_order/CreateCouponLineItemException.md +26 -0
  306. package/docs/dw_order/CreateOrderException.md +18 -0
  307. package/docs/dw_order/CreateTemporaryBasketLimitExceededException.md +18 -0
  308. package/docs/dw_order/GiftCertificate.md +545 -0
  309. package/docs/dw_order/GiftCertificateLineItem.md +324 -0
  310. package/docs/dw_order/GiftCertificateMgr.md +161 -0
  311. package/docs/dw_order/GiftCertificateStatusCodes.md +24 -0
  312. package/docs/dw_order/Invoice.md +316 -0
  313. package/docs/dw_order/InvoiceItem.md +222 -0
  314. package/docs/dw_order/LineItem.md +532 -0
  315. package/docs/dw_order/LineItemCtnr.md +2317 -0
  316. package/docs/dw_order/Order.md +2441 -0
  317. package/docs/dw_order/OrderAddress.md +807 -0
  318. package/docs/dw_order/OrderItem.md +476 -0
  319. package/docs/dw_order/OrderMgr.md +535 -0
  320. package/docs/dw_order/OrderPaymentInstrument.md +220 -0
  321. package/docs/dw_order/OrderProcessStatusCodes.md +24 -0
  322. package/docs/dw_order/PaymentCard.md +217 -0
  323. package/docs/dw_order/PaymentInstrument.md +1414 -0
  324. package/docs/dw_order/PaymentMethod.md +242 -0
  325. package/docs/dw_order/PaymentMgr.md +117 -0
  326. package/docs/dw_order/PaymentProcessor.md +70 -0
  327. package/docs/dw_order/PaymentStatusCodes.md +24 -0
  328. package/docs/dw_order/PaymentTransaction.md +304 -0
  329. package/docs/dw_order/PriceAdjustment.md +640 -0
  330. package/docs/dw_order/PriceAdjustmentLimitTypes.md +20 -0
  331. package/docs/dw_order/ProductLineItem.md +1821 -0
  332. package/docs/dw_order/ProductShippingCost.md +96 -0
  333. package/docs/dw_order/ProductShippingLineItem.md +320 -0
  334. package/docs/dw_order/ProductShippingModel.md +125 -0
  335. package/docs/dw_order/Return.md +318 -0
  336. package/docs/dw_order/ReturnCase.md +340 -0
  337. package/docs/dw_order/ReturnCaseItem.md +343 -0
  338. package/docs/dw_order/ReturnItem.md +362 -0
  339. package/docs/dw_order/Shipment.md +1227 -0
  340. package/docs/dw_order/ShipmentShippingCost.md +46 -0
  341. package/docs/dw_order/ShipmentShippingModel.md +146 -0
  342. package/docs/dw_order/ShippingLineItem.md +272 -0
  343. package/docs/dw_order/ShippingLocation.md +366 -0
  344. package/docs/dw_order/ShippingMethod.md +266 -0
  345. package/docs/dw_order/ShippingMgr.md +158 -0
  346. package/docs/dw_order/ShippingOrder.md +507 -0
  347. package/docs/dw_order/ShippingOrderItem.md +331 -0
  348. package/docs/dw_order/SumItem.md +147 -0
  349. package/docs/dw_order/TaxGroup.md +143 -0
  350. package/docs/dw_order/TaxItem.md +74 -0
  351. package/docs/dw_order/TaxMgr.md +215 -0
  352. package/docs/dw_order/TrackingInfo.md +312 -0
  353. package/docs/dw_order/TrackingRef.md +113 -0
  354. package/docs/dw_order.hooks/CalculateHooks.md +77 -0
  355. package/docs/dw_order.hooks/OrderHooks.md +41 -0
  356. package/docs/dw_order.hooks/PaymentHooks.md +180 -0
  357. package/docs/dw_order.hooks/ReturnHooks.md +135 -0
  358. package/docs/dw_order.hooks/ShippingOrderHooks.md +245 -0
  359. package/docs/dw_rpc/SOAPUtil.md +333 -0
  360. package/docs/dw_rpc/Stub.md +259 -0
  361. package/docs/dw_rpc/WebReference.md +83 -0
  362. package/docs/dw_suggest/BrandSuggestions.md +17 -0
  363. package/docs/dw_suggest/CategorySuggestions.md +53 -0
  364. package/docs/dw_suggest/ContentSuggestions.md +53 -0
  365. package/docs/dw_suggest/CustomSuggestions.md +17 -0
  366. package/docs/dw_suggest/ProductSuggestions.md +53 -0
  367. package/docs/dw_suggest/SearchPhraseSuggestions.md +117 -0
  368. package/docs/dw_suggest/SuggestModel.md +397 -0
  369. package/docs/dw_suggest/SuggestedCategory.md +46 -0
  370. package/docs/dw_suggest/SuggestedContent.md +46 -0
  371. package/docs/dw_suggest/SuggestedPhrase.md +70 -0
  372. package/docs/dw_suggest/SuggestedProduct.md +47 -0
  373. package/docs/dw_suggest/SuggestedTerm.md +143 -0
  374. package/docs/dw_suggest/SuggestedTerms.md +132 -0
  375. package/docs/dw_suggest/Suggestions.md +179 -0
  376. package/docs/dw_svc/FTPService.md +118 -0
  377. package/docs/dw_svc/FTPServiceDefinition.md +69 -0
  378. package/docs/dw_svc/HTTPFormService.md +18 -0
  379. package/docs/dw_svc/HTTPFormServiceDefinition.md +18 -0
  380. package/docs/dw_svc/HTTPService.md +415 -0
  381. package/docs/dw_svc/HTTPServiceDefinition.md +303 -0
  382. package/docs/dw_svc/LocalServiceRegistry.md +43 -0
  383. package/docs/dw_svc/Result.md +255 -0
  384. package/docs/dw_svc/SOAPService.md +115 -0
  385. package/docs/dw_svc/SOAPServiceDefinition.md +17 -0
  386. package/docs/dw_svc/Service.md +295 -0
  387. package/docs/dw_svc/ServiceCallback.md +268 -0
  388. package/docs/dw_svc/ServiceConfig.md +120 -0
  389. package/docs/dw_svc/ServiceCredential.md +150 -0
  390. package/docs/dw_svc/ServiceDefinition.md +176 -0
  391. package/docs/dw_svc/ServiceProfile.md +168 -0
  392. package/docs/dw_svc/ServiceRegistry.md +109 -0
  393. package/docs/dw_system/AgentUserStatusCodes.md +21 -0
  394. package/docs/dw_system/Cache.md +102 -0
  395. package/docs/dw_system/CacheMgr.md +42 -0
  396. package/docs/dw_system/HookMgr.md +66 -0
  397. package/docs/dw_system/InternalObject.md +56 -0
  398. package/docs/dw_system/JobProcessMonitor.md +124 -0
  399. package/docs/dw_system/Log.md +237 -0
  400. package/docs/dw_system/LogNDC.md +88 -0
  401. package/docs/dw_system/Logger.md +263 -0
  402. package/docs/dw_system/OrganizationPreferences.md +18 -0
  403. package/docs/dw_system/Pipeline.md +73 -0
  404. package/docs/dw_system/PipelineDictionary.md +16 -0
  405. package/docs/dw_system/RESTErrorResponse.md +66 -0
  406. package/docs/dw_system/RESTResponseMgr.md +258 -0
  407. package/docs/dw_system/RESTSuccessResponse.md +39 -0
  408. package/docs/dw_system/RemoteInclude.md +74 -0
  409. package/docs/dw_system/Request.md +839 -0
  410. package/docs/dw_system/RequestHooks.md +59 -0
  411. package/docs/dw_system/Response.md +318 -0
  412. package/docs/dw_system/SearchStatus.md +91 -0
  413. package/docs/dw_system/Session.md +476 -0
  414. package/docs/dw_system/Site.md +567 -0
  415. package/docs/dw_system/SitePreferences.md +49 -0
  416. package/docs/dw_system/Status.md +273 -0
  417. package/docs/dw_system/StatusItem.md +273 -0
  418. package/docs/dw_system/System.md +182 -0
  419. package/docs/dw_system/Transaction.md +84 -0
  420. package/docs/dw_util/ArrayList.md +50 -0
  421. package/docs/dw_util/Assert.md +391 -0
  422. package/docs/dw_util/BigInteger.md +326 -0
  423. package/docs/dw_util/Bytes.md +246 -0
  424. package/docs/dw_util/Calendar.md +663 -0
  425. package/docs/dw_util/Collection.md +338 -0
  426. package/docs/dw_util/Currency.md +163 -0
  427. package/docs/dw_util/DateUtils.md +86 -0
  428. package/docs/dw_util/Decimal.md +438 -0
  429. package/docs/dw_util/FilteringCollection.md +87 -0
  430. package/docs/dw_util/Geolocation.md +271 -0
  431. package/docs/dw_util/HashMap.md +43 -0
  432. package/docs/dw_util/HashSet.md +46 -0
  433. package/docs/dw_util/Iterator.md +97 -0
  434. package/docs/dw_util/LinkedHashMap.md +43 -0
  435. package/docs/dw_util/LinkedHashSet.md +46 -0
  436. package/docs/dw_util/List.md +519 -0
  437. package/docs/dw_util/Locale.md +267 -0
  438. package/docs/dw_util/Map.md +313 -0
  439. package/docs/dw_util/MapEntry.md +70 -0
  440. package/docs/dw_util/MappingKey.md +76 -0
  441. package/docs/dw_util/MappingMgr.md +122 -0
  442. package/docs/dw_util/PropertyComparator.md +51 -0
  443. package/docs/dw_util/SecureEncoder.md +350 -0
  444. package/docs/dw_util/SecureFilter.md +350 -0
  445. package/docs/dw_util/SeekableIterator.md +176 -0
  446. package/docs/dw_util/Set.md +19 -0
  447. package/docs/dw_util/SortedMap.md +148 -0
  448. package/docs/dw_util/SortedSet.md +151 -0
  449. package/docs/dw_util/StringUtils.md +717 -0
  450. package/docs/dw_util/Template.md +88 -0
  451. package/docs/dw_util/UUIDUtils.md +38 -0
  452. package/docs/dw_value/EnumValue.md +92 -0
  453. package/docs/dw_value/MimeEncodedText.md +103 -0
  454. package/docs/dw_value/Money.md +604 -0
  455. package/docs/dw_value/Quantity.md +376 -0
  456. package/docs/dw_web/CSRFProtection.md +83 -0
  457. package/docs/dw_web/ClickStream.md +157 -0
  458. package/docs/dw_web/ClickStreamEntry.md +289 -0
  459. package/docs/dw_web/Cookie.md +390 -0
  460. package/docs/dw_web/Cookies.md +46 -0
  461. package/docs/dw_web/Form.md +74 -0
  462. package/docs/dw_web/FormAction.md +199 -0
  463. package/docs/dw_web/FormElement.md +220 -0
  464. package/docs/dw_web/FormElementValidationResult.md +157 -0
  465. package/docs/dw_web/FormField.md +603 -0
  466. package/docs/dw_web/FormFieldOption.md +238 -0
  467. package/docs/dw_web/FormFieldOptions.md +42 -0
  468. package/docs/dw_web/FormGroup.md +199 -0
  469. package/docs/dw_web/FormList.md +126 -0
  470. package/docs/dw_web/FormListItem.md +48 -0
  471. package/docs/dw_web/Forms.md +16 -0
  472. package/docs/dw_web/HttpParameter.md +513 -0
  473. package/docs/dw_web/HttpParameterMap.md +185 -0
  474. package/docs/dw_web/LoopIterator.md +261 -0
  475. package/docs/dw_web/PageMetaData.md +230 -0
  476. package/docs/dw_web/PageMetaTag.md +142 -0
  477. package/docs/dw_web/PagingModel.md +365 -0
  478. package/docs/dw_web/Resource.md +126 -0
  479. package/docs/dw_web/URL.md +213 -0
  480. package/docs/dw_web/URLAction.md +26 -0
  481. package/docs/dw_web/URLParameter.md +22 -0
  482. package/docs/dw_web/URLRedirect.md +71 -0
  483. package/docs/dw_web/URLRedirectMgr.md +73 -0
  484. package/docs/dw_web/URLUtils.md +1246 -0
  485. package/package.json +43 -0
  486. package/scripts/convert-docs.js +617 -0
  487. package/src/best-practices-client.ts +243 -0
  488. package/src/cache.ts +291 -0
  489. package/src/config.ts +77 -0
  490. package/src/docs-client.ts +540 -0
  491. package/src/index.ts +22 -0
  492. package/src/log-client.ts +260 -0
  493. package/src/main.ts +133 -0
  494. package/src/server.ts +614 -0
  495. package/src/types.ts +83 -0
  496. package/src/utils.ts +103 -0
  497. package/tsconfig.json +21 -0
@@ -0,0 +1,1912 @@
1
+ ## Package: dw.catalog
2
+
3
+ # Class ProductSearchModel
4
+
5
+ ## Inheritance Hierarchy
6
+
7
+ - Object
8
+ - dw.catalog.SearchModel
9
+ - dw.catalog.ProductSearchModel
10
+
11
+ ## Description
12
+
13
+ The class is the central interface to a product search result and a product search refinement. It also provides utility methods to generate a search URL.
14
+
15
+ ## Constants
16
+
17
+ ## Properties
18
+
19
+ ### category
20
+
21
+ **Type:** Category (Read Only)
22
+
23
+ The category object for the category id specified in the query.
24
+ If a category with that id doesn't exist or if the category is offline
25
+ this method returns null.
26
+
27
+ ### categoryID
28
+
29
+ **Type:** String
30
+
31
+ The category id that was specified in the search query.
32
+
33
+ ### categorySearch
34
+
35
+ **Type:** boolean (Read Only)
36
+
37
+ The method returns true, if this is a pure search for a category. The
38
+ method checks, that a category ID is specified and no search phrase is
39
+ specified.
40
+
41
+ ### deepestCommonCategory
42
+
43
+ **Type:** Category (Read Only)
44
+
45
+ The deepest common category of all products in the search result.
46
+ In case of an empty search result the method returns the root category.
47
+
48
+ ### effectiveSortingRule
49
+
50
+ **Type:** SortingRule (Read Only)
51
+
52
+ The sorting rule used to order the products in the results of this query,
53
+ or null if no search has been executed yet.
54
+
55
+ In contrast to getSortingRule(), this method respects explicit sorting rules and sorting options and rules determined implicitly
56
+ based on the refinement category, keyword sorting rule assignment, etc.
57
+
58
+ ### inventoryIDs
59
+
60
+ **Type:** List (Read Only)
61
+
62
+ Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main
63
+ services agreement and provided as-is. If you are not part of the pilot/beta program, the API will throw an
64
+ exception. Contact your customer success representative for more information.
65
+
66
+ Returns a list of inventory IDs that were specified in the search query or an empty list if no inventory ID set.
67
+
68
+ ### orderableProductsOnly
69
+
70
+ **Type:** boolean
71
+
72
+ Get the flag indicating whether unorderable products should be excluded
73
+ when the next call to getProducts() is made. If this value has not been
74
+ previously set, then the value returned will be based on the value of the
75
+ search preference.
76
+
77
+ ### pageMetaTags
78
+
79
+ **Type:** Array (Read Only)
80
+
81
+ All page meta tags, defined for this instance for which content can be generated.
82
+
83
+ The meta tag content is generated based on the product listing page meta tag context and rules.
84
+ The rules are obtained from the current category context or inherited from the parent category,
85
+ up to the root category.
86
+
87
+ ### personalizedSort
88
+
89
+ **Type:** boolean (Read Only)
90
+
91
+ The method indicates if the search result is ordered by a personalized sorting rule.
92
+
93
+ ### priceMax
94
+
95
+ **Type:** Number
96
+
97
+ The maximum price by which the search result is refined.
98
+
99
+ ### priceMin
100
+
101
+ **Type:** Number
102
+
103
+ The minimum price by which the search result is refined.
104
+
105
+ ### productID
106
+
107
+ **Type:** String
108
+
109
+ The product id that was specified in the search query.
110
+
111
+ ### productIDs
112
+
113
+ **Type:** List
114
+
115
+ A list of product IDs that were specified in the search query or an empty list if no product ID set.
116
+
117
+ ### products
118
+
119
+ **Type:** Iterator (Read Only)
120
+
121
+ All products in the search result.
122
+ Note that products that were removed or went offline since the last index
123
+ update are not included in the returned set.
124
+
125
+ ### productSearchHits
126
+
127
+ **Type:** Iterator (Read Only)
128
+
129
+ The product search hits in the search result.
130
+ Note that method does also return search hits representing products that
131
+ were removed or went offline since the last index update, i.e. you must
132
+ implement appropriate checks before accessing the product related to the
133
+ search hit instance (see ProductSearchHit.getProduct())
134
+
135
+ ### promotionID
136
+
137
+ **Type:** String
138
+
139
+ The promotion id that was specified in the search query or null if no promotion id set. If multiple
140
+ promotion id's specified the method returns only the first id. See setPromotionIDs(List) and
141
+ getPromotionIDs().
142
+
143
+ ### promotionIDs
144
+
145
+ **Type:** List
146
+
147
+ A list of promotion id's that were specified in the search query or an empty list if no promotion id set.
148
+
149
+ ### promotionProductType
150
+
151
+ **Type:** String
152
+
153
+ The promotion product type specified in the search query.
154
+
155
+ ### recursiveCategorySearch
156
+
157
+ **Type:** boolean
158
+
159
+ Get the flag that determines if the category search will
160
+ be recursive.
161
+
162
+ ### refinedByCategory
163
+
164
+ **Type:** boolean (Read Only)
165
+
166
+ The method returns true, if the search is refined by a category.
167
+ The method checks, that a category ID is specified.
168
+
169
+ ### refinedByPrice
170
+
171
+ **Type:** boolean (Read Only)
172
+
173
+ Identifies if this search has been refined by price.
174
+
175
+ ### refinedByPromotion
176
+
177
+ **Type:** boolean (Read Only)
178
+
179
+ Identifies if this search has been refined by promotion.
180
+
181
+ ### refinedCategorySearch
182
+
183
+ **Type:** boolean (Read Only)
184
+
185
+ Identifies if this is a category search and is refined with further
186
+ criteria, like a brand refinement or an attribute refinement.
187
+
188
+ ### refinementCategory
189
+
190
+ **Type:** Category
191
+
192
+ The category used to determine possible refinements for the search.
193
+ If an explicit category was set for this purpose using setRefinementCategory(Category), it is returned.
194
+ Otherwise, the deepest common category of all search results will be returned.
195
+
196
+ ### refinements
197
+
198
+ **Type:** ProductSearchRefinements (Read Only)
199
+
200
+ The ProductSearchRefinements associated with this search and filtered by session currency.
201
+ If an explicit category was set for this purpose using setRefinementCategory(Category), it will be used to determine the refinements.
202
+ Otherwise, the refinements are determined based on the deepest common category of all products in the search result.
203
+ Hint: If you want to use the same refinements for all searches, consider defining them in one category (usually root) and using setRefinementCategory(Category) to avoid unnecessary calculation of the deepest common category.
204
+
205
+ ### searchableImageUploadURL
206
+
207
+ **Type:** String (Read Only)
208
+
209
+ This method returns the URL of the endpoint where the merchants should upload their image for visual search.
210
+
211
+ ### searchPhraseSuggestions
212
+
213
+ **Type:** SearchPhraseSuggestions (Read Only)
214
+
215
+ Returns search phrase suggestions for the current search phrase.
216
+ Search phrase suggestions may contain alternative search phrases as well
217
+ as lists of corrected and completed search terms.
218
+
219
+ ### sortingRule
220
+
221
+ **Type:** SortingRule
222
+
223
+ The sorting rule explicitly set on this model to be used
224
+ to order the products in the results of this query, or null
225
+ if no rule has been explicitly set.
226
+
227
+ This method does not return the sorting rule that will be used implicitly
228
+ based on the context of the search, such as the refinement category.
229
+
230
+ ### storeInventoryFilter
231
+
232
+ **Type:** StoreInventoryFilter
233
+
234
+ Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main
235
+ services agreement and provided as-is. If you are not part of the pilot/beta program, the API will throw an
236
+ exception. Contact your customer success representative for more information.
237
+
238
+ Returns the StoreInventoryFilter, which was specified for this search.
239
+
240
+ ### suggestedSearchPhrase
241
+
242
+ **Type:** String (Read Only)
243
+
244
+ The suggested search phrase with the highest accuracy provided
245
+ for the current search phrase.
246
+
247
+ ### suggestedSearchPhrases
248
+
249
+ **Type:** List (Read Only)
250
+
251
+ A list with up to 5 suggested search phrases provided for the
252
+ current search phrase. It is possible that less than 5 suggestions
253
+ or even no suggestions are returned.
254
+
255
+ ### trackingEmptySearchesEnabled
256
+
257
+ **Type:** boolean (Read Only)
258
+
259
+ The method indicates if no-hits search should be tracked for predictive intelligence use.
260
+
261
+ ### visualSearch
262
+
263
+ **Type:** boolean (Read Only)
264
+
265
+ The method returns true, if this is a visual search. The
266
+ method checks that a image UUID is specified.
267
+
268
+ ## Constructor Summary
269
+
270
+ ProductSearchModel() Constructs a new ProductSearchModel.
271
+
272
+ ## Method Summary
273
+
274
+ ### addHitTypeRefinement
275
+
276
+ **Signature:** `addHitTypeRefinement(types : String...) : void`
277
+
278
+ Set the only search hit types to be included from the search.
279
+
280
+ ### excludeHitType
281
+
282
+ **Signature:** `excludeHitType(types : String...) : void`
283
+
284
+ Set the search hit types to be excluded from the search.
285
+
286
+ ### getCategory
287
+
288
+ **Signature:** `getCategory() : Category`
289
+
290
+ Returns the category object for the category id specified in the query.
291
+
292
+ ### getCategoryID
293
+
294
+ **Signature:** `getCategoryID() : String`
295
+
296
+ Returns the category id that was specified in the search query.
297
+
298
+ ### getDeepestCommonCategory
299
+
300
+ **Signature:** `getDeepestCommonCategory() : Category`
301
+
302
+ Returns the deepest common category of all products in the search result.
303
+
304
+ ### getEffectiveSortingRule
305
+
306
+ **Signature:** `getEffectiveSortingRule() : SortingRule`
307
+
308
+ Returns the sorting rule used to order the products in the results of this query, or null if no search has been executed yet.
309
+
310
+ ### getInventoryIDs
311
+
312
+ **Signature:** `getInventoryIDs() : List`
313
+
314
+ Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is.
315
+
316
+ ### getOrderableProductsOnly
317
+
318
+ **Signature:** `getOrderableProductsOnly() : boolean`
319
+
320
+ Get the flag indicating whether unorderable products should be excluded when the next call to getProducts() is made.
321
+
322
+ ### getPageMetaTag
323
+
324
+ **Signature:** `getPageMetaTag(id : String) : PageMetaTag`
325
+
326
+ Returns the page meta tag for the specified id.
327
+
328
+ ### getPageMetaTags
329
+
330
+ **Signature:** `getPageMetaTags() : Array`
331
+
332
+ Returns all page meta tags, defined for this instance for which content can be generated.
333
+
334
+ ### getPriceMax
335
+
336
+ **Signature:** `getPriceMax() : Number`
337
+
338
+ Returns the maximum price by which the search result is refined.
339
+
340
+ ### getPriceMin
341
+
342
+ **Signature:** `getPriceMin() : Number`
343
+
344
+ Returns the minimum price by which the search result is refined.
345
+
346
+ ### getProductID
347
+
348
+ **Signature:** `getProductID() : String`
349
+
350
+ Returns the product id that was specified in the search query.
351
+
352
+ ### getProductIDs
353
+
354
+ **Signature:** `getProductIDs() : List`
355
+
356
+ Returns a list of product IDs that were specified in the search query or an empty list if no product ID set.
357
+
358
+ ### getProducts
359
+
360
+ **Signature:** `getProducts() : Iterator`
361
+
362
+ Returns all products in the search result.
363
+
364
+ ### getProductSearchHit
365
+
366
+ **Signature:** `getProductSearchHit(product : Product) : ProductSearchHit`
367
+
368
+ Returns the underlying ProductSearchHit for a product, or null if no ProductSearchHit found for this product.
369
+
370
+ ### getProductSearchHits
371
+
372
+ **Signature:** `getProductSearchHits() : Iterator`
373
+
374
+ Returns the product search hits in the search result.
375
+
376
+ ### getPromotionID
377
+
378
+ **Signature:** `getPromotionID() : String`
379
+
380
+ Returns the promotion id that was specified in the search query or null if no promotion id set.
381
+
382
+ ### getPromotionIDs
383
+
384
+ **Signature:** `getPromotionIDs() : List`
385
+
386
+ Returns a list of promotion id's that were specified in the search query or an empty list if no promotion id set.
387
+
388
+ ### getPromotionProductType
389
+
390
+ **Signature:** `getPromotionProductType() : String`
391
+
392
+ Returns the promotion product type specified in the search query.
393
+
394
+ ### getRefinementCategory
395
+
396
+ **Signature:** `getRefinementCategory() : Category`
397
+
398
+ Returns the category used to determine possible refinements for the search.
399
+
400
+ ### getRefinements
401
+
402
+ **Signature:** `getRefinements() : ProductSearchRefinements`
403
+
404
+ Returns the ProductSearchRefinements associated with this search and filtered by session currency.
405
+
406
+ ### getSearchableImageUploadURL
407
+
408
+ **Signature:** `getSearchableImageUploadURL() : String`
409
+
410
+ This method returns the URL of the endpoint where the merchants should upload their image for visual search.
411
+
412
+ ### getSearchPhraseSuggestions
413
+
414
+ **Signature:** `getSearchPhraseSuggestions() : SearchPhraseSuggestions`
415
+
416
+ Returns search phrase suggestions for the current search phrase.
417
+
418
+ ### getSortingRule
419
+
420
+ **Signature:** `getSortingRule() : SortingRule`
421
+
422
+ Returns the sorting rule explicitly set on this model to be used to order the products in the results of this query, or null if no rule has been explicitly set.
423
+
424
+ ### getStoreInventoryFilter
425
+
426
+ **Signature:** `getStoreInventoryFilter() : StoreInventoryFilter`
427
+
428
+ Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is.
429
+
430
+ ### getSuggestedSearchPhrase
431
+
432
+ **Signature:** `getSuggestedSearchPhrase() : String`
433
+
434
+ Returns the suggested search phrase with the highest accuracy provided for the current search phrase.
435
+
436
+ ### getSuggestedSearchPhrases
437
+
438
+ **Signature:** `getSuggestedSearchPhrases() : List`
439
+
440
+ Returns a list with up to 5 suggested search phrases provided for the current search phrase.
441
+
442
+ ### isCategorySearch
443
+
444
+ **Signature:** `isCategorySearch() : boolean`
445
+
446
+ The method returns true, if this is a pure search for a category.
447
+
448
+ ### isPersonalizedSort
449
+
450
+ **Signature:** `isPersonalizedSort() : boolean`
451
+
452
+ The method indicates if the search result is ordered by a personalized sorting rule.
453
+
454
+ ### isRecursiveCategorySearch
455
+
456
+ **Signature:** `isRecursiveCategorySearch() : boolean`
457
+
458
+ Get the flag that determines if the category search will be recursive.
459
+
460
+ ### isRefinedByCategory
461
+
462
+ **Signature:** `isRefinedByCategory() : boolean`
463
+
464
+ The method returns true, if the search is refined by a category.
465
+
466
+ ### isRefinedByPrice
467
+
468
+ **Signature:** `isRefinedByPrice() : boolean`
469
+
470
+ Identifies if this search has been refined by price.
471
+
472
+ ### isRefinedByPriceRange
473
+
474
+ **Signature:** `isRefinedByPriceRange(priceMin : Number, priceMax : Number) : boolean`
475
+
476
+ Identifies if this search has been refined by the given price range.
477
+
478
+ ### isRefinedByPromotion
479
+
480
+ **Signature:** `isRefinedByPromotion() : boolean`
481
+
482
+ Identifies if this search has been refined by promotion.
483
+
484
+ ### isRefinedByPromotion
485
+
486
+ **Signature:** `isRefinedByPromotion(promotionID : String) : boolean`
487
+
488
+ Identifies if this search has been refined by a given promotion.
489
+
490
+ ### isRefinedCategorySearch
491
+
492
+ **Signature:** `isRefinedCategorySearch() : boolean`
493
+
494
+ Identifies if this is a category search and is refined with further criteria, like a brand refinement or an attribute refinement.
495
+
496
+ ### isTrackingEmptySearchesEnabled
497
+
498
+ **Signature:** `isTrackingEmptySearchesEnabled() : boolean`
499
+
500
+ The method indicates if no-hits search should be tracked for predictive intelligence use.
501
+
502
+ ### isVisualSearch
503
+
504
+ **Signature:** `isVisualSearch() : boolean`
505
+
506
+ The method returns true, if this is a visual search.
507
+
508
+ ### search
509
+
510
+ **Signature:** `search() : SearchStatus`
511
+
512
+ Execute the search based on the configured search term, category and filter conditions (price, attribute, promotion, product type) and return the execution status.
513
+
514
+ ### setCategoryID
515
+
516
+ **Signature:** `setCategoryID(categoryID : String) : void`
517
+
518
+ Specifies the category id used for the search query.
519
+
520
+ ### setEnableTrackingEmptySearches
521
+
522
+ **Signature:** `setEnableTrackingEmptySearches(trackingEmptySearches : boolean) : void`
523
+
524
+ Set a flag indicating whether no-hits search should be tracked for predictive intelligence use.
525
+
526
+ ### setInventoryListIDs
527
+
528
+ **Signature:** `setInventoryListIDs(inventoryListIDs : List) : void`
529
+
530
+ Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is.
531
+
532
+ ### setOrderableProductsOnly
533
+
534
+ **Signature:** `setOrderableProductsOnly(orderableOnly : boolean) : void`
535
+
536
+ Set a flag indicating whether unorderable products should be excluded when the next call to getProducts() is made.
537
+
538
+ ### setPriceMax
539
+
540
+ **Signature:** `setPriceMax(priceMax : Number) : void`
541
+
542
+ Sets the maximum price by which the search result is to be refined.
543
+
544
+ ### setPriceMin
545
+
546
+ **Signature:** `setPriceMin(priceMin : Number) : void`
547
+
548
+ Sets the minimum price by which the search result is to be refined.
549
+
550
+ ### setProductID
551
+
552
+ **Signature:** `setProductID(productID : String) : void`
553
+
554
+ Specifies the product id used for the search query.
555
+
556
+ ### setProductIDs
557
+
558
+ **Signature:** `setProductIDs(productIDs : List) : void`
559
+
560
+ Specifies multiple product IDs used for the search query.
561
+
562
+ ### setPromotionID
563
+
564
+ **Signature:** `setPromotionID(promotionID : String) : void`
565
+
566
+ Specifies the promotion id used for the search query.
567
+
568
+ ### setPromotionIDs
569
+
570
+ **Signature:** `setPromotionIDs(promotionIDs : List) : void`
571
+
572
+ Specifies multiple promotion id's used for the search query.
573
+
574
+ ### setPromotionProductType
575
+
576
+ **Signature:** `setPromotionProductType(promotionProductType : String) : void`
577
+
578
+ Specifies the promotion product type used for the search query.
579
+
580
+ ### setRecursiveCategorySearch
581
+
582
+ **Signature:** `setRecursiveCategorySearch(recurse : boolean) : void`
583
+
584
+ Set a flag to indicate if the search in category should be recursive.
585
+
586
+ ### setRefinementCategory
587
+
588
+ **Signature:** `setRefinementCategory(refinementCategory : Category) : void`
589
+
590
+ Sets an explicit category to be used when determining refinements.
591
+
592
+ ### setSearchableImageID
593
+
594
+ **Signature:** `setSearchableImageID(imageID : String) : void`
595
+
596
+ An image ID can be retrieved by uploading an image with a multipart/form-data POST request to 'https://api.cquotient.com/v3/image/search/upload/{siteID}'.
597
+
598
+ ### setSortingCondition
599
+
600
+ **Signature:** `setSortingCondition(attributeID : String, direction : Number) : void`
601
+
602
+ Sets or removes a sorting condition for the specified attribute.
603
+
604
+ ### setSortingOption
605
+
606
+ **Signature:** `setSortingOption(option : SortingOption) : void`
607
+
608
+ Sets the sorting option to be used to order the products in the results of this query.
609
+
610
+ ### setSortingRule
611
+
612
+ **Signature:** `setSortingRule(rule : SortingRule) : void`
613
+
614
+ Sets the sorting rule to be used to order the products in the results of this query.
615
+
616
+ ### setStoreInventoryFilter
617
+
618
+ **Signature:** `setStoreInventoryFilter(storeInventoryFilter : StoreInventoryFilter) : void`
619
+
620
+ Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is.
621
+
622
+ ### urlForCategory
623
+
624
+ **Signature:** `static urlForCategory(action : String, cgid : String) : URL`
625
+
626
+ Constructs a URL that you can use to execute a query for a specific Category.
627
+
628
+ ### urlForCategory
629
+
630
+ **Signature:** `static urlForCategory(url : URL, cgid : String) : URL`
631
+
632
+ Constructs a URL that you can use to execute a query for a specific Category.
633
+
634
+ ### urlForProduct
635
+
636
+ **Signature:** `static urlForProduct(action : String, cgid : String, pid : String) : URL`
637
+
638
+ Constructs a URL that you can use to execute a query for a specific Product.
639
+
640
+ ### urlForProduct
641
+
642
+ **Signature:** `static urlForProduct(url : URL, cgid : String, pid : String) : URL`
643
+
644
+ Constructs a URL that you can use to execute a query for a specific Product.
645
+
646
+ ### urlForRefine
647
+
648
+ **Signature:** `static urlForRefine(action : String, attributeID : String, value : String) : URL`
649
+
650
+ Constructs a URL that you can use to execute a query for a specific attribute name-value pair.
651
+
652
+ ### urlForRefine
653
+
654
+ **Signature:** `static urlForRefine(url : URL, attributeID : String, value : String) : URL`
655
+
656
+ Constructs a URL that you can use to execute a query for a specific attribute name-value pair.
657
+
658
+ ### urlRefineCategory
659
+
660
+ **Signature:** `urlRefineCategory(action : String, refineCategoryID : String) : URL`
661
+
662
+ Constructs a URL that you can use to re-execute the query with a category refinement.
663
+
664
+ ### urlRefineCategory
665
+
666
+ **Signature:** `urlRefineCategory(url : URL, refineCategoryID : String) : URL`
667
+
668
+ Constructs a URL that you can use to re-execute the query with a category refinement.
669
+
670
+ ### urlRefinePrice
671
+
672
+ **Signature:** `urlRefinePrice(action : String, min : Number, max : Number) : URL`
673
+
674
+ Constructs a URL that you can use to re-execute the query with an additional price filter.
675
+
676
+ ### urlRefinePrice
677
+
678
+ **Signature:** `urlRefinePrice(url : URL, min : Number, max : Number) : URL`
679
+
680
+ Constructs a URL that you can use to re-execute the query with an additional price filter.
681
+
682
+ ### urlRefinePromotion
683
+
684
+ **Signature:** `urlRefinePromotion(url : URL, refinePromotionID : String) : URL`
685
+
686
+ Constructs a URL that you can use to re-execute the query with a promotion refinement.
687
+
688
+ ### urlRefinePromotion
689
+
690
+ **Signature:** `urlRefinePromotion(action : String, refinePromotionID : String) : URL`
691
+
692
+ Constructs a URL that you can use to re-execute the query with a promotion refinement.
693
+
694
+ ### urlRelaxCategory
695
+
696
+ **Signature:** `urlRelaxCategory(action : String) : URL`
697
+
698
+ Constructs a URL that you can use to re-execute the query without any category refinement.
699
+
700
+ ### urlRelaxCategory
701
+
702
+ **Signature:** `urlRelaxCategory(url : URL) : URL`
703
+
704
+ Constructs a URL that you can use to re-execute the query without any category refinement.
705
+
706
+ ### urlRelaxPrice
707
+
708
+ **Signature:** `urlRelaxPrice(action : String) : URL`
709
+
710
+ Constructs a URL that you can use to re-execute the query with no price filter.
711
+
712
+ ### urlRelaxPrice
713
+
714
+ **Signature:** `urlRelaxPrice(url : URL) : URL`
715
+
716
+ Constructs a URL that you can use to would re-execute the query with no price filter.
717
+
718
+ ### urlRelaxPromotion
719
+
720
+ **Signature:** `urlRelaxPromotion(url : URL) : URL`
721
+
722
+ Constructs a URL that you can use to re-execute the query without any promotion refinement.
723
+
724
+ ### urlRelaxPromotion
725
+
726
+ **Signature:** `urlRelaxPromotion(action : String) : URL`
727
+
728
+ Constructs a URL that you can use to re-execute the query without any promotion refinement.
729
+
730
+ ### urlSortingOption
731
+
732
+ **Signature:** `urlSortingOption(action : String, option : SortingOption) : URL`
733
+
734
+ Constructs a URL that you can use to re-execute the query but sort the results by the given storefront sorting option.
735
+
736
+ ### urlSortingOption
737
+
738
+ **Signature:** `urlSortingOption(url : URL, option : SortingOption) : URL`
739
+
740
+ Constructs a URL that you can use to re-execute the query but sort the results by the given storefront sorting option.
741
+
742
+ ### urlSortingRule
743
+
744
+ **Signature:** `urlSortingRule(action : String, rule : SortingRule) : URL`
745
+
746
+ Constructs a URL that you can use to re-execute the query but sort the results by the given rule.
747
+
748
+ ### urlSortingRule
749
+
750
+ **Signature:** `urlSortingRule(url : URL, rule : SortingRule) : URL`
751
+
752
+ Constructs a URL that you can use to re-execute the query but sort the results by the given rule.
753
+
754
+ ## Constructor Detail
755
+
756
+ ## Method Detail
757
+
758
+ ## Method Details
759
+
760
+ ### addHitTypeRefinement
761
+
762
+ **Signature:** `addHitTypeRefinement(types : String...) : void`
763
+
764
+ **Description:** Set the only search hit types to be included from the search. Values accepted are the 'hit type' constants exposed in the ProductSearchHit class. Overwrites any hit type refinements set from prior calls to addHitTypeRefinement(String...) or excludeHitType(String...).
765
+
766
+ **Parameters:**
767
+
768
+ - `types`: to be included.
769
+
770
+ ---
771
+
772
+ ### excludeHitType
773
+
774
+ **Signature:** `excludeHitType(types : String...) : void`
775
+
776
+ **Description:** Set the search hit types to be excluded from the search. Values accepted are the 'hit type' constants exposed in the ProductSearchHit class. Overwrites any hit type refinements set from prior calls to addHitTypeRefinement(String...) or excludeHitType(String...).
777
+
778
+ **Parameters:**
779
+
780
+ - `types`: to be excluded.
781
+
782
+ ---
783
+
784
+ ### getCategory
785
+
786
+ **Signature:** `getCategory() : Category`
787
+
788
+ **Description:** Returns the category object for the category id specified in the query. If a category with that id doesn't exist or if the category is offline this method returns null.
789
+
790
+ **Returns:**
791
+
792
+ the category object for the category id specified in the query.
793
+
794
+ ---
795
+
796
+ ### getCategoryID
797
+
798
+ **Signature:** `getCategoryID() : String`
799
+
800
+ **Description:** Returns the category id that was specified in the search query.
801
+
802
+ **Returns:**
803
+
804
+ the category id that was specified in the search query.
805
+
806
+ ---
807
+
808
+ ### getDeepestCommonCategory
809
+
810
+ **Signature:** `getDeepestCommonCategory() : Category`
811
+
812
+ **Description:** Returns the deepest common category of all products in the search result. In case of an empty search result the method returns the root category.
813
+
814
+ **Returns:**
815
+
816
+ the deepest common category of all products in the search result of this search model or root for an empty search result.
817
+
818
+ ---
819
+
820
+ ### getEffectiveSortingRule
821
+
822
+ **Signature:** `getEffectiveSortingRule() : SortingRule`
823
+
824
+ **Description:** Returns the sorting rule used to order the products in the results of this query, or null if no search has been executed yet. In contrast to getSortingRule(), this method respects explicit sorting rules and sorting options and rules determined implicitly based on the refinement category, keyword sorting rule assignment, etc.
825
+
826
+ **Returns:**
827
+
828
+ a SortingRule or null.
829
+
830
+ ---
831
+
832
+ ### getInventoryIDs
833
+
834
+ **Signature:** `getInventoryIDs() : List`
835
+
836
+ **Description:** Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is. If you are not part of the pilot/beta program, the API will throw an exception. Contact your customer success representative for more information. Returns a list of inventory IDs that were specified in the search query or an empty list if no inventory ID set.
837
+
838
+ **Returns:**
839
+
840
+ the list of inventory IDs that were specified in the search query or an empty list if no inventory ID set.
841
+
842
+ ---
843
+
844
+ ### getOrderableProductsOnly
845
+
846
+ **Signature:** `getOrderableProductsOnly() : boolean`
847
+
848
+ **Description:** Get the flag indicating whether unorderable products should be excluded when the next call to getProducts() is made. If this value has not been previously set, then the value returned will be based on the value of the search preference.
849
+
850
+ **Returns:**
851
+
852
+ true if unorderable products should be excluded from product search results, false otherwise.
853
+
854
+ ---
855
+
856
+ ### getPageMetaTag
857
+
858
+ **Signature:** `getPageMetaTag(id : String) : PageMetaTag`
859
+
860
+ **Description:** Returns the page meta tag for the specified id. The meta tag content is generated based on the product listing page meta tag context and rule. The rule is obtained from the current category context or inherited from the parent category, up to the root category. Null will be returned if the meta tag is undefined on the current instance, or if no rule can be found for the current context, or if the rule resolves to an empty string.
861
+
862
+ **Parameters:**
863
+
864
+ - `id`: the ID to get the page meta tag for
865
+
866
+ **Returns:**
867
+
868
+ page meta tag containing content generated based on rules
869
+
870
+ ---
871
+
872
+ ### getPageMetaTags
873
+
874
+ **Signature:** `getPageMetaTags() : Array`
875
+
876
+ **Description:** Returns all page meta tags, defined for this instance for which content can be generated. The meta tag content is generated based on the product listing page meta tag context and rules. The rules are obtained from the current category context or inherited from the parent category, up to the root category.
877
+
878
+ **Returns:**
879
+
880
+ page meta tags defined for this instance, containing content generated based on rules
881
+
882
+ ---
883
+
884
+ ### getPriceMax
885
+
886
+ **Signature:** `getPriceMax() : Number`
887
+
888
+ **Description:** Returns the maximum price by which the search result is refined.
889
+
890
+ **Returns:**
891
+
892
+ the maximum price by which the search result is refined.
893
+
894
+ ---
895
+
896
+ ### getPriceMin
897
+
898
+ **Signature:** `getPriceMin() : Number`
899
+
900
+ **Description:** Returns the minimum price by which the search result is refined.
901
+
902
+ **Returns:**
903
+
904
+ the minimum price by which the search result is refined.
905
+
906
+ ---
907
+
908
+ ### getProductID
909
+
910
+ **Signature:** `getProductID() : String`
911
+
912
+ **Description:** Returns the product id that was specified in the search query.
913
+
914
+ **Deprecated:**
915
+
916
+ Please use getProductIDs() instead
917
+
918
+ **Returns:**
919
+
920
+ the product id that was specified in the search.
921
+
922
+ ---
923
+
924
+ ### getProductIDs
925
+
926
+ **Signature:** `getProductIDs() : List`
927
+
928
+ **Description:** Returns a list of product IDs that were specified in the search query or an empty list if no product ID set.
929
+
930
+ **Returns:**
931
+
932
+ the list of product IDs that were specified in the search query or an empty list if no product ID set.
933
+
934
+ ---
935
+
936
+ ### getProducts
937
+
938
+ **Signature:** `getProducts() : Iterator`
939
+
940
+ **Description:** Returns all products in the search result. Note that products that were removed or went offline since the last index update are not included in the returned set.
941
+
942
+ **Deprecated:**
943
+
944
+ This method should not be used because loading Products for each result of a product search is extremely expensive performance-wise. Please use getProductSearchHits() to iterate ProductSearchHits instead.
945
+
946
+ **Returns:**
947
+
948
+ Products in search result
949
+
950
+ **See Also:**
951
+
952
+ getProductSearchHits()
953
+
954
+ ---
955
+
956
+ ### getProductSearchHit
957
+
958
+ **Signature:** `getProductSearchHit(product : Product) : ProductSearchHit`
959
+
960
+ **Description:** Returns the underlying ProductSearchHit for a product, or null if no ProductSearchHit found for this product.
961
+
962
+ **Parameters:**
963
+
964
+ - `product`: the product to find the underlying ProductSearchHit
965
+
966
+ **Returns:**
967
+
968
+ the underlying ProductSearchHit for a product, or null if no ProductSearchHit found for this product.
969
+
970
+ ---
971
+
972
+ ### getProductSearchHits
973
+
974
+ **Signature:** `getProductSearchHits() : Iterator`
975
+
976
+ **Description:** Returns the product search hits in the search result. Note that method does also return search hits representing products that were removed or went offline since the last index update, i.e. you must implement appropriate checks before accessing the product related to the search hit instance (see ProductSearchHit.getProduct())
977
+
978
+ **Returns:**
979
+
980
+ Products hits in search result
981
+
982
+ **See Also:**
983
+
984
+ getProducts()
985
+
986
+ ---
987
+
988
+ ### getPromotionID
989
+
990
+ **Signature:** `getPromotionID() : String`
991
+
992
+ **Description:** Returns the promotion id that was specified in the search query or null if no promotion id set. If multiple promotion id's specified the method returns only the first id. See setPromotionIDs(List) and getPromotionIDs().
993
+
994
+ **Returns:**
995
+
996
+ the promotion id that was specified in the search query or null if no promotion id set.
997
+
998
+ ---
999
+
1000
+ ### getPromotionIDs
1001
+
1002
+ **Signature:** `getPromotionIDs() : List`
1003
+
1004
+ **Description:** Returns a list of promotion id's that were specified in the search query or an empty list if no promotion id set.
1005
+
1006
+ **Returns:**
1007
+
1008
+ the list of promotion id's that was specified in the search query or an empty list if no promotion id set.
1009
+
1010
+ ---
1011
+
1012
+ ### getPromotionProductType
1013
+
1014
+ **Signature:** `getPromotionProductType() : String`
1015
+
1016
+ **Description:** Returns the promotion product type specified in the search query.
1017
+
1018
+ **Returns:**
1019
+
1020
+ the promotion product type that was specified in the search query.
1021
+
1022
+ ---
1023
+
1024
+ ### getRefinementCategory
1025
+
1026
+ **Signature:** `getRefinementCategory() : Category`
1027
+
1028
+ **Description:** Returns the category used to determine possible refinements for the search. If an explicit category was set for this purpose using setRefinementCategory(Category), it is returned. Otherwise, the deepest common category of all search results will be returned.
1029
+
1030
+ **Returns:**
1031
+
1032
+ the category used to determine refinements.
1033
+
1034
+ ---
1035
+
1036
+ ### getRefinements
1037
+
1038
+ **Signature:** `getRefinements() : ProductSearchRefinements`
1039
+
1040
+ **Description:** Returns the ProductSearchRefinements associated with this search and filtered by session currency. If an explicit category was set for this purpose using setRefinementCategory(Category), it will be used to determine the refinements. Otherwise, the refinements are determined based on the deepest common category of all products in the search result. Hint: If you want to use the same refinements for all searches, consider defining them in one category (usually root) and using setRefinementCategory(Category) to avoid unnecessary calculation of the deepest common category.
1041
+
1042
+ **Returns:**
1043
+
1044
+ the ProductSearchRefinements associated with this search.
1045
+
1046
+ ---
1047
+
1048
+ ### getSearchableImageUploadURL
1049
+
1050
+ **Signature:** `getSearchableImageUploadURL() : String`
1051
+
1052
+ **Description:** This method returns the URL of the endpoint where the merchants should upload their image for visual search.
1053
+
1054
+ **Returns:**
1055
+
1056
+ returns the URL where the merchants should upload their image.
1057
+
1058
+ **Throws:**
1059
+
1060
+ - RuntimeException
1061
+
1062
+ ---
1063
+
1064
+ ### getSearchPhraseSuggestions
1065
+
1066
+ **Signature:** `getSearchPhraseSuggestions() : SearchPhraseSuggestions`
1067
+
1068
+ **Description:** Returns search phrase suggestions for the current search phrase. Search phrase suggestions may contain alternative search phrases as well as lists of corrected and completed search terms.
1069
+
1070
+ **Returns:**
1071
+
1072
+ search phrase suggestions for the current search phrase
1073
+
1074
+ ---
1075
+
1076
+ ### getSortingRule
1077
+
1078
+ **Signature:** `getSortingRule() : SortingRule`
1079
+
1080
+ **Description:** Returns the sorting rule explicitly set on this model to be used to order the products in the results of this query, or null if no rule has been explicitly set. This method does not return the sorting rule that will be used implicitly based on the context of the search, such as the refinement category.
1081
+
1082
+ **Returns:**
1083
+
1084
+ a SortingRule or null.
1085
+
1086
+ ---
1087
+
1088
+ ### getStoreInventoryFilter
1089
+
1090
+ **Signature:** `getStoreInventoryFilter() : StoreInventoryFilter`
1091
+
1092
+ **Description:** Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is. If you are not part of the pilot/beta program, the API will throw an exception. Contact your customer success representative for more information. Returns the StoreInventoryFilter, which was specified for this search.
1093
+
1094
+ **Returns:**
1095
+
1096
+ the StoreInventoryFilter, which was specified for this search.
1097
+
1098
+ **Throws:**
1099
+
1100
+ UnsupportedOperationException - in case the API is used without enablement
1101
+
1102
+ ---
1103
+
1104
+ ### getSuggestedSearchPhrase
1105
+
1106
+ **Signature:** `getSuggestedSearchPhrase() : String`
1107
+
1108
+ **Description:** Returns the suggested search phrase with the highest accuracy provided for the current search phrase.
1109
+
1110
+ **Deprecated:**
1111
+
1112
+ Please use getSearchPhraseSuggestions() instead
1113
+
1114
+ **Returns:**
1115
+
1116
+ the suggested search phrase.
1117
+
1118
+ ---
1119
+
1120
+ ### getSuggestedSearchPhrases
1121
+
1122
+ **Signature:** `getSuggestedSearchPhrases() : List`
1123
+
1124
+ **Description:** Returns a list with up to 5 suggested search phrases provided for the current search phrase. It is possible that less than 5 suggestions or even no suggestions are returned.
1125
+
1126
+ **Deprecated:**
1127
+
1128
+ Please use getSearchPhraseSuggestions() instead
1129
+
1130
+ **Returns:**
1131
+
1132
+ a list containing the suggested search phrases.
1133
+
1134
+ ---
1135
+
1136
+ ### isCategorySearch
1137
+
1138
+ **Signature:** `isCategorySearch() : boolean`
1139
+
1140
+ **Description:** The method returns true, if this is a pure search for a category. The method checks, that a category ID is specified and no search phrase is specified.
1141
+
1142
+ **Returns:**
1143
+
1144
+ True if this is a category search
1145
+
1146
+ ---
1147
+
1148
+ ### isPersonalizedSort
1149
+
1150
+ **Signature:** `isPersonalizedSort() : boolean`
1151
+
1152
+ **Description:** The method indicates if the search result is ordered by a personalized sorting rule.
1153
+
1154
+ **Returns:**
1155
+
1156
+ true if search result is ordered by a personalized sorting rule, otherwise false.
1157
+
1158
+ ---
1159
+
1160
+ ### isRecursiveCategorySearch
1161
+
1162
+ **Signature:** `isRecursiveCategorySearch() : boolean`
1163
+
1164
+ **Description:** Get the flag that determines if the category search will be recursive.
1165
+
1166
+ **Returns:**
1167
+
1168
+ true if the category search will be recursive, false otherwise
1169
+
1170
+ ---
1171
+
1172
+ ### isRefinedByCategory
1173
+
1174
+ **Signature:** `isRefinedByCategory() : boolean`
1175
+
1176
+ **Description:** The method returns true, if the search is refined by a category. The method checks, that a category ID is specified.
1177
+
1178
+ **Returns:**
1179
+
1180
+ true, if the search is refined by a category, false otherwise.
1181
+
1182
+ ---
1183
+
1184
+ ### isRefinedByPrice
1185
+
1186
+ **Signature:** `isRefinedByPrice() : boolean`
1187
+
1188
+ **Description:** Identifies if this search has been refined by price.
1189
+
1190
+ **Returns:**
1191
+
1192
+ True if the search is refined by price, false otherwise.
1193
+
1194
+ ---
1195
+
1196
+ ### isRefinedByPriceRange
1197
+
1198
+ **Signature:** `isRefinedByPriceRange(priceMin : Number, priceMax : Number) : boolean`
1199
+
1200
+ **Description:** Identifies if this search has been refined by the given price range. Either range parameters may be null to represent open ranges.
1201
+
1202
+ **Parameters:**
1203
+
1204
+ - `priceMin`: The lower bound of the price range.
1205
+ - `priceMax`: The upper bound of the price range.
1206
+
1207
+ **Returns:**
1208
+
1209
+ True if the search is refinemd on the given price range, false otherwise.
1210
+
1211
+ ---
1212
+
1213
+ ### isRefinedByPromotion
1214
+
1215
+ **Signature:** `isRefinedByPromotion() : boolean`
1216
+
1217
+ **Description:** Identifies if this search has been refined by promotion.
1218
+
1219
+ **Returns:**
1220
+
1221
+ True if the search is refined by promotion, false otherwise.
1222
+
1223
+ ---
1224
+
1225
+ ### isRefinedByPromotion
1226
+
1227
+ **Signature:** `isRefinedByPromotion(promotionID : String) : boolean`
1228
+
1229
+ **Description:** Identifies if this search has been refined by a given promotion.
1230
+
1231
+ **Parameters:**
1232
+
1233
+ - `promotionID`: the ID of the promotion to check
1234
+
1235
+ **Returns:**
1236
+
1237
+ True if the search is refined by the given promotionID, false otherwise.
1238
+
1239
+ ---
1240
+
1241
+ ### isRefinedCategorySearch
1242
+
1243
+ **Signature:** `isRefinedCategorySearch() : boolean`
1244
+
1245
+ **Description:** Identifies if this is a category search and is refined with further criteria, like a brand refinement or an attribute refinement.
1246
+
1247
+ **Returns:**
1248
+
1249
+ true if this is a category search and is refined with further criteria, false otherwise.
1250
+
1251
+ ---
1252
+
1253
+ ### isTrackingEmptySearchesEnabled
1254
+
1255
+ **Signature:** `isTrackingEmptySearchesEnabled() : boolean`
1256
+
1257
+ **Description:** The method indicates if no-hits search should be tracked for predictive intelligence use.
1258
+
1259
+ **Returns:**
1260
+
1261
+ true, if no-hits search should be tracked, otherwise false.
1262
+
1263
+ ---
1264
+
1265
+ ### isVisualSearch
1266
+
1267
+ **Signature:** `isVisualSearch() : boolean`
1268
+
1269
+ **Description:** The method returns true, if this is a visual search. The method checks that a image UUID is specified.
1270
+
1271
+ **Returns:**
1272
+
1273
+ True if this is a visual search
1274
+
1275
+ ---
1276
+
1277
+ ### search
1278
+
1279
+ **Signature:** `search() : SearchStatus`
1280
+
1281
+ **Description:** Execute the search based on the configured search term, category and filter conditions (price, attribute, promotion, product type) and return the execution status. The execution of an empty ProductSearchModel without any search term or filter criteria will not be supported and the search status SearchStatus.EMPTY_QUERY will be returned. A usage of the internal category id 'root' as category filter is not recommended, could cause performance issues and will be potentially deprecated in a future release. A successful execution will be indicated by SearchStatus.SUCCESSFUL or SearchStatus.LIMITED. For other possible search statuses see SearchStatus. The sorted and grouped search result of a successful execution can be fetched via getProductSearchHits() and the refinement options based on the search result can be obtained via getRefinements() and SearchModel.getRefinementValues(String).
1282
+
1283
+ **Returns:**
1284
+
1285
+ the searchStatus object with search status code and description of search result.
1286
+
1287
+ ---
1288
+
1289
+ ### setCategoryID
1290
+
1291
+ **Signature:** `setCategoryID(categoryID : String) : void`
1292
+
1293
+ **Description:** Specifies the category id used for the search query.
1294
+
1295
+ **Parameters:**
1296
+
1297
+ - `categoryID`: the category id for the search query.
1298
+
1299
+ ---
1300
+
1301
+ ### setEnableTrackingEmptySearches
1302
+
1303
+ **Signature:** `setEnableTrackingEmptySearches(trackingEmptySearches : boolean) : void`
1304
+
1305
+ **Description:** Set a flag indicating whether no-hits search should be tracked for predictive intelligence use.
1306
+
1307
+ **Parameters:**
1308
+
1309
+ - `trackingEmptySearches`: true, no-hits search should be tracked, false, otherwise.
1310
+
1311
+ ---
1312
+
1313
+ ### setInventoryListIDs
1314
+
1315
+ **Signature:** `setInventoryListIDs(inventoryListIDs : List) : void`
1316
+
1317
+ **Description:** Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is. If you are not part of the pilot/beta program, the API will throw an exception. Contact your customer success representative for more information. Specifies multiple inventory list IDs used for the search query. The method supports up to MAXIMUM_INVENTORY_LIST_IDS inventory IDs. If more than MAXIMUM_INVENTORY_LIST_IDS inventory IDs used the method throws an IllegalArgumentException.
1318
+
1319
+ **Parameters:**
1320
+
1321
+ - `inventoryListIDs`: the inventory IDs for the search query.
1322
+
1323
+ **Throws:**
1324
+
1325
+ IllegalArgumentException - if more than MAXIMUM_INVENTORY_LIST_IDS inventory IDs used
1326
+ UnsupportedOperationException - in case the API is used without enablement
1327
+
1328
+ ---
1329
+
1330
+ ### setOrderableProductsOnly
1331
+
1332
+ **Signature:** `setOrderableProductsOnly(orderableOnly : boolean) : void`
1333
+
1334
+ **Description:** Set a flag indicating whether unorderable products should be excluded when the next call to getProducts() is made. This method overrides the default behavior which is controlled by the search preference.
1335
+
1336
+ **Parameters:**
1337
+
1338
+ - `orderableOnly`: true if unorderable products should be excluded from product search results, false otherwise.
1339
+
1340
+ ---
1341
+
1342
+ ### setPriceMax
1343
+
1344
+ **Signature:** `setPriceMax(priceMax : Number) : void`
1345
+
1346
+ **Description:** Sets the maximum price by which the search result is to be refined.
1347
+
1348
+ **Parameters:**
1349
+
1350
+ - `priceMax`: sets the maximum price by which the search result is to be refined.
1351
+
1352
+ ---
1353
+
1354
+ ### setPriceMin
1355
+
1356
+ **Signature:** `setPriceMin(priceMin : Number) : void`
1357
+
1358
+ **Description:** Sets the minimum price by which the search result is to be refined.
1359
+
1360
+ **Parameters:**
1361
+
1362
+ - `priceMin`: the minimum price by which the search result is to be refined.
1363
+
1364
+ ---
1365
+
1366
+ ### setProductID
1367
+
1368
+ **Signature:** `setProductID(productID : String) : void`
1369
+
1370
+ **Description:** Specifies the product id used for the search query.
1371
+
1372
+ **Deprecated:**
1373
+
1374
+ Please use setProductIDs(List) instead
1375
+
1376
+ **Parameters:**
1377
+
1378
+ - `productID`: the product id for the search query.
1379
+
1380
+ ---
1381
+
1382
+ ### setProductIDs
1383
+
1384
+ **Signature:** `setProductIDs(productIDs : List) : void`
1385
+
1386
+ **Description:** Specifies multiple product IDs used for the search query. The specified product IDs include, but not limited to, variant product IDs, product master IDs, variation group IDs, product set IDs, or product bundle IDs. For example, this API could be used in high-traffic pages where developers need to be able to filter quickly for only available child products of a specified master product, instead of looping through all variants of a set products and checking their availabilities. The method supports up to MAXIMUM_PRODUCT_IDS product IDs. If more than MAXIMUM_PRODUCT_IDS products IDs are passed, the method throws an IllegalArgumentException.
1387
+
1388
+ **Parameters:**
1389
+
1390
+ - `productIDs`: the product IDs for the search query.
1391
+
1392
+ **Throws:**
1393
+
1394
+ IllegalArgumentException - if more than MAXIMUM_PRODUCT_IDS product IDs used
1395
+
1396
+ ---
1397
+
1398
+ ### setPromotionID
1399
+
1400
+ **Signature:** `setPromotionID(promotionID : String) : void`
1401
+
1402
+ **Description:** Specifies the promotion id used for the search query.
1403
+
1404
+ **Parameters:**
1405
+
1406
+ - `promotionID`: the promotion id for the search query.
1407
+
1408
+ ---
1409
+
1410
+ ### setPromotionIDs
1411
+
1412
+ **Signature:** `setPromotionIDs(promotionIDs : List) : void`
1413
+
1414
+ **Description:** Specifies multiple promotion id's used for the search query. The method supports up to 30 promotion id's. If more than 30 promotion id's used the method throws an IllegalArgumentException.
1415
+
1416
+ **Parameters:**
1417
+
1418
+ - `promotionIDs`: the promotion ids for the search query.
1419
+
1420
+ **Throws:**
1421
+
1422
+ IllegalArgumentException - if more than 30 promotion id's used
1423
+
1424
+ ---
1425
+
1426
+ ### setPromotionProductType
1427
+
1428
+ **Signature:** `setPromotionProductType(promotionProductType : String) : void`
1429
+
1430
+ **Description:** Specifies the promotion product type used for the search query. This value is only relevant for searches by promotion ID.
1431
+
1432
+ **Parameters:**
1433
+
1434
+ - `promotionProductType`: The type of product to filter by when searching by promotion ID. Allowed values are PROMOTION_PRODUCT_TYPE_ALL, PROMOTION_PRODUCT_TYPE_BONUS, PROMOTION_PRODUCT_TYPE_QUALIFYING, and PROMOTION_PRODUCT_TYPE_DISCOUNTED. If null is passed, or an invalid value is passed, the search will use PROMOTION_PRODUCT_TYPE_ALL.
1435
+
1436
+ ---
1437
+
1438
+ ### setRecursiveCategorySearch
1439
+
1440
+ **Signature:** `setRecursiveCategorySearch(recurse : boolean) : void`
1441
+
1442
+ **Description:** Set a flag to indicate if the search in category should be recursive.
1443
+
1444
+ **Parameters:**
1445
+
1446
+ - `recurse`: recurse the category in the search
1447
+
1448
+ ---
1449
+
1450
+ ### setRefinementCategory
1451
+
1452
+ **Signature:** `setRefinementCategory(refinementCategory : Category) : void`
1453
+
1454
+ **Description:** Sets an explicit category to be used when determining refinements. If this is not done, they will be determined based on the deepest common category of all search results. The explicit category must be in the site's storefront catalog, otherwise the method fails with an IllegalArgumentException.
1455
+
1456
+ **Parameters:**
1457
+
1458
+ - `refinementCategory`: the category used to determine the applicable refinements.
1459
+
1460
+ **Throws:**
1461
+
1462
+ IllegalArgumentException - if the refinement category does not reside in the storefront catalog
1463
+
1464
+ ---
1465
+
1466
+ ### setSearchableImageID
1467
+
1468
+ **Signature:** `setSearchableImageID(imageID : String) : void`
1469
+
1470
+ **Description:** An image ID can be retrieved by uploading an image with a multipart/form-data POST request to 'https://api.cquotient.com/v3/image/search/upload/{siteID}'. This method sets product IDs retrieved from the image ID to the ProductSearchModel. If using setProductIDs(List) in addition to this method, the ProductSearchModel will take the intersection of these sets of product IDs. If the image ID provided is invalid or expired, product IDs will not be set onto the product search model.
1471
+
1472
+ **Parameters:**
1473
+
1474
+ - `imageID`: the image ID for the visual search query.
1475
+
1476
+ **Throws:**
1477
+
1478
+ RuntimeException - if product IDs for the provided image could not be set.
1479
+
1480
+ ---
1481
+
1482
+ ### setSortingCondition
1483
+
1484
+ **Signature:** `setSortingCondition(attributeID : String, direction : Number) : void`
1485
+
1486
+ **Description:** Sets or removes a sorting condition for the specified attribute. Specify either SORT_DIRECTION_ASCENDING or SORT_DIRECTION_DESCENDING to set a sorting condition. Specify SORT_DIRECTION_NONE to remove a sorting condition from the attribute.
1487
+
1488
+ **Deprecated:**
1489
+
1490
+ This method is subject to removal. Use setSortingRule(SortingRule) instead.
1491
+
1492
+ **Parameters:**
1493
+
1494
+ - `attributeID`: the attribute ID
1495
+ - `direction`: SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING or SORT_DIRECTION_NONE
1496
+
1497
+ ---
1498
+
1499
+ ### setSortingOption
1500
+
1501
+ **Signature:** `setSortingOption(option : SortingOption) : void`
1502
+
1503
+ **Description:** Sets the sorting option to be used to order the products in the results of this query. If a sorting rule is also set, the sorting option is ignored.
1504
+
1505
+ **Parameters:**
1506
+
1507
+ - `option`: the SortingOption to use to sort the products
1508
+
1509
+ ---
1510
+
1511
+ ### setSortingRule
1512
+
1513
+ **Signature:** `setSortingRule(rule : SortingRule) : void`
1514
+
1515
+ **Description:** Sets the sorting rule to be used to order the products in the results of this query. Setting the rule in this way overrides the default behavior of choosing the sorting rule based on the context of the search, such as the refinement category.
1516
+
1517
+ **Parameters:**
1518
+
1519
+ - `rule`: the SortingRule to use to sort the products
1520
+
1521
+ ---
1522
+
1523
+ ### setStoreInventoryFilter
1524
+
1525
+ **Signature:** `setStoreInventoryFilter(storeInventoryFilter : StoreInventoryFilter) : void`
1526
+
1527
+ **Description:** Important Note: This API is not GA and is currently a pilot/beta service as defined by the customer's main services agreement and provided as-is. If you are not part of the pilot/beta program, the API will throw an exception. Contact your customer success representative for more information. Filters the search result by one or more inventory list IDs provided by the class StoreInventoryFilter which supports a semantic URL parameter like zip, city, store ... and a list of StoreInventoryFilterValue which maps the semantic inventory list id value like Burlington, Boston, ... to a real inventory list id like 'Burlington -> inventory1', 'Boston -> inventory2'. The search will filter the result by the real inventory list id(s) but will use the semantic URL parameter and semantic inventory list id values for URL generation via all URLRefine and URLRelax methods e.g. for urlRefineCategory(URL, String), urlRelaxPrice(URL), SearchModel.urlRefineAttribute(String, String, String). Example custom URL: city=Burlington|Boston var storeFilter = new dw.catalog.StoreInventoryFilter("city", new dw.util.ArrayList( new dw.catalog.StoreInventoryFilterValue("Burlington","inventory_store_store9"), new dw.catalog.StoreInventoryFilterValue("Boston","inventory_store_store8") )); searchModel.setStoreInventoryFilter(filter)
1528
+
1529
+ **Parameters:**
1530
+
1531
+ - `storeInventoryFilter`: The StoreInventoryFilter instance to filter the search result by one or more inventory IDs with semantic key and semantic value support.
1532
+
1533
+ **Throws:**
1534
+
1535
+ IllegalArgumentException - if more than MAXIMUM_STORE_INVENTORY_FILTER_VALUES filter values used
1536
+ UnsupportedOperationException - in case the API is used without enablement
1537
+
1538
+ ---
1539
+
1540
+ ### urlForCategory
1541
+
1542
+ **Signature:** `static urlForCategory(action : String, cgid : String) : URL`
1543
+
1544
+ **Description:** Constructs a URL that you can use to execute a query for a specific Category. The generated URL will be an absolute URL which uses the protocol of the current request.
1545
+
1546
+ **Parameters:**
1547
+
1548
+ - `action`: pipeline action, e.g. 'Search-Show'.
1549
+ - `cgid`: the category ID.
1550
+
1551
+ **Returns:**
1552
+
1553
+ the new URL.
1554
+
1555
+ ---
1556
+
1557
+ ### urlForCategory
1558
+
1559
+ **Signature:** `static urlForCategory(url : URL, cgid : String) : URL`
1560
+
1561
+ **Description:** Constructs a URL that you can use to execute a query for a specific Category. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1562
+
1563
+ **Parameters:**
1564
+
1565
+ - `url`: the URL to use to generate the new URL.
1566
+ - `cgid`: the category ID.
1567
+
1568
+ **Returns:**
1569
+
1570
+ the new URL.
1571
+
1572
+ ---
1573
+
1574
+ ### urlForProduct
1575
+
1576
+ **Signature:** `static urlForProduct(action : String, cgid : String, pid : String) : URL`
1577
+
1578
+ **Description:** Constructs a URL that you can use to execute a query for a specific Product. The passed action is used to build an initial url. All search specific attributes are appended. The generated URL will be an absolute URL which uses the protocol of the current request.
1579
+
1580
+ **Parameters:**
1581
+
1582
+ - `action`: pipeline action, e.g. 'Search-Show'.
1583
+ - `cgid`: the category id or null if product is not in category context.
1584
+ - `pid`: the product id.
1585
+
1586
+ **Returns:**
1587
+
1588
+ the new URL.
1589
+
1590
+ ---
1591
+
1592
+ ### urlForProduct
1593
+
1594
+ **Signature:** `static urlForProduct(url : URL, cgid : String, pid : String) : URL`
1595
+
1596
+ **Description:** Constructs a URL that you can use to execute a query for a specific Product. The passed url can be either a full url or just the name for a pipeline. In the later case a relative URL is created.
1597
+
1598
+ **Parameters:**
1599
+
1600
+ - `url`: the URL to use to generate the new URL.
1601
+ - `cgid`: the category id or null if product is not in category context.
1602
+ - `pid`: the product id.
1603
+
1604
+ **Returns:**
1605
+
1606
+ the new URL.
1607
+
1608
+ ---
1609
+
1610
+ ### urlForRefine
1611
+
1612
+ **Signature:** `static urlForRefine(action : String, attributeID : String, value : String) : URL`
1613
+
1614
+ **Description:** Constructs a URL that you can use to execute a query for a specific attribute name-value pair. The generated URL will be an absolute URL which uses the protocol of the current request.
1615
+
1616
+ **Parameters:**
1617
+
1618
+ - `action`: pipeline action, e.g. 'Search-Show'.
1619
+ - `attributeID`: the attribute ID for the refinement.
1620
+ - `value`: the attribute value for the refinement.
1621
+
1622
+ **Returns:**
1623
+
1624
+ the new URL.
1625
+
1626
+ ---
1627
+
1628
+ ### urlForRefine
1629
+
1630
+ **Signature:** `static urlForRefine(url : URL, attributeID : String, value : String) : URL`
1631
+
1632
+ **Description:** Constructs a URL that you can use to execute a query for a specific attribute name-value pair. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1633
+
1634
+ **Parameters:**
1635
+
1636
+ - `url`: the URL to use to generate the new URL.
1637
+ - `attributeID`: the attribute ID for the refinement.
1638
+ - `value`: the attribute value for the refinement.
1639
+
1640
+ **Returns:**
1641
+
1642
+ the new URL.
1643
+
1644
+ ---
1645
+
1646
+ ### urlRefineCategory
1647
+
1648
+ **Signature:** `urlRefineCategory(action : String, refineCategoryID : String) : URL`
1649
+
1650
+ **Description:** Constructs a URL that you can use to re-execute the query with a category refinement. The generated URL will be an absolute URL which uses the protocol of the current request.
1651
+
1652
+ **Parameters:**
1653
+
1654
+ - `action`: the pipeline action, e.g. 'Search-Show'
1655
+ - `refineCategoryID`: the ID of the category.
1656
+
1657
+ **Returns:**
1658
+
1659
+ the new URL.
1660
+
1661
+ ---
1662
+
1663
+ ### urlRefineCategory
1664
+
1665
+ **Signature:** `urlRefineCategory(url : URL, refineCategoryID : String) : URL`
1666
+
1667
+ **Description:** Constructs a URL that you can use to re-execute the query with a category refinement. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1668
+
1669
+ **Parameters:**
1670
+
1671
+ - `url`: the existing URL to use to create the new URL.
1672
+ - `refineCategoryID`: the ID of the category.
1673
+
1674
+ **Returns:**
1675
+
1676
+ the new URL.
1677
+
1678
+ ---
1679
+
1680
+ ### urlRefinePrice
1681
+
1682
+ **Signature:** `urlRefinePrice(action : String, min : Number, max : Number) : URL`
1683
+
1684
+ **Description:** Constructs a URL that you can use to re-execute the query with an additional price filter. The generated URL will be an absolute URL which uses the protocol of the current request.
1685
+
1686
+ **Parameters:**
1687
+
1688
+ - `action`: the pipeline action, e.g. 'Search-Show'.
1689
+ - `min`: the minimum price.
1690
+ - `max`: the maximum price.
1691
+
1692
+ **Returns:**
1693
+
1694
+ the new URL.
1695
+
1696
+ ---
1697
+
1698
+ ### urlRefinePrice
1699
+
1700
+ **Signature:** `urlRefinePrice(url : URL, min : Number, max : Number) : URL`
1701
+
1702
+ **Description:** Constructs a URL that you can use to re-execute the query with an additional price filter. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1703
+
1704
+ **Parameters:**
1705
+
1706
+ - `url`: the URL to use to generate the new URL.
1707
+ - `min`: the minimum price.
1708
+ - `max`: the maximum price.
1709
+
1710
+ **Returns:**
1711
+
1712
+ the new URL.
1713
+
1714
+ ---
1715
+
1716
+ ### urlRefinePromotion
1717
+
1718
+ **Signature:** `urlRefinePromotion(url : URL, refinePromotionID : String) : URL`
1719
+
1720
+ **Description:** Constructs a URL that you can use to re-execute the query with a promotion refinement. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1721
+
1722
+ **Parameters:**
1723
+
1724
+ - `url`: the existing URL to use to create the new URL.
1725
+ - `refinePromotionID`: the ID of the promotion.
1726
+
1727
+ **Returns:**
1728
+
1729
+ the new URL.
1730
+
1731
+ ---
1732
+
1733
+ ### urlRefinePromotion
1734
+
1735
+ **Signature:** `urlRefinePromotion(action : String, refinePromotionID : String) : URL`
1736
+
1737
+ **Description:** Constructs a URL that you can use to re-execute the query with a promotion refinement. The generated URL will be an absolute URL which uses the protocol of the current request.
1738
+
1739
+ **Parameters:**
1740
+
1741
+ - `action`: the pipeline action, e.g. 'Search-Show'
1742
+ - `refinePromotionID`: the ID of the promotion.
1743
+
1744
+ **Returns:**
1745
+
1746
+ the new URL.
1747
+
1748
+ ---
1749
+
1750
+ ### urlRelaxCategory
1751
+
1752
+ **Signature:** `urlRelaxCategory(action : String) : URL`
1753
+
1754
+ **Description:** Constructs a URL that you can use to re-execute the query without any category refinement. The generated URL will be an absolute URL which uses the protocol of the current request.
1755
+
1756
+ **Parameters:**
1757
+
1758
+ - `action`: the pipeline action, e.g. 'Search-Show'.
1759
+
1760
+ **Returns:**
1761
+
1762
+ the new URL.
1763
+
1764
+ ---
1765
+
1766
+ ### urlRelaxCategory
1767
+
1768
+ **Signature:** `urlRelaxCategory(url : URL) : URL`
1769
+
1770
+ **Description:** Constructs a URL that you can use to re-execute the query without any category refinement. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1771
+
1772
+ **Parameters:**
1773
+
1774
+ - `url`: the existing URL to use to create the new URL.
1775
+
1776
+ **Returns:**
1777
+
1778
+ the new URL.
1779
+
1780
+ ---
1781
+
1782
+ ### urlRelaxPrice
1783
+
1784
+ **Signature:** `urlRelaxPrice(action : String) : URL`
1785
+
1786
+ **Description:** Constructs a URL that you can use to re-execute the query with no price filter. The generated URL will be an absolute URL which uses the protocol of the current request.
1787
+
1788
+ **Parameters:**
1789
+
1790
+ - `action`: the pipeline action, e.g. 'Search-Show'
1791
+
1792
+ **Returns:**
1793
+
1794
+ the new URL.
1795
+
1796
+ ---
1797
+
1798
+ ### urlRelaxPrice
1799
+
1800
+ **Signature:** `urlRelaxPrice(url : URL) : URL`
1801
+
1802
+ **Description:** Constructs a URL that you can use to would re-execute the query with no price filter. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1803
+
1804
+ **Parameters:**
1805
+
1806
+ - `url`: the existing URL to use to create the new URL.
1807
+
1808
+ **Returns:**
1809
+
1810
+ the new URL.
1811
+
1812
+ ---
1813
+
1814
+ ### urlRelaxPromotion
1815
+
1816
+ **Signature:** `urlRelaxPromotion(url : URL) : URL`
1817
+
1818
+ **Description:** Constructs a URL that you can use to re-execute the query without any promotion refinement. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1819
+
1820
+ **Parameters:**
1821
+
1822
+ - `url`: the existing URL to use to create the new URL.
1823
+
1824
+ **Returns:**
1825
+
1826
+ the new URL.
1827
+
1828
+ ---
1829
+
1830
+ ### urlRelaxPromotion
1831
+
1832
+ **Signature:** `urlRelaxPromotion(action : String) : URL`
1833
+
1834
+ **Description:** Constructs a URL that you can use to re-execute the query without any promotion refinement. The generated URL will be an absolute URL which uses the protocol of the current request.
1835
+
1836
+ **Parameters:**
1837
+
1838
+ - `action`: the pipeline action, e.g. 'Search-Show'.
1839
+
1840
+ **Returns:**
1841
+
1842
+ the new URL.
1843
+
1844
+ ---
1845
+
1846
+ ### urlSortingOption
1847
+
1848
+ **Signature:** `urlSortingOption(action : String, option : SortingOption) : URL`
1849
+
1850
+ **Description:** Constructs a URL that you can use to re-execute the query but sort the results by the given storefront sorting option. The generated URL will be an absolute URL which uses the protocol of the current request.
1851
+
1852
+ **Parameters:**
1853
+
1854
+ - `action`: the pipeline action, e.g. 'Search-Show'.
1855
+ - `option`: sorting option
1856
+
1857
+ **Returns:**
1858
+
1859
+ the new URL.
1860
+
1861
+ ---
1862
+
1863
+ ### urlSortingOption
1864
+
1865
+ **Signature:** `urlSortingOption(url : URL, option : SortingOption) : URL`
1866
+
1867
+ **Description:** Constructs a URL that you can use to re-execute the query but sort the results by the given storefront sorting option. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1868
+
1869
+ **Parameters:**
1870
+
1871
+ - `url`: the existing URL to use to create the new URL.
1872
+ - `option`: sorting option
1873
+
1874
+ **Returns:**
1875
+
1876
+ the new URL.
1877
+
1878
+ ---
1879
+
1880
+ ### urlSortingRule
1881
+
1882
+ **Signature:** `urlSortingRule(action : String, rule : SortingRule) : URL`
1883
+
1884
+ **Description:** Constructs a URL that you can use to re-execute the query but sort the results by the given rule. The generated URL will be an absolute URL which uses the protocol of the current request.
1885
+
1886
+ **Parameters:**
1887
+
1888
+ - `action`: the pipeline action, e.g. 'Search-Show'.
1889
+ - `rule`: sorting rule
1890
+
1891
+ **Returns:**
1892
+
1893
+ the new URL.
1894
+
1895
+ ---
1896
+
1897
+ ### urlSortingRule
1898
+
1899
+ **Signature:** `urlSortingRule(url : URL, rule : SortingRule) : URL`
1900
+
1901
+ **Description:** Constructs a URL that you can use to re-execute the query but sort the results by the given rule. The search specific parameters are appended to the provided URL. The URL is typically generated with one of the URLUtils methods.
1902
+
1903
+ **Parameters:**
1904
+
1905
+ - `url`: the existing URL to use to create the new URL.
1906
+ - `rule`: sorting rule
1907
+
1908
+ **Returns:**
1909
+
1910
+ the new URL.
1911
+
1912
+ ---