@teemill/product-catalog 1.83.2 → 1.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/api.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Product Catalog API
5
5
  * Manage your Product Catalog. A catalog product is an object that represents a product listing that can be purchased from the given project. It contains a combination of design applications and a warehouse product, plus listing information such as title, description and tags.
6
6
  *
7
- * The version of the OpenAPI document: 1.83.2
7
+ * The version of the OpenAPI document: 1.85.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -1239,6 +1239,23 @@ export interface ProductBundleItemsInner {
1239
1239
  'license'?: License;
1240
1240
  'config'?: UpdateProductRequestBundleItemsInnerConfig;
1241
1241
  }
1242
+ export interface ProductType {
1243
+ /**
1244
+ * Unique object identifier
1245
+ */
1246
+ 'id': string;
1247
+ /**
1248
+ * Name of the product type
1249
+ */
1250
+ 'name': string;
1251
+ }
1252
+ export interface ProductTypeListResponse {
1253
+ 'productTypes': Array<ProductType>;
1254
+ /**
1255
+ * The token referencing the next page number
1256
+ */
1257
+ 'nextPageToken': number | null;
1258
+ }
1242
1259
  export interface ProductWarehouseProduct {
1243
1260
  /**
1244
1261
  * Unique object identifier
@@ -2635,7 +2652,7 @@ export const ApplicationSetsApiAxiosParamCreator = function (configuration?: Con
2635
2652
  * @summary List application sets
2636
2653
  * @param {string} project What project it is
2637
2654
  * @param {number} [pageToken] Page reference token
2638
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
2655
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
2639
2656
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
2640
2657
  * @param {*} [options] Override http request option.
2641
2658
  * @throws {RequiredError}
@@ -2796,7 +2813,7 @@ export const ApplicationSetsApiFp = function(configuration?: Configuration) {
2796
2813
  * @summary List application sets
2797
2814
  * @param {string} project What project it is
2798
2815
  * @param {number} [pageToken] Page reference token
2799
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
2816
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
2800
2817
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
2801
2818
  * @param {*} [options] Override http request option.
2802
2819
  * @throws {RequiredError}
@@ -2944,7 +2961,7 @@ export interface ApplicationSetsApiListApplicationSetsRequest {
2944
2961
  readonly pageToken?: number
2945
2962
 
2946
2963
  /**
2947
- * Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
2964
+ * Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
2948
2965
  */
2949
2966
  readonly search?: string
2950
2967
 
@@ -3162,18 +3179,136 @@ export class ApplicationTechnologiesApi extends BaseAPI {
3162
3179
  */
3163
3180
  export const ProductAnalyticsApiAxiosParamCreator = function (configuration?: Configuration) {
3164
3181
  return {
3182
+ /**
3183
+ * Exports all products with analytics data in a CSV file.
3184
+ * @summary Export product analytics
3185
+ * @param {string} project What project it is
3186
+ * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3187
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3188
+ * @param {string} [dateRangeStartDate] Start date for the date range filter (ISO 8601 format)
3189
+ * @param {string} [dateRangeEndDate] End date for the date range filter (ISO 8601 format)
3190
+ * @param {number} [minimumRevenue] Filter to only include products with total revenue greater than or equal to this amount
3191
+ * @param {number} [maximumRevenue] Filter to only include products with total revenue less than or equal to this amount
3192
+ * @param {number} [minimumSales] Filter to only include products with total sales greater than or equal to this number
3193
+ * @param {number} [maximumSales] Filter to only include products with total sales less than or equal to this number
3194
+ * @param {number} [minimumBasketPercent] Filter to only include products where the average basket percentage is greater than or equal to this value
3195
+ * @param {number} [maximumBasketPercent] Filter to only include products where the average basket percentage is less than or equal to this value
3196
+ * @param {number} [minimumTraffic] Filter to only include products with total traffic greater than or equal to this number
3197
+ * @param {number} [maximumTraffic] Filter to only include products with total traffic less than or equal to this number
3198
+ * @param {*} [options] Override http request option.
3199
+ * @throws {RequiredError}
3200
+ */
3201
+ exportProductAnalytics: async (project: string, sortBy?: Array<string>, search?: string, dateRangeStartDate?: string, dateRangeEndDate?: string, minimumRevenue?: number, maximumRevenue?: number, minimumSales?: number, maximumSales?: number, minimumBasketPercent?: number, maximumBasketPercent?: number, minimumTraffic?: number, maximumTraffic?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
3202
+ // verify required parameter 'project' is not null or undefined
3203
+ assertParamExists('exportProductAnalytics', 'project', project)
3204
+ const localVarPath = `/v1/catalog/analytics/export`;
3205
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
3206
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
3207
+ let baseOptions;
3208
+ if (configuration) {
3209
+ baseOptions = configuration.baseOptions;
3210
+ }
3211
+
3212
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
3213
+ const localVarHeaderParameter = {} as any;
3214
+ const localVarQueryParameter = {} as any;
3215
+
3216
+ // authentication session-oauth required
3217
+ // oauth required
3218
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
3219
+
3220
+ // authentication api-key required
3221
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
3222
+
3223
+ if (project !== undefined) {
3224
+ localVarQueryParameter['project'] = project;
3225
+ }
3226
+
3227
+ if (sortBy) {
3228
+ localVarQueryParameter['sortBy'] = sortBy;
3229
+ }
3230
+
3231
+ if (search !== undefined) {
3232
+ localVarQueryParameter['search'] = search;
3233
+ }
3234
+
3235
+ if (dateRangeStartDate !== undefined) {
3236
+ localVarQueryParameter['dateRangeStartDate'] = (dateRangeStartDate as any instanceof Date) ?
3237
+ (dateRangeStartDate as any).toISOString() :
3238
+ dateRangeStartDate;
3239
+ }
3240
+
3241
+ if (dateRangeEndDate !== undefined) {
3242
+ localVarQueryParameter['dateRangeEndDate'] = (dateRangeEndDate as any instanceof Date) ?
3243
+ (dateRangeEndDate as any).toISOString() :
3244
+ dateRangeEndDate;
3245
+ }
3246
+
3247
+ if (minimumRevenue !== undefined) {
3248
+ localVarQueryParameter['minimumRevenue'] = minimumRevenue;
3249
+ }
3250
+
3251
+ if (maximumRevenue !== undefined) {
3252
+ localVarQueryParameter['maximumRevenue'] = maximumRevenue;
3253
+ }
3254
+
3255
+ if (minimumSales !== undefined) {
3256
+ localVarQueryParameter['minimumSales'] = minimumSales;
3257
+ }
3258
+
3259
+ if (maximumSales !== undefined) {
3260
+ localVarQueryParameter['maximumSales'] = maximumSales;
3261
+ }
3262
+
3263
+ if (minimumBasketPercent !== undefined) {
3264
+ localVarQueryParameter['minimumBasketPercent'] = minimumBasketPercent;
3265
+ }
3266
+
3267
+ if (maximumBasketPercent !== undefined) {
3268
+ localVarQueryParameter['maximumBasketPercent'] = maximumBasketPercent;
3269
+ }
3270
+
3271
+ if (minimumTraffic !== undefined) {
3272
+ localVarQueryParameter['minimumTraffic'] = minimumTraffic;
3273
+ }
3274
+
3275
+ if (maximumTraffic !== undefined) {
3276
+ localVarQueryParameter['maximumTraffic'] = maximumTraffic;
3277
+ }
3278
+
3279
+ localVarHeaderParameter['Accept'] = 'text/csv; charset=utf-8,application/json';
3280
+
3281
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
3282
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
3283
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
3284
+
3285
+ return {
3286
+ url: toPathString(localVarUrlObj),
3287
+ options: localVarRequestOptions,
3288
+ };
3289
+ },
3165
3290
  /**
3166
3291
  * Lists all product analytics items.
3167
3292
  * @summary List product analytics
3168
3293
  * @param {string} project What project it is
3169
3294
  * @param {number} [pageToken] Page reference token
3170
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
3171
- * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3172
3295
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
3296
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3297
+ * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3298
+ * @param {string} [dateRangeStartDate] Start date for the date range filter (ISO 8601 format)
3299
+ * @param {string} [dateRangeEndDate] End date for the date range filter (ISO 8601 format)
3300
+ * @param {number} [minimumRevenue] Filter to only include products with total revenue greater than or equal to this amount
3301
+ * @param {number} [maximumRevenue] Filter to only include products with total revenue less than or equal to this amount
3302
+ * @param {number} [minimumSales] Filter to only include products with total sales greater than or equal to this number
3303
+ * @param {number} [maximumSales] Filter to only include products with total sales less than or equal to this number
3304
+ * @param {number} [minimumBasketPercent] Filter to only include products where the average basket percentage is greater than or equal to this value
3305
+ * @param {number} [maximumBasketPercent] Filter to only include products where the average basket percentage is less than or equal to this value
3306
+ * @param {number} [minimumTraffic] Filter to only include products with total traffic greater than or equal to this number
3307
+ * @param {number} [maximumTraffic] Filter to only include products with total traffic less than or equal to this number
3173
3308
  * @param {*} [options] Override http request option.
3174
3309
  * @throws {RequiredError}
3175
3310
  */
3176
- listProductAnalytics: async (project: string, pageToken?: number, search?: string, sortBy?: Array<string>, pageSize?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
3311
+ listProductAnalytics: async (project: string, pageToken?: number, pageSize?: number, search?: string, sortBy?: Array<string>, dateRangeStartDate?: string, dateRangeEndDate?: string, minimumRevenue?: number, maximumRevenue?: number, minimumSales?: number, maximumSales?: number, minimumBasketPercent?: number, maximumBasketPercent?: number, minimumTraffic?: number, maximumTraffic?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
3177
3312
  // verify required parameter 'project' is not null or undefined
3178
3313
  assertParamExists('listProductAnalytics', 'project', project)
3179
3314
  const localVarPath = `/v1/catalog/analytics`;
@@ -3203,6 +3338,10 @@ export const ProductAnalyticsApiAxiosParamCreator = function (configuration?: Co
3203
3338
  localVarQueryParameter['pageToken'] = pageToken;
3204
3339
  }
3205
3340
 
3341
+ if (pageSize !== undefined) {
3342
+ localVarQueryParameter['pageSize'] = pageSize;
3343
+ }
3344
+
3206
3345
  if (search !== undefined) {
3207
3346
  localVarQueryParameter['search'] = search;
3208
3347
  }
@@ -3211,8 +3350,48 @@ export const ProductAnalyticsApiAxiosParamCreator = function (configuration?: Co
3211
3350
  localVarQueryParameter['sortBy'] = sortBy;
3212
3351
  }
3213
3352
 
3214
- if (pageSize !== undefined) {
3215
- localVarQueryParameter['pageSize'] = pageSize;
3353
+ if (dateRangeStartDate !== undefined) {
3354
+ localVarQueryParameter['dateRangeStartDate'] = (dateRangeStartDate as any instanceof Date) ?
3355
+ (dateRangeStartDate as any).toISOString() :
3356
+ dateRangeStartDate;
3357
+ }
3358
+
3359
+ if (dateRangeEndDate !== undefined) {
3360
+ localVarQueryParameter['dateRangeEndDate'] = (dateRangeEndDate as any instanceof Date) ?
3361
+ (dateRangeEndDate as any).toISOString() :
3362
+ dateRangeEndDate;
3363
+ }
3364
+
3365
+ if (minimumRevenue !== undefined) {
3366
+ localVarQueryParameter['minimumRevenue'] = minimumRevenue;
3367
+ }
3368
+
3369
+ if (maximumRevenue !== undefined) {
3370
+ localVarQueryParameter['maximumRevenue'] = maximumRevenue;
3371
+ }
3372
+
3373
+ if (minimumSales !== undefined) {
3374
+ localVarQueryParameter['minimumSales'] = minimumSales;
3375
+ }
3376
+
3377
+ if (maximumSales !== undefined) {
3378
+ localVarQueryParameter['maximumSales'] = maximumSales;
3379
+ }
3380
+
3381
+ if (minimumBasketPercent !== undefined) {
3382
+ localVarQueryParameter['minimumBasketPercent'] = minimumBasketPercent;
3383
+ }
3384
+
3385
+ if (maximumBasketPercent !== undefined) {
3386
+ localVarQueryParameter['maximumBasketPercent'] = maximumBasketPercent;
3387
+ }
3388
+
3389
+ if (minimumTraffic !== undefined) {
3390
+ localVarQueryParameter['minimumTraffic'] = minimumTraffic;
3391
+ }
3392
+
3393
+ if (maximumTraffic !== undefined) {
3394
+ localVarQueryParameter['maximumTraffic'] = maximumTraffic;
3216
3395
  }
3217
3396
 
3218
3397
  localVarHeaderParameter['Accept'] = 'application/json';
@@ -3235,19 +3414,54 @@ export const ProductAnalyticsApiAxiosParamCreator = function (configuration?: Co
3235
3414
  export const ProductAnalyticsApiFp = function(configuration?: Configuration) {
3236
3415
  const localVarAxiosParamCreator = ProductAnalyticsApiAxiosParamCreator(configuration)
3237
3416
  return {
3417
+ /**
3418
+ * Exports all products with analytics data in a CSV file.
3419
+ * @summary Export product analytics
3420
+ * @param {string} project What project it is
3421
+ * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3422
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3423
+ * @param {string} [dateRangeStartDate] Start date for the date range filter (ISO 8601 format)
3424
+ * @param {string} [dateRangeEndDate] End date for the date range filter (ISO 8601 format)
3425
+ * @param {number} [minimumRevenue] Filter to only include products with total revenue greater than or equal to this amount
3426
+ * @param {number} [maximumRevenue] Filter to only include products with total revenue less than or equal to this amount
3427
+ * @param {number} [minimumSales] Filter to only include products with total sales greater than or equal to this number
3428
+ * @param {number} [maximumSales] Filter to only include products with total sales less than or equal to this number
3429
+ * @param {number} [minimumBasketPercent] Filter to only include products where the average basket percentage is greater than or equal to this value
3430
+ * @param {number} [maximumBasketPercent] Filter to only include products where the average basket percentage is less than or equal to this value
3431
+ * @param {number} [minimumTraffic] Filter to only include products with total traffic greater than or equal to this number
3432
+ * @param {number} [maximumTraffic] Filter to only include products with total traffic less than or equal to this number
3433
+ * @param {*} [options] Override http request option.
3434
+ * @throws {RequiredError}
3435
+ */
3436
+ async exportProductAnalytics(project: string, sortBy?: Array<string>, search?: string, dateRangeStartDate?: string, dateRangeEndDate?: string, minimumRevenue?: number, maximumRevenue?: number, minimumSales?: number, maximumSales?: number, minimumBasketPercent?: number, maximumBasketPercent?: number, minimumTraffic?: number, maximumTraffic?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
3437
+ const localVarAxiosArgs = await localVarAxiosParamCreator.exportProductAnalytics(project, sortBy, search, dateRangeStartDate, dateRangeEndDate, minimumRevenue, maximumRevenue, minimumSales, maximumSales, minimumBasketPercent, maximumBasketPercent, minimumTraffic, maximumTraffic, options);
3438
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3439
+ const localVarOperationServerBasePath = operationServerMap['ProductAnalyticsApi.exportProductAnalytics']?.[localVarOperationServerIndex]?.url;
3440
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
3441
+ },
3238
3442
  /**
3239
3443
  * Lists all product analytics items.
3240
3444
  * @summary List product analytics
3241
3445
  * @param {string} project What project it is
3242
3446
  * @param {number} [pageToken] Page reference token
3243
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
3244
- * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3245
3447
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
3448
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3449
+ * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3450
+ * @param {string} [dateRangeStartDate] Start date for the date range filter (ISO 8601 format)
3451
+ * @param {string} [dateRangeEndDate] End date for the date range filter (ISO 8601 format)
3452
+ * @param {number} [minimumRevenue] Filter to only include products with total revenue greater than or equal to this amount
3453
+ * @param {number} [maximumRevenue] Filter to only include products with total revenue less than or equal to this amount
3454
+ * @param {number} [minimumSales] Filter to only include products with total sales greater than or equal to this number
3455
+ * @param {number} [maximumSales] Filter to only include products with total sales less than or equal to this number
3456
+ * @param {number} [minimumBasketPercent] Filter to only include products where the average basket percentage is greater than or equal to this value
3457
+ * @param {number} [maximumBasketPercent] Filter to only include products where the average basket percentage is less than or equal to this value
3458
+ * @param {number} [minimumTraffic] Filter to only include products with total traffic greater than or equal to this number
3459
+ * @param {number} [maximumTraffic] Filter to only include products with total traffic less than or equal to this number
3246
3460
  * @param {*} [options] Override http request option.
3247
3461
  * @throws {RequiredError}
3248
3462
  */
3249
- async listProductAnalytics(project: string, pageToken?: number, search?: string, sortBy?: Array<string>, pageSize?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ProductAnalyticsResponse>> {
3250
- const localVarAxiosArgs = await localVarAxiosParamCreator.listProductAnalytics(project, pageToken, search, sortBy, pageSize, options);
3463
+ async listProductAnalytics(project: string, pageToken?: number, pageSize?: number, search?: string, sortBy?: Array<string>, dateRangeStartDate?: string, dateRangeEndDate?: string, minimumRevenue?: number, maximumRevenue?: number, minimumSales?: number, maximumSales?: number, minimumBasketPercent?: number, maximumBasketPercent?: number, minimumTraffic?: number, maximumTraffic?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ProductAnalyticsResponse>> {
3464
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listProductAnalytics(project, pageToken, pageSize, search, sortBy, dateRangeStartDate, dateRangeEndDate, minimumRevenue, maximumRevenue, minimumSales, maximumSales, minimumBasketPercent, maximumBasketPercent, minimumTraffic, maximumTraffic, options);
3251
3465
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3252
3466
  const localVarOperationServerBasePath = operationServerMap['ProductAnalyticsApi.listProductAnalytics']?.[localVarOperationServerIndex]?.url;
3253
3467
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -3261,6 +3475,16 @@ export const ProductAnalyticsApiFp = function(configuration?: Configuration) {
3261
3475
  export const ProductAnalyticsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
3262
3476
  const localVarFp = ProductAnalyticsApiFp(configuration)
3263
3477
  return {
3478
+ /**
3479
+ * Exports all products with analytics data in a CSV file.
3480
+ * @summary Export product analytics
3481
+ * @param {ProductAnalyticsApiExportProductAnalyticsRequest} requestParameters Request parameters.
3482
+ * @param {*} [options] Override http request option.
3483
+ * @throws {RequiredError}
3484
+ */
3485
+ exportProductAnalytics(requestParameters: ProductAnalyticsApiExportProductAnalyticsRequest, options?: RawAxiosRequestConfig): AxiosPromise<File> {
3486
+ return localVarFp.exportProductAnalytics(requestParameters.project, requestParameters.sortBy, requestParameters.search, requestParameters.dateRangeStartDate, requestParameters.dateRangeEndDate, requestParameters.minimumRevenue, requestParameters.maximumRevenue, requestParameters.minimumSales, requestParameters.maximumSales, requestParameters.minimumBasketPercent, requestParameters.maximumBasketPercent, requestParameters.minimumTraffic, requestParameters.maximumTraffic, options).then((request) => request(axios, basePath));
3487
+ },
3264
3488
  /**
3265
3489
  * Lists all product analytics items.
3266
3490
  * @summary List product analytics
@@ -3269,11 +3493,81 @@ export const ProductAnalyticsApiFactory = function (configuration?: Configuratio
3269
3493
  * @throws {RequiredError}
3270
3494
  */
3271
3495
  listProductAnalytics(requestParameters: ProductAnalyticsApiListProductAnalyticsRequest, options?: RawAxiosRequestConfig): AxiosPromise<ProductAnalyticsResponse> {
3272
- return localVarFp.listProductAnalytics(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.sortBy, requestParameters.pageSize, options).then((request) => request(axios, basePath));
3496
+ return localVarFp.listProductAnalytics(requestParameters.project, requestParameters.pageToken, requestParameters.pageSize, requestParameters.search, requestParameters.sortBy, requestParameters.dateRangeStartDate, requestParameters.dateRangeEndDate, requestParameters.minimumRevenue, requestParameters.maximumRevenue, requestParameters.minimumSales, requestParameters.maximumSales, requestParameters.minimumBasketPercent, requestParameters.maximumBasketPercent, requestParameters.minimumTraffic, requestParameters.maximumTraffic, options).then((request) => request(axios, basePath));
3273
3497
  },
3274
3498
  };
3275
3499
  };
3276
3500
 
3501
+ /**
3502
+ * Request parameters for exportProductAnalytics operation in ProductAnalyticsApi.
3503
+ */
3504
+ export interface ProductAnalyticsApiExportProductAnalyticsRequest {
3505
+ /**
3506
+ * What project it is
3507
+ */
3508
+ readonly project: string
3509
+
3510
+ /**
3511
+ * An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3512
+ */
3513
+ readonly sortBy?: Array<string>
3514
+
3515
+ /**
3516
+ * Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3517
+ */
3518
+ readonly search?: string
3519
+
3520
+ /**
3521
+ * Start date for the date range filter (ISO 8601 format)
3522
+ */
3523
+ readonly dateRangeStartDate?: string
3524
+
3525
+ /**
3526
+ * End date for the date range filter (ISO 8601 format)
3527
+ */
3528
+ readonly dateRangeEndDate?: string
3529
+
3530
+ /**
3531
+ * Filter to only include products with total revenue greater than or equal to this amount
3532
+ */
3533
+ readonly minimumRevenue?: number
3534
+
3535
+ /**
3536
+ * Filter to only include products with total revenue less than or equal to this amount
3537
+ */
3538
+ readonly maximumRevenue?: number
3539
+
3540
+ /**
3541
+ * Filter to only include products with total sales greater than or equal to this number
3542
+ */
3543
+ readonly minimumSales?: number
3544
+
3545
+ /**
3546
+ * Filter to only include products with total sales less than or equal to this number
3547
+ */
3548
+ readonly maximumSales?: number
3549
+
3550
+ /**
3551
+ * Filter to only include products where the average basket percentage is greater than or equal to this value
3552
+ */
3553
+ readonly minimumBasketPercent?: number
3554
+
3555
+ /**
3556
+ * Filter to only include products where the average basket percentage is less than or equal to this value
3557
+ */
3558
+ readonly maximumBasketPercent?: number
3559
+
3560
+ /**
3561
+ * Filter to only include products with total traffic greater than or equal to this number
3562
+ */
3563
+ readonly minimumTraffic?: number
3564
+
3565
+ /**
3566
+ * Filter to only include products with total traffic less than or equal to this number
3567
+ */
3568
+ readonly maximumTraffic?: number
3569
+ }
3570
+
3277
3571
  /**
3278
3572
  * Request parameters for listProductAnalytics operation in ProductAnalyticsApi.
3279
3573
  */
@@ -3289,7 +3583,12 @@ export interface ProductAnalyticsApiListProductAnalyticsRequest {
3289
3583
  readonly pageToken?: number
3290
3584
 
3291
3585
  /**
3292
- * Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
3586
+ * Max page size. This is the maximum page size that will be returned, but it might be smaller.
3587
+ */
3588
+ readonly pageSize?: number
3589
+
3590
+ /**
3591
+ * Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3293
3592
  */
3294
3593
  readonly search?: string
3295
3594
 
@@ -3299,15 +3598,71 @@ export interface ProductAnalyticsApiListProductAnalyticsRequest {
3299
3598
  readonly sortBy?: Array<string>
3300
3599
 
3301
3600
  /**
3302
- * Max page size. This is the maximum page size that will be returned, but it might be smaller.
3601
+ * Start date for the date range filter (ISO 8601 format)
3303
3602
  */
3304
- readonly pageSize?: number
3603
+ readonly dateRangeStartDate?: string
3604
+
3605
+ /**
3606
+ * End date for the date range filter (ISO 8601 format)
3607
+ */
3608
+ readonly dateRangeEndDate?: string
3609
+
3610
+ /**
3611
+ * Filter to only include products with total revenue greater than or equal to this amount
3612
+ */
3613
+ readonly minimumRevenue?: number
3614
+
3615
+ /**
3616
+ * Filter to only include products with total revenue less than or equal to this amount
3617
+ */
3618
+ readonly maximumRevenue?: number
3619
+
3620
+ /**
3621
+ * Filter to only include products with total sales greater than or equal to this number
3622
+ */
3623
+ readonly minimumSales?: number
3624
+
3625
+ /**
3626
+ * Filter to only include products with total sales less than or equal to this number
3627
+ */
3628
+ readonly maximumSales?: number
3629
+
3630
+ /**
3631
+ * Filter to only include products where the average basket percentage is greater than or equal to this value
3632
+ */
3633
+ readonly minimumBasketPercent?: number
3634
+
3635
+ /**
3636
+ * Filter to only include products where the average basket percentage is less than or equal to this value
3637
+ */
3638
+ readonly maximumBasketPercent?: number
3639
+
3640
+ /**
3641
+ * Filter to only include products with total traffic greater than or equal to this number
3642
+ */
3643
+ readonly minimumTraffic?: number
3644
+
3645
+ /**
3646
+ * Filter to only include products with total traffic less than or equal to this number
3647
+ */
3648
+ readonly maximumTraffic?: number
3305
3649
  }
3306
3650
 
3307
3651
  /**
3308
3652
  * ProductAnalyticsApi - object-oriented interface
3309
3653
  */
3310
3654
  export class ProductAnalyticsApi extends BaseAPI {
3655
+ /**
3656
+ * Exports all products with analytics data in a CSV file.
3657
+ * @summary Export product analytics
3658
+ * @param {ProductAnalyticsApiExportProductAnalyticsRequest} requestParameters Request parameters.
3659
+ * @param {*} [options] Override http request option.
3660
+ * @throws {RequiredError}
3661
+ */
3662
+ public exportProductAnalytics(requestParameters: ProductAnalyticsApiExportProductAnalyticsRequest, options?: RawAxiosRequestConfig) {
3663
+ return ProductAnalyticsApiFp(this.configuration).exportProductAnalytics(requestParameters.project, requestParameters.sortBy, requestParameters.search, requestParameters.dateRangeStartDate, requestParameters.dateRangeEndDate, requestParameters.minimumRevenue, requestParameters.maximumRevenue, requestParameters.minimumSales, requestParameters.maximumSales, requestParameters.minimumBasketPercent, requestParameters.maximumBasketPercent, requestParameters.minimumTraffic, requestParameters.maximumTraffic, options).then((request) => request(this.axios, this.basePath));
3664
+ }
3665
+
3311
3666
  /**
3312
3667
  * Lists all product analytics items.
3313
3668
  * @summary List product analytics
@@ -3316,7 +3671,150 @@ export class ProductAnalyticsApi extends BaseAPI {
3316
3671
  * @throws {RequiredError}
3317
3672
  */
3318
3673
  public listProductAnalytics(requestParameters: ProductAnalyticsApiListProductAnalyticsRequest, options?: RawAxiosRequestConfig) {
3319
- return ProductAnalyticsApiFp(this.configuration).listProductAnalytics(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.sortBy, requestParameters.pageSize, options).then((request) => request(this.axios, this.basePath));
3674
+ return ProductAnalyticsApiFp(this.configuration).listProductAnalytics(requestParameters.project, requestParameters.pageToken, requestParameters.pageSize, requestParameters.search, requestParameters.sortBy, requestParameters.dateRangeStartDate, requestParameters.dateRangeEndDate, requestParameters.minimumRevenue, requestParameters.maximumRevenue, requestParameters.minimumSales, requestParameters.maximumSales, requestParameters.minimumBasketPercent, requestParameters.maximumBasketPercent, requestParameters.minimumTraffic, requestParameters.maximumTraffic, options).then((request) => request(this.axios, this.basePath));
3675
+ }
3676
+ }
3677
+
3678
+
3679
+
3680
+ /**
3681
+ * ProductTypesApi - axios parameter creator
3682
+ */
3683
+ export const ProductTypesApiAxiosParamCreator = function (configuration?: Configuration) {
3684
+ return {
3685
+ /**
3686
+ * Lists the product types used by the given project\'s catalog.
3687
+ * @summary List product types
3688
+ * @param {string} project What project it is
3689
+ * @param {number} [pageToken] Page reference token
3690
+ * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
3691
+ * @param {*} [options] Override http request option.
3692
+ * @throws {RequiredError}
3693
+ */
3694
+ listProductTypes: async (project: string, pageToken?: number, pageSize?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
3695
+ // verify required parameter 'project' is not null or undefined
3696
+ assertParamExists('listProductTypes', 'project', project)
3697
+ const localVarPath = `/v1/catalog/product-types`;
3698
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
3699
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
3700
+ let baseOptions;
3701
+ if (configuration) {
3702
+ baseOptions = configuration.baseOptions;
3703
+ }
3704
+
3705
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
3706
+ const localVarHeaderParameter = {} as any;
3707
+ const localVarQueryParameter = {} as any;
3708
+
3709
+ // authentication session-oauth required
3710
+ // oauth required
3711
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
3712
+
3713
+ // authentication api-key required
3714
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
3715
+
3716
+ if (project !== undefined) {
3717
+ localVarQueryParameter['project'] = project;
3718
+ }
3719
+
3720
+ if (pageToken !== undefined) {
3721
+ localVarQueryParameter['pageToken'] = pageToken;
3722
+ }
3723
+
3724
+ if (pageSize !== undefined) {
3725
+ localVarQueryParameter['pageSize'] = pageSize;
3726
+ }
3727
+
3728
+ localVarHeaderParameter['Accept'] = 'application/json';
3729
+
3730
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
3731
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
3732
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
3733
+
3734
+ return {
3735
+ url: toPathString(localVarUrlObj),
3736
+ options: localVarRequestOptions,
3737
+ };
3738
+ },
3739
+ }
3740
+ };
3741
+
3742
+ /**
3743
+ * ProductTypesApi - functional programming interface
3744
+ */
3745
+ export const ProductTypesApiFp = function(configuration?: Configuration) {
3746
+ const localVarAxiosParamCreator = ProductTypesApiAxiosParamCreator(configuration)
3747
+ return {
3748
+ /**
3749
+ * Lists the product types used by the given project\'s catalog.
3750
+ * @summary List product types
3751
+ * @param {string} project What project it is
3752
+ * @param {number} [pageToken] Page reference token
3753
+ * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
3754
+ * @param {*} [options] Override http request option.
3755
+ * @throws {RequiredError}
3756
+ */
3757
+ async listProductTypes(project: string, pageToken?: number, pageSize?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ProductTypeListResponse>> {
3758
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listProductTypes(project, pageToken, pageSize, options);
3759
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3760
+ const localVarOperationServerBasePath = operationServerMap['ProductTypesApi.listProductTypes']?.[localVarOperationServerIndex]?.url;
3761
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
3762
+ },
3763
+ }
3764
+ };
3765
+
3766
+ /**
3767
+ * ProductTypesApi - factory interface
3768
+ */
3769
+ export const ProductTypesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
3770
+ const localVarFp = ProductTypesApiFp(configuration)
3771
+ return {
3772
+ /**
3773
+ * Lists the product types used by the given project\'s catalog.
3774
+ * @summary List product types
3775
+ * @param {ProductTypesApiListProductTypesRequest} requestParameters Request parameters.
3776
+ * @param {*} [options] Override http request option.
3777
+ * @throws {RequiredError}
3778
+ */
3779
+ listProductTypes(requestParameters: ProductTypesApiListProductTypesRequest, options?: RawAxiosRequestConfig): AxiosPromise<ProductTypeListResponse> {
3780
+ return localVarFp.listProductTypes(requestParameters.project, requestParameters.pageToken, requestParameters.pageSize, options).then((request) => request(axios, basePath));
3781
+ },
3782
+ };
3783
+ };
3784
+
3785
+ /**
3786
+ * Request parameters for listProductTypes operation in ProductTypesApi.
3787
+ */
3788
+ export interface ProductTypesApiListProductTypesRequest {
3789
+ /**
3790
+ * What project it is
3791
+ */
3792
+ readonly project: string
3793
+
3794
+ /**
3795
+ * Page reference token
3796
+ */
3797
+ readonly pageToken?: number
3798
+
3799
+ /**
3800
+ * Max page size. This is the maximum page size that will be returned, but it might be smaller.
3801
+ */
3802
+ readonly pageSize?: number
3803
+ }
3804
+
3805
+ /**
3806
+ * ProductTypesApi - object-oriented interface
3807
+ */
3808
+ export class ProductTypesApi extends BaseAPI {
3809
+ /**
3810
+ * Lists the product types used by the given project\'s catalog.
3811
+ * @summary List product types
3812
+ * @param {ProductTypesApiListProductTypesRequest} requestParameters Request parameters.
3813
+ * @param {*} [options] Override http request option.
3814
+ * @throws {RequiredError}
3815
+ */
3816
+ public listProductTypes(requestParameters: ProductTypesApiListProductTypesRequest, options?: RawAxiosRequestConfig) {
3817
+ return ProductTypesApiFp(this.configuration).listProductTypes(requestParameters.project, requestParameters.pageToken, requestParameters.pageSize, options).then((request) => request(this.axios, this.basePath));
3320
3818
  }
3321
3819
  }
3322
3820
 
@@ -3522,10 +4020,16 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
3522
4020
  * Export the project\'s products and variants as a CSV file.
3523
4021
  * @summary Export products
3524
4022
  * @param {string} project What project it is
4023
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4024
+ * @param {string} [start] Start of date range to filter
4025
+ * @param {string} [end] End of date range to filter
4026
+ * @param {ExportProductsDateFilterTypeEnum} [dateFilterType] Specifies the type of date range filter to apply. Determines which date field the &#x60;start&#x60; and &#x60;end&#x60; fields should query.
4027
+ * @param {number} [maxRetailPrice] Specify the maximum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price less than or equal to the specified value.
4028
+ * @param {number} [minRetailPrice] Specify the minimum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price greater than or equal to the specified value.
3525
4029
  * @param {*} [options] Override http request option.
3526
4030
  * @throws {RequiredError}
3527
4031
  */
3528
- exportProducts: async (project: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
4032
+ exportProducts: async (project: string, search?: string, start?: string, end?: string, dateFilterType?: ExportProductsDateFilterTypeEnum, maxRetailPrice?: number, minRetailPrice?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
3529
4033
  // verify required parameter 'project' is not null or undefined
3530
4034
  assertParamExists('exportProducts', 'project', project)
3531
4035
  const localVarPath = `/v1/catalog/products/export`;
@@ -3551,6 +4055,34 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
3551
4055
  localVarQueryParameter['project'] = project;
3552
4056
  }
3553
4057
 
4058
+ if (search !== undefined) {
4059
+ localVarQueryParameter['search'] = search;
4060
+ }
4061
+
4062
+ if (start !== undefined) {
4063
+ localVarQueryParameter['start'] = (start as any instanceof Date) ?
4064
+ (start as any).toISOString() :
4065
+ start;
4066
+ }
4067
+
4068
+ if (end !== undefined) {
4069
+ localVarQueryParameter['end'] = (end as any instanceof Date) ?
4070
+ (end as any).toISOString() :
4071
+ end;
4072
+ }
4073
+
4074
+ if (dateFilterType !== undefined) {
4075
+ localVarQueryParameter['dateFilterType'] = dateFilterType;
4076
+ }
4077
+
4078
+ if (maxRetailPrice !== undefined) {
4079
+ localVarQueryParameter['maxRetailPrice'] = maxRetailPrice;
4080
+ }
4081
+
4082
+ if (minRetailPrice !== undefined) {
4083
+ localVarQueryParameter['minRetailPrice'] = minRetailPrice;
4084
+ }
4085
+
3554
4086
  localVarHeaderParameter['Accept'] = 'text/csv; charset=utf-8,application/json';
3555
4087
 
3556
4088
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -3667,17 +4199,19 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
3667
4199
  * @summary List products
3668
4200
  * @param {string} project What project it is
3669
4201
  * @param {number} [pageToken] Page reference token
3670
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
4202
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
3671
4203
  * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
3672
4204
  * @param {string} [start] Start of date range to filter
3673
4205
  * @param {string} [end] End of date range to filter
3674
4206
  * @param {ListProductsDateFilterTypeEnum} [dateFilterType] Specifies the type of date range filter to apply. Determines which date field the &#x60;start&#x60; and &#x60;end&#x60; fields should query.
4207
+ * @param {number} [maxRetailPrice] Specify the maximum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price less than or equal to the specified value.
4208
+ * @param {number} [minRetailPrice] Specify the minimum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price greater than or equal to the specified value.
3675
4209
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
3676
4210
  * @param {string} [fields] Filter response fields to only include a subset of the resource.
3677
4211
  * @param {*} [options] Override http request option.
3678
4212
  * @throws {RequiredError}
3679
4213
  */
3680
- listProducts: async (project: string, pageToken?: number, search?: string, sortBy?: Array<string>, start?: string, end?: string, dateFilterType?: ListProductsDateFilterTypeEnum, pageSize?: number, fields?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
4214
+ listProducts: async (project: string, pageToken?: number, search?: string, sortBy?: Array<string>, start?: string, end?: string, dateFilterType?: ListProductsDateFilterTypeEnum, maxRetailPrice?: number, minRetailPrice?: number, pageSize?: number, fields?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
3681
4215
  // verify required parameter 'project' is not null or undefined
3682
4216
  assertParamExists('listProducts', 'project', project)
3683
4217
  const localVarPath = `/v1/catalog/products`;
@@ -3731,6 +4265,14 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
3731
4265
  localVarQueryParameter['dateFilterType'] = dateFilterType;
3732
4266
  }
3733
4267
 
4268
+ if (maxRetailPrice !== undefined) {
4269
+ localVarQueryParameter['maxRetailPrice'] = maxRetailPrice;
4270
+ }
4271
+
4272
+ if (minRetailPrice !== undefined) {
4273
+ localVarQueryParameter['minRetailPrice'] = minRetailPrice;
4274
+ }
4275
+
3734
4276
  if (pageSize !== undefined) {
3735
4277
  localVarQueryParameter['pageSize'] = pageSize;
3736
4278
  }
@@ -3966,11 +4508,17 @@ export const ProductsApiFp = function(configuration?: Configuration) {
3966
4508
  * Export the project\'s products and variants as a CSV file.
3967
4509
  * @summary Export products
3968
4510
  * @param {string} project What project it is
4511
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4512
+ * @param {string} [start] Start of date range to filter
4513
+ * @param {string} [end] End of date range to filter
4514
+ * @param {ExportProductsDateFilterTypeEnum} [dateFilterType] Specifies the type of date range filter to apply. Determines which date field the &#x60;start&#x60; and &#x60;end&#x60; fields should query.
4515
+ * @param {number} [maxRetailPrice] Specify the maximum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price less than or equal to the specified value.
4516
+ * @param {number} [minRetailPrice] Specify the minimum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price greater than or equal to the specified value.
3969
4517
  * @param {*} [options] Override http request option.
3970
4518
  * @throws {RequiredError}
3971
4519
  */
3972
- async exportProducts(project: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
3973
- const localVarAxiosArgs = await localVarAxiosParamCreator.exportProducts(project, options);
4520
+ async exportProducts(project: string, search?: string, start?: string, end?: string, dateFilterType?: ExportProductsDateFilterTypeEnum, maxRetailPrice?: number, minRetailPrice?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
4521
+ const localVarAxiosArgs = await localVarAxiosParamCreator.exportProducts(project, search, start, end, dateFilterType, maxRetailPrice, minRetailPrice, options);
3974
4522
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3975
4523
  const localVarOperationServerBasePath = operationServerMap['ProductsApi.exportProducts']?.[localVarOperationServerIndex]?.url;
3976
4524
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -4009,18 +4557,20 @@ export const ProductsApiFp = function(configuration?: Configuration) {
4009
4557
  * @summary List products
4010
4558
  * @param {string} project What project it is
4011
4559
  * @param {number} [pageToken] Page reference token
4012
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
4560
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4013
4561
  * @param {Array<string>} [sortBy] An array of fields to sort by, prefixed with a \&#39;-\&#39; for descending order or \&#39;+\&#39; for ascending. Default is ascending.
4014
4562
  * @param {string} [start] Start of date range to filter
4015
4563
  * @param {string} [end] End of date range to filter
4016
4564
  * @param {ListProductsDateFilterTypeEnum} [dateFilterType] Specifies the type of date range filter to apply. Determines which date field the &#x60;start&#x60; and &#x60;end&#x60; fields should query.
4565
+ * @param {number} [maxRetailPrice] Specify the maximum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price less than or equal to the specified value.
4566
+ * @param {number} [minRetailPrice] Specify the minimum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price greater than or equal to the specified value.
4017
4567
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
4018
4568
  * @param {string} [fields] Filter response fields to only include a subset of the resource.
4019
4569
  * @param {*} [options] Override http request option.
4020
4570
  * @throws {RequiredError}
4021
4571
  */
4022
- async listProducts(project: string, pageToken?: number, search?: string, sortBy?: Array<string>, start?: string, end?: string, dateFilterType?: ListProductsDateFilterTypeEnum, pageSize?: number, fields?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ProductsResponse>> {
4023
- const localVarAxiosArgs = await localVarAxiosParamCreator.listProducts(project, pageToken, search, sortBy, start, end, dateFilterType, pageSize, fields, options);
4572
+ async listProducts(project: string, pageToken?: number, search?: string, sortBy?: Array<string>, start?: string, end?: string, dateFilterType?: ListProductsDateFilterTypeEnum, maxRetailPrice?: number, minRetailPrice?: number, pageSize?: number, fields?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ProductsResponse>> {
4573
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listProducts(project, pageToken, search, sortBy, start, end, dateFilterType, maxRetailPrice, minRetailPrice, pageSize, fields, options);
4024
4574
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
4025
4575
  const localVarOperationServerBasePath = operationServerMap['ProductsApi.listProducts']?.[localVarOperationServerIndex]?.url;
4026
4576
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -4125,7 +4675,7 @@ export const ProductsApiFactory = function (configuration?: Configuration, baseP
4125
4675
  * @throws {RequiredError}
4126
4676
  */
4127
4677
  exportProducts(requestParameters: ProductsApiExportProductsRequest, options?: RawAxiosRequestConfig): AxiosPromise<File> {
4128
- return localVarFp.exportProducts(requestParameters.project, options).then((request) => request(axios, basePath));
4678
+ return localVarFp.exportProducts(requestParameters.project, requestParameters.search, requestParameters.start, requestParameters.end, requestParameters.dateFilterType, requestParameters.maxRetailPrice, requestParameters.minRetailPrice, options).then((request) => request(axios, basePath));
4129
4679
  },
4130
4680
  /**
4131
4681
  * Gets a product by a given ID.
@@ -4155,7 +4705,7 @@ export const ProductsApiFactory = function (configuration?: Configuration, baseP
4155
4705
  * @throws {RequiredError}
4156
4706
  */
4157
4707
  listProducts(requestParameters: ProductsApiListProductsRequest, options?: RawAxiosRequestConfig): AxiosPromise<ProductsResponse> {
4158
- return localVarFp.listProducts(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.sortBy, requestParameters.start, requestParameters.end, requestParameters.dateFilterType, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(axios, basePath));
4708
+ return localVarFp.listProducts(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.sortBy, requestParameters.start, requestParameters.end, requestParameters.dateFilterType, requestParameters.maxRetailPrice, requestParameters.minRetailPrice, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(axios, basePath));
4159
4709
  },
4160
4710
  /**
4161
4711
  * AI SEO optimises products by a set of given IDs.
@@ -4255,6 +4805,36 @@ export interface ProductsApiExportProductsRequest {
4255
4805
  * What project it is
4256
4806
  */
4257
4807
  readonly project: string
4808
+
4809
+ /**
4810
+ * Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4811
+ */
4812
+ readonly search?: string
4813
+
4814
+ /**
4815
+ * Start of date range to filter
4816
+ */
4817
+ readonly start?: string
4818
+
4819
+ /**
4820
+ * End of date range to filter
4821
+ */
4822
+ readonly end?: string
4823
+
4824
+ /**
4825
+ * Specifies the type of date range filter to apply. Determines which date field the &#x60;start&#x60; and &#x60;end&#x60; fields should query.
4826
+ */
4827
+ readonly dateFilterType?: ExportProductsDateFilterTypeEnum
4828
+
4829
+ /**
4830
+ * Specify the maximum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price less than or equal to the specified value.
4831
+ */
4832
+ readonly maxRetailPrice?: number
4833
+
4834
+ /**
4835
+ * Specify the minimum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price greater than or equal to the specified value.
4836
+ */
4837
+ readonly minRetailPrice?: number
4258
4838
  }
4259
4839
 
4260
4840
  /**
@@ -4307,7 +4887,7 @@ export interface ProductsApiListProductsRequest {
4307
4887
  readonly pageToken?: number
4308
4888
 
4309
4889
  /**
4310
- * Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
4890
+ * Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4311
4891
  */
4312
4892
  readonly search?: string
4313
4893
 
@@ -4331,6 +4911,16 @@ export interface ProductsApiListProductsRequest {
4331
4911
  */
4332
4912
  readonly dateFilterType?: ListProductsDateFilterTypeEnum
4333
4913
 
4914
+ /**
4915
+ * Specify the maximum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price less than or equal to the specified value.
4916
+ */
4917
+ readonly maxRetailPrice?: number
4918
+
4919
+ /**
4920
+ * Specify the minimum retail price to filter by. Products will be included so long as either at least one variant or the product itself (in the case of bundles) has a retail price greater than or equal to the specified value.
4921
+ */
4922
+ readonly minRetailPrice?: number
4923
+
4334
4924
  /**
4335
4925
  * Max page size. This is the maximum page size that will be returned, but it might be smaller.
4336
4926
  */
@@ -4445,7 +5035,7 @@ export class ProductsApi extends BaseAPI {
4445
5035
  * @throws {RequiredError}
4446
5036
  */
4447
5037
  public exportProducts(requestParameters: ProductsApiExportProductsRequest, options?: RawAxiosRequestConfig) {
4448
- return ProductsApiFp(this.configuration).exportProducts(requestParameters.project, options).then((request) => request(this.axios, this.basePath));
5038
+ return ProductsApiFp(this.configuration).exportProducts(requestParameters.project, requestParameters.search, requestParameters.start, requestParameters.end, requestParameters.dateFilterType, requestParameters.maxRetailPrice, requestParameters.minRetailPrice, options).then((request) => request(this.axios, this.basePath));
4449
5039
  }
4450
5040
 
4451
5041
  /**
@@ -4478,7 +5068,7 @@ export class ProductsApi extends BaseAPI {
4478
5068
  * @throws {RequiredError}
4479
5069
  */
4480
5070
  public listProducts(requestParameters: ProductsApiListProductsRequest, options?: RawAxiosRequestConfig) {
4481
- return ProductsApiFp(this.configuration).listProducts(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.sortBy, requestParameters.start, requestParameters.end, requestParameters.dateFilterType, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(this.axios, this.basePath));
5071
+ return ProductsApiFp(this.configuration).listProducts(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.sortBy, requestParameters.start, requestParameters.end, requestParameters.dateFilterType, requestParameters.maxRetailPrice, requestParameters.minRetailPrice, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(this.axios, this.basePath));
4482
5072
  }
4483
5073
 
4484
5074
  /**
@@ -4515,6 +5105,11 @@ export class ProductsApi extends BaseAPI {
4515
5105
  }
4516
5106
  }
4517
5107
 
5108
+ export const ExportProductsDateFilterTypeEnum = {
5109
+ CreatedAt: 'createdAt',
5110
+ UpdatedAt: 'updatedAt'
5111
+ } as const;
5112
+ export type ExportProductsDateFilterTypeEnum = typeof ExportProductsDateFilterTypeEnum[keyof typeof ExportProductsDateFilterTypeEnum];
4518
5113
  export const ListProductsDateFilterTypeEnum = {
4519
5114
  CreatedAt: 'createdAt',
4520
5115
  UpdatedAt: 'updatedAt'
@@ -4584,7 +5179,7 @@ export const VariantsApiAxiosParamCreator = function (configuration?: Configurat
4584
5179
  * Lists all variants that belong to enabled products attached to the given project.
4585
5180
  * @summary List variants
4586
5181
  * @param {string} project What project it is
4587
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
5182
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4588
5183
  * @param {number} [pageToken] Page reference token
4589
5184
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
4590
5185
  * @param {string} [fields] Filter response fields to only include a subset of the resource.
@@ -4672,7 +5267,7 @@ export const VariantsApiFp = function(configuration?: Configuration) {
4672
5267
  * Lists all variants that belong to enabled products attached to the given project.
4673
5268
  * @summary List variants
4674
5269
  * @param {string} project What project it is
4675
- * @param {string} [search] Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
5270
+ * @param {string} [search] Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4676
5271
  * @param {number} [pageToken] Page reference token
4677
5272
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
4678
5273
  * @param {string} [fields] Filter response fields to only include a subset of the resource.
@@ -4747,7 +5342,7 @@ export interface VariantsApiListVariantsRequest {
4747
5342
  readonly project: string
4748
5343
 
4749
5344
  /**
4750
- * Search query string to filter results. Supports field-specific filters like \&#39;enabled:true\&#39;, \&#39;uuid:&lt;id&gt;\&#39;, \&#39;name:\&quot;product name\&quot;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, and \&#39;type:product,template,bundle\&#39;. Multiple filters can be combined with spaces and commas.
5345
+ * Search query string to filter results. Supports field-specific filters like: \&#39;enabled:true\&#39;, \&#39;gfn_product_ids:&lt;id&gt;\&#39;, \&#39;tag:\&quot;tag name\&quot;\&#39;, \&#39;internal_tag:\&quot;internal tag name\&quot;\&#39;, \&#39;includeArchived:false\&#39;, \&#39;hasSearchPhrase:false\&#39;, \&#39;inDataFeeds:true\&#39;, \&#39;aiOptimised:true\&#39;, \&#39;productType:&lt;id&gt;\&#39;, \&#39;genderGroup:\&quot;male,female,unisex\&quot;\&#39;, \&#39;hasBarcode:true\&#39;, \&#39;onSale:true\&#39;, \&#39;type:product,template,bundle\&#39;, \&#39;collection:&lt;id&gt;\&#39;. Multiple filters can be combined with spaces and commas.
4751
5346
  */
4752
5347
  readonly search?: string
4753
5348