@teemill/product-catalog 1.15.0 → 1.17.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 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.15.0
7
+ * The version of the OpenAPI document: 1.17.0
8
8
  * Contact: hello@teemill.com
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -23,6 +23,19 @@ import type { RequestArgs } from './base';
23
23
  // @ts-ignore
24
24
  import { BASE_PATH, COLLECTION_FORMATS, BaseAPI, RequiredError, operationServerMap } from './base';
25
25
 
26
+ /**
27
+ *
28
+ * @export
29
+ * @interface AdditionalFile
30
+ */
31
+ export interface AdditionalFile {
32
+ /**
33
+ * Publicly available file URL.
34
+ * @type {string}
35
+ * @memberof AdditionalFile
36
+ */
37
+ 'src'?: string;
38
+ }
26
39
  /**
27
40
  *
28
41
  * @export
@@ -53,7 +66,7 @@ export interface Application {
53
66
  * @type {string}
54
67
  * @memberof Application
55
68
  */
56
- 'technology': string;
69
+ 'technology': ApplicationTechnologyEnum;
57
70
  /**
58
71
  * Placement of the application. Available placements depend on the chosen product and technology.
59
72
  * @type {string}
@@ -74,6 +87,19 @@ export interface Application {
74
87
  'mockup'?: ApplicationMockup;
75
88
  }
76
89
 
90
+ export const ApplicationTechnologyEnum = {
91
+ Dtg: 'dtg',
92
+ Embroidery: 'embroidery',
93
+ Dtf: 'dtf',
94
+ Pretreat: 'pretreat',
95
+ MugSublimation: 'mug_sublimation',
96
+ ManualPrint: 'manual_print',
97
+ AdditionalApplication: 'additional_application',
98
+ NotebookSublimation: 'notebook_sublimation',
99
+ DuplexPrint: 'duplex_print'
100
+ } as const;
101
+
102
+ export type ApplicationTechnologyEnum = typeof ApplicationTechnologyEnum[keyof typeof ApplicationTechnologyEnum];
77
103
  export const ApplicationPlacementEnum = {
78
104
  Front: 'front',
79
105
  Back: 'back',
@@ -103,6 +129,124 @@ export interface ApplicationMockup {
103
129
  */
104
130
  'preview'?: string;
105
131
  }
132
+ /**
133
+ *
134
+ * @export
135
+ * @interface ApplicationSet
136
+ */
137
+ export interface ApplicationSet {
138
+ /**
139
+ * Unique object identifier
140
+ * @type {string}
141
+ * @memberof ApplicationSet
142
+ */
143
+ 'id'?: string;
144
+ /**
145
+ * Name of the application set
146
+ * @type {string}
147
+ * @memberof ApplicationSet
148
+ */
149
+ 'name': string;
150
+ /**
151
+ * Description of the application set
152
+ * @type {string}
153
+ * @memberof ApplicationSet
154
+ */
155
+ 'description'?: string;
156
+ /**
157
+ * The width, in pixels of the images in the set
158
+ * @type {number}
159
+ * @memberof ApplicationSet
160
+ */
161
+ 'width': number;
162
+ /**
163
+ * The height, in pixels of the images in the set
164
+ * @type {number}
165
+ * @memberof ApplicationSet
166
+ */
167
+ 'height': number;
168
+ /**
169
+ * The DPI used when printing the images in the set
170
+ * @type {number}
171
+ * @memberof ApplicationSet
172
+ */
173
+ 'dpi': number;
174
+ /**
175
+ * List of application set records
176
+ * @type {Array<ApplicationSetRecord>}
177
+ * @memberof ApplicationSet
178
+ */
179
+ 'records'?: Array<ApplicationSetRecord>;
180
+ }
181
+ /**
182
+ *
183
+ * @export
184
+ * @interface ApplicationSet1
185
+ */
186
+ export interface ApplicationSet1 {
187
+ /**
188
+ * Unique object identifier
189
+ * @type {string}
190
+ * @memberof ApplicationSet1
191
+ */
192
+ 'id'?: string;
193
+ }
194
+ /**
195
+ *
196
+ * @export
197
+ * @interface ApplicationSetRecord
198
+ */
199
+ export interface ApplicationSetRecord {
200
+ /**
201
+ * Unique object identifier
202
+ * @type {string}
203
+ * @memberof ApplicationSetRecord
204
+ */
205
+ 'id'?: string;
206
+ /**
207
+ *
208
+ * @type {ApplicationSet1}
209
+ * @memberof ApplicationSetRecord
210
+ */
211
+ 'set'?: ApplicationSet1;
212
+ /**
213
+ * Name of the option that this record represents
214
+ * @type {string}
215
+ * @memberof ApplicationSetRecord
216
+ */
217
+ 'optionName'?: string;
218
+ /**
219
+ * The value of the option that this record represents
220
+ * @type {string}
221
+ * @memberof ApplicationSetRecord
222
+ */
223
+ 'optionValue'?: string;
224
+ /**
225
+ * List of applications for this record
226
+ * @type {Array<Application>}
227
+ * @memberof ApplicationSetRecord
228
+ */
229
+ 'applications'?: Array<Application>;
230
+ }
231
+ /**
232
+ *
233
+ * @export
234
+ * @interface ApplicationSetsResponse
235
+ */
236
+ export interface ApplicationSetsResponse {
237
+ /**
238
+ *
239
+ * @type {Array<ApplicationSet>}
240
+ * @memberof ApplicationSetsResponse
241
+ */
242
+ 'applicationSets'?: Array<ApplicationSet>;
243
+ /**
244
+ *
245
+ * @type {number}
246
+ * @memberof ApplicationSetsResponse
247
+ */
248
+ 'nextPageToken'?: number;
249
+ }
106
250
  /**
107
251
  *
108
252
  * @export
@@ -162,6 +306,49 @@ export const AttributeThumbnailTypeEnum = {
162
306
 
163
307
  export type AttributeThumbnailTypeEnum = typeof AttributeThumbnailTypeEnum[keyof typeof AttributeThumbnailTypeEnum];
164
308
 
309
+ /**
310
+ *
311
+ * @export
312
+ * @interface CreateApplicationSetRequest
313
+ */
314
+ export interface CreateApplicationSetRequest {
315
+ /**
316
+ * Name of the application set
317
+ * @type {string}
318
+ * @memberof CreateApplicationSetRequest
319
+ */
320
+ 'name'?: string;
321
+ /**
322
+ * Description of the application set
323
+ * @type {string}
324
+ * @memberof CreateApplicationSetRequest
325
+ */
326
+ 'description'?: string;
327
+ /**
328
+ * The width, in pixels of the images in the set
329
+ * @type {number}
330
+ * @memberof CreateApplicationSetRequest
331
+ */
332
+ 'width'?: number;
333
+ /**
334
+ * The height, in pixels of the images in the set
335
+ * @type {number}
336
+ * @memberof CreateApplicationSetRequest
337
+ */
338
+ 'height'?: number;
339
+ /**
340
+ * The DPI used when printing the images in the set
341
+ * @type {number}
342
+ * @memberof CreateApplicationSetRequest
343
+ */
344
+ 'dpi'?: number;
345
+ /**
346
+ * List of application set records
347
+ * @type {Array<ApplicationSetRecord>}
348
+ * @memberof CreateApplicationSetRequest
349
+ */
350
+ 'records'?: Array<ApplicationSetRecord>;
351
+ }
165
352
  /**
166
353
  *
167
354
  * @export
@@ -210,6 +397,12 @@ export interface CreateProductRequest {
210
397
  * @memberof CreateProductRequest
211
398
  */
212
399
  'tags'?: Array<string>;
400
+ /**
401
+ * Internal tags used for internal searching and filtering.
402
+ * @type {Array<string>}
403
+ * @memberof CreateProductRequest
404
+ */
405
+ 'internalTags'?: Array<string>;
213
406
  /**
214
407
  * Variants
215
408
  * @type {Array<CreateProductVariant>}
@@ -224,10 +417,23 @@ export interface CreateProductRequest {
224
417
  'images'?: Array<CreateProductRequestImagesInner>;
225
418
  /**
226
419
  * Additional files to attach to the product. For example, original design files e.g. PSD, AI, etc.
227
- * @type {Array<CreateProductRequestImagesInner>}
420
+ * @type {Array<CreateProductRequestAdditionalFilesInner>}
228
421
  * @memberof CreateProductRequest
229
422
  */
230
- 'additionalFiles'?: Array<CreateProductRequestImagesInner>;
423
+ 'additionalFiles'?: Array<CreateProductRequestAdditionalFilesInner>;
424
+ }
425
+ /**
426
+ *
427
+ * @export
428
+ * @interface CreateProductRequestAdditionalFilesInner
429
+ */
430
+ export interface CreateProductRequestAdditionalFilesInner {
431
+ /**
432
+ * Publicly available file URL.
433
+ * @type {string}
434
+ * @memberof CreateProductRequestAdditionalFilesInner
435
+ */
436
+ 'src'?: string;
231
437
  }
232
438
  /**
233
439
  *
@@ -287,10 +493,10 @@ export interface CreateProductVariant {
287
493
  'applications'?: Array<Application>;
288
494
  /**
289
495
  * Only use if you want to override the main product image. If not provided, mockups will be generated using the design applications and the warehouse product provided. Accepts PNG and JPEG files.
290
- * @type {Array<CreateProductRequestImagesInner>}
496
+ * @type {Array<CreateProductVariantImagesInner>}
291
497
  * @memberof CreateProductVariant
292
498
  */
293
- 'images'?: Array<CreateProductRequestImagesInner>;
499
+ 'images'?: Array<CreateProductVariantImagesInner>;
294
500
  }
295
501
  /**
296
502
  *
@@ -303,7 +509,7 @@ export interface CreateProductVariantAttributesInner {
303
509
  * @type {string}
304
510
  * @memberof CreateProductVariantAttributesInner
305
511
  */
