@seekora-ai/admin-api 1.1.84 → 1.1.85

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
@@ -13640,6 +13640,99 @@ export const DataTypesCreateCustomWordListRequestTypeEnum = {
13640
13640
 
13641
13641
  export type DataTypesCreateCustomWordListRequestTypeEnum = typeof DataTypesCreateCustomWordListRequestTypeEnum[keyof typeof DataTypesCreateCustomWordListRequestTypeEnum];
13642
13642
 
13643
+ /**
13644
+ *
13645
+ * @export
13646
+ * @interface DataTypesCreateExperimentRequest
13647
+ */
13648
+ export interface DataTypesCreateExperimentRequest {
13649
+ /**
13650
+ *
13651
+ * @type {object}
13652
+ * @memberof DataTypesCreateExperimentRequest
13653
+ */
13654
+ 'audience_filter'?: object;
13655
+ /**
13656
+ *
13657
+ * @type {string}
13658
+ * @memberof DataTypesCreateExperimentRequest
13659
+ */
13660
+ 'description'?: string;
13661
+ /**
13662
+ *
13663
+ * @type {string}
13664
+ * @memberof DataTypesCreateExperimentRequest
13665
+ */
13666
+ 'experiment_id': string;
13667
+ /**
13668
+ *
13669
+ * @type {DataTypesExperimentType}
13670
+ * @memberof DataTypesCreateExperimentRequest
13671
+ */
13672
+ 'experiment_type': DataTypesExperimentType;
13673
+ /**
13674
+ *
13675
+ * @type {string}
13676
+ * @memberof DataTypesCreateExperimentRequest
13677
+ */
13678
+ 'hypothesis'?: string;
13679
+ /**
13680
+ *
13681
+ * @type {number}
13682
+ * @memberof DataTypesCreateExperimentRequest
13683
+ */
13684
+ 'max_duration_days'?: number;
13685
+ /**
13686
+ *
13687
+ * @type {number}
13688
+ * @memberof DataTypesCreateExperimentRequest
13689
+ */
13690
+ 'min_sample_size'?: number;
13691
+ /**
13692
+ *
13693
+ * @type {string}
13694
+ * @memberof DataTypesCreateExperimentRequest
13695
+ */
13696
+ 'name': string;
13697
+ /**
13698
+ *
13699
+ * @type {string}
13700
+ * @memberof DataTypesCreateExperimentRequest
13701
+ */
13702
+ 'primary_metric': string;
13703
+ /**
13704
+ *
13705
+ * @type {string}
13706
+ * @memberof DataTypesCreateExperimentRequest
13707
+ */
13708
+ 'scheduled_end_at'?: string;
13709
+ /**
13710
+ *
13711
+ * @type {string}
13712
+ * @memberof DataTypesCreateExperimentRequest
13713
+ */
13714
+ 'scheduled_start_at'?: string;
13715
+ /**
13716
+ *
13717
+ * @type {Array<string>}
13718
+ * @memberof DataTypesCreateExperimentRequest
13719
+ */
13720
+ 'secondary_metrics'?: Array<string>;
13721
+ /**
13722
+ *
13723
+ * @type {number}
13724
+ * @memberof DataTypesCreateExperimentRequest
13725
+ */
13726
+ 'traffic_percentage'?: number;
13727
+ /**
13728
+ *
13729
+ * @type {Array<DataTypesExperimentVariant>}
13730
+ * @memberof DataTypesCreateExperimentRequest
13731
+ */
13732
+ 'variants': Array<DataTypesExperimentVariant>;
13733
+ }
13734
+
13735
+
13643
13736
  /**
13644
13737
  *
13645
13738
  * @export
@@ -16848,6 +16941,435 @@ export interface DataTypesEventPayload {
16848
16941
  */
16849
16942
  'xstoreid'?: string;
16850
16943
  }
