@gofynd/fdk-client-javascript 1.4.15-beta.14 → 1.4.15-beta.15

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 (278) hide show
  1. package/README.md +23 -26
  2. package/package.json +5 -1
  3. package/sdk/application/ApplicationClient.d.ts +5 -6
  4. package/sdk/application/ApplicationClient.js +24 -20
  5. package/sdk/application/Cart/CartApplicationClient.d.ts +133 -83
  6. package/sdk/application/Cart/CartApplicationClient.js +444 -76
  7. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +132 -114
  8. package/sdk/application/Catalog/CatalogApplicationClient.js +209 -126
  9. package/sdk/application/Common/CommonApplicationClient.d.ts +4 -4
  10. package/sdk/application/Common/CommonApplicationClient.js +4 -4
  11. package/sdk/application/Communication/CommunicationApplicationClient.d.ts +3 -3
  12. package/sdk/application/Communication/CommunicationApplicationClient.js +3 -3
  13. package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +58 -36
  14. package/sdk/application/Configuration/ConfigurationApplicationClient.js +73 -29
  15. package/sdk/application/Content/ContentApplicationClient.d.ts +95 -66
  16. package/sdk/application/Content/ContentApplicationClient.js +274 -111
  17. package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +11 -11
  18. package/sdk/application/FileStorage/FileStorageApplicationClient.js +10 -10
  19. package/sdk/application/Finance/FinanceApplicationClient.d.ts +29 -0
  20. package/sdk/application/Finance/FinanceApplicationClient.js +111 -0
  21. package/sdk/application/Lead/LeadApplicationClient.d.ts +7 -7
  22. package/sdk/application/Lead/LeadApplicationClient.js +6 -6
  23. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +37 -57
  24. package/sdk/application/Logistic/LogisticApplicationClient.js +117 -180
  25. package/sdk/application/Order/OrderApplicationClient.d.ts +63 -21
  26. package/sdk/application/Order/OrderApplicationClient.js +217 -17
  27. package/sdk/application/Payment/PaymentApplicationClient.d.ts +179 -149
  28. package/sdk/application/Payment/PaymentApplicationClient.js +301 -167
  29. package/sdk/application/Share/ShareApplicationClient.d.ts +7 -7
  30. package/sdk/application/Share/ShareApplicationClient.js +7 -7
  31. package/sdk/application/Theme/ThemeApplicationClient.d.ts +7 -7
  32. package/sdk/application/Theme/ThemeApplicationClient.js +10 -6
  33. package/sdk/application/User/UserApplicationClient.d.ts +103 -53
  34. package/sdk/application/User/UserApplicationClient.js +308 -49
  35. package/sdk/common/AxiosHelper.js +11 -4
  36. package/sdk/common/Constant.d.ts +27 -4
  37. package/sdk/common/Constant.js +33 -6
  38. package/sdk/common/utils.d.ts +10 -0
  39. package/sdk/common/utils.js +24 -3
  40. package/sdk/partner/FileStorage/FileStoragePartnerClient.d.ts +46 -16
  41. package/sdk/partner/FileStorage/FileStoragePartnerClient.js +266 -40
  42. package/sdk/partner/FileStorage/FileStoragePartnerModel.d.ts +163 -19
  43. package/sdk/partner/FileStorage/FileStoragePartnerModel.js +158 -14
  44. package/sdk/partner/FileStorage/FileStoragePartnerValidator.d.ts +5 -2
  45. package/sdk/partner/FileStorage/FileStoragePartnerValidator.js +23 -7
  46. package/sdk/partner/Lead/LeadPartnerClient.d.ts +9 -9
  47. package/sdk/partner/Lead/LeadPartnerClient.js +9 -9
  48. package/sdk/partner/Lead/LeadPartnerModel.d.ts +14 -9
  49. package/sdk/partner/Lead/LeadPartnerModel.js +19 -17
  50. package/sdk/partner/Logistics/LogisticsPartnerClient.d.ts +264 -49
  51. package/sdk/partner/Logistics/LogisticsPartnerClient.js +2116 -252
  52. package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +2256 -258
  53. package/sdk/partner/Logistics/LogisticsPartnerModel.js +1187 -230
  54. package/sdk/partner/Logistics/LogisticsPartnerValidator.d.ts +21 -1
  55. package/sdk/partner/Logistics/LogisticsPartnerValidator.js +218 -13
  56. package/sdk/partner/PartnerClient.d.ts +5 -2
  57. package/sdk/partner/PartnerClient.js +21 -7
  58. package/sdk/partner/Theme/ThemePartnerClient.d.ts +32 -34
  59. package/sdk/partner/Theme/ThemePartnerClient.js +42 -44
  60. package/sdk/partner/Theme/ThemePartnerModel.d.ts +142 -43
  61. package/sdk/partner/Theme/ThemePartnerModel.js +129 -44
  62. package/sdk/partner/Theme/ThemePartnerValidator.js +4 -4
  63. package/sdk/partner/Webhook/WebhookPartnerClient.d.ts +83 -27
  64. package/sdk/partner/Webhook/WebhookPartnerClient.js +446 -27
  65. package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +920 -185
  66. package/sdk/partner/Webhook/WebhookPartnerModel.js +462 -154
  67. package/sdk/partner/Webhook/WebhookPartnerValidator.d.ts +5 -0
  68. package/sdk/partner/Webhook/WebhookPartnerValidator.js +41 -3
  69. package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.d.ts +8 -7
  70. package/sdk/platform/Analytics/AnalyticsPlatformApplicationClient.js +17 -11
  71. package/sdk/platform/Analytics/AnalyticsPlatformApplicationValidator.d.ts +4 -1
  72. package/sdk/platform/Analytics/AnalyticsPlatformApplicationValidator.js +1 -1
  73. package/sdk/platform/Analytics/AnalyticsPlatformModel.d.ts +68 -13
  74. package/sdk/platform/Analytics/AnalyticsPlatformModel.js +44 -6
  75. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.d.ts +3 -33
  76. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +4 -244
  77. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.d.ts +49 -145
  78. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.js +20 -171
  79. package/sdk/platform/AuditTrail/AuditTrailPlatformValidator.d.ts +1 -39
  80. package/sdk/platform/AuditTrail/AuditTrailPlatformValidator.js +0 -35
  81. package/sdk/platform/Billing/BillingPlatformClient.d.ts +15 -15
  82. package/sdk/platform/Billing/BillingPlatformClient.js +18 -18
  83. package/sdk/platform/Billing/BillingPlatformModel.d.ts +443 -388
  84. package/sdk/platform/Billing/BillingPlatformModel.js +280 -263
  85. package/sdk/platform/Billing/BillingPlatformValidator.d.ts +16 -18
  86. package/sdk/platform/Billing/BillingPlatformValidator.js +8 -9
  87. package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +266 -203
  88. package/sdk/platform/Cart/CartPlatformApplicationClient.js +1446 -500
  89. package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +729 -100
  90. package/sdk/platform/Cart/CartPlatformApplicationValidator.js +446 -82
  91. package/sdk/platform/Cart/CartPlatformModel.d.ts +6927 -1396
  92. package/sdk/platform/Cart/CartPlatformModel.js +3065 -1316
  93. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +433 -248
  94. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +1662 -559
  95. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +464 -159
  96. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +304 -87
  97. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +383 -234
  98. package/sdk/platform/Catalog/CatalogPlatformClient.js +2475 -1557
  99. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +9573 -2678
  100. package/sdk/platform/Catalog/CatalogPlatformModel.js +5033 -1973
  101. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +364 -117
  102. package/sdk/platform/Catalog/CatalogPlatformValidator.js +281 -104
  103. package/sdk/platform/Common/CommonPlatformClient.d.ts +5 -4
  104. package/sdk/platform/Common/CommonPlatformClient.js +6 -5
  105. package/sdk/platform/Common/CommonPlatformModel.d.ts +36 -25
  106. package/sdk/platform/Common/CommonPlatformModel.js +25 -14
  107. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +80 -153
  108. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +102 -541
  109. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +36 -49
  110. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +20 -60
  111. package/sdk/platform/Communication/CommunicationPlatformClient.d.ts +1 -1
  112. package/sdk/platform/Communication/CommunicationPlatformClient.js +1 -1
  113. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +189 -43
  114. package/sdk/platform/Communication/CommunicationPlatformModel.js +165 -42
  115. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +58 -81
  116. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +68 -116
  117. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +291 -249
  118. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +243 -234
  119. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.d.ts +12 -12
  120. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.js +12 -12
  121. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +78 -65
  122. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +101 -88
  123. package/sdk/platform/Configuration/ConfigurationPlatformApplicationValidator.d.ts +20 -20
  124. package/sdk/platform/Configuration/ConfigurationPlatformApplicationValidator.js +19 -19
  125. package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +68 -34
  126. package/sdk/platform/Configuration/ConfigurationPlatformClient.js +174 -41
  127. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +667 -244
  128. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +474 -155
  129. package/sdk/platform/Configuration/ConfigurationPlatformValidator.d.ts +37 -9
  130. package/sdk/platform/Configuration/ConfigurationPlatformValidator.js +27 -8
  131. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +366 -280
  132. package/sdk/platform/Content/ContentPlatformApplicationClient.js +1435 -753
  133. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +323 -223
  134. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +335 -205
  135. package/sdk/platform/Content/ContentPlatformClient.d.ts +304 -106
  136. package/sdk/platform/Content/ContentPlatformClient.js +1842 -450
  137. package/sdk/platform/Content/ContentPlatformModel.d.ts +2582 -566
  138. package/sdk/platform/Content/ContentPlatformModel.js +1426 -558
  139. package/sdk/platform/Content/ContentPlatformValidator.d.ts +293 -114
  140. package/sdk/platform/Content/ContentPlatformValidator.js +328 -101
  141. package/sdk/platform/Discount/DiscountPlatformClient.d.ts +59 -23
  142. package/sdk/platform/Discount/DiscountPlatformClient.js +84 -23
  143. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +403 -110
  144. package/sdk/platform/Discount/DiscountPlatformModel.js +121 -107
  145. package/sdk/platform/Discount/DiscountPlatformValidator.d.ts +56 -36
  146. package/sdk/platform/Discount/DiscountPlatformValidator.js +29 -19
  147. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +12 -110
  148. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +14 -684
  149. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.d.ts +5 -94
  150. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.js +4 -115
  151. package/sdk/platform/FileStorage/FileStoragePlatformClient.d.ts +20 -20
  152. package/sdk/platform/FileStorage/FileStoragePlatformClient.js +22 -22
  153. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +90 -920
  154. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +53 -949
  155. package/sdk/platform/FileStorage/FileStoragePlatformValidator.d.ts +6 -6
  156. package/sdk/platform/FileStorage/FileStoragePlatformValidator.js +6 -6
  157. package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +10 -10
  158. package/sdk/platform/Lead/LeadPlatformApplicationClient.js +10 -10
  159. package/sdk/platform/Lead/LeadPlatformClient.d.ts +11 -11
  160. package/sdk/platform/Lead/LeadPlatformClient.js +11 -11
  161. package/sdk/platform/Lead/LeadPlatformModel.d.ts +14 -9
  162. package/sdk/platform/Lead/LeadPlatformModel.js +20 -18
  163. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +56 -9
  164. package/sdk/platform/Order/OrderPlatformApplicationClient.js +340 -10
  165. package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +128 -24
  166. package/sdk/platform/Order/OrderPlatformApplicationValidator.js +81 -19
  167. package/sdk/platform/Order/OrderPlatformClient.d.ts +517 -160
  168. package/sdk/platform/Order/OrderPlatformClient.js +1623 -384
  169. package/sdk/platform/Order/OrderPlatformModel.d.ts +10372 -1587
  170. package/sdk/platform/Order/OrderPlatformModel.js +5726 -1512
  171. package/sdk/platform/Order/OrderPlatformValidator.d.ts +539 -123
  172. package/sdk/platform/Order/OrderPlatformValidator.js +323 -92
  173. package/sdk/platform/Partner/PartnerPlatformApplicationClient.d.ts +8 -6
  174. package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +11 -9
  175. package/sdk/platform/Partner/PartnerPlatformApplicationValidator.d.ts +6 -4
  176. package/sdk/platform/Partner/PartnerPlatformApplicationValidator.js +3 -2
  177. package/sdk/platform/Partner/PartnerPlatformModel.d.ts +77 -25
  178. package/sdk/platform/Partner/PartnerPlatformModel.js +32 -21
  179. package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +144 -219
  180. package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +307 -796
  181. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.d.ts +86 -121
  182. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.js +80 -138
  183. package/sdk/platform/Payment/PaymentPlatformClient.d.ts +30 -30
  184. package/sdk/platform/Payment/PaymentPlatformClient.js +30 -30
  185. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +901 -761
  186. package/sdk/platform/Payment/PaymentPlatformModel.js +663 -583
  187. package/sdk/platform/Payment/PaymentPlatformValidator.d.ts +8 -8
  188. package/sdk/platform/Payment/PaymentPlatformValidator.js +8 -8
  189. package/sdk/platform/PlatformApplicationClient.d.ts +0 -2
  190. package/sdk/platform/PlatformApplicationClient.js +0 -4
  191. package/sdk/platform/PlatformClient.d.ts +5 -4
  192. package/sdk/platform/PlatformClient.js +32 -22
  193. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +526 -69
  194. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +3337 -337
  195. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +603 -38
  196. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +529 -32
  197. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +184 -133
  198. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +780 -491
  199. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +9408 -1666
  200. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +5720 -1765
  201. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +257 -180
  202. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +185 -127
  203. package/sdk/platform/Share/SharePlatformApplicationClient.d.ts +7 -7
  204. package/sdk/platform/Share/SharePlatformApplicationClient.js +7 -7
  205. package/sdk/platform/Share/SharePlatformModel.d.ts +45 -9
  206. package/sdk/platform/Share/SharePlatformModel.js +31 -6
  207. package/sdk/platform/Theme/ThemePlatformApplicationClient.d.ts +26 -26
  208. package/sdk/platform/Theme/ThemePlatformApplicationClient.js +38 -29
  209. package/sdk/platform/Theme/ThemePlatformApplicationValidator.d.ts +18 -3
  210. package/sdk/platform/Theme/ThemePlatformApplicationValidator.js +10 -2
  211. package/sdk/platform/Theme/ThemePlatformClient.d.ts +4 -4
  212. package/sdk/platform/Theme/ThemePlatformClient.js +4 -4
  213. package/sdk/platform/Theme/ThemePlatformModel.d.ts +103 -17
  214. package/sdk/platform/Theme/ThemePlatformModel.js +92 -23
  215. package/sdk/platform/User/UserPlatformApplicationClient.d.ts +167 -45
  216. package/sdk/platform/User/UserPlatformApplicationClient.js +950 -67
  217. package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +189 -3
  218. package/sdk/platform/User/UserPlatformApplicationValidator.js +157 -3
  219. package/sdk/platform/User/UserPlatformModel.d.ts +880 -47
  220. package/sdk/platform/User/UserPlatformModel.js +607 -46
  221. package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +33 -86
  222. package/sdk/platform/Webhook/WebhookPlatformClient.js +79 -474
  223. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +861 -422
  224. package/sdk/platform/Webhook/WebhookPlatformModel.js +469 -391
  225. package/sdk/platform/Webhook/WebhookPlatformValidator.d.ts +10 -55
  226. package/sdk/platform/Webhook/WebhookPlatformValidator.js +12 -72
  227. package/sdk/platform/index.d.ts +0 -2
  228. package/sdk/platform/index.js +0 -4
  229. package/sdk/public/Catalog/CatalogPublicClient.d.ts +22 -0
  230. package/sdk/public/Catalog/CatalogPublicClient.js +133 -0
  231. package/sdk/public/Catalog/CatalogPublicModel.d.ts +158 -0
  232. package/sdk/public/Catalog/CatalogPublicModel.js +116 -0
  233. package/sdk/public/Catalog/CatalogPublicValidator.d.ts +55 -0
  234. package/sdk/public/Catalog/CatalogPublicValidator.js +35 -0
  235. package/sdk/public/Configuration/ConfigurationPublicClient.d.ts +5 -4
  236. package/sdk/public/Configuration/ConfigurationPublicClient.js +9 -8
  237. package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +41 -21
  238. package/sdk/public/Configuration/ConfigurationPublicModel.js +28 -12
  239. package/sdk/public/Content/ContentPublicClient.d.ts +145 -2
  240. package/sdk/public/Content/ContentPublicClient.js +1067 -17
  241. package/sdk/public/Content/ContentPublicModel.d.ts +704 -3
  242. package/sdk/public/Content/ContentPublicModel.js +751 -3
  243. package/sdk/public/Content/ContentPublicValidator.d.ts +94 -3
  244. package/sdk/public/Content/ContentPublicValidator.js +119 -2
  245. package/sdk/public/Partner/PartnerPublicClient.d.ts +1 -1
  246. package/sdk/public/Partner/PartnerPublicClient.js +1 -1
  247. package/sdk/public/Partner/PartnerPublicModel.d.ts +248 -72
  248. package/sdk/public/Partner/PartnerPublicModel.js +81 -71
  249. package/sdk/public/Partner/PartnerPublicValidator.d.ts +2 -2
  250. package/sdk/public/Partner/PartnerPublicValidator.js +1 -1
  251. package/sdk/public/PublicClient.d.ts +5 -2
  252. package/sdk/public/PublicClient.js +16 -6
  253. package/sdk/public/Webhook/WebhookPublicClient.d.ts +13 -13
  254. package/sdk/public/Webhook/WebhookPublicClient.js +13 -13
  255. package/sdk/public/Webhook/WebhookPublicModel.d.ts +249 -67
  256. package/sdk/public/Webhook/WebhookPublicModel.js +81 -61
  257. package/sdk/public/Webhook/WebhookPublicValidator.d.ts +4 -4
  258. package/sdk/public/Webhook/WebhookPublicValidator.js +4 -4
  259. package/sdk/public/index.d.ts +1 -0
  260. package/sdk/public/index.js +2 -0
  261. package/utility.d.ts +3 -0
  262. package/utility.js +7 -0
  263. package/sdk/application/Rewards/RewardsApplicationClient.d.ts +0 -79
  264. package/sdk/application/Rewards/RewardsApplicationClient.js +0 -315
  265. package/sdk/application/Webhook/WebhookApplicationClient.d.ts +0 -19
  266. package/sdk/application/Webhook/WebhookApplicationClient.js +0 -72
  267. package/sdk/platform/Finance/FinancePlatformClient.d.ts +0 -320
  268. package/sdk/platform/Finance/FinancePlatformClient.js +0 -2333
  269. package/sdk/platform/Finance/FinancePlatformModel.d.ts +0 -2890
  270. package/sdk/platform/Finance/FinancePlatformModel.js +0 -2148
  271. package/sdk/platform/Finance/FinancePlatformValidator.d.ts +0 -284
  272. package/sdk/platform/Finance/FinancePlatformValidator.js +0 -354
  273. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.d.ts +0 -136
  274. package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +0 -976
  275. package/sdk/platform/Rewards/RewardsPlatformApplicationValidator.d.ts +0 -152
  276. package/sdk/platform/Rewards/RewardsPlatformApplicationValidator.js +0 -157
  277. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +0 -382
  278. package/sdk/platform/Rewards/RewardsPlatformModel.js +0 -408