306
- 'name': string;
512
+ 'name': CreateProductVariantAttributesInnerNameEnum;
307
513
  /**
308
514
  * Attribute value
309
515
  * @type {string}
@@ -311,6 +517,27 @@ export interface CreateProductVariantAttributesInner {
311
517
  */
312
518
  'value': string;
313
519
  }
520
+
521
+ export const CreateProductVariantAttributesInnerNameEnum = {
522
+ Size: 'Size',
523
+ Colour: 'Colour'
524
+ } as const;
525
+
526
+ export type CreateProductVariantAttributesInnerNameEnum = typeof CreateProductVariantAttributesInnerNameEnum[keyof typeof CreateProductVariantAttributesInnerNameEnum];
527
+
528
+ /**
529
+ *
530
+ * @export
531
+ * @interface CreateProductVariantImagesInner
532
+ */
533
+ export interface CreateProductVariantImagesInner {
534
+ /**
535
+ * Publicly available file URL.
536
+ * @type {string}
537
+ * @memberof CreateProductVariantImagesInner
538
+ */
539
+ 'src'?: string;
540
+ }
314
541
  /**
315
542
  * Variant retail price including tax.
316
543
  * @export
@@ -328,8 +555,15 @@ export interface CreateProductVariantRetailPrice {
328
555
  * @type {string}
329
556
  * @memberof CreateProductVariantRetailPrice
330
557
  */
331
- 'currencyCode': string;
558
+ 'currencyCode': CreateProductVariantRetailPriceCurrencyCodeEnum;
332
559
  }
560
+
561
+ export const CreateProductVariantRetailPriceCurrencyCodeEnum = {
562
+ Gbp: 'GBP'
563
+ } as const;
564
+
565
+ export type CreateProductVariantRetailPriceCurrencyCodeEnum = typeof CreateProductVariantRetailPriceCurrencyCodeEnum[keyof typeof CreateProductVariantRetailPriceCurrencyCodeEnum];
566
+
333
567
  /**
334
568
  * Image description
335
569
  * @export
@@ -382,28 +616,28 @@ export interface Image {
382
616
  /**
383
617
  *
384
618
  * @export
385
- * @interface ImportProducts200Response
619
+ * @interface ImageFile
386
620
  */
387
- export interface ImportProducts200Response {
621
+ export interface ImageFile {
388
622
  /**
389
- * Id of the product import
623
+ * Publicly available file URL.
390
624
  * @type {string}
391
- * @memberof ImportProducts200Response
625
+ * @memberof ImageFile
392
626
  */
393
- 'importId'?: string;
627
+ 'src'?: string;
394
628
  }
395
629
  /**
396
630
  *
397
631
  * @export
398
- * @interface ModelFile
632
+ * @interface ImportProducts200Response
399
633
  */
400
- export interface ModelFile {
634
+ export interface ImportProducts200Response {
401
635
  /**
402
- * Publicly available file URL.
636
+ * Id of the product import
403
637
  * @type {string}
404
- * @memberof ModelFile
638
+ * @memberof ImportProducts200Response
405
639
  */
406
- 'src'?: string;
640
+ 'importId'?: string;
407
641
  }
408
642
  /**
409
643
  * Standard price definition that defines the amount, tax rate and currency.
@@ -422,8 +656,15 @@ export interface Price {
422
656
  * @type {string}
423
657
  * @memberof Price
424
658
  */
425
- 'currencyCode'?: string;
659
+ 'currencyCode'?: PriceCurrencyCodeEnum;
426
660
  }
661
+
662
+ export const PriceCurrencyCodeEnum = {
663
+ Gbp: 'GBP'
664
+ } as const;
665
+
666
+ export type PriceCurrencyCodeEnum = typeof PriceCurrencyCodeEnum[keyof typeof PriceCurrencyCodeEnum];
667
+
427
668
  /**
428
669
  *
429
670
  * @export
@@ -478,6 +719,12 @@ export interface Product {
478
719
  * @memberof Product
479
720
  */
480
721
  'tags'?: Array<string>;
722
+ /**
723
+ *
724
+ * @type {Array<string>}
725
+ * @memberof Product
726
+ */
727
+ 'internalTags'?: Array<string>;
481
728
  /**
482
729
  *
483
730
  * @type {string}
@@ -627,6 +874,12 @@ export interface UpdateProductRequest {
627
874
  * @memberof UpdateProductRequest
628
875
  */
629
876
  'tags'?: Array<string>;
877
+ /**
878
+ * Additional product tags used for internal searching and filtering.
879
+ * @type {Array<string>}
880
+ * @memberof UpdateProductRequest
881
+ */
882
+ 'internalTags'?: Array<string>;
630
883
  /**
631
884
  * Variants
632
885
  * @type {Array<CreateProductVariant>}
@@ -635,16 +888,16 @@ export interface UpdateProductRequest {
635
888
  'variants'?: Array<CreateProductVariant>;
636
889
  /**
637
890
  * Images to attach to the product. For example, photos of models using/wearing the product.
638
- * @type {Array<any>}
891
+ * @type {Array<ImageFile>}
639
892
  * @memberof UpdateProductRequest
640
893
  */
641
- 'images'?: Array<any>;
894
+ 'images'?: Array<ImageFile>;
642
895
  /**
643
896
  * Additional files to attach to the product. For example, original design files e.g. PSD, AI, etc.
644
- * @type {Array<any>}
897
+ * @type {Array<AdditionalFile>}
645
898
  * @memberof UpdateProductRequest
646
899
  */
647
- 'additionalFiles'?: Array<any>;
900
+ 'additionalFiles'?: Array<AdditionalFile>;
648
901
  }
649
902
  /**
650
903
  *
@@ -789,23 +1042,23 @@ export interface VariantsResponse {
789
1042
  }
790
1043
 
791
1044
  /**
792
- * ProductsApi - axios parameter creator
1045
+ * ApplicationSetsApi - axios parameter creator
793
1046
  * @export
794
1047
  */
