algoliasearch 5.0.0-alpha.99 → 5.0.0-beta.1

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 (508) hide show
  1. package/builds/browser.ts +10 -17
  2. package/builds/node.ts +58 -15
  3. package/dist/algoliasearch/builds/browser.d.ts +10 -5
  4. package/dist/algoliasearch/builds/browser.d.ts.map +1 -1
  5. package/dist/algoliasearch/builds/node.d.ts +28 -6
  6. package/dist/algoliasearch/builds/node.d.ts.map +1 -1
  7. package/dist/algoliasearch.cjs +752 -387
  8. package/dist/algoliasearch.esm.browser.js +724 -393
  9. package/dist/algoliasearch.esm.node.js +753 -388
  10. package/dist/algoliasearch.umd.js +2 -2
  11. package/dist/client-abtesting/model/aBTest.d.ts +14 -29
  12. package/dist/client-abtesting/model/aBTest.d.ts.map +1 -1
  13. package/dist/client-abtesting/model/aBTestConfiguration.d.ts +12 -0
  14. package/dist/client-abtesting/model/aBTestConfiguration.d.ts.map +1 -0
  15. package/dist/client-abtesting/model/aBTestResponse.d.ts +3 -3
  16. package/dist/client-abtesting/model/abTestsVariant.d.ts +3 -3
  17. package/dist/client-abtesting/model/addABTestsRequest.d.ts +1 -1
  18. package/dist/client-abtesting/model/clientMethodProps.d.ts +7 -7
  19. package/dist/client-abtesting/model/{currenciesValue.d.ts → currency.d.ts} +2 -2
  20. package/dist/client-abtesting/model/currency.d.ts.map +1 -0
  21. package/dist/client-abtesting/model/customSearchParams.d.ts +1 -1
  22. package/dist/client-abtesting/model/effect.d.ts +5 -0
  23. package/dist/client-abtesting/model/effect.d.ts.map +1 -0
  24. package/dist/client-abtesting/model/emptySearch.d.ts +10 -0
  25. package/dist/client-abtesting/model/emptySearch.d.ts.map +1 -0
  26. package/dist/client-abtesting/model/index.d.ts +7 -1
  27. package/dist/client-abtesting/model/index.d.ts.map +1 -1
  28. package/dist/client-abtesting/model/listABTestsResponse.d.ts +2 -2
  29. package/dist/client-abtesting/model/listABTestsResponse.d.ts.map +1 -1
  30. package/dist/client-abtesting/model/minimumDetectableEffect.d.ts +12 -0
  31. package/dist/client-abtesting/model/minimumDetectableEffect.d.ts.map +1 -0
  32. package/dist/client-abtesting/model/outliers.d.ts +10 -0
  33. package/dist/client-abtesting/model/outliers.d.ts.map +1 -0
  34. package/dist/client-abtesting/model/status.d.ts +5 -0
  35. package/dist/client-abtesting/model/status.d.ts.map +1 -0
  36. package/dist/client-abtesting/model/variant.d.ts +29 -25
  37. package/dist/client-abtesting/model/variant.d.ts.map +1 -1
  38. package/dist/client-abtesting/src/abtestingClient.d.ts +28 -26
  39. package/dist/client-abtesting/src/abtestingClient.d.ts.map +1 -1
  40. package/dist/client-analytics/model/clickPositionsInner.d.ts +14 -0
  41. package/dist/client-analytics/model/clickPositionsInner.d.ts.map +1 -0
  42. package/dist/client-analytics/model/clientMethodProps.d.ts +161 -90
  43. package/dist/client-analytics/model/clientMethodProps.d.ts.map +1 -1
  44. package/dist/client-analytics/model/currenciesValue.d.ts +14 -0
  45. package/dist/client-analytics/model/currenciesValue.d.ts.map +1 -0
  46. package/dist/client-analytics/model/dailyAddToCartRates.d.ts +19 -0
  47. package/dist/client-analytics/model/dailyAddToCartRates.d.ts.map +1 -0
  48. package/dist/client-analytics/model/dailyAverageClicks.d.ts +15 -0
  49. package/dist/client-analytics/model/dailyAverageClicks.d.ts.map +1 -0
  50. package/dist/client-analytics/model/dailyClickThroughRates.d.ts +19 -0
  51. package/dist/client-analytics/model/dailyClickThroughRates.d.ts.map +1 -0
  52. package/dist/client-analytics/model/dailyConversionRates.d.ts +19 -0
  53. package/dist/client-analytics/model/dailyConversionRates.d.ts.map +1 -0
  54. package/dist/client-analytics/model/dailyNoClickRates.d.ts +19 -0
  55. package/dist/client-analytics/model/dailyNoClickRates.d.ts.map +1 -0
  56. package/dist/client-analytics/model/dailyNoResultsRates.d.ts +19 -0
  57. package/dist/client-analytics/model/dailyNoResultsRates.d.ts.map +1 -0
  58. package/dist/client-analytics/model/dailyPurchaseRates.d.ts +19 -0
  59. package/dist/client-analytics/model/dailyPurchaseRates.d.ts.map +1 -0
  60. package/dist/client-analytics/model/dailyRevenue.d.ts +12 -0
  61. package/dist/client-analytics/model/dailyRevenue.d.ts.map +1 -0
  62. package/dist/client-analytics/model/dailySearches.d.ts +11 -0
  63. package/dist/client-analytics/model/dailySearches.d.ts.map +1 -0
  64. package/dist/client-analytics/model/dailySearchesNoClicks.d.ts +15 -0
  65. package/dist/client-analytics/model/dailySearchesNoClicks.d.ts.map +1 -0
  66. package/dist/client-analytics/model/dailySearchesNoResults.d.ts +15 -0
  67. package/dist/client-analytics/model/dailySearchesNoResults.d.ts.map +1 -0
  68. package/dist/client-analytics/model/dailyUsers.d.ts +11 -0
  69. package/dist/client-analytics/model/dailyUsers.d.ts.map +1 -0
  70. package/dist/client-analytics/model/getAddToCartRateResponse.d.ts +20 -0
  71. package/dist/client-analytics/model/getAddToCartRateResponse.d.ts.map +1 -0
  72. package/dist/client-analytics/model/getAverageClickPositionResponse.d.ts +6 -6
  73. package/dist/client-analytics/model/getAverageClickPositionResponse.d.ts.map +1 -1
  74. package/dist/client-analytics/model/getClickPositionsResponse.d.ts +3 -3
  75. package/dist/client-analytics/model/getClickPositionsResponse.d.ts.map +1 -1
  76. package/dist/client-analytics/model/getClickThroughRateResponse.d.ts +7 -7
  77. package/dist/client-analytics/model/getClickThroughRateResponse.d.ts.map +1 -1
  78. package/dist/client-analytics/model/getConversionRateResponse.d.ts +20 -0
  79. package/dist/client-analytics/model/getConversionRateResponse.d.ts.map +1 -0
  80. package/dist/client-analytics/model/getNoClickRateResponse.d.ts +6 -6
  81. package/dist/client-analytics/model/getNoClickRateResponse.d.ts.map +1 -1
  82. package/dist/client-analytics/model/getNoResultsRateResponse.d.ts +6 -6
  83. package/dist/client-analytics/model/getNoResultsRateResponse.d.ts.map +1 -1
  84. package/dist/client-analytics/model/getPurchaseRateResponse.d.ts +20 -0
  85. package/dist/client-analytics/model/getPurchaseRateResponse.d.ts.map +1 -0
  86. package/dist/client-analytics/model/getRevenue.d.ts +13 -0
  87. package/dist/client-analytics/model/getRevenue.d.ts.map +1 -0
  88. package/dist/client-analytics/model/getSearchesCountResponse.d.ts +3 -3
  89. package/dist/client-analytics/model/getSearchesCountResponse.d.ts.map +1 -1
  90. package/dist/client-analytics/model/getSearchesNoClicksResponse.d.ts +3 -3
  91. package/dist/client-analytics/model/getSearchesNoClicksResponse.d.ts.map +1 -1
  92. package/dist/client-analytics/model/getSearchesNoResultsResponse.d.ts +3 -3
  93. package/dist/client-analytics/model/getSearchesNoResultsResponse.d.ts.map +1 -1
  94. package/dist/client-analytics/model/getStatusResponse.d.ts +2 -2
  95. package/dist/client-analytics/model/getStatusResponse.d.ts.map +1 -1
  96. package/dist/client-analytics/model/getTopCountriesResponse.d.ts +1 -1
  97. package/dist/client-analytics/model/getTopFilterAttributesResponse.d.ts +1 -1
  98. package/dist/client-analytics/model/getTopFilterForAttribute.d.ts +2 -4
  99. package/dist/client-analytics/model/getTopFilterForAttribute.d.ts.map +1 -1
  100. package/dist/client-analytics/model/getTopFiltersNoResultsResponse.d.ts +2 -2
  101. package/dist/client-analytics/model/getTopFiltersNoResultsResponse.d.ts.map +1 -1
  102. package/dist/client-analytics/model/getTopFiltersNoResultsValue.d.ts +2 -4
  103. package/dist/client-analytics/model/getTopFiltersNoResultsValue.d.ts.map +1 -1
  104. package/dist/client-analytics/model/getTopHitsResponse.d.ts +2 -1
  105. package/dist/client-analytics/model/getTopHitsResponse.d.ts.map +1 -1
  106. package/dist/client-analytics/model/getTopSearchesResponse.d.ts +2 -1
  107. package/dist/client-analytics/model/getTopSearchesResponse.d.ts.map +1 -1
  108. package/dist/client-analytics/model/getUsersCountResponse.d.ts +4 -4
  109. package/dist/client-analytics/model/getUsersCountResponse.d.ts.map +1 -1
  110. package/dist/client-analytics/model/index.d.ts +23 -11
  111. package/dist/client-analytics/model/index.d.ts.map +1 -1
  112. package/dist/client-analytics/model/operator.d.ts +5 -0
  113. package/dist/client-analytics/model/operator.d.ts.map +1 -0
  114. package/dist/client-analytics/model/orderBy.d.ts +1 -1
  115. package/dist/client-analytics/model/topCountry.d.ts +1 -1
  116. package/dist/client-analytics/model/topHit.d.ts +1 -1
  117. package/dist/client-analytics/model/topHitWithAnalytics.d.ts +9 -9
  118. package/dist/client-analytics/model/topHitWithAnalytics.d.ts.map +1 -1
  119. package/dist/client-analytics/model/topHitWithRevenueAnalytics.d.ts +52 -0
  120. package/dist/client-analytics/model/topHitWithRevenueAnalytics.d.ts.map +1 -0
  121. package/dist/client-analytics/model/topHitsResponse.d.ts +1 -1
  122. package/dist/client-analytics/model/topHitsResponseWithAnalytics.d.ts +1 -1
  123. package/dist/client-analytics/model/topHitsResponseWithRevenueAnalytics.d.ts +8 -0
  124. package/dist/client-analytics/model/topHitsResponseWithRevenueAnalytics.d.ts.map +1 -0
  125. package/dist/client-analytics/model/topSearch.d.ts +3 -3
  126. package/dist/client-analytics/model/topSearchWithAnalytics.d.ts +17 -12
  127. package/dist/client-analytics/model/topSearchWithAnalytics.d.ts.map +1 -1
  128. package/dist/client-analytics/model/topSearchWithRevenueAnalytics.d.ts +65 -0
  129. package/dist/client-analytics/model/topSearchWithRevenueAnalytics.d.ts.map +1 -0
  130. package/dist/client-analytics/model/topSearchesResponse.d.ts +1 -1
  131. package/dist/client-analytics/model/topSearchesResponseWithAnalytics.d.ts +1 -1
  132. package/dist/client-analytics/model/topSearchesResponseWithRevenueAnalytics.d.ts +8 -0
  133. package/dist/client-analytics/model/topSearchesResponseWithRevenueAnalytics.d.ts.map +1 -0
  134. package/dist/client-analytics/src/analyticsClient.d.ts +211 -138
  135. package/dist/client-analytics/src/analyticsClient.d.ts.map +1 -1
  136. package/dist/client-personalization/model/clientMethodProps.d.ts +2 -2
  137. package/dist/client-personalization/model/deleteUserProfileResponse.d.ts +2 -2
  138. package/dist/client-personalization/model/eventScoring.d.ts +4 -6
  139. package/dist/client-personalization/model/eventScoring.d.ts.map +1 -1
  140. package/dist/client-personalization/model/eventType.d.ts +5 -0
  141. package/dist/client-personalization/model/eventType.d.ts.map +1 -0
  142. package/dist/client-personalization/model/facetScoring.d.ts +2 -2
  143. package/dist/client-personalization/model/getUserTokenResponse.d.ts +3 -3
  144. package/dist/client-personalization/model/index.d.ts +1 -0
  145. package/dist/client-personalization/model/index.d.ts.map +1 -1
  146. package/dist/client-personalization/model/personalizationStrategyParams.d.ts +3 -3
  147. package/dist/client-personalization/src/personalizationClient.d.ts +19 -19
  148. package/dist/client-personalization/src/personalizationClient.d.ts.map +1 -1
  149. package/dist/client-search/model/acl.d.ts +1 -1
  150. package/dist/client-search/model/action.d.ts +1 -1
  151. package/dist/client-search/model/addApiKeyResponse.d.ts +1 -1
  152. package/dist/client-search/model/anchoring.d.ts +1 -1
  153. package/dist/client-search/model/apiKey.d.ts +8 -8
  154. package/dist/client-search/model/apiKeyOperation.d.ts +2 -0
  155. package/dist/client-search/model/apiKeyOperation.d.ts.map +1 -0
  156. package/dist/client-search/model/aroundPrecision.d.ts +1 -1
  157. package/dist/client-search/model/aroundPrecisionFromValueInner.d.ts +9 -0
  158. package/dist/client-search/model/aroundPrecisionFromValueInner.d.ts.map +1 -1
  159. package/dist/client-search/model/aroundRadius.d.ts +1 -1
  160. package/dist/client-search/model/aroundRadiusAll.d.ts +3 -0
  161. package/dist/client-search/model/aroundRadiusAll.d.ts.map +1 -1
  162. package/dist/client-search/model/automaticFacetFilter.d.ts +4 -4
  163. package/dist/client-search/model/automaticFacetFilters.d.ts +1 -1
  164. package/dist/client-search/model/baseGetApiKeyResponse.d.ts +1 -1
  165. package/dist/client-search/model/baseIndexSettings.d.ts +22 -17
  166. package/dist/client-search/model/baseIndexSettings.d.ts.map +1 -1
  167. package/dist/client-search/model/baseSearchParamsWithoutQuery.d.ts +26 -29
  168. package/dist/client-search/model/baseSearchParamsWithoutQuery.d.ts.map +1 -1
  169. package/dist/client-search/model/baseSearchResponse.d.ts +10 -6
  170. package/dist/client-search/model/baseSearchResponse.d.ts.map +1 -1
  171. package/dist/client-search/model/batchDictionaryEntriesParams.d.ts +3 -3
  172. package/dist/client-search/model/batchResponse.d.ts +2 -2
  173. package/dist/client-search/model/builtInOperation.d.ts +2 -2
  174. package/dist/client-search/model/builtInOperationType.d.ts +1 -1
  175. package/dist/client-search/model/clientMethodProps.d.ts +124 -65
  176. package/dist/client-search/model/clientMethodProps.d.ts.map +1 -1
  177. package/dist/client-search/model/condition.d.ts +7 -3
  178. package/dist/client-search/model/condition.d.ts.map +1 -1
  179. package/dist/client-search/model/consequence.d.ts +5 -5
  180. package/dist/client-search/model/consequenceHide.d.ts +2 -2
  181. package/dist/client-search/model/consequenceQuery.d.ts +1 -1
  182. package/dist/client-search/model/consequenceQueryObject.d.ts +2 -2
  183. package/dist/client-search/model/createdAtResponse.d.ts +1 -1
  184. package/dist/client-search/model/cursor.d.ts +1 -1
  185. package/dist/client-search/model/deleteApiKeyResponse.d.ts +1 -1
  186. package/dist/client-search/model/deleteByParams.d.ts +4 -4
  187. package/dist/client-search/model/deleteSourceResponse.d.ts +1 -1
  188. package/dist/client-search/model/deletedAtResponse.d.ts +2 -2
  189. package/dist/client-search/model/dictionaryEntry.d.ts +6 -8
  190. package/dist/client-search/model/dictionaryEntry.d.ts.map +1 -1
  191. package/dist/client-search/model/dictionaryEntryState.d.ts +1 -1
  192. package/dist/client-search/model/dictionaryLanguage.d.ts +2 -2
  193. package/dist/client-search/model/dictionarySettingsParams.d.ts +1 -1
  194. package/dist/client-search/model/distinct.d.ts +1 -1
  195. package/dist/client-search/model/edit.d.ts +1 -1
  196. package/dist/client-search/model/exactOnSingleWordQuery.d.ts +1 -1
  197. package/dist/client-search/model/facetFilters.d.ts +1 -1
  198. package/dist/client-search/model/facetHits.d.ts +2 -2
  199. package/dist/client-search/model/facetOrdering.d.ts +2 -2
  200. package/dist/client-search/model/facets.d.ts +2 -2
  201. package/dist/client-search/model/fetchedIndex.d.ts +1 -1
  202. package/dist/client-search/model/getObjectsRequest.d.ts +3 -3
  203. package/dist/client-search/model/getObjectsResponse.d.ts +1 -1
  204. package/dist/client-search/model/hasPendingMappingsResponse.d.ts +1 -1
  205. package/dist/client-search/model/highlightResult.d.ts +1 -1
  206. package/dist/client-search/model/highlightResult.d.ts.map +1 -1
  207. package/dist/client-search/model/highlightResultOption.d.ts +3 -3
  208. package/dist/client-search/model/hit.d.ts +4 -4
  209. package/dist/client-search/model/ignorePlurals.d.ts +3 -2
  210. package/dist/client-search/model/ignorePlurals.d.ts.map +1 -1
  211. package/dist/client-search/model/index.d.ts +4 -0
  212. package/dist/client-search/model/index.d.ts.map +1 -1
  213. package/dist/client-search/model/indexSettings.d.ts +1 -1
  214. package/dist/client-search/model/indexSettingsAsSearchParams.d.ts +32 -35
  215. package/dist/client-search/model/indexSettingsAsSearchParams.d.ts.map +1 -1
  216. package/dist/client-search/model/log.d.ts +11 -11
  217. package/dist/client-search/model/logQuery.d.ts +1 -1
  218. package/dist/client-search/model/matchLevel.d.ts +1 -1
  219. package/dist/client-search/model/mode.d.ts +1 -1
  220. package/dist/client-search/model/multipleBatchRequest.d.ts +1 -1
  221. package/dist/client-search/model/multipleBatchResponse.d.ts +2 -2
  222. package/dist/client-search/model/numericFilters.d.ts +1 -1
  223. package/dist/client-search/model/operationIndexParams.d.ts +2 -2
  224. package/dist/client-search/model/operationType.d.ts +1 -1
  225. package/dist/client-search/model/optionalFilters.d.ts +1 -1
  226. package/dist/client-search/model/params.d.ts +1 -1
  227. package/dist/client-search/model/promoteObjectID.d.ts +2 -2
  228. package/dist/client-search/model/promoteObjectIDs.d.ts +2 -2
  229. package/dist/client-search/model/queryType.d.ts +1 -1
  230. package/dist/client-search/model/rankingInfo.d.ts +10 -7
  231. package/dist/client-search/model/rankingInfo.d.ts.map +1 -1
  232. package/dist/client-search/model/reRankingApplyFilter.d.ts +1 -1
  233. package/dist/client-search/model/removeStopWords.d.ts +3 -2
  234. package/dist/client-search/model/removeStopWords.d.ts.map +1 -1
  235. package/dist/client-search/model/removeUserIdResponse.d.ts +1 -1
  236. package/dist/client-search/model/removeWordsIfNoResults.d.ts +1 -1
  237. package/dist/client-search/model/renderingContent.d.ts +1 -1
  238. package/dist/client-search/model/replaceSourceResponse.d.ts +1 -1
  239. package/dist/client-search/model/rule.d.ts +5 -5
  240. package/dist/client-search/model/saveObjectResponse.d.ts +3 -3
  241. package/dist/client-search/model/saveSynonymResponse.d.ts +2 -2
  242. package/dist/client-search/model/searchDictionaryEntriesParams.d.ts +5 -7
  243. package/dist/client-search/model/searchDictionaryEntriesParams.d.ts.map +1 -1
  244. package/dist/client-search/model/searchDictionaryEntriesResponse.d.ts +20 -0
  245. package/dist/client-search/model/searchDictionaryEntriesResponse.d.ts.map +1 -0
  246. package/dist/client-search/model/searchForFacetValuesRequest.d.ts +1 -1
  247. package/dist/client-search/model/searchForFacetValuesResponse.d.ts +3 -0
  248. package/dist/client-search/model/searchForFacetValuesResponse.d.ts.map +1 -1
  249. package/dist/client-search/model/searchForFacetsOptions.d.ts +2 -2
  250. package/dist/client-search/model/searchForHitsOptions.d.ts +1 -1
  251. package/dist/client-search/model/searchHits.d.ts +6 -3
  252. package/dist/client-search/model/searchHits.d.ts.map +1 -1
  253. package/dist/client-search/model/searchParamsObject.d.ts +3 -0
  254. package/dist/client-search/model/searchParamsObject.d.ts.map +1 -1
  255. package/dist/client-search/model/searchParamsQuery.d.ts +1 -1
  256. package/dist/client-search/model/searchRulesParams.d.ts +4 -8
  257. package/dist/client-search/model/searchRulesParams.d.ts.map +1 -1
  258. package/dist/client-search/model/searchRulesResponse.d.ts +2 -2
  259. package/dist/client-search/model/searchStrategy.d.ts +1 -1
  260. package/dist/client-search/model/searchSynonymsParams.d.ts +2 -2
  261. package/dist/client-search/model/searchSynonymsResponse.d.ts +2 -2
  262. package/dist/client-search/model/searchUserIdsParams.d.ts +1 -1
  263. package/dist/client-search/model/searchUserIdsResponse.d.ts +3 -3
  264. package/dist/client-search/model/securedAPIKeyRestrictions.d.ts +25 -0
  265. package/dist/client-search/model/securedAPIKeyRestrictions.d.ts.map +1 -0
  266. package/dist/client-search/model/semanticSearch.d.ts +2 -2
  267. package/dist/client-search/model/snippetResult.d.ts +1 -1
  268. package/dist/client-search/model/snippetResult.d.ts.map +1 -1
  269. package/dist/client-search/model/snippetResultOption.d.ts +2 -2
  270. package/dist/client-search/model/sortRemainingBy.d.ts +1 -1
  271. package/dist/client-search/model/supportedLanguage.d.ts +5 -0
  272. package/dist/client-search/model/supportedLanguage.d.ts.map +1 -0
  273. package/dist/client-search/model/tagFilters.d.ts +1 -1
  274. package/dist/client-search/model/taskStatus.d.ts +1 -1
  275. package/dist/client-search/model/timeRange.d.ts +2 -2
  276. package/dist/client-search/model/typoTolerance.d.ts +1 -1
  277. package/dist/client-search/model/typoToleranceEnum.d.ts +3 -0
  278. package/dist/client-search/model/typoToleranceEnum.d.ts.map +1 -1
  279. package/dist/client-search/model/updateApiKeyResponse.d.ts +1 -1
  280. package/dist/client-search/model/updatedAtResponse.d.ts +2 -2
  281. package/dist/client-search/model/updatedAtWithObjectIdResponse.d.ts +3 -3
  282. package/dist/client-search/model/updatedRuleResponse.d.ts +3 -3
  283. package/dist/client-search/model/userHit.d.ts +1 -1
  284. package/dist/client-search/model/userId.d.ts +1 -1
  285. package/dist/client-search/model/value.d.ts +1 -1
  286. package/dist/client-search/src/searchClient.d.ts +324 -202
  287. package/dist/client-search/src/searchClient.d.ts.map +1 -1
  288. package/dist/lite/builds/browser.d.ts +14 -3
  289. package/dist/lite/builds/browser.d.ts.map +1 -1
  290. package/dist/lite/builds/node.d.ts +14 -3
  291. package/dist/lite/builds/node.d.ts.map +1 -1
  292. package/dist/lite/lite.cjs +8 -6
  293. package/dist/lite/lite.esm.browser.js +13 -14
  294. package/dist/lite/lite.esm.node.js +8 -6
  295. package/dist/lite/lite.umd.js +2 -2
  296. package/dist/lite/model/acl.d.ts +1 -1
  297. package/dist/lite/model/action.d.ts +1 -1
  298. package/dist/lite/model/addApiKeyResponse.d.ts +1 -1
  299. package/dist/lite/model/anchoring.d.ts +1 -1
  300. package/dist/lite/model/apiKey.d.ts +8 -8
  301. package/dist/lite/model/apiKeyOperation.d.ts +2 -0
  302. package/dist/lite/model/apiKeyOperation.d.ts.map +1 -0
  303. package/dist/lite/model/aroundPrecision.d.ts +1 -1
  304. package/dist/lite/model/aroundPrecisionFromValueInner.d.ts +9 -0
  305. package/dist/lite/model/aroundPrecisionFromValueInner.d.ts.map +1 -1
  306. package/dist/lite/model/aroundRadius.d.ts +1 -1
  307. package/dist/lite/model/aroundRadiusAll.d.ts +3 -0
  308. package/dist/lite/model/aroundRadiusAll.d.ts.map +1 -1
  309. package/dist/lite/model/automaticFacetFilter.d.ts +4 -4
  310. package/dist/lite/model/automaticFacetFilters.d.ts +1 -1
  311. package/dist/lite/model/baseGetApiKeyResponse.d.ts +1 -1
  312. package/dist/lite/model/baseIndexSettings.d.ts +22 -17
  313. package/dist/lite/model/baseIndexSettings.d.ts.map +1 -1
  314. package/dist/lite/model/baseSearchParamsWithoutQuery.d.ts +26 -29
  315. package/dist/lite/model/baseSearchParamsWithoutQuery.d.ts.map +1 -1
  316. package/dist/lite/model/baseSearchResponse.d.ts +10 -6
  317. package/dist/lite/model/baseSearchResponse.d.ts.map +1 -1
  318. package/dist/lite/model/builtInOperation.d.ts +2 -2
  319. package/dist/lite/model/builtInOperationType.d.ts +1 -1
  320. package/dist/lite/model/condition.d.ts +7 -3
  321. package/dist/lite/model/condition.d.ts.map +1 -1
  322. package/dist/lite/model/consequence.d.ts +5 -5
  323. package/dist/lite/model/consequenceHide.d.ts +2 -2
  324. package/dist/lite/model/consequenceQuery.d.ts +1 -1
  325. package/dist/lite/model/consequenceQueryObject.d.ts +2 -2
  326. package/dist/lite/model/cursor.d.ts +1 -1
  327. package/dist/lite/model/deleteByParams.d.ts +4 -4
  328. package/dist/lite/model/dictionaryEntry.d.ts +6 -8
  329. package/dist/lite/model/dictionaryEntry.d.ts.map +1 -1
  330. package/dist/lite/model/dictionaryEntryState.d.ts +1 -1
  331. package/dist/lite/model/dictionaryLanguage.d.ts +2 -2
  332. package/dist/lite/model/distinct.d.ts +1 -1
  333. package/dist/lite/model/edit.d.ts +1 -1
  334. package/dist/lite/model/exactOnSingleWordQuery.d.ts +1 -1
  335. package/dist/lite/model/facetFilters.d.ts +1 -1
  336. package/dist/lite/model/facetHits.d.ts +2 -2
  337. package/dist/lite/model/facetOrdering.d.ts +2 -2
  338. package/dist/lite/model/facets.d.ts +2 -2
  339. package/dist/lite/model/fetchedIndex.d.ts +1 -1
  340. package/dist/lite/model/highlightResult.d.ts +1 -1
  341. package/dist/lite/model/highlightResult.d.ts.map +1 -1
  342. package/dist/lite/model/highlightResultOption.d.ts +3 -3
  343. package/dist/lite/model/hit.d.ts +4 -4
  344. package/dist/lite/model/ignorePlurals.d.ts +3 -2
  345. package/dist/lite/model/ignorePlurals.d.ts.map +1 -1
  346. package/dist/lite/model/index.d.ts +4 -0
  347. package/dist/lite/model/index.d.ts.map +1 -1
  348. package/dist/lite/model/indexSettings.d.ts +1 -1
  349. package/dist/lite/model/indexSettingsAsSearchParams.d.ts +32 -35
  350. package/dist/lite/model/indexSettingsAsSearchParams.d.ts.map +1 -1
  351. package/dist/lite/model/matchLevel.d.ts +1 -1
  352. package/dist/lite/model/mode.d.ts +1 -1
  353. package/dist/lite/model/numericFilters.d.ts +1 -1
  354. package/dist/lite/model/operationType.d.ts +1 -1
  355. package/dist/lite/model/optionalFilters.d.ts +1 -1
  356. package/dist/lite/model/params.d.ts +1 -1
  357. package/dist/lite/model/promoteObjectID.d.ts +2 -2
  358. package/dist/lite/model/promoteObjectIDs.d.ts +2 -2
  359. package/dist/lite/model/queryType.d.ts +1 -1
  360. package/dist/lite/model/rankingInfo.d.ts +10 -7
  361. package/dist/lite/model/rankingInfo.d.ts.map +1 -1
  362. package/dist/lite/model/reRankingApplyFilter.d.ts +1 -1
  363. package/dist/lite/model/removeStopWords.d.ts +3 -2
  364. package/dist/lite/model/removeStopWords.d.ts.map +1 -1
  365. package/dist/lite/model/removeWordsIfNoResults.d.ts +1 -1
  366. package/dist/lite/model/renderingContent.d.ts +1 -1
  367. package/dist/lite/model/rule.d.ts +5 -5
  368. package/dist/lite/model/searchDictionaryEntriesResponse.d.ts +20 -0
  369. package/dist/lite/model/searchDictionaryEntriesResponse.d.ts.map +1 -0
  370. package/dist/lite/model/searchForFacetValuesResponse.d.ts +3 -0
  371. package/dist/lite/model/searchForFacetValuesResponse.d.ts.map +1 -1
  372. package/dist/lite/model/searchForFacetsOptions.d.ts +2 -2
  373. package/dist/lite/model/searchForHitsOptions.d.ts +1 -1
  374. package/dist/lite/model/searchHits.d.ts +6 -3
  375. package/dist/lite/model/searchHits.d.ts.map +1 -1
  376. package/dist/lite/model/searchParamsObject.d.ts +3 -0
  377. package/dist/lite/model/searchParamsObject.d.ts.map +1 -1
  378. package/dist/lite/model/searchParamsQuery.d.ts +1 -1
  379. package/dist/lite/model/searchStrategy.d.ts +1 -1
  380. package/dist/lite/model/searchSynonymsResponse.d.ts +2 -2
  381. package/dist/lite/model/securedAPIKeyRestrictions.d.ts +25 -0
  382. package/dist/lite/model/securedAPIKeyRestrictions.d.ts.map +1 -0
  383. package/dist/lite/model/semanticSearch.d.ts +2 -2
  384. package/dist/lite/model/snippetResult.d.ts +1 -1
  385. package/dist/lite/model/snippetResult.d.ts.map +1 -1
  386. package/dist/lite/model/snippetResultOption.d.ts +2 -2
  387. package/dist/lite/model/sortRemainingBy.d.ts +1 -1
  388. package/dist/lite/model/supportedLanguage.d.ts +5 -0
  389. package/dist/lite/model/supportedLanguage.d.ts.map +1 -0
  390. package/dist/lite/model/tagFilters.d.ts +1 -1
  391. package/dist/lite/model/taskStatus.d.ts +1 -1
  392. package/dist/lite/model/timeRange.d.ts +2 -2
  393. package/dist/lite/model/typoTolerance.d.ts +1 -1
  394. package/dist/lite/model/typoToleranceEnum.d.ts +3 -0
  395. package/dist/lite/model/typoToleranceEnum.d.ts.map +1 -1
  396. package/dist/lite/model/updatedRuleResponse.d.ts +3 -3
  397. package/dist/lite/model/userId.d.ts +1 -1
  398. package/dist/lite/model/value.d.ts +1 -1
  399. package/dist/lite/src/liteClient.d.ts +6 -9
  400. package/dist/lite/src/liteClient.d.ts.map +1 -1
  401. package/lite/builds/browser.ts +11 -6
  402. package/lite/builds/node.ts +10 -5
  403. package/lite/model/acl.ts +1 -1
  404. package/lite/model/action.ts +1 -1
  405. package/lite/model/addApiKeyResponse.ts +1 -1
  406. package/lite/model/anchoring.ts +1 -1
  407. package/lite/model/apiKey.ts +8 -8
  408. package/lite/model/apiKeyOperation.ts +3 -0
  409. package/lite/model/aroundPrecision.ts +1 -1
  410. package/lite/model/aroundPrecisionFromValueInner.ts +9 -0
  411. package/lite/model/aroundRadius.ts +1 -1
  412. package/lite/model/aroundRadiusAll.ts +3 -0
  413. package/lite/model/automaticFacetFilter.ts +4 -4
  414. package/lite/model/automaticFacetFilters.ts +1 -1
  415. package/lite/model/baseGetApiKeyResponse.ts +1 -1
  416. package/lite/model/baseIndexSettings.ts +24 -17
  417. package/lite/model/baseSearchParamsWithoutQuery.ts +26 -30
  418. package/lite/model/baseSearchResponse.ts +11 -6
  419. package/lite/model/builtInOperation.ts +2 -2
  420. package/lite/model/builtInOperationType.ts +1 -1
  421. package/lite/model/condition.ts +8 -3
  422. package/lite/model/consequence.ts +5 -5
  423. package/lite/model/consequenceHide.ts +2 -2
  424. package/lite/model/consequenceQuery.ts +1 -1
  425. package/lite/model/consequenceQueryObject.ts +2 -2
  426. package/lite/model/cursor.ts +1 -1
  427. package/lite/model/deleteByParams.ts +4 -4
  428. package/lite/model/dictionaryEntry.ts +6 -8
  429. package/lite/model/dictionaryEntryState.ts +1 -1
  430. package/lite/model/dictionaryLanguage.ts +2 -2
  431. package/lite/model/distinct.ts +1 -1
  432. package/lite/model/edit.ts +1 -1
  433. package/lite/model/exactOnSingleWordQuery.ts +1 -1
  434. package/lite/model/facetFilters.ts +1 -1
  435. package/lite/model/facetHits.ts +2 -2
  436. package/lite/model/facetOrdering.ts +2 -2
  437. package/lite/model/facets.ts +2 -2
  438. package/lite/model/fetchedIndex.ts +1 -1
  439. package/lite/model/highlightResult.ts +1 -0
  440. package/lite/model/highlightResultOption.ts +3 -3
  441. package/lite/model/hit.ts +4 -4
  442. package/lite/model/ignorePlurals.ts +4 -2
  443. package/lite/model/index.ts +4 -0
  444. package/lite/model/indexSettings.ts +1 -1
  445. package/lite/model/indexSettingsAsSearchParams.ts +32 -36
  446. package/lite/model/matchLevel.ts +1 -1
  447. package/lite/model/mode.ts +1 -1
  448. package/lite/model/numericFilters.ts +1 -1
  449. package/lite/model/operationType.ts +1 -1
  450. package/lite/model/optionalFilters.ts +1 -1
  451. package/lite/model/params.ts +1 -1
  452. package/lite/model/promoteObjectID.ts +2 -2
  453. package/lite/model/promoteObjectIDs.ts +2 -2
  454. package/lite/model/queryType.ts +1 -1
  455. package/lite/model/rankingInfo.ts +10 -7
  456. package/lite/model/reRankingApplyFilter.ts +1 -1
  457. package/lite/model/removeStopWords.ts +4 -2
  458. package/lite/model/removeWordsIfNoResults.ts +1 -1
  459. package/lite/model/renderingContent.ts +1 -1
  460. package/lite/model/rule.ts +5 -5
  461. package/lite/model/searchDictionaryEntriesResponse.ts +25 -0
  462. package/lite/model/searchForFacetValuesResponse.ts +3 -0
  463. package/lite/model/searchForFacetsOptions.ts +2 -2
  464. package/lite/model/searchForHitsOptions.ts +1 -1
  465. package/lite/model/searchHits.ts +6 -3
  466. package/lite/model/searchParamsObject.ts +3 -0
  467. package/lite/model/searchParamsQuery.ts +1 -1
  468. package/lite/model/searchStrategy.ts +1 -1
  469. package/lite/model/searchSynonymsResponse.ts +2 -2
  470. package/lite/model/securedAPIKeyRestrictions.ts +32 -0
  471. package/lite/model/semanticSearch.ts +2 -2
  472. package/lite/model/snippetResult.ts +2 -1
  473. package/lite/model/snippetResultOption.ts +2 -2
  474. package/lite/model/sortRemainingBy.ts +1 -1
  475. package/lite/model/supportedLanguage.ts +74 -0
  476. package/lite/model/tagFilters.ts +1 -1
  477. package/lite/model/taskStatus.ts +1 -1
  478. package/lite/model/timeRange.ts +2 -2
  479. package/lite/model/typoTolerance.ts +1 -1
  480. package/lite/model/typoToleranceEnum.ts +3 -0
  481. package/lite/model/updatedRuleResponse.ts +3 -3
  482. package/lite/model/userId.ts +1 -1
  483. package/lite/model/value.ts +1 -1
  484. package/lite/src/liteClient.ts +8 -12
  485. package/package.json +14 -14
  486. package/dist/client-abtesting/model/currenciesValue.d.ts.map +0 -1
  487. package/dist/client-analytics/model/averageClickEvent.d.ts +0 -15
  488. package/dist/client-analytics/model/averageClickEvent.d.ts.map +0 -1
  489. package/dist/client-analytics/model/clickPosition.d.ts +0 -11
  490. package/dist/client-analytics/model/clickPosition.d.ts.map +0 -1
  491. package/dist/client-analytics/model/clickThroughRateEvent.d.ts +0 -19
  492. package/dist/client-analytics/model/clickThroughRateEvent.d.ts.map +0 -1
  493. package/dist/client-analytics/model/conversionRateEvent.d.ts +0 -19
  494. package/dist/client-analytics/model/conversionRateEvent.d.ts.map +0 -1
  495. package/dist/client-analytics/model/getConversationRateResponse.d.ts +0 -20
  496. package/dist/client-analytics/model/getConversationRateResponse.d.ts.map +0 -1
  497. package/dist/client-analytics/model/noClickRateEvent.d.ts +0 -19
  498. package/dist/client-analytics/model/noClickRateEvent.d.ts.map +0 -1
  499. package/dist/client-analytics/model/noResultsRateEvent.d.ts +0 -19
  500. package/dist/client-analytics/model/noResultsRateEvent.d.ts.map +0 -1
  501. package/dist/client-analytics/model/searchEvent.d.ts +0 -11
  502. package/dist/client-analytics/model/searchEvent.d.ts.map +0 -1
  503. package/dist/client-analytics/model/searchNoClickEvent.d.ts +0 -15
  504. package/dist/client-analytics/model/searchNoClickEvent.d.ts.map +0 -1
  505. package/dist/client-analytics/model/searchNoResultEvent.d.ts +0 -15
  506. package/dist/client-analytics/model/searchNoResultEvent.d.ts.map +0 -1
  507. package/dist/client-analytics/model/userWithDate.d.ts +0 -11
  508. package/dist/client-analytics/model/userWithDate.d.ts.map +0 -1
