@seekora-ai/search-sdk 0.2.7 → 0.2.12

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.
@@ -1086,29 +1086,38 @@ const QuerySuggestionsApiAxiosParamCreator = function (configuration) {
1086
1086
  };
1087
1087
  },
1088
1088
  /**
1089
- * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, and configurable time ranges. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1089
+ * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, configurable time ranges, and dropdown recommendations with filtered tabs. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Full feature parity with POST endpoint.
1090
1090
  * @summary Get Query Suggestions
1091
1091
  * @param {string} xStoreid Store ID
1092
1092
  * @param {string} xStoresecret Store Secret
1093
1093
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1094
1094
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1095
1095
  * @param {string} [xSessionId] Session ID for personalization
1096
- * @param {string} [query] Partial query to get suggestions for
1096
+ * @param {string} [query] Partial query to get suggestions for (supports both \'query\' and \'q\')
1097
+ * @param {string} [q] Alias for \'query\' parameter
1097
1098
  * @param {number} [hitsPerPage] Number of suggestions to return
1098
1099
  * @param {number} [page] Page number for pagination
1099
1100
  * @param {string} [analyticsTags] Comma-separated analytics tags to filter suggestions
1100
1101
  * @param {V1SuggestionsQueriesGetTagsMatchModeEnum} [tagsMatchMode] How to match analytics tags
1101
1102
  * @param {boolean} [includeCategories] Include category information in suggestions
1102
1103
  * @param {boolean} [includeFacets] Include popular facets/filters information
1104
+ * @param {boolean} [includeDropdownRecommendations] Include rich dropdown recommendations (trending products, filtered tabs)
1105
+ * @param {boolean} [includeDropdownProductList] Include product list in dropdown recommendations
1106
+ * @param {boolean} [includeFilteredTabs] Include filtered tabs in dropdown recommendations
1107
+ * @param {boolean} [includeEmptyQueryRecommendations] Return popular suggestions when query is empty
1103
1108
  * @param {number} [maxCategories] Maximum categories per suggestion
1104
1109
  * @param {number} [maxFacets] Maximum facets per suggestion
1105
1110
  * @param {number} [minPopularity] Minimum popularity threshold
1106
1111
  * @param {V1SuggestionsQueriesGetTimeRangeEnum} [timeRange] Time range for analytics data
1107
1112
  * @param {boolean} [disableTypoTolerance] Disable fuzzy/typo-tolerant matching
1113
+ * @param {string} [filteredTabs] URL-encoded JSON array of filtered tab configurations (e.g., [{\\
1114
+ * @param {string} [userId] User ID for personalization (query param fallback, header takes precedence)
1115
+ * @param {string} [anonId] Anonymous ID for personalization (query param fallback, header takes precedence)
1116
+ * @param {string} [sessionId] Session ID for personalization (query param fallback, header takes precedence)
1108
1117
  * @param {*} [options] Override http request option.
1109
1118
  * @throws {RequiredError}
1110
1119
  */