@@ -1,7 +1,31 @@
1
1
  const Joi = require("joi");
2
2
 
3
+ /**
4
+ * @typedef CurrencyExchangeResponseV2
5
+ * @property {string} base - The 3-letter ISO 4217 code representing the base currency.
6
+ * @property {string} base_currency_name - The name of the base currency.
7
+ * @property {number} ttl_seconds - Time in seconds for which the exchange rates
8
+ * are valid.
9
+ * @property {CurrencyExchangeItem[]} items - List of exchange rates and currency details.
10
+ * @property {number} total - Total number of currency exchange items.
11
+ */
12
+
13
+ /**
14
+ * @typedef CurrencyExchangeItem
15
+ * @property {string} currency_code - 3-letter ISO 4217 exchange currency code.
16
+ * @property {string} name - Name of the exchange currency
17
+ * @property {number} rate - Exchange rate of the currency with respect to the
18
+ * base currency.
19
+ * @property {string} country_code - ISO 3166 country code.
20
+ * @property {string} country_name - Name of the country using this currency.
21
+ * @property {string} subunit - The name of the subunit for the currency.
22
+ * @property {number} decimal_digits - Number of decimal digits the currency supports.
23
+ * @property {string} symbol - The symbol of the currency.
24
+ */
25
+
3
26
  /**
4
27
  * @typedef ApplicationInventory
28
+ * @property {SearchConfig} [search]
5
29
  * @property {AppInventoryConfig} [inventory]
6
30
  * @property {AuthenticationConfig} [authentication]
7
31
  * @property {ArticleAssignmentConfig} [article_assignment]
@@ -11,6 +35,7 @@ const Joi = require("joi");
11
35
  * @property {AppOrderConfig} [order]
12
36
  * @property {AppLogisticsConfig} [logistics]
13
37
  * @property {PiiMasking} [pii_masking]
38
+ * @property {ChannelCapabilities} [channel_capabilities]
14
39
  * @property {string[]} [tags]
15
40
  * @property {number} [__v]
16
41
  * @property {string} [business] - Indicates the business type for sales channel
@@ -19,8 +44,7 @@ const Joi = require("joi");
19
44
  * or not for sales channel inventory
20
45
  * @property {CommunicationConfig} [communication]
21
46
  * @property {string[]} [platforms]
22
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
23
- * of the sales channel inventory
47
+ * @property {string} [_id] - The unique identifier of the sales channel inventory
24
48
  * @property {LoyaltyPointsConfig} [loyalty_points]
25
49
  * @property {string} [app] - Current sales channel ID
26
50
  * @property {string} [created_at] - ISO 8601 timestamp of sales channel
@@ -36,13 +60,76 @@ const Joi = require("joi");
36
60
  * @property {boolean} [enabled]
37
61
  */