@@ -247,7 +247,7 @@ function _toPrimitive(t, r) {
247
247
  }
248
248
  function _toPropertyKey(t) {
249
249
  var i = _toPrimitive(t, "string");
250
- return "symbol" == typeof i ? i : String(i);
250
+ return "symbol" == typeof i ? i : i + "";
251
251
  }
252
252
  function _defineProperty(obj, key, value) {
253
253
  key = _toPropertyKey(key);
@@ -321,7 +321,7 @@ function shuffle(array) {
321
321
  }
322
322
  function serializeUrl(host, path, queryParameters) {
323
323
  const queryParametersAsString = serializeQueryParameters(queryParameters);
324
- let url = `${host.protocol}://${host.url}/${path.charAt(0) === '/' ? path.substr(1) : path}`;
324
+ let url = `${host.protocol}://${host.url}${host.port ? `:${host.port}` : ''}/${path.charAt(0) === '/' ? path.substring(1) : path}`;
325
325
  if (queryParametersAsString.length) {
326
326
  url += `?${queryParametersAsString}`;
327
327
  }
@@ -329,7 +329,7 @@ function serializeUrl(host, path, queryParameters) {
329
329
  }
330
330
  function serializeQueryParameters(parameters) {
331
331
  const isObjectOrArray = value => Object.prototype.toString.call(value) === '[object Object]' || Object.prototype.toString.call(value) === '[object Array]';
332
- return Object.keys(parameters).map(key => `${key}=${encodeURIComponent(isObjectOrArray(parameters[key]) ? JSON.stringify(parameters[key]) : parameters[key])}`).join('&');
332
+ return Object.keys(parameters).map(key => `${key}=${encodeURIComponent(isObjectOrArray(parameters[key]) ? JSON.stringify(parameters[key]) : parameters[key]).replaceAll('+', '%20')}`).join('&');
333
333
  }
334
334
  function serializeData(request, requestOptions) {
335
335
  if (request.method === 'GET' || request.data === undefined && requestOptions.data === undefined) {
@@ -500,16 +500,13 @@ function createTransporter({
500
500
  if (host === undefined) {
501
501
  throw new RetryError(stackTraceWithoutCredentials(stackTrace));
502
502
  }
503
- let responseTimeout = requestOptions.timeout;
504
- if (responseTimeout === undefined) {
505
- responseTimeout = isRead ? timeouts.read : timeouts.write;
506
- }
503
+ let responseTimeout = isRead ? requestOptions.timeouts?.read || timeouts.read : requestOptions.timeouts?.write || timeouts.write;
507
504
  const payload = {
508
505
  data,
509
506
  headers,
510
507
  method: request.method,
511
508
  url: serializeUrl(host, request.path, queryParameters),
512
- connectTimeout: getTimeout(timeoutsCount, timeouts.connect),
509
+ connectTimeout: getTimeout(timeoutsCount, requestOptions.timeouts?.connect || timeouts.connect),
513
510
  responseTimeout: getTimeout(timeoutsCount, responseTimeout)
514
511
  };
515
512
  /**
@@ -685,7 +682,7 @@ const DEFAULT_READ_TIMEOUT_BROWSER = 2000;
685
682
  const DEFAULT_WRITE_TIMEOUT_BROWSER = 30000;
686
683
 
687
684
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
688
- const apiClientVersion$4 = '5.0.0-alpha.99';
685
+ const apiClientVersion$4 = '5.0.0-beta.1';
689
686
  const REGIONS$2 = ['de', 'us'];
690
687
  function getDefaultHosts$3(region) {
691
688
  const url = !region
@@ -745,9 +742,11 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
745
742
  transporter.algoliaAgent.add({ segment, version });
746
743
  },
747
744
  /**
748
- * Creates an A/B test.
745
+ * Creates a new A/B test.
746
+ *
747
+ * Required API Key ACLs:
748
+ * - editSettings.
749
749
  *
750
- * @summary Create an A/B test.
751
750
  * @param addABTestsRequest - The addABTestsRequest object.
752
751
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
753
752
  */
@@ -779,7 +778,6 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
779
778
  /**
780
779
  * This method allow you to send requests to the Algolia REST API.
781
780
  *
782
- * @summary Send requests to the Algolia REST API.
783
781
  * @param customDelete - The customDelete object.
784
782
  * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
785
783
  * @param customDelete.parameters - Query parameters to apply to the current query.
@@ -789,7 +787,7 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
789
787
  if (!path) {
790
788
  throw new Error('Parameter `path` is required when calling `customDelete`.');
791
789
  }
792
- const requestPath = '/1{path}'.replace('{path}', path);
790
+ const requestPath = '/{path}'.replace('{path}', path);
793
791
  const headers = {};
794
792
  const queryParameters = parameters ? parameters : {};
795
793
  const request = {
@@ -803,7 +801,6 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
803
801
  /**
804
802
  * This method allow you to send requests to the Algolia REST API.
805
803
  *
806
- * @summary Send requests to the Algolia REST API.
807
804
  * @param customGet - The customGet object.
808
805
  * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
809
806
  * @param customGet.parameters - Query parameters to apply to the current query.
@@ -813,7 +810,7 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
813
810
  if (!path) {
814
811
  throw new Error('Parameter `path` is required when calling `customGet`.');
815
812
  }
816
- const requestPath = '/1{path}'.replace('{path}', path);
813
+ const requestPath = '/{path}'.replace('{path}', path);
817
814
  const headers = {};
818
815
  const queryParameters = parameters ? parameters : {};
819
816
  const request = {
@@ -827,7 +824,6 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
827
824
  /**
828
825
  * This method allow you to send requests to the Algolia REST API.
829
826
  *
830
- * @summary Send requests to the Algolia REST API.
831
827
  * @param customPost - The customPost object.
832
828
  * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
833
829
  * @param customPost.parameters - Query parameters to apply to the current query.
@@ -838,7 +834,7 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
838
834
  if (!path) {
839
835
  throw new Error('Parameter `path` is required when calling `customPost`.');
840
836
  }
841
- const requestPath = '/1{path}'.replace('{path}', path);
837
+ const requestPath = '/{path}'.replace('{path}', path);
842
838
  const headers = {};
843
839
  const queryParameters = parameters ? parameters : {};
844
840
  const request = {
@@ -853,7 +849,6 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
853
849
  /**
854
850
  * This method allow you to send requests to the Algolia REST API.
855
851
  *
856
- * @summary Send requests to the Algolia REST API.
857
852
  * @param customPut - The customPut object.
858
853
  * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
859
854
  * @param customPut.parameters - Query parameters to apply to the current query.
@@ -864,7 +859,7 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
864
859
  if (!path) {
865
860
  throw new Error('Parameter `path` is required when calling `customPut`.');
866
861
  }
867
- const requestPath = '/1{path}'.replace('{path}', path);
862
+ const requestPath = '/{path}'.replace('{path}', path);
868
863
  const headers = {};
869
864
  const queryParameters = parameters ? parameters : {};
870
865
  const request = {
@@ -877,11 +872,13 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
877
872
  return transporter.request(request, requestOptions);
878
873
  },
879
874
  /**
880
- * Delete an A/B test. To determine the `id` for an A/B test, use the [`listABTests` operation](#tag/abtest/operation/listABTests).
875
+ * Deletes an A/B test by its ID.
876
+ *
877
+ * Required API Key ACLs:
878
+ * - editSettings.
881
879
  *
882
- * @summary Delete an A/B test.
883
880
  * @param deleteABTest - The deleteABTest object.
884
- * @param deleteABTest.id - Unique A/B test ID.
881
+ * @param deleteABTest.id - Unique A/B test identifier.
885
882
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
886
883
  */
887
884
  deleteABTest({ id }, requestOptions) {
@@ -900,11 +897,13 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
900
897
  return transporter.request(request, requestOptions);
901
898
  },
902
899
  /**
903
- * Get specific details for an A/B test. To determine the `id` for an A/B test, use the [`listABTests` operation](#tag/abtest/operation/listABTests).
900
+ * Retrieves the details for an A/B test by its ID.
901
+ *
902
+ * Required API Key ACLs:
903
+ * - analytics.
904
904
  *
905
- * @summary Get A/B test details.
906
905
  * @param getABTest - The getABTest object.
907
- * @param getABTest.id - Unique A/B test ID.
906
+ * @param getABTest.id - Unique A/B test identifier.
908
907
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
909
908
  */
910
909
  getABTest({ id }, requestOptions) {
@@ -923,14 +922,16 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
923
922
  return transporter.request(request, requestOptions);
924
923
  },
925
924
  /**
926
- * List all A/B tests.
925
+ * Lists all A/B tests you configured for this application.
926
+ *
927
+ * Required API Key ACLs:
928
+ * - analytics.
927
929
  *
928
- * @summary List all A/B tests.
929
930
  * @param listABTests - The listABTests object.
930
- * @param listABTests.offset - Position of the starting record. Used for paging. 0 is the first record.
931
- * @param listABTests.limit - Number of records to return (page size).
932
- * @param listABTests.indexPrefix - Only return A/B tests for indices starting with this prefix.
933
- * @param listABTests.indexSuffix - Only return A/B tests for indices ending with this suffix.
931
+ * @param listABTests.offset - Position of the first item to return.
932
+ * @param listABTests.limit - Number of items to return.
933
+ * @param listABTests.indexPrefix - Index name prefix. Only A/B tests for indices starting with this string are included in the response.
934
+ * @param listABTests.indexSuffix - Index name suffix. Only A/B tests for indices ending with this string are included in the response.
934
935
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
935
936
  */
936
937
  listABTests({ offset, limit, indexPrefix, indexSuffix } = {}, requestOptions = undefined) {
@@ -958,11 +959,13 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
958
959
  return transporter.request(request, requestOptions);
959
960
  },
960
961
  /**
961
- * If stopped, the test is over and can\'t be restarted. There is now only one index, receiving 100% of all search requests. The data gathered for stopped A/B tests is retained. To determine the `id` for an A/B test, use the [`listABTests` operation](#tag/abtest/operation/listABTests).
962
+ * Stops an A/B test by its ID. You can\'t restart stopped A/B tests.
963
+ *
964
+ * Required API Key ACLs:
965
+ * - editSettings.
962
966
  *
963
- * @summary Stop an A/B test.
964
967
  * @param stopABTest - The stopABTest object.
965
- * @param stopABTest.id - Unique A/B test ID.
968
+ * @param stopABTest.id - Unique A/B test identifier.
966
969
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
967
970
  */
968
971
  stopABTest({ id }, requestOptions) {
@@ -984,7 +987,7 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
984
987
  }
985
988
 
986
989
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
987
- const apiClientVersion$3 = '5.0.0-alpha.99';
990
+ const apiClientVersion$3 = '5.0.0-beta.1';
988
991
  const REGIONS$1 = ['de', 'us'];
989
992
  function getDefaultHosts$2(region) {
990
993
  const url = !region
@@ -1046,7 +1049,6 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1046
1049
  /**
1047
1050
  * This method allow you to send requests to the Algolia REST API.
1048
1051
  *
1049
- * @summary Send requests to the Algolia REST API.
1050
1052
  * @param customDelete - The customDelete object.
1051
1053
  * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
1052
1054
  * @param customDelete.parameters - Query parameters to apply to the current query.
@@ -1056,7 +1058,7 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1056
1058
  if (!path) {
1057
1059
  throw new Error('Parameter `path` is required when calling `customDelete`.');
1058
1060
  }
1059
- const requestPath = '/1{path}'.replace('{path}', path);
1061
+ const requestPath = '/{path}'.replace('{path}', path);
1060
1062
  const headers = {};
1061
1063
  const queryParameters = parameters ? parameters : {};
1062
1064
  const request = {
@@ -1070,7 +1072,6 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1070
1072
  /**
1071
1073
  * This method allow you to send requests to the Algolia REST API.
1072
1074
  *
1073
- * @summary Send requests to the Algolia REST API.
1074
1075
  * @param customGet - The customGet object.
1075
1076
  * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
1076
1077
  * @param customGet.parameters - Query parameters to apply to the current query.
@@ -1080,7 +1081,7 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1080
1081
  if (!path) {
1081
1082
  throw new Error('Parameter `path` is required when calling `customGet`.');
1082
1083
  }
1083
- const requestPath = '/1{path}'.replace('{path}', path);
1084
+ const requestPath = '/{path}'.replace('{path}', path);
1084
1085
  const headers = {};
1085
1086
  const queryParameters = parameters ? parameters : {};
1086
1087
  const request = {
@@ -1094,7 +1095,6 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1094
1095
  /**
1095
1096
  * This method allow you to send requests to the Algolia REST API.
1096
1097
  *
1097
- * @summary Send requests to the Algolia REST API.
1098
1098
  * @param customPost - The customPost object.
1099
1099
  * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
1100
1100
  * @param customPost.parameters - Query parameters to apply to the current query.
@@ -1105,7 +1105,7 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1105
1105
  if (!path) {
1106
1106
  throw new Error('Parameter `path` is required when calling `customPost`.');
1107
1107
  }
1108
- const requestPath = '/1{path}'.replace('{path}', path);
1108
+ const requestPath = '/{path}'.replace('{path}', path);
1109
1109
  const headers = {};
1110
1110
  const queryParameters = parameters ? parameters : {};
1111
1111
  const request = {
@@ -1120,7 +1120,6 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1120
1120
  /**
1121
1121
  * This method allow you to send requests to the Algolia REST API.
1122
1122
  *
1123
- * @summary Send requests to the Algolia REST API.
1124
1123
  * @param customPut - The customPut object.
1125
1124
  * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
1126
1125
  * @param customPut.parameters - Query parameters to apply to the current query.
@@ -1131,7 +1130,7 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1131
1130
  if (!path) {
1132
1131
  throw new Error('Parameter `path` is required when calling `customPut`.');
1133
1132
  }
1134
- const requestPath = '/1{path}'.replace('{path}', path);
1133
+ const requestPath = '/{path}'.replace('{path}', path);
1135
1134
  const headers = {};
1136
1135
  const queryParameters = parameters ? parameters : {};
1137
1136
  const request = {
@@ -1144,14 +1143,56 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1144
1143
  return transporter.request(request, requestOptions);
1145
1144
  },
1146
1145
  /**
1147
- * Return the average click position for the complete time range and for individual days. > **Note**: If all `positions` have a `clickCount` of `0` or `null`, it means Algolia didn\'t receive any click events for tracked searches. A _tracked_ search is a search request where the `clickAnalytics` parameter is `true`.
1146
+ * Retrieves the add-to-cart rate for all of your searches with at least one add-to-cart event, including a daily breakdown. By default, the analyzed period includes the last eight days including the current day.
1147
+ *
1148
+ * Required API Key ACLs:
1149
+ * - analytics.
1150
+ *
1151
+ * @param getAddToCartRate - The getAddToCartRate object.
1152
+ * @param getAddToCartRate.index - Index name.
1153
+ * @param getAddToCartRate.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1154
+ * @param getAddToCartRate.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1155
+ * @param getAddToCartRate.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1156
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1157
+ */
1158
+ getAddToCartRate({ index, startDate, endDate, tags }, requestOptions) {
1159
+ if (!index) {
1160
+ throw new Error('Parameter `index` is required when calling `getAddToCartRate`.');
1161
+ }
1162
+ const requestPath = '/2/conversions/addToCartRate';
1163
+ const headers = {};
1164
+ const queryParameters = {};
1165
+ if (index !== undefined) {
1166
+ queryParameters.index = index.toString();
1167
+ }
1168
+ if (startDate !== undefined) {
1169
+ queryParameters.startDate = startDate.toString();
1170
+ }
1171
+ if (endDate !== undefined) {
1172
+ queryParameters.endDate = endDate.toString();
1173
+ }
1174
+ if (tags !== undefined) {
1175
+ queryParameters.tags = tags.toString();
1176
+ }
1177
+ const request = {
1178
+ method: 'GET',
1179
+ path: requestPath,
1180
+ queryParameters,
1181
+ headers,
1182
+ };
1183
+ return transporter.request(request, requestOptions);
1184
+ },
1185
+ /**
1186
+ * Retrieves the average click position of your search results, including a daily breakdown. The average click position is the average of all clicked search results\' positions. For example, if users only ever click on the first result for any search, the average click position is 1. By default, the analyzed period includes the last eight days including the current day.
1187
+ *
1188
+ * Required API Key ACLs:
1189
+ * - analytics.
1148
1190
  *
1149
- * @summary Get average click position.
1150
1191
  * @param getAverageClickPosition - The getAverageClickPosition object.
1151
- * @param getAverageClickPosition.index - Index name to target.
1152
- * @param getAverageClickPosition.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1153
- * @param getAverageClickPosition.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1154
- * @param getAverageClickPosition.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1192
+ * @param getAverageClickPosition.index - Index name.
1193
+ * @param getAverageClickPosition.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1194
+ * @param getAverageClickPosition.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1195
+ * @param getAverageClickPosition.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1155
1196
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1156
1197
  */
1157
1198
  getAverageClickPosition({ index, startDate, endDate, tags }, requestOptions) {
@@ -1182,14 +1223,16 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1182
1223
  return transporter.request(request, requestOptions);
1183
1224
  },
1184
1225
  /**
1185
- * Show the number of clicks events and their associated position in the search results. > **Note**: If all `positions` have a `clickCount` of `0` or `null`, it means Algolia didn\'t receive any click events for tracked searches. A _tracked_ search is a search request where the `clickAnalytics` parameter is `true`.
1226
+ * Retrieves the positions in the search results and their associated number of clicks. This lets you check how many clicks the first, second, or tenth search results receive.
1227
+ *
1228
+ * Required API Key ACLs:
1229
+ * - analytics.
1186
1230
  *
1187
- * @summary Get click positions.
1188
1231
  * @param getClickPositions - The getClickPositions object.
1189
- * @param getClickPositions.index - Index name to target.
1190
- * @param getClickPositions.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1191
- * @param getClickPositions.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1192
- * @param getClickPositions.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1232
+ * @param getClickPositions.index - Index name.
1233
+ * @param getClickPositions.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1234
+ * @param getClickPositions.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1235
+ * @param getClickPositions.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1193
1236
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1194
1237
  */
1195
1238
  getClickPositions({ index, startDate, endDate, tags }, requestOptions) {
@@ -1220,14 +1263,16 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1220
1263
  return transporter.request(request, requestOptions);
1221
1264
  },
1222
1265
  /**
1223
- * Returns a [click-through rate (CTR)](https://www.algolia.com/doc/guides/search-analytics/concepts/metrics/#click-through-rate).
1266
+ * Retrieves the click-through rate for all of your searches with at least one click event, including a daily breakdown By default, the analyzed period includes the last eight days including the current day.
1267
+ *
1268
+ * Required API Key ACLs:
1269
+ * - analytics.
1224
1270
  *
1225
- * @summary Get click-through rate (CTR).
1226
1271
  * @param getClickThroughRate - The getClickThroughRate object.
1227
- * @param getClickThroughRate.index - Index name to target.
1228
- * @param getClickThroughRate.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1229
- * @param getClickThroughRate.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1230
- * @param getClickThroughRate.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1272
+ * @param getClickThroughRate.index - Index name.
1273
+ * @param getClickThroughRate.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1274
+ * @param getClickThroughRate.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1275
+ * @param getClickThroughRate.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1231
1276
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1232
1277
  */
1233
1278
  getClickThroughRate({ index, startDate, endDate, tags }, requestOptions) {
@@ -1258,19 +1303,21 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1258
1303
  return transporter.request(request, requestOptions);
1259
1304
  },
1260
1305
  /**
1261
- * Return a [conversion rate](https://www.algolia.com/doc/guides/search-analytics/concepts/metrics/#conversion-rate).
1306
+ * Retrieves the conversion rate for all of your searches with at least one conversion event, including a daily breakdown. By default, the analyzed period includes the last eight days including the current day.
1307
+ *
1308
+ * Required API Key ACLs:
1309
+ * - analytics.
1262
1310
  *
1263
- * @summary Get conversion rate (CR).
1264
- * @param getConversationRate - The getConversationRate object.
1265
- * @param getConversationRate.index - Index name to target.
1266
- * @param getConversationRate.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1267
- * @param getConversationRate.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1268
- * @param getConversationRate.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1311
+ * @param getConversionRate - The getConversionRate object.
1312
+ * @param getConversionRate.index - Index name.
1313
+ * @param getConversionRate.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1314
+ * @param getConversionRate.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1315
+ * @param getConversionRate.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1269
1316
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1270
1317
  */
1271
- getConversationRate({ index, startDate, endDate, tags }, requestOptions) {
1318
+ getConversionRate({ index, startDate, endDate, tags }, requestOptions) {
1272
1319
  if (!index) {
1273
- throw new Error('Parameter `index` is required when calling `getConversationRate`.');
1320
+ throw new Error('Parameter `index` is required when calling `getConversionRate`.');
1274
1321
  }
1275
1322
  const requestPath = '/2/conversions/conversionRate';
1276
1323
  const headers = {};
@@ -1296,14 +1343,16 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1296
1343
  return transporter.request(request, requestOptions);
1297
1344
  },
1298
1345
  /**
1299
- * Returns the rate at which searches don\'t lead to any clicks. The endpoint returns a value for the complete given time range, as well as a value per day. It also returns the count of searches and searches without clicks.
1346
+ * Retrieves the fraction of searches that didn\'t lead to any click within a time range, including a daily breakdown. By default, the analyzed period includes the last eight days including the current day.
1347
+ *
1348
+ * Required API Key ACLs:
1349
+ * - analytics.
1300
1350
  *
1301
- * @summary Get no click rate.
1302
1351
  * @param getNoClickRate - The getNoClickRate object.
1303
- * @param getNoClickRate.index - Index name to target.
1304
- * @param getNoClickRate.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1305
- * @param getNoClickRate.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1306
- * @param getNoClickRate.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1352
+ * @param getNoClickRate.index - Index name.
1353
+ * @param getNoClickRate.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1354
+ * @param getNoClickRate.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1355
+ * @param getNoClickRate.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1307
1356
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1308
1357
  */
1309
1358
  getNoClickRate({ index, startDate, endDate, tags }, requestOptions) {
@@ -1334,14 +1383,16 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1334
1383
  return transporter.request(request, requestOptions);
1335
1384
  },
1336
1385
  /**
1337
- * Returns the rate at which searches didn\'t return any results.
1386
+ * Retrieves the fraction of searches that didn\'t return any results within a time range, including a daily breakdown. By default, the analyzed period includes the last eight days including the current day.
1387
+ *
1388
+ * Required API Key ACLs:
1389
+ * - analytics.
1338
1390
  *
1339
- * @summary Get no results rate.
1340
1391
  * @param getNoResultsRate - The getNoResultsRate object.
1341
- * @param getNoResultsRate.index - Index name to target.
1342
- * @param getNoResultsRate.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1343
- * @param getNoResultsRate.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1344
- * @param getNoResultsRate.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1392
+ * @param getNoResultsRate.index - Index name.
1393
+ * @param getNoResultsRate.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1394
+ * @param getNoResultsRate.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1395
+ * @param getNoResultsRate.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1345
1396
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1346
1397
  */
1347
1398
  getNoResultsRate({ index, startDate, endDate, tags }, requestOptions) {
@@ -1372,14 +1423,96 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1372
1423
  return transporter.request(request, requestOptions);
1373
1424
  },
1374
1425
  /**
1375
- * Returns the number of searches within a time range.
1426
+ * Retrieves the purchase rate for all of your searches with at least one purchase event, including a daily breakdown. By default, the analyzed period includes the last eight days including the current day.
1427
+ *
1428
+ * Required API Key ACLs:
1429
+ * - analytics.
1430
+ *
1431
+ * @param getPurchaseRate - The getPurchaseRate object.
1432
+ * @param getPurchaseRate.index - Index name.
1433
+ * @param getPurchaseRate.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1434
+ * @param getPurchaseRate.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1435
+ * @param getPurchaseRate.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1436
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1437
+ */
1438
+ getPurchaseRate({ index, startDate, endDate, tags }, requestOptions) {
1439
+ if (!index) {
1440
+ throw new Error('Parameter `index` is required when calling `getPurchaseRate`.');
1441
+ }
1442
+ const requestPath = '/2/conversions/purchaseRate';
1443
+ const headers = {};
1444
+ const queryParameters = {};
1445
+ if (index !== undefined) {
1446
+ queryParameters.index = index.toString();
1447
+ }
1448
+ if (startDate !== undefined) {
1449
+ queryParameters.startDate = startDate.toString();
1450
+ }
1451
+ if (endDate !== undefined) {
1452
+ queryParameters.endDate = endDate.toString();
1453
+ }
1454
+ if (tags !== undefined) {
1455
+ queryParameters.tags = tags.toString();
1456
+ }
1457
+ const request = {
1458
+ method: 'GET',
1459
+ path: requestPath,
1460
+ queryParameters,
1461
+ headers,
1462
+ };
1463
+ return transporter.request(request, requestOptions);
1464
+ },
1465
+ /**
1466
+ * Retrieves revenue-related metrics, such as the total revenue or the average order value. To retrieve revenue-related metrics, sent purchase events. By default, the analyzed period includes the last eight days including the current day.
1467
+ *
1468
+ * Required API Key ACLs:
1469
+ * - analytics.
1470
+ *
1471
+ * @param getRevenue - The getRevenue object.
1472
+ * @param getRevenue.index - Index name.
1473
+ * @param getRevenue.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1474
+ * @param getRevenue.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1475
+ * @param getRevenue.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1476
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1477
+ */
1478
+ getRevenue({ index, startDate, endDate, tags }, requestOptions) {
1479
+ if (!index) {
1480
+ throw new Error('Parameter `index` is required when calling `getRevenue`.');
1481
+ }
1482
+ const requestPath = '/2/conversions/revenue';
1483
+ const headers = {};
1484
+ const queryParameters = {};
1485
+ if (index !== undefined) {
1486
+ queryParameters.index = index.toString();
1487
+ }
1488
+ if (startDate !== undefined) {
1489
+ queryParameters.startDate = startDate.toString();
1490
+ }
1491
+ if (endDate !== undefined) {
1492
+ queryParameters.endDate = endDate.toString();
1493
+ }
1494
+ if (tags !== undefined) {
1495
+ queryParameters.tags = tags.toString();
1496
+ }
1497
+ const request = {
1498
+ method: 'GET',
1499
+ path: requestPath,
1500
+ queryParameters,
1501
+ headers,
1502
+ };
1503
+ return transporter.request(request, requestOptions);
1504
+ },
1505
+ /**
1506
+ * Retrieves the number of searches within a time range, including a daily breakdown. By default, the analyzed period includes the last eight days including the current day.
1507
+ *
1508
+ * Required API Key ACLs:
1509
+ * - analytics.
1376
1510
  *
1377
- * @summary Get number of searches.
1378
1511
  * @param getSearchesCount - The getSearchesCount object.
1379
- * @param getSearchesCount.index - Index name to target.
1380
- * @param getSearchesCount.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1381
- * @param getSearchesCount.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1382
- * @param getSearchesCount.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1512
+ * @param getSearchesCount.index - Index name.
1513
+ * @param getSearchesCount.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1514
+ * @param getSearchesCount.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1515
+ * @param getSearchesCount.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1383
1516
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1384
1517
  */
1385
1518
  getSearchesCount({ index, startDate, endDate, tags }, requestOptions) {
@@ -1410,16 +1543,18 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1410
1543
  return transporter.request(request, requestOptions);
1411
1544
  },
1412
1545
  /**
1413
- * Return the most popular of the last 1,000 searches that didn\'t lead to any clicks.
1546
+ * Retrieves the most popular searches that didn\'t lead to any clicks, from the 1,000 most frequent searches.
1547
+ *
1548
+ * Required API Key ACLs:
1549
+ * - analytics.
1414
1550
  *
1415
- * @summary Get top searches with no clicks.
1416
1551
  * @param getSearchesNoClicks - The getSearchesNoClicks object.
1417
- * @param getSearchesNoClicks.index - Index name to target.
1418
- * @param getSearchesNoClicks.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1419
- * @param getSearchesNoClicks.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1420
- * @param getSearchesNoClicks.limit - Number of records to return (page size).
1421
- * @param getSearchesNoClicks.offset - Position of the starting record. Used for paging. 0 is the first record.
1422
- * @param getSearchesNoClicks.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1552
+ * @param getSearchesNoClicks.index - Index name.
1553
+ * @param getSearchesNoClicks.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1554
+ * @param getSearchesNoClicks.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1555
+ * @param getSearchesNoClicks.limit - Number of items to return.
1556
+ * @param getSearchesNoClicks.offset - Position of the first item to return.
1557
+ * @param getSearchesNoClicks.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1423
1558
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1424
1559
  */
1425
1560
  getSearchesNoClicks({ index, startDate, endDate, limit, offset, tags, }, requestOptions) {
@@ -1456,16 +1591,18 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1456
1591
  return transporter.request(request, requestOptions);
1457
1592
  },
1458
1593
  /**
1459
- * Returns the most popular of the latest 1,000 searches that didn\'t return any results.
1594
+ * Retrieves the most popular searches that didn\'t return any results.
1595
+ *
1596
+ * Required API Key ACLs:
1597
+ * - analytics.
1460
1598
  *
1461
- * @summary Get top searches with no results.
1462
1599
  * @param getSearchesNoResults - The getSearchesNoResults object.
1463
- * @param getSearchesNoResults.index - Index name to target.
1464
- * @param getSearchesNoResults.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1465
- * @param getSearchesNoResults.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1466
- * @param getSearchesNoResults.limit - Number of records to return (page size).
1467
- * @param getSearchesNoResults.offset - Position of the starting record. Used for paging. 0 is the first record.
1468
- * @param getSearchesNoResults.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1600
+ * @param getSearchesNoResults.index - Index name.
1601
+ * @param getSearchesNoResults.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1602
+ * @param getSearchesNoResults.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1603
+ * @param getSearchesNoResults.limit - Number of items to return.
1604
+ * @param getSearchesNoResults.offset - Position of the first item to return.
1605
+ * @param getSearchesNoResults.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1469
1606
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1470
1607
  */
1471
1608
  getSearchesNoResults({ index, startDate, endDate, limit, offset, tags, }, requestOptions) {
@@ -1502,11 +1639,13 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1502
1639
  return transporter.request(request, requestOptions);
1503
1640
  },
1504
1641
  /**
1505
- * Return the latest update time of the Analytics API for an index. If the index has been recently created or no search has been performed yet, `updatedAt` will be `null`. > **Note**: The Analytics API is updated every 5 minutes.
1642
+ * Retrieves the time when the Analytics data for the specified index was last updated. The Analytics data is updated every 5 minutes.
1643
+ *
1644
+ * Required API Key ACLs:
1645
+ * - analytics.
1506
1646
  *
1507
- * @summary Get Analytics API status.
1508
1647
  * @param getStatus - The getStatus object.
1509
- * @param getStatus.index - Index name to target.
1648
+ * @param getStatus.index - Index name.
1510
1649
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1511
1650
  */
1512
1651
  getStatus({ index }, requestOptions) {
@@ -1528,16 +1667,18 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1528
1667
  return transporter.request(request, requestOptions);
1529
1668
  },
1530
1669
  /**
1531
- * Returns top countries. Limited to the 1,000 most frequent ones.
1670
+ * Retrieves the countries with the most searches to your index.
1671
+ *
1672
+ * Required API Key ACLs:
1673
+ * - analytics.
1532
1674
  *
1533
- * @summary Get top countries.
1534
1675
  * @param getTopCountries - The getTopCountries object.
1535
- * @param getTopCountries.index - Index name to target.
1536
- * @param getTopCountries.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1537
- * @param getTopCountries.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1538
- * @param getTopCountries.limit - Number of records to return (page size).
1539
- * @param getTopCountries.offset - Position of the starting record. Used for paging. 0 is the first record.
1540
- * @param getTopCountries.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1676
+ * @param getTopCountries.index - Index name.
1677
+ * @param getTopCountries.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1678
+ * @param getTopCountries.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1679
+ * @param getTopCountries.limit - Number of items to return.
1680
+ * @param getTopCountries.offset - Position of the first item to return.
1681
+ * @param getTopCountries.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1541
1682
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1542
1683
  */
1543
1684
  getTopCountries({ index, startDate, endDate, limit, offset, tags }, requestOptions) {
@@ -1574,17 +1715,19 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1574
1715
  return transporter.request(request, requestOptions);
1575
1716
  },
1576
1717
  /**
1577
- * Return the most popular [filterable attributes](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/) in the 1,000 most recently used filters.
1718
+ * Retrieves the most frequently used filter attributes. These are attributes of your records that you included in the `attributesForFaceting` setting.
1719
+ *
1720
+ * Required API Key ACLs:
1721
+ * - analytics.
1578
1722
  *
1579
- * @summary Get top filterable attributes.
1580
1723
  * @param getTopFilterAttributes - The getTopFilterAttributes object.
1581
- * @param getTopFilterAttributes.index - Index name to target.
1582
- * @param getTopFilterAttributes.search - User query.
1583
- * @param getTopFilterAttributes.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1584
- * @param getTopFilterAttributes.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1585
- * @param getTopFilterAttributes.limit - Number of records to return (page size).
1586
- * @param getTopFilterAttributes.offset - Position of the starting record. Used for paging. 0 is the first record.
1587
- * @param getTopFilterAttributes.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1724
+ * @param getTopFilterAttributes.index - Index name.
1725
+ * @param getTopFilterAttributes.search - Search query.
1726
+ * @param getTopFilterAttributes.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1727
+ * @param getTopFilterAttributes.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1728
+ * @param getTopFilterAttributes.limit - Number of items to return.
1729
+ * @param getTopFilterAttributes.offset - Position of the first item to return.
1730
+ * @param getTopFilterAttributes.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1588
1731
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1589
1732
  */
1590
1733
  getTopFilterAttributes({ index, search, startDate, endDate, limit, offset, tags, }, requestOptions) {
@@ -1624,18 +1767,20 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1624
1767
  return transporter.request(request, requestOptions);
1625
1768
  },
1626
1769
  /**
1627
- * Returns the most popular filter values for an attribute in the 1,000 most recently used filters.
1770
+ * Retrieves the most frequent filter (facet) values for a filter attribute. These are attributes of your records that you included in the `attributesForFaceting` setting.
1771
+ *
1772
+ * Required API Key ACLs:
1773
+ * - analytics.
1628
1774
  *
1629
- * @summary Get top filter values for an attribute.
1630
1775
  * @param getTopFilterForAttribute - The getTopFilterForAttribute object.
1631
1776
  * @param getTopFilterForAttribute.attribute - Attribute name.
1632
- * @param getTopFilterForAttribute.index - Index name to target.
1633
- * @param getTopFilterForAttribute.search - User query.
1634
- * @param getTopFilterForAttribute.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1635
- * @param getTopFilterForAttribute.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1636
- * @param getTopFilterForAttribute.limit - Number of records to return (page size).
1637
- * @param getTopFilterForAttribute.offset - Position of the starting record. Used for paging. 0 is the first record.
1638
- * @param getTopFilterForAttribute.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1777
+ * @param getTopFilterForAttribute.index - Index name.
1778
+ * @param getTopFilterForAttribute.search - Search query.
1779
+ * @param getTopFilterForAttribute.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1780
+ * @param getTopFilterForAttribute.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1781
+ * @param getTopFilterForAttribute.limit - Number of items to return.
1782
+ * @param getTopFilterForAttribute.offset - Position of the first item to return.
1783
+ * @param getTopFilterForAttribute.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1639
1784
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1640
1785
  */
1641
1786
  getTopFilterForAttribute({ attribute, index, search, startDate, endDate, limit, offset, tags, }, requestOptions) {
@@ -1678,17 +1823,19 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1678
1823
  return transporter.request(request, requestOptions);
1679
1824
  },
1680
1825
  /**
1681
- * Returns top filters for filter-enabled searches that don\'t return results. Limited to the 1,000 most recently used filters.
1826
+ * Retrieves the most frequently used filters for a search that didn\'t return any results. To get the most frequent searches without results, use the [Retrieve searches without results](#tag/search/operation/getSearchesNoResults) operation.
1827
+ *
1828
+ * Required API Key ACLs:
1829
+ * - analytics.
1682
1830
  *
1683
- * @summary Get top filters for a no result search.
1684
1831
  * @param getTopFiltersNoResults - The getTopFiltersNoResults object.
1685
- * @param getTopFiltersNoResults.index - Index name to target.
1686
- * @param getTopFiltersNoResults.search - User query.
1687
- * @param getTopFiltersNoResults.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1688
- * @param getTopFiltersNoResults.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1689
- * @param getTopFiltersNoResults.limit - Number of records to return (page size).
1690
- * @param getTopFiltersNoResults.offset - Position of the starting record. Used for paging. 0 is the first record.
1691
- * @param getTopFiltersNoResults.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1832
+ * @param getTopFiltersNoResults.index - Index name.
1833
+ * @param getTopFiltersNoResults.search - Search query.
1834
+ * @param getTopFiltersNoResults.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1835
+ * @param getTopFiltersNoResults.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1836
+ * @param getTopFiltersNoResults.limit - Number of items to return.
1837
+ * @param getTopFiltersNoResults.offset - Position of the first item to return.
1838
+ * @param getTopFiltersNoResults.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1692
1839
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1693
1840
  */
1694
1841
  getTopFiltersNoResults({ index, search, startDate, endDate, limit, offset, tags, }, requestOptions) {
@@ -1728,21 +1875,24 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1728
1875
  return transporter.request(request, requestOptions);
1729
1876
  },
1730
1877
  /**
1731
- * Return the most popular clicked results in the last 1,000 searches.
1878
+ * Retrieves the object IDs of the most frequent search results.
1879
+ *
1880
+ * Required API Key ACLs:
1881
+ * - analytics.
1732
1882
  *
1733
- * @summary Get top hits.
1734
1883
  * @param getTopHits - The getTopHits object.
1735
- * @param getTopHits.index - Index name to target.
1736
- * @param getTopHits.search - User query.
1737
- * @param getTopHits.clickAnalytics - Whether to include [click and conversion](https://www.algolia.com/doc/guides/sending-events/getting-started/) rates for a search.
1738
- * @param getTopHits.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1739
- * @param getTopHits.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1740
- * @param getTopHits.limit - Number of records to return (page size).
1741
- * @param getTopHits.offset - Position of the starting record. Used for paging. 0 is the first record.
1742
- * @param getTopHits.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1884
+ * @param getTopHits.index - Index name.
1885
+ * @param getTopHits.search - Search query.
1886
+ * @param getTopHits.clickAnalytics - Whether to include metrics related to click and conversion events in the response.
1887
+ * @param getTopHits.revenueAnalytics - Whether to include revenue-related metrics in the response. If true, metrics related to click and conversion events are also included in the response.
1888
+ * @param getTopHits.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1889
+ * @param getTopHits.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1890
+ * @param getTopHits.limit - Number of items to return.
1891
+ * @param getTopHits.offset - Position of the first item to return.
1892
+ * @param getTopHits.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1743
1893
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1744
1894
  */
1745
- getTopHits({ index, search, clickAnalytics, startDate, endDate, limit, offset, tags, }, requestOptions) {
1895
+ getTopHits({ index, search, clickAnalytics, revenueAnalytics, startDate, endDate, limit, offset, tags, }, requestOptions) {
1746
1896
  if (!index) {
1747
1897
  throw new Error('Parameter `index` is required when calling `getTopHits`.');
1748
1898
  }
@@ -1758,6 +1908,9 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1758
1908
  if (clickAnalytics !== undefined) {
1759
1909
  queryParameters.clickAnalytics = clickAnalytics.toString();
1760
1910
  }
1911
+ if (revenueAnalytics !== undefined) {
1912
+ queryParameters.revenueAnalytics = revenueAnalytics.toString();
1913
+ }
1761
1914
  if (startDate !== undefined) {
1762
1915
  queryParameters.startDate = startDate.toString();
1763
1916
  }
@@ -1782,22 +1935,25 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1782
1935
  return transporter.request(request, requestOptions);
1783
1936
  },
1784
1937
  /**
1785
- * Returns the most popular of the latest 1,000 searches. For each search, also returns the number of hits.
1938
+ * Returns the most popular search terms.
1939
+ *
1940
+ * Required API Key ACLs:
1941
+ * - analytics.
1786
1942
  *
1787
- * @summary Get top searches.
1788
1943
  * @param getTopSearches - The getTopSearches object.
1789
- * @param getTopSearches.index - Index name to target.
1790
- * @param getTopSearches.clickAnalytics - Whether to include [click and conversion](https://www.algolia.com/doc/guides/sending-events/getting-started/) rates for a search.
1791
- * @param getTopSearches.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1792
- * @param getTopSearches.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1793
- * @param getTopSearches.orderBy - Reorder the results.
1944
+ * @param getTopSearches.index - Index name.
1945
+ * @param getTopSearches.clickAnalytics - Whether to include metrics related to click and conversion events in the response.
1946
+ * @param getTopSearches.revenueAnalytics - Whether to include revenue-related metrics in the response. If true, metrics related to click and conversion events are also included in the response.
1947
+ * @param getTopSearches.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
1948
+ * @param getTopSearches.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
1949
+ * @param getTopSearches.orderBy - Attribute by which to order the response items. If the `clickAnalytics` parameter is false, only `searchCount` is available.
1794
1950
  * @param getTopSearches.direction - Sorting direction of the results: ascending or descending.
1795
- * @param getTopSearches.limit - Number of records to return (page size).
1796
- * @param getTopSearches.offset - Position of the starting record. Used for paging. 0 is the first record.
1797
- * @param getTopSearches.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
1951
+ * @param getTopSearches.limit - Number of items to return.
1952
+ * @param getTopSearches.offset - Position of the first item to return.
1953
+ * @param getTopSearches.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1798
1954
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1799
1955
  */
1800
- getTopSearches({ index, clickAnalytics, startDate, endDate, orderBy, direction, limit, offset, tags, }, requestOptions) {
1956
+ getTopSearches({ index, clickAnalytics, revenueAnalytics, startDate, endDate, orderBy, direction, limit, offset, tags, }, requestOptions) {
1801
1957
  if (!index) {
1802
1958
  throw new Error('Parameter `index` is required when calling `getTopSearches`.');
1803
1959
  }
@@ -1810,6 +1966,9 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1810
1966
  if (clickAnalytics !== undefined) {
1811
1967
  queryParameters.clickAnalytics = clickAnalytics.toString();
1812
1968
  }
1969
+ if (revenueAnalytics !== undefined) {
1970
+ queryParameters.revenueAnalytics = revenueAnalytics.toString();
1971
+ }
1813
1972
  if (startDate !== undefined) {
1814
1973
  queryParameters.startDate = startDate.toString();
1815
1974
  }
@@ -1840,14 +1999,16 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1840
1999
  return transporter.request(request, requestOptions);
1841
2000
  },
1842
2001
  /**
1843
- * Return the count of unique users.
2002
+ * Retrieves the number of unique users within a time range, including a daily breakdown. Since this endpoint returns the number of unique users, the sum of the daily values might be different from the total number. By default, Algolia distinguishes search users by their IP address, _unless_ you include a pseudonymous user identifier in your search requests with the `userToken` API parameter or `x-algolia-usertoken` request header. By default, the analyzed period includes the last eight days including the current day.
2003
+ *
2004
+ * Required API Key ACLs:
2005
+ * - analytics.
1844
2006
  *
1845
- * @summary Get user count.
1846
2007
  * @param getUsersCount - The getUsersCount object.
1847
- * @param getUsersCount.index - Index name to target.
1848
- * @param getUsersCount.startDate - Start date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1849
- * @param getUsersCount.endDate - End date (a string in the format `YYYY-MM-DD`) of the period to analyze.
1850
- * @param getUsersCount.tags - Filter analytics on the [`analyticsTags`](https://www.algolia.com/doc/api-reference/api-parameters/analyticsTags/) set at search time. Multiple tags can be combined with the operators OR and AND. If a tag contains characters like spaces or parentheses, it must be URL-encoded.
2008
+ * @param getUsersCount.index - Index name.
2009
+ * @param getUsersCount.startDate - Start date of the period to analyze, in `YYYY-MM-DD` format.
2010
+ * @param getUsersCount.endDate - End date of the period to analyze, in `YYYY-MM-DD` format.
2011
+ * @param getUsersCount.tags - Tags by which to segment the analytics. You can combine multiple tags with `OR` and `AND`. Tags must be URL-encoded. For more information, see [Segment your analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
1851
2012
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
1852
2013
  */
1853
2014
  getUsersCount({ index, startDate, endDate, tags }, requestOptions) {
@@ -1881,7 +2042,7 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1881
2042
  }
1882
2043
 
1883
2044
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
1884
- const apiClientVersion$2 = '5.0.0-alpha.99';
2045
+ const apiClientVersion$2 = '5.0.0-beta.1';
1885
2046
  const REGIONS = ['eu', 'us'];
1886
2047
  function getDefaultHosts$1(region) {
1887
2048
  const url = 'personalization.{region}.algolia.com'.replace('{region}', region);
@@ -1941,7 +2102,6 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1941
2102
  /**
1942
2103
  * This method allow you to send requests to the Algolia REST API.
1943
2104
  *
1944
- * @summary Send requests to the Algolia REST API.
1945
2105
  * @param customDelete - The customDelete object.
1946
2106
  * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
1947
2107
  * @param customDelete.parameters - Query parameters to apply to the current query.
@@ -1951,7 +2111,7 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1951
2111
  if (!path) {
1952
2112
  throw new Error('Parameter `path` is required when calling `customDelete`.');
1953
2113
  }
1954
- const requestPath = '/1{path}'.replace('{path}', path);
2114
+ const requestPath = '/{path}'.replace('{path}', path);
1955
2115
  const headers = {};
1956
2116
  const queryParameters = parameters ? parameters : {};
1957
2117
  const request = {
@@ -1965,7 +2125,6 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1965
2125
  /**
1966
2126
  * This method allow you to send requests to the Algolia REST API.
1967
2127
  *
1968
- * @summary Send requests to the Algolia REST API.
1969
2128
  * @param customGet - The customGet object.
1970
2129
  * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
1971
2130
  * @param customGet.parameters - Query parameters to apply to the current query.
@@ -1975,7 +2134,7 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1975
2134
  if (!path) {
1976
2135
  throw new Error('Parameter `path` is required when calling `customGet`.');
1977
2136
  }
1978
- const requestPath = '/1{path}'.replace('{path}', path);
2137
+ const requestPath = '/{path}'.replace('{path}', path);
1979
2138
  const headers = {};
1980
2139
  const queryParameters = parameters ? parameters : {};
1981
2140
  const request = {
@@ -1989,7 +2148,6 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1989
2148
  /**
1990
2149
  * This method allow you to send requests to the Algolia REST API.
1991
2150
  *
1992
- * @summary Send requests to the Algolia REST API.
1993
2151
  * @param customPost - The customPost object.
1994
2152
  * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
1995
2153
  * @param customPost.parameters - Query parameters to apply to the current query.
@@ -2000,7 +2158,7 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2000
2158
  if (!path) {
2001
2159
  throw new Error('Parameter `path` is required when calling `customPost`.');
2002
2160
  }
2003
- const requestPath = '/1{path}'.replace('{path}', path);
2161
+ const requestPath = '/{path}'.replace('{path}', path);
2004
2162
  const headers = {};
2005
2163
  const queryParameters = parameters ? parameters : {};
2006
2164
  const request = {
@@ -2015,7 +2173,6 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2015
2173
  /**
2016
2174
  * This method allow you to send requests to the Algolia REST API.
2017
2175
  *
2018
- * @summary Send requests to the Algolia REST API.
2019
2176
  * @param customPut - The customPut object.
2020
2177
  * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
2021
2178
  * @param customPut.parameters - Query parameters to apply to the current query.
@@ -2026,7 +2183,7 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2026
2183
  if (!path) {
2027
2184
  throw new Error('Parameter `path` is required when calling `customPut`.');
2028
2185
  }
2029
- const requestPath = '/1{path}'.replace('{path}', path);
2186
+ const requestPath = '/{path}'.replace('{path}', path);
2030
2187
  const headers = {};
2031
2188
  const queryParameters = parameters ? parameters : {};
2032
2189
  const request = {
@@ -2039,11 +2196,13 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2039
2196
  return transporter.request(request, requestOptions);
2040
2197
  },
2041
2198
  /**
2042
- * Delete the user profile and all its associated data. Returns, as part of the response, a date until which the data can safely be considered as deleted for the given user. This means if you send events for the given user before this date, they will be ignored. Any data received after the deletedUntil date will start building a new user profile. It might take a couple hours for the deletion request to be fully processed.
2199
+ * Deletes a user profile. The response includes a date and time when the user profile can safely be considered deleted.
2200
+ *
2201
+ * Required API Key ACLs:
2202
+ * - recommendation.
2043
2203
  *
2044
- * @summary Delete a user profile.
2045
2204
  * @param deleteUserProfile - The deleteUserProfile object.
2046
- * @param deleteUserProfile.userToken - UserToken representing the user for which to fetch the Personalization profile.
2205
+ * @param deleteUserProfile.userToken - Unique identifier representing a user for which to fetch the personalization profile.
2047
2206
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2048
2207
  */
2049
2208
  deleteUserProfile({ userToken }, requestOptions) {
@@ -2062,9 +2221,11 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2062
2221
  return transporter.request(request, requestOptions);
2063
2222
  },
2064
2223
  /**
2065
- * The strategy contains information on the events and facets that impact user profiles and personalized search results.
2224
+ * Retrieves the current personalization strategy.
2225
+ *
2226
+ * Required API Key ACLs:
2227
+ * - recommendation.
2066
2228
  *
2067
- * @summary Get the current strategy.
2068
2229
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2069
2230
  */
2070
2231
  getPersonalizationStrategy(requestOptions) {
@@ -2080,11 +2241,13 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2080
2241
  return transporter.request(request, requestOptions);
2081
2242
  },
2082
2243
  /**
2083
- * Get the user profile built from Personalization strategy. The profile is structured by facet name used in the strategy. Each facet value is mapped to its score. Each score represents the user affinity for a specific facet value given the userToken past events and the Personalization strategy defined. Scores are bounded to 20. The last processed event timestamp is provided using the ISO 8601 format for debugging purposes.
2244
+ * Retrieves a user profile and their affinities for different facets.
2245
+ *
2246
+ * Required API Key ACLs:
2247
+ * - recommendation.
2084
2248
  *
2085
- * @summary Get a user profile.
2086
2249
  * @param getUserTokenProfile - The getUserTokenProfile object.
2087
- * @param getUserTokenProfile.userToken - UserToken representing the user for which to fetch the Personalization profile.
2250
+ * @param getUserTokenProfile.userToken - Unique identifier representing a user for which to fetch the personalization profile.
2088
2251
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2089
2252
  */
2090
2253
  getUserTokenProfile({ userToken }, requestOptions) {
@@ -2103,9 +2266,11 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2103
2266
  return transporter.request(request, requestOptions);
2104
2267
  },
2105
2268
  /**
2106
- * A strategy defines the events and facets that impact user profiles and personalized search results.
2269
+ * Creates a new personalization strategy.
2270
+ *
2271
+ * Required API Key ACLs:
2272
+ * - recommendation.
2107
2273
  *
2108
- * @summary Set a new strategy.
2109
2274
  * @param personalizationStrategyParams - The personalizationStrategyParams object.
2110
2275
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2111
2276
  */
@@ -2138,7 +2303,7 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
2138
2303
  }
2139
2304
 
2140
2305
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
2141
- const apiClientVersion$1 = '5.0.0-alpha.99';
2306
+ const apiClientVersion$1 = '5.0.0-beta.1';
2142
2307
  function getDefaultHosts(appId) {
2143
2308
  return [
2144
2309
  {
@@ -2224,7 +2389,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2224
2389
  * Helper: Wait for a task to be published (completed) for a given `indexName` and `taskID`.
2225
2390
  *
2226
2391
  * @summary Helper method that waits for a task to be published (completed).
2227
- * @param waitForTaskOptions - The waitForTaskOptions object.
2392
+ * @param waitForTaskOptions - The `waitForTaskOptions` object.
2228
2393
  * @param waitForTaskOptions.indexName - The `indexName` where the operation was performed.
2229
2394
  * @param waitForTaskOptions.taskID - The `taskID` returned in the method response.
2230
2395
  * @param waitForTaskOptions.maxRetries - The maximum number of retries. 50 by default.
@@ -2248,7 +2413,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2248
2413
  * Helper: Wait for an API key to be added, updated or deleted based on a given `operation`.
2249
2414
  *
2250
2415
  * @summary Helper method that waits for an API key task to be processed.
2251
- * @param waitForApiKeyOptions - The waitForApiKeyOptions object.
2416
+ * @param waitForApiKeyOptions - The `waitForApiKeyOptions` object.
2252
2417
  * @param waitForApiKeyOptions.operation - The `operation` that was done on a `key`.
2253
2418
  * @param waitForApiKeyOptions.key - The `key` that has been added, deleted or updated.
2254
2419
  * @param waitForApiKeyOptions.apiKey - Necessary to know if an `update` operation has been processed, compare fields of the response with it.
@@ -2301,7 +2466,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2301
2466
  * Helper: Iterate on the `browse` method of the client to allow aggregating objects of an index.
2302
2467
  *
2303
2468
  * @summary Helper method that iterates on the `browse` method.
2304
- * @param browseObjects - The browseObjects object.
2469
+ * @param browseObjects - The `browseObjects` object.
2305
2470
  * @param browseObjects.indexName - The index in which to perform the request.
2306
2471
  * @param browseObjects.browseParams - The `browse` parameters.
2307
2472
  * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is no `cursor` in the response.
@@ -2327,11 +2492,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2327
2492
  * Helper: Iterate on the `searchRules` method of the client to allow aggregating rules of an index.
2328
2493
  *
2329
2494
  * @summary Helper method that iterates on the `searchRules` method.
2330
- * @param browseObjects - The browseObjects object.
2331
- * @param browseObjects.indexName - The index in which to perform the request.
2332
- * @param browseObjects.searchRulesParams - The `searchRules` method parameters.
2333
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
2334
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
2495
+ * @param browseRules - The `browseRules` object.
2496
+ * @param browseRules.indexName - The index in which to perform the request.
2497
+ * @param browseRules.searchRulesParams - The `searchRules` method parameters.
2498
+ * @param browseRules.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
2499
+ * @param browseRules.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
2335
2500
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchRules` method and merged with the transporter requestOptions.
2336
2501
  */
2337
2502
  browseRules({ indexName, searchRulesParams, ...browseRulesOptions }, requestOptions) {
@@ -2359,11 +2524,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2359
2524
  * Helper: Iterate on the `searchSynonyms` method of the client to allow aggregating rules of an index.
2360
2525
  *
2361
2526
  * @summary Helper method that iterates on the `searchSynonyms` method.
2362
- * @param browseObjects - The browseObjects object.
2363
- * @param browseObjects.indexName - The index in which to perform the request.
2364
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
2365
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
2366
- * @param browseObjects.searchSynonymsParams - The `searchSynonyms` method parameters.
2527
+ * @param browseSynonyms - The `browseSynonyms` object.
2528
+ * @param browseSynonyms.indexName - The index in which to perform the request.
2529
+ * @param browseSynonyms.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
2530
+ * @param browseSynonyms.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
2531
+ * @param browseSynonyms.searchSynonymsParams - The `searchSynonyms` method parameters.
2367
2532
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchSynonyms` method and merged with the transporter requestOptions.
2368
2533
  */
2369
2534
  browseSynonyms({ indexName, searchSynonymsParams, ...browseSynonymsOptions }, requestOptions) {
@@ -2373,16 +2538,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2373
2538
  hitsPerPage: 1000,
2374
2539
  };
2375
2540
  return createIterablePromise({
2376
- func: (previousResponse) => {
2377
- return this.searchSynonyms({
2541
+ func: (_) => {
2542
+ const resp = this.searchSynonyms({
2378
2543
  indexName,
2379
2544
  searchSynonymsParams: {
2380
2545
  ...params,
2381
- page: previousResponse
2382
- ? previousResponse.page + 1
2383
- : params.page,
2546
+ page: params.page,
2384
2547
  },
2385
2548
  }, requestOptions);
2549
+ params.page += 1;
2550
+ return resp;
2386
2551
  },
2387
2552
  validate: (response) => response.nbHits < params.hitsPerPage,
2388
2553
  ...browseSynonymsOptions,
@@ -2411,9 +2576,76 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2411
2576
  return this.search(searchMethodParams, requestOptions);
2412
2577
  },
2413
2578
  /**
2414
- * Add a new API key with specific permissions and restrictions. The request must be authenticated with the admin API key. The response returns an API key string.
2579
+ * Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests.
2580
+ *
2581
+ * @summary Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests.
2582
+ * @param chunkedBatch - The `chunkedBatch` object.
2583
+ * @param chunkedBatch.indexName - The `indexName` to replace `objects` in.
2584
+ * @param chunkedBatch.objects - The array of `objects` to store in the given Algolia `indexName`.
2585
+ * @param chunkedBatch.action - The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
2586
+ * @param chunkedBatch.waitForTasks - Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
2587
+ * @param chunkedBatch.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
2588
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
2589
+ */
2590
+ async chunkedBatch({ indexName, objects, action = 'addObject', waitForTasks, batchSize = 1000, }, requestOptions) {
2591
+ let requests = [];
2592
+ const responses = [];
2593
+ for (const [i, obj] of objects.entries()) {
2594
+ requests.push({ action, body: obj });
2595
+ if (i % batchSize === 0) {
2596
+ responses.push(await this.batch({ indexName, batchWriteParams: { requests } }, requestOptions));
2597
+ requests = [];
2598
+ }
2599
+ }
2600
+ if (waitForTasks) {
2601
+ for (const resp of responses) {
2602
+ await this.waitForTask({ indexName, taskID: resp.taskID });
2603
+ }
2604
+ }
2605
+ return responses;
2606
+ },
2607
+ /**
2608
+ * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
2609
+ *
2610
+ * @summary Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
2611
+ * @param replaceAllObjects - The `replaceAllObjects` object.
2612
+ * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
2613
+ * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
2614
+ * @param replaceAllObjects.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
2615
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
2616
+ */
2617
+ async replaceAllObjects({ indexName, objects, batchSize }, requestOptions) {
2618
+ const randomSuffix = Math.random().toString(36).substring(7);
2619
+ const tmpIndexName = `${indexName}_tmp_${randomSuffix}`;
2620
+ const copyOperationResponse = await this.operationIndex({
2621
+ indexName,
2622
+ operationIndexParams: {
2623
+ operation: 'copy',
2624
+ destination: tmpIndexName,
2625
+ scope: ['settings', 'rules', 'synonyms'],
2626
+ },
2627
+ }, requestOptions);
2628
+ await this.waitForTask({
2629
+ indexName,
2630
+ taskID: copyOperationResponse.taskID,
2631
+ });
2632
+ const batchResponses = await this.chunkedBatch({ indexName: tmpIndexName, objects, waitForTasks: true, batchSize }, requestOptions);
2633
+ const moveOperationResponse = await this.operationIndex({
2634
+ indexName: tmpIndexName,
2635
+ operationIndexParams: { operation: 'move', destination: indexName },
2636
+ }, requestOptions);
2637
+ await this.waitForTask({
2638
+ indexName,
2639
+ taskID: moveOperationResponse.taskID,
2640
+ });
2641
+ return { copyOperationResponse, batchResponses, moveOperationResponse };
2642
+ },
2643
+ /**
2644
+ * Creates a new API key with specific permissions and restrictions.
2645
+ *
2646
+ * Required API Key ACLs:
2647
+ * - admin.
2415
2648
  *
2416
- * @summary Add API key.
2417
2649
  * @param apiKey - The apiKey object.
2418
2650
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2419
2651
  */
@@ -2437,13 +2669,15 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2437
2669
  return transporter.request(request, requestOptions);
2438
2670
  },
2439
2671
  /**
2440
- * If you use an existing `objectID`, the existing record will be replaced with the new one. To update only some attributes of an existing record, use the [`partial` operation](#tag/Records/operation/partialUpdateObject) instead. To add multiple records to your index in a single API request, use the [`batch` operation](#tag/Records/operation/batch).
2672
+ * If a record with the specified object ID exists, the existing record is replaced. Otherwise, a new record is added to the index. To update _some_ attributes of an existing record, use the [`partial` operation](#tag/Records/operation/partialUpdateObject) instead. To add, update, or replace multiple records, use the [`batch` operation](#tag/Records/operation/batch).
2673
+ *
2674
+ * Required API Key ACLs:
2675
+ * - addObject.
2441
2676
  *
2442
- * @summary Add or update a record (using objectID).
2443
2677
  * @param addOrUpdateObject - The addOrUpdateObject object.
2444
- * @param addOrUpdateObject.indexName - Index on which to perform the request.
2445
- * @param addOrUpdateObject.objectID - Unique record (object) identifier.
2446
- * @param addOrUpdateObject.body - Algolia record.
2678
+ * @param addOrUpdateObject.indexName - Name of the index on which to perform the operation.
2679
+ * @param addOrUpdateObject.objectID - Unique record identifier.
2680
+ * @param addOrUpdateObject.body - The record, a schemaless object with attributes that are useful in the context of search and discovery.
2447
2681
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2448
2682
  */
2449
2683
  addOrUpdateObject({ indexName, objectID, body }, requestOptions) {
@@ -2471,9 +2705,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2471
2705
  return transporter.request(request, requestOptions);
2472
2706
  },
2473
2707
  /**
2474
- * Add a source to the list of allowed sources.
2708
+ * Adds a source to the list of allowed sources.
2709
+ *
2710
+ * Required API Key ACLs:
2711
+ * - admin.
2475
2712
  *
2476
- * @summary Add a source.
2477
2713
  * @param source - Source to add.
2478
2714
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2479
2715
  */
@@ -2497,11 +2733,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2497
2733
  return transporter.request(request, requestOptions);
2498
2734
  },
2499
2735
  /**
2500
- * Assign or move a user ID to a cluster. The time it takes to move a user is proportional to the amount of data linked to the user ID.
2736
+ * Assigns or moves a user ID to a cluster. The time it takes to move a user is proportional to the amount of data linked to the user ID.
2737
+ *
2738
+ * Required API Key ACLs:
2739
+ * - admin.
2501
2740
  *
2502
- * @summary Assign or move a user ID.
2503
2741
  * @param assignUserId - The assignUserId object.
2504
- * @param assignUserId.xAlgoliaUserID - UserID to assign.
2742
+ * @param assignUserId.xAlgoliaUserID - Unique identifier of the user who makes the search request.
2505
2743
  * @param assignUserId.assignUserIdParams - The assignUserIdParams object.
2506
2744
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2507
2745
  */
@@ -2531,11 +2769,10 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2531
2769
  return transporter.request(request, requestOptions);
2532
2770
  },
2533
2771
  /**
2534
- * To reduce the time spent on network round trips, you can perform several write actions in a single API call. Actions are applied in the order they are specified. The supported `action`s are equivalent to the individual operations of the same name.
2772
+ * Adds, updates, or deletes records in one index with a single API request. Batching index updates reduces latency and increases data integrity. - Actions are applied in the order they\'re specified. - Actions are equivalent to the individual API requests of the same name.
2535
2773
  *
2536
- * @summary Batch write operations on one index.
2537
2774
  * @param batch - The batch object.
2538
- * @param batch.indexName - Index on which to perform the request.
2775
+ * @param batch.indexName - Name of the index on which to perform the operation.
2539
2776
  * @param batch.batchWriteParams - The batchWriteParams object.
2540
2777
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2541
2778
  */
@@ -2562,11 +2799,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2562
2799
  return transporter.request(request, requestOptions);
2563
2800
  },
2564
2801
  /**
2565
- * Assign multiple user IDs to a cluster. **You can\'t _move_ users with this operation.**.
2802
+ * Assigns multiple user IDs to a cluster. **You can\'t move users with this operation**.
2803
+ *
2804
+ * Required API Key ACLs:
2805
+ * - admin.
2566
2806
  *
2567
- * @summary Batch assign userIDs.
2568
2807
  * @param batchAssignUserIds - The batchAssignUserIds object.
2569
- * @param batchAssignUserIds.xAlgoliaUserID - UserID to assign.
2808
+ * @param batchAssignUserIds.xAlgoliaUserID - Unique identifier of the user who makes the search request.
2570
2809
  * @param batchAssignUserIds.batchAssignUserIdsParams - The batchAssignUserIdsParams object.
2571
2810
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2572
2811
  */
@@ -2599,11 +2838,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2599
2838
  return transporter.request(request, requestOptions);
2600
2839
  },
2601
2840
  /**
2602
- * Add or remove a batch of dictionary entries.
2841
+ * Adds or deletes multiple entries from your plurals, segmentation, or stop word dictionaries.
2842
+ *
2843
+ * Required API Key ACLs:
2844
+ * - editSettings.
2603
2845
  *
2604
- * @summary Batch dictionary entries.
2605
2846
  * @param batchDictionaryEntries - The batchDictionaryEntries object.
2606
- * @param batchDictionaryEntries.dictionaryName - Dictionary to search in.
2847
+ * @param batchDictionaryEntries.dictionaryName - Dictionary type in which to search.
2607
2848
  * @param batchDictionaryEntries.batchDictionaryEntriesParams - The batchDictionaryEntriesParams object.
2608
2849
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2609
2850
  */
@@ -2630,11 +2871,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2630
2871
  return transporter.request(request, requestOptions);
2631
2872
  },
2632
2873
  /**
2633
- * Retrieve up to 1,000 records per call. Supports full-text search and filters. For better performance, it doesn\'t support: - The `distinct` query parameter - Sorting by typos, proximity, words, or geographical distance.
2874
+ * Retrieves records from an index, up to 1,000 per request. While searching retrieves _hits_ (records augmented with attributes for highlighting and ranking details), browsing _just_ returns matching records. This can be useful if you want to export your indices. - The Analytics API doesn\'t collect data when using `browse`. - Records are ranked by attributes and custom ranking. - Deduplication (`distinct`) is turned off. - There\'s no ranking for: typo-tolerance, number of matched words, proximity, geo distance.
2875
+ *
2876
+ * Required API Key ACLs:
2877
+ * - browse.
2634
2878
  *
2635
- * @summary Get all records from an index.
2636
2879
  * @param browse - The browse object.
2637
- * @param browse.indexName - Index on which to perform the request.
2880
+ * @param browse.indexName - Name of the index on which to perform the operation.
2638
2881
  * @param browse.browseParams - The browseParams object.
2639
2882
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2640
2883
  */
@@ -2655,11 +2898,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2655
2898
  return transporter.request(request, requestOptions);
2656
2899
  },
2657
2900
  /**
2658
- * Delete the records but leave settings and index-specific API keys untouched.
2901
+ * Deletes only the records from an index while keeping settings, synonyms, and rules.
2902
+ *
2903
+ * Required API Key ACLs:
2904
+ * - deleteIndex.
2659
2905
  *
2660
- * @summary Delete all records from an index.
2661
2906
  * @param clearObjects - The clearObjects object.
2662
- * @param clearObjects.indexName - Index on which to perform the request.
2907
+ * @param clearObjects.indexName - Name of the index on which to perform the operation.
2663
2908
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2664
2909
  */
2665
2910
  clearObjects({ indexName }, requestOptions) {
@@ -2678,12 +2923,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2678
2923
  return transporter.request(request, requestOptions);
2679
2924
  },
2680
2925
  /**
2681
- * Delete all rules in the index.
2926
+ * Deletes all rules from the index.
2927
+ *
2928
+ * Required API Key ACLs:
2929
+ * - editSettings.
2682
2930
  *
2683
- * @summary Delete all rules.
2684
2931
  * @param clearRules - The clearRules object.
2685
- * @param clearRules.indexName - Index on which to perform the request.
2686
- * @param clearRules.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
2932
+ * @param clearRules.indexName - Name of the index on which to perform the operation.
2933
+ * @param clearRules.forwardToReplicas - Whether changes are applied to replica indices.
2687
2934
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2688
2935
  */
2689
2936
  clearRules({ indexName, forwardToReplicas }, requestOptions) {
@@ -2705,12 +2952,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2705
2952
  return transporter.request(request, requestOptions);
2706
2953
  },
2707
2954
  /**
2708
- * Delete all synonyms in the index.
2955
+ * Deletes all synonyms from the index.
2956
+ *
2957
+ * Required API Key ACLs:
2958
+ * - editSettings.
2709
2959
  *
2710
- * @summary Delete all synonyms.
2711
2960
  * @param clearSynonyms - The clearSynonyms object.
2712
- * @param clearSynonyms.indexName - Index on which to perform the request.
2713
- * @param clearSynonyms.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
2961
+ * @param clearSynonyms.indexName - Name of the index on which to perform the operation.
2962
+ * @param clearSynonyms.forwardToReplicas - Whether changes are applied to replica indices.
2714
2963
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2715
2964
  */
2716
2965
  clearSynonyms({ indexName, forwardToReplicas }, requestOptions) {
@@ -2734,7 +2983,6 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2734
2983
  /**
2735
2984
  * This method allow you to send requests to the Algolia REST API.
2736
2985
  *
2737
- * @summary Send requests to the Algolia REST API.
2738
2986
  * @param customDelete - The customDelete object.
2739
2987
  * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
2740
2988
  * @param customDelete.parameters - Query parameters to apply to the current query.
@@ -2744,7 +2992,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2744
2992
  if (!path) {
2745
2993
  throw new Error('Parameter `path` is required when calling `customDelete`.');
2746
2994
  }
2747
- const requestPath = '/1{path}'.replace('{path}', path);
2995
+ const requestPath = '/{path}'.replace('{path}', path);
2748
2996
  const headers = {};
2749
2997
  const queryParameters = parameters ? parameters : {};
2750
2998
  const request = {
@@ -2758,7 +3006,6 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2758
3006
  /**
2759
3007
  * This method allow you to send requests to the Algolia REST API.
2760
3008
  *
2761
- * @summary Send requests to the Algolia REST API.
2762
3009
  * @param customGet - The customGet object.
2763
3010
  * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
2764
3011
  * @param customGet.parameters - Query parameters to apply to the current query.
@@ -2768,7 +3015,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2768
3015
  if (!path) {
2769
3016
  throw new Error('Parameter `path` is required when calling `customGet`.');
2770
3017
  }
2771
- const requestPath = '/1{path}'.replace('{path}', path);
3018
+ const requestPath = '/{path}'.replace('{path}', path);
2772
3019
  const headers = {};
2773
3020
  const queryParameters = parameters ? parameters : {};
2774
3021
  const request = {
@@ -2782,7 +3029,6 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2782
3029
  /**
2783
3030
  * This method allow you to send requests to the Algolia REST API.
2784
3031
  *
2785
- * @summary Send requests to the Algolia REST API.
2786
3032
  * @param customPost - The customPost object.
2787
3033
  * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
2788
3034
  * @param customPost.parameters - Query parameters to apply to the current query.
@@ -2793,7 +3039,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2793
3039
  if (!path) {
2794
3040
  throw new Error('Parameter `path` is required when calling `customPost`.');
2795
3041
  }
2796
- const requestPath = '/1{path}'.replace('{path}', path);
3042
+ const requestPath = '/{path}'.replace('{path}', path);
2797
3043
  const headers = {};
2798
3044
  const queryParameters = parameters ? parameters : {};
2799
3045
  const request = {
@@ -2808,7 +3054,6 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2808
3054
  /**
2809
3055
  * This method allow you to send requests to the Algolia REST API.
2810
3056
  *
2811
- * @summary Send requests to the Algolia REST API.
2812
3057
  * @param customPut - The customPut object.
2813
3058
  * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
2814
3059
  * @param customPut.parameters - Query parameters to apply to the current query.
@@ -2819,7 +3064,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2819
3064
  if (!path) {
2820
3065
  throw new Error('Parameter `path` is required when calling `customPut`.');
2821
3066
  }
2822
- const requestPath = '/1{path}'.replace('{path}', path);
3067
+ const requestPath = '/{path}'.replace('{path}', path);
2823
3068
  const headers = {};
2824
3069
  const queryParameters = parameters ? parameters : {};
2825
3070
  const request = {
@@ -2832,9 +3077,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2832
3077
  return transporter.request(request, requestOptions);
2833
3078
  },
2834
3079
  /**
2835
- * Delete an existing API key. The request must be authenticated with the admin API key.
3080
+ * Deletes the API key.
3081
+ *
3082
+ * Required API Key ACLs:
3083
+ * - admin.
2836
3084
  *
2837
- * @summary Delete API key.
2838
3085
  * @param deleteApiKey - The deleteApiKey object.
2839
3086
  * @param deleteApiKey.key - API key.
2840
3087
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -2855,11 +3102,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2855
3102
  return transporter.request(request, requestOptions);
2856
3103
  },
2857
3104
  /**
2858
- * This operation doesn\'t support all the query options, only its filters (numeric, facet, or tag) and geo queries. It doesn\'t accept empty filters or queries.
3105
+ * This operation doesn\'t accept empty queries or filters. It\'s more efficient to get a list of object IDs with the [`browse` operation](#tag/Search/operation/browse), and then delete the records using the [`batch` operation](tag/Records/operation/batch).
3106
+ *
3107
+ * Required API Key ACLs:
3108
+ * - deleteIndex.
2859
3109
  *
2860
- * @summary Delete all records matching a query.
2861
3110
  * @param deleteBy - The deleteBy object.
2862
- * @param deleteBy.indexName - Index on which to perform the request.
3111
+ * @param deleteBy.indexName - Name of the index on which to perform the operation.
2863
3112
  * @param deleteBy.deleteByParams - The deleteByParams object.
2864
3113
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2865
3114
  */
@@ -2883,11 +3132,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2883
3132
  return transporter.request(request, requestOptions);
2884
3133
  },
2885
3134
  /**
2886
- * Delete an existing index.
3135
+ * Deletes an index and all its settings. - Deleting an index doesn\'t delete its analytics data. - If you try to delete a non-existing index, the operation is ignored without warning. - If the index you want to delete has replica indices, the replicas become independent indices. - If the index you want to delete is a replica index, you must first unlink it from its primary index before you can delete it. For more information, see [Delete replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/how-to/deleting-replicas/).
3136
+ *
3137
+ * Required API Key ACLs:
3138
+ * - deleteIndex.
2887
3139
  *
2888
- * @summary Delete index.
2889
3140
  * @param deleteIndex - The deleteIndex object.
2890
- * @param deleteIndex.indexName - Index on which to perform the request.
3141
+ * @param deleteIndex.indexName - Name of the index on which to perform the operation.
2891
3142
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2892
3143
  */
2893
3144
  deleteIndex({ indexName }, requestOptions) {
@@ -2906,12 +3157,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2906
3157
  return transporter.request(request, requestOptions);
2907
3158
  },
2908
3159
  /**
2909
- * To delete a set of records matching a query, use the [`deleteByQuery` operation](#tag/Records/operation/deleteBy) instead.
3160
+ * Deletes a record by its object ID. To delete more than one record, use the [`batch` operation](#tag/Records/operation/batch). To delete records matching a query, use the [`deleteByQuery` operation](#tag/Records/operation/deleteBy).
3161
+ *
3162
+ * Required API Key ACLs:
3163
+ * - deleteObject.
2910
3164
  *
2911
- * @summary Delete a record.
2912
3165
  * @param deleteObject - The deleteObject object.
2913
- * @param deleteObject.indexName - Index on which to perform the request.
2914
- * @param deleteObject.objectID - Unique record (object) identifier.
3166
+ * @param deleteObject.indexName - Name of the index on which to perform the operation.
3167
+ * @param deleteObject.objectID - Unique record identifier.
2915
3168
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2916
3169
  */
2917
3170
  deleteObject({ indexName, objectID }, requestOptions) {
@@ -2935,13 +3188,15 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2935
3188
  return transporter.request(request, requestOptions);
2936
3189
  },
2937
3190
  /**
2938
- * Delete a rule by its `objectID`. To find the `objectID` for rules, use the [`search` operation](#tag/Rules/operation/searchRules).
3191
+ * Deletes a rule by its ID. To find the object ID for rules, use the [`search` operation](#tag/Rules/operation/searchRules).
3192
+ *
3193
+ * Required API Key ACLs:
3194
+ * - editSettings.
2939
3195
  *
2940
- * @summary Delete a rule.
2941
3196
  * @param deleteRule - The deleteRule object.
2942
- * @param deleteRule.indexName - Index on which to perform the request.
3197
+ * @param deleteRule.indexName - Name of the index on which to perform the operation.
2943
3198
  * @param deleteRule.objectID - Unique identifier of a rule object.
2944
- * @param deleteRule.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
3199
+ * @param deleteRule.forwardToReplicas - Whether changes are applied to replica indices.
2945
3200
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
2946
3201
  */
2947
3202
  deleteRule({ indexName, objectID, forwardToReplicas }, requestOptions) {
@@ -2968,9 +3223,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2968
3223
  return transporter.request(request, requestOptions);
2969
3224
  },
2970
3225
  /**
2971
- * Remove a source from the list of allowed sources.
3226
+ * Deletes a source from the list of allowed sources.
3227
+ *
3228
+ * Required API Key ACLs:
3229
+ * - admin.
2972
3230
  *
2973
- * @summary Remove a source.
2974
3231
  * @param deleteSource - The deleteSource object.
2975
3232
  * @param deleteSource.source - IP address range of the source.
2976
3233
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -2991,13 +3248,15 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
2991
3248
  return transporter.request(request, requestOptions);
2992
3249
  },
2993
3250
  /**
2994
- * Delete a synonym by its `objectID`. To find the object IDs of your synonyms, use the [`search` operation](#tag/Synonyms/operation/searchSynonyms).
3251
+ * Deletes a synonym by its ID. To find the object IDs of your synonyms, use the [`search` operation](#tag/Synonyms/operation/searchSynonyms).
3252
+ *
3253
+ * Required API Key ACLs:
3254
+ * - editSettings.
2995
3255
  *
2996
- * @summary Delete a synonym.
2997
3256
  * @param deleteSynonym - The deleteSynonym object.
2998
- * @param deleteSynonym.indexName - Index on which to perform the request.
3257
+ * @param deleteSynonym.indexName - Name of the index on which to perform the operation.
2999
3258
  * @param deleteSynonym.objectID - Unique identifier of a synonym object.
3000
- * @param deleteSynonym.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
3259
+ * @param deleteSynonym.forwardToReplicas - Whether changes are applied to replica indices.
3001
3260
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3002
3261
  */
3003
3262
  deleteSynonym({ indexName, objectID, forwardToReplicas }, requestOptions) {
@@ -3024,9 +3283,8 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3024
3283
  return transporter.request(request, requestOptions);
3025
3284
  },
3026
3285
  /**
3027
- * Get the permissions and restrictions of a specific API key. When authenticating with the admin API key, you can request information for any of your application\'s keys. When authenticating with other API keys, you can only retrieve information for that key.
3286
+ * Gets the permissions and restrictions of an API key. When authenticating with the admin API key, you can request information for any of your application\'s keys. When authenticating with other API keys, you can only retrieve information for that key.
3028
3287
  *
3029
- * @summary Get API key permissions.
3030
3288
  * @param getApiKey - The getApiKey object.
3031
3289
  * @param getApiKey.key - API key.
3032
3290
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -3047,9 +3305,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3047
3305
  return transporter.request(request, requestOptions);
3048
3306
  },
3049
3307
  /**
3050
- * Lists Algolia\'s [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/) and any customizations applied to each language\'s [stop word](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-stop-words/), [plural](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-plurals-and-other-declensions/), and [segmentation (compound)](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-segmentation/) features.
3308
+ * Lists supported languages with their supported dictionary types and number of custom entries.
3309
+ *
3310
+ * Required API Key ACLs:
3311
+ * - settings.
3051
3312
  *
3052
- * @summary List available languages.
3053
3313
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3054
3314
  */
3055
3315
  getDictionaryLanguages(requestOptions) {
@@ -3065,9 +3325,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3065
3325
  return transporter.request(request, requestOptions);
3066
3326
  },
3067
3327
  /**
3068
- * Get the languages for which [stop words are turned off](#tag/Dictionaries/operation/setDictionarySettings).
3328
+ * Retrieves the languages for which standard dictionary entries are turned off.
3329
+ *
3330
+ * Required API Key ACLs:
3331
+ * - settings.
3069
3332
  *
3070
- * @summary Get stop word settings.
3071
3333
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3072
3334
  */
3073
3335
  getDictionarySettings(requestOptions) {
@@ -3083,14 +3345,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3083
3345
  return transporter.request(request, requestOptions);
3084
3346
  },
3085
3347
  /**
3086
- * The request must be authenticated by an API key with the [`logs` ACL](https://www.algolia.com/doc/guides/security/api-keys/#access-control-list-acl). Logs are held for the last seven days. There\'s also a logging limit of 1,000 API calls per server. This request counts towards your [operations quota](https://support.algolia.com/hc/en-us/articles/4406981829777-How-does-Algolia-count-records-and-operations-) but doesn\'t appear in the logs itself. > **Note**: To fetch the logs for a Distributed Search Network (DSN) cluster, target the [DSN\'s endpoint](https://www.algolia.com/doc/guides/scaling/distributed-search-network-dsn/#accessing-dsn-servers).
3348
+ * The request must be authenticated by an API key with the [`logs` ACL](https://www.algolia.com/doc/guides/security/api-keys/#access-control-list-acl). - Logs are held for the last seven days. - Up to 1,000 API requests per server are logged. - This request counts towards your [operations quota](https://support.algolia.com/hc/en-us/articles/4406981829777-How-does-Algolia-count-records-and-operations-) but doesn\'t appear in the logs itself.
3349
+ *
3350
+ * Required API Key ACLs:
3351
+ * - logs.
3087
3352
  *
3088
- * @summary Return the latest log entries.
3089
3353
  * @param getLogs - The getLogs object.
3090
- * @param getLogs.offset - First log entry to retrieve. Sorted by decreasing date with 0 being the most recent.
3354
+ * @param getLogs.offset - First log entry to retrieve. The most recent entries are listed first.
3091
3355
  * @param getLogs.length - Maximum number of entries to retrieve.
3092
- * @param getLogs.indexName - Index for which log entries should be retrieved. When omitted, log entries are retrieved for all indices.
3093
- * @param getLogs.type - Type of log entries to retrieve. When omitted, all log entries are retrieved.
3356
+ * @param getLogs.indexName - Index for which to retrieve log entries. By default, log entries are retrieved for all indices.
3357
+ * @param getLogs.type - Type of log entries to retrieve. By default, all log entries are retrieved.
3094
3358
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3095
3359
  */
3096
3360
  getLogs({ offset, length, indexName, type } = {}, requestOptions = undefined) {
@@ -3118,13 +3382,15 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3118
3382
  return transporter.request(request, requestOptions);
3119
3383
  },
3120
3384
  /**
3121
- * To get more than one record, use the [`objects` operation](#tag/Records/operation/getObjects).
3385
+ * Retrieves one record by its object ID. To retrieve more than one record, use the [`objects` operation](#tag/Records/operation/getObjects).
3386
+ *
3387
+ * Required API Key ACLs:
3388
+ * - search.
3122
3389
  *
3123
- * @summary Get a record.
3124
3390
  * @param getObject - The getObject object.
3125
- * @param getObject.indexName - Index on which to perform the request.
3126
- * @param getObject.objectID - Unique record (object) identifier.
3127
- * @param getObject.attributesToRetrieve - Attributes to include with the records in the response. This is useful to reduce the size of the API response. By default, all retrievable attributes are returned. `objectID` is always retrieved, even when not specified. [`unretrievableAttributes`](https://www.algolia.com/doc/api-reference/api-parameters/unretrievableAttributes/) won\'t be retrieved unless the request is authenticated with the admin API key.
3391
+ * @param getObject.indexName - Name of the index on which to perform the operation.
3392
+ * @param getObject.objectID - Unique record identifier.
3393
+ * @param getObject.attributesToRetrieve - Attributes to include with the records in the response. This is useful to reduce the size of the API response. By default, all retrievable attributes are returned. `objectID` is always retrieved. Attributes included in `unretrievableAttributes` won\'t be retrieved unless the request is authenticated with the admin API key.
3128
3394
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3129
3395
  */
3130
3396
  getObject({ indexName, objectID, attributesToRetrieve }, requestOptions) {
@@ -3151,9 +3417,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3151
3417
  return transporter.request(request, requestOptions);
3152
3418
  },
3153
3419
  /**
3154
- * Retrieve one or more records, potentially from different indices, in a single API operation. Results will be received in the same order as the requests.
3420
+ * Retrieves one or more records, potentially from different indices. Records are returned in the same order as the requests.
3421
+ *
3422
+ * Required API Key ACLs:
3423
+ * - search.
3155
3424
  *
3156
- * @summary Get multiple records.
3157
3425
  * @param getObjectsParams - Request object.
3158
3426
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3159
3427
  */
@@ -3179,11 +3447,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3179
3447
  return transporter.request(request, requestOptions);
3180
3448
  },
3181
3449
  /**
3182
- * Get a rule by its `objectID`. To find the `objectID` for rules, use the [`search` operation](#tag/Rules/operation/searchRules).
3450
+ * Retrieves a rule by its ID. To find the object ID of rules, use the [`search` operation](#tag/Rules/operation/searchRules).
3451
+ *
3452
+ * Required API Key ACLs:
3453
+ * - settings.
3183
3454
  *
3184
- * @summary Get a rule.
3185
3455
  * @param getRule - The getRule object.
3186
- * @param getRule.indexName - Index on which to perform the request.
3456
+ * @param getRule.indexName - Name of the index on which to perform the operation.
3187
3457
  * @param getRule.objectID - Unique identifier of a rule object.
3188
3458
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3189
3459
  */
@@ -3208,11 +3478,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3208
3478
  return transporter.request(request, requestOptions);
3209
3479
  },
3210
3480
  /**
3211
- * Return an object containing an index\'s [configuration settings](https://www.algolia.com/doc/api-reference/settings-api-parameters/).
3481
+ * Retrieves an object with non-null index settings.
3482
+ *
3483
+ * Required API Key ACLs:
3484
+ * - search.
3212
3485
  *
3213
- * @summary Get index settings.
3214
3486
  * @param getSettings - The getSettings object.
3215
- * @param getSettings.indexName - Index on which to perform the request.
3487
+ * @param getSettings.indexName - Name of the index on which to perform the operation.
3216
3488
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3217
3489
  */
3218
3490
  getSettings({ indexName }, requestOptions) {
@@ -3231,9 +3503,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3231
3503
  return transporter.request(request, requestOptions);
3232
3504
  },
3233
3505
  /**
3234
- * Get all allowed sources (IP addresses).
3506
+ * Retrieves all allowed IP addresses with access to your application.
3507
+ *
3508
+ * Required API Key ACLs:
3509
+ * - admin.
3235
3510
  *
3236
- * @summary Get all allowed IP addresses.
3237
3511
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3238
3512
  */
3239
3513
  getSources(requestOptions) {
@@ -3249,11 +3523,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3249
3523
  return transporter.request(request, requestOptions);
3250
3524
  },
3251
3525
  /**
3252
- * Get a syonym by its `objectID`. To find the object IDs for your synonyms, use the [`search` operation](#tag/Synonyms/operation/searchSynonyms).
3526
+ * Retrieves a syonym by its ID. To find the object IDs for your synonyms, use the [`search` operation](#tag/Synonyms/operation/searchSynonyms).
3527
+ *
3528
+ * Required API Key ACLs:
3529
+ * - settings.
3253
3530
  *
3254
- * @summary Get a synonym object.
3255
3531
  * @param getSynonym - The getSynonym object.
3256
- * @param getSynonym.indexName - Index on which to perform the request.
3532
+ * @param getSynonym.indexName - Name of the index on which to perform the operation.
3257
3533
  * @param getSynonym.objectID - Unique identifier of a synonym object.
3258
3534
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3259
3535
  */
@@ -3278,11 +3554,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3278
3554
  return transporter.request(request, requestOptions);
3279
3555
  },
3280
3556
  /**
3281
- * Some operations, such as copying an index, will respond with a `taskID` value. Use this value here to check the status of that task.
3557
+ * Checks the status of a given task. Indexing tasks are asynchronous. When you add, update, or delete records or indices, a task is created on a queue and completed depending on the load on the server. The indexing tasks\' responses include a task ID that you can use to check the status.
3558
+ *
3559
+ * Required API Key ACLs:
3560
+ * - addObject.
3282
3561
  *
3283
- * @summary Check a task\'s status.
3284
3562
  * @param getTask - The getTask object.
3285
- * @param getTask.indexName - Index on which to perform the request.
3563
+ * @param getTask.indexName - Name of the index on which to perform the operation.
3286
3564
  * @param getTask.taskID - Unique task identifier.
3287
3565
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3288
3566
  */
@@ -3307,9 +3585,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3307
3585
  return transporter.request(request, requestOptions);
3308
3586
  },
3309
3587
  /**
3310
- * Get the IDs of the 10 users with the highest number of records per cluster. Since it can take up to a few seconds to get the data from the different clusters, the response isn\'t real-time.
3588
+ * Get the IDs of the 10 users with the highest number of records per cluster. Since it can take a few seconds to get the data from the different clusters, the response isn\'t real-time.
3589
+ *
3590
+ * Required API Key ACLs:
3591
+ * - admin.
3311
3592
  *
3312
- * @summary Get top userID.
3313
3593
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3314
3594
  */
3315
3595
  getTopUserIds(requestOptions) {
@@ -3325,11 +3605,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3325
3605
  return transporter.request(request, requestOptions);
3326
3606
  },
3327
3607
  /**
3328
- * Returns the userID data stored in the mapping. Since it can take up to a few seconds to get the data from the different clusters, the response isn\'t real-time.
3608
+ * Returns the user ID data stored in the mapping. Since it can take a few seconds to get the data from the different clusters, the response isn\'t real-time.
3609
+ *
3610
+ * Required API Key ACLs:
3611
+ * - admin.
3329
3612
  *
3330
- * @summary Get userID.
3331
3613
  * @param getUserId - The getUserId object.
3332
- * @param getUserId.userID - UserID to assign.
3614
+ * @param getUserId.userID - Unique identifier of the user who makes the search request.
3333
3615
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3334
3616
  */
3335
3617
  getUserId({ userID }, requestOptions) {
@@ -3350,9 +3632,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3350
3632
  /**
3351
3633
  * To determine when the time-consuming process of creating a large batch of users or migrating users from one cluster to another is complete, this operation retrieves the status of the process.
3352
3634
  *
3353
- * @summary Get migration and user mapping status.
3635
+ * Required API Key ACLs:
3636
+ * - admin.
3637
+ *
3354
3638
  * @param hasPendingMappings - The hasPendingMappings object.
3355
- * @param hasPendingMappings.getClusters - Indicates whether to include the cluster\'s pending mapping state in the response.
3639
+ * @param hasPendingMappings.getClusters - Whether to include the cluster\'s pending mapping state in the response.
3356
3640
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3357
3641
  */
3358
3642
  hasPendingMappings({ getClusters } = {}, requestOptions = undefined) {
@@ -3371,9 +3655,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3371
3655
  return transporter.request(request, requestOptions);
3372
3656
  },
3373
3657
  /**
3374
- * List all API keys associated with your Algolia application, including their permissions and restrictions.
3658
+ * Lists all API keys associated with your Algolia application, including their permissions and restrictions.
3659
+ *
3660
+ * Required API Key ACLs:
3661
+ * - admin.
3375
3662
  *
3376
- * @summary List API keys.
3377
3663
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3378
3664
  */
3379
3665
  listApiKeys(requestOptions) {
@@ -3389,9 +3675,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3389
3675
  return transporter.request(request, requestOptions);
3390
3676
  },
3391
3677
  /**
3392
- * List the available clusters in a multi-cluster setup.
3678
+ * Lists the available clusters in a multi-cluster setup.
3679
+ *
3680
+ * Required API Key ACLs:
3681
+ * - admin.
3393
3682
  *
3394
- * @summary List clusters.
3395
3683
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3396
3684
  */
3397
3685
  listClusters(requestOptions) {
@@ -3407,12 +3695,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3407
3695
  return transporter.request(request, requestOptions);
3408
3696
  },
3409
3697
  /**
3410
- * List indices in an Algolia application.
3698
+ * Lists all indices in the current Algolia application. The request follows any index restrictions of the API key you use to make the request.
3699
+ *
3700
+ * Required API Key ACLs:
3701
+ * - listIndexes.
3411
3702
  *
3412
- * @summary List indices.
3413
3703
  * @param listIndices - The listIndices object.
3414
- * @param listIndices.page - Returns the requested page number. The page size is determined by the `hitsPerPage` parameter. You can see the number of available pages in the `nbPages` response attribute. When `page` is null, the API response is not paginated.
3415
- * @param listIndices.hitsPerPage - Maximum number of hits per page.
3704
+ * @param listIndices.page - Requested page of the API response. If `null`, the API response is not paginated.
3705
+ * @param listIndices.hitsPerPage - Number of hits per page.
3416
3706
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3417
3707
  */
3418
3708
  listIndices({ page, hitsPerPage } = {}, requestOptions = undefined) {
@@ -3434,12 +3724,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3434
3724
  return transporter.request(request, requestOptions);
3435
3725
  },
3436
3726
  /**
3437
- * List the userIDs assigned to a multi-cluster application. Since it can take up to a few seconds to get the data from the different clusters, the response isn\'t real-time.
3727
+ * Lists the userIDs assigned to a multi-cluster application. Since it can take a few seconds to get the data from the different clusters, the response isn\'t real-time.
3728
+ *
3729
+ * Required API Key ACLs:
3730
+ * - admin.
3438
3731
  *
3439
- * @summary List userIDs.
3440
3732
  * @param listUserIds - The listUserIds object.
3441
- * @param listUserIds.page - Returns the requested page number. The page size is determined by the `hitsPerPage` parameter. You can see the number of available pages in the `nbPages` response attribute. When `page` is null, the API response is not paginated.
3442
- * @param listUserIds.hitsPerPage - Maximum number of hits per page.
3733
+ * @param listUserIds.page - Requested page of the API response. If `null`, the API response is not paginated.
3734
+ * @param listUserIds.hitsPerPage - Number of hits per page.
3443
3735
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3444
3736
  */
3445
3737
  listUserIds({ page, hitsPerPage } = {}, requestOptions = undefined) {
@@ -3461,9 +3753,8 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3461
3753
  return transporter.request(request, requestOptions);
3462
3754
  },
3463
3755
  /**
3464
- * To reduce the time spent on network round trips, you can perform several write actions in a single request. It\'s a multi-index version of the [`batch` operation](#tag/Records/operation/batch). Actions are applied in the order they are specified. The supported actions are equivalent to the individual operations of the same name.
3756
+ * Adds, updates, or deletes records in multiple indices with a single API request. - Actions are applied in the order they are specified. - Actions are equivalent to the individual API requests of the same name.
3465
3757
  *
3466
- * @summary Batch write operations on multiple indices.
3467
3758
  * @param batchParams - The batchParams object.
3468
3759
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3469
3760
  */
@@ -3487,11 +3778,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3487
3778
  return transporter.request(request, requestOptions);
3488
3779
  },
3489
3780
  /**
3490
- * This `operation`, _copy_ or _move_, will copy or move a source index\'s (`IndexName`) records, settings, synonyms, and rules to a `destination` index. If the destination index exists, it will be replaced, except for index-specific API keys and analytics data. If the destination index doesn\'t exist, it will be created. The choice between moving or copying an index depends on your needs. Choose: - **Move** to rename an index. - **Copy** to create a new index with the same records and configuration as an existing one. > **Note**: When considering copying or moving, be aware of the [rate limitations](https://www.algolia.com/doc/guides/scaling/algolia-service-limits/#application-record-and-index-limits) on these processes and the [impact on your analytics data](https://www.algolia.com/doc/guides/sending-and-managing-data/manage-indices-and-apps/manage-indices/concepts/indices-analytics/).
3781
+ * Copies or moves (renames) an index within the same Algolia application. - Existing destination indices are overwritten, except for index-specific API keys and analytics data. - If the destination index doesn\'t exist yet, it\'ll be created. **Copy** - Copying a source index that doesn\'t exist creates a new index with 0 records and default settings. - The API keys of the source index are merged with the existing keys in the destination index. - You can\'t copy the `enableReRanking`, `mode`, and `replicas` settings. - You can\'t copy to a destination index that already has replicas. - Be aware of the [size limits](https://www.algolia.com/doc/guides/scaling/algolia-service-limits/#application-record-and-index-limits). - Related guide: [Copy indices](https://www.algolia.com/doc/guides/sending-and-managing-data/manage-indices-and-apps/manage-indices/how-to/copy-indices/) **Move** - Moving a source index that doesn\'t exist is ignored without returning an error. - When moving an index, the analytics data keep their original name and a new set of analytics data is started for the new name. To access the original analytics in the dashboard, create an index with the original name. - If the destination index has replicas, moving will overwrite the existing index and copy the data to the replica indices. - Related guide: [Move indices](https://www.algolia.com/doc/guides/sending-and-managing-data/manage-indices-and-apps/manage-indices/how-to/move-indices/).
3782
+ *
3783
+ * Required API Key ACLs:
3784
+ * - addObject.
3491
3785
  *
3492
- * @summary Copy, move, or rename an index.
3493
3786
  * @param operationIndex - The operationIndex object.
3494
- * @param operationIndex.indexName - Index on which to perform the request.
3787
+ * @param operationIndex.indexName - Name of the index on which to perform the operation.
3495
3788
  * @param operationIndex.operationIndexParams - The operationIndexParams object.
3496
3789
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3497
3790
  */
@@ -3521,14 +3814,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3521
3814
  return transporter.request(request, requestOptions);
3522
3815
  },
3523
3816
  /**
3524
- * Add new attributes or update current ones in an existing record. You can use any first-level attribute but not nested attributes. If you specify a [nested attribute](https://www.algolia.com/doc/guides/sending-and-managing-data/prepare-your-data/how-to/creating-and-using-nested-attributes/), the engine treats it as a replacement for its first-level ancestor.
3817
+ * Adds new attributes to a record, or update existing ones. - If a record with the specified object ID doesn\'t exist, a new record is added to the index **if** `createIfNotExists` is true. - If the index doesn\'t exist yet, this method creates a new index. - You can use any first-level attribute but not nested attributes. If you specify a nested attribute, the engine treats it as a replacement for its first-level ancestor.
3818
+ *
3819
+ * Required API Key ACLs:
3820
+ * - addObject.
3525
3821
  *
3526
- * @summary Update record attributes.
3527
3822
  * @param partialUpdateObject - The partialUpdateObject object.
3528
- * @param partialUpdateObject.indexName - Index on which to perform the request.
3529
- * @param partialUpdateObject.objectID - Unique record (object) identifier.
3530
- * @param partialUpdateObject.attributesToUpdate - Object with attributes to update.
3531
- * @param partialUpdateObject.createIfNotExists - Indicates whether to create a new record if it doesn\'t exist yet.
3823
+ * @param partialUpdateObject.indexName - Name of the index on which to perform the operation.
3824
+ * @param partialUpdateObject.objectID - Unique record identifier.
3825
+ * @param partialUpdateObject.attributesToUpdate - Attributes with their values.
3826
+ * @param partialUpdateObject.createIfNotExists - Whether to create a new record if it doesn\'t exist.
3532
3827
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3533
3828
  */
3534
3829
  partialUpdateObject({ indexName, objectID, attributesToUpdate, createIfNotExists, }, requestOptions) {
@@ -3559,11 +3854,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3559
3854
  return transporter.request(request, requestOptions);
3560
3855
  },
3561
3856
  /**
3562
- * Remove a userID and its associated data from the multi-clusters.
3857
+ * Deletes a user ID and its associated data from the clusters.
3858
+ *
3859
+ * Required API Key ACLs:
3860
+ * - admin.
3563
3861
  *
3564
- * @summary Remove userID.
3565
3862
  * @param removeUserId - The removeUserId object.
3566
- * @param removeUserId.userID - UserID to assign.
3863
+ * @param removeUserId.userID - Unique identifier of the user who makes the search request.
3567
3864
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3568
3865
  */
3569
3866
  removeUserId({ userID }, requestOptions) {
@@ -3582,9 +3879,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3582
3879
  return transporter.request(request, requestOptions);
3583
3880
  },
3584
3881
  /**
3585
- * Replace all allowed sources.
3882
+ * Replaces the list of allowed sources.
3883
+ *
3884
+ * Required API Key ACLs:
3885
+ * - admin.
3586
3886
  *
3587
- * @summary Replace all sources.
3588
3887
  * @param replaceSources - The replaceSources object.
3589
3888
  * @param replaceSources.source - Allowed sources.
3590
3889
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -3606,9 +3905,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3606
3905
  return transporter.request(request, requestOptions);
3607
3906
  },
3608
3907
  /**
3609
- * Restore a deleted API key, along with its associated permissions. The request must be authenticated with the admin API key.
3908
+ * Restores a deleted API key. Restoring resets the `validity` attribute to `0`. Algolia stores up to 1,000 API keys per application. If you create more, the oldest API keys are deleted and can\'t be restored.
3909
+ *
3910
+ * Required API Key ACLs:
3911
+ * - admin.
3610
3912
  *
3611
- * @summary Restore API key.
3612
3913
  * @param restoreApiKey - The restoreApiKey object.
3613
3914
  * @param restoreApiKey.key - API key.
3614
3915
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -3629,12 +3930,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3629
3930
  return transporter.request(request, requestOptions);
3630
3931
  },
3631
3932
  /**
3632
- * Add a record (object) to an index or replace it. If the record doesn\'t contain an `objectID`, Algolia automatically adds it. If you use an existing `objectID`, the existing record is replaced with the new one. To add multiple records to your index in a single API request, use the [`batch` operation](#tag/Records/operation/batch).
3933
+ * Adds a record to an index or replace it. - If the record doesn\'t have an object ID, a new record with an auto-generated object ID is added to your index. - If a record with the specified object ID exists, the existing record is replaced. - If a record with the specified object ID doesn\'t exist, a new record is added to your index. - If you add a record to an index that doesn\'t exist yet, a new index is created. To update _some_ attributes of a record, use the [`partial` operation](#tag/Records/operation/partial). To add, update, or replace multiple records, use the [`batch` operation](#tag/Records/operation/batch).
3934
+ *
3935
+ * Required API Key ACLs:
3936
+ * - addObject.
3633
3937
  *
3634
- * @summary Add or update a record.
3635
3938
  * @param saveObject - The saveObject object.
3636
- * @param saveObject.indexName - Index on which to perform the request.
3637
- * @param saveObject.body - The Algolia record.
3939
+ * @param saveObject.indexName - Name of the index on which to perform the operation.
3940
+ * @param saveObject.body - The record, a schemaless object with attributes that are useful in the context of search and discovery.
3638
3941
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3639
3942
  */
3640
3943
  saveObject({ indexName, body }, requestOptions) {
@@ -3657,14 +3960,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3657
3960
  return transporter.request(request, requestOptions);
3658
3961
  },
3659
3962
  /**
3660
- * To create or update more than one rule, use the [`batch` operation](#tag/Rules/operation/saveRules).
3963
+ * If a rule with the specified object ID doesn\'t exist, it\'s created. Otherwise, the existing rule is replaced. To create or update more than one rule, use the [`batch` operation](#tag/Rules/operation/saveRules).
3964
+ *
3965
+ * Required API Key ACLs:
3966
+ * - editSettings.
3661
3967
  *
3662
- * @summary Create or update a rule.
3663
3968
  * @param saveRule - The saveRule object.
3664
- * @param saveRule.indexName - Index on which to perform the request.
3969
+ * @param saveRule.indexName - Name of the index on which to perform the operation.
3665
3970
  * @param saveRule.objectID - Unique identifier of a rule object.
3666
3971
  * @param saveRule.rule - The rule object.
3667
- * @param saveRule.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
3972
+ * @param saveRule.forwardToReplicas - Whether changes are applied to replica indices.
3668
3973
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3669
3974
  */
3670
3975
  saveRule({ indexName, objectID, rule, forwardToReplicas }, requestOptions) {
@@ -3698,14 +4003,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3698
4003
  return transporter.request(request, requestOptions);
3699
4004
  },
3700
4005
  /**
3701
- * Create or update multiple rules.
4006
+ * Create or update multiple rules. If a rule with the specified object ID doesn\'t exist, Algolia creates a new one. Otherwise, existing rules are replaced.
4007
+ *
4008
+ * Required API Key ACLs:
4009
+ * - editSettings.
3702
4010
  *
3703
- * @summary Save a batch of rules.
3704
4011
  * @param saveRules - The saveRules object.
3705
- * @param saveRules.indexName - Index on which to perform the request.
4012
+ * @param saveRules.indexName - Name of the index on which to perform the operation.
3706
4013
  * @param saveRules.rules - The rules object.
3707
- * @param saveRules.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
3708
- * @param saveRules.clearExistingRules - Indicates whether existing rules should be deleted before adding this batch.
4014
+ * @param saveRules.forwardToReplicas - Whether changes are applied to replica indices.
4015
+ * @param saveRules.clearExistingRules - Whether existing rules should be deleted before adding this batch.
3709
4016
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3710
4017
  */
3711
4018
  saveRules({ indexName, rules, forwardToReplicas, clearExistingRules, }, requestOptions) {
@@ -3734,14 +4041,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3734
4041
  return transporter.request(request, requestOptions);
3735
4042
  },
3736
4043
  /**
3737
- * Add a [synonym](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#the-different-types-of-synonyms) to an index or replace it. If the synonym `objectID` doesn\'t exist, Algolia adds a new one. If you use an existing synonym `objectID`, the existing synonym is replaced with the new one. To add multiple synonyms in a single API request, use the [`batch` operation](#tag/Synonyms/operation/saveSynonyms).
4044
+ * If a synonym with the specified object ID doesn\'t exist, Algolia adds a new one. Otherwise, the existing synonym is replaced. To add multiple synonyms in a single API request, use the [`batch` operation](#tag/Synonyms/operation/saveSynonyms).
4045
+ *
4046
+ * Required API Key ACLs:
4047
+ * - editSettings.
3738
4048
  *
3739
- * @summary Save a synonym.
3740
4049
  * @param saveSynonym - The saveSynonym object.
3741
- * @param saveSynonym.indexName - Index on which to perform the request.
4050
+ * @param saveSynonym.indexName - Name of the index on which to perform the operation.
3742
4051
  * @param saveSynonym.objectID - Unique identifier of a synonym object.
3743
4052
  * @param saveSynonym.synonymHit - The synonymHit object.
3744
- * @param saveSynonym.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
4053
+ * @param saveSynonym.forwardToReplicas - Whether changes are applied to replica indices.
3745
4054
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3746
4055
  */
3747
4056
  saveSynonym({ indexName, objectID, synonymHit, forwardToReplicas }, requestOptions) {
@@ -3778,14 +4087,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3778
4087
  return transporter.request(request, requestOptions);
3779
4088
  },
3780
4089
  /**
3781
- * Create or update multiple synonyms.
4090
+ * If a synonym with the `objectID` doesn\'t exist, Algolia adds a new one. Otherwise, existing synonyms are replaced.
4091
+ *
4092
+ * Required API Key ACLs:
4093
+ * - editSettings.
3782
4094
  *
3783
- * @summary Save a batch of synonyms.
3784
4095
  * @param saveSynonyms - The saveSynonyms object.
3785
- * @param saveSynonyms.indexName - Index on which to perform the request.
4096
+ * @param saveSynonyms.indexName - Name of the index on which to perform the operation.
3786
4097
  * @param saveSynonyms.synonymHit - The synonymHit object.
3787
- * @param saveSynonyms.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
3788
- * @param saveSynonyms.replaceExistingSynonyms - Indicates whether to replace all synonyms in the index with the ones sent with this request.
4098
+ * @param saveSynonyms.forwardToReplicas - Whether changes are applied to replica indices.
4099
+ * @param saveSynonyms.replaceExistingSynonyms - Whether to replace all synonyms in the index with the ones sent with this request.
3789
4100
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3790
4101
  */
3791
4102
  saveSynonyms({ indexName, synonymHit, forwardToReplicas, replaceExistingSynonyms, }, requestOptions) {
@@ -3815,10 +4126,12 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3815
4126
  return transporter.request(request, requestOptions);
3816
4127
  },
3817
4128
  /**
3818
- * Send multiple search queries to one or more indices.
4129
+ * Sends multiple search request to one or more indices. This can be useful in these cases: - Different indices for different purposes, such as, one index for products, another one for marketing content. - Multiple searches to the same index—for example, with different filters.
3819
4130
  *
3820
- * @summary Search multiple indices.
3821
- * @param searchMethodParams - Query requests and strategies. Results will be received in the same order as the queries.
4131
+ * Required API Key ACLs:
4132
+ * - search.
4133
+ *
4134
+ * @param searchMethodParams - Muli-search request body. Results are returned in the same order as the requests.
3822
4135
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3823
4136
  */
3824
4137
  search(searchMethodParams, requestOptions) {
@@ -3865,11 +4178,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3865
4178
  return transporter.request(request, requestOptions);
3866
4179
  },
3867
4180
  /**
3868
- * Search for standard and [custom](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-stop-words/) entries in the [stop words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-stop-words/), [plurals](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-plurals-and-other-declensions/), or [segmentation (compounds)](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-segmentation/) dictionaries.
4181
+ * Searches for standard and custom dictionary entries.
4182
+ *
4183
+ * Required API Key ACLs:
4184
+ * - settings.
3869
4185
  *
3870
- * @summary Search dictionary entries.
3871
4186
  * @param searchDictionaryEntries - The searchDictionaryEntries object.
3872
- * @param searchDictionaryEntries.dictionaryName - Dictionary to search in.
4187
+ * @param searchDictionaryEntries.dictionaryName - Dictionary type in which to search.
3873
4188
  * @param searchDictionaryEntries.searchDictionaryEntriesParams - The searchDictionaryEntriesParams object.
3874
4189
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3875
4190
  */
@@ -3898,12 +4213,14 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3898
4213
  return transporter.request(request, requestOptions);
3899
4214
  },
3900
4215
  /**
3901
- * [Search for a facet\'s values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#search-for-facet-values), optionally restricting the returned values to those contained in records matching other search criteria. > **Note**: Pagination isn\'t supported (`page` and `hitsPerPage` are ignored). By default, the engine returns a maximum of 10 values but you can adjust this with `maxFacetHits`.
4216
+ * Searches for values of a specified facet attribute. - By default, facet values are sorted by decreasing count. You can adjust this with the `sortFacetValueBy` parameter. - Searching for facet values doesn\'t work if you have **more than 65 searchable facets and searchable attributes combined**.
4217
+ *
4218
+ * Required API Key ACLs:
4219
+ * - search.
3902
4220
  *
3903
- * @summary Search for facet values.
3904
4221
  * @param searchForFacetValues - The searchForFacetValues object.
3905
- * @param searchForFacetValues.indexName - Index on which to perform the request.
3906
- * @param searchForFacetValues.facetName - Facet name.
4222
+ * @param searchForFacetValues.indexName - Name of the index on which to perform the operation.
4223
+ * @param searchForFacetValues.facetName - Facet attribute in which to search for values. This attribute must be included in the `attributesForFaceting` index setting with the `searchable()` modifier.
3907
4224
  * @param searchForFacetValues.searchForFacetValuesRequest - The searchForFacetValuesRequest object.
3908
4225
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3909
4226
  */
@@ -3931,11 +4248,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3931
4248
  return transporter.request(request, requestOptions);
3932
4249
  },
3933
4250
  /**
3934
- * Search for rules in your index. You can control the search with parameters. To list all rules, send an empty request body.
4251
+ * Searches for rules in your index.
4252
+ *
4253
+ * Required API Key ACLs:
4254
+ * - settings.
3935
4255
  *
3936
- * @summary Search for rules.
3937
4256
  * @param searchRules - The searchRules object.
3938
- * @param searchRules.indexName - Index on which to perform the request.
4257
+ * @param searchRules.indexName - Name of the index on which to perform the operation.
3939
4258
  * @param searchRules.searchRulesParams - The searchRulesParams object.
3940
4259
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3941
4260
  */
@@ -3958,11 +4277,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3958
4277
  return transporter.request(request, requestOptions);
3959
4278
  },
3960
4279
  /**
3961
- * Return records that match the query.
4280
+ * Searches a single index and return matching search results (_hits_). This method lets you retrieve up to 1,000 hits. If you need more, use the [`browse` operation](#tag/Search/operation/browse) or increase the `paginatedLimitedTo` index setting.
4281
+ *
4282
+ * Required API Key ACLs:
4283
+ * - search.
3962
4284
  *
3963
- * @summary Search an index.
3964
4285
  * @param searchSingleIndex - The searchSingleIndex object.
3965
- * @param searchSingleIndex.indexName - Index on which to perform the request.
4286
+ * @param searchSingleIndex.indexName - Name of the index on which to perform the operation.
3966
4287
  * @param searchSingleIndex.searchParams - The searchParams object.
3967
4288
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3968
4289
  */
@@ -3985,11 +4306,13 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3985
4306
  return transporter.request(request, requestOptions);
3986
4307
  },
3987
4308
  /**
3988
- * Search for synonyms in your index. You can control and filter the search with parameters. To get all synonyms, send an empty request body.
4309
+ * Searches for synonyms in your index.
4310
+ *
4311
+ * Required API Key ACLs:
4312
+ * - settings.
3989
4313
  *
3990
- * @summary Search for synonyms.
3991
4314
  * @param searchSynonyms - The searchSynonyms object.
3992
- * @param searchSynonyms.indexName - Index on which to perform the request.
4315
+ * @param searchSynonyms.indexName - Name of the index on which to perform the operation.
3993
4316
  * @param searchSynonyms.searchSynonymsParams - Body of the `searchSynonyms` operation.
3994
4317
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3995
4318
  */
@@ -4012,9 +4335,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
4012
4335
  return transporter.request(request, requestOptions);
4013
4336
  },