16944
+ /**
16945
+ *
16946
+ * @export
16947
+ * @interface DataTypesExperiment
16948
+ */
16949
+ export interface DataTypesExperiment {
16950
+ /**
16951
+ *
16952
+ * @type {object}
16953
+ * @memberof DataTypesExperiment
16954
+ */
16955
+ 'audience_filter'?: object;
16956
+ /**
16957
+ *
16958
+ * @type {number}
16959
+ * @memberof DataTypesExperiment
16960
+ */
16961
+ 'confidence_level'?: number;
16962
+ /**
16963
+ *
16964
+ * @type {string}
16965
+ * @memberof DataTypesExperiment
16966
+ */
16967
+ 'created_at'?: string;
16968
+ /**
16969
+ *
16970
+ * @type {number}
16971
+ * @memberof DataTypesExperiment
16972
+ */
16973
+ 'created_by'?: number;
16974
+ /**
16975
+ *
16976
+ * @type {string}
16977
+ * @memberof DataTypesExperiment
16978
+ */
16979
+ 'description'?: string;
16980
+ /**
16981
+ *
16982
+ * @type {string}
16983
+ * @memberof DataTypesExperiment
16984
+ */
16985
+ 'ended_at'?: string;
16986
+ /**
16987
+ *
16988
+ * @type {string}
16989
+ * @memberof DataTypesExperiment
16990
+ */
16991
+ 'experiment_id'?: string;
16992
+ /**
16993
+ *
16994
+ * @type {DataTypesExperimentType}
16995
+ * @memberof DataTypesExperiment
16996
+ */
16997
+ 'experiment_type'?: DataTypesExperimentType;
16998
+ /**
16999
+ *
17000
+ * @type {object}
17001
+ * @memberof DataTypesExperiment
17002
+ */
17003
+ 'final_results'?: object;
17004
+ /**
17005
+ *
17006
+ * @type {string}
17007
+ * @memberof DataTypesExperiment
17008
+ */
17009
+ 'hypothesis'?: string;
17010
+ /**
17011
+ *
17012
+ * @type {number}
17013
+ * @memberof DataTypesExperiment
17014
+ */
17015
+ 'id'?: number;
17016
+ /**
17017
+ *
17018
+ * @type {number}
17019
+ * @memberof DataTypesExperiment
17020
+ */
17021
+ 'max_duration_days'?: number;
17022
+ /**
17023
+ *
17024
+ * @type {number}
17025
+ * @memberof DataTypesExperiment
17026
+ */
17027
+ 'min_sample_size'?: number;
17028
+ /**
17029
+ *
17030
+ * @type {string}
17031
+ * @memberof DataTypesExperiment
17032
+ */
17033
+ 'name'?: string;
17034
+ /**
17035
+ *
17036
+ * @type {number}
17037
+ * @memberof DataTypesExperiment
17038
+ */
17039
+ 'org_id'?: number;
17040
+ /**
17041
+ *
17042
+ * @type {string}
17043
+ * @memberof DataTypesExperiment
17044
+ */
17045
+ 'primary_metric'?: string;
17046
+ /**
17047
+ *
17048
+ * @type {string}
17049
+ * @memberof DataTypesExperiment
17050
+ */
17051
+ 'scheduled_end_at'?: string;
17052
+ /**
17053
+ *
17054
+ * @type {string}
17055
+ * @memberof DataTypesExperiment
17056
+ */
17057
+ 'scheduled_start_at'?: string;
17058
+ /**
17059
+ *
17060
+ * @type {Array<string>}
17061
+ * @memberof DataTypesExperiment
17062
+ */
17063
+ 'secondary_metrics'?: Array<string>;
17064
+ /**
17065
+ *
17066
+ * @type {string}
17067
+ * @memberof DataTypesExperiment
17068
+ */
17069
+ 'started_at'?: string;
17070
+ /**
17071
+ *
17072
+ * @type {number}
17073
+ * @memberof DataTypesExperiment
17074
+ */
17075
+ 'statistical_significance'?: number;
17076
+ /**
17077
+ *
17078
+ * @type {DataTypesExperimentStatus}
17079
+ * @memberof DataTypesExperiment
17080
+ */
17081
+ 'status'?: DataTypesExperimentStatus;
17082
+ /**
17083
+ *
17084
+ * @type {number}
17085
+ * @memberof DataTypesExperiment
17086
+ */
17087
+ 'store_id'?: number;
17088
+ /**
17089
+ *
17090
+ * @type {number}
17091
+ * @memberof DataTypesExperiment
17092
+ */
17093
+ 'traffic_percentage'?: number;
17094
+ /**
17095
+ *
17096
+ * @type {string}
17097
+ * @memberof DataTypesExperiment
17098
+ */
17099
+ 'updated_at'?: string;
17100
+ /**
17101
+ *
17102
+ * @type {number}
17103
+ * @memberof DataTypesExperiment
17104
+ */
17105
+ 'updated_by'?: number;
17106
+ /**
17107
+ *
17108
+ * @type {Array<DataTypesExperimentVariant>}
17109
+ * @memberof DataTypesExperiment
17110
+ */
17111
+ 'variants'?: Array<DataTypesExperimentVariant>;
17112
+ /**
17113
+ *
17114
+ * @type {string}
17115
+ * @memberof DataTypesExperiment
17116
+ */
17117
+ 'winner_variant'?: string;
17118
+ }
17119
+
17120
+
17121
+ /**
17122
+ *
17123
+ * @export
17124
+ * @interface DataTypesExperimentAssignment
17125
+ */
17126
+ export interface DataTypesExperimentAssignment {
17127
+ /**
17128
+ *
17129
+ * @type {string}
17130
+ * @memberof DataTypesExperimentAssignment
17131
+ */
17132
+ 'experiment_id'?: string;
17133
+ /**
17134
+ *
17135
+ * @type {{ [key: string]: any; }}
17136
+ * @memberof DataTypesExperimentAssignment
17137
+ */
17138
+ 'variant_config'?: { [key: string]: any; };
17139
+ /**
17140
+ *
17141
+ * @type {string}
17142
+ * @memberof DataTypesExperimentAssignment
17143
+ */
17144
+ 'variant_id'?: string;
17145
+ }
17146
+ /**
17147
+ *
17148
+ * @export
17149
+ * @interface DataTypesExperimentResults
17150
+ */
17151
+ export interface DataTypesExperimentResults {
17152
+ /**
17153
+ *
17154
+ * @type {number}
17155
+ * @memberof DataTypesExperimentResults
17156
+ */
17157
+ 'confidence_level'?: number;
17158
+ /**
17159
+ *
17160
+ * @type {number}
17161
+ * @memberof DataTypesExperimentResults
17162
+ */
17163
+ 'conversion_lift'?: number;
17164
+ /**
17165
+ *
17166
+ * @type {number}
17167
+ * @memberof DataTypesExperimentResults
17168
+ */
17169
+ 'ctr_lift'?: number;
17170
+ /**
17171
+ *
17172
+ * @type {string}
17173
+ * @memberof DataTypesExperimentResults
17174
+ */
17175
+ 'ended_at'?: string;
17176
+ /**
17177
+ *
17178
+ * @type {string}
17179
+ * @memberof DataTypesExperimentResults
17180
+ */
17181
+ 'experiment_id'?: string;
17182
+ /**
17183
+ *
17184
+ * @type {boolean}
17185
+ * @memberof DataTypesExperimentResults
17186
+ */
17187
+ 'is_significant'?: boolean;
17188
+ /**
17189
+ *
17190
+ * @type {string}
17191
+ * @memberof DataTypesExperimentResults
17192
+ */
17193
+ 'name'?: string;
17194
+ /**
17195
+ *
17196
+ * @type {number}
17197
+ * @memberof DataTypesExperimentResults
17198
+ */
17199
+ 'revenue_lift'?: number;
17200
+ /**
17201
+ *
17202
+ * @type {string}
17203
+ * @memberof DataTypesExperimentResults
17204
+ */
17205
+ 'started_at'?: string;
17206
+ /**
17207
+ *
17208
+ * @type {DataTypesExperimentStatus}
17209
+ * @memberof DataTypesExperimentResults
17210
+ */
17211
+ 'status'?: DataTypesExperimentStatus;
17212
+ /**
17213
+ *
17214
+ * @type {Array<DataTypesExperimentVariantResult>}
17215
+ * @memberof DataTypesExperimentResults
17216
+ */
17217
+ 'variants'?: Array<DataTypesExperimentVariantResult>;
17218
+ /**
17219
+ *
17220
+ * @type {string}
17221
+ * @memberof DataTypesExperimentResults
17222
+ */
17223
+ 'winner'?: string;
17224
+ }
17225
+
17226
+
17227
+ /**
17228
+ *
17229
+ * @export
17230
+ * @enum {string}
17231
+ */
17232
+
17233
+ export const DataTypesExperimentStatus = {
17234
+ ExperimentStatusDraft: 'draft',
17235
+ ExperimentStatusScheduled: 'scheduled',
17236
+ ExperimentStatusRunning: 'running',
17237
+ ExperimentStatusPaused: 'paused',
17238
+ ExperimentStatusCompleted: 'completed',
17239
+ ExperimentStatusArchived: 'archived'
17240
+ } as const;
17241
+
17242
+ export type DataTypesExperimentStatus = typeof DataTypesExperimentStatus[keyof typeof DataTypesExperimentStatus];
17243
+
17244
+
17245
+ /**
17246
+ *
17247
+ * @export
17248
+ * @enum {string}
17249
+ */
17250
+
17251
+ export const DataTypesExperimentType = {
17252
+ ExperimentTypeSearchRanking: 'search_ranking',
17253
+ ExperimentTypeRecommendation: 'recommendation',
17254
+ ExperimentTypePersonalization: 'personalization',
17255
+ ExperimentTypeUI: 'ui',
17256
+ ExperimentTypePricing: 'pricing',
17257
+ ExperimentTypeOther: 'other'
17258
+ } as const;
17259
+
17260
+ export type DataTypesExperimentType = typeof DataTypesExperimentType[keyof typeof DataTypesExperimentType];
17261
+
17262
+
17263
+ /**
17264
+ *
17265
+ * @export
17266
+ * @interface DataTypesExperimentVariant
17267
+ */
17268
+ export interface DataTypesExperimentVariant {
17269
+ /**
17270
+ *
17271
+ * @type {{ [key: string]: any; }}
17272
+ * @memberof DataTypesExperimentVariant
17273
+ */
17274
+ 'config'?: { [key: string]: any; };
17275
+ /**
17276
+ *
17277
+ * @type {string}
17278
+ * @memberof DataTypesExperimentVariant
17279
+ */
17280
+ 'id'?: string;
17281
+ /**
17282
+ *
17283
+ * @type {string}
17284
+ * @memberof DataTypesExperimentVariant
17285
+ */
17286
+ 'name'?: string;
17287
+ /**
17288
+ * Traffic weight percentage (e.g., 50 = 50%)
17289
+ * @type {number}
17290
+ * @memberof DataTypesExperimentVariant
17291
+ */
17292
+ 'weight'?: number;
17293
+ }
17294
+ /**
17295
+ *
17296
+ * @export
17297
+ * @interface DataTypesExperimentVariantResult
17298
+ */
17299
+ export interface DataTypesExperimentVariantResult {
17300
+ /**
17301
+ *
17302
+ * @type {number}
17303
+ * @memberof DataTypesExperimentVariantResult
17304
+ */
17305
+ 'avg_latency_ms'?: number;
17306
+ /**
17307
+ *
17308
+ * @type {number}
17309
+ * @memberof DataTypesExperimentVariantResult
17310
+ */
17311
+ 'conversion_rate'?: number;
17312
+ /**
17313
+ *
17314
+ * @type {number}
17315
+ * @memberof DataTypesExperimentVariantResult
17316
+ */
17317
+ 'conversions'?: number;
17318
+ /**
17319
+ *
17320
+ * @type {number}
17321
+ * @memberof DataTypesExperimentVariantResult
17322
+ */
17323
+ 'ctr'?: number;
17324
+ /**
17325
+ *
17326
+ * @type {number}
17327
+ * @memberof DataTypesExperimentVariantResult
17328
+ */
17329
+ 'revenue'?: number;
17330
+ /**
17331
+ *
17332
+ * @type {number}
17333
+ * @memberof DataTypesExperimentVariantResult
17334
+ */
17335
+ 'revenue_per_user'?: number;
17336
+ /**
17337
+ *
17338
+ * @type {number}
17339
+ * @memberof DataTypesExperimentVariantResult
17340
+ */
17341
+ 'total_clicks'?: number;
17342
+ /**
17343
+ *
17344
+ * @type {number}
17345
+ * @memberof DataTypesExperimentVariantResult
17346
+ */
17347
+ 'total_searches'?: number;
17348
+ /**
17349
+ *
17350
+ * @type {number}
17351
+ * @memberof DataTypesExperimentVariantResult
17352
+ */
17353
+ 'unique_users'?: number;
17354
+ /**
17355
+ *
17356
+ * @type {string}
17357
+ * @memberof DataTypesExperimentVariantResult
17358
+ */
17359
+ 'variant_id'?: string;
17360
+ /**
17361
+ *
17362
+ * @type {string}
17363
+ * @memberof DataTypesExperimentVariantResult
17364
+ */
17365
+ 'variant_name'?: string;
17366
+ /**
17367
+ *
17368
+ * @type {number}
17369
+ * @memberof DataTypesExperimentVariantResult
17370
+ */
17371
+ 'zero_result_rate'?: number;
17372
+ }
16851
17373
  /**
16852
17374
  *
16853
17375
  * @export
@@ -31221,6 +31743,85 @@ export interface DataTypesUpdateCustomWordListRequest {
31221
31743
  */