38
62
 
63
+ /**
64
+ * @typedef ChannelCapabilities
65
+ * @property {string[]} commerce_model - Commerce model types supported by the
66
+ * sales channel. Defines whether the channel operates as B2C/D2C
67
+ * (business-to-consumer/direct-to-consumer) or B2B (business-to-business).
68
+ * @property {string[]} business_format - Business format types for the sales
69
+ * channel. Options include standard_commerce for traditional e-commerce,
70
+ * quick_commerce for rapid delivery models, and qsr for quick service
71
+ * restaurant operations.
72
+ * @property {OrderingSources[]} ordering_sources - Represents an ordering
73
+ * source that can be associated with a sales channel. Ordering sources define
74
+ * the origin or platform from which orders are placed, enabling tracking and
75
+ * differentiation of orders based on their source.
76
+ * @property {string} [seller_model] - Seller model for the sales channel.
77
+ * single_seller for single seller, marketplace for multiple platforms,
78
+ * cross_selling for franchise-enabled.
79
+ */
80
+
81
+ /**
82
+ * @typedef OrderingSources
83
+ * @property {string} key - Unique identifier slug for the ordering source. Used
84
+ * to reference and identify the source programmatically.
85
+ * @property {string} name - Human-readable display name of the ordering source.
86
+ * Shown in UI for easy identification by users.
87
+ */
88
+
89
+ /**
90
+ * @typedef FstIdentification
91
+ * @property {boolean} [enabled] - Indicates whether search query interpretation
92
+ * is enabled for the application.
93
+ */
94
+
95
+ /**
96
+ * @typedef SkgIdentification
97
+ * @property {boolean} [enabled] - Indicates whether semantic knowledge
98
+ * graph-based search is enabled for the application.
99
+ */
100
+
101
+ /**
102
+ * @typedef QuerySuggestions
103
+ * @property {boolean} [enabled] - Indicates whether to enable or disable query
104
+ * suggestions powered by the GPT model using the current live catalog within
105
+ * the application.
106
+ * @property {number} [max_limit] - Specifies the maximum number of query
107
+ * suggestions that can be returned.
108
+ */
109
+
110
+ /**
111
+ * @typedef SearchConfig
112
+ * @property {FstIdentification} [fst_identification]
113
+ * @property {QuerySuggestions} [query_suggestions]
114
+ * @property {SkgIdentification} [skg_identification]
115
+ */
116
+
39
117
  /**
40
118
  * @typedef AppInventoryConfig
119
+ * @property {DeliveryStrategy} [delivery_strategy]
41
120
  * @property {InventoryBrand} [brand]
42
121
  * @property {InventoryStore} [store]
43
122
  * @property {InventoryCategory} [category]
44
123
  * @property {InventoryPrice} [price]
45
124
  * @property {InventoryDiscount} [discount]
125
+ * @property {string} [price_strategy] - Indicates whether price strategy
126
+ * enabled or not in an application.
127
+ * @property {boolean} [international] - Indicates whether internation price
128
+ * factory enabled or not in an application.
129
+ * @property {boolean} [strategy_change_pending] - Indicates whether price
130
+ * strategy change is pending or not in an application.
131
+ * @property {string} [strategy_modified_at] - ISO 8601 timestamp of last known
132
+ * modifications to the sales channel feature configuration
46
133
  * @property {boolean} [out_of_stock] - Indicates whether out of stock products
47
134
  * are allowed to show up on the website
48
135
  * @property {boolean} [only_verified_products] - Show only verified products
@@ -54,10 +141,6 @@ const Joi = require("joi");
54
141
  * @property {Object[]} [company_store] - List of selling locations whose
55
142
  * inventory is available to the sales channel for displaying on the website
56
143
  * @property {number} [company_id]
57
- * @property {boolean} [enable_zone_overlapping] - Power product listing with
58
- * overlapping zones
59
- * @property {boolean} [sort_popular_first] - Give preference to popularity over
60
- * score in product listing sort
61
144
  */
62
145
 
63
146
  /**
@@ -143,6 +226,10 @@ const Joi = require("joi");
143
226
  * @property {boolean} [revenue_engine_coupon] - Allow coupon apply and credits
144
227
  * together. Default value is false.
145
228
  * @property {PanCardConfig} [pan_card]
229
+ * @property {boolean} [engage_enabled] - If this is enabled, user can earn and
230
+ * redeem loyalty points for the sales channel.
231
+ * @property {boolean} [offer_enabled] - If this is enabled, user can apply
232
+ * coupons and promotions for the sales channel.
146
233
  */
147
234
 
148
235
  /**
@@ -231,6 +318,21 @@ const Joi = require("joi");
231
318
  * @property {boolean} [enabled] - Allow orders to be accepted from the sales channel
232
319
  * @property {boolean} [force_reassignment] - Allow force reassigning of an order
233
320
  * @property {string} [message] - Reason for reassigning an order
321
+ * @property {ProcessingSchedule} [processing_schedule]
322
+ */
323
+
324
+ /**
325
+ * @typedef ProcessingSchedule
326
+ * @property {boolean} [is_scheduled] - Indicates whether the order processing
327
+ * is scheduled for future.
328
+ * @property {StartAfter} [start_after]
329
+ */
330
+
331
+ /**
332
+ * @typedef StartAfter
333
+ * @property {number} [days] - Number of days to wait before starting the process.
334
+ * @property {number} [hours] - Number of hours to wait before starting the process.
335
+ * @property {number} [minutes] - Number of minutes to wait before starting the process.
234
336
  */
235
337
 
236
338
  /**
@@ -249,6 +351,7 @@ const Joi = require("joi");
249
351
 
250
352
  /**
251
353
  * @typedef AppInventoryPartialUpdate
354
+ * @property {SearchConfig} [search]
252
355
  * @property {RewardPointsConfig} [reward_points]
253
356
  * @property {AppCartConfig} [cart]
254
357
  * @property {AppPaymentConfig} [payment]
@@ -265,19 +368,19 @@ const Joi = require("joi");
265
368
  */
266
369
 
267
370
  /**
268
- * @typedef CompanyByBrandsRequest
371
+ * @typedef CompanyByBrandsRequestSchema
269
372
  * @property {number} brands - Brand UID
270
373
  * @property {string} [search_text] - A search field for finding a company by its name
271
374
  */
272
375
 
273
376
  /**
274
- * @typedef CompanyByBrandsResponse
377
+ * @typedef CompanyByBrandsResponseSchema
275
378
  * @property {BrandCompanyInfo[]} [items]
276
379
  * @property {Page} [page]
277
380
  */
278
381
 
279
382
  /**
280
- * @typedef StoreByBrandsRequest
383
+ * @typedef StoreByBrandsRequestSchema
281
384
  * @property {number} [company_id] - Current company ID for current company
282
385
  * stores only. Don't send in case cross-selling (franchise) is enabled.
283
386
  * @property {number} brands - Brand UID
@@ -285,7 +388,7 @@ const Joi = require("joi");
285
388
  */
286
389
 
287
390
  /**
288
- * @typedef StoreByBrandsResponse
391
+ * @typedef StoreByBrandsResponseSchema
289
392
  * @property {BrandStoreInfo[]} [items]
290
393
  * @property {Page} [page]
291
394
  */
@@ -313,12 +416,12 @@ const Joi = require("joi");
313
416
  */
314
417
 
315
418
  /**
316
- * @typedef BrandsByCompanyResponse
419
+ * @typedef BrandsByCompanyResponseSchema
317
420
  * @property {CompanyBrandInfo[]} [brands]
318
421
  */
319
422
 
320
423
  /**
321
- * @typedef ValidationFailedResponse
424
+ * @typedef ValidationFailedResponseSchema
322
425
  * @property {string} [message] - Response message for failed validation
323
426
  */
324
427
 
@@ -350,20 +453,20 @@ const Joi = require("joi");
350
453
  */
351
454
 
352
455
  /**
353
- * @typedef CreateApplicationRequest
456
+ * @typedef CreateApplicationRequestSchema
354
457
  * @property {App} [app]
355
458
  * @property {ApplicationInventory} [configuration]
356
459
  * @property {AppDomain} [domain]
357
460
  */
358
461
 
359
462
  /**
360
- * @typedef CreateAppResponse
463
+ * @typedef CreateAppResponseSchema
361
464
  * @property {Application} [app]
362
465
  * @property {ApplicationInventory} [configuration]
363
466
  */
364
467
 
365
468
  /**
366
- * @typedef ApplicationsResponse
469
+ * @typedef ApplicationsResponseSchema
367
470
  * @property {Application[]} [items]
368
471
  * @property {Page} [page]
369
472
  */