795
- export const ProductsApiAxiosParamCreator = function (configuration?: Configuration) {
1048
+ export const ApplicationSetsApiAxiosParamCreator = function (configuration?: Configuration) {
796
1049
  return {
797
1050
  /**
798
- * Creates a new catalog product based on a given warehouse product with the variants and design applications provided. To select a warehouse product to base this product on, use the GFN Catalog API to list available options.
799
- * @summary Create product
1051
+ * Creates a new application set.
1052
+ * @summary Create application set
800
1053
  * @param {string} project What project it is
801
- * @param {CreateProductRequest} [createProductRequest]
1054
+ * @param {CreateApplicationSetRequest} [createApplicationSetRequest] Create a new application set.
802
1055
  * @param {*} [options] Override http request option.
803
1056
  * @throws {RequiredError}
804
1057
  */
805
- createProduct: async (project: string, createProductRequest?: CreateProductRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1058
+ createApplicationSet: async (project: string, createApplicationSetRequest?: CreateApplicationSetRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
806
1059
  // verify required parameter 'project' is not null or undefined
807
- assertParamExists('createProduct', 'project', project)
808
- const localVarPath = `/v1/catalog/products`;
1060
+ assertParamExists('createApplicationSet', 'project', project)
1061
+ const localVarPath = `/v1/catalog/applications/sets`;
809
1062
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
810
1063
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
811
1064
  let baseOptions;
@@ -835,7 +1088,7 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
835
1088
  setSearchParams(localVarUrlObj, localVarQueryParameter);
836
1089
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
837
1090
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
838
- localVarRequestOptions.data = serializeDataIfNeeded(createProductRequest, localVarRequestOptions, configuration)
1091
+ localVarRequestOptions.data = serializeDataIfNeeded(createApplicationSetRequest, localVarRequestOptions, configuration)
839
1092
 
840
1093
  return {
841
1094
  url: toPathString(localVarUrlObj),
@@ -843,20 +1096,20 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
843
1096
  };
844
1097
  },
845
1098
  /**
846
- * Deletes a catalog product
847
- * @summary Delete catalog product
1099
+ * Deletes an existing application set.
1100
+ * @summary Delete an application set
848
1101
  * @param {string} project What project it is
849
- * @param {string} productId Product\&#39;s unique identifier
1102
+ * @param {string} applicationSetId Application set\&#39;s unique identifier
850
1103
  * @param {*} [options] Override http request option.
851
1104
  * @throws {RequiredError}
852
1105
  */
853
- deleteProduct: async (project: string, productId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1106
+ deleteApplicationSet: async (project: string, applicationSetId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
854
1107
  // verify required parameter 'project' is not null or undefined
855
- assertParamExists('deleteProduct', 'project', project)
856
- // verify required parameter 'productId' is not null or undefined
857
- assertParamExists('deleteProduct', 'productId', productId)
858
- const localVarPath = `/v1/catalog/products/{productId}`
859
- .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
1108
+ assertParamExists('deleteApplicationSet', 'project', project)
1109
+ // verify required parameter 'applicationSetId' is not null or undefined
1110
+ assertParamExists('deleteApplicationSet', 'applicationSetId', applicationSetId)
1111
+ const localVarPath = `/v1/catalog/applications/sets/{applicationSetId}`
1112
+ .replace(`{${"applicationSetId"}}`, encodeURIComponent(String(applicationSetId)));
860
1113
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
861
1114
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
862
1115
  let baseOptions;
@@ -891,21 +1144,20 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
891
1144
  };
892
1145
  },
893
1146
  /**
894
- * Gets a product by a given ID.
895
- * @summary Get product
1147
+ * Get an application by the given id.
1148
+ * @summary Get an application set
896
1149
  * @param {string} project What project it is
897
- * @param {string} productId Product\&#39;s unique identifier
898
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
1150
+ * @param {string} applicationSetId Application set\&#39;s unique identifier
899
1151
  * @param {*} [options] Override http request option.
900
1152
  * @throws {RequiredError}
901
1153
  */
902
- getProduct: async (project: string, productId: string, fields?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1154
+ getApplicationSet: async (project: string, applicationSetId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
903
1155
  // verify required parameter 'project' is not null or undefined
904
- assertParamExists('getProduct', 'project', project)
905
- // verify required parameter 'productId' is not null or undefined
906
- assertParamExists('getProduct', 'productId', productId)
907
- const localVarPath = `/v1/catalog/products/{productId}`
908
- .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
1156
+ assertParamExists('getApplicationSet', 'project', project)
1157
+ // verify required parameter 'applicationSetId' is not null or undefined
1158
+ assertParamExists('getApplicationSet', 'applicationSetId', applicationSetId)
1159
+ const localVarPath = `/v1/catalog/applications/sets/{applicationSetId}`
1160
+ .replace(`{${"applicationSetId"}}`, encodeURIComponent(String(applicationSetId)));
909
1161
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
910
1162
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
911
1163
  let baseOptions;
@@ -928,10 +1180,6 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
928
1180
  localVarQueryParameter['project'] = project;
929
1181
  }
930
1182
 
931
- if (fields !== undefined) {
932
- localVarQueryParameter['fields'] = fields;
933
- }
934
-
935
1183
 
936
1184
 
937
1185
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -944,20 +1192,19 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
944
1192
  };
945
1193
  },
946
1194
  /**
947
- * Lists all enabled store listing products attached to the given project.
948
- * @summary List products
1195
+ * Lists all application sets that belong to the given project.
1196
+ * @summary List application sets
949
1197
  * @param {string} project What project it is
950
1198
  * @param {number} [pageToken] Page reference token
951
1199
  * @param {string} [search] Search term to filter based on product tags.
952
1200
  * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
953
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
954
1201
  * @param {*} [options] Override http request option.
955
1202
  * @throws {RequiredError}
956
1203
  */
957
- getProducts: async (project: string, pageToken?: number, search?: string, pageSize?: number, fields?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1204
+ listApplicationSets: async (project: string, pageToken?: number, search?: string, pageSize?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
958
1205
  // verify required parameter 'project' is not null or undefined
959
- assertParamExists('getProducts', 'project', project)
960
- const localVarPath = `/v1/catalog/products`;
1206
+ assertParamExists('listApplicationSets', 'project', project)
1207
+ const localVarPath = `/v1/catalog/applications/sets`;
961
1208
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
962
1209
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
963
1210
  let baseOptions;
@@ -992,10 +1239,6 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
992
1239
  localVarQueryParameter['pageSize'] = pageSize;
993
1240
  }
994
1241
 
995
- if (fields !== undefined) {
996
- localVarQueryParameter['fields'] = fields;
997
- }
998
-
999
1242
 
1000
1243
 
1001
1244
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -1008,17 +1251,21 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
1008
1251
  };
1009
1252
  },
1010
1253
  /**
1011
- * Initiates a product import from a CSV file. The result will be available as a notification within the dashboard.
1012
- * @summary Import products
1254
+ * Updates an existing application set.
1255
+ * @summary Update application set
1013
1256
  * @param {string} project What project it is
1014
- * @param {string} [body] A data URL of a CSV file containing data for one or more products.
1257
+ * @param {string} applicationSetId Application set\&#39;s unique identifier
1258
+ * @param {CreateApplicationSetRequest} [createApplicationSetRequest] Create a new application set.
1015
1259
  * @param {*} [options] Override http request option.
1016
1260
  * @throws {RequiredError}
1017
1261
  */
1018
- importProducts: async (project: string, body?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1262
+ updateApplicationSet: async (project: string, applicationSetId: string, createApplicationSetRequest?: CreateApplicationSetRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1019
1263
  // verify required parameter 'project' is not null or undefined
1020
- assertParamExists('importProducts', 'project', project)
1021
- const localVarPath = `/v1/catalog/products/import`;
1264
+ assertParamExists('updateApplicationSet', 'project', project)
1265
+ // verify required parameter 'applicationSetId' is not null or undefined
1266
+ assertParamExists('updateApplicationSet', 'applicationSetId', applicationSetId)
1267
+ const localVarPath = `/v1/catalog/applications/sets/{applicationSetId}`
1268
+ .replace(`{${"applicationSetId"}}`, encodeURIComponent(String(applicationSetId)));
1022
1269
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
1023
1270
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1024
1271
  let baseOptions;
@@ -1026,7 +1273,7 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
1026
1273
  baseOptions = configuration.baseOptions;
1027
1274
  }
1028
1275
 
1029
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
1276
+ const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options};
1030
1277
  const localVarHeaderParameter = {} as any;
1031
1278
  const localVarQueryParameter = {} as any;
1032
1279
 
@@ -1043,46 +1290,655 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat
1043
1290
 
1044
1291
 
1045
1292
 
1046
- localVarHeaderParameter['Content-Type'] = 'text/csv';
1293
+ localVarHeaderParameter['Content-Type'] = 'application/json';
1047
1294
 
1048
1295
  setSearchParams(localVarUrlObj, localVarQueryParameter);
1049
1296
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1050
1297
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
1051
- localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration)
1298
+ localVarRequestOptions.data = serializeDataIfNeeded(createApplicationSetRequest, localVarRequestOptions, configuration)
1052
1299
 
1053
1300
  return {
1054
1301
  url: toPathString(localVarUrlObj),
1055
1302
  options: localVarRequestOptions,
1056
1303
  };
1057
1304
  },