1111
- v1SuggestionsQueriesGet: async (xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options = {}) => {
1120
+ v1SuggestionsQueriesGet: async (xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options = {}) => {
1112
1121
  // verify required parameter 'xStoreid' is not null or undefined
1113
1122
  (0, common_1.assertParamExists)('v1SuggestionsQueriesGet', 'xStoreid', xStoreid);
1114
1123
  // verify required parameter 'xStoresecret' is not null or undefined
@@ -1126,6 +1135,9 @@ const QuerySuggestionsApiAxiosParamCreator = function (configuration) {
1126
1135
  if (query !== undefined) {
1127
1136
  localVarQueryParameter['query'] = query;
1128
1137
  }
1138
+ if (q !== undefined) {
1139
+ localVarQueryParameter['q'] = q;
1140
+ }
1129
1141
  if (hitsPerPage !== undefined) {
1130
1142
  localVarQueryParameter['hitsPerPage'] = hitsPerPage;
1131
1143
  }
@@ -1144,6 +1156,18 @@ const QuerySuggestionsApiAxiosParamCreator = function (configuration) {
1144
1156
  if (includeFacets !== undefined) {
1145
1157
  localVarQueryParameter['include_facets'] = includeFacets;
1146
1158
  }
1159
+ if (includeDropdownRecommendations !== undefined) {
1160
+ localVarQueryParameter['include_dropdown_recommendations'] = includeDropdownRecommendations;
1161
+ }
1162
+ if (includeDropdownProductList !== undefined) {
1163
+ localVarQueryParameter['include_dropdown_product_list'] = includeDropdownProductList;
1164
+ }
1165
+ if (includeFilteredTabs !== undefined) {
1166
+ localVarQueryParameter['include_filtered_tabs'] = includeFilteredTabs;
1167
+ }
1168
+ if (includeEmptyQueryRecommendations !== undefined) {
1169
+ localVarQueryParameter['include_empty_query_recommendations'] = includeEmptyQueryRecommendations;
1170
+ }
1147
1171
  if (maxCategories !== undefined) {
1148
1172
  localVarQueryParameter['max_categories'] = maxCategories;
1149
1173
  }
@@ -1159,6 +1183,18 @@ const QuerySuggestionsApiAxiosParamCreator = function (configuration) {
1159
1183
  if (disableTypoTolerance !== undefined) {
1160
1184
  localVarQueryParameter['disable_typo_tolerance'] = disableTypoTolerance;
1161
1185
  }
1186
+ if (filteredTabs !== undefined) {
1187
+ localVarQueryParameter['filtered_tabs'] = filteredTabs;
1188
+ }
1189
+ if (userId !== undefined) {
1190
+ localVarQueryParameter['user_id'] = userId;
1191
+ }
1192
+ if (anonId !== undefined) {
1193
+ localVarQueryParameter['anon_id'] = anonId;
1194
+ }
1195
+ if (sessionId !== undefined) {
1196
+ localVarQueryParameter['session_id'] = sessionId;
1197
+ }
1162
1198
  localVarHeaderParameter['Accept'] = 'application/json';
1163
1199
  if (xStoreid != null) {
1164
1200
  localVarHeaderParameter['x-storeid'] = String(xStoreid);
@@ -1184,14 +1220,14 @@ const QuerySuggestionsApiAxiosParamCreator = function (configuration) {
1184
1220
  };
1185
1221
  },
1186
1222
  /**
1187
- * Same as GET: retrieve query suggestions with optional body (query, hitsPerPage, analytics_tags, filtered_tabs, etc.). Use POST when sending filtered_tabs or larger payloads. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1223
+ * Same as GET endpoint with full feature parity. Retrieve query suggestions with optional JSON body (query, hitsPerPage, analytics_tags, filtered_tabs, dropdown recommendations, etc.). Use POST when sending complex filtered_tabs as JSON is more convenient than URL-encoded query params. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Both GET and POST return identical responses.
1188
1224
  * @summary Post Query Suggestions
1189
1225
  * @param {string} xStoreid Store ID
1190
1226
  * @param {string} xStoresecret Store Secret
1191
1227
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1192
1228
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1193
1229
  * @param {string} [xSessionId] Session ID for personalization
1194
- * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, filtered_tabs, etc.)
1230
+ * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, include_dropdown_recommendations, filtered_tabs, etc.)
1195
1231
  * @param {*} [options] Override http request option.
1196
1232
  * @throws {RequiredError}
1197
1233
  */
@@ -1260,43 +1296,52 @@ const QuerySuggestionsApiFp = function (configuration) {
1260
1296
  return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1261
1297
  },
1262
1298
  /**
1263
- * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, and configurable time ranges. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1299
+ * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, configurable time ranges, and dropdown recommendations with filtered tabs. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Full feature parity with POST endpoint.
1264
1300
  * @summary Get Query Suggestions
1265
1301
  * @param {string} xStoreid Store ID
1266
1302
  * @param {string} xStoresecret Store Secret
1267
1303
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1268
1304
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1269
1305
  * @param {string} [xSessionId] Session ID for personalization
1270
- * @param {string} [query] Partial query to get suggestions for
1306
+ * @param {string} [query] Partial query to get suggestions for (supports both \'query\' and \'q\')
1307
+ * @param {string} [q] Alias for \'query\' parameter
1271
1308
  * @param {number} [hitsPerPage] Number of suggestions to return
1272
1309
  * @param {number} [page] Page number for pagination
1273
1310
  * @param {string} [analyticsTags] Comma-separated analytics tags to filter suggestions
1274
1311
  * @param {V1SuggestionsQueriesGetTagsMatchModeEnum} [tagsMatchMode] How to match analytics tags
1275
1312
  * @param {boolean} [includeCategories] Include category information in suggestions
1276
1313
  * @param {boolean} [includeFacets] Include popular facets/filters information
1314
+ * @param {boolean} [includeDropdownRecommendations] Include rich dropdown recommendations (trending products, filtered tabs)
1315
+ * @param {boolean} [includeDropdownProductList] Include product list in dropdown recommendations
1316
+ * @param {boolean} [includeFilteredTabs] Include filtered tabs in dropdown recommendations
1317
+ * @param {boolean} [includeEmptyQueryRecommendations] Return popular suggestions when query is empty
1277
1318
  * @param {number} [maxCategories] Maximum categories per suggestion
1278
1319
  * @param {number} [maxFacets] Maximum facets per suggestion
1279
1320
  * @param {number} [minPopularity] Minimum popularity threshold
1280
1321
  * @param {V1SuggestionsQueriesGetTimeRangeEnum} [timeRange] Time range for analytics data
1281
1322
  * @param {boolean} [disableTypoTolerance] Disable fuzzy/typo-tolerant matching
1323
+ * @param {string} [filteredTabs] URL-encoded JSON array of filtered tab configurations (e.g., [{\\
1324
+ * @param {string} [userId] User ID for personalization (query param fallback, header takes precedence)
1325
+ * @param {string} [anonId] Anonymous ID for personalization (query param fallback, header takes precedence)
1326
+ * @param {string} [sessionId] Session ID for personalization (query param fallback, header takes precedence)
1282
1327
  * @param {*} [options] Override http request option.
1283
1328
  * @throws {RequiredError}
1284
1329
  */
1285
- async v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options) {
1286
- const localVarAxiosArgs = await localVarAxiosParamCreator.v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options);
1330
+ async v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options) {
1331
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options);
1287
1332
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1288
1333
  const localVarOperationServerBasePath = base_1.operationServerMap['QuerySuggestionsApi.v1SuggestionsQueriesGet']?.[localVarOperationServerIndex]?.url;
1289
1334
  return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1290
1335
  },
1291
1336
  /**
1292
- * Same as GET: retrieve query suggestions with optional body (query, hitsPerPage, analytics_tags, filtered_tabs, etc.). Use POST when sending filtered_tabs or larger payloads. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1337
+ * Same as GET endpoint with full feature parity. Retrieve query suggestions with optional JSON body (query, hitsPerPage, analytics_tags, filtered_tabs, dropdown recommendations, etc.). Use POST when sending complex filtered_tabs as JSON is more convenient than URL-encoded query params. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Both GET and POST return identical responses.
1293
1338
  * @summary Post Query Suggestions
1294
1339
  * @param {string} xStoreid Store ID
1295
1340
  * @param {string} xStoresecret Store Secret
1296
1341
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1297
1342
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1298
1343
  * @param {string} [xSessionId] Session ID for personalization
1299
- * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, filtered_tabs, etc.)
1344
+ * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, include_dropdown_recommendations, filtered_tabs, etc.)
1300
1345
  * @param {*} [options] Override http request option.
1301
1346
  * @throws {RequiredError}
1302
1347
  */
@@ -1327,40 +1372,49 @@ const QuerySuggestionsApiFactory = function (configuration, basePath, axios) {
1327
1372
  return localVarFp.v1SuggestionsConfigGet(xStoreid, xStoresecret, options).then((request) => request(axios, basePath));
1328
1373
  },
1329
1374
  /**
1330
- * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, and configurable time ranges. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1375
+ * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, configurable time ranges, and dropdown recommendations with filtered tabs. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Full feature parity with POST endpoint.
1331
1376
  * @summary Get Query Suggestions
1332
1377
  * @param {string} xStoreid Store ID
1333
1378
  * @param {string} xStoresecret Store Secret
1334
1379
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1335
1380
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1336
1381
  * @param {string} [xSessionId] Session ID for personalization
1337
- * @param {string} [query] Partial query to get suggestions for
1382
+ * @param {string} [query] Partial query to get suggestions for (supports both \'query\' and \'q\')
1383
+ * @param {string} [q] Alias for \'query\' parameter
1338
1384
  * @param {number} [hitsPerPage] Number of suggestions to return
1339
1385
  * @param {number} [page] Page number for pagination
1340
1386
  * @param {string} [analyticsTags] Comma-separated analytics tags to filter suggestions
1341
1387
  * @param {V1SuggestionsQueriesGetTagsMatchModeEnum} [tagsMatchMode] How to match analytics tags
1342
1388
  * @param {boolean} [includeCategories] Include category information in suggestions
1343
1389
  * @param {boolean} [includeFacets] Include popular facets/filters information
1390
+ * @param {boolean} [includeDropdownRecommendations] Include rich dropdown recommendations (trending products, filtered tabs)
1391
+ * @param {boolean} [includeDropdownProductList] Include product list in dropdown recommendations
1392
+ * @param {boolean} [includeFilteredTabs] Include filtered tabs in dropdown recommendations
1393
+ * @param {boolean} [includeEmptyQueryRecommendations] Return popular suggestions when query is empty
1344
1394
  * @param {number} [maxCategories] Maximum categories per suggestion
1345
1395
  * @param {number} [maxFacets] Maximum facets per suggestion
1346
1396
  * @param {number} [minPopularity] Minimum popularity threshold
1347
1397
  * @param {V1SuggestionsQueriesGetTimeRangeEnum} [timeRange] Time range for analytics data
1348
1398
  * @param {boolean} [disableTypoTolerance] Disable fuzzy/typo-tolerant matching
1399
+ * @param {string} [filteredTabs] URL-encoded JSON array of filtered tab configurations (e.g., [{\\
1400
+ * @param {string} [userId] User ID for personalization (query param fallback, header takes precedence)
1401
+ * @param {string} [anonId] Anonymous ID for personalization (query param fallback, header takes precedence)
1402
+ * @param {string} [sessionId] Session ID for personalization (query param fallback, header takes precedence)
1349
1403
  * @param {*} [options] Override http request option.
1350
1404
  * @throws {RequiredError}
1351
1405
  */
1352
- v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options) {
1353
- return localVarFp.v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options).then((request) => request(axios, basePath));
1406
+ v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options) {
1407
+ return localVarFp.v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options).then((request) => request(axios, basePath));
1354
1408
  },