@@ -371,8 +474,7 @@ const Joi = require("joi");
371
474
  /**
372
475
  * @typedef MobileAppConfiguration
373
476
  * @property {boolean} [is_active] - Indicates the availability of the mobile build
374
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
375
- * for mobile application configuration
477
+ * @property {string} [_id] - The unique identifier for mobile application configuration
376
478
  * @property {string} [app_name] - Name of the mobile app
377
479
  * @property {LandingImage} [landing_image]
378
480
  * @property {SplashImage} [splash_image]
@@ -401,7 +503,7 @@ const Joi = require("joi");
401
503
  */
402
504
 
403
505
  /**
404
- * @typedef MobileAppConfigRequest
506
+ * @typedef MobileAppConfigRequestSchema
405
507
  * @property {string} [app_name] - Name of the mobile app
406
508
  * @property {LandingImage} [landing_image]
407
509
  * @property {SplashImage} [splash_image]
@@ -417,7 +519,7 @@ const Joi = require("joi");
417
519
 
418
520
  /**
419
521
  * @typedef BuildVersion
420
- * @property {string} [_id] - 24-digit Mongo Object ID
522
+ * @property {string} [_id] - Primary Identifier of the build version.
421
523
  * @property {string} [application] - Application ID of the sales channel
422
524
  * @property {string} [platform_type] - Device platform for which the mobile app
423
525
  * was built, e.g. android, ios.
@@ -436,8 +538,8 @@ const Joi = require("joi");
436
538
 
437
539
  /**
438
540
  * @typedef AppSupportedCurrency
439
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
440
- * of the currency configuration supported by the application
541
+ * @property {string} [_id] - The unique identifier of the currency
542
+ * configuration supported by the application
441
543
  * @property {string[]} [supported_currency]
442
544
  * @property {string} [application] - Alphanumeric ID allotted to an application
443
545
  * (sales channel website) created within a business account.
@@ -450,8 +552,7 @@ const Joi = require("joi");
450
552
 
451
553
  /**
452
554
  * @typedef DefaultCurrency
453
- * @property {string} [ref] - The unique identifier (24-digit Mongo Object ID)
454
- * of the default currency
555
+ * @property {string} [ref] - The unique identifier of the default currency
455
556
  * @property {string} [code] - 3-character code of the default currency, e.g.
456
557
  * INR, EUR, USD
457
558
  */
@@ -459,8 +560,7 @@ const Joi = require("joi");
459
560
  /**
460
561
  * @typedef DomainAdd
461
562
  * @property {string} [name] - Full domain name, e.g. uniket.hostx0.de
462
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
463
- * of the domain
563
+ * @property {string} [_id] - The unique identifier of the domain
464
564
  * @property {boolean} [verified] - Domain is verified or not (indicates if A
465
565
  * records and TXT records are correct)
466
566
  * @property {boolean} [is_primary] - Domain is primary or not (indicates if the
@@ -473,15 +573,14 @@ const Joi = require("joi");
473
573
  */
474
574
 
475
575
  /**
476
- * @typedef DomainAddRequest
576
+ * @typedef DomainAddRequestSchema
477
577
  * @property {DomainAdd} [domain]
478
578
  */
479
579
 
480
580
  /**
481
581
  * @typedef Domain
482
582
  * @property {string} [name] - Full domain name, e.g. newton.com
483
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
484
- * of the sales channel domain
583
+ * @property {string} [_id] - The unique identifier of the sales channel domain
485
584
  * @property {boolean} [verified] - Domain is verified or not. TXT and A records
486
585
  * should propagate correctly.
487
586
  * @property {boolean} [is_primary] - Domain is primary or not. Primary domain
@@ -492,15 +591,14 @@ const Joi = require("joi");
492
591
  */
493
592
 
494
593
  /**
495
- * @typedef DomainsResponse
594
+ * @typedef DomainsResponseSchema
496
595
  * @property {Domain[]} [domains]
497
596
  */
498
597
 
499
598
  /**
500
599
  * @typedef UpdateDomain
501
600
  * @property {string} [name] - Full domain name, e.g. zenz.com
502
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
503
- * of the domain
601
+ * @property {string} [_id] - The unique identifier of the domain
504
602
  * @property {boolean} [verified] - Domain is verified or not (indicates if A
505
603
  * records and TXT records are correct)
506
604
  * @property {boolean} [is_primary] - Domain is primary or not (indicates if the
@@ -510,14 +608,14 @@ const Joi = require("joi");
510
608
  */
511
609
 
512
610
  /**
513
- * @typedef UpdateDomainTypeRequest
611
+ * @typedef UpdateDomainTypeRequestSchema
514
612
  * @property {UpdateDomain} [domain]
515
613
  * @property {string} [action] - Shows domain is made primary domain for the
516
614
  * sales channel or shorlink is created for the sales channel domain
517
615
  */
518
616
 
519
617
  /**
520
- * @typedef DomainStatusRequest
618
+ * @typedef DomainStatusRequestSchema
521
619
  * @property {string} [domain_url] - URL of the domain, e.g. uniket.hostx0.de
522
620
  */
523
621
 
@@ -529,16 +627,17 @@ const Joi = require("joi");
529
627
  */
530
628
 
531
629
  /**
532
- * @typedef DomainStatusResponse
630
+ * @typedef DomainStatusResponseSchema
533
631
  * @property {boolean} [connected] - Check if domain is live and mapped to
534
632
  * appropriate IP of Fynd Servers
535
633
  * @property {DomainStatus[]} [status]
536
634
  */
537
635
 
538
636
  /**
539
- * @typedef DomainSuggestionsRequest
637
+ * @typedef DomainSuggestionsRequestSchema
540
638
  * @property {string} [domain_url] - Domain url
541
- * @property {boolean} [custom] - Get suggestions for custom domains or Fynd domains
639
+ * @property {boolean} [custom_domain] - Get suggestions for custom domains or
640
+ * Fynd domains
542
641
  */
543
642
 
544
643
  /**
@@ -553,12 +652,12 @@ const Joi = require("joi");
553
652
  */
554
653
 
555
654
  /**
556
- * @typedef DomainSuggestionsResponse
655
+ * @typedef DomainSuggestionsResponseSchema
557
656
  * @property {DomainSuggestion[]} [domains] - Domain URL
558
657
  */
559
658
 
560
659
  /**
561
- * @typedef SuccessMessageResponse
660
+ * @typedef SuccessMessageResponseSchema
562
661
  * @property {boolean} [success] - Shows whether domain was deleted successfully
563
662
  * @property {string} [message] - Success message shown to the user (in a string format)
564
663
  */
@@ -580,7 +679,7 @@ const Joi = require("joi");
580
679
  */
581
680
 
582
681
  /**
583
- * @typedef CompaniesResponse
682
+ * @typedef CompaniesResponseSchema
584
683
  * @property {AppInventoryCompanies[]} [items]
585
684
  * @property {Page} [page]
586
685
  */
@@ -594,15 +693,15 @@ const Joi = require("joi");
594
693
  */
595
694
 
596
695
  /**
597
- * @typedef StoresResponse
696
+ * @typedef StoresResponseSchema
598
697
  * @property {AppInventoryStores[]} [items]
599
698
  * @property {Page} [page]
600
699
  */
601
700
 
602
701
  /**
603
702
  * @typedef AppInventoryStores
604
- * @property {string} [_id] - The unique identifier of the store (24-digit Mongo
605
- * Object ID) in the sales channel inventory
703
+ * @property {string} [_id] - The unique identifier of the store in the sales
704
+ * channel inventory
606
705
  * @property {string} [modified_on] - ISO 8601 timestamp of last known updation
607
706
  * to the stores in sales channel inventory
608
707
  * @property {number} [uid] - Sales channel inventory store UID
@@ -621,7 +720,7 @@ const Joi = require("joi");
621
720
  */
622
721
 
623
722
  /**
624
- * @typedef FilterOrderingStoreRequest
723
+ * @typedef FilterOrderingStoreRequestSchema
625
724
  * @property {boolean} [all_stores] - Allow all stores from the ordering stores
626
725
  * @property {number[]} [deployed_stores]
627
726
  * @property {string} [q] - Store code or name of the ordering store
@@ -635,8 +734,7 @@ const Joi = require("joi");
635
734
  * @property {string} [type] - Permitted values are 'hard' and 'soft'. For hard
636
735
  * type delivery, store selection is compulsory. For soft type, delivery store
637
736
  * selection is optional.
638
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
639
- * of the ordering stores
737
+ * @property {string} [_id] - The unique identifier of the ordering stores
640
738
  * @property {string} [app] - Alphanumeric ID allotted to an application (sales
641
739
  * channel website) created within a business account
642
740
  * @property {number} [__v]
@@ -648,7 +746,7 @@ const Joi = require("joi");
648
746
  */
649
747
 
650
748
  /**
651
- * @typedef OrderingStoreSelectRequest
749
+ * @typedef OrderingStoreSelectRequestSchema
652
750
  * @property {OrderingStoreSelect} ordering_store
653
751
  */
654
752
 
@@ -667,8 +765,7 @@ const Joi = require("joi");
667
765
  * @typedef OtherSellerApplication
668
766
  * @property {string} [name] - Name of the other seller's sales channel
669
767
  * @property {string} [description] - Basic details about the other seller's sales channel
670
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
671
- * of the other seller's sales channel
768
+ * @property {string} [_id] - The unique identifier of the other seller's sales channel
672
769
  * @property {string} [domain] - Domain URL of the other seller's sales channel
673
770
  * @property {OtherSellerCompany} [company]
674
771
  * @property {string} [opt_type] - Inventory opted by the other seller's sales
@@ -682,11 +779,10 @@ const Joi = require("joi");
682
779
  */
683
780
 
684
781
  /**
685
- * @typedef OptedApplicationResponse
782
+ * @typedef OptedApplicationResponseSchema
686
783
  * @property {string} [name] - Name of the other seller's sales channel
687
784
  * @property {string} [description] - Basic details about the other seller's sales channel
688
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
689
- * of the other seller's sales channel
785
+ * @property {string} [_id] - The unique identifier of the other seller's sales channel
690
786
  * @property {string} [domain] - Domain URL of the other seller's sales channel
691
787
  * @property {OptedCompany} [company]
692
788
  * @property {OptedInventory} [opted_inventory]
@@ -739,10 +835,9 @@ const Joi = require("joi");
739
835
  */
740
836
 