1305
+ }
1306
+ };
1307
+
1308
+ /**
1309
+ * ApplicationSetsApi - functional programming interface
1310
+ * @export
1311
+ */
1312
+ export const ApplicationSetsApiFp = function(configuration?: Configuration) {
1313
+ const localVarAxiosParamCreator = ApplicationSetsApiAxiosParamCreator(configuration)
1314
+ return {
1058
1315
  /**
1059
- * Updates a product by a given ID.
1060
- * @summary Update product
1316
+ * Creates a new application set.
1317
+ * @summary Create application set
1061
1318
  * @param {string} project What project it is
1062
- * @param {string} productId Product\&#39;s unique identifier
1063
- * @param {UpdateProductRequest} [updateProductRequest]
1319
+ * @param {CreateApplicationSetRequest} [createApplicationSetRequest] Create a new application set.
1064
1320
  * @param {*} [options] Override http request option.
1065
1321
  * @throws {RequiredError}
1066
1322
  */
1067
- updateProduct: async (project: string, productId: string, updateProductRequest?: UpdateProductRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1068
- // verify required parameter 'project' is not null or undefined
1069
- assertParamExists('updateProduct', 'project', project)
1070
- // verify required parameter 'productId' is not null or undefined
1071
- assertParamExists('updateProduct', 'productId', productId)
1072
- const localVarPath = `/v1/catalog/products/{productId}`
1073
- .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
1074
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
1075
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1076
- let baseOptions;
1077
- if (configuration) {
1078
- baseOptions = configuration.baseOptions;
1079
- }
1080
-
1081
- const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options};
1082
- const localVarHeaderParameter = {} as any;
1083
- const localVarQueryParameter = {} as any;
1084
-
1085
- // authentication session-oauth required
1323
+ async createApplicationSet(project: string, createApplicationSetRequest?: CreateApplicationSetRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ApplicationSet>> {
1324
+ const localVarAxiosArgs = await localVarAxiosParamCreator.createApplicationSet(project, createApplicationSetRequest, options);
1325
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1326
+ const localVarOperationServerBasePath = operationServerMap['ApplicationSetsApi.createApplicationSet']?.[localVarOperationServerIndex]?.url;
1327
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1328
+ },
1329
+ /**
1330
+ * Deletes an existing application set.
1331
+ * @summary Delete an application set
1332
+ * @param {string} project What project it is
1333
+ * @param {string} applicationSetId Application set\&#39;s unique identifier
1334
+ * @param {*} [options] Override http request option.
1335
+ * @throws {RequiredError}
1336
+ */
1337
+ async deleteApplicationSet(project: string, applicationSetId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
1338
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteApplicationSet(project, applicationSetId, options);
1339
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1340
+ const localVarOperationServerBasePath = operationServerMap['ApplicationSetsApi.deleteApplicationSet']?.[localVarOperationServerIndex]?.url;
1341
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1342
+ },
1343
+ /**
1344
+ * Get an application by the given id.
1345
+ * @summary Get an application set
1346
+ * @param {string} project What project it is
1347
+ * @param {string} applicationSetId Application set\&#39;s unique identifier
1348
+ * @param {*} [options] Override http request option.
1349
+ * @throws {RequiredError}
1350
+ */
1351
+ async getApplicationSet(project: string, applicationSetId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ApplicationSet>> {
1352
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getApplicationSet(project, applicationSetId, options);
1353
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1354
+ const localVarOperationServerBasePath = operationServerMap['ApplicationSetsApi.getApplicationSet']?.[localVarOperationServerIndex]?.url;
1355
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1356
+ },
1357
+ /**
1358
+ * Lists all application sets that belong to the given project.
1359
+ * @summary List application sets
1360
+ * @param {string} project What project it is
1361
+ * @param {number} [pageToken] Page reference token
1362
+ * @param {string} [search] Search term to filter based on product tags.
1363
+ * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
1364
+ * @param {*} [options] Override http request option.
1365
+ * @throws {RequiredError}
1366
+ */
1367
+ async listApplicationSets(project: string, pageToken?: number, search?: string, pageSize?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ApplicationSetsResponse>> {
1368
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listApplicationSets(project, pageToken, search, pageSize, options);
1369
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1370
+ const localVarOperationServerBasePath = operationServerMap['ApplicationSetsApi.listApplicationSets']?.[localVarOperationServerIndex]?.url;
1371
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1372
+ },
1373
+ /**
1374
+ * Updates an existing application set.
1375
+ * @summary Update application set
1376
+ * @param {string} project What project it is
1377
+ * @param {string} applicationSetId Application set\&#39;s unique identifier
1378
+ * @param {CreateApplicationSetRequest} [createApplicationSetRequest] Create a new application set.
1379
+ * @param {*} [options] Override http request option.
1380
+ * @throws {RequiredError}
1381
+ */
1382
+ async updateApplicationSet(project: string, applicationSetId: string, createApplicationSetRequest?: CreateApplicationSetRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ApplicationSet>> {
1383
+ const localVarAxiosArgs = await localVarAxiosParamCreator.updateApplicationSet(project, applicationSetId, createApplicationSetRequest, options);
1384
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
1385
+ const localVarOperationServerBasePath = operationServerMap['ApplicationSetsApi.updateApplicationSet']?.[localVarOperationServerIndex]?.url;
1386
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1387
+ },
1388
+ }
1389
+ };
1390
+
1391
+ /**
1392
+ * ApplicationSetsApi - factory interface
1393
+ * @export
1394
+ */
1395
+ export const ApplicationSetsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
1396
+ const localVarFp = ApplicationSetsApiFp(configuration)
1397
+ return {
1398
+ /**
1399
+ * Creates a new application set.
1400
+ * @summary Create application set
1401
+ * @param {ApplicationSetsApiCreateApplicationSetRequest} requestParameters Request parameters.
1402
+ * @param {*} [options] Override http request option.
1403
+ * @throws {RequiredError}
1404
+ */
1405
+ createApplicationSet(requestParameters: ApplicationSetsApiCreateApplicationSetRequest, options?: RawAxiosRequestConfig): AxiosPromise<ApplicationSet> {
1406
+ return localVarFp.createApplicationSet(requestParameters.project, requestParameters.createApplicationSetRequest, options).then((request) => request(axios, basePath));
1407
+ },
1408
+ /**
1409
+ * Deletes an existing application set.
1410
+ * @summary Delete an application set
1411
+ * @param {ApplicationSetsApiDeleteApplicationSetRequest} requestParameters Request parameters.
1412
+ * @param {*} [options] Override http request option.
1413
+ * @throws {RequiredError}
1414
+ */
1415
+ deleteApplicationSet(requestParameters: ApplicationSetsApiDeleteApplicationSetRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> {
1416
+ return localVarFp.deleteApplicationSet(requestParameters.project, requestParameters.applicationSetId, options).then((request) => request(axios, basePath));
1417
+ },
1418
+ /**
1419
+ * Get an application by the given id.
1420
+ * @summary Get an application set
1421
+ * @param {ApplicationSetsApiGetApplicationSetRequest} requestParameters Request parameters.
1422
+ * @param {*} [options] Override http request option.
1423
+ * @throws {RequiredError}
1424
+ */
1425
+ getApplicationSet(requestParameters: ApplicationSetsApiGetApplicationSetRequest, options?: RawAxiosRequestConfig): AxiosPromise<ApplicationSet> {
1426
+ return localVarFp.getApplicationSet(requestParameters.project, requestParameters.applicationSetId, options).then((request) => request(axios, basePath));
1427
+ },
1428
+ /**
1429
+ * Lists all application sets that belong to the given project.
1430
+ * @summary List application sets
1431
+ * @param {ApplicationSetsApiListApplicationSetsRequest} requestParameters Request parameters.
1432
+ * @param {*} [options] Override http request option.
1433
+ * @throws {RequiredError}
1434
+ */
1435
+ listApplicationSets(requestParameters: ApplicationSetsApiListApplicationSetsRequest, options?: RawAxiosRequestConfig): AxiosPromise<ApplicationSetsResponse> {
1436
+ return localVarFp.listApplicationSets(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.pageSize, options).then((request) => request(axios, basePath));
1437
+ },
1438
+ /**
1439
+ * Updates an existing application set.
1440
+ * @summary Update application set
1441
+ * @param {ApplicationSetsApiUpdateApplicationSetRequest} requestParameters Request parameters.
1442
+ * @param {*} [options] Override http request option.
1443
+ * @throws {RequiredError}
1444
+ */
1445
+ updateApplicationSet(requestParameters: ApplicationSetsApiUpdateApplicationSetRequest, options?: RawAxiosRequestConfig): AxiosPromise<ApplicationSet> {
1446
+ return localVarFp.updateApplicationSet(requestParameters.project, requestParameters.applicationSetId, requestParameters.createApplicationSetRequest, options).then((request) => request(axios, basePath));
1447
+ },
1448
+ };
1449
+ };
1450
+
1451
+ /**
1452
+ * Request parameters for createApplicationSet operation in ApplicationSetsApi.
1453
+ * @export
1454
+ * @interface ApplicationSetsApiCreateApplicationSetRequest
1455
+ */
1456
+ export interface ApplicationSetsApiCreateApplicationSetRequest {
1457
+ /**
1458
+ * What project it is
1459
+ * @type {string}
1460
+ * @memberof ApplicationSetsApiCreateApplicationSet
1461
+ */
1462
+ readonly project: string
1463
+
1464
+ /**
1465
+ * Create a new application set.
1466
+ * @type {CreateApplicationSetRequest}
1467
+ * @memberof ApplicationSetsApiCreateApplicationSet
1468
+ */
1469
+ readonly createApplicationSetRequest?: CreateApplicationSetRequest
1470
+ }
1471
+
1472
+ /**
1473
+ * Request parameters for deleteApplicationSet operation in ApplicationSetsApi.
1474
+ * @export
1475
+ * @interface ApplicationSetsApiDeleteApplicationSetRequest
1476
+ */
1477
+ export interface ApplicationSetsApiDeleteApplicationSetRequest {
1478
+ /**
1479
+ * What project it is
1480
+ * @type {string}
1481
+ * @memberof ApplicationSetsApiDeleteApplicationSet
1482
+ */
1483
+ readonly project: string
1484
+
1485
+ /**
1486
+ * Application set\&#39;s unique identifier
1487
+ * @type {string}
1488
+ * @memberof ApplicationSetsApiDeleteApplicationSet
1489
+ */
1490
+ readonly applicationSetId: string
1491
+ }
1492
+
1493
+ /**
1494
+ * Request parameters for getApplicationSet operation in ApplicationSetsApi.
1495
+ * @export
1496
+ * @interface ApplicationSetsApiGetApplicationSetRequest
1497
+ */
1498
+ export interface ApplicationSetsApiGetApplicationSetRequest {
1499
+ /**
1500
+ * What project it is
1501
+ * @type {string}
1502
+ * @memberof ApplicationSetsApiGetApplicationSet
1503
+ */
1504
+ readonly project: string
1505
+
1506
+ /**
1507
+ * Application set\&#39;s unique identifier
1508
+ * @type {string}
1509
+ * @memberof ApplicationSetsApiGetApplicationSet
1510
+ */
1511
+ readonly applicationSetId: string
1512
+ }
1513
+
1514
+ /**
1515
+ * Request parameters for listApplicationSets operation in ApplicationSetsApi.
1516
+ * @export
1517
+ * @interface ApplicationSetsApiListApplicationSetsRequest
1518
+ */
1519
+ export interface ApplicationSetsApiListApplicationSetsRequest {
1520
+ /**
1521
+ * What project it is
1522
+ * @type {string}
1523
+ * @memberof ApplicationSetsApiListApplicationSets
1524
+ */
1525
+ readonly project: string
1526
+
1527
+ /**
1528
+ * Page reference token
1529
+ * @type {number}
1530
+ * @memberof ApplicationSetsApiListApplicationSets
1531
+ */
1532
+ readonly pageToken?: number
1533
+
1534
+ /**
1535
+ * Search term to filter based on product tags.
1536
+ * @type {string}
1537
+ * @memberof ApplicationSetsApiListApplicationSets
1538
+ */
1539
+ readonly search?: string
1540
+
1541
+ /**
1542
+ * Max page size. This is the maximum page size that will be returned, but it might be smaller.
1543
+ * @type {number}
1544
+ * @memberof ApplicationSetsApiListApplicationSets
1545
+ */
1546
+ readonly pageSize?: number
1547
+ }
1548
+
1549
+ /**
1550
+ * Request parameters for updateApplicationSet operation in ApplicationSetsApi.
1551
+ * @export
1552
+ * @interface ApplicationSetsApiUpdateApplicationSetRequest
1553
+ */
1554
+ export interface ApplicationSetsApiUpdateApplicationSetRequest {
1555
+ /**
1556
+ * What project it is
1557
+ * @type {string}
1558
+ * @memberof ApplicationSetsApiUpdateApplicationSet
1559
+ */
1560
+ readonly project: string
1561
+
1562
+ /**
1563
+ * Application set\&#39;s unique identifier
1564
+ * @type {string}
1565
+ * @memberof ApplicationSetsApiUpdateApplicationSet
1566
+ */
1567
+ readonly applicationSetId: string
1568
+
1569
+ /**
1570
+ * Create a new application set.
1571
+ * @type {CreateApplicationSetRequest}
1572
+ * @memberof ApplicationSetsApiUpdateApplicationSet
1573
+ */
1574
+ readonly createApplicationSetRequest?: CreateApplicationSetRequest
1575
+ }
1576
+
1577
+ /**
1578
+ * ApplicationSetsApi - object-oriented interface
1579
+ * @export
1580
+ * @class ApplicationSetsApi
1581
+ * @extends {BaseAPI}
1582
+ */
1583
+ export class ApplicationSetsApi extends BaseAPI {
1584
+ /**
1585
+ * Creates a new application set.
1586
+ * @summary Create application set
1587
+ * @param {ApplicationSetsApiCreateApplicationSetRequest} requestParameters Request parameters.
1588
+ * @param {*} [options] Override http request option.
1589
+ * @throws {RequiredError}
1590
+ * @memberof ApplicationSetsApi
1591
+ */
1592
+ public createApplicationSet(requestParameters: ApplicationSetsApiCreateApplicationSetRequest, options?: RawAxiosRequestConfig) {
1593
+ return ApplicationSetsApiFp(this.configuration).createApplicationSet(requestParameters.project, requestParameters.createApplicationSetRequest, options).then((request) => request(this.axios, this.basePath));
1594
+ }
1595
+
1596
+ /**
1597
+ * Deletes an existing application set.
1598
+ * @summary Delete an application set
1599
+ * @param {ApplicationSetsApiDeleteApplicationSetRequest} requestParameters Request parameters.
1600
+ * @param {*} [options] Override http request option.
1601
+ * @throws {RequiredError}
1602
+ * @memberof ApplicationSetsApi
1603
+ */
1604
+ public deleteApplicationSet(requestParameters: ApplicationSetsApiDeleteApplicationSetRequest, options?: RawAxiosRequestConfig) {
1605
+ return ApplicationSetsApiFp(this.configuration).deleteApplicationSet(requestParameters.project, requestParameters.applicationSetId, options).then((request) => request(this.axios, this.basePath));
1606
+ }
1607
+
1608
+ /**
1609
+ * Get an application by the given id.
1610
+ * @summary Get an application set
1611
+ * @param {ApplicationSetsApiGetApplicationSetRequest} requestParameters Request parameters.
1612
+ * @param {*} [options] Override http request option.
1613
+ * @throws {RequiredError}
1614
+ * @memberof ApplicationSetsApi
1615
+ */
1616
+ public getApplicationSet(requestParameters: ApplicationSetsApiGetApplicationSetRequest, options?: RawAxiosRequestConfig) {
1617
+ return ApplicationSetsApiFp(this.configuration).getApplicationSet(requestParameters.project, requestParameters.applicationSetId, options).then((request) => request(this.axios, this.basePath));
1618
+ }
1619
+
1620
+ /**
1621
+ * Lists all application sets that belong to the given project.
1622
+ * @summary List application sets
1623
+ * @param {ApplicationSetsApiListApplicationSetsRequest} requestParameters Request parameters.
1624
+ * @param {*} [options] Override http request option.
1625
+ * @throws {RequiredError}
1626
+ * @memberof ApplicationSetsApi
1627
+ */
1628
+ public listApplicationSets(requestParameters: ApplicationSetsApiListApplicationSetsRequest, options?: RawAxiosRequestConfig) {
1629
+ return ApplicationSetsApiFp(this.configuration).listApplicationSets(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.pageSize, options).then((request) => request(this.axios, this.basePath));
1630
+ }
1631
+
1632
+ /**
1633
+ * Updates an existing application set.
1634
+ * @summary Update application set
1635
+ * @param {ApplicationSetsApiUpdateApplicationSetRequest} requestParameters Request parameters.
1636
+ * @param {*} [options] Override http request option.
1637
+ * @throws {RequiredError}
1638
+ * @memberof ApplicationSetsApi
1639
+ */
1640
+ public updateApplicationSet(requestParameters: ApplicationSetsApiUpdateApplicationSetRequest, options?: RawAxiosRequestConfig) {
1641
+ return ApplicationSetsApiFp(this.configuration).updateApplicationSet(requestParameters.project, requestParameters.applicationSetId, requestParameters.createApplicationSetRequest, options).then((request) => request(this.axios, this.basePath));
1642
+ }
1643
+ }
1644
+
1645
+
1646
+
1647
+ /**
1648
+ * ProductsApi - axios parameter creator
1649
+ * @export
1650
+ */
1651
+ export const ProductsApiAxiosParamCreator = function (configuration?: Configuration) {
1652
+ return {
1653
+ /**
1654
+ * Creates a new catalog product based on a given warehouse product with the variants and design applications provided. To select a warehouse product to base this product on, use the GFN Catalog API to list available options.
1655
+ * @summary Create product
1656
+ * @param {string} project What project it is
1657
+ * @param {CreateProductRequest} [createProductRequest]
1658
+ * @param {*} [options] Override http request option.
1659
+ * @throws {RequiredError}
1660
+ */
1661
+ createProduct: async (project: string, createProductRequest?: CreateProductRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1662
+ // verify required parameter 'project' is not null or undefined
1663
+ assertParamExists('createProduct', 'project', project)
1664
+ const localVarPath = `/v1/catalog/products`;
1665
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1666
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1667
+ let baseOptions;
1668
+ if (configuration) {
1669
+ baseOptions = configuration.baseOptions;
1670
+ }
1671
+
1672
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
1673
+ const localVarHeaderParameter = {} as any;
1674
+ const localVarQueryParameter = {} as any;
1675
+
1676
+ // authentication session-oauth required
1677
+ // oauth required
1678
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
1679
+
1680
+ // authentication api-key required
1681
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
1682
+
1683
+ if (project !== undefined) {
1684
+ localVarQueryParameter['project'] = project;
1685
+ }
1686
+
1687
+
1688
+
1689
+ localVarHeaderParameter['Content-Type'] = 'application/json';
1690
+
1691
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
1692
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1693
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
1694
+ localVarRequestOptions.data = serializeDataIfNeeded(createProductRequest, localVarRequestOptions, configuration)
1695
+
1696
+ return {
1697
+ url: toPathString(localVarUrlObj),
1698
+ options: localVarRequestOptions,
1699
+ };
1700
+ },
1701
+ /**
1702
+ * Deletes a catalog product
1703
+ * @summary Delete catalog product
1704
+ * @param {string} project What project it is
1705
+ * @param {string} productId Product\&#39;s unique identifier
1706
+ * @param {*} [options] Override http request option.
1707
+ * @throws {RequiredError}
1708
+ */
1709
+ deleteProduct: async (project: string, productId: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1710
+ // verify required parameter 'project' is not null or undefined
1711
+ assertParamExists('deleteProduct', 'project', project)
1712
+ // verify required parameter 'productId' is not null or undefined
1713
+ assertParamExists('deleteProduct', 'productId', productId)
1714
+ const localVarPath = `/v1/catalog/products/{productId}`
1715
+ .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
1716
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1717
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1718
+ let baseOptions;
1719
+ if (configuration) {
1720
+ baseOptions = configuration.baseOptions;
1721
+ }
1722
+
1723
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
1724
+ const localVarHeaderParameter = {} as any;
1725
+ const localVarQueryParameter = {} as any;
1726
+
1727
+ // authentication session-oauth required
1728
+ // oauth required
1729
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
1730
+
1731
+ // authentication api-key required
1732
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
1733
+
1734
+ if (project !== undefined) {
1735
+ localVarQueryParameter['project'] = project;
1736
+ }
1737
+
1738
+
1739
+
1740
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
1741
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1742
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
1743
+
1744
+ return {
1745
+ url: toPathString(localVarUrlObj),
1746
+ options: localVarRequestOptions,
1747
+ };
1748
+ },
1749
+ /**
1750
+ * Gets a product by a given ID.
1751
+ * @summary Get product
1752
+ * @param {string} project What project it is
1753
+ * @param {string} productId Product\&#39;s unique identifier
1754
+ * @param {string} [fields] Filter response fields to only include a subset of the resource.
1755
+ * @param {*} [options] Override http request option.
1756
+ * @throws {RequiredError}
1757
+ */
1758
+ getProduct: async (project: string, productId: string, fields?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1759
+ // verify required parameter 'project' is not null or undefined
1760
+ assertParamExists('getProduct', 'project', project)
1761
+ // verify required parameter 'productId' is not null or undefined
1762
+ assertParamExists('getProduct', 'productId', productId)
1763
+ const localVarPath = `/v1/catalog/products/{productId}`
1764
+ .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
1765
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1766
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1767
+ let baseOptions;
1768
+ if (configuration) {
1769
+ baseOptions = configuration.baseOptions;
1770
+ }
1771
+
1772
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
1773
+ const localVarHeaderParameter = {} as any;
1774
+ const localVarQueryParameter = {} as any;
1775
+
1776
+ // authentication session-oauth required
1777
+ // oauth required
1778
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
1779
+
1780
+ // authentication api-key required
1781
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
1782
+
1783
+ if (project !== undefined) {
1784
+ localVarQueryParameter['project'] = project;
1785
+ }
1786
+
1787
+ if (fields !== undefined) {
1788
+ localVarQueryParameter['fields'] = fields;
1789
+ }
1790
+
1791
+
1792
+
1793
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
1794
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1795
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
1796
+
1797
+ return {
1798
+ url: toPathString(localVarUrlObj),
1799
+ options: localVarRequestOptions,
1800
+ };
1801
+ },
1802
+ /**
1803
+ * Lists all enabled store listing products attached to the given project.
1804
+ * @summary List products
1805
+ * @param {string} project What project it is
1806
+ * @param {number} [pageToken] Page reference token
1807
+ * @param {string} [search] Search term to filter based on product tags.
1808
+ * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
1809
+ * @param {string} [fields] Filter response fields to only include a subset of the resource.
1810
+ * @param {*} [options] Override http request option.
1811
+ * @throws {RequiredError}
1812
+ */
1813
+ getProducts: async (project: string, pageToken?: number, search?: string, pageSize?: number, fields?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1814
+ // verify required parameter 'project' is not null or undefined
1815
+ assertParamExists('getProducts', 'project', project)
1816
+ const localVarPath = `/v1/catalog/products`;
1817
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1818
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1819
+ let baseOptions;
1820
+ if (configuration) {
1821
+ baseOptions = configuration.baseOptions;
1822
+ }
1823
+
1824
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
1825
+ const localVarHeaderParameter = {} as any;
1826
+ const localVarQueryParameter = {} as any;
1827
+
1828
+ // authentication session-oauth required
1829
+ // oauth required
1830
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
1831
+
1832
+ // authentication api-key required
1833
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
1834
+
1835
+ if (project !== undefined) {
1836
+ localVarQueryParameter['project'] = project;
1837
+ }
1838
+
1839
+ if (pageToken !== undefined) {
1840
+ localVarQueryParameter['pageToken'] = pageToken;
1841
+ }
1842
+
1843
+ if (search !== undefined) {
1844
+ localVarQueryParameter['search'] = search;
1845
+ }
1846
+
1847
+ if (pageSize !== undefined) {
1848
+ localVarQueryParameter['pageSize'] = pageSize;
1849
+ }
1850
+
1851
+ if (fields !== undefined) {
1852
+ localVarQueryParameter['fields'] = fields;
1853
+ }
1854
+
1855
+
1856
+
1857
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
1858
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1859
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
1860
+
1861
+ return {
1862
+ url: toPathString(localVarUrlObj),
1863
+ options: localVarRequestOptions,
1864
+ };
1865
+ },
1866
+ /**
1867
+ * Initiates a product import from a CSV file. The result will be available as a notification within the dashboard.
1868
+ * @summary Import products
1869
+ * @param {string} project What project it is
1870
+ * @param {string} [body] A data URL of a CSV file containing data for one or more products.
1871
+ * @param {*} [options] Override http request option.
1872
+ * @throws {RequiredError}
1873
+ */
1874
+ importProducts: async (project: string, body?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1875
+ // verify required parameter 'project' is not null or undefined
1876
+ assertParamExists('importProducts', 'project', project)
1877
+ const localVarPath = `/v1/catalog/products/import`;
1878
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1879
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1880
+ let baseOptions;
1881
+ if (configuration) {
1882
+ baseOptions = configuration.baseOptions;
1883
+ }
1884
+
1885
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
1886
+ const localVarHeaderParameter = {} as any;
1887
+ const localVarQueryParameter = {} as any;
1888
+
1889
+ // authentication session-oauth required
1890
+ // oauth required
1891
+ await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
1892
+
1893
+ // authentication api-key required
1894
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
1895
+
1896
+ if (project !== undefined) {
1897
+ localVarQueryParameter['project'] = project;
1898
+ }
1899
+
1900
+
1901
+
1902
+ localVarHeaderParameter['Content-Type'] = 'text/csv';
1903
+
1904
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
1905
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1906
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
1907
+ localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration)
1908
+
1909
+ return {
1910
+ url: toPathString(localVarUrlObj),
1911
+ options: localVarRequestOptions,
1912
+ };
1913
+ },
1914
+ /**
1915
+ * Updates a product by a given ID.
1916
+ * @summary Update product
1917
+ * @param {string} project What project it is
1918
+ * @param {string} productId Product\&#39;s unique identifier
1919
+ * @param {UpdateProductRequest} [updateProductRequest]
1920
+ * @param {*} [options] Override http request option.
1921
+ * @throws {RequiredError}
1922
+ */
1923
+ updateProduct: async (project: string, productId: string, updateProductRequest?: UpdateProductRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
1924
+ // verify required parameter 'project' is not null or undefined
1925
+ assertParamExists('updateProduct', 'project', project)
1926
+ // verify required parameter 'productId' is not null or undefined
1927
+ assertParamExists('updateProduct', 'productId', productId)
1928
+ const localVarPath = `/v1/catalog/products/{productId}`
1929
+ .replace(`{${"productId"}}`, encodeURIComponent(String(productId)));
1930
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1931
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1932
+ let baseOptions;
1933
+ if (configuration) {
1934
+ baseOptions = configuration.baseOptions;
1935
+ }
1936
+
1937
+ const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options};
1938
+ const localVarHeaderParameter = {} as any;
1939
+ const localVarQueryParameter = {} as any;
1940
+
1941
+ // authentication session-oauth required
1086
1942
  // oauth required
1087
1943
  await setOAuthToObject(localVarHeaderParameter, "session-oauth", [], configuration)
1088
1944
 
@@ -1219,77 +2075,227 @@ export const ProductsApiFactory = function (configuration?: Configuration, baseP
1219
2075
  /**
1220
2076
  * Creates a new catalog product based on a given warehouse product with the variants and design applications provided. To select a warehouse product to base this product on, use the GFN Catalog API to list available options.
1221
2077
  * @summary Create product
1222
- * @param {string} project What project it is
1223
- * @param {CreateProductRequest} [createProductRequest]
2078
+ * @param {ProductsApiCreateProductRequest} requestParameters Request parameters.
1224
2079
  * @param {*} [options] Override http request option.
1225
2080
  * @throws {RequiredError}
1226
2081
  */
1227
- createProduct(project: string, createProductRequest?: CreateProductRequest, options?: any): AxiosPromise<Product> {
1228
- return localVarFp.createProduct(project, createProductRequest, options).then((request) => request(axios, basePath));
2082
+ createProduct(requestParameters: ProductsApiCreateProductRequest, options?: RawAxiosRequestConfig): AxiosPromise<Product> {
2083
+ return localVarFp.createProduct(requestParameters.project, requestParameters.createProductRequest, options).then((request) => request(axios, basePath));
1229
2084
  },
1230
2085
  /**
1231
2086
  * Deletes a catalog product
1232
2087
  * @summary Delete catalog product
1233
- * @param {string} project What project it is
1234
- * @param {string} productId Product\&#39;s unique identifier
2088
+ * @param {ProductsApiDeleteProductRequest} requestParameters Request parameters.
1235
2089
  * @param {*} [options] Override http request option.
1236
2090
  * @throws {RequiredError}
1237
2091
  */
1238
- deleteProduct(project: string, productId: string, options?: any): AxiosPromise<void> {
1239
- return localVarFp.deleteProduct(project, productId, options).then((request) => request(axios, basePath));
2092
+ deleteProduct(requestParameters: ProductsApiDeleteProductRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> {
2093
+ return localVarFp.deleteProduct(requestParameters.project, requestParameters.productId, options).then((request) => request(axios, basePath));
1240
2094
  },
1241
2095
  /**
1242
2096
  * Gets a product by a given ID.
1243
2097
  * @summary Get product
1244
- * @param {string} project What project it is
1245
- * @param {string} productId Product\&#39;s unique identifier
1246
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2098
+ * @param {ProductsApiGetProductRequest} requestParameters Request parameters.
1247
2099
  * @param {*} [options] Override http request option.
1248
2100
  * @throws {RequiredError}
1249
2101
  */
1250
- getProduct(project: string, productId: string, fields?: string, options?: any): AxiosPromise<Product> {
1251
- return localVarFp.getProduct(project, productId, fields, options).then((request) => request(axios, basePath));
2102
+ getProduct(requestParameters: ProductsApiGetProductRequest, options?: RawAxiosRequestConfig): AxiosPromise<Product> {
2103
+ return localVarFp.getProduct(requestParameters.project, requestParameters.productId, requestParameters.fields, options).then((request) => request(axios, basePath));
1252
2104
  },
1253
2105
  /**
1254
2106
  * Lists all enabled store listing products attached to the given project.
1255
2107
  * @summary List products
1256
- * @param {string} project What project it is
1257
- * @param {number} [pageToken] Page reference token
1258
- * @param {string} [search] Search term to filter based on product tags.
1259
- * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
1260
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2108
+ * @param {ProductsApiGetProductsRequest} requestParameters Request parameters.
1261
2109
  * @param {*} [options] Override http request option.
1262
2110
  * @throws {RequiredError}
1263
2111
  */
1264
- getProducts(project: string, pageToken?: number, search?: string, pageSize?: number, fields?: string, options?: any): AxiosPromise<ProductsResponse> {
1265
- return localVarFp.getProducts(project, pageToken, search, pageSize, fields, options).then((request) => request(axios, basePath));
2112
+ getProducts(requestParameters: ProductsApiGetProductsRequest, options?: RawAxiosRequestConfig): AxiosPromise<ProductsResponse> {
2113
+ return localVarFp.getProducts(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(axios, basePath));
1266
2114
  },
1267
2115
  /**
1268
2116
  * Initiates a product import from a CSV file. The result will be available as a notification within the dashboard.
1269
2117
  * @summary Import products
1270
- * @param {string} project What project it is
1271
- * @param {string} [body] A data URL of a CSV file containing data for one or more products.
2118
+ * @param {ProductsApiImportProductsRequest} requestParameters Request parameters.
1272
2119
  * @param {*} [options] Override http request option.
1273
2120
  * @throws {RequiredError}
1274
2121
  */
1275
- importProducts(project: string, body?: string, options?: any): AxiosPromise<ImportProducts200Response> {
1276
- return localVarFp.importProducts(project, body, options).then((request) => request(axios, basePath));
2122
+ importProducts(requestParameters: ProductsApiImportProductsRequest, options?: RawAxiosRequestConfig): AxiosPromise<ImportProducts200Response> {
2123
+ return localVarFp.importProducts(requestParameters.project, requestParameters.body, options).then((request) => request(axios, basePath));
1277
2124
  },
1278
2125
  /**
1279
2126
  * Updates a product by a given ID.
1280
2127
  * @summary Update product
1281
- * @param {string} project What project it is
1282
- * @param {string} productId Product\&#39;s unique identifier
1283
- * @param {UpdateProductRequest} [updateProductRequest]
2128
+ * @param {ProductsApiUpdateProductRequest} requestParameters Request parameters.
1284
2129
  * @param {*} [options] Override http request option.
1285
2130
  * @throws {RequiredError}
1286
2131
  */
1287
- updateProduct(project: string, productId: string, updateProductRequest?: UpdateProductRequest, options?: any): AxiosPromise<Product> {
1288
- return localVarFp.updateProduct(project, productId, updateProductRequest, options).then((request) => request(axios, basePath));
2132
+ updateProduct(requestParameters: ProductsApiUpdateProductRequest, options?: RawAxiosRequestConfig): AxiosPromise<Product> {
2133
+ return localVarFp.updateProduct(requestParameters.project, requestParameters.productId, requestParameters.updateProductRequest, options).then((request) => request(axios, basePath));
1289
2134
  },
1290
2135
  };
1291
2136
  };
1292
2137
 
2138
+ /**
2139
+ * Request parameters for createProduct operation in ProductsApi.
2140
+ * @export
2141
+ * @interface ProductsApiCreateProductRequest
2142
+ */
2143
+ export interface ProductsApiCreateProductRequest {
2144
+ /**
2145
+ * What project it is
2146
+ * @type {string}
2147
+ * @memberof ProductsApiCreateProduct
2148
+ */
2149
+ readonly project: string
2150
+
2151
+ /**
2152
+ *
2153
+ * @type {CreateProductRequest}
2154
+ * @memberof ProductsApiCreateProduct
2155
+ */
2156
+ readonly createProductRequest?: CreateProductRequest
2157
+ }
2158
+
2159
+ /**
2160
+ * Request parameters for deleteProduct operation in ProductsApi.
2161
+ * @export
2162
+ * @interface ProductsApiDeleteProductRequest
2163
+ */
2164
+ export interface ProductsApiDeleteProductRequest {
2165
+ /**
2166
+ * What project it is
2167
+ * @type {string}
2168
+ * @memberof ProductsApiDeleteProduct
2169
+ */
2170
+ readonly project: string
2171
+
2172
+ /**
2173
+ * Product\&#39;s unique identifier
2174
+ * @type {string}
2175
+ * @memberof ProductsApiDeleteProduct
2176
+ */
2177
+ readonly productId: string
2178
+ }
2179
+
2180
+ /**
2181
+ * Request parameters for getProduct operation in ProductsApi.
2182
+ * @export
2183
+ * @interface ProductsApiGetProductRequest
2184
+ */
2185
+ export interface ProductsApiGetProductRequest {
2186
+ /**
2187
+ * What project it is
2188
+ * @type {string}
2189
+ * @memberof ProductsApiGetProduct
2190
+ */
2191
+ readonly project: string
2192
+
2193
+ /**
2194
+ * Product\&#39;s unique identifier
2195
+ * @type {string}
2196
+ * @memberof ProductsApiGetProduct
2197
+ */
2198
+ readonly productId: string
2199
+
2200
+ /**
2201
+ * Filter response fields to only include a subset of the resource.
2202
+ * @type {string}
2203
+ * @memberof ProductsApiGetProduct
2204
+ */
2205
+ readonly fields?: string
2206
+ }
2207
+
2208
+ /**
2209
+ * Request parameters for getProducts operation in ProductsApi.
2210
+ * @export
2211
+ * @interface ProductsApiGetProductsRequest
2212
+ */
2213
+ export interface ProductsApiGetProductsRequest {
2214
+ /**
2215
+ * What project it is
2216
+ * @type {string}
2217
+ * @memberof ProductsApiGetProducts
2218
+ */
2219
+ readonly project: string
2220
+
2221
+ /**
2222
+ * Page reference token
2223
+ * @type {number}
2224
+ * @memberof ProductsApiGetProducts
2225
+ */
2226
+ readonly pageToken?: number
2227
+
2228
+ /**
2229
+ * Search term to filter based on product tags.
2230
+ * @type {string}
2231
+ * @memberof ProductsApiGetProducts
2232
+ */
2233
+ readonly search?: string
2234
+
2235
+ /**
2236
+ * Max page size. This is the maximum page size that will be returned, but it might be smaller.
2237
+ * @type {number}
2238
+ * @memberof ProductsApiGetProducts
2239
+ */
2240
+ readonly pageSize?: number
2241
+
2242
+ /**
2243
+ * Filter response fields to only include a subset of the resource.
2244
+ * @type {string}
2245
+ * @memberof ProductsApiGetProducts
2246
+ */
2247
+ readonly fields?: string
2248
+ }
2249
+
2250
+ /**
2251
+ * Request parameters for importProducts operation in ProductsApi.
2252
+ * @export
2253
+ * @interface ProductsApiImportProductsRequest
2254
+ */
2255
+ export interface ProductsApiImportProductsRequest {
2256
+ /**
2257
+ * What project it is
2258
+ * @type {string}
2259
+ * @memberof ProductsApiImportProducts
2260
+ */
2261
+ readonly project: string
2262
+
2263
+ /**
2264
+ * A data URL of a CSV file containing data for one or more products.
2265
+ * @type {string}
2266
+ * @memberof ProductsApiImportProducts
2267
+ */
2268
+ readonly body?: string
2269
+ }
2270
+
2271
+ /**
2272
+ * Request parameters for updateProduct operation in ProductsApi.
2273
+ * @export
2274
+ * @interface ProductsApiUpdateProductRequest
2275
+ */
2276
+ export interface ProductsApiUpdateProductRequest {
2277
+ /**
2278
+ * What project it is
2279
+ * @type {string}
2280
+ * @memberof ProductsApiUpdateProduct
2281
+ */
2282
+ readonly project: string
2283
+
2284
+ /**
2285
+ * Product\&#39;s unique identifier
2286
+ * @type {string}
2287
+ * @memberof ProductsApiUpdateProduct
2288
+ */
2289
+ readonly productId: string
2290
+
2291
+ /**
2292
+ *
2293
+ * @type {UpdateProductRequest}
2294
+ * @memberof ProductsApiUpdateProduct
2295
+ */
2296
+ readonly updateProductRequest?: UpdateProductRequest
2297
+ }
2298
+
1293
2299
  /**
1294
2300
  * ProductsApi - object-oriented interface
1295
2301
  * @export
@@ -1300,84 +2306,73 @@ export class ProductsApi extends BaseAPI {
1300
2306
  /**
1301
2307
  * Creates a new catalog product based on a given warehouse product with the variants and design applications provided. To select a warehouse product to base this product on, use the GFN Catalog API to list available options.
1302
2308
  * @summary Create product
1303
- * @param {string} project What project it is
1304
- * @param {CreateProductRequest} [createProductRequest]
2309
+ * @param {ProductsApiCreateProductRequest} requestParameters Request parameters.
1305
2310
  * @param {*} [options] Override http request option.
1306
2311
  * @throws {RequiredError}
1307
2312
  * @memberof ProductsApi
1308
2313
  */
1309
- public createProduct(project: string, createProductRequest?: CreateProductRequest, options?: RawAxiosRequestConfig) {
1310
- return ProductsApiFp(this.configuration).createProduct(project, createProductRequest, options).then((request) => request(this.axios, this.basePath));
2314
+ public createProduct(requestParameters: ProductsApiCreateProductRequest, options?: RawAxiosRequestConfig) {
2315
+ return ProductsApiFp(this.configuration).createProduct(requestParameters.project, requestParameters.createProductRequest, options).then((request) => request(this.axios, this.basePath));
1311
2316
  }
1312
2317
 
1313
2318
  /**
1314
2319
  * Deletes a catalog product
1315
2320
  * @summary Delete catalog product
1316
- * @param {string} project What project it is
1317
- * @param {string} productId Product\&#39;s unique identifier
2321
+ * @param {ProductsApiDeleteProductRequest} requestParameters Request parameters.
1318
2322
  * @param {*} [options] Override http request option.
1319
2323
  * @throws {RequiredError}
1320
2324
  * @memberof ProductsApi
1321
2325
  */
1322
- public deleteProduct(project: string, productId: string, options?: RawAxiosRequestConfig) {
1323
- return ProductsApiFp(this.configuration).deleteProduct(project, productId, options).then((request) => request(this.axios, this.basePath));
2326
+ public deleteProduct(requestParameters: ProductsApiDeleteProductRequest, options?: RawAxiosRequestConfig) {
2327
+ return ProductsApiFp(this.configuration).deleteProduct(requestParameters.project, requestParameters.productId, options).then((request) => request(this.axios, this.basePath));
1324
2328
  }
1325
2329
 
1326
2330
  /**
1327
2331
  * Gets a product by a given ID.
1328
2332
  * @summary Get product
1329
- * @param {string} project What project it is
1330
- * @param {string} productId Product\&#39;s unique identifier
1331
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2333
+ * @param {ProductsApiGetProductRequest} requestParameters Request parameters.
1332
2334
  * @param {*} [options] Override http request option.
1333
2335
  * @throws {RequiredError}
1334
2336
  * @memberof ProductsApi
1335
2337
  */
1336
- public getProduct(project: string, productId: string, fields?: string, options?: RawAxiosRequestConfig) {
1337
- return ProductsApiFp(this.configuration).getProduct(project, productId, fields, options).then((request) => request(this.axios, this.basePath));
2338
+ public getProduct(requestParameters: ProductsApiGetProductRequest, options?: RawAxiosRequestConfig) {
2339
+ return ProductsApiFp(this.configuration).getProduct(requestParameters.project, requestParameters.productId, requestParameters.fields, options).then((request) => request(this.axios, this.basePath));
1338
2340
  }
1339
2341
 
1340
2342
  /**
1341
2343
  * Lists all enabled store listing products attached to the given project.
1342
2344
  * @summary List products
1343
- * @param {string} project What project it is
1344
- * @param {number} [pageToken] Page reference token
1345
- * @param {string} [search] Search term to filter based on product tags.
1346
- * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
1347
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2345
+ * @param {ProductsApiGetProductsRequest} requestParameters Request parameters.
1348
2346
  * @param {*} [options] Override http request option.
1349
2347
  * @throws {RequiredError}
1350
2348
  * @memberof ProductsApi
1351
2349
  */
1352
- public getProducts(project: string, pageToken?: number, search?: string, pageSize?: number, fields?: string, options?: RawAxiosRequestConfig) {
1353
- return ProductsApiFp(this.configuration).getProducts(project, pageToken, search, pageSize, fields, options).then((request) => request(this.axios, this.basePath));
2350
+ public getProducts(requestParameters: ProductsApiGetProductsRequest, options?: RawAxiosRequestConfig) {
2351
+ return ProductsApiFp(this.configuration).getProducts(requestParameters.project, requestParameters.pageToken, requestParameters.search, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(this.axios, this.basePath));
1354
2352
  }
1355
2353
 
1356
2354
  /**
1357
2355
  * Initiates a product import from a CSV file. The result will be available as a notification within the dashboard.
1358
2356
  * @summary Import products
1359
- * @param {string} project What project it is
1360
- * @param {string} [body] A data URL of a CSV file containing data for one or more products.
2357
+ * @param {ProductsApiImportProductsRequest} requestParameters Request parameters.
1361
2358
  * @param {*} [options] Override http request option.
1362
2359
  * @throws {RequiredError}
1363
2360
  * @memberof ProductsApi
1364
2361
  */
1365
- public importProducts(project: string, body?: string, options?: RawAxiosRequestConfig) {
1366
- return ProductsApiFp(this.configuration).importProducts(project, body, options).then((request) => request(this.axios, this.basePath));
2362
+ public importProducts(requestParameters: ProductsApiImportProductsRequest, options?: RawAxiosRequestConfig) {
2363
+ return ProductsApiFp(this.configuration).importProducts(requestParameters.project, requestParameters.body, options).then((request) => request(this.axios, this.basePath));
1367
2364
  }
1368
2365
 
1369
2366
  /**
1370
2367
  * Updates a product by a given ID.
1371
2368
  * @summary Update product
1372
- * @param {string} project What project it is
1373
- * @param {string} productId Product\&#39;s unique identifier
1374
- * @param {UpdateProductRequest} [updateProductRequest]
2369
+ * @param {ProductsApiUpdateProductRequest} requestParameters Request parameters.
1375
2370
  * @param {*} [options] Override http request option.
1376
2371
  * @throws {RequiredError}
1377
2372
  * @memberof ProductsApi
1378
2373
  */
1379
- public updateProduct(project: string, productId: string, updateProductRequest?: UpdateProductRequest, options?: RawAxiosRequestConfig) {
1380
- return ProductsApiFp(this.configuration).updateProduct(project, productId, updateProductRequest, options).then((request) => request(this.axios, this.basePath));
2374
+ public updateProduct(requestParameters: ProductsApiUpdateProductRequest, options?: RawAxiosRequestConfig) {
2375
+ return ProductsApiFp(this.configuration).updateProduct(requestParameters.project, requestParameters.productId, requestParameters.updateProductRequest, options).then((request) => request(this.axios, this.basePath));
1381
2376
  }
1382
2377
  }
1383
2378
 
@@ -1561,32 +2556,96 @@ export const VariantsApiFactory = function (configuration?: Configuration, baseP
1561
2556
  /**
1562
2557
  * Gets a variant by a given ID.
1563
2558
  * @summary Get variant
1564
- * @param {string} project What project it is
1565
- * @param {string} variantId Variants unique identifier
1566
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2559
+ * @param {VariantsApiGetVariantRequest} requestParameters Request parameters.
1567
2560
  * @param {*} [options] Override http request option.
1568
2561
  * @throws {RequiredError}
1569
2562
  */
1570
- getVariant(project: string, variantId: string, fields?: string, options?: any): AxiosPromise<Variant> {
1571
- return localVarFp.getVariant(project, variantId, fields, options).then((request) => request(axios, basePath));
2563
+ getVariant(requestParameters: VariantsApiGetVariantRequest, options?: RawAxiosRequestConfig): AxiosPromise<Variant> {
2564
+ return localVarFp.getVariant(requestParameters.project, requestParameters.variantId, requestParameters.fields, options).then((request) => request(axios, basePath));
1572
2565
  },
1573
2566
  /**
1574
2567
  * Lists all variants that belong to enabled products attached to the given project.
1575
2568
  * @summary List variants
1576
- * @param {string} project What project it is
1577
- * @param {string} [search] Search term to filter based on product tags.
1578
- * @param {number} [pageToken] Page reference token
1579
- * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
1580
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2569
+ * @param {VariantsApiListVariantsRequest} requestParameters Request parameters.
1581
2570
  * @param {*} [options] Override http request option.
1582
2571
  * @throws {RequiredError}
1583
2572
  */
1584
- listVariants(project: string, search?: string, pageToken?: number, pageSize?: number, fields?: string, options?: any): AxiosPromise<VariantsResponse> {
1585
- return localVarFp.listVariants(project, search, pageToken, pageSize, fields, options).then((request) => request(axios, basePath));
2573
+ listVariants(requestParameters: VariantsApiListVariantsRequest, options?: RawAxiosRequestConfig): AxiosPromise<VariantsResponse> {
2574
+ return localVarFp.listVariants(requestParameters.project, requestParameters.search, requestParameters.pageToken, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(axios, basePath));
1586
2575
  },
1587
2576
  };
1588
2577
  };
1589
2578
 
2579
+ /**
2580
+ * Request parameters for getVariant operation in VariantsApi.
2581
+ * @export
2582
+ * @interface VariantsApiGetVariantRequest
2583
+ */
2584
+ export interface VariantsApiGetVariantRequest {
2585
+ /**
2586
+ * What project it is
2587
+ * @type {string}
2588
+ * @memberof VariantsApiGetVariant
2589
+ */
2590
+ readonly project: string
2591
+
2592
+ /**
2593
+ * Variants unique identifier
2594
+ * @type {string}
2595
+ * @memberof VariantsApiGetVariant
2596
+ */
2597
+ readonly variantId: string
2598
+
2599
+ /**
2600
+ * Filter response fields to only include a subset of the resource.
2601
+ * @type {string}
2602
+ * @memberof VariantsApiGetVariant
2603
+ */
2604
+ readonly fields?: string
2605
+ }
2606
+
2607
+ /**
2608
+ * Request parameters for listVariants operation in VariantsApi.
2609
+ * @export
2610
+ * @interface VariantsApiListVariantsRequest
2611
+ */
2612
+ export interface VariantsApiListVariantsRequest {
2613
+ /**
2614
+ * What project it is
2615
+ * @type {string}
2616
+ * @memberof VariantsApiListVariants
2617
+ */
2618
+ readonly project: string
2619
+
2620
+ /**
2621
+ * Search term to filter based on product tags.
2622
+ * @type {string}
2623
+ * @memberof VariantsApiListVariants
2624
+ */
2625
+ readonly search?: string
2626
+
2627
+ /**
2628
+ * Page reference token
2629
+ * @type {number}
2630
+ * @memberof VariantsApiListVariants
2631
+ */
2632
+ readonly pageToken?: number
2633
+
2634
+ /**
2635
+ * Max page size. This is the maximum page size that will be returned, but it might be smaller.
2636
+ * @type {number}
2637
+ * @memberof VariantsApiListVariants
2638
+ */
2639
+ readonly pageSize?: number
2640
+
2641
+ /**
2642
+ * Filter response fields to only include a subset of the resource.
2643
+ * @type {string}
2644
+ * @memberof VariantsApiListVariants
2645
+ */
2646
+ readonly fields?: string
2647
+ }
2648
+
1590
2649
  /**
1591
2650
  * VariantsApi - object-oriented interface
1592
2651
  * @export
@@ -1597,31 +2656,25 @@ export class VariantsApi extends BaseAPI {
1597
2656
  /**
1598
2657
  * Gets a variant by a given ID.
1599
2658
  * @summary Get variant
1600
- * @param {string} project What project it is
1601
- * @param {string} variantId Variants unique identifier
1602
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2659
+ * @param {VariantsApiGetVariantRequest} requestParameters Request parameters.
1603
2660
  * @param {*} [options] Override http request option.
1604
2661
  * @throws {RequiredError}
1605
2662
  * @memberof VariantsApi
1606
2663
  */
1607
- public getVariant(project: string, variantId: string, fields?: string, options?: RawAxiosRequestConfig) {
1608
- return VariantsApiFp(this.configuration).getVariant(project, variantId, fields, options).then((request) => request(this.axios, this.basePath));
2664
+ public getVariant(requestParameters: VariantsApiGetVariantRequest, options?: RawAxiosRequestConfig) {
2665
+ return VariantsApiFp(this.configuration).getVariant(requestParameters.project, requestParameters.variantId, requestParameters.fields, options).then((request) => request(this.axios, this.basePath));
1609
2666
  }
1610
2667
 
1611
2668
  /**
1612
2669
  * Lists all variants that belong to enabled products attached to the given project.
1613
2670
  * @summary List variants
1614
- * @param {string} project What project it is
1615
- * @param {string} [search] Search term to filter based on product tags.
1616
- * @param {number} [pageToken] Page reference token
1617
- * @param {number} [pageSize] Max page size. This is the maximum page size that will be returned, but it might be smaller.
1618
- * @param {string} [fields] Filter response fields to only include a subset of the resource.
2671
+ * @param {VariantsApiListVariantsRequest} requestParameters Request parameters.
1619
2672
  * @param {*} [options] Override http request option.
1620
2673
  * @throws {RequiredError}
1621
2674
  * @memberof VariantsApi
1622
2675
  */
1623
- public listVariants(project: string, search?: string, pageToken?: number, pageSize?: number, fields?: string, options?: RawAxiosRequestConfig) {
1624
- return VariantsApiFp(this.configuration).listVariants(project, search, pageToken, pageSize, fields, options).then((request) => request(this.axios, this.basePath));
2676
+ public listVariants(requestParameters: VariantsApiListVariantsRequest, options?: RawAxiosRequestConfig) {
2677
+ return VariantsApiFp(this.configuration).listVariants(requestParameters.project, requestParameters.search, requestParameters.pageToken, requestParameters.pageSize, requestParameters.fields, options).then((request) => request(this.axios, this.basePath));
1625
2678
  }
1626
2679
  }
1627
2680