4014
4337
  /**
4015
- * Since it can take up to a few seconds to get the data from the different clusters, the response isn\'t real-time. To ensure rapid updates, the user IDs index isn\'t built at the same time as the mapping. Instead, it\'s built every 12 hours, at the same time as the update of user ID usage. For example, if you add or move a user ID, the search will show an old value until the next time the mapping is rebuilt (every 12 hours).
4338
+ * Since it can take a few seconds to get the data from the different clusters, the response isn\'t real-time. To ensure rapid updates, the user IDs index isn\'t built at the same time as the mapping. Instead, it\'s built every 12 hours, at the same time as the update of user ID usage. For example, if you add or move a user ID, the search will show an old value until the next time the mapping is rebuilt (every 12 hours).
4339
+ *
4340
+ * Required API Key ACLs:
4341
+ * - admin.
4016
4342
  *
4017
- * @summary Search for a user ID.
4018
4343
  * @param searchUserIdsParams - The searchUserIdsParams object.
4019
4344
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4020
4345
  */
@@ -4040,9 +4365,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
4040
4365
  return transporter.request(request, requestOptions);
4041
4366
  },
4042
4367
  /**
4043
- * Set stop word settings for a specific language.
4368
+ * Turns standard stop word dictionary entries on or off for a given language.
4369
+ *
4370
+ * Required API Key ACLs:
4371
+ * - editSettings.
4044
4372
  *
4045
- * @summary Set stop word settings.
4046
4373
  * @param dictionarySettingsParams - The dictionarySettingsParams object.
4047
4374
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4048
4375
  */