741
837
  /**
742
- * @typedef TokenResponse
838
+ * @typedef TokenResponseSchema
743
839
  * @property {Tokens} [tokens]
744
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
745
- * of the token
840
+ * @property {string} [_id] - The unique identifier of the token
746
841
  * @property {string} [application] - Alphanumeric ID allotted to the current
747
842
  * application created within the current business account
748
843
  * @property {string} [created_at] - ISO 8601 timestamp of token creation
@@ -951,6 +1046,28 @@ const Joi = require("joi");
951
1046
  * address of the store, should be displayed upon visiting the website
952
1047
  */
953
1048
 
1049
+ /**
1050
+ * @typedef BuyboxFeature
1051
+ * @property {boolean} [show_name] - Allow users to see seller/stores name on
1052
+ * PDP (product detail page).
1053
+ * @property {boolean} [enable_selection] - Allow selection of sellers/stores on
1054
+ * PDP (product detail page).
1055
+ * @property {boolean} [is_seller_buybox_enabled] - Toggle buybox listing
1056
+ * between sellers and stores. True indicates seller listing, while False
1057
+ * indicates store listing.
1058
+ */
1059
+
1060
+ /**
1061
+ * @typedef DeliveryStrategy
1062
+ * @property {string} [value] - Indicates the delivery strategy value.
1063
+ */
1064
+
1065
+ /**
1066
+ * @typedef FulfillmentOption
1067
+ * @property {number} [count] - Total count of available fulfillment options
1068
+ * configured for a specific application.
1069
+ */
1070
+
954
1071
  /**
955
1072
  * @typedef AppFeature
956
1073
  * @property {ProductDetailFeature} [product_detail]
@@ -962,8 +1079,23 @@ const Joi = require("joi");
962
1079
  * @property {QrFeature} [qr]
963
1080
  * @property {PcrFeature} [pcr]
964
1081
  * @property {OrderFeature} [order]
965
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
966
- * for the sales channel features
1082
+ * @property {SecurityFeature} [security]
1083
+ * @property {BuyboxFeature} [buybox]
1084
+ * @property {DeliveryStrategy} [delivery_strategy]
1085
+ * @property {OrderingSources[]} [ordering_sources] - Represents an ordering
1086
+ * source that can be associated with a sales channel. Ordering sources define
1087
+ * the origin or platform from which orders are placed, enabling tracking and
1088
+ * differentiation of orders based on their source.
1089
+ * @property {string} [price_strategy] - Indicates whether price strategy
1090
+ * enabled or not in an application.
1091
+ * @property {boolean} [international] - Indicates whether internation price
1092
+ * factory enabled or not in an application.
1093
+ * @property {boolean} [strategy_change_pending] - Indicates whether price
1094
+ * strategy change is pending or not in an application.
1095
+ * @property {string} [strategy_modified_at] - ISO 8601 timestamp of last known
1096
+ * modifications to the sales channel feature configuration
1097
+ * @property {FulfillmentOption} [fulfillment_option]
1098
+ * @property {string} [_id] - The unique identifier for the sales channel features
967
1099
  * @property {string} [app] - Application ID of the sales channel
968
1100
  * @property {string} [created_at] - ISO 8601 timestamp showing the date when
969
1101
  * the features were configured
@@ -1081,19 +1213,32 @@ const Joi = require("joi");
1081
1213
  */
1082
1214
 
1083
1215
  /**
1084
- * @typedef AppFeatureRequest
1216
+ * @typedef SecurityFeature
1217
+ * @property {AllowedDomain[]} [domains] - List of allowed domains for security
1218
+ * restrictions.
1219
+ */
1220
+
1221
+ /**
1222
+ * @typedef AllowedDomain
1223
+ * @property {string} host - The host URL for the allowed domain.
1224
+ * @property {string} [url_scheme] - The protocol/scheme to use for the domain.
1225
+ * Default is https.
1226
+ */
1227
+
1228
+ /**
1229
+ * @typedef AppFeatureRequestSchema
1085
1230
  * @property {AppFeature} [feature]
1086
1231
  */
1087
1232
 
1088
1233
  /**
1089
- * @typedef AppFeatureResponse
1234
+ * @typedef AppFeatureResponseSchema
1090
1235
  * @property {AppFeature} [feature]
1091
1236
  */
1092
1237
 
1093
1238
  /**
1094
1239
  * @typedef Currency
1095
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1096
- * of the current sales channel supported currency
1240
+ * @property {string} [_id] - The unique identifier of the current sales channel
1241
+ * supported currency
1097
1242
  * @property {boolean} [is_active] - Shows currency is enabled or not in current
1098
1243
  * sales channel
1099
1244
  * @property {string} [name] - Name of the currency, e.g Indian Rupee
@@ -1162,11 +1307,9 @@ const Joi = require("joi");
1162
1307
  * @property {boolean} [is_internal] - Indicates whether a sales channel is
1163
1308
  * internal or not
1164
1309
  * @property {boolean} [is_active] - Indicates sales channel is active or not active
1165
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1166
- * of the sales channel
1310
+ * @property {string} [_id] - The unique identifier of the sales channel
1167
1311
  * @property {string} [name] - Name of the sales channel, e.g. Zenz Fashion
1168
- * @property {string} [owner] - The unique identifier (24-digit Mongo Object ID)
1169
- * of owner who owns the application
1312
+ * @property {string} [owner] - The unique identifier of owner who owns the application
1170
1313
  * @property {number} [company_id] - Numeric ID allotted to a business account
1171
1314
  * where the sales channel exists
1172
1315
  * @property {string} [token] - Random generated fix length string for sales
@@ -1204,11 +1347,9 @@ const Joi = require("joi");
1204
1347
  * @property {boolean} [is_internal] - Indicates whether a sales channel is
1205
1348
  * internal or not
1206
1349
  * @property {boolean} [is_active] - Indicates sales channel is active or not active
1207
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1208
- * of the sales channel
1350
+ * @property {string} [_id] - The unique identifier of the sales channel
1209
1351
  * @property {string} [name] - Name of the sales channel, e.g. Zenz Fashion
1210
- * @property {string} [owner] - The unique identifier (24-digit Mongo Object ID)
1211
- * of owner who owns the application
1352
+ * @property {string} [owner] - The unique identifier of owner who owns the application
1212
1353
  * @property {number} [company_id] - Numeric ID allotted to a business account
1213
1354
  * where the sales channel exists
1214
1355
  * @property {string} [token] - Random generated fix length string for sales
@@ -1247,20 +1388,21 @@ const Joi = require("joi");
1247
1388
  */
1248
1389
 
1249
1390
  /**
1250
- * @typedef InvalidPayloadRequest
1391
+ * @typedef InvalidPayloadRequestSchema
1251
1392
  * @property {string} [message] - Error message when request body payload is improper
1252
1393
  * @property {boolean} [success] - Flag for required not successfull.
1253
1394
  */
1254
1395
 
1255
1396
  /**
1256
1397
  * @typedef Page
1257
- * @property {number} [item_total] - The total number of items on the page.
1398
+ * @property {number} [item_total] - The total number of all items across all pages.
1258
1399
  * @property {string} [next_id] - The identifier for the next page.
1259
1400
  * @property {boolean} [has_previous] - Indicates whether there is a previous page.
1260
1401
  * @property {boolean} [has_next] - Indicates whether there is a next page.
1261
1402
  * @property {number} [current] - The current page number.
1262
- * @property {string} type - The type of the page, such as 'PageType'.
1403
+ * @property {string} type - The type of the page, can be 'cursor' or 'number'.
1263
1404
  * @property {number} [size] - The number of items per page.
1405
+ * @property {number} [page_size] - The number of items per page.
1264
1406
  */
1265
1407
 
1266
1408
  /**
@@ -1271,8 +1413,7 @@ const Joi = require("joi");
1271
1413
  * @property {Links[]} [links]
1272
1414
  * @property {string} [copyright_text] - Copyright statement usually seen at the
1273
1415
  * site's footer
1274
- * @property {string} [_id] - Unique identifier (24-digit Mongo Object ID) of
1275
- * the application information
1416
+ * @property {string} [_id] - Unique identifier of the application information
1276
1417
  * @property {BusinessHighlights[]} [business_highlights]
1277
1418
  * @property {string} [application] - Alphanumeric ID allotted to a sales
1278
1419
  * channel application created within a business account
@@ -1409,8 +1550,7 @@ const Joi = require("joi");
1409
1550
 
1410
1551
  /**
1411
1552
  * @typedef BusinessHighlights
1412
- * @property {string} [_id] - Unique identifier (24-digit Mongo Object ID) of
1413
- * the related business
1553
+ * @property {string} [_id] - Unique identifier of the related business
1414
1554
  * @property {string} [title] - Title of the business highlight, e.g. Superfast Delivery
1415
1555
  * @property {string} [icon] - Hosted URL of icon image representing the
1416
1556
  * business highlight
@@ -1428,21 +1568,20 @@ const Joi = require("joi");
1428
1568
  * @property {SecureUrl} [banner]
1429
1569
  * @property {Domain} [domain]
1430
1570
  * @property {Domain[]} [domains]
1431
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1432
- * for the sales channel details
1571
+ * @property {string} [_id] - The unique identifier for the sales channel details
1433
1572
  * @property {string} [slug]
1434
1573
  * @property {number} [company_id]
1435
1574
  */
1436
1575
 
1437
1576
  /**
1438
- * @typedef CurrenciesResponse
1577
+ * @typedef CurrenciesResponseSchema
1439
1578
  * @property {Currency[]} [items]
1440
1579
  */
1441
1580
 