1355
1409
  /**
1356
- * Same as GET: retrieve query suggestions with optional body (query, hitsPerPage, analytics_tags, filtered_tabs, etc.). Use POST when sending filtered_tabs or larger payloads. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1410
+ * Same as GET endpoint with full feature parity. Retrieve query suggestions with optional JSON body (query, hitsPerPage, analytics_tags, filtered_tabs, dropdown recommendations, etc.). Use POST when sending complex filtered_tabs as JSON is more convenient than URL-encoded query params. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Both GET and POST return identical responses.
1357
1411
  * @summary Post Query Suggestions
1358
1412
  * @param {string} xStoreid Store ID
1359
1413
  * @param {string} xStoresecret Store Secret
1360
1414
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1361
1415
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1362
1416
  * @param {string} [xSessionId] Session ID for personalization
1363
- * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, filtered_tabs, etc.)
1417
+ * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, include_dropdown_recommendations, filtered_tabs, etc.)
1364
1418
  * @param {*} [options] Override http request option.
1365
1419
  * @throws {RequiredError}
1366
1420
  */
@@ -1386,40 +1440,49 @@ class QuerySuggestionsApi extends base_1.BaseAPI {
1386
1440
  return (0, exports.QuerySuggestionsApiFp)(this.configuration).v1SuggestionsConfigGet(xStoreid, xStoresecret, options).then((request) => request(this.axios, this.basePath));
1387
1441
  }