@@ -4066,13 +4393,15 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
4066
4393
  return transporter.request(request, requestOptions);
4067
4394
  },
4068
4395
  /**
4069
- * Update the specified [index settings](https://www.algolia.com/doc/api-reference/settings-api-parameters/). Specifying null for a setting resets it to its default value.
4396
+ * Update the specified index settings. Index settings that you don\'t specify are left unchanged. Specify `null` to reset a setting to its default value. For best performance, update the index settings before you add new records to your index.
4397
+ *
4398
+ * Required API Key ACLs:
4399
+ * - editSettings.
4070
4400
  *
4071
- * @summary Update index settings.
4072
4401
  * @param setSettings - The setSettings object.
4073
- * @param setSettings.indexName - Index on which to perform the request.
4402
+ * @param setSettings.indexName - Name of the index on which to perform the operation.
4074
4403
  * @param setSettings.indexSettings - The indexSettings object.
4075
- * @param setSettings.forwardToReplicas - Indicates whether changed index settings are forwarded to the replica indices.
4404
+ * @param setSettings.forwardToReplicas - Whether changes are applied to replica indices.
4076
4405
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4077
4406
  */
4078
4407
  setSettings({ indexName, indexSettings, forwardToReplicas }, requestOptions) {
@@ -4098,9 +4427,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
4098
4427
  return transporter.request(request, requestOptions);
4099
4428
  },
4100
4429
  /**
4101
- * Replace the permissions of an existing API key. Any unspecified parameter resets that permission to its default value. The request must be authenticated with the admin API key.
4430
+ * Replaces the permissions of an existing API key. Any unspecified attribute resets that attribute to its default value.
4431
+ *
4432
+ * Required API Key ACLs:
4433
+ * - admin.
4102
4434
  *
4103
- * @summary Update an API key.
4104
4435
  * @param updateApiKey - The updateApiKey object.
4105
4436
  * @param updateApiKey.key - API key.
4106
4437
  * @param updateApiKey.apiKey - The apiKey object.