1442
1581
  /**
1443
- * @typedef AppCurrencyResponse
1444
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1445
- * of the currency configuration supported by the application
1582
+ * @typedef AppCurrencyResponseSchema
1583
+ * @property {string} [_id] - The unique identifier of the currency
1584
+ * configuration supported by the application
1446
1585
  * @property {string} [application] - Alphanumeric ID allotted to an application
1447
1586
  * (sales channel website) created within a business account
1448
1587
  * @property {DefaultCurrency} [default_currency]
@@ -1465,7 +1604,7 @@ const Joi = require("joi");
1465
1604
  * @property {string} [address1] - Address of the opted store
1466
1605
  * @property {StoreLatLong} [lat_long]
1467
1606
  * @property {string} [address2] - Address of the opted store
1468
- * @property {number} [pincode] - 6-digit PIN code of the opted store location
1607
+ * @property {string} [pincode] - 6-digit PIN code of the opted store location
1469
1608
  * @property {string} [country] - Country of the opted store, e.g. India
1470
1609
  * @property {string} [city] - City of the opted store, e.g. Mumbai
1471
1610
  * @property {string} [sector] - Sector for the opted store.
@@ -1476,15 +1615,14 @@ const Joi = require("joi");
1476
1615
  /**
1477
1616
  * @typedef OrderingStore
1478
1617
  * @property {OptedStoreAddress} [address]
1479
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1480
- * of the ordering store
1618
+ * @property {string} [_id] - The unique identifier of the ordering store
1481
1619
  * @property {number} [uid] - Ordering store UID
1482
1620
  * @property {string} [name] - Store name of the ordering store
1483
1621
  * @property {string} [display_name] - Display name of the ordering store
1484
1622
  * @property {string} [store_type] - Store type of the ordering store, e.g.
1485
1623
  * high_street, mall, warehouse
1486
1624
  * @property {string} [store_code] - Store code of the ordering store, e.g. MUM-102
1487
- * @property {number} [pincode] - 6-digit PIN Code of the ordering store, e.g. 400001
1625
+ * @property {string} [pincode] - 6-digit PIN Code of the ordering store, e.g. 400001
1488
1626
  * @property {string} [code] - Code of the ordering store (usually same as Store Code)
1489
1627
  */
1490
1628
 
@@ -1497,8 +1635,7 @@ const Joi = require("joi");
1497
1635
  * @property {boolean} [enabled] - Allow ordering stores for current sales channel
1498
1636
  * @property {string} [type] - For hard type delivery, store selection is
1499
1637
  * compulsory. For soft type, delivery store selection is optional.
1500
- * @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
1501
- * of the ordering store
1638
+ * @property {string} [_id] - The unique identifier of the ordering store
1502
1639
  * @property {string} [app] - Alphanumeric ID allotted to an application (sales
1503
1640
  * channel website) created within a business account
1504
1641
  * @property {number} [__v] - Version key for tracking ordering stores. Default
@@ -1506,15 +1643,54 @@ const Joi = require("joi");
1506
1643
  */
1507
1644
 
1508
1645
  /**
1509
- * @typedef OrderingStoresResponse
1646
+ * @typedef OrderingStoresResponseSchema
1510
1647
  * @property {Page} [page]
1511
1648
  * @property {OrderingStore[]} [items]
1512
1649
  */
1513
1650
 
1651
+ /**
1652
+ * @typedef ValidationErrors
1653
+ * @property {ValidationError[]} errors - A list of validation errors in the request.
1654
+ */
1655
+
1656
+ /**
1657
+ * @typedef ValidationError
1658
+ * @property {string} message - A brief description of the error encountered.
1659
+ * @property {string} field - The field in the request that caused the error.
1660
+ */
1661
+
1514
1662
  class ConfigurationPlatformModel {
1663
+ /** @returns {CurrencyExchangeResponseV2} */
1664
+ static CurrencyExchangeResponseV2() {
1665
+ return Joi.object({
1666
+ base: Joi.string().allow("").required(),
1667
+ base_currency_name: Joi.string().allow("").required(),
1668
+ ttl_seconds: Joi.number().required(),
1669
+ items: Joi.array()
1670
+ .items(ConfigurationPlatformModel.CurrencyExchangeItem())
1671
+ .required(),
1672
+ total: Joi.number().required(),
1673
+ });
1674
+ }
1675
+
1676
+ /** @returns {CurrencyExchangeItem} */
1677
+ static CurrencyExchangeItem() {
1678
+ return Joi.object({
1679
+ currency_code: Joi.string().allow("").required(),
1680
+ name: Joi.string().allow("").required(),
1681
+ rate: Joi.number().required(),
1682
+ country_code: Joi.string().allow("").required(),
1683
+ country_name: Joi.string().allow("").required(),
1684
+ subunit: Joi.string().allow("").required(),
1685
+ decimal_digits: Joi.number().required(),
1686
+ symbol: Joi.string().allow("").required(),
1687
+ });
1688
+ }
1689
+
1515
1690
  /** @returns {ApplicationInventory} */
1516
1691
  static ApplicationInventory() {
1517
1692
  return Joi.object({
1693
+ search: ConfigurationPlatformModel.SearchConfig(),
1518
1694
  inventory: ConfigurationPlatformModel.AppInventoryConfig(),
1519
1695
  authentication: ConfigurationPlatformModel.AuthenticationConfig(),
1520
1696
  article_assignment: ConfigurationPlatformModel.ArticleAssignmentConfig(),
@@ -1524,6 +1700,7 @@ class ConfigurationPlatformModel {
1524
1700
  order: ConfigurationPlatformModel.AppOrderConfig(),
1525
1701
  logistics: ConfigurationPlatformModel.AppLogisticsConfig(),
1526
1702
  pii_masking: ConfigurationPlatformModel.PiiMasking(),
1703
+ channel_capabilities: ConfigurationPlatformModel.ChannelCapabilities(),
1527
1704
  tags: Joi.array().items(Joi.string().allow("")),
1528
1705
  __v: Joi.number(),
1529
1706
  business: Joi.string().allow(""),
@@ -1546,14 +1723,70 @@ class ConfigurationPlatformModel {
1546
1723
  });
1547
1724
  }
1548
1725
 
1726
+ /** @returns {ChannelCapabilities} */
1727
+ static ChannelCapabilities() {
1728
+ return Joi.object({
1729
+ commerce_model: Joi.array().items(Joi.string().allow("")).required(),
1730
+ business_format: Joi.array().items(Joi.string().allow("")).required(),
1731
+ ordering_sources: Joi.array()
1732
+ .items(ConfigurationPlatformModel.OrderingSources())
1733
+ .required(),
1734
+ seller_model: Joi.string().allow(""),
1735
+ });
1736
+ }
1737
+
1738
+ /** @returns {OrderingSources} */
1739
+ static OrderingSources() {
1740
+ return Joi.object({
1741
+ key: Joi.string().allow("").required(),
1742
+ name: Joi.string().allow("").required(),
1743
+ });
1744
+ }
1745
+
1746
+ /** @returns {FstIdentification} */
1747
+ static FstIdentification() {
1748
+ return Joi.object({
1749
+ enabled: Joi.boolean(),
1750
+ });
1751
+ }
1752
+
1753
+ /** @returns {SkgIdentification} */
1754
+ static SkgIdentification() {
1755
+ return Joi.object({
1756
+ enabled: Joi.boolean(),
1757
+ });
1758
+ }
1759
+
1760
+ /** @returns {QuerySuggestions} */
1761
+ static QuerySuggestions() {
1762
+ return Joi.object({
1763
+ enabled: Joi.boolean(),
1764
+ max_limit: Joi.number(),
1765
+ });
1766
+ }
1767
+
1768
+ /** @returns {SearchConfig} */
1769
+ static SearchConfig() {
1770
+ return Joi.object({
1771
+ fst_identification: ConfigurationPlatformModel.FstIdentification(),
1772
+ query_suggestions: ConfigurationPlatformModel.QuerySuggestions(),
1773
+ skg_identification: ConfigurationPlatformModel.SkgIdentification(),
1774
+ });
1775
+ }
1776
+
1549
1777
  /** @returns {AppInventoryConfig} */
1550
1778
  static AppInventoryConfig() {
1551
1779
  return Joi.object({
1780
+ delivery_strategy: ConfigurationPlatformModel.DeliveryStrategy(),
1552
1781
  brand: ConfigurationPlatformModel.InventoryBrand(),
1553
1782
  store: ConfigurationPlatformModel.InventoryStore(),
1554
1783
  category: ConfigurationPlatformModel.InventoryCategory(),
1555
1784
  price: ConfigurationPlatformModel.InventoryPrice(),
1556
1785
  discount: ConfigurationPlatformModel.InventoryDiscount(),
1786
+ price_strategy: Joi.string().allow(""),
1787
+ international: Joi.boolean(),
1788
+ strategy_change_pending: Joi.boolean(),
1789
+ strategy_modified_at: Joi.string().allow(""),
1557
1790
  out_of_stock: Joi.boolean(),
1558
1791
  only_verified_products: Joi.boolean(),
1559
1792
  franchise_enabled: Joi.boolean(),
@@ -1561,8 +1794,6 @@ class ConfigurationPlatformModel {
1561
1794
  image: Joi.array().items(Joi.string().allow("")),
1562
1795
  company_store: Joi.array().items(Joi.any()),
1563
1796
  company_id: Joi.number(),
1564
- enable_zone_overlapping: Joi.boolean(),
1565
- sort_popular_first: Joi.boolean(),
1566
1797
  });
1567
1798
  }
1568
1799
 
@@ -1658,6 +1889,8 @@ class ConfigurationPlatformModel {
1658
1889
  bulk_coupons: Joi.boolean(),
1659
1890
  revenue_engine_coupon: Joi.boolean(),
1660
1891
  pan_card: ConfigurationPlatformModel.PanCardConfig(),
1892
+ engage_enabled: Joi.boolean(),
1893
+ offer_enabled: Joi.boolean(),
1661
1894
  });
1662
1895
  }
1663
1896
 
@@ -1756,6 +1989,24 @@ class ConfigurationPlatformModel {
1756
1989
  enabled: Joi.boolean(),
1757
1990
  force_reassignment: Joi.boolean(),
1758
1991
  message: Joi.string().allow(""),
1992
+ processing_schedule: ConfigurationPlatformModel.ProcessingSchedule(),
1993
+ });
1994
+ }
1995
+
1996
+ /** @returns {ProcessingSchedule} */
1997
+ static ProcessingSchedule() {
1998
+ return Joi.object({
1999
+ is_scheduled: Joi.boolean(),
2000
+ start_after: ConfigurationPlatformModel.StartAfter(),
2001
+ });
2002
+ }
2003
+
2004
+ /** @returns {StartAfter} */
2005
+ static StartAfter() {
2006
+ return Joi.object({
2007
+ days: Joi.number(),
2008
+ hours: Joi.number(),
2009
+ minutes: Joi.number(),
1759
2010
  });
1760
2011
  }
1761
2012
 