1388
1442
  /**
1389
- * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, and configurable time ranges. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1443
+ * Retrieve query suggestions based on search analytics data with popularity ranking and optional category/facet enrichment. Supports partial query matching, analytics tags filtering, configurable time ranges, and dropdown recommendations with filtered tabs. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Full feature parity with POST endpoint.
1390
1444
  * @summary Get Query Suggestions
1391
1445
  * @param {string} xStoreid Store ID
1392
1446
  * @param {string} xStoresecret Store Secret
1393
1447
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1394
1448
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1395
1449
  * @param {string} [xSessionId] Session ID for personalization
1396
- * @param {string} [query] Partial query to get suggestions for
1450
+ * @param {string} [query] Partial query to get suggestions for (supports both \'query\' and \'q\')
1451
+ * @param {string} [q] Alias for \'query\' parameter
1397
1452
  * @param {number} [hitsPerPage] Number of suggestions to return
1398
1453
  * @param {number} [page] Page number for pagination
1399
1454
  * @param {string} [analyticsTags] Comma-separated analytics tags to filter suggestions
1400
1455
  * @param {V1SuggestionsQueriesGetTagsMatchModeEnum} [tagsMatchMode] How to match analytics tags
1401
1456
  * @param {boolean} [includeCategories] Include category information in suggestions
1402
1457
  * @param {boolean} [includeFacets] Include popular facets/filters information
1458
+ * @param {boolean} [includeDropdownRecommendations] Include rich dropdown recommendations (trending products, filtered tabs)
1459
+ * @param {boolean} [includeDropdownProductList] Include product list in dropdown recommendations
1460
+ * @param {boolean} [includeFilteredTabs] Include filtered tabs in dropdown recommendations
1461
+ * @param {boolean} [includeEmptyQueryRecommendations] Return popular suggestions when query is empty
1403
1462
  * @param {number} [maxCategories] Maximum categories per suggestion
1404
1463
  * @param {number} [maxFacets] Maximum facets per suggestion
1405
1464
  * @param {number} [minPopularity] Minimum popularity threshold
1406
1465
  * @param {V1SuggestionsQueriesGetTimeRangeEnum} [timeRange] Time range for analytics data
1407
1466
  * @param {boolean} [disableTypoTolerance] Disable fuzzy/typo-tolerant matching
1467
+ * @param {string} [filteredTabs] URL-encoded JSON array of filtered tab configurations (e.g., [{\\
1468
+ * @param {string} [userId] User ID for personalization (query param fallback, header takes precedence)
1469
+ * @param {string} [anonId] Anonymous ID for personalization (query param fallback, header takes precedence)
1470
+ * @param {string} [sessionId] Session ID for personalization (query param fallback, header takes precedence)
1408
1471
  * @param {*} [options] Override http request option.
1409
1472
  * @throws {RequiredError}
1410
1473
  */
1411
- v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options) {
1412
- return (0, exports.QuerySuggestionsApiFp)(this.configuration).v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, options).then((request) => request(this.axios, this.basePath));
1474
+ v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options) {
1475
+ return (0, exports.QuerySuggestionsApiFp)(this.configuration).v1SuggestionsQueriesGet(xStoreid, xStoresecret, xUserId, xAnonId, xSessionId, query, q, hitsPerPage, page, analyticsTags, tagsMatchMode, includeCategories, includeFacets, includeDropdownRecommendations, includeDropdownProductList, includeFilteredTabs, includeEmptyQueryRecommendations, maxCategories, maxFacets, minPopularity, timeRange, disableTypoTolerance, filteredTabs, userId, anonId, sessionId, options).then((request) => request(this.axios, this.basePath));
1413
1476
  }
1414
1477
  /**
1415
- * Same as GET: retrieve query suggestions with optional body (query, hitsPerPage, analytics_tags, filtered_tabs, etc.). Use POST when sending filtered_tabs or larger payloads. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
1478
+ * Same as GET endpoint with full feature parity. Retrieve query suggestions with optional JSON body (query, hitsPerPage, analytics_tags, filtered_tabs, dropdown recommendations, etc.). Use POST when sending complex filtered_tabs as JSON is more convenient than URL-encoded query params. Supports personalization via x-user-id, x-anon-id, x-session-id headers. Both GET and POST return identical responses.
1416
1479
  * @summary Post Query Suggestions
1417
1480
  * @param {string} xStoreid Store ID
1418
1481
  * @param {string} xStoresecret Store Secret
1419
1482
  * @param {string} [xUserId] User ID for personalization (logged-in user)
1420
1483
  * @param {string} [xAnonId] Anonymous ID for personalization (cookie/device ID)
1421
1484
  * @param {string} [xSessionId] Session ID for personalization
1422
- * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, filtered_tabs, etc.)
1485
+ * @param {QuerySuggestionsServiceQuerySuggestionsRequest} [querySuggestionsServiceQuerySuggestionsRequest] Query suggestions request (query, hitsPerPage, page, analytics_tags, include_categories, include_facets, include_dropdown_recommendations, filtered_tabs, etc.)
1423
1486
  * @param {*} [options] Override http request option.
1424
1487
  * @throws {RequiredError}
1425
1488
  */
@@ -2728,6 +2791,210 @@ exports.SDKStoreInfoApi = SDKStoreInfoApi;
2728
2791
  */