31222
31744
  'words'?: Array<string>;
31223
31745
  }
31746
+ /**
31747
+ *
31748
+ * @export
31749
+ * @interface DataTypesUpdateExperimentRequest
31750
+ */
31751
+ export interface DataTypesUpdateExperimentRequest {
31752
+ /**
31753
+ *
31754
+ * @type {object}
31755
+ * @memberof DataTypesUpdateExperimentRequest
31756
+ */
31757
+ 'audience_filter'?: object;
31758
+ /**
31759
+ *
31760
+ * @type {string}
31761
+ * @memberof DataTypesUpdateExperimentRequest
31762
+ */
31763
+ 'description'?: string;
31764
+ /**
31765
+ *
31766
+ * @type {string}
31767
+ * @memberof DataTypesUpdateExperimentRequest
31768
+ */
31769
+ 'hypothesis'?: string;
31770
+ /**
31771
+ *
31772
+ * @type {number}
31773
+ * @memberof DataTypesUpdateExperimentRequest
31774
+ */
31775
+ 'max_duration_days'?: number;
31776
+ /**
31777
+ *
31778
+ * @type {number}
31779
+ * @memberof DataTypesUpdateExperimentRequest
31780
+ */
31781
+ 'min_sample_size'?: number;
31782
+ /**
31783
+ *
31784
+ * @type {string}
31785
+ * @memberof DataTypesUpdateExperimentRequest
31786
+ */
31787
+ 'name'?: string;
31788
+ /**
31789
+ *
31790
+ * @type {string}
31791
+ * @memberof DataTypesUpdateExperimentRequest
31792
+ */
31793
+ 'primary_metric'?: string;
31794
+ /**
31795
+ *
31796
+ * @type {string}
31797
+ * @memberof DataTypesUpdateExperimentRequest
31798
+ */
31799
+ 'scheduled_end_at'?: string;
31800
+ /**
31801
+ *
31802
+ * @type {string}
31803
+ * @memberof DataTypesUpdateExperimentRequest
31804
+ */
31805
+ 'scheduled_start_at'?: string;
31806
+ /**
31807
+ *
31808
+ * @type {Array<string>}
31809
+ * @memberof DataTypesUpdateExperimentRequest
31810
+ */
31811
+ 'secondary_metrics'?: Array<string>;
31812
+ /**
31813
+ *
31814
+ * @type {number}
31815
+ * @memberof DataTypesUpdateExperimentRequest
31816
+ */
31817
+ 'traffic_percentage'?: number;
31818
+ /**
31819
+ *
31820
+ * @type {Array<DataTypesExperimentVariant>}
31821
+ * @memberof DataTypesUpdateExperimentRequest
31822
+ */
31823
+ 'variants'?: Array<DataTypesExperimentVariant>;
31824
+ }
31224
31825
  /**
31225
31826
  *
31226
31827
  * @export
@@ -62851,6 +63452,792 @@ export class DocumentsApi extends BaseAPI {
62851
63452
 
62852
63453
 
62853
63454
 
63455
+ /**
63456
+ * ExperimentsApi - axios parameter creator
63457
+ * @export
63458
+ */
63459
+ export const ExperimentsApiAxiosParamCreator = function (configuration?: Configuration) {
63460
+ return {
63461
+ /**
63462
+ * Returns all experiments for the authenticated organization, optionally filtered by store.
63463
+ * @summary List all experiments
63464
+ * @param {*} [options] Override http request option.
63465
+ * @throws {RequiredError}
63466
+ */
63467
+ v1AdminExperimentsGet: async (options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63468
+ const localVarPath = `/v1/admin/experiments/`;
63469
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63470
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63471
+ let baseOptions;
63472
+ if (configuration) {
63473
+ baseOptions = configuration.baseOptions;
63474
+ }
63475
+
63476
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
63477
+ const localVarHeaderParameter = {} as any;
63478
+ const localVarQueryParameter = {} as any;
63479
+
63480
+ // authentication BearerAuth required
63481
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63482
+
63483
+
63484
+
63485
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63486
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63487
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63488
+
63489
+ return {
63490
+ url: toPathString(localVarUrlObj),
63491
+ options: localVarRequestOptions,
63492
+ };
63493
+ },
63494
+ /**
63495
+ * Transitions a running or paused experiment to completed status, optionally declaring a winner.
63496
+ * @summary Complete an experiment
63497
+ * @param {string} id Experiment ID (slug)
63498
+ * @param {object} [body] Optional winner variant ID
63499
+ * @param {*} [options] Override http request option.
63500
+ * @throws {RequiredError}
63501
+ */
63502
+ v1AdminExperimentsIdCompletePost: async (id: string, body?: object, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63503
+ // verify required parameter 'id' is not null or undefined
63504
+ assertParamExists('v1AdminExperimentsIdCompletePost', 'id', id)
63505
+ const localVarPath = `/v1/admin/experiments/{id}/complete`
63506
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63507
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63508
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63509
+ let baseOptions;
63510
+ if (configuration) {
63511
+ baseOptions = configuration.baseOptions;
63512
+ }
63513
+
63514
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
63515
+ const localVarHeaderParameter = {} as any;
63516
+ const localVarQueryParameter = {} as any;
63517
+
63518
+ // authentication BearerAuth required
63519
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63520
+
63521
+
63522
+
63523
+ localVarHeaderParameter['Content-Type'] = 'application/json';
63524
+
63525
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63526
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63527
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63528
+ localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration)
63529
+
63530
+ return {
63531
+ url: toPathString(localVarUrlObj),
63532
+ options: localVarRequestOptions,
63533
+ };
63534
+ },
63535
+ /**
63536
+ * Deletes an experiment. Only experiments in draft status can be deleted.
63537
+ * @summary Delete a draft experiment
63538
+ * @param {string} id Experiment ID (slug)
63539
+ * @param {*} [options] Override http request option.
63540
+ * @throws {RequiredError}
63541
+ */
63542
+ v1AdminExperimentsIdDelete: async (id: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63543
+ // verify required parameter 'id' is not null or undefined
63544
+ assertParamExists('v1AdminExperimentsIdDelete', 'id', id)
63545
+ const localVarPath = `/v1/admin/experiments/{id}`
63546
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63547
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63548
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63549
+ let baseOptions;
63550
+ if (configuration) {
63551
+ baseOptions = configuration.baseOptions;
63552
+ }
63553
+
63554
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
63555
+ const localVarHeaderParameter = {} as any;
63556
+ const localVarQueryParameter = {} as any;
63557
+
63558
+ // authentication BearerAuth required
63559
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63560
+
63561
+
63562
+
63563
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63564
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63565
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63566
+
63567
+ return {
63568
+ url: toPathString(localVarUrlObj),
63569
+ options: localVarRequestOptions,
63570
+ };
63571
+ },
63572
+ /**
63573
+ * Returns a single experiment by its experiment_id slug.
63574
+ * @summary Get experiment by ID
63575
+ * @param {string} id Experiment ID (slug)
63576
+ * @param {*} [options] Override http request option.
63577
+ * @throws {RequiredError}
63578
+ */
63579
+ v1AdminExperimentsIdGet: async (id: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63580
+ // verify required parameter 'id' is not null or undefined
63581
+ assertParamExists('v1AdminExperimentsIdGet', 'id', id)
63582
+ const localVarPath = `/v1/admin/experiments/{id}`
63583
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63584
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63585
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63586
+ let baseOptions;
63587
+ if (configuration) {
63588
+ baseOptions = configuration.baseOptions;
63589
+ }
63590
+
63591
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
63592
+ const localVarHeaderParameter = {} as any;
63593
+ const localVarQueryParameter = {} as any;
63594
+
63595
+ // authentication BearerAuth required
63596
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63597
+
63598
+
63599
+
63600
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63601
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63602
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63603
+
63604
+ return {
63605
+ url: toPathString(localVarUrlObj),
63606
+ options: localVarRequestOptions,
63607
+ };
63608
+ },
63609
+ /**
63610
+ * Transitions a running experiment to paused status.
63611
+ * @summary Pause an experiment
63612
+ * @param {string} id Experiment ID (slug)
63613
+ * @param {*} [options] Override http request option.
63614
+ * @throws {RequiredError}
63615
+ */
63616
+ v1AdminExperimentsIdPausePost: async (id: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63617
+ // verify required parameter 'id' is not null or undefined
63618
+ assertParamExists('v1AdminExperimentsIdPausePost', 'id', id)
63619
+ const localVarPath = `/v1/admin/experiments/{id}/pause`
63620
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63621
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63622
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63623
+ let baseOptions;
63624
+ if (configuration) {
63625
+ baseOptions = configuration.baseOptions;
63626
+ }
63627
+
63628
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
63629
+ const localVarHeaderParameter = {} as any;
63630
+ const localVarQueryParameter = {} as any;
63631
+
63632
+ // authentication BearerAuth required
63633
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63634
+
63635
+
63636
+
63637
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63638
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63639
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63640
+
63641
+ return {
63642
+ url: toPathString(localVarUrlObj),
63643
+ options: localVarRequestOptions,
63644
+ };
63645
+ },
63646
+ /**
63647
+ * Updates an existing experiment. Only draft experiments can be fully updated.
63648
+ * @summary Update an experiment
63649
+ * @param {string} id Experiment ID (slug)
63650
+ * @param {DataTypesUpdateExperimentRequest} dataTypesUpdateExperimentRequest Fields to update
63651
+ * @param {*} [options] Override http request option.
63652
+ * @throws {RequiredError}
63653
+ */
63654
+ v1AdminExperimentsIdPut: async (id: string, dataTypesUpdateExperimentRequest: DataTypesUpdateExperimentRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63655
+ // verify required parameter 'id' is not null or undefined
63656
+ assertParamExists('v1AdminExperimentsIdPut', 'id', id)
63657
+ // verify required parameter 'dataTypesUpdateExperimentRequest' is not null or undefined
63658
+ assertParamExists('v1AdminExperimentsIdPut', 'dataTypesUpdateExperimentRequest', dataTypesUpdateExperimentRequest)
63659
+ const localVarPath = `/v1/admin/experiments/{id}`
63660
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63661
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63662
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63663
+ let baseOptions;
63664
+ if (configuration) {
63665
+ baseOptions = configuration.baseOptions;
63666
+ }
63667
+
63668
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
63669
+ const localVarHeaderParameter = {} as any;
63670
+ const localVarQueryParameter = {} as any;
63671
+
63672
+ // authentication BearerAuth required
63673
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63674
+
63675
+
63676
+
63677
+ localVarHeaderParameter['Content-Type'] = 'application/json';
63678
+
63679
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63680
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63681
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63682
+ localVarRequestOptions.data = serializeDataIfNeeded(dataTypesUpdateExperimentRequest, localVarRequestOptions, configuration)
63683
+
63684
+ return {
63685
+ url: toPathString(localVarUrlObj),
63686
+ options: localVarRequestOptions,
63687
+ };
63688
+ },
63689
+ /**
63690
+ * Returns analytics results for an experiment from ClickHouse, including per-variant metrics, lifts, and statistical significance.
63691
+ * @summary Get experiment results
63692
+ * @param {string} id Experiment ID (slug)
63693
+ * @param {*} [options] Override http request option.
63694
+ * @throws {RequiredError}
63695
+ */
63696
+ v1AdminExperimentsIdResultsGet: async (id: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63697
+ // verify required parameter 'id' is not null or undefined
63698
+ assertParamExists('v1AdminExperimentsIdResultsGet', 'id', id)
63699
+ const localVarPath = `/v1/admin/experiments/{id}/results`
63700
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63701
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63702
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63703
+ let baseOptions;
63704
+ if (configuration) {
63705
+ baseOptions = configuration.baseOptions;
63706
+ }
63707
+
63708
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
63709
+ const localVarHeaderParameter = {} as any;
63710
+ const localVarQueryParameter = {} as any;
63711
+
63712
+ // authentication BearerAuth required
63713
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63714
+
63715
+
63716
+
63717
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63718
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63719
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63720
+
63721
+ return {
63722
+ url: toPathString(localVarUrlObj),
63723
+ options: localVarRequestOptions,
63724
+ };
63725
+ },
63726
+ /**
63727
+ * Transitions a draft or paused experiment to running status.
63728
+ * @summary Start an experiment
63729
+ * @param {string} id Experiment ID (slug)
63730
+ * @param {*} [options] Override http request option.
63731
+ * @throws {RequiredError}
63732
+ */
63733
+ v1AdminExperimentsIdStartPost: async (id: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63734
+ // verify required parameter 'id' is not null or undefined
63735
+ assertParamExists('v1AdminExperimentsIdStartPost', 'id', id)
63736
+ const localVarPath = `/v1/admin/experiments/{id}/start`
63737
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
63738
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63739
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63740
+ let baseOptions;
63741
+ if (configuration) {
63742
+ baseOptions = configuration.baseOptions;
63743
+ }
63744
+
63745
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
63746
+ const localVarHeaderParameter = {} as any;
63747
+ const localVarQueryParameter = {} as any;
63748
+
63749
+ // authentication BearerAuth required
63750
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63751
+
63752
+
63753
+
63754
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63755
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63756
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63757
+
63758
+ return {
63759
+ url: toPathString(localVarUrlObj),
63760
+ options: localVarRequestOptions,
63761
+ };
63762
+ },
63763
+ /**
63764
+ * Creates a new A/B test experiment in draft status.
63765
+ * @summary Create a new experiment
63766
+ * @param {DataTypesCreateExperimentRequest} dataTypesCreateExperimentRequest Experiment data
63767
+ * @param {*} [options] Override http request option.
63768
+ * @throws {RequiredError}
63769
+ */
63770
+ v1AdminExperimentsPost: async (dataTypesCreateExperimentRequest: DataTypesCreateExperimentRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63771
+ // verify required parameter 'dataTypesCreateExperimentRequest' is not null or undefined
63772
+ assertParamExists('v1AdminExperimentsPost', 'dataTypesCreateExperimentRequest', dataTypesCreateExperimentRequest)
63773
+ const localVarPath = `/v1/admin/experiments/`;
63774
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63775
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63776
+ let baseOptions;
63777
+ if (configuration) {
63778
+ baseOptions = configuration.baseOptions;
63779
+ }
63780
+
63781
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
63782
+ const localVarHeaderParameter = {} as any;
63783
+ const localVarQueryParameter = {} as any;
63784
+
63785
+ // authentication BearerAuth required
63786
+ await setApiKeyToObject(localVarHeaderParameter, "Authorization", configuration)
63787
+
63788
+
63789
+
63790
+ localVarHeaderParameter['Content-Type'] = 'application/json';
63791
+
63792
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63793
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63794
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63795
+ localVarRequestOptions.data = serializeDataIfNeeded(dataTypesCreateExperimentRequest, localVarRequestOptions, configuration)
63796
+
63797
+ return {
63798
+ url: toPathString(localVarUrlObj),
63799
+ options: localVarRequestOptions,
63800
+ };
63801
+ },
63802
+ /**
63803
+ * Returns variant assignments for all running experiments for the requesting user. Uses hash-based consistent assignment.
63804
+ * @summary Get experiment assignments for a user
63805
+ * @param {string} xStoreid Store ID
63806
+ * @param {string} [xUserId] User ID (provide either x-user-id or x-anon-id)
63807
+ * @param {string} [xAnonId] Anonymous ID (provide either x-user-id or x-anon-id)
63808
+ * @param {*} [options] Override http request option.
63809
+ * @throws {RequiredError}
63810
+ */
63811
+ v1ExperimentsAssignmentGet: async (xStoreid: string, xUserId?: string, xAnonId?: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
63812
+ // verify required parameter 'xStoreid' is not null or undefined
63813
+ assertParamExists('v1ExperimentsAssignmentGet', 'xStoreid', xStoreid)
63814
+ const localVarPath = `/v1/experiments/assignment`;
63815
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
63816
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
63817
+ let baseOptions;
63818
+ if (configuration) {
63819
+ baseOptions = configuration.baseOptions;
63820
+ }
63821
+
63822
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
63823
+ const localVarHeaderParameter = {} as any;
63824
+ const localVarQueryParameter = {} as any;
63825
+
63826
+ // authentication ApiKeyAuth required
63827
+ await setApiKeyToObject(localVarHeaderParameter, "x-storesecret", configuration)
63828
+
63829
+
63830
+
63831
+ if (xStoreid != null) {
63832
+ localVarHeaderParameter['x-storeid'] = String(xStoreid);
63833
+ }
63834
+ if (xUserId != null) {
63835
+ localVarHeaderParameter['x-user-id'] = String(xUserId);
63836
+ }
63837
+ if (xAnonId != null) {
63838
+ localVarHeaderParameter['x-anon-id'] = String(xAnonId);
63839
+ }
63840
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
63841
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
63842
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
63843
+
63844
+ return {
63845
+ url: toPathString(localVarUrlObj),
63846
+ options: localVarRequestOptions,
63847
+ };
63848
+ },
63849
+ }
63850
+ };
63851
+
63852
+ /**
63853
+ * ExperimentsApi - functional programming interface
63854
+ * @export
63855
+ */
63856
+ export const ExperimentsApiFp = function(configuration?: Configuration) {
63857
+ const localVarAxiosParamCreator = ExperimentsApiAxiosParamCreator(configuration)
63858
+ return {
63859
+ /**
63860
+ * Returns all experiments for the authenticated organization, optionally filtered by store.
63861
+ * @summary List all experiments
63862
+ * @param {*} [options] Override http request option.
63863
+ * @throws {RequiredError}
63864
+ */
63865
+ async v1AdminExperimentsGet(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: Array<DataTypesExperiment>; }>> {
63866
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsGet(options);
63867
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63868
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsGet']?.[localVarOperationServerIndex]?.url;
63869
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63870
+ },
63871
+ /**
63872
+ * Transitions a running or paused experiment to completed status, optionally declaring a winner.
63873
+ * @summary Complete an experiment
63874
+ * @param {string} id Experiment ID (slug)
63875
+ * @param {object} [body] Optional winner variant ID
63876
+ * @param {*} [options] Override http request option.
63877
+ * @throws {RequiredError}
63878
+ */
63879
+ async v1AdminExperimentsIdCompletePost(id: string, body?: object, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesResponse>> {
63880
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdCompletePost(id, body, options);
63881
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63882
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdCompletePost']?.[localVarOperationServerIndex]?.url;
63883
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63884
+ },
63885
+ /**
63886
+ * Deletes an experiment. Only experiments in draft status can be deleted.
63887
+ * @summary Delete a draft experiment
63888
+ * @param {string} id Experiment ID (slug)
63889
+ * @param {*} [options] Override http request option.
63890
+ * @throws {RequiredError}
63891
+ */
63892
+ async v1AdminExperimentsIdDelete(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesResponse>> {
63893
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdDelete(id, options);
63894
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63895
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdDelete']?.[localVarOperationServerIndex]?.url;
63896
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63897
+ },
63898
+ /**
63899
+ * Returns a single experiment by its experiment_id slug.
63900
+ * @summary Get experiment by ID
63901
+ * @param {string} id Experiment ID (slug)
63902
+ * @param {*} [options] Override http request option.
63903
+ * @throws {RequiredError}
63904
+ */
63905
+ async v1AdminExperimentsIdGet(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesExperiment>> {
63906
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdGet(id, options);
63907
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63908
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdGet']?.[localVarOperationServerIndex]?.url;
63909
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63910
+ },
63911
+ /**
63912
+ * Transitions a running experiment to paused status.
63913
+ * @summary Pause an experiment
63914
+ * @param {string} id Experiment ID (slug)
63915
+ * @param {*} [options] Override http request option.
63916
+ * @throws {RequiredError}
63917
+ */
63918
+ async v1AdminExperimentsIdPausePost(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesResponse>> {
63919
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdPausePost(id, options);
63920
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63921
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdPausePost']?.[localVarOperationServerIndex]?.url;
63922
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63923
+ },
63924
+ /**
63925
+ * Updates an existing experiment. Only draft experiments can be fully updated.
63926
+ * @summary Update an experiment
63927
+ * @param {string} id Experiment ID (slug)
63928
+ * @param {DataTypesUpdateExperimentRequest} dataTypesUpdateExperimentRequest Fields to update
63929
+ * @param {*} [options] Override http request option.
63930
+ * @throws {RequiredError}
63931
+ */
63932
+ async v1AdminExperimentsIdPut(id: string, dataTypesUpdateExperimentRequest: DataTypesUpdateExperimentRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesExperiment>> {
63933
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdPut(id, dataTypesUpdateExperimentRequest, options);
63934
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63935
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdPut']?.[localVarOperationServerIndex]?.url;
63936
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63937
+ },
63938
+ /**
63939
+ * Returns analytics results for an experiment from ClickHouse, including per-variant metrics, lifts, and statistical significance.
63940
+ * @summary Get experiment results
63941
+ * @param {string} id Experiment ID (slug)
63942
+ * @param {*} [options] Override http request option.
63943
+ * @throws {RequiredError}
63944
+ */
63945
+ async v1AdminExperimentsIdResultsGet(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesExperimentResults>> {
63946
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdResultsGet(id, options);
63947
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63948
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdResultsGet']?.[localVarOperationServerIndex]?.url;
63949
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63950
+ },
63951
+ /**
63952
+ * Transitions a draft or paused experiment to running status.
63953
+ * @summary Start an experiment
63954
+ * @param {string} id Experiment ID (slug)
63955
+ * @param {*} [options] Override http request option.
63956
+ * @throws {RequiredError}
63957
+ */
63958
+ async v1AdminExperimentsIdStartPost(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesResponse>> {
63959
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsIdStartPost(id, options);
63960
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63961
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsIdStartPost']?.[localVarOperationServerIndex]?.url;
63962
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63963
+ },
63964
+ /**
63965
+ * Creates a new A/B test experiment in draft status.
63966
+ * @summary Create a new experiment
63967
+ * @param {DataTypesCreateExperimentRequest} dataTypesCreateExperimentRequest Experiment data
63968
+ * @param {*} [options] Override http request option.
63969
+ * @throws {RequiredError}
63970
+ */
63971
+ async v1AdminExperimentsPost(dataTypesCreateExperimentRequest: DataTypesCreateExperimentRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DataTypesExperiment>> {
63972
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1AdminExperimentsPost(dataTypesCreateExperimentRequest, options);
63973
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63974
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1AdminExperimentsPost']?.[localVarOperationServerIndex]?.url;
63975
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63976
+ },
63977
+ /**
63978
+ * Returns variant assignments for all running experiments for the requesting user. Uses hash-based consistent assignment.
63979
+ * @summary Get experiment assignments for a user
63980
+ * @param {string} xStoreid Store ID
63981
+ * @param {string} [xUserId] User ID (provide either x-user-id or x-anon-id)
63982
+ * @param {string} [xAnonId] Anonymous ID (provide either x-user-id or x-anon-id)
63983
+ * @param {*} [options] Override http request option.
63984
+ * @throws {RequiredError}
63985
+ */
63986
+ async v1ExperimentsAssignmentGet(xStoreid: string, xUserId?: string, xAnonId?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: Array<DataTypesExperimentAssignment>; }>> {
63987
+ const localVarAxiosArgs = await localVarAxiosParamCreator.v1ExperimentsAssignmentGet(xStoreid, xUserId, xAnonId, options);
63988
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
63989
+ const localVarOperationServerBasePath = operationServerMap['ExperimentsApi.v1ExperimentsAssignmentGet']?.[localVarOperationServerIndex]?.url;
63990
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
63991
+ },
63992
+ }
63993
+ };
63994
+
63995
+ /**
63996
+ * ExperimentsApi - factory interface
63997
+ * @export
63998
+ */
63999
+ export const ExperimentsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
64000
+ const localVarFp = ExperimentsApiFp(configuration)
64001
+ return {
64002
+ /**
64003
+ * Returns all experiments for the authenticated organization, optionally filtered by store.
64004
+ * @summary List all experiments
64005
+ * @param {*} [options] Override http request option.
64006
+ * @throws {RequiredError}
64007
+ */
64008
+ v1AdminExperimentsGet(options?: RawAxiosRequestConfig): AxiosPromise<{ [key: string]: Array<DataTypesExperiment>; }> {
64009
+ return localVarFp.v1AdminExperimentsGet(options).then((request) => request(axios, basePath));
64010
+ },
64011
+ /**
64012
+ * Transitions a running or paused experiment to completed status, optionally declaring a winner.
64013
+ * @summary Complete an experiment
64014
+ * @param {string} id Experiment ID (slug)
64015
+ * @param {object} [body] Optional winner variant ID
64016
+ * @param {*} [options] Override http request option.
64017
+ * @throws {RequiredError}
64018
+ */
64019
+ v1AdminExperimentsIdCompletePost(id: string, body?: object, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesResponse> {
64020
+ return localVarFp.v1AdminExperimentsIdCompletePost(id, body, options).then((request) => request(axios, basePath));
64021
+ },
64022
+ /**
64023
+ * Deletes an experiment. Only experiments in draft status can be deleted.
64024
+ * @summary Delete a draft experiment
64025
+ * @param {string} id Experiment ID (slug)
64026
+ * @param {*} [options] Override http request option.
64027
+ * @throws {RequiredError}
64028
+ */
64029
+ v1AdminExperimentsIdDelete(id: string, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesResponse> {
64030
+ return localVarFp.v1AdminExperimentsIdDelete(id, options).then((request) => request(axios, basePath));
64031
+ },
64032
+ /**
64033
+ * Returns a single experiment by its experiment_id slug.
64034
+ * @summary Get experiment by ID
64035
+ * @param {string} id Experiment ID (slug)
64036
+ * @param {*} [options] Override http request option.
64037
+ * @throws {RequiredError}
64038
+ */
64039
+ v1AdminExperimentsIdGet(id: string, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesExperiment> {
64040
+ return localVarFp.v1AdminExperimentsIdGet(id, options).then((request) => request(axios, basePath));
64041
+ },
64042
+ /**
64043
+ * Transitions a running experiment to paused status.
64044
+ * @summary Pause an experiment
64045
+ * @param {string} id Experiment ID (slug)
64046
+ * @param {*} [options] Override http request option.
64047
+ * @throws {RequiredError}
64048
+ */
64049
+ v1AdminExperimentsIdPausePost(id: string, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesResponse> {
64050
+ return localVarFp.v1AdminExperimentsIdPausePost(id, options).then((request) => request(axios, basePath));
64051
+ },
64052
+ /**
64053
+ * Updates an existing experiment. Only draft experiments can be fully updated.
64054
+ * @summary Update an experiment
64055
+ * @param {string} id Experiment ID (slug)
64056
+ * @param {DataTypesUpdateExperimentRequest} dataTypesUpdateExperimentRequest Fields to update
64057
+ * @param {*} [options] Override http request option.
64058
+ * @throws {RequiredError}
64059
+ */
64060
+ v1AdminExperimentsIdPut(id: string, dataTypesUpdateExperimentRequest: DataTypesUpdateExperimentRequest, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesExperiment> {
64061
+ return localVarFp.v1AdminExperimentsIdPut(id, dataTypesUpdateExperimentRequest, options).then((request) => request(axios, basePath));
64062
+ },
64063
+ /**
64064
+ * Returns analytics results for an experiment from ClickHouse, including per-variant metrics, lifts, and statistical significance.
64065
+ * @summary Get experiment results
64066
+ * @param {string} id Experiment ID (slug)
64067
+ * @param {*} [options] Override http request option.
64068
+ * @throws {RequiredError}
64069
+ */
64070
+ v1AdminExperimentsIdResultsGet(id: string, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesExperimentResults> {
64071
+ return localVarFp.v1AdminExperimentsIdResultsGet(id, options).then((request) => request(axios, basePath));
64072
+ },
64073
+ /**
64074
+ * Transitions a draft or paused experiment to running status.
64075
+ * @summary Start an experiment
64076
+ * @param {string} id Experiment ID (slug)
64077
+ * @param {*} [options] Override http request option.
64078
+ * @throws {RequiredError}
64079
+ */
64080
+ v1AdminExperimentsIdStartPost(id: string, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesResponse> {
64081
+ return localVarFp.v1AdminExperimentsIdStartPost(id, options).then((request) => request(axios, basePath));
64082
+ },
64083
+ /**
64084
+ * Creates a new A/B test experiment in draft status.
64085
+ * @summary Create a new experiment
64086
+ * @param {DataTypesCreateExperimentRequest} dataTypesCreateExperimentRequest Experiment data
64087
+ * @param {*} [options] Override http request option.
64088
+ * @throws {RequiredError}
64089
+ */
64090
+ v1AdminExperimentsPost(dataTypesCreateExperimentRequest: DataTypesCreateExperimentRequest, options?: RawAxiosRequestConfig): AxiosPromise<DataTypesExperiment> {
64091
+ return localVarFp.v1AdminExperimentsPost(dataTypesCreateExperimentRequest, options).then((request) => request(axios, basePath));
64092
+ },
64093
+ /**
64094
+ * Returns variant assignments for all running experiments for the requesting user. Uses hash-based consistent assignment.
64095
+ * @summary Get experiment assignments for a user
64096
+ * @param {string} xStoreid Store ID
64097
+ * @param {string} [xUserId] User ID (provide either x-user-id or x-anon-id)
64098
+ * @param {string} [xAnonId] Anonymous ID (provide either x-user-id or x-anon-id)
64099
+ * @param {*} [options] Override http request option.
64100
+ * @throws {RequiredError}
64101
+ */
64102
+ v1ExperimentsAssignmentGet(xStoreid: string, xUserId?: string, xAnonId?: string, options?: RawAxiosRequestConfig): AxiosPromise<{ [key: string]: Array<DataTypesExperimentAssignment>; }> {
64103
+ return localVarFp.v1ExperimentsAssignmentGet(xStoreid, xUserId, xAnonId, options).then((request) => request(axios, basePath));
64104
+ },
64105
+ };
64106
+ };
64107
+
64108
+ /**
64109
+ * ExperimentsApi - object-oriented interface
64110
+ * @export
64111
+ * @class ExperimentsApi
64112
+ * @extends {BaseAPI}
64113
+ */
64114
+ export class ExperimentsApi extends BaseAPI {
64115
+ /**
64116
+ * Returns all experiments for the authenticated organization, optionally filtered by store.
64117
+ * @summary List all experiments
64118
+ * @param {*} [options] Override http request option.
64119
+ * @throws {RequiredError}
64120
+ * @memberof ExperimentsApi
64121
+ */
64122
+ public v1AdminExperimentsGet(options?: RawAxiosRequestConfig) {
64123
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsGet(options).then((request) => request(this.axios, this.basePath));
64124
+ }
64125
+
64126
+ /**
64127
+ * Transitions a running or paused experiment to completed status, optionally declaring a winner.
64128
+ * @summary Complete an experiment
64129
+ * @param {string} id Experiment ID (slug)
64130
+ * @param {object} [body] Optional winner variant ID
64131
+ * @param {*} [options] Override http request option.
64132
+ * @throws {RequiredError}
64133
+ * @memberof ExperimentsApi
64134
+ */
64135
+ public v1AdminExperimentsIdCompletePost(id: string, body?: object, options?: RawAxiosRequestConfig) {
64136
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdCompletePost(id, body, options).then((request) => request(this.axios, this.basePath));
64137
+ }
64138
+
64139
+ /**
64140
+ * Deletes an experiment. Only experiments in draft status can be deleted.
64141
+ * @summary Delete a draft experiment
64142
+ * @param {string} id Experiment ID (slug)
64143
+ * @param {*} [options] Override http request option.
64144
+ * @throws {RequiredError}
64145
+ * @memberof ExperimentsApi
64146
+ */
64147
+ public v1AdminExperimentsIdDelete(id: string, options?: RawAxiosRequestConfig) {
64148
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdDelete(id, options).then((request) => request(this.axios, this.basePath));
64149
+ }
64150
+
64151
+ /**
64152
+ * Returns a single experiment by its experiment_id slug.
64153
+ * @summary Get experiment by ID
64154
+ * @param {string} id Experiment ID (slug)
64155
+ * @param {*} [options] Override http request option.
64156
+ * @throws {RequiredError}
64157
+ * @memberof ExperimentsApi
64158
+ */
64159
+ public v1AdminExperimentsIdGet(id: string, options?: RawAxiosRequestConfig) {
64160
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdGet(id, options).then((request) => request(this.axios, this.basePath));
64161
+ }
64162
+
64163
+ /**
64164
+ * Transitions a running experiment to paused status.
64165
+ * @summary Pause an experiment
64166
+ * @param {string} id Experiment ID (slug)
64167
+ * @param {*} [options] Override http request option.
64168
+ * @throws {RequiredError}
64169
+ * @memberof ExperimentsApi
64170
+ */
64171
+ public v1AdminExperimentsIdPausePost(id: string, options?: RawAxiosRequestConfig) {
64172
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdPausePost(id, options).then((request) => request(this.axios, this.basePath));
64173
+ }
64174
+
64175
+ /**
64176
+ * Updates an existing experiment. Only draft experiments can be fully updated.
64177
+ * @summary Update an experiment
64178
+ * @param {string} id Experiment ID (slug)
64179
+ * @param {DataTypesUpdateExperimentRequest} dataTypesUpdateExperimentRequest Fields to update
64180
+ * @param {*} [options] Override http request option.
64181
+ * @throws {RequiredError}
64182
+ * @memberof ExperimentsApi
64183
+ */
64184
+ public v1AdminExperimentsIdPut(id: string, dataTypesUpdateExperimentRequest: DataTypesUpdateExperimentRequest, options?: RawAxiosRequestConfig) {
64185
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdPut(id, dataTypesUpdateExperimentRequest, options).then((request) => request(this.axios, this.basePath));
64186
+ }
64187
+
64188
+ /**
64189
+ * Returns analytics results for an experiment from ClickHouse, including per-variant metrics, lifts, and statistical significance.
64190
+ * @summary Get experiment results
64191
+ * @param {string} id Experiment ID (slug)
64192
+ * @param {*} [options] Override http request option.
64193
+ * @throws {RequiredError}
64194
+ * @memberof ExperimentsApi
64195
+ */
64196
+ public v1AdminExperimentsIdResultsGet(id: string, options?: RawAxiosRequestConfig) {
64197
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdResultsGet(id, options).then((request) => request(this.axios, this.basePath));
64198
+ }
64199
+
64200
+ /**
64201
+ * Transitions a draft or paused experiment to running status.
64202
+ * @summary Start an experiment
64203
+ * @param {string} id Experiment ID (slug)
64204
+ * @param {*} [options] Override http request option.
64205
+ * @throws {RequiredError}
64206
+ * @memberof ExperimentsApi
64207
+ */
64208
+ public v1AdminExperimentsIdStartPost(id: string, options?: RawAxiosRequestConfig) {
64209
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsIdStartPost(id, options).then((request) => request(this.axios, this.basePath));
64210
+ }
64211
+
64212
+ /**
64213
+ * Creates a new A/B test experiment in draft status.
64214
+ * @summary Create a new experiment
64215
+ * @param {DataTypesCreateExperimentRequest} dataTypesCreateExperimentRequest Experiment data
64216
+ * @param {*} [options] Override http request option.
64217
+ * @throws {RequiredError}
64218
+ * @memberof ExperimentsApi
64219
+ */
64220
+ public v1AdminExperimentsPost(dataTypesCreateExperimentRequest: DataTypesCreateExperimentRequest, options?: RawAxiosRequestConfig) {
64221
+ return ExperimentsApiFp(this.configuration).v1AdminExperimentsPost(dataTypesCreateExperimentRequest, options).then((request) => request(this.axios, this.basePath));
64222
+ }
64223
+
64224
+ /**
64225
+ * Returns variant assignments for all running experiments for the requesting user. Uses hash-based consistent assignment.
64226
+ * @summary Get experiment assignments for a user
64227
+ * @param {string} xStoreid Store ID
64228
+ * @param {string} [xUserId] User ID (provide either x-user-id or x-anon-id)
64229
+ * @param {string} [xAnonId] Anonymous ID (provide either x-user-id or x-anon-id)
64230
+ * @param {*} [options] Override http request option.
64231
+ * @throws {RequiredError}
64232
+ * @memberof ExperimentsApi
64233
+ */
64234
+ public v1ExperimentsAssignmentGet(xStoreid: string, xUserId?: string, xAnonId?: string, options?: RawAxiosRequestConfig) {
64235
+ return ExperimentsApiFp(this.configuration).v1ExperimentsAssignmentGet(xStoreid, xUserId, xAnonId, options).then((request) => request(this.axios, this.basePath));
64236
+ }
64237
+ }
64238
+
64239
+
64240
+
62854
64241
  /**
62855
64242
  * ExternalAPINotificationsApi - axios parameter creator
62856
64243
  * @export