@@ -1780,6 +2031,7 @@ class ConfigurationPlatformModel {
1780
2031
  /** @returns {AppInventoryPartialUpdate} */
1781
2032
  static AppInventoryPartialUpdate() {
1782
2033
  return Joi.object({
2034
+ search: ConfigurationPlatformModel.SearchConfig(),
1783
2035
  reward_points: ConfigurationPlatformModel.RewardPointsConfig(),
1784
2036
  cart: ConfigurationPlatformModel.AppCartConfig(),
1785
2037
  payment: ConfigurationPlatformModel.AppPaymentConfig(),
@@ -1797,24 +2049,24 @@ class ConfigurationPlatformModel {
1797
2049
  });
1798
2050
  }
1799
2051
 
1800
- /** @returns {CompanyByBrandsRequest} */
1801
- static CompanyByBrandsRequest() {
2052
+ /** @returns {CompanyByBrandsRequestSchema} */
2053
+ static CompanyByBrandsRequestSchema() {
1802
2054
  return Joi.object({
1803
2055
  brands: Joi.number().required(),
1804
2056
  search_text: Joi.string().allow(""),
1805
2057
  });
1806
2058
  }
1807
2059
 
1808
- /** @returns {CompanyByBrandsResponse} */
1809
- static CompanyByBrandsResponse() {
2060
+ /** @returns {CompanyByBrandsResponseSchema} */
2061
+ static CompanyByBrandsResponseSchema() {
1810
2062
  return Joi.object({
1811
2063
  items: Joi.array().items(ConfigurationPlatformModel.BrandCompanyInfo()),
1812
2064
  page: ConfigurationPlatformModel.Page(),
1813
2065
  });
1814
2066
  }
1815
2067
 
1816
- /** @returns {StoreByBrandsRequest} */
1817
- static StoreByBrandsRequest() {
2068
+ /** @returns {StoreByBrandsRequestSchema} */
2069
+ static StoreByBrandsRequestSchema() {
1818
2070
  return Joi.object({
1819
2071
  company_id: Joi.number(),
1820
2072
  brands: Joi.number().required(),
@@ -1822,8 +2074,8 @@ class ConfigurationPlatformModel {
1822
2074
  });
1823
2075
  }
1824
2076
 
1825
- /** @returns {StoreByBrandsResponse} */
1826
- static StoreByBrandsResponse() {
2077
+ /** @returns {StoreByBrandsResponseSchema} */
2078
+ static StoreByBrandsResponseSchema() {
1827
2079
  return Joi.object({
1828
2080
  items: Joi.array().items(ConfigurationPlatformModel.BrandStoreInfo()),
1829
2081
  page: ConfigurationPlatformModel.Page(),
@@ -1853,15 +2105,15 @@ class ConfigurationPlatformModel {
1853
2105
  });
1854
2106
  }
1855
2107
 
1856
- /** @returns {BrandsByCompanyResponse} */
1857
- static BrandsByCompanyResponse() {
2108
+ /** @returns {BrandsByCompanyResponseSchema} */
2109
+ static BrandsByCompanyResponseSchema() {
1858
2110
  return Joi.object({
1859
2111
  brands: Joi.array().items(ConfigurationPlatformModel.CompanyBrandInfo()),
1860
2112
  });
1861
2113
  }
1862
2114
 
1863
- /** @returns {ValidationFailedResponse} */
1864
- static ValidationFailedResponse() {
2115
+ /** @returns {ValidationFailedResponseSchema} */
2116
+ static ValidationFailedResponseSchema() {
1865
2117
  return Joi.object({
1866
2118
  message: Joi.string().allow(""),
1867
2119
  });
@@ -1900,8 +2152,8 @@ class ConfigurationPlatformModel {
1900
2152
  });
1901
2153
  }
1902
2154
 
1903
- /** @returns {CreateApplicationRequest} */
1904
- static CreateApplicationRequest() {
2155
+ /** @returns {CreateApplicationRequestSchema} */
2156
+ static CreateApplicationRequestSchema() {
1905
2157
  return Joi.object({
1906
2158
  app: ConfigurationPlatformModel.App(),
1907
2159
  configuration: ConfigurationPlatformModel.ApplicationInventory(),
@@ -1909,16 +2161,16 @@ class ConfigurationPlatformModel {
1909
2161
  });
1910
2162
  }
1911
2163
 
1912
- /** @returns {CreateAppResponse} */
1913
- static CreateAppResponse() {
2164
+ /** @returns {CreateAppResponseSchema} */
2165
+ static CreateAppResponseSchema() {
1914
2166
  return Joi.object({
1915
2167
  app: ConfigurationPlatformModel.Application(),
1916
2168
  configuration: ConfigurationPlatformModel.ApplicationInventory(),
1917
2169
  });
1918
2170
  }
1919
2171
 
1920
- /** @returns {ApplicationsResponse} */
1921
- static ApplicationsResponse() {
2172
+ /** @returns {ApplicationsResponseSchema} */
2173
+ static ApplicationsResponseSchema() {
1922
2174
  return Joi.object({
1923
2175
  items: Joi.array().items(ConfigurationPlatformModel.Application()),
1924
2176
  page: ConfigurationPlatformModel.Page(),
@@ -1958,8 +2210,8 @@ class ConfigurationPlatformModel {
1958
2210
  });
1959
2211
  }
1960
2212
 
1961
- /** @returns {MobileAppConfigRequest} */
1962
- static MobileAppConfigRequest() {
2213
+ /** @returns {MobileAppConfigRequestSchema} */
2214
+ static MobileAppConfigRequestSchema() {
1963
2215
  return Joi.object({
1964
2216
  app_name: Joi.string().allow(""),
1965
2217
  landing_image: ConfigurationPlatformModel.LandingImage(),
@@ -2025,8 +2277,8 @@ class ConfigurationPlatformModel {
2025
2277
  });
2026
2278
  }
2027
2279
 
2028
- /** @returns {DomainAddRequest} */
2029
- static DomainAddRequest() {
2280
+ /** @returns {DomainAddRequestSchema} */
2281
+ static DomainAddRequestSchema() {
2030
2282
  return Joi.object({
2031
2283
  domain: ConfigurationPlatformModel.DomainAdd(),
2032
2284
  });
@@ -2045,8 +2297,8 @@ class ConfigurationPlatformModel {
2045
2297
  });
2046
2298
  }
2047
2299
 
2048
- /** @returns {DomainsResponse} */
2049
- static DomainsResponse() {
2300
+ /** @returns {DomainsResponseSchema} */
2301
+ static DomainsResponseSchema() {
2050
2302
  return Joi.object({
2051
2303
  domains: Joi.array().items(ConfigurationPlatformModel.Domain()),
2052
2304
  });
@@ -2063,16 +2315,16 @@ class ConfigurationPlatformModel {
2063
2315
  });
2064
2316
  }
2065
2317
 
2066
- /** @returns {UpdateDomainTypeRequest} */
2067
- static UpdateDomainTypeRequest() {
2318
+ /** @returns {UpdateDomainTypeRequestSchema} */
2319
+ static UpdateDomainTypeRequestSchema() {
2068
2320
  return Joi.object({
2069
2321
  domain: ConfigurationPlatformModel.UpdateDomain(),
2070
2322
  action: Joi.string().allow(""),
2071
2323
  });
2072
2324
  }
2073
2325
 
2074
- /** @returns {DomainStatusRequest} */
2075
- static DomainStatusRequest() {
2326
+ /** @returns {DomainStatusRequestSchema} */
2327
+ static DomainStatusRequestSchema() {
2076
2328
  return Joi.object({
2077
2329
  domain_url: Joi.string().allow(""),
2078
2330
  });
@@ -2086,19 +2338,19 @@ class ConfigurationPlatformModel {
2086
2338
  });
2087
2339
  }
2088
2340
 
2089
- /** @returns {DomainStatusResponse} */
2090
- static DomainStatusResponse() {
2341
+ /** @returns {DomainStatusResponseSchema} */
2342
+ static DomainStatusResponseSchema() {
2091
2343
  return Joi.object({
2092
2344
  connected: Joi.boolean(),
2093
2345
  status: Joi.array().items(ConfigurationPlatformModel.DomainStatus()),
2094
2346
  });
2095
2347
  }
2096
2348
 
2097
- /** @returns {DomainSuggestionsRequest} */
2098
- static DomainSuggestionsRequest() {
2349
+ /** @returns {DomainSuggestionsRequestSchema} */
2350
+ static DomainSuggestionsRequestSchema() {
2099
2351
  return Joi.object({
2100
2352
  domain_url: Joi.string().allow(""),
2101
- custom: Joi.boolean(),
2353
+ custom_domain: Joi.boolean(),
2102
2354
  });
2103
2355
  }
2104
2356
 
@@ -2113,15 +2365,15 @@ class ConfigurationPlatformModel {
2113
2365
  });
2114
2366
  }
2115
2367
 
2116
- /** @returns {DomainSuggestionsResponse} */
2117
- static DomainSuggestionsResponse() {
2368
+ /** @returns {DomainSuggestionsResponseSchema} */
2369
+ static DomainSuggestionsResponseSchema() {
2118
2370
  return Joi.object({
2119
2371
  domains: Joi.array().items(ConfigurationPlatformModel.DomainSuggestion()),
2120
2372
  });
2121
2373
  }
2122
2374
 
2123
- /** @returns {SuccessMessageResponse} */
2124
- static SuccessMessageResponse() {
2375
+ /** @returns {SuccessMessageResponseSchema} */
2376
+ static SuccessMessageResponseSchema() {
2125
2377
  return Joi.object({
2126
2378
  success: Joi.boolean(),
2127
2379
  message: Joi.string().allow(""),
@@ -2146,8 +2398,8 @@ class ConfigurationPlatformModel {
2146
2398
  });
2147
2399
  }
2148
2400
 
2149
- /** @returns {CompaniesResponse} */
2150
- static CompaniesResponse() {
2401
+ /** @returns {CompaniesResponseSchema} */
2402
+ static CompaniesResponseSchema() {
2151
2403
  return Joi.object({
2152
2404
  items: Joi.array().items(
2153
2405
  ConfigurationPlatformModel.AppInventoryCompanies()
@@ -2165,8 +2417,8 @@ class ConfigurationPlatformModel {
2165
2417
  });
2166
2418
  }
2167
2419
 
2168
- /** @returns {StoresResponse} */
2169
- static StoresResponse() {
2420
+ /** @returns {StoresResponseSchema} */
2421
+ static StoresResponseSchema() {
2170
2422
  return Joi.object({
2171
2423
  items: Joi.array().items(ConfigurationPlatformModel.AppInventoryStores()),
2172
2424
  page: ConfigurationPlatformModel.Page(),
@@ -2189,8 +2441,8 @@ class ConfigurationPlatformModel {
2189
2441
  });
2190
2442
  }
2191
2443
 
2192
- /** @returns {FilterOrderingStoreRequest} */
2193
- static FilterOrderingStoreRequest() {
2444
+ /** @returns {FilterOrderingStoreRequestSchema} */
2445
+ static FilterOrderingStoreRequestSchema() {
2194
2446
  return Joi.object({
2195
2447
  all_stores: Joi.boolean(),
2196
2448
  deployed_stores: Joi.array().items(Joi.number()),
@@ -2218,8 +2470,8 @@ class ConfigurationPlatformModel {
2218
2470
  });
2219
2471
  }
2220
2472
 
2221
- /** @returns {OrderingStoreSelectRequest} */
2222
- static OrderingStoreSelectRequest() {
2473
+ /** @returns {OrderingStoreSelectRequestSchema} */
2474
+ static OrderingStoreSelectRequestSchema() {
2223
2475
  return Joi.object({
2224
2476
  ordering_store: ConfigurationPlatformModel.OrderingStoreSelect().required(),
2225
2477
  });
@@ -2262,8 +2514,8 @@ class ConfigurationPlatformModel {
2262
2514
  });
2263
2515
  }
2264
2516
 
2265
- /** @returns {OptedApplicationResponse} */
2266
- static OptedApplicationResponse() {
2517
+ /** @returns {OptedApplicationResponseSchema} */
2518
+ static OptedApplicationResponseSchema() {
2267
2519
  return Joi.object({
2268
2520
  name: Joi.string().allow(""),
2269
2521
  description: Joi.string().allow(""),
@@ -2323,8 +2575,8 @@ class ConfigurationPlatformModel {
2323
2575
  });
2324
2576
  }
2325
2577
 
2326
- /** @returns {TokenResponse} */
2327
- static TokenResponse() {
2578
+ /** @returns {TokenResponseSchema} */
2579
+ static TokenResponseSchema() {
2328
2580
  return Joi.object({
2329
2581
  tokens: ConfigurationPlatformModel.Tokens(),
2330
2582
  _id: Joi.string().allow(""),
@@ -2530,8 +2782,8 @@ class ConfigurationPlatformModel {
2530
2782
  static LaunchPage() {
2531
2783
  return Joi.object({
2532
2784
  page_type: Joi.string().allow(""),
2533
- params: Joi.any(),
2534
- query: Joi.any(),
2785
+ params: Joi.object().pattern(/\S/, Joi.any()),
2786
+ query: Joi.object().pattern(/\S/, Joi.any()),
2535
2787
  });
2536
2788
  }
2537
2789
 
@@ -2560,6 +2812,29 @@ class ConfigurationPlatformModel {
2560
2812
  });
2561
2813
  }
2562
2814
 
2815
+ /** @returns {BuyboxFeature} */
2816
+ static BuyboxFeature() {
2817
+ return Joi.object({
2818
+ show_name: Joi.boolean(),
2819
+ enable_selection: Joi.boolean(),
2820
+ is_seller_buybox_enabled: Joi.boolean(),
2821
+ });
2822
+ }
2823
+
2824
+ /** @returns {DeliveryStrategy} */
2825
+ static DeliveryStrategy() {
2826
+ return Joi.object({
2827
+ value: Joi.string().allow(""),
2828
+ });
2829
+ }
2830
+
2831
+ /** @returns {FulfillmentOption} */
2832
+ static FulfillmentOption() {
2833
+ return Joi.object({
2834
+ count: Joi.number(),
2835
+ });
2836
+ }
2837
+
2563
2838
  /** @returns {AppFeature} */
2564
2839
  static AppFeature() {
2565
2840
  return Joi.object({
@@ -2572,6 +2847,17 @@ class ConfigurationPlatformModel {
2572
2847
  qr: ConfigurationPlatformModel.QrFeature(),
2573
2848
  pcr: ConfigurationPlatformModel.PcrFeature(),
2574
2849
  order: ConfigurationPlatformModel.OrderFeature(),
2850
+ security: ConfigurationPlatformModel.SecurityFeature(),
2851
+ buybox: ConfigurationPlatformModel.BuyboxFeature(),
2852
+ delivery_strategy: ConfigurationPlatformModel.DeliveryStrategy(),
2853
+ ordering_sources: Joi.array().items(
2854
+ ConfigurationPlatformModel.OrderingSources()
2855
+ ),
2856
+ price_strategy: Joi.string().allow(""),
2857
+ international: Joi.boolean(),
2858
+ strategy_change_pending: Joi.boolean(),
2859
+ strategy_modified_at: Joi.string().allow(""),
2860
+ fulfillment_option: ConfigurationPlatformModel.FulfillmentOption(),
2575
2861
  _id: Joi.string().allow(""),
2576
2862
  app: Joi.string().allow(""),
2577
2863
  created_at: Joi.string().allow(""),
@@ -2697,15 +2983,30 @@ class ConfigurationPlatformModel {
2697
2983
  });
2698
2984
  }
2699
2985
 
2700
- /** @returns {AppFeatureRequest} */
2701
- static AppFeatureRequest() {
2986
+ /** @returns {SecurityFeature} */
2987
+ static SecurityFeature() {
2988
+ return Joi.object({
2989
+ domains: Joi.array().items(ConfigurationPlatformModel.AllowedDomain()),
2990
+ });
2991
+ }
2992
+
2993
+ /** @returns {AllowedDomain} */
2994
+ static AllowedDomain() {
2995
+ return Joi.object({
2996
+ host: Joi.string().allow("").required(),
2997
+ url_scheme: Joi.string().allow(""),
2998
+ });
2999
+ }
3000
+
3001
+ /** @returns {AppFeatureRequestSchema} */
3002
+ static AppFeatureRequestSchema() {
2702
3003
  return Joi.object({
2703
3004
  feature: ConfigurationPlatformModel.AppFeature(),
2704
3005
  });
2705
3006
  }
2706
3007
 
2707
- /** @returns {AppFeatureResponse} */
2708
- static AppFeatureResponse() {
3008
+ /** @returns {AppFeatureResponseSchema} */
3009
+ static AppFeatureResponseSchema() {
2709
3010
  return Joi.object({
2710
3011
  feature: ConfigurationPlatformModel.AppFeature(),
2711
3012
  });
@@ -2867,8 +3168,8 @@ class ConfigurationPlatformModel {
2867
3168
  });
2868
3169
  }
2869
3170
 
2870
- /** @returns {InvalidPayloadRequest} */
2871
- static InvalidPayloadRequest() {
3171
+ /** @returns {InvalidPayloadRequestSchema} */
3172
+ static InvalidPayloadRequestSchema() {
2872
3173
  return Joi.object({
2873
3174
  message: Joi.string().allow(""),
2874
3175
  success: Joi.boolean(),
@@ -2885,6 +3186,7 @@ class ConfigurationPlatformModel {
2885
3186
  current: Joi.number(),
2886
3187
  type: Joi.string().allow("").required(),
2887
3188
  size: Joi.number(),
3189
+ page_size: Joi.number(),
2888
3190
  });
2889
3191
  }
2890
3192
 
@@ -3096,15 +3398,15 @@ class ConfigurationPlatformModel {
3096
3398
  });
3097
3399
  }
3098
3400
 
3099
- /** @returns {CurrenciesResponse} */
3100
- static CurrenciesResponse() {
3401
+ /** @returns {CurrenciesResponseSchema} */
3402
+ static CurrenciesResponseSchema() {
3101
3403
  return Joi.object({
3102
3404
  items: Joi.array().items(ConfigurationPlatformModel.Currency()),
3103
3405
  });
3104
3406
  }
3105
3407
 
3106
- /** @returns {AppCurrencyResponse} */
3107
- static AppCurrencyResponse() {
3408
+ /** @returns {AppCurrencyResponseSchema} */
3409
+ static AppCurrencyResponseSchema() {
3108
3410
  return Joi.object({
3109
3411
  _id: Joi.string().allow(""),
3110
3412
  application: Joi.string().allow(""),
@@ -3132,7 +3434,7 @@ class ConfigurationPlatformModel {
3132
3434
  address1: Joi.string().allow(""),
3133
3435
  lat_long: ConfigurationPlatformModel.StoreLatLong(),
3134
3436
  address2: Joi.string().allow(""),
3135
- pincode: Joi.number(),
3437
+ pincode: Joi.string().allow(""),
3136
3438
  country: Joi.string().allow(""),
3137
3439
  city: Joi.string().allow(""),
3138
3440
  sector: Joi.string().allow(""),
@@ -3151,7 +3453,7 @@ class ConfigurationPlatformModel {
3151
3453
  display_name: Joi.string().allow(""),
3152
3454
  store_type: Joi.string().allow(""),
3153
3455
  store_code: Joi.string().allow(""),
3154
- pincode: Joi.number(),
3456
+ pincode: Joi.string().allow(""),
3155
3457
  code: Joi.string().allow(""),
3156
3458
  });
3157
3459
  }
@@ -3171,12 +3473,29 @@ class ConfigurationPlatformModel {
3171
3473
  });
3172
3474
  }
3173
3475
 
3174
- /** @returns {OrderingStoresResponse} */
3175
- static OrderingStoresResponse() {
3476
+ /** @returns {OrderingStoresResponseSchema} */
3477
+ static OrderingStoresResponseSchema() {
3176
3478
  return Joi.object({
3177
3479
  page: ConfigurationPlatformModel.Page(),
3178
3480
  items: Joi.array().items(ConfigurationPlatformModel.OrderingStore()),
3179
3481
  });
3180
3482
  }
3483
+
3484
+ /** @returns {ValidationErrors} */
3485
+ static ValidationErrors() {
3486
+ return Joi.object({
3487
+ errors: Joi.array()
3488
+ .items(ConfigurationPlatformModel.ValidationError())
3489
+ .required(),
3490
+ });
3491
+ }
3492
+
3493
+ /** @returns {ValidationError} */
3494
+ static ValidationError() {
3495
+ return Joi.object({
3496
+ message: Joi.string().allow("").required(),
3497
+ field: Joi.string().allow("").required(),
3498
+ });
3499
+ }
3181
3500
  }
3182
3501
  module.exports = ConfigurationPlatformModel;