2729
2792
  const SearchApiAxiosParamCreator = function (configuration) {
2730
2793
  return {
2794
+ /**
2795
+ * Search documents using query parameters. Supports all features of POST endpoint.
2796
+ * @summary Public Search API (GET)
2797
+ * @param {string} xStoreid Store ID
2798
+ * @param {string} xStoresecret Store Secret
2799
+ * @param {string} q Search query
2800
+ * @param {string} [xUserId] User ID for personalization
2801
+ * @param {string} [xAnonId] Anonymous ID for personalization
2802
+ * @param {string} [xSessionId] Session ID for personalization
2803
+ * @param {number} [page] Page number (default: 1)
2804
+ * @param {number} [perPage] Items per page (default: 10)
2805
+ * @param {string} [sortBy] Sort option (e.g., price:asc, created_at:desc)
2806
+ * @param {string} [filterBy] Filter string (e.g., category:shirts)
2807
+ * @param {string} [facetBy] Facet fields (comma-separated)
2808
+ * @param {number} [maxFacetValues] Maximum facet values to return
2809
+ * @param {boolean} [widgetMode] Return widget-formatted results
2810
+ * @param {boolean} [includeSuggestions] Include autocomplete suggestions
2811
+ * @param {number} [suggestionsLimit] Number of suggestions to return
2812
+ * @param {string} [analyticsTags] Analytics tags (comma-separated)
2813
+ * @param {string} [stopwordSets] Stopword set IDs (comma-separated)
2814
+ * @param {string} [synonymSets] Synonym set IDs (comma-separated)
2815
+ * @param {string} [searchFields] Fields to search in (comma-separated)
2816
+ * @param {string} [returnFields] Fields to return (comma-separated)
2817
+ * @param {string} [omitFields] Fields to omit (comma-separated)
2818
+ * @param {string} [snippetFields] Fields to generate snippets for (comma-separated)
2819
+ * @param {string} [fullSnippetFields] Fields to include full snippet (comma-separated)
2820
+ * @param {string} [fieldWeights] Field weights as comma-separated integers (e.g., 3,2,1)
2821
+ * @param {string} [groupField] Field to group results by
2822
+ * @param {number} [groupSize] Number of results per group
2823
+ * @param {string} [snippetPrefix] Prefix for highlighted snippets
2824
+ * @param {string} [snippetSuffix] Suffix for highlighted snippets
2825
+ * @param {number} [snippetTokenLimit] Maximum tokens in snippet
2826
+ * @param {number} [snippetMinLen] Minimum snippet length
2827
+ * @param {boolean} [includeSnippets] Include snippets in results
2828
+ * @param {string} [prefixMode] Prefix matching mode (e.g., always, fallback, off)
2829
+ * @param {string} [infixMode] Infix matching mode (e.g., always, fallback, off)
2830
+ * @param {number} [typoMax] Maximum typo tolerance
2831
+ * @param {number} [typoMinLen1] Min word length for 1 typo
2832
+ * @param {number} [typoMinLen2] Min word length for 2 typos
2833
+ * @param {number} [searchTimeoutMs] Search timeout in milliseconds
2834
+ * @param {boolean} [requireAllTerms] Require all search terms to match
2835
+ * @param {boolean} [exactMatchBoost] Boost exact matches
2836
+ * @param {boolean} [cacheResults] Cache search results
2837
+ * @param {boolean} [applyRules] Apply search rules
2838
+ * @param {string} [presetName] Search preset name to use
2839
+ * @param {string} [facetSearchText] Text to filter facet values
2840
+ * @param {*} [options] Override http request option.
2841
+ * @throws {RequiredError}
2842
+ */
2843
+ v1SearchGet: async (xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options = {}) => {
2844
+ // verify required parameter 'xStoreid' is not null or undefined
2845
+ (0, common_1.assertParamExists)('v1SearchGet', 'xStoreid', xStoreid);
2846
+ // verify required parameter 'xStoresecret' is not null or undefined
2847
+ (0, common_1.assertParamExists)('v1SearchGet', 'xStoresecret', xStoresecret);
2848
+ // verify required parameter 'q' is not null or undefined
2849
+ (0, common_1.assertParamExists)('v1SearchGet', 'q', q);
2850
+ const localVarPath = `/v1/search`;
2851
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
2852
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
2853
+ let baseOptions;
2854
+ if (configuration) {
2855
+ baseOptions = configuration.baseOptions;
2856
+ }
2857
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
2858
+ const localVarHeaderParameter = {};
2859
+ const localVarQueryParameter = {};
2860
+ if (q !== undefined) {
2861
+ localVarQueryParameter['q'] = q;
2862
+ }
2863
+ if (page !== undefined) {
2864
+ localVarQueryParameter['page'] = page;
2865
+ }
2866
+ if (perPage !== undefined) {
2867
+ localVarQueryParameter['per_page'] = perPage;
2868
+ }
2869
+ if (sortBy !== undefined) {
2870
+ localVarQueryParameter['sort_by'] = sortBy;
2871
+ }
2872
+ if (filterBy !== undefined) {
2873
+ localVarQueryParameter['filter_by'] = filterBy;
2874
+ }
2875
+ if (facetBy !== undefined) {
2876
+ localVarQueryParameter['facet_by'] = facetBy;
2877
+ }
2878
+ if (maxFacetValues !== undefined) {
2879
+ localVarQueryParameter['max_facet_values'] = maxFacetValues;
2880
+ }
2881
+ if (widgetMode !== undefined) {
2882
+ localVarQueryParameter['widget_mode'] = widgetMode;
2883
+ }
2884
+ if (includeSuggestions !== undefined) {
2885
+ localVarQueryParameter['include_suggestions'] = includeSuggestions;
2886
+ }
2887
+ if (suggestionsLimit !== undefined) {
2888
+ localVarQueryParameter['suggestions_limit'] = suggestionsLimit;
2889
+ }
2890
+ if (analyticsTags !== undefined) {
2891
+ localVarQueryParameter['analytics_tags'] = analyticsTags;
2892
+ }
2893
+ if (stopwordSets !== undefined) {
2894
+ localVarQueryParameter['stopword_sets'] = stopwordSets;
2895
+ }
2896
+ if (synonymSets !== undefined) {
2897
+ localVarQueryParameter['synonym_sets'] = synonymSets;
2898
+ }
2899
+ if (searchFields !== undefined) {
2900
+ localVarQueryParameter['search_fields'] = searchFields;
2901
+ }
2902
+ if (returnFields !== undefined) {
2903
+ localVarQueryParameter['return_fields'] = returnFields;
2904
+ }
2905
+ if (omitFields !== undefined) {
2906
+ localVarQueryParameter['omit_fields'] = omitFields;
2907
+ }
2908
+ if (snippetFields !== undefined) {
2909
+ localVarQueryParameter['snippet_fields'] = snippetFields;
2910
+ }
2911
+ if (fullSnippetFields !== undefined) {
2912
+ localVarQueryParameter['full_snippet_fields'] = fullSnippetFields;
2913
+ }
2914
+ if (fieldWeights !== undefined) {
2915
+ localVarQueryParameter['field_weights'] = fieldWeights;
2916
+ }
2917
+ if (groupField !== undefined) {
2918
+ localVarQueryParameter['group_field'] = groupField;
2919
+ }
2920
+ if (groupSize !== undefined) {
2921
+ localVarQueryParameter['group_size'] = groupSize;
2922
+ }
2923
+ if (snippetPrefix !== undefined) {
2924
+ localVarQueryParameter['snippet_prefix'] = snippetPrefix;
2925
+ }
2926
+ if (snippetSuffix !== undefined) {
2927
+ localVarQueryParameter['snippet_suffix'] = snippetSuffix;
2928
+ }
2929
+ if (snippetTokenLimit !== undefined) {
2930
+ localVarQueryParameter['snippet_token_limit'] = snippetTokenLimit;
2931
+ }
2932
+ if (snippetMinLen !== undefined) {
2933
+ localVarQueryParameter['snippet_min_len'] = snippetMinLen;
2934
+ }
2935
+ if (includeSnippets !== undefined) {
2936
+ localVarQueryParameter['include_snippets'] = includeSnippets;
2937
+ }
2938
+ if (prefixMode !== undefined) {
2939
+ localVarQueryParameter['prefix_mode'] = prefixMode;
2940
+ }
2941
+ if (infixMode !== undefined) {
2942
+ localVarQueryParameter['infix_mode'] = infixMode;
2943
+ }
2944
+ if (typoMax !== undefined) {
2945
+ localVarQueryParameter['typo_max'] = typoMax;
2946
+ }
2947
+ if (typoMinLen1 !== undefined) {
2948
+ localVarQueryParameter['typo_min_len_1'] = typoMinLen1;
2949
+ }
2950
+ if (typoMinLen2 !== undefined) {
2951
+ localVarQueryParameter['typo_min_len_2'] = typoMinLen2;
2952
+ }
2953
+ if (searchTimeoutMs !== undefined) {
2954
+ localVarQueryParameter['search_timeout_ms'] = searchTimeoutMs;
2955
+ }
2956
+ if (requireAllTerms !== undefined) {
2957
+ localVarQueryParameter['require_all_terms'] = requireAllTerms;
2958
+ }
2959
+ if (exactMatchBoost !== undefined) {
2960
+ localVarQueryParameter['exact_match_boost'] = exactMatchBoost;
2961
+ }
2962
+ if (cacheResults !== undefined) {
2963
+ localVarQueryParameter['cache_results'] = cacheResults;
2964
+ }
2965
+ if (applyRules !== undefined) {
2966
+ localVarQueryParameter['apply_rules'] = applyRules;
2967
+ }
2968
+ if (presetName !== undefined) {
2969
+ localVarQueryParameter['preset_name'] = presetName;
2970
+ }
2971
+ if (facetSearchText !== undefined) {
2972
+ localVarQueryParameter['facet_search_text'] = facetSearchText;
2973
+ }
2974
+ localVarHeaderParameter['Accept'] = 'application/json';
2975
+ if (xStoreid != null) {
2976
+ localVarHeaderParameter['x-storeid'] = String(xStoreid);
2977
+ }
2978
+ if (xStoresecret != null) {
2979
+ localVarHeaderParameter['x-storesecret'] = String(xStoresecret);
2980
+ }
2981
+ if (xUserId != null) {
2982
+ localVarHeaderParameter['x-user-id'] = String(xUserId);
2983
+ }
2984
+ if (xAnonId != null) {
2985
+ localVarHeaderParameter['x-anon-id'] = String(xAnonId);
2986
+ }
2987
+ if (xSessionId != null) {
2988
+ localVarHeaderParameter['x-session-id'] = String(xSessionId);
2989
+ }
2990
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
2991
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
2992
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
2993
+ return {
2994
+ url: (0, common_1.toPathString)(localVarUrlObj),
2995
+ options: localVarRequestOptions,
2996
+ };
2997
+ },
2731
2998
  /**
2732
2999
  * Search documents using store credentials with optional autocomplete suggestions and configurable stopwords/synonyms. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
2733
3000
  * @summary Public Search API
@@ -2792,6 +3059,61 @@ exports.SearchApiAxiosParamCreator = SearchApiAxiosParamCreator;
2792
3059
  const SearchApiFp = function (configuration) {
2793
3060
  const localVarAxiosParamCreator = (0, exports.SearchApiAxiosParamCreator)(configuration);
2794
3061
  return {
3062
+ /**
3063
+ * Search documents using query parameters. Supports all features of POST endpoint.
3064
+ * @summary Public Search API (GET)
3065
+ * @param {string} xStoreid Store ID
3066
+ * @param {string} xStoresecret Store Secret
3067
+ * @param {string} q Search query
3068
+ * @param {string} [xUserId] User ID for personalization
3069
+ * @param {string} [xAnonId] Anonymous ID for personalization
3070
+ * @param {string} [xSessionId] Session ID for personalization
3071
+ * @param {number} [page] Page number (default: 1)
3072
+ * @param {number} [perPage] Items per page (default: 10)
3073
+ * @param {string} [sortBy] Sort option (e.g., price:asc, created_at:desc)
3074
+ * @param {string} [filterBy] Filter string (e.g., category:shirts)
3075
+ * @param {string} [facetBy] Facet fields (comma-separated)
3076
+ * @param {number} [maxFacetValues] Maximum facet values to return
3077
+ * @param {boolean} [widgetMode] Return widget-formatted results
3078
+ * @param {boolean} [includeSuggestions] Include autocomplete suggestions
3079
+ * @param {number} [suggestionsLimit] Number of suggestions to return
3080
+ * @param {string} [analyticsTags] Analytics tags (comma-separated)
3081
+ * @param {string} [stopwordSets] Stopword set IDs (comma-separated)
3082
+ * @param {string} [synonymSets] Synonym set IDs (comma-separated)
3083
+ * @param {string} [searchFields] Fields to search in (comma-separated)
3084
+ * @param {string} [returnFields] Fields to return (comma-separated)
3085
+ * @param {string} [omitFields] Fields to omit (comma-separated)
3086
+ * @param {string} [snippetFields] Fields to generate snippets for (comma-separated)
3087
+ * @param {string} [fullSnippetFields] Fields to include full snippet (comma-separated)
3088
+ * @param {string} [fieldWeights] Field weights as comma-separated integers (e.g., 3,2,1)
3089
+ * @param {string} [groupField] Field to group results by
3090
+ * @param {number} [groupSize] Number of results per group
3091
+ * @param {string} [snippetPrefix] Prefix for highlighted snippets
3092
+ * @param {string} [snippetSuffix] Suffix for highlighted snippets
3093
+ * @param {number} [snippetTokenLimit] Maximum tokens in snippet
3094
+ * @param {number} [snippetMinLen] Minimum snippet length
3095
+ * @param {boolean} [includeSnippets] Include snippets in results
3096
+ * @param {string} [prefixMode] Prefix matching mode (e.g., always, fallback, off)
3097
+ * @param {string} [infixMode] Infix matching mode (e.g., always, fallback, off)
3098
+ * @param {number} [typoMax] Maximum typo tolerance
3099
+ * @param {number} [typoMinLen1] Min word length for 1 typo
3100
+ * @param {number} [typoMinLen2] Min word length for 2 typos
3101
+ * @param {number} [searchTimeoutMs] Search timeout in milliseconds
3102
+ * @param {boolean} [requireAllTerms] Require all search terms to match
3103
+ * @param {boolean} [exactMatchBoost] Boost exact matches
3104
+ * @param {boolean} [cacheResults] Cache search results
3105
+ * @param {boolean} [applyRules] Apply search rules
3106
+ * @param {string} [presetName] Search preset name to use
3107
+ * @param {string} [facetSearchText] Text to filter facet values
3108
+ * @param {*} [options] Override http request option.
3109
+ * @throws {RequiredError}
3110
+ */
3111
+ async v1SearchGet(xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options) {
3112
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1SearchGet(xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options);
3113
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3114
+ const localVarOperationServerBasePath = base_1.operationServerMap['SearchApi.v1SearchGet']?.[localVarOperationServerIndex]?.url;
3115
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
3116
+ },
2795
3117
  /**
2796
3118
  * Search documents using store credentials with optional autocomplete suggestions and configurable stopwords/synonyms. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
2797
3119
  * @summary Public Search API
@@ -2819,6 +3141,58 @@ exports.SearchApiFp = SearchApiFp;
2819
3141
  const SearchApiFactory = function (configuration, basePath, axios) {
2820
3142
  const localVarFp = (0, exports.SearchApiFp)(configuration);
2821
3143
  return {
3144
+ /**
3145
+ * Search documents using query parameters. Supports all features of POST endpoint.
3146
+ * @summary Public Search API (GET)
3147
+ * @param {string} xStoreid Store ID
3148
+ * @param {string} xStoresecret Store Secret
3149
+ * @param {string} q Search query
3150
+ * @param {string} [xUserId] User ID for personalization
3151
+ * @param {string} [xAnonId] Anonymous ID for personalization
3152
+ * @param {string} [xSessionId] Session ID for personalization
3153
+ * @param {number} [page] Page number (default: 1)
3154
+ * @param {number} [perPage] Items per page (default: 10)
3155
+ * @param {string} [sortBy] Sort option (e.g., price:asc, created_at:desc)
3156
+ * @param {string} [filterBy] Filter string (e.g., category:shirts)
3157
+ * @param {string} [facetBy] Facet fields (comma-separated)
3158
+ * @param {number} [maxFacetValues] Maximum facet values to return
3159
+ * @param {boolean} [widgetMode] Return widget-formatted results
3160
+ * @param {boolean} [includeSuggestions] Include autocomplete suggestions
3161
+ * @param {number} [suggestionsLimit] Number of suggestions to return
3162
+ * @param {string} [analyticsTags] Analytics tags (comma-separated)
3163
+ * @param {string} [stopwordSets] Stopword set IDs (comma-separated)
3164
+ * @param {string} [synonymSets] Synonym set IDs (comma-separated)
3165
+ * @param {string} [searchFields] Fields to search in (comma-separated)
3166
+ * @param {string} [returnFields] Fields to return (comma-separated)
3167
+ * @param {string} [omitFields] Fields to omit (comma-separated)
3168
+ * @param {string} [snippetFields] Fields to generate snippets for (comma-separated)
3169
+ * @param {string} [fullSnippetFields] Fields to include full snippet (comma-separated)
3170
+ * @param {string} [fieldWeights] Field weights as comma-separated integers (e.g., 3,2,1)
3171
+ * @param {string} [groupField] Field to group results by
3172
+ * @param {number} [groupSize] Number of results per group
3173
+ * @param {string} [snippetPrefix] Prefix for highlighted snippets
3174
+ * @param {string} [snippetSuffix] Suffix for highlighted snippets
3175
+ * @param {number} [snippetTokenLimit] Maximum tokens in snippet
3176
+ * @param {number} [snippetMinLen] Minimum snippet length
3177
+ * @param {boolean} [includeSnippets] Include snippets in results
3178
+ * @param {string} [prefixMode] Prefix matching mode (e.g., always, fallback, off)
3179
+ * @param {string} [infixMode] Infix matching mode (e.g., always, fallback, off)
3180
+ * @param {number} [typoMax] Maximum typo tolerance
3181
+ * @param {number} [typoMinLen1] Min word length for 1 typo
3182
+ * @param {number} [typoMinLen2] Min word length for 2 typos
3183
+ * @param {number} [searchTimeoutMs] Search timeout in milliseconds
3184
+ * @param {boolean} [requireAllTerms] Require all search terms to match
3185
+ * @param {boolean} [exactMatchBoost] Boost exact matches
3186
+ * @param {boolean} [cacheResults] Cache search results
3187
+ * @param {boolean} [applyRules] Apply search rules
3188
+ * @param {string} [presetName] Search preset name to use
3189
+ * @param {string} [facetSearchText] Text to filter facet values
3190
+ * @param {*} [options] Override http request option.
3191
+ * @throws {RequiredError}
3192
+ */
3193
+ v1SearchGet(xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options) {
3194
+ return localVarFp.v1SearchGet(xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options).then((request) => request(axios, basePath));
3195
+ },
2822
3196
  /**
2823
3197
  * Search documents using store credentials with optional autocomplete suggestions and configurable stopwords/synonyms. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
2824
3198
  * @summary Public Search API
@@ -2841,6 +3215,58 @@ exports.SearchApiFactory = SearchApiFactory;
2841
3215
  * SearchApi - object-oriented interface
2842
3216
  */
2843
3217
  class SearchApi extends base_1.BaseAPI {
3218
+ /**
3219
+ * Search documents using query parameters. Supports all features of POST endpoint.
3220
+ * @summary Public Search API (GET)
3221
+ * @param {string} xStoreid Store ID
3222
+ * @param {string} xStoresecret Store Secret
3223
+ * @param {string} q Search query
3224
+ * @param {string} [xUserId] User ID for personalization
3225
+ * @param {string} [xAnonId] Anonymous ID for personalization
3226
+ * @param {string} [xSessionId] Session ID for personalization
3227
+ * @param {number} [page] Page number (default: 1)
3228
+ * @param {number} [perPage] Items per page (default: 10)
3229
+ * @param {string} [sortBy] Sort option (e.g., price:asc, created_at:desc)
3230
+ * @param {string} [filterBy] Filter string (e.g., category:shirts)
3231
+ * @param {string} [facetBy] Facet fields (comma-separated)
3232
+ * @param {number} [maxFacetValues] Maximum facet values to return
3233
+ * @param {boolean} [widgetMode] Return widget-formatted results
3234
+ * @param {boolean} [includeSuggestions] Include autocomplete suggestions
3235
+ * @param {number} [suggestionsLimit] Number of suggestions to return
3236
+ * @param {string} [analyticsTags] Analytics tags (comma-separated)
3237
+ * @param {string} [stopwordSets] Stopword set IDs (comma-separated)
3238
+ * @param {string} [synonymSets] Synonym set IDs (comma-separated)
3239
+ * @param {string} [searchFields] Fields to search in (comma-separated)
3240
+ * @param {string} [returnFields] Fields to return (comma-separated)
3241
+ * @param {string} [omitFields] Fields to omit (comma-separated)
3242
+ * @param {string} [snippetFields] Fields to generate snippets for (comma-separated)
3243
+ * @param {string} [fullSnippetFields] Fields to include full snippet (comma-separated)
3244
+ * @param {string} [fieldWeights] Field weights as comma-separated integers (e.g., 3,2,1)
3245
+ * @param {string} [groupField] Field to group results by
3246
+ * @param {number} [groupSize] Number of results per group
3247
+ * @param {string} [snippetPrefix] Prefix for highlighted snippets
3248
+ * @param {string} [snippetSuffix] Suffix for highlighted snippets
3249
+ * @param {number} [snippetTokenLimit] Maximum tokens in snippet
3250
+ * @param {number} [snippetMinLen] Minimum snippet length
3251
+ * @param {boolean} [includeSnippets] Include snippets in results
3252
+ * @param {string} [prefixMode] Prefix matching mode (e.g., always, fallback, off)
3253
+ * @param {string} [infixMode] Infix matching mode (e.g., always, fallback, off)
3254
+ * @param {number} [typoMax] Maximum typo tolerance
3255
+ * @param {number} [typoMinLen1] Min word length for 1 typo
3256
+ * @param {number} [typoMinLen2] Min word length for 2 typos
3257
+ * @param {number} [searchTimeoutMs] Search timeout in milliseconds
3258
+ * @param {boolean} [requireAllTerms] Require all search terms to match
3259
+ * @param {boolean} [exactMatchBoost] Boost exact matches
3260
+ * @param {boolean} [cacheResults] Cache search results
3261
+ * @param {boolean} [applyRules] Apply search rules
3262
+ * @param {string} [presetName] Search preset name to use
3263
+ * @param {string} [facetSearchText] Text to filter facet values
3264
+ * @param {*} [options] Override http request option.
3265
+ * @throws {RequiredError}
3266
+ */
3267
+ v1SearchGet(xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options) {
3268
+ return (0, exports.SearchApiFp)(this.configuration).v1SearchGet(xStoreid, xStoresecret, q, xUserId, xAnonId, xSessionId, page, perPage, sortBy, filterBy, facetBy, maxFacetValues, widgetMode, includeSuggestions, suggestionsLimit, analyticsTags, stopwordSets, synonymSets, searchFields, returnFields, omitFields, snippetFields, fullSnippetFields, fieldWeights, groupField, groupSize, snippetPrefix, snippetSuffix, snippetTokenLimit, snippetMinLen, includeSnippets, prefixMode, infixMode, typoMax, typoMinLen1, typoMinLen2, searchTimeoutMs, requireAllTerms, exactMatchBoost, cacheResults, applyRules, presetName, facetSearchText, options).then((request) => request(this.axios, this.basePath));
3269
+ }
2844
3270
  /**
2845
3271
  * Search documents using store credentials with optional autocomplete suggestions and configurable stopwords/synonyms. Supports personalization via x-user-id, x-anon-id, x-session-id headers.
2846
3272
  * @summary Public Search API