aws-sdk-cloudwatchevidently 1.0.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.
@@ -0,0 +1,3654 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::CloudWatchEvidently
11
+ module Types
12
+
13
+ # You do not have sufficient permissions to perform this action.
14
+ #
15
+ # @!attribute [rw] message
16
+ # @return [String]
17
+ #
18
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/AccessDeniedException AWS API Documentation
19
+ #
20
+ class AccessDeniedException < Struct.new(
21
+ :message)
22
+ SENSITIVE = []
23
+ include Aws::Structure
24
+ end
25
+
26
+ # @note When making an API call, you may pass BatchEvaluateFeatureRequest
27
+ # data as a hash:
28
+ #
29
+ # {
30
+ # project: "ProjectRef", # required
31
+ # requests: [ # required
32
+ # {
33
+ # entity_id: "EntityId", # required
34
+ # evaluation_context: "JsonValue",
35
+ # feature: "FeatureName", # required
36
+ # },
37
+ # ],
38
+ # }
39
+ #
40
+ # @!attribute [rw] project
41
+ # The name or ARN of the project that contains the feature being
42
+ # evaluated.
43
+ # @return [String]
44
+ #
45
+ # @!attribute [rw] requests
46
+ # An array of structures, where each structure assigns a feature
47
+ # variation to one user session.
48
+ # @return [Array<Types::EvaluationRequest>]
49
+ #
50
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/BatchEvaluateFeatureRequest AWS API Documentation
51
+ #
52
+ class BatchEvaluateFeatureRequest < Struct.new(
53
+ :project,
54
+ :requests)
55
+ SENSITIVE = []
56
+ include Aws::Structure
57
+ end
58
+
59
+ # @!attribute [rw] results
60
+ # An array of structures, where each structure displays the results of
61
+ # one feature evaluation assignment to one user session.
62
+ # @return [Array<Types::EvaluationResult>]
63
+ #
64
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/BatchEvaluateFeatureResponse AWS API Documentation
65
+ #
66
+ class BatchEvaluateFeatureResponse < Struct.new(
67
+ :results)
68
+ SENSITIVE = []
69
+ include Aws::Structure
70
+ end
71
+
72
+ # A structure containing the CloudWatch Logs log group where the project
73
+ # stores evaluation events.
74
+ #
75
+ # @!attribute [rw] log_group
76
+ # The name of the log group where the project stores evaluation
77
+ # events.
78
+ # @return [String]
79
+ #
80
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CloudWatchLogsDestination AWS API Documentation
81
+ #
82
+ class CloudWatchLogsDestination < Struct.new(
83
+ :log_group)
84
+ SENSITIVE = []
85
+ include Aws::Structure
86
+ end
87
+
88
+ # A structure containing the CloudWatch Logs log group where the project
89
+ # stores evaluation events.
90
+ #
91
+ # @note When making an API call, you may pass CloudWatchLogsDestinationConfig
92
+ # data as a hash:
93
+ #
94
+ # {
95
+ # log_group: "CwLogGroupSafeName",
96
+ # }
97
+ #
98
+ # @!attribute [rw] log_group
99
+ # The name of the log group where the project stores evaluation
100
+ # events.
101
+ # @return [String]
102
+ #
103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CloudWatchLogsDestinationConfig AWS API Documentation
104
+ #
105
+ class CloudWatchLogsDestinationConfig < Struct.new(
106
+ :log_group)
107
+ SENSITIVE = []
108
+ include Aws::Structure
109
+ end
110
+
111
+ # A resource was in an inconsistent state during an update or a
112
+ # deletion.
113
+ #
114
+ # @!attribute [rw] message
115
+ # @return [String]
116
+ #
117
+ # @!attribute [rw] resource_id
118
+ # The ID of the resource that caused the exception.
119
+ # @return [String]
120
+ #
121
+ # @!attribute [rw] resource_type
122
+ # The type of the resource that is associated with the error.
123
+ # @return [String]
124
+ #
125
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ConflictException AWS API Documentation
126
+ #
127
+ class ConflictException < Struct.new(
128
+ :message,
129
+ :resource_id,
130
+ :resource_type)
131
+ SENSITIVE = []
132
+ include Aws::Structure
133
+ end
134
+
135
+ # @note When making an API call, you may pass CreateExperimentRequest
136
+ # data as a hash:
137
+ #
138
+ # {
139
+ # description: "Description",
140
+ # metric_goals: [ # required
141
+ # {
142
+ # desired_change: "INCREASE", # accepts INCREASE, DECREASE
143
+ # metric_definition: { # required
144
+ # entity_id_key: "JsonPath",
145
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
146
+ # name: "CwDimensionSafeName",
147
+ # unit_label: "MetricUnitLabel",
148
+ # value_key: "JsonPath",
149
+ # },
150
+ # },
151
+ # ],
152
+ # name: "ExperimentName", # required
153
+ # online_ab_config: {
154
+ # control_treatment_name: "TreatmentName",
155
+ # treatment_weights: {
156
+ # "TreatmentName" => 1,
157
+ # },
158
+ # },
159
+ # project: "ProjectRef", # required
160
+ # randomization_salt: "RandomizationSalt",
161
+ # sampling_rate: 1,
162
+ # tags: {
163
+ # "TagKey" => "TagValue",
164
+ # },
165
+ # treatments: [ # required
166
+ # {
167
+ # description: "Description",
168
+ # feature: "FeatureName", # required
169
+ # name: "TreatmentName", # required
170
+ # variation: "VariationName", # required
171
+ # },
172
+ # ],
173
+ # }
174
+ #
175
+ # @!attribute [rw] description
176
+ # An optional description of the experiment.
177
+ # @return [String]
178
+ #
179
+ # @!attribute [rw] metric_goals
180
+ # An array of structures that defines the metrics used for the
181
+ # experiment, and whether a higher or lower value for each metric is
182
+ # the goal.
183
+ # @return [Array<Types::MetricGoalConfig>]
184
+ #
185
+ # @!attribute [rw] name
186
+ # A name for the new experiment.
187
+ # @return [String]
188
+ #
189
+ # @!attribute [rw] online_ab_config
190
+ # A structure that contains the configuration of which variation to
191
+ # use as the "control" version. tThe "control" version is used for
192
+ # comparison with other variations. This structure also specifies how
193
+ # much experiment traffic is allocated to each variation.
194
+ # @return [Types::OnlineAbConfig]
195
+ #
196
+ # @!attribute [rw] project
197
+ # The name or ARN of the project that you want to create the new
198
+ # experiment in.
199
+ # @return [String]
200
+ #
201
+ # @!attribute [rw] randomization_salt
202
+ # When Evidently assigns a particular user session to an experiment,
203
+ # it must use a randomization ID to determine which variation the user
204
+ # session is served. This randomization ID is a combination of the
205
+ # entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
206
+ # Evidently uses the experiment name as the `randomizationSalt`.
207
+ # @return [String]
208
+ #
209
+ # @!attribute [rw] sampling_rate
210
+ # The portion of the available audience that you want to allocate to
211
+ # this experiment, in thousandths of a percent. The available audience
212
+ # is the total audience minus the audience that you have allocated to
213
+ # overrides or current launches of this feature.
214
+ #
215
+ # This is represented in thousandths of a percent. For example,
216
+ # specify 10,000 to allocate 10% of the available audience.
217
+ # @return [Integer]
218
+ #
219
+ # @!attribute [rw] tags
220
+ # Assigns one or more tags (key-value pairs) to the experiment.
221
+ #
222
+ # Tags can help you organize and categorize your resources. You can
223
+ # also use them to scope user permissions by granting a user
224
+ # permission to access or change only resources with certain tag
225
+ # values.
226
+ #
227
+ # Tags don't have any semantic meaning to Amazon Web Services and are
228
+ # interpreted strictly as strings of characters.
229
+ #
230
+ # <p>You can associate as many as 50 tags with an experiment.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a>.</p>
231
+ # @return [Hash<String,String>]
232
+ #
233
+ # @!attribute [rw] treatments
234
+ # An array of structures that describe the configuration of each
235
+ # feature variation used in the experiment.
236
+ # @return [Array<Types::TreatmentConfig>]
237
+ #
238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateExperimentRequest AWS API Documentation
239
+ #
240
+ class CreateExperimentRequest < Struct.new(
241
+ :description,
242
+ :metric_goals,
243
+ :name,
244
+ :online_ab_config,
245
+ :project,
246
+ :randomization_salt,
247
+ :sampling_rate,
248
+ :tags,
249
+ :treatments)
250
+ SENSITIVE = []
251
+ include Aws::Structure
252
+ end
253
+
254
+ # @!attribute [rw] experiment
255
+ # A structure containing the configuration details of the experiment
256
+ # that you created.
257
+ # @return [Types::Experiment]
258
+ #
259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateExperimentResponse AWS API Documentation
260
+ #
261
+ class CreateExperimentResponse < Struct.new(
262
+ :experiment)
263
+ SENSITIVE = []
264
+ include Aws::Structure
265
+ end
266
+
267
+ # @note When making an API call, you may pass CreateFeatureRequest
268
+ # data as a hash:
269
+ #
270
+ # {
271
+ # default_variation: "VariationName",
272
+ # description: "Description",
273
+ # entity_overrides: {
274
+ # "EntityId" => "VariationName",
275
+ # },
276
+ # evaluation_strategy: "ALL_RULES", # accepts ALL_RULES, DEFAULT_VARIATION
277
+ # name: "FeatureName", # required
278
+ # project: "ProjectRef", # required
279
+ # tags: {
280
+ # "TagKey" => "TagValue",
281
+ # },
282
+ # variations: [ # required
283
+ # {
284
+ # name: "VariationName", # required
285
+ # value: { # required
286
+ # bool_value: false,
287
+ # double_value: 1.0,
288
+ # long_value: 1,
289
+ # string_value: "VariableValueStringValueString",
290
+ # },
291
+ # },
292
+ # ],
293
+ # }
294
+ #
295
+ # @!attribute [rw] default_variation
296
+ # The name of the variation to use as the default variation. The
297
+ # default variation is served to users who are not allocated to any
298
+ # ongoing launches or experiments of this feature.
299
+ #
300
+ # This variation must also be listed in the `variations` structure.
301
+ #
302
+ # If you omit `defaultVariation`, the first variation listed in the
303
+ # `variations` structure is used as the default variation.
304
+ # @return [String]
305
+ #
306
+ # @!attribute [rw] description
307
+ # An optional description of the feature.
308
+ # @return [String]
309
+ #
310
+ # @!attribute [rw] entity_overrides
311
+ # Specify users that should always be served a specific variation of a
312
+ # feature. Each user is specified by a key-value pair . For each key,
313
+ # specify a user by entering their user ID, account ID, or some other
314
+ # identifier. For the value, specify the name of the variation that
315
+ # they are to be served.
316
+ # @return [Hash<String,String>]
317
+ #
318
+ # @!attribute [rw] evaluation_strategy
319
+ # Specify `ALL_RULES` to activate the traffic allocation specified by
320
+ # any ongoing launches or experiments. Specify `DEFAULT_VARIATION` to
321
+ # serve the default variation to all users instead.
322
+ # @return [String]
323
+ #
324
+ # @!attribute [rw] name
325
+ # The name for the new feature.
326
+ # @return [String]
327
+ #
328
+ # @!attribute [rw] project
329
+ # The name or ARN of the project that is to contain the new feature.
330
+ # @return [String]
331
+ #
332
+ # @!attribute [rw] tags
333
+ # Assigns one or more tags (key-value pairs) to the feature.
334
+ #
335
+ # Tags can help you organize and categorize your resources. You can
336
+ # also use them to scope user permissions by granting a user
337
+ # permission to access or change only resources with certain tag
338
+ # values.
339
+ #
340
+ # Tags don't have any semantic meaning to Amazon Web Services and are
341
+ # interpreted strictly as strings of characters.
342
+ #
343
+ # <p>You can associate as many as 50 tags with a feature.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a>.</p>
344
+ # @return [Hash<String,String>]
345
+ #
346
+ # @!attribute [rw] variations
347
+ # An array of structures that contain the configuration of the
348
+ # feature's different variations.
349
+ # @return [Array<Types::VariationConfig>]
350
+ #
351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateFeatureRequest AWS API Documentation
352
+ #
353
+ class CreateFeatureRequest < Struct.new(
354
+ :default_variation,
355
+ :description,
356
+ :entity_overrides,
357
+ :evaluation_strategy,
358
+ :name,
359
+ :project,
360
+ :tags,
361
+ :variations)
362
+ SENSITIVE = []
363
+ include Aws::Structure
364
+ end
365
+
366
+ # @!attribute [rw] feature
367
+ # A structure that contains information about the new feature.
368
+ # @return [Types::Feature]
369
+ #
370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateFeatureResponse AWS API Documentation
371
+ #
372
+ class CreateFeatureResponse < Struct.new(
373
+ :feature)
374
+ SENSITIVE = []
375
+ include Aws::Structure
376
+ end
377
+
378
+ # @note When making an API call, you may pass CreateLaunchRequest
379
+ # data as a hash:
380
+ #
381
+ # {
382
+ # description: "Description",
383
+ # groups: [ # required
384
+ # {
385
+ # description: "Description",
386
+ # feature: "FeatureName", # required
387
+ # name: "GroupName", # required
388
+ # variation: "VariationName", # required
389
+ # },
390
+ # ],
391
+ # metric_monitors: [
392
+ # {
393
+ # metric_definition: { # required
394
+ # entity_id_key: "JsonPath",
395
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
396
+ # name: "CwDimensionSafeName",
397
+ # unit_label: "MetricUnitLabel",
398
+ # value_key: "JsonPath",
399
+ # },
400
+ # },
401
+ # ],
402
+ # name: "LaunchName", # required
403
+ # project: "ProjectRef", # required
404
+ # randomization_salt: "RandomizationSalt",
405
+ # scheduled_splits_config: {
406
+ # steps: [ # required
407
+ # {
408
+ # group_weights: { # required
409
+ # "GroupName" => 1,
410
+ # },
411
+ # start_time: Time.now, # required
412
+ # },
413
+ # ],
414
+ # },
415
+ # tags: {
416
+ # "TagKey" => "TagValue",
417
+ # },
418
+ # }
419
+ #
420
+ # @!attribute [rw] description
421
+ # An optional description for the launch.
422
+ # @return [String]
423
+ #
424
+ # @!attribute [rw] groups
425
+ # An array of structures that contains the feature and variations that
426
+ # are to be used for the launch.
427
+ # @return [Array<Types::LaunchGroupConfig>]
428
+ #
429
+ # @!attribute [rw] metric_monitors
430
+ # An array of structures that define the metrics that will be used to
431
+ # monitor the launch performance.
432
+ # @return [Array<Types::MetricMonitorConfig>]
433
+ #
434
+ # @!attribute [rw] name
435
+ # The name for the new launch.
436
+ # @return [String]
437
+ #
438
+ # @!attribute [rw] project
439
+ # The name or ARN of the project that you want to create the launch
440
+ # in.
441
+ # @return [String]
442
+ #
443
+ # @!attribute [rw] randomization_salt
444
+ # When Evidently assigns a particular user session to a launch, it
445
+ # must use a randomization ID to determine which variation the user
446
+ # session is served. This randomization ID is a combination of the
447
+ # entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
448
+ # Evidently uses the launch name as the `randomizationsSalt`.
449
+ # @return [String]
450
+ #
451
+ # @!attribute [rw] scheduled_splits_config
452
+ # An array of structures that define the traffic allocation
453
+ # percentages among the feature variations during each step of the
454
+ # launch.
455
+ # @return [Types::ScheduledSplitsLaunchConfig]
456
+ #
457
+ # @!attribute [rw] tags
458
+ # Assigns one or more tags (key-value pairs) to the launch.
459
+ #
460
+ # Tags can help you organize and categorize your resources. You can
461
+ # also use them to scope user permissions by granting a user
462
+ # permission to access or change only resources with certain tag
463
+ # values.
464
+ #
465
+ # Tags don't have any semantic meaning to Amazon Web Services and are
466
+ # interpreted strictly as strings of characters.
467
+ #
468
+ # <p>You can associate as many as 50 tags with a launch.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a>.</p>
469
+ # @return [Hash<String,String>]
470
+ #
471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateLaunchRequest AWS API Documentation
472
+ #
473
+ class CreateLaunchRequest < Struct.new(
474
+ :description,
475
+ :groups,
476
+ :metric_monitors,
477
+ :name,
478
+ :project,
479
+ :randomization_salt,
480
+ :scheduled_splits_config,
481
+ :tags)
482
+ SENSITIVE = []
483
+ include Aws::Structure
484
+ end
485
+
486
+ # @!attribute [rw] launch
487
+ # A structure that contains the configuration of the launch that was
488
+ # created.
489
+ # @return [Types::Launch]
490
+ #
491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateLaunchResponse AWS API Documentation
492
+ #
493
+ class CreateLaunchResponse < Struct.new(
494
+ :launch)
495
+ SENSITIVE = []
496
+ include Aws::Structure
497
+ end
498
+
499
+ # @note When making an API call, you may pass CreateProjectRequest
500
+ # data as a hash:
501
+ #
502
+ # {
503
+ # data_delivery: {
504
+ # cloud_watch_logs: {
505
+ # log_group: "CwLogGroupSafeName",
506
+ # },
507
+ # s3_destination: {
508
+ # bucket: "S3BucketSafeName",
509
+ # prefix: "S3PrefixSafeName",
510
+ # },
511
+ # },
512
+ # description: "Description",
513
+ # name: "ProjectName", # required
514
+ # tags: {
515
+ # "TagKey" => "TagValue",
516
+ # },
517
+ # }
518
+ #
519
+ # @!attribute [rw] data_delivery
520
+ # A structure that contains information about where Evidently is to
521
+ # store evaluation events for longer term storage, if you choose to do
522
+ # so. If you choose not to store these events, Evidently deletes them
523
+ # after using them to produce metrics and other experiment results
524
+ # that you can view.
525
+ # @return [Types::ProjectDataDeliveryConfig]
526
+ #
527
+ # @!attribute [rw] description
528
+ # An optional description of the project.
529
+ # @return [String]
530
+ #
531
+ # @!attribute [rw] name
532
+ # The name for the project.
533
+ # @return [String]
534
+ #
535
+ # @!attribute [rw] tags
536
+ # Assigns one or more tags (key-value pairs) to the project.
537
+ #
538
+ # Tags can help you organize and categorize your resources. You can
539
+ # also use them to scope user permissions by granting a user
540
+ # permission to access or change only resources with certain tag
541
+ # values.
542
+ #
543
+ # Tags don't have any semantic meaning to Amazon Web Services and are
544
+ # interpreted strictly as strings of characters.
545
+ #
546
+ # <p>You can associate as many as 50 tags with a project.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a>.</p>
547
+ # @return [Hash<String,String>]
548
+ #
549
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateProjectRequest AWS API Documentation
550
+ #
551
+ class CreateProjectRequest < Struct.new(
552
+ :data_delivery,
553
+ :description,
554
+ :name,
555
+ :tags)
556
+ SENSITIVE = []
557
+ include Aws::Structure
558
+ end
559
+
560
+ # @!attribute [rw] project
561
+ # A structure that contains information about the created project.
562
+ # @return [Types::Project]
563
+ #
564
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateProjectResponse AWS API Documentation
565
+ #
566
+ class CreateProjectResponse < Struct.new(
567
+ :project)
568
+ SENSITIVE = []
569
+ include Aws::Structure
570
+ end
571
+
572
+ # @note When making an API call, you may pass DeleteExperimentRequest
573
+ # data as a hash:
574
+ #
575
+ # {
576
+ # experiment: "ExperimentName", # required
577
+ # project: "ProjectRef", # required
578
+ # }
579
+ #
580
+ # @!attribute [rw] experiment
581
+ # The name of the experiment to delete.
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] project
585
+ # The name or ARN of the project that contains the experiment to
586
+ # delete.
587
+ # @return [String]
588
+ #
589
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteExperimentRequest AWS API Documentation
590
+ #
591
+ class DeleteExperimentRequest < Struct.new(
592
+ :experiment,
593
+ :project)
594
+ SENSITIVE = []
595
+ include Aws::Structure
596
+ end
597
+
598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteExperimentResponse AWS API Documentation
599
+ #
600
+ class DeleteExperimentResponse < Aws::EmptyStructure; end
601
+
602
+ # @note When making an API call, you may pass DeleteFeatureRequest
603
+ # data as a hash:
604
+ #
605
+ # {
606
+ # feature: "FeatureName", # required
607
+ # project: "ProjectRef", # required
608
+ # }
609
+ #
610
+ # @!attribute [rw] feature
611
+ # The name of the feature to delete.
612
+ # @return [String]
613
+ #
614
+ # @!attribute [rw] project
615
+ # The name or ARN of the project that contains the feature to delete.
616
+ # @return [String]
617
+ #
618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteFeatureRequest AWS API Documentation
619
+ #
620
+ class DeleteFeatureRequest < Struct.new(
621
+ :feature,
622
+ :project)
623
+ SENSITIVE = []
624
+ include Aws::Structure
625
+ end
626
+
627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteFeatureResponse AWS API Documentation
628
+ #
629
+ class DeleteFeatureResponse < Aws::EmptyStructure; end
630
+
631
+ # @note When making an API call, you may pass DeleteLaunchRequest
632
+ # data as a hash:
633
+ #
634
+ # {
635
+ # launch: "LaunchName", # required
636
+ # project: "ProjectRef", # required
637
+ # }
638
+ #
639
+ # @!attribute [rw] launch
640
+ # The name of the launch to delete.
641
+ # @return [String]
642
+ #
643
+ # @!attribute [rw] project
644
+ # The name or ARN of the project that contains the launch to delete.
645
+ # @return [String]
646
+ #
647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteLaunchRequest AWS API Documentation
648
+ #
649
+ class DeleteLaunchRequest < Struct.new(
650
+ :launch,
651
+ :project)
652
+ SENSITIVE = []
653
+ include Aws::Structure
654
+ end
655
+
656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteLaunchResponse AWS API Documentation
657
+ #
658
+ class DeleteLaunchResponse < Aws::EmptyStructure; end
659
+
660
+ # @note When making an API call, you may pass DeleteProjectRequest
661
+ # data as a hash:
662
+ #
663
+ # {
664
+ # project: "ProjectRef", # required
665
+ # }
666
+ #
667
+ # @!attribute [rw] project
668
+ # The name or ARN of the project to delete.
669
+ # @return [String]
670
+ #
671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteProjectRequest AWS API Documentation
672
+ #
673
+ class DeleteProjectRequest < Struct.new(
674
+ :project)
675
+ SENSITIVE = []
676
+ include Aws::Structure
677
+ end
678
+
679
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteProjectResponse AWS API Documentation
680
+ #
681
+ class DeleteProjectResponse < Aws::EmptyStructure; end
682
+
683
+ # @note When making an API call, you may pass EvaluateFeatureRequest
684
+ # data as a hash:
685
+ #
686
+ # {
687
+ # entity_id: "EntityId", # required
688
+ # evaluation_context: "JsonValue",
689
+ # feature: "FeatureName", # required
690
+ # project: "ProjectRef", # required
691
+ # }
692
+ #
693
+ # @!attribute [rw] entity_id
694
+ # An internal ID that represents a unique user of the application.
695
+ # This `entityID` is checked against any override rules assigned for
696
+ # this feature.
697
+ # @return [String]
698
+ #
699
+ # @!attribute [rw] evaluation_context
700
+ # A JSON block of attributes that you can optionally pass in. This
701
+ # JSON block is included in the evaluation events sent to Evidently
702
+ # from the user session.
703
+ # @return [String]
704
+ #
705
+ # @!attribute [rw] feature
706
+ # The name of the feature being evaluated.
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] project
710
+ # The name or ARN of the project that contains this feature.
711
+ # @return [String]
712
+ #
713
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluateFeatureRequest AWS API Documentation
714
+ #
715
+ class EvaluateFeatureRequest < Struct.new(
716
+ :entity_id,
717
+ :evaluation_context,
718
+ :feature,
719
+ :project)
720
+ SENSITIVE = []
721
+ include Aws::Structure
722
+ end
723
+
724
+ # @!attribute [rw] details
725
+ # If this user was assigned to a launch or experiment, this field
726
+ # lists the launch or experiment name.
727
+ # @return [String]
728
+ #
729
+ # @!attribute [rw] reason
730
+ # Specifies the reason that the user session was assigned this
731
+ # variation. Possible values include `DEFAULT`, meaning the user was
732
+ # served the default variation; `LAUNCH_RULE_MATCH`, if the user
733
+ # session was enrolled in a launch; `EXPERIMENT_RULE_MATCH`, if the
734
+ # user session was enrolled in an experiment; or
735
+ # `ENTITY_OVERRIDES_MATCH`, if the user's `entityId` matches an
736
+ # override rule.
737
+ # @return [String]
738
+ #
739
+ # @!attribute [rw] value
740
+ # The value assigned to this variation to differentiate it from the
741
+ # other variations of this feature.
742
+ # @return [Types::VariableValue]
743
+ #
744
+ # @!attribute [rw] variation
745
+ # The name of the variation that was served to the user session.
746
+ # @return [String]
747
+ #
748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluateFeatureResponse AWS API Documentation
749
+ #
750
+ class EvaluateFeatureResponse < Struct.new(
751
+ :details,
752
+ :reason,
753
+ :value,
754
+ :variation)
755
+ SENSITIVE = []
756
+ include Aws::Structure
757
+ end
758
+
759
+ # This structure assigns a feature variation to one user session.
760
+ #
761
+ # @note When making an API call, you may pass EvaluationRequest
762
+ # data as a hash:
763
+ #
764
+ # {
765
+ # entity_id: "EntityId", # required
766
+ # evaluation_context: "JsonValue",
767
+ # feature: "FeatureName", # required
768
+ # }
769
+ #
770
+ # @!attribute [rw] entity_id
771
+ # An internal ID that represents a unique user session of the
772
+ # application. This `entityID` is checked against any override rules
773
+ # assigned for this feature.
774
+ # @return [String]
775
+ #
776
+ # @!attribute [rw] evaluation_context
777
+ # A JSON block of attributes that you can optionally pass in. This
778
+ # JSON block is included in the evaluation events sent to Evidently
779
+ # from the user session.
780
+ # @return [String]
781
+ #
782
+ # @!attribute [rw] feature
783
+ # The name of the feature being evaluated.
784
+ # @return [String]
785
+ #
786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluationRequest AWS API Documentation
787
+ #
788
+ class EvaluationRequest < Struct.new(
789
+ :entity_id,
790
+ :evaluation_context,
791
+ :feature)
792
+ SENSITIVE = []
793
+ include Aws::Structure
794
+ end
795
+
796
+ # This structure displays the results of one feature evaluation
797
+ # assignment to one user session.
798
+ #
799
+ # @!attribute [rw] details
800
+ # If this user was assigned to a launch or experiment, this field
801
+ # lists the launch or experiment name.
802
+ # @return [String]
803
+ #
804
+ # @!attribute [rw] entity_id
805
+ # An internal ID that represents a unique user session of the
806
+ # application.
807
+ # @return [String]
808
+ #
809
+ # @!attribute [rw] feature
810
+ # The name of the feature being evaluated.
811
+ # @return [String]
812
+ #
813
+ # @!attribute [rw] project
814
+ # The name or ARN of the project that contains the feature being
815
+ # evaluated.
816
+ # @return [String]
817
+ #
818
+ # @!attribute [rw] reason
819
+ # Specifies the reason that the user session was assigned this
820
+ # variation. Possible values include `DEFAULT`, meaning the user was
821
+ # served the default variation; `LAUNCH_RULE_MATCH`, if the user
822
+ # session was enrolled in a launch; or `EXPERIMENT_RULE_MATCH`, if the
823
+ # user session was enrolled in an experiment.
824
+ # @return [String]
825
+ #
826
+ # @!attribute [rw] value
827
+ # The value assigned to this variation to differentiate it from the
828
+ # other variations of this feature.
829
+ # @return [Types::VariableValue]
830
+ #
831
+ # @!attribute [rw] variation
832
+ # The name of the variation that was served to the user session.
833
+ # @return [String]
834
+ #
835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluationResult AWS API Documentation
836
+ #
837
+ class EvaluationResult < Struct.new(
838
+ :details,
839
+ :entity_id,
840
+ :feature,
841
+ :project,
842
+ :reason,
843
+ :value,
844
+ :variation)
845
+ SENSITIVE = []
846
+ include Aws::Structure
847
+ end
848
+
849
+ # A structure that contains the information about an evaluation rule for
850
+ # this feature, if it is used in a launch or experiment.
851
+ #
852
+ # @!attribute [rw] name
853
+ # The name of the experiment or launch.
854
+ # @return [String]
855
+ #
856
+ # @!attribute [rw] type
857
+ # This value is `aws.evidently.splits` if this is an evaluation rule
858
+ # for a launch, and it is `aws.evidently.onlineab` if this is an
859
+ # evaluation rule for an experiment.
860
+ # @return [String]
861
+ #
862
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluationRule AWS API Documentation
863
+ #
864
+ class EvaluationRule < Struct.new(
865
+ :name,
866
+ :type)
867
+ SENSITIVE = []
868
+ include Aws::Structure
869
+ end
870
+
871
+ # A structure that contains the information about one evaluation event
872
+ # or custom event sent to Evidently. This is a JSON payload. If this
873
+ # event specifies a pre-defined event type, the payload must follow the
874
+ # defined event schema.
875
+ #
876
+ # @note When making an API call, you may pass Event
877
+ # data as a hash:
878
+ #
879
+ # {
880
+ # data: "JsonValue", # required
881
+ # timestamp: Time.now, # required
882
+ # type: "aws.evidently.evaluation", # required, accepts aws.evidently.evaluation, aws.evidently.custom
883
+ # }
884
+ #
885
+ # @!attribute [rw] data
886
+ # The event data.
887
+ # @return [String]
888
+ #
889
+ # @!attribute [rw] timestamp
890
+ # The timestamp of the event.
891
+ # @return [Time]
892
+ #
893
+ # @!attribute [rw] type
894
+ # `aws.evidently.evaluation` specifies an evaluation event, which
895
+ # determines which feature variation that a user sees.
896
+ # `aws.evidently.custom` specifies a custom event, which generates
897
+ # metrics from user actions such as clicks and checkouts.
898
+ # @return [String]
899
+ #
900
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Event AWS API Documentation
901
+ #
902
+ class Event < Struct.new(
903
+ :data,
904
+ :timestamp,
905
+ :type)
906
+ SENSITIVE = []
907
+ include Aws::Structure
908
+ end
909
+
910
+ # A structure containing the configuration details of an experiment.
911
+ #
912
+ # @!attribute [rw] arn
913
+ # The ARN of the experiment.
914
+ # @return [String]
915
+ #
916
+ # @!attribute [rw] created_time
917
+ # The date and time that the experiment is first created.
918
+ # @return [Time]
919
+ #
920
+ # @!attribute [rw] description
921
+ # A description of the experiment.
922
+ # @return [String]
923
+ #
924
+ # @!attribute [rw] execution
925
+ # A structure that contains the date and time that the experiment
926
+ # started and ended.
927
+ # @return [Types::ExperimentExecution]
928
+ #
929
+ # @!attribute [rw] last_updated_time
930
+ # The date and time that the experiment was most recently updated.
931
+ # @return [Time]
932
+ #
933
+ # @!attribute [rw] metric_goals
934
+ # An array of structures that defines the metrics used for the
935
+ # experiment, and whether a higher or lower value for each metric is
936
+ # the goal.
937
+ # @return [Array<Types::MetricGoal>]
938
+ #
939
+ # @!attribute [rw] name
940
+ # The name of the experiment.
941
+ # @return [String]
942
+ #
943
+ # @!attribute [rw] online_ab_definition
944
+ # A structure that contains the configuration of which variation to
945
+ # use as the "control" version. The "control" version is used for
946
+ # comparison with other variations. This structure also specifies how
947
+ # much experiment traffic is allocated to each variation.
948
+ # @return [Types::OnlineAbDefinition]
949
+ #
950
+ # @!attribute [rw] project
951
+ # The name or ARN of the project that contains this experiment.
952
+ # @return [String]
953
+ #
954
+ # @!attribute [rw] randomization_salt
955
+ # This value is used when Evidently assigns a particular user session
956
+ # to the experiment. It helps create a randomization ID to determine
957
+ # which variation the user session is served. This randomization ID is
958
+ # a combination of the entity ID and `randomizationSalt`.
959
+ # @return [String]
960
+ #
961
+ # @!attribute [rw] sampling_rate
962
+ # In thousandths of a percent, the amount of the available audience
963
+ # that is allocated to this experiment. The available audience is the
964
+ # total audience minus the audience that you have allocated to
965
+ # overrides or current launches of this feature.
966
+ #
967
+ # This is represented in thousandths of a percent, so a value of
968
+ # 10,000 is 10% of the available audience.
969
+ # @return [Integer]
970
+ #
971
+ # @!attribute [rw] schedule
972
+ # A structure that contains the time and date that Evidently completed
973
+ # the analysis of the experiment.
974
+ # @return [Types::ExperimentSchedule]
975
+ #
976
+ # @!attribute [rw] status
977
+ # The current state of the experiment.
978
+ # @return [String]
979
+ #
980
+ # @!attribute [rw] status_reason
981
+ # If the experiment was stopped, this is the string that was entered
982
+ # by the person who stopped the experiment, to explain why it was
983
+ # stopped.
984
+ # @return [String]
985
+ #
986
+ # @!attribute [rw] tags
987
+ # The list of tag keys and values associated with this experiment.
988
+ # @return [Hash<String,String>]
989
+ #
990
+ # @!attribute [rw] treatments
991
+ # An array of structures that describe the configuration of each
992
+ # feature variation used in the experiment.
993
+ # @return [Array<Types::Treatment>]
994
+ #
995
+ # @!attribute [rw] type
996
+ # The type of this experiment. Currently, this value must be
997
+ # `aws.experiment.onlineab`.
998
+ # @return [String]
999
+ #
1000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Experiment AWS API Documentation
1001
+ #
1002
+ class Experiment < Struct.new(
1003
+ :arn,
1004
+ :created_time,
1005
+ :description,
1006
+ :execution,
1007
+ :last_updated_time,
1008
+ :metric_goals,
1009
+ :name,
1010
+ :online_ab_definition,
1011
+ :project,
1012
+ :randomization_salt,
1013
+ :sampling_rate,
1014
+ :schedule,
1015
+ :status,
1016
+ :status_reason,
1017
+ :tags,
1018
+ :treatments,
1019
+ :type)
1020
+ SENSITIVE = []
1021
+ include Aws::Structure
1022
+ end
1023
+
1024
+ # This structure contains the date and time that the experiment started
1025
+ # and ended.
1026
+ #
1027
+ # @!attribute [rw] ended_time
1028
+ # The date and time that the experiment ended.
1029
+ # @return [Time]
1030
+ #
1031
+ # @!attribute [rw] started_time
1032
+ # The date and time that the experiment started.
1033
+ # @return [Time]
1034
+ #
1035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentExecution AWS API Documentation
1036
+ #
1037
+ class ExperimentExecution < Struct.new(
1038
+ :ended_time,
1039
+ :started_time)
1040
+ SENSITIVE = []
1041
+ include Aws::Structure
1042
+ end
1043
+
1044
+ # A structure that contains results of an experiment.
1045
+ #
1046
+ # @!attribute [rw] content
1047
+ # The content of the report.
1048
+ # @return [String]
1049
+ #
1050
+ # @!attribute [rw] metric_name
1051
+ # The name of the metric that is analyzed in this experiment report.
1052
+ # @return [String]
1053
+ #
1054
+ # @!attribute [rw] report_name
1055
+ # The type of analysis used for this report.
1056
+ # @return [String]
1057
+ #
1058
+ # @!attribute [rw] treatment_name
1059
+ # The name of the variation that this report pertains to.
1060
+ # @return [String]
1061
+ #
1062
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentReport AWS API Documentation
1063
+ #
1064
+ class ExperimentReport < Struct.new(
1065
+ :content,
1066
+ :metric_name,
1067
+ :report_name,
1068
+ :treatment_name)
1069
+ SENSITIVE = []
1070
+ include Aws::Structure
1071
+ end
1072
+
1073
+ # A structure that contains experiment results for one metric that is
1074
+ # monitored in the experiment.
1075
+ #
1076
+ # @!attribute [rw] metric_name
1077
+ # The name of the metric.
1078
+ # @return [String]
1079
+ #
1080
+ # @!attribute [rw] result_stat
1081
+ # The experiment statistic that these results pertain to.
1082
+ # @return [String]
1083
+ #
1084
+ # @!attribute [rw] treatment_name
1085
+ # The treatment, or variation, that returned the `values` in this
1086
+ # structure.
1087
+ # @return [String]
1088
+ #
1089
+ # @!attribute [rw] values
1090
+ # The values for the `metricName` that were recorded in the
1091
+ # experiment.
1092
+ # @return [Array<Float>]
1093
+ #
1094
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentResultsData AWS API Documentation
1095
+ #
1096
+ class ExperimentResultsData < Struct.new(
1097
+ :metric_name,
1098
+ :result_stat,
1099
+ :treatment_name,
1100
+ :values)
1101
+ SENSITIVE = []
1102
+ include Aws::Structure
1103
+ end
1104
+
1105
+ # This structure contains the time and date that Evidently completed the
1106
+ # analysis of the experiment.
1107
+ #
1108
+ # @!attribute [rw] analysis_complete_time
1109
+ # The time and date that Evidently completed the analysis of the
1110
+ # experiment.
1111
+ # @return [Time]
1112
+ #
1113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentSchedule AWS API Documentation
1114
+ #
1115
+ class ExperimentSchedule < Struct.new(
1116
+ :analysis_complete_time)
1117
+ SENSITIVE = []
1118
+ include Aws::Structure
1119
+ end
1120
+
1121
+ # This structure contains information about one Evidently feature in
1122
+ # your account.
1123
+ #
1124
+ # @!attribute [rw] arn
1125
+ # The ARN of the feature.
1126
+ # @return [String]
1127
+ #
1128
+ # @!attribute [rw] created_time
1129
+ # The date and time that the feature is created.
1130
+ # @return [Time]
1131
+ #
1132
+ # @!attribute [rw] default_variation
1133
+ # The name of the variation that is used as the default variation. The
1134
+ # default variation is served to users who are not allocated to any
1135
+ # ongoing launches or experiments of this feature.
1136
+ #
1137
+ # This variation must also be listed in the `variations` structure.
1138
+ #
1139
+ # If you omit `defaultVariation`, the first variation listed in the
1140
+ # `variations` structure is used as the default variation.
1141
+ # @return [String]
1142
+ #
1143
+ # @!attribute [rw] description
1144
+ # The description of the feature.
1145
+ # @return [String]
1146
+ #
1147
+ # @!attribute [rw] entity_overrides
1148
+ # A set of key-value pairs that specify users who should always be
1149
+ # served a specific variation of a feature. Each key specifies a user
1150
+ # using their user ID, account ID, or some other identifier. The value
1151
+ # specifies the name of the variation that the user is to be served.
1152
+ #
1153
+ # For the override to be successful, the value of the key must match
1154
+ # the `entityId` used in the [EvaluateFeature][1] operation.
1155
+ #
1156
+ #
1157
+ #
1158
+ # [1]: https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_EvaluateFeature.html
1159
+ # @return [Hash<String,String>]
1160
+ #
1161
+ # @!attribute [rw] evaluation_rules
1162
+ # An array of structures that define the evaluation rules for the
1163
+ # feature.
1164
+ # @return [Array<Types::EvaluationRule>]
1165
+ #
1166
+ # @!attribute [rw] evaluation_strategy
1167
+ # If this value is `ALL_RULES`, the traffic allocation specified by
1168
+ # any ongoing launches or experiments is being used. If this is
1169
+ # `DEFAULT_VARIATION`, the default variation is being served to all
1170
+ # users.
1171
+ # @return [String]
1172
+ #
1173
+ # @!attribute [rw] last_updated_time
1174
+ # The date and time that the feature was most recently updated.
1175
+ # @return [Time]
1176
+ #
1177
+ # @!attribute [rw] name
1178
+ # The name of the feature.
1179
+ # @return [String]
1180
+ #
1181
+ # @!attribute [rw] project
1182
+ # The name or ARN of the project that contains the feature.
1183
+ # @return [String]
1184
+ #
1185
+ # @!attribute [rw] status
1186
+ # The current state of the feature.
1187
+ # @return [String]
1188
+ #
1189
+ # @!attribute [rw] tags
1190
+ # The list of tag keys and values associated with this feature.
1191
+ # @return [Hash<String,String>]
1192
+ #
1193
+ # @!attribute [rw] value_type
1194
+ # Defines the type of value used to define the different feature
1195
+ # variations. For more information, see [Variation types][1]
1196
+ #
1197
+ #
1198
+ #
1199
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently-variationtypes.html
1200
+ # @return [String]
1201
+ #
1202
+ # @!attribute [rw] variations
1203
+ # An array of structures that contain the configuration of the
1204
+ # feature's different variations.
1205
+ # @return [Array<Types::Variation>]
1206
+ #
1207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Feature AWS API Documentation
1208
+ #
1209
+ class Feature < Struct.new(
1210
+ :arn,
1211
+ :created_time,
1212
+ :default_variation,
1213
+ :description,
1214
+ :entity_overrides,
1215
+ :evaluation_rules,
1216
+ :evaluation_strategy,
1217
+ :last_updated_time,
1218
+ :name,
1219
+ :project,
1220
+ :status,
1221
+ :tags,
1222
+ :value_type,
1223
+ :variations)
1224
+ SENSITIVE = []
1225
+ include Aws::Structure
1226
+ end
1227
+
1228
+ # This structure contains information about one Evidently feature in
1229
+ # your account.
1230
+ #
1231
+ # @!attribute [rw] arn
1232
+ # The ARN of the feature.
1233
+ # @return [String]
1234
+ #
1235
+ # @!attribute [rw] created_time
1236
+ # The date and time that the feature is created.
1237
+ # @return [Time]
1238
+ #
1239
+ # @!attribute [rw] default_variation
1240
+ # The name of the variation that is used as the default variation. The
1241
+ # default variation is served to users who are not allocated to any
1242
+ # ongoing launches or experiments of this feature.
1243
+ # @return [String]
1244
+ #
1245
+ # @!attribute [rw] evaluation_rules
1246
+ # An array of structures that define
1247
+ # @return [Array<Types::EvaluationRule>]
1248
+ #
1249
+ # @!attribute [rw] evaluation_strategy
1250
+ # If this value is `ALL_RULES`, the traffic allocation specified by
1251
+ # any ongoing launches or experiments is being used. If this is
1252
+ # `DEFAULT_VARIATION`, the default variation is being served to all
1253
+ # users.
1254
+ # @return [String]
1255
+ #
1256
+ # @!attribute [rw] last_updated_time
1257
+ # The date and time that the feature was most recently updated.
1258
+ # @return [Time]
1259
+ #
1260
+ # @!attribute [rw] name
1261
+ # The name of the feature.
1262
+ # @return [String]
1263
+ #
1264
+ # @!attribute [rw] project
1265
+ # The name or ARN of the project that contains the feature.
1266
+ # @return [String]
1267
+ #
1268
+ # @!attribute [rw] status
1269
+ # The current state of the feature.
1270
+ # @return [String]
1271
+ #
1272
+ # @!attribute [rw] tags
1273
+ # The list of tag keys and values associated with this feature.
1274
+ # @return [Hash<String,String>]
1275
+ #
1276
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/FeatureSummary AWS API Documentation
1277
+ #
1278
+ class FeatureSummary < Struct.new(
1279
+ :arn,
1280
+ :created_time,
1281
+ :default_variation,
1282
+ :evaluation_rules,
1283
+ :evaluation_strategy,
1284
+ :last_updated_time,
1285
+ :name,
1286
+ :project,
1287
+ :status,
1288
+ :tags)
1289
+ SENSITIVE = []
1290
+ include Aws::Structure
1291
+ end
1292
+
1293
+ # @note When making an API call, you may pass GetExperimentRequest
1294
+ # data as a hash:
1295
+ #
1296
+ # {
1297
+ # experiment: "ExperimentName", # required
1298
+ # project: "ProjectRef", # required
1299
+ # }
1300
+ #
1301
+ # @!attribute [rw] experiment
1302
+ # The name of the experiment that you want to see the details of.
1303
+ # @return [String]
1304
+ #
1305
+ # @!attribute [rw] project
1306
+ # The name or ARN of the project that contains the experiment.
1307
+ # @return [String]
1308
+ #
1309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentRequest AWS API Documentation
1310
+ #
1311
+ class GetExperimentRequest < Struct.new(
1312
+ :experiment,
1313
+ :project)
1314
+ SENSITIVE = []
1315
+ include Aws::Structure
1316
+ end
1317
+
1318
+ # @!attribute [rw] experiment
1319
+ # A structure containing the configuration details of the experiment.
1320
+ # @return [Types::Experiment]
1321
+ #
1322
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentResponse AWS API Documentation
1323
+ #
1324
+ class GetExperimentResponse < Struct.new(
1325
+ :experiment)
1326
+ SENSITIVE = []
1327
+ include Aws::Structure
1328
+ end
1329
+
1330
+ # @note When making an API call, you may pass GetExperimentResultsRequest
1331
+ # data as a hash:
1332
+ #
1333
+ # {
1334
+ # base_stat: "Mean", # accepts Mean
1335
+ # end_time: Time.now,
1336
+ # experiment: "ExperimentName", # required
1337
+ # metric_names: ["CwDimensionSafeName"], # required
1338
+ # period: 1,
1339
+ # project: "ProjectRef", # required
1340
+ # report_names: ["BayesianInference"], # accepts BayesianInference
1341
+ # result_stats: ["BaseStat"], # accepts BaseStat, TreatmentEffect, ConfidenceInterval, PValue
1342
+ # start_time: Time.now,
1343
+ # treatment_names: ["TreatmentName"], # required
1344
+ # }
1345
+ #
1346
+ # @!attribute [rw] base_stat
1347
+ # The statistic used to calculate experiment results. Currently the
1348
+ # only valid value is `mean`, which uses the mean of the collected
1349
+ # values as the statistic.
1350
+ # @return [String]
1351
+ #
1352
+ # @!attribute [rw] end_time
1353
+ # The date and time that the experiment ended, if it is completed.
1354
+ # @return [Time]
1355
+ #
1356
+ # @!attribute [rw] experiment
1357
+ # The name of the experiment to retrieve the results of.
1358
+ # @return [String]
1359
+ #
1360
+ # @!attribute [rw] metric_names
1361
+ # The names of the experiment metrics that you want to see the results
1362
+ # of.
1363
+ # @return [Array<String>]
1364
+ #
1365
+ # @!attribute [rw] period
1366
+ # In seconds, the amount of time to aggregate results together.
1367
+ # @return [Integer]
1368
+ #
1369
+ # @!attribute [rw] project
1370
+ # The name or ARN of the project that contains the experiment that you
1371
+ # want to see the results of.
1372
+ # @return [String]
1373
+ #
1374
+ # @!attribute [rw] report_names
1375
+ # The names of the report types that you want to see. Currently,
1376
+ # `BayesianInference` is the only valid value.
1377
+ # @return [Array<String>]
1378
+ #
1379
+ # @!attribute [rw] result_stats
1380
+ # The statistics that you want to see in the returned results.
1381
+ #
1382
+ # * `PValue` specifies to use p-values for the results. A p-value is
1383
+ # used in hypothesis testing to measure how often you are willing to
1384
+ # make a mistake in rejecting the null hypothesis. A general
1385
+ # practice is to reject the null hypothesis and declare that the
1386
+ # results are statistically significant when the p-value is less
1387
+ # than 0.05.
1388
+ #
1389
+ # * `ConfidenceInterval` specifies a confidence interval for the
1390
+ # results. The confidence interval represents the range of values
1391
+ # for the chosen metric that is likely to contain the true
1392
+ # difference between the `baseStat` of a variation and the baseline.
1393
+ # Evidently returns the 95% confidence interval.
1394
+ #
1395
+ # * `TreatmentEffect` is the difference in the statistic specified by
1396
+ # the `baseStat` parameter between each variation and the default
1397
+ # variation.
1398
+ #
1399
+ # * `BaseStat` returns the statistical values collected for the metric
1400
+ # for each variation. The statistic uses the same statistic
1401
+ # specified in the `baseStat` parameter. Therefore, if `baseStat` is
1402
+ # `mean`, this returns the mean of the values collected for each
1403
+ # variation.
1404
+ # @return [Array<String>]
1405
+ #
1406
+ # @!attribute [rw] start_time
1407
+ # The date and time that the experiment started.
1408
+ # @return [Time]
1409
+ #
1410
+ # @!attribute [rw] treatment_names
1411
+ # The names of the experiment treatments that you want to see the
1412
+ # results for.
1413
+ # @return [Array<String>]
1414
+ #
1415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentResultsRequest AWS API Documentation
1416
+ #
1417
+ class GetExperimentResultsRequest < Struct.new(
1418
+ :base_stat,
1419
+ :end_time,
1420
+ :experiment,
1421
+ :metric_names,
1422
+ :period,
1423
+ :project,
1424
+ :report_names,
1425
+ :result_stats,
1426
+ :start_time,
1427
+ :treatment_names)
1428
+ SENSITIVE = []
1429
+ include Aws::Structure
1430
+ end
1431
+
1432
+ # @!attribute [rw] reports
1433
+ # An array of structures that include the reports that you requested.
1434
+ # @return [Array<Types::ExperimentReport>]
1435
+ #
1436
+ # @!attribute [rw] results_data
1437
+ # An array of structures that include experiment results including
1438
+ # metric names and values.
1439
+ # @return [Array<Types::ExperimentResultsData>]
1440
+ #
1441
+ # @!attribute [rw] timestamps
1442
+ # The timestamps of each result returned.
1443
+ # @return [Array<Time>]
1444
+ #
1445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentResultsResponse AWS API Documentation
1446
+ #
1447
+ class GetExperimentResultsResponse < Struct.new(
1448
+ :reports,
1449
+ :results_data,
1450
+ :timestamps)
1451
+ SENSITIVE = []
1452
+ include Aws::Structure
1453
+ end
1454
+
1455
+ # @note When making an API call, you may pass GetFeatureRequest
1456
+ # data as a hash:
1457
+ #
1458
+ # {
1459
+ # feature: "FeatureName", # required
1460
+ # project: "ProjectRef", # required
1461
+ # }
1462
+ #
1463
+ # @!attribute [rw] feature
1464
+ # The name of the feature that you want to retrieve information for.
1465
+ # @return [String]
1466
+ #
1467
+ # @!attribute [rw] project
1468
+ # The name or ARN of the project that contains the feature.
1469
+ # @return [String]
1470
+ #
1471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetFeatureRequest AWS API Documentation
1472
+ #
1473
+ class GetFeatureRequest < Struct.new(
1474
+ :feature,
1475
+ :project)
1476
+ SENSITIVE = []
1477
+ include Aws::Structure
1478
+ end
1479
+
1480
+ # @!attribute [rw] feature
1481
+ # A structure containing the configuration details of the feature.
1482
+ # @return [Types::Feature]
1483
+ #
1484
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetFeatureResponse AWS API Documentation
1485
+ #
1486
+ class GetFeatureResponse < Struct.new(
1487
+ :feature)
1488
+ SENSITIVE = []
1489
+ include Aws::Structure
1490
+ end
1491
+
1492
+ # @note When making an API call, you may pass GetLaunchRequest
1493
+ # data as a hash:
1494
+ #
1495
+ # {
1496
+ # launch: "LaunchName", # required
1497
+ # project: "ProjectRef", # required
1498
+ # }
1499
+ #
1500
+ # @!attribute [rw] launch
1501
+ # The name of the launch that you want to see the details of.
1502
+ # @return [String]
1503
+ #
1504
+ # @!attribute [rw] project
1505
+ # The name or ARN of the project that contains the launch.
1506
+ # @return [String]
1507
+ #
1508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetLaunchRequest AWS API Documentation
1509
+ #
1510
+ class GetLaunchRequest < Struct.new(
1511
+ :launch,
1512
+ :project)
1513
+ SENSITIVE = []
1514
+ include Aws::Structure
1515
+ end
1516
+
1517
+ # @!attribute [rw] launch
1518
+ # A structure containing the configuration details of the launch.
1519
+ # @return [Types::Launch]
1520
+ #
1521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetLaunchResponse AWS API Documentation
1522
+ #
1523
+ class GetLaunchResponse < Struct.new(
1524
+ :launch)
1525
+ SENSITIVE = []
1526
+ include Aws::Structure
1527
+ end
1528
+
1529
+ # @note When making an API call, you may pass GetProjectRequest
1530
+ # data as a hash:
1531
+ #
1532
+ # {
1533
+ # project: "ProjectRef", # required
1534
+ # }
1535
+ #
1536
+ # @!attribute [rw] project
1537
+ # The name or ARN of the project that you want to see the details of.
1538
+ # @return [String]
1539
+ #
1540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetProjectRequest AWS API Documentation
1541
+ #
1542
+ class GetProjectRequest < Struct.new(
1543
+ :project)
1544
+ SENSITIVE = []
1545
+ include Aws::Structure
1546
+ end
1547
+
1548
+ # @!attribute [rw] project
1549
+ # A structure containing the configuration details of the project.
1550
+ # @return [Types::Project]
1551
+ #
1552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetProjectResponse AWS API Documentation
1553
+ #
1554
+ class GetProjectResponse < Struct.new(
1555
+ :project)
1556
+ SENSITIVE = []
1557
+ include Aws::Structure
1558
+ end
1559
+
1560
+ # Unexpected error while processing the request. Retry the request.
1561
+ #
1562
+ # @!attribute [rw] message
1563
+ # @return [String]
1564
+ #
1565
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/InternalServerException AWS API Documentation
1566
+ #
1567
+ class InternalServerException < Struct.new(
1568
+ :message)
1569
+ SENSITIVE = []
1570
+ include Aws::Structure
1571
+ end
1572
+
1573
+ # This structure contains the configuration details of one Evidently
1574
+ # launch.
1575
+ #
1576
+ # @!attribute [rw] arn
1577
+ # The ARN of the launch.
1578
+ # @return [String]
1579
+ #
1580
+ # @!attribute [rw] created_time
1581
+ # The date and time that the launch is created.
1582
+ # @return [Time]
1583
+ #
1584
+ # @!attribute [rw] description
1585
+ # The description of the launch.
1586
+ # @return [String]
1587
+ #
1588
+ # @!attribute [rw] execution
1589
+ # A structure that contains information about the start and end times
1590
+ # of the launch.
1591
+ # @return [Types::LaunchExecution]
1592
+ #
1593
+ # @!attribute [rw] groups
1594
+ # An array of structures that define the feature variations that are
1595
+ # being used in the launch.
1596
+ # @return [Array<Types::LaunchGroup>]
1597
+ #
1598
+ # @!attribute [rw] last_updated_time
1599
+ # The date and time that the launch was most recently updated.
1600
+ # @return [Time]
1601
+ #
1602
+ # @!attribute [rw] metric_monitors
1603
+ # An array of structures that define the metrics that are being used
1604
+ # to monitor the launch performance.
1605
+ # @return [Array<Types::MetricMonitor>]
1606
+ #
1607
+ # @!attribute [rw] name
1608
+ # The name of the launch.
1609
+ # @return [String]
1610
+ #
1611
+ # @!attribute [rw] project
1612
+ # The name or ARN of the project that contains the launch.
1613
+ # @return [String]
1614
+ #
1615
+ # @!attribute [rw] randomization_salt
1616
+ # This value is used when Evidently assigns a particular user session
1617
+ # to the launch, to help create a randomization ID to determine which
1618
+ # variation the user session is served. This randomization ID is a
1619
+ # combination of the entity ID and `randomizationSalt`.
1620
+ # @return [String]
1621
+ #
1622
+ # @!attribute [rw] scheduled_splits_definition
1623
+ # An array of structures that define the traffic allocation
1624
+ # percentages among the feature variations during each step of the
1625
+ # launch.
1626
+ # @return [Types::ScheduledSplitsLaunchDefinition]
1627
+ #
1628
+ # @!attribute [rw] status
1629
+ # The current state of the launch.
1630
+ # @return [String]
1631
+ #
1632
+ # @!attribute [rw] status_reason
1633
+ # If the launch was stopped, this is the string that was entered by
1634
+ # the person who stopped the launch, to explain why it was stopped.
1635
+ # @return [String]
1636
+ #
1637
+ # @!attribute [rw] tags
1638
+ # The list of tag keys and values associated with this launch.
1639
+ # @return [Hash<String,String>]
1640
+ #
1641
+ # @!attribute [rw] type
1642
+ # The type of launch.
1643
+ # @return [String]
1644
+ #
1645
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Launch AWS API Documentation
1646
+ #
1647
+ class Launch < Struct.new(
1648
+ :arn,
1649
+ :created_time,
1650
+ :description,
1651
+ :execution,
1652
+ :groups,
1653
+ :last_updated_time,
1654
+ :metric_monitors,
1655
+ :name,
1656
+ :project,
1657
+ :randomization_salt,
1658
+ :scheduled_splits_definition,
1659
+ :status,
1660
+ :status_reason,
1661
+ :tags,
1662
+ :type)
1663
+ SENSITIVE = []
1664
+ include Aws::Structure
1665
+ end
1666
+
1667
+ # This structure contains information about the start and end times of
1668
+ # the launch.
1669
+ #
1670
+ # @!attribute [rw] ended_time
1671
+ # The date and time that the launch ended.
1672
+ # @return [Time]
1673
+ #
1674
+ # @!attribute [rw] started_time
1675
+ # The date and time that the launch started.
1676
+ # @return [Time]
1677
+ #
1678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/LaunchExecution AWS API Documentation
1679
+ #
1680
+ class LaunchExecution < Struct.new(
1681
+ :ended_time,
1682
+ :started_time)
1683
+ SENSITIVE = []
1684
+ include Aws::Structure
1685
+ end
1686
+
1687
+ # A structure that defines one launch group in a launch. A launch group
1688
+ # is a variation of the feature that you are including in the launch.
1689
+ #
1690
+ # @!attribute [rw] description
1691
+ # A description of the launch group.
1692
+ # @return [String]
1693
+ #
1694
+ # @!attribute [rw] feature_variations
1695
+ # The feature variation for this launch group. This is a key-value
1696
+ # pair.
1697
+ # @return [Hash<String,String>]
1698
+ #
1699
+ # @!attribute [rw] name
1700
+ # The name of the launch group.
1701
+ # @return [String]
1702
+ #
1703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/LaunchGroup AWS API Documentation
1704
+ #
1705
+ class LaunchGroup < Struct.new(
1706
+ :description,
1707
+ :feature_variations,
1708
+ :name)
1709
+ SENSITIVE = []
1710
+ include Aws::Structure
1711
+ end
1712
+
1713
+ # A structure that defines one launch group in a launch. A launch group
1714
+ # is a variation of the feature that you are including in the launch.
1715
+ #
1716
+ # @note When making an API call, you may pass LaunchGroupConfig
1717
+ # data as a hash:
1718
+ #
1719
+ # {
1720
+ # description: "Description",
1721
+ # feature: "FeatureName", # required
1722
+ # name: "GroupName", # required
1723
+ # variation: "VariationName", # required
1724
+ # }
1725
+ #
1726
+ # @!attribute [rw] description
1727
+ # A description of the launch group.
1728
+ # @return [String]
1729
+ #
1730
+ # @!attribute [rw] feature
1731
+ # The feature that this launch is using.
1732
+ # @return [String]
1733
+ #
1734
+ # @!attribute [rw] name
1735
+ # A name for this launch group.
1736
+ # @return [String]
1737
+ #
1738
+ # @!attribute [rw] variation
1739
+ # The feature variation to use for this launch group.
1740
+ # @return [String]
1741
+ #
1742
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/LaunchGroupConfig AWS API Documentation
1743
+ #
1744
+ class LaunchGroupConfig < Struct.new(
1745
+ :description,
1746
+ :feature,
1747
+ :name,
1748
+ :variation)
1749
+ SENSITIVE = []
1750
+ include Aws::Structure
1751
+ end
1752
+
1753
+ # @note When making an API call, you may pass ListExperimentsRequest
1754
+ # data as a hash:
1755
+ #
1756
+ # {
1757
+ # max_results: 1,
1758
+ # next_token: "NextToken",
1759
+ # project: "ProjectRef", # required
1760
+ # }
1761
+ #
1762
+ # @!attribute [rw] max_results
1763
+ # The maximum number of results to include in the response.
1764
+ # @return [Integer]
1765
+ #
1766
+ # @!attribute [rw] next_token
1767
+ # The token to use when requesting the next set of results. You
1768
+ # received this token from a previous `ListExperiments` operation.
1769
+ # @return [String]
1770
+ #
1771
+ # @!attribute [rw] project
1772
+ # The name or ARN of the project to return the experiment list from.
1773
+ # @return [String]
1774
+ #
1775
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListExperimentsRequest AWS API Documentation
1776
+ #
1777
+ class ListExperimentsRequest < Struct.new(
1778
+ :max_results,
1779
+ :next_token,
1780
+ :project)
1781
+ SENSITIVE = []
1782
+ include Aws::Structure
1783
+ end
1784
+
1785
+ # @!attribute [rw] experiments
1786
+ # An array of structures that contain the configuration details of the
1787
+ # experiments in the specified project.
1788
+ # @return [Array<Types::Experiment>]
1789
+ #
1790
+ # @!attribute [rw] next_token
1791
+ # The token to use in a subsequent `ListExperiments` operation to
1792
+ # return the next set of results.
1793
+ # @return [String]
1794
+ #
1795
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListExperimentsResponse AWS API Documentation
1796
+ #
1797
+ class ListExperimentsResponse < Struct.new(
1798
+ :experiments,
1799
+ :next_token)
1800
+ SENSITIVE = []
1801
+ include Aws::Structure
1802
+ end
1803
+
1804
+ # @note When making an API call, you may pass ListFeaturesRequest
1805
+ # data as a hash:
1806
+ #
1807
+ # {
1808
+ # max_results: 1,
1809
+ # next_token: "NextToken",
1810
+ # project: "ProjectRef", # required
1811
+ # }
1812
+ #
1813
+ # @!attribute [rw] max_results
1814
+ # The maximum number of results to include in the response.
1815
+ # @return [Integer]
1816
+ #
1817
+ # @!attribute [rw] next_token
1818
+ # The token to use when requesting the next set of results. You
1819
+ # received this token from a previous `ListFeatures` operation.
1820
+ # @return [String]
1821
+ #
1822
+ # @!attribute [rw] project
1823
+ # The name or ARN of the project to return the feature list from.
1824
+ # @return [String]
1825
+ #
1826
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListFeaturesRequest AWS API Documentation
1827
+ #
1828
+ class ListFeaturesRequest < Struct.new(
1829
+ :max_results,
1830
+ :next_token,
1831
+ :project)
1832
+ SENSITIVE = []
1833
+ include Aws::Structure
1834
+ end
1835
+
1836
+ # @!attribute [rw] features
1837
+ # An array of structures that contain the configuration details of the
1838
+ # features in the specified project.
1839
+ # @return [Array<Types::FeatureSummary>]
1840
+ #
1841
+ # @!attribute [rw] next_token
1842
+ # The token to use in a subsequent `ListFeatures` operation to return
1843
+ # the next set of results.
1844
+ # @return [String]
1845
+ #
1846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListFeaturesResponse AWS API Documentation
1847
+ #
1848
+ class ListFeaturesResponse < Struct.new(
1849
+ :features,
1850
+ :next_token)
1851
+ SENSITIVE = []
1852
+ include Aws::Structure
1853
+ end
1854
+
1855
+ # @note When making an API call, you may pass ListLaunchesRequest
1856
+ # data as a hash:
1857
+ #
1858
+ # {
1859
+ # max_results: 1,
1860
+ # next_token: "NextToken",
1861
+ # project: "ProjectRef", # required
1862
+ # }
1863
+ #
1864
+ # @!attribute [rw] max_results
1865
+ # The maximum number of results to include in the response.
1866
+ # @return [Integer]
1867
+ #
1868
+ # @!attribute [rw] next_token
1869
+ # The token to use when requesting the next set of results. You
1870
+ # received this token from a previous `ListLaunches` operation.
1871
+ # @return [String]
1872
+ #
1873
+ # @!attribute [rw] project
1874
+ # The name or ARN of the project to return the launch list from.
1875
+ # @return [String]
1876
+ #
1877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListLaunchesRequest AWS API Documentation
1878
+ #
1879
+ class ListLaunchesRequest < Struct.new(
1880
+ :max_results,
1881
+ :next_token,
1882
+ :project)
1883
+ SENSITIVE = []
1884
+ include Aws::Structure
1885
+ end
1886
+
1887
+ # @!attribute [rw] launches
1888
+ # An array of structures that contain the configuration details of the
1889
+ # launches in the specified project.
1890
+ # @return [Array<Types::Launch>]
1891
+ #
1892
+ # @!attribute [rw] next_token
1893
+ # The token to use in a subsequent `ListLaunches` operation to return
1894
+ # the next set of results.
1895
+ # @return [String]
1896
+ #
1897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListLaunchesResponse AWS API Documentation
1898
+ #
1899
+ class ListLaunchesResponse < Struct.new(
1900
+ :launches,
1901
+ :next_token)
1902
+ SENSITIVE = []
1903
+ include Aws::Structure
1904
+ end
1905
+
1906
+ # @note When making an API call, you may pass ListProjectsRequest
1907
+ # data as a hash:
1908
+ #
1909
+ # {
1910
+ # max_results: 1,
1911
+ # next_token: "NextToken",
1912
+ # }
1913
+ #
1914
+ # @!attribute [rw] max_results
1915
+ # The maximum number of results to include in the response.
1916
+ # @return [Integer]
1917
+ #
1918
+ # @!attribute [rw] next_token
1919
+ # The token to use when requesting the next set of results. You
1920
+ # received this token from a previous `ListProjects` operation.
1921
+ # @return [String]
1922
+ #
1923
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListProjectsRequest AWS API Documentation
1924
+ #
1925
+ class ListProjectsRequest < Struct.new(
1926
+ :max_results,
1927
+ :next_token)
1928
+ SENSITIVE = []
1929
+ include Aws::Structure
1930
+ end
1931
+
1932
+ # @!attribute [rw] next_token
1933
+ # The token to use in a subsequent `ListProjects` operation to return
1934
+ # the next set of results.
1935
+ # @return [String]
1936
+ #
1937
+ # @!attribute [rw] projects
1938
+ # An array of structures that contain the configuration details of the
1939
+ # projects in the Region.
1940
+ # @return [Array<Types::ProjectSummary>]
1941
+ #
1942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListProjectsResponse AWS API Documentation
1943
+ #
1944
+ class ListProjectsResponse < Struct.new(
1945
+ :next_token,
1946
+ :projects)
1947
+ SENSITIVE = []
1948
+ include Aws::Structure
1949
+ end
1950
+
1951
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1952
+ # data as a hash:
1953
+ #
1954
+ # {
1955
+ # resource_arn: "Arn", # required
1956
+ # }
1957
+ #
1958
+ # @!attribute [rw] resource_arn
1959
+ # The ARN of the resource that you want to see the tags of.
1960
+ # @return [String]
1961
+ #
1962
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListTagsForResourceRequest AWS API Documentation
1963
+ #
1964
+ class ListTagsForResourceRequest < Struct.new(
1965
+ :resource_arn)
1966
+ SENSITIVE = []
1967
+ include Aws::Structure
1968
+ end
1969
+
1970
+ # @!attribute [rw] tags
1971
+ # The list of tag keys and values associated with the resource you
1972
+ # specified.
1973
+ # @return [Hash<String,String>]
1974
+ #
1975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListTagsForResourceResponse AWS API Documentation
1976
+ #
1977
+ class ListTagsForResourceResponse < Struct.new(
1978
+ :tags)
1979
+ SENSITIVE = []
1980
+ include Aws::Structure
1981
+ end
1982
+
1983
+ # This structure defines a metric that is being used to evaluate the
1984
+ # variations during a launch or experiment.
1985
+ #
1986
+ # @!attribute [rw] entity_id_key
1987
+ # The entity, such as a user or session, that does an action that
1988
+ # causes a metric value to be recorded.
1989
+ # @return [String]
1990
+ #
1991
+ # @!attribute [rw] event_pattern
1992
+ # The EventBridge event pattern that defines how the metric is
1993
+ # recorded.
1994
+ #
1995
+ # For more information about EventBridge event patterns, see [Amazon
1996
+ # EventBridge event patterns][1].
1997
+ #
1998
+ #
1999
+ #
2000
+ # [1]: https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html
2001
+ # @return [String]
2002
+ #
2003
+ # @!attribute [rw] name
2004
+ # The name of the metric.
2005
+ # @return [String]
2006
+ #
2007
+ # @!attribute [rw] unit_label
2008
+ # The label for the units that the metric is measuring.
2009
+ # @return [String]
2010
+ #
2011
+ # @!attribute [rw] value_key
2012
+ # The value that is tracked to produce the metric.
2013
+ # @return [String]
2014
+ #
2015
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricDefinition AWS API Documentation
2016
+ #
2017
+ class MetricDefinition < Struct.new(
2018
+ :entity_id_key,
2019
+ :event_pattern,
2020
+ :name,
2021
+ :unit_label,
2022
+ :value_key)
2023
+ SENSITIVE = []
2024
+ include Aws::Structure
2025
+ end
2026
+
2027
+ # This structure defines a metric that you want to use to evaluate the
2028
+ # variations during a launch or experiment.
2029
+ #
2030
+ # @note When making an API call, you may pass MetricDefinitionConfig
2031
+ # data as a hash:
2032
+ #
2033
+ # {
2034
+ # entity_id_key: "JsonPath",
2035
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
2036
+ # name: "CwDimensionSafeName",
2037
+ # unit_label: "MetricUnitLabel",
2038
+ # value_key: "JsonPath",
2039
+ # }
2040
+ #
2041
+ # @!attribute [rw] entity_id_key
2042
+ # The entity, such as a user or session, that does an action that
2043
+ # causes a metric value to be recorded. An example is
2044
+ # `userDetails.userID`.
2045
+ # @return [String]
2046
+ #
2047
+ # @!attribute [rw] event_pattern
2048
+ # The EventBridge event pattern that defines how the metric is
2049
+ # recorded.
2050
+ #
2051
+ # For more information about EventBridge event patterns, see [Amazon
2052
+ # EventBridge event patterns][1].
2053
+ #
2054
+ #
2055
+ #
2056
+ # [1]: https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html
2057
+ # @return [String]
2058
+ #
2059
+ # @!attribute [rw] name
2060
+ # A name for the metric.
2061
+ # @return [String]
2062
+ #
2063
+ # @!attribute [rw] unit_label
2064
+ # A label for the units that the metric is measuring.
2065
+ # @return [String]
2066
+ #
2067
+ # @!attribute [rw] value_key
2068
+ # The value that is tracked to produce the metric.
2069
+ # @return [String]
2070
+ #
2071
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricDefinitionConfig AWS API Documentation
2072
+ #
2073
+ class MetricDefinitionConfig < Struct.new(
2074
+ :entity_id_key,
2075
+ :event_pattern,
2076
+ :name,
2077
+ :unit_label,
2078
+ :value_key)
2079
+ SENSITIVE = []
2080
+ include Aws::Structure
2081
+ end
2082
+
2083
+ # A structure that tells Evidently whether higher or lower values are
2084
+ # desired for a metric that is used in an experiment.
2085
+ #
2086
+ # @!attribute [rw] desired_change
2087
+ # `INCREASE` means that a variation with a higher number for this
2088
+ # metric is performing better.
2089
+ #
2090
+ # `DECREASE` means that a variation with a lower number for this
2091
+ # metric is performing better.
2092
+ # @return [String]
2093
+ #
2094
+ # @!attribute [rw] metric_definition
2095
+ # A structure that contains details about the metric.
2096
+ # @return [Types::MetricDefinition]
2097
+ #
2098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricGoal AWS API Documentation
2099
+ #
2100
+ class MetricGoal < Struct.new(
2101
+ :desired_change,
2102
+ :metric_definition)
2103
+ SENSITIVE = []
2104
+ include Aws::Structure
2105
+ end
2106
+
2107
+ # Use this structure to tell Evidently whether higher or lower values
2108
+ # are desired for a metric that is used in an experiment.
2109
+ #
2110
+ # @note When making an API call, you may pass MetricGoalConfig
2111
+ # data as a hash:
2112
+ #
2113
+ # {
2114
+ # desired_change: "INCREASE", # accepts INCREASE, DECREASE
2115
+ # metric_definition: { # required
2116
+ # entity_id_key: "JsonPath",
2117
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
2118
+ # name: "CwDimensionSafeName",
2119
+ # unit_label: "MetricUnitLabel",
2120
+ # value_key: "JsonPath",
2121
+ # },
2122
+ # }
2123
+ #
2124
+ # @!attribute [rw] desired_change
2125
+ # `INCREASE` means that a variation with a higher number for this
2126
+ # metric is performing better.
2127
+ #
2128
+ # `DECREASE` means that a variation with a lower number for this
2129
+ # metric is performing better.
2130
+ # @return [String]
2131
+ #
2132
+ # @!attribute [rw] metric_definition
2133
+ # A structure that contains details about the metric.
2134
+ # @return [Types::MetricDefinitionConfig]
2135
+ #
2136
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricGoalConfig AWS API Documentation
2137
+ #
2138
+ class MetricGoalConfig < Struct.new(
2139
+ :desired_change,
2140
+ :metric_definition)
2141
+ SENSITIVE = []
2142
+ include Aws::Structure
2143
+ end
2144
+
2145
+ # A structure that defines a metric to be used to monitor performance of
2146
+ # the variations during a launch.
2147
+ #
2148
+ # @!attribute [rw] metric_definition
2149
+ # A structure that defines the metric.
2150
+ # @return [Types::MetricDefinition]
2151
+ #
2152
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricMonitor AWS API Documentation
2153
+ #
2154
+ class MetricMonitor < Struct.new(
2155
+ :metric_definition)
2156
+ SENSITIVE = []
2157
+ include Aws::Structure
2158
+ end
2159
+
2160
+ # A structure that defines a metric to be used to monitor performance of
2161
+ # the variations during a launch.
2162
+ #
2163
+ # @note When making an API call, you may pass MetricMonitorConfig
2164
+ # data as a hash:
2165
+ #
2166
+ # {
2167
+ # metric_definition: { # required
2168
+ # entity_id_key: "JsonPath",
2169
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
2170
+ # name: "CwDimensionSafeName",
2171
+ # unit_label: "MetricUnitLabel",
2172
+ # value_key: "JsonPath",
2173
+ # },
2174
+ # }
2175
+ #
2176
+ # @!attribute [rw] metric_definition
2177
+ # A structure that defines the metric.
2178
+ # @return [Types::MetricDefinitionConfig]
2179
+ #
2180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricMonitorConfig AWS API Documentation
2181
+ #
2182
+ class MetricMonitorConfig < Struct.new(
2183
+ :metric_definition)
2184
+ SENSITIVE = []
2185
+ include Aws::Structure
2186
+ end
2187
+
2188
+ # A structure that contains the configuration of which variation to use
2189
+ # as the "control" version. The "control" version is used for
2190
+ # comparison with other variations. This structure also specifies how
2191
+ # much experiment traffic is allocated to each variation.
2192
+ #
2193
+ # @note When making an API call, you may pass OnlineAbConfig
2194
+ # data as a hash:
2195
+ #
2196
+ # {
2197
+ # control_treatment_name: "TreatmentName",
2198
+ # treatment_weights: {
2199
+ # "TreatmentName" => 1,
2200
+ # },
2201
+ # }
2202
+ #
2203
+ # @!attribute [rw] control_treatment_name
2204
+ # The name of the variation that is to be the default variation that
2205
+ # the other variations are compared to.
2206
+ # @return [String]
2207
+ #
2208
+ # @!attribute [rw] treatment_weights
2209
+ # A set of key-value pairs. The keys are variation names, and the
2210
+ # values are the portion of experiment traffic to be assigned to that
2211
+ # variation. Specify the traffic portion in thousandths of a percent,
2212
+ # so 20,000 for a variation would allocate 20% of the experiment
2213
+ # traffic to that variation.
2214
+ # @return [Hash<String,Integer>]
2215
+ #
2216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/OnlineAbConfig AWS API Documentation
2217
+ #
2218
+ class OnlineAbConfig < Struct.new(
2219
+ :control_treatment_name,
2220
+ :treatment_weights)
2221
+ SENSITIVE = []
2222
+ include Aws::Structure
2223
+ end
2224
+
2225
+ # A structure that contains the configuration of which variation to use
2226
+ # as the "control" version. The "control" version is used for
2227
+ # comparison with other variations. This structure also specifies how
2228
+ # much experiment traffic is allocated to each variation.
2229
+ #
2230
+ # @!attribute [rw] control_treatment_name
2231
+ # The name of the variation that is the default variation that the
2232
+ # other variations are compared to.
2233
+ # @return [String]
2234
+ #
2235
+ # @!attribute [rw] treatment_weights
2236
+ # A set of key-value pairs. The keys are variation names, and the
2237
+ # values are the portion of experiment traffic to be assigned to that
2238
+ # variation. The traffic portion is specified in thousandths of a
2239
+ # percent, so 20,000 for a variation would allocate 20% of the
2240
+ # experiment traffic to that variation.
2241
+ # @return [Hash<String,Integer>]
2242
+ #
2243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/OnlineAbDefinition AWS API Documentation
2244
+ #
2245
+ class OnlineAbDefinition < Struct.new(
2246
+ :control_treatment_name,
2247
+ :treatment_weights)
2248
+ SENSITIVE = []
2249
+ include Aws::Structure
2250
+ end
2251
+
2252
+ # This structure defines a project, which is the logical object in
2253
+ # Evidently that can contain features, launches, and experiments. Use
2254
+ # projects to group similar features together.
2255
+ #
2256
+ # @!attribute [rw] active_experiment_count
2257
+ # The number of ongoing experiments currently in the project.
2258
+ # @return [Integer]
2259
+ #
2260
+ # @!attribute [rw] active_launch_count
2261
+ # The number of ongoing launches currently in the project.
2262
+ # @return [Integer]
2263
+ #
2264
+ # @!attribute [rw] arn
2265
+ # The name or ARN of the project.
2266
+ # @return [String]
2267
+ #
2268
+ # @!attribute [rw] created_time
2269
+ # The date and time that the project is created.
2270
+ # @return [Time]
2271
+ #
2272
+ # @!attribute [rw] data_delivery
2273
+ # A structure that contains information about where Evidently is to
2274
+ # store evaluation events for longer term storage.
2275
+ # @return [Types::ProjectDataDelivery]
2276
+ #
2277
+ # @!attribute [rw] description
2278
+ # The user-entered description of the project.
2279
+ # @return [String]
2280
+ #
2281
+ # @!attribute [rw] experiment_count
2282
+ # The number of experiments currently in the project. This includes
2283
+ # all experiments that have been created and not deleted, whether they
2284
+ # are ongoing or not.
2285
+ # @return [Integer]
2286
+ #
2287
+ # @!attribute [rw] feature_count
2288
+ # The number of features currently in the project.
2289
+ # @return [Integer]
2290
+ #
2291
+ # @!attribute [rw] last_updated_time
2292
+ # The date and time that the project was most recently updated.
2293
+ # @return [Time]
2294
+ #
2295
+ # @!attribute [rw] launch_count
2296
+ # The number of launches currently in the project. This includes all
2297
+ # launches that have been created and not deleted, whether they are
2298
+ # ongoing or not.
2299
+ # @return [Integer]
2300
+ #
2301
+ # @!attribute [rw] name
2302
+ # The name of the project.
2303
+ # @return [String]
2304
+ #
2305
+ # @!attribute [rw] status
2306
+ # The current state of the project.
2307
+ # @return [String]
2308
+ #
2309
+ # @!attribute [rw] tags
2310
+ # The list of tag keys and values associated with this project.
2311
+ # @return [Hash<String,String>]
2312
+ #
2313
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Project AWS API Documentation
2314
+ #
2315
+ class Project < Struct.new(
2316
+ :active_experiment_count,
2317
+ :active_launch_count,
2318
+ :arn,
2319
+ :created_time,
2320
+ :data_delivery,
2321
+ :description,
2322
+ :experiment_count,
2323
+ :feature_count,
2324
+ :last_updated_time,
2325
+ :launch_count,
2326
+ :name,
2327
+ :status,
2328
+ :tags)
2329
+ SENSITIVE = []
2330
+ include Aws::Structure
2331
+ end
2332
+
2333
+ # A structure that contains information about where Evidently is to
2334
+ # store evaluation events for longer term storage.
2335
+ #
2336
+ # @!attribute [rw] cloud_watch_logs
2337
+ # If the project stores evaluation events in CloudWatch Logs, this
2338
+ # structure stores the log group name.
2339
+ # @return [Types::CloudWatchLogsDestination]
2340
+ #
2341
+ # @!attribute [rw] s3_destination
2342
+ # If the project stores evaluation events in an Amazon S3 bucket, this
2343
+ # structure stores the bucket name and bucket prefix.
2344
+ # @return [Types::S3Destination]
2345
+ #
2346
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ProjectDataDelivery AWS API Documentation
2347
+ #
2348
+ class ProjectDataDelivery < Struct.new(
2349
+ :cloud_watch_logs,
2350
+ :s3_destination)
2351
+ SENSITIVE = []
2352
+ include Aws::Structure
2353
+ end
2354
+
2355
+ # A structure that contains information about where Evidently is to
2356
+ # store evaluation events for longer term storage.
2357
+ #
2358
+ # @note When making an API call, you may pass ProjectDataDeliveryConfig
2359
+ # data as a hash:
2360
+ #
2361
+ # {
2362
+ # cloud_watch_logs: {
2363
+ # log_group: "CwLogGroupSafeName",
2364
+ # },
2365
+ # s3_destination: {
2366
+ # bucket: "S3BucketSafeName",
2367
+ # prefix: "S3PrefixSafeName",
2368
+ # },
2369
+ # }
2370
+ #
2371
+ # @!attribute [rw] cloud_watch_logs
2372
+ # If the project stores evaluation events in CloudWatch Logs, this
2373
+ # structure stores the log group name.
2374
+ # @return [Types::CloudWatchLogsDestinationConfig]
2375
+ #
2376
+ # @!attribute [rw] s3_destination
2377
+ # If the project stores evaluation events in an Amazon S3 bucket, this
2378
+ # structure stores the bucket name and bucket prefix.
2379
+ # @return [Types::S3DestinationConfig]
2380
+ #
2381
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ProjectDataDeliveryConfig AWS API Documentation
2382
+ #
2383
+ class ProjectDataDeliveryConfig < Struct.new(
2384
+ :cloud_watch_logs,
2385
+ :s3_destination)
2386
+ SENSITIVE = []
2387
+ include Aws::Structure
2388
+ end
2389
+
2390
+ # A structure that contains configuration information about an Evidently
2391
+ # project.
2392
+ #
2393
+ # @!attribute [rw] active_experiment_count
2394
+ # The number of experiments currently in the project.
2395
+ # @return [Integer]
2396
+ #
2397
+ # @!attribute [rw] active_launch_count
2398
+ # The number of ongoing launches currently in the project.
2399
+ # @return [Integer]
2400
+ #
2401
+ # @!attribute [rw] arn
2402
+ # The name or ARN of the project.
2403
+ # @return [String]
2404
+ #
2405
+ # @!attribute [rw] created_time
2406
+ # The date and time that the project is created.
2407
+ # @return [Time]
2408
+ #
2409
+ # @!attribute [rw] description
2410
+ # The description of the project.
2411
+ # @return [String]
2412
+ #
2413
+ # @!attribute [rw] experiment_count
2414
+ # The number of experiments currently in the project.
2415
+ # @return [Integer]
2416
+ #
2417
+ # @!attribute [rw] feature_count
2418
+ # The number of features currently in the project.
2419
+ # @return [Integer]
2420
+ #
2421
+ # @!attribute [rw] last_updated_time
2422
+ # The date and time that the project was most recently updated.
2423
+ # @return [Time]
2424
+ #
2425
+ # @!attribute [rw] launch_count
2426
+ # The number of launches currently in the project, including launches
2427
+ # that are ongoing, completed, and not started yet.
2428
+ # @return [Integer]
2429
+ #
2430
+ # @!attribute [rw] name
2431
+ # The name of the project.
2432
+ # @return [String]
2433
+ #
2434
+ # @!attribute [rw] status
2435
+ # The current state of the project.
2436
+ # @return [String]
2437
+ #
2438
+ # @!attribute [rw] tags
2439
+ # The list of tag keys and values associated with this project.
2440
+ # @return [Hash<String,String>]
2441
+ #
2442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ProjectSummary AWS API Documentation
2443
+ #
2444
+ class ProjectSummary < Struct.new(
2445
+ :active_experiment_count,
2446
+ :active_launch_count,
2447
+ :arn,
2448
+ :created_time,
2449
+ :description,
2450
+ :experiment_count,
2451
+ :feature_count,
2452
+ :last_updated_time,
2453
+ :launch_count,
2454
+ :name,
2455
+ :status,
2456
+ :tags)
2457
+ SENSITIVE = []
2458
+ include Aws::Structure
2459
+ end
2460
+
2461
+ # @note When making an API call, you may pass PutProjectEventsRequest
2462
+ # data as a hash:
2463
+ #
2464
+ # {
2465
+ # events: [ # required
2466
+ # {
2467
+ # data: "JsonValue", # required
2468
+ # timestamp: Time.now, # required
2469
+ # type: "aws.evidently.evaluation", # required, accepts aws.evidently.evaluation, aws.evidently.custom
2470
+ # },
2471
+ # ],
2472
+ # project: "ProjectRef", # required
2473
+ # }
2474
+ #
2475
+ # @!attribute [rw] events
2476
+ # An array of event structures that contain the performance data that
2477
+ # is being sent to Evidently.
2478
+ # @return [Array<Types::Event>]
2479
+ #
2480
+ # @!attribute [rw] project
2481
+ # The name or ARN of the project to write the events to.
2482
+ # @return [String]
2483
+ #
2484
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/PutProjectEventsRequest AWS API Documentation
2485
+ #
2486
+ class PutProjectEventsRequest < Struct.new(
2487
+ :events,
2488
+ :project)
2489
+ SENSITIVE = []
2490
+ include Aws::Structure
2491
+ end
2492
+
2493
+ # @!attribute [rw] event_results
2494
+ # A structure that contains Evidently's response to the sent events,
2495
+ # including an event ID and error codes, if any.
2496
+ # @return [Array<Types::PutProjectEventsResultEntry>]
2497
+ #
2498
+ # @!attribute [rw] failed_event_count
2499
+ # The number of events in the operation that could not be used by
2500
+ # Evidently.
2501
+ # @return [Integer]
2502
+ #
2503
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/PutProjectEventsResponse AWS API Documentation
2504
+ #
2505
+ class PutProjectEventsResponse < Struct.new(
2506
+ :event_results,
2507
+ :failed_event_count)
2508
+ SENSITIVE = []
2509
+ include Aws::Structure
2510
+ end
2511
+
2512
+ # A structure that contains Evidently's response to the sent events,
2513
+ # including an event ID and error codes, if any.
2514
+ #
2515
+ # @!attribute [rw] error_code
2516
+ # If the `PutProjectEvents` operation has an error, the error code is
2517
+ # returned here.
2518
+ # @return [String]
2519
+ #
2520
+ # @!attribute [rw] error_message
2521
+ # If the `PutProjectEvents` operation has an error, the error message
2522
+ # is returned here.
2523
+ # @return [String]
2524
+ #
2525
+ # @!attribute [rw] event_id
2526
+ # A unique ID assigned to this `PutProjectEvents` operation.
2527
+ # @return [String]
2528
+ #
2529
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/PutProjectEventsResultEntry AWS API Documentation
2530
+ #
2531
+ class PutProjectEventsResultEntry < Struct.new(
2532
+ :error_code,
2533
+ :error_message,
2534
+ :event_id)
2535
+ SENSITIVE = []
2536
+ include Aws::Structure
2537
+ end
2538
+
2539
+ # The request references a resource that does not exist.
2540
+ #
2541
+ # @!attribute [rw] message
2542
+ # @return [String]
2543
+ #
2544
+ # @!attribute [rw] resource_id
2545
+ # The ID of the resource that caused the exception.
2546
+ # @return [String]
2547
+ #
2548
+ # @!attribute [rw] resource_type
2549
+ # The type of the resource that is associated with the error.
2550
+ # @return [String]
2551
+ #
2552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ResourceNotFoundException AWS API Documentation
2553
+ #
2554
+ class ResourceNotFoundException < Struct.new(
2555
+ :message,
2556
+ :resource_id,
2557
+ :resource_type)
2558
+ SENSITIVE = []
2559
+ include Aws::Structure
2560
+ end
2561
+
2562
+ # If the project stores evaluation events in an Amazon S3 bucket, this
2563
+ # structure stores the bucket name and bucket prefix.
2564
+ #
2565
+ # @!attribute [rw] bucket
2566
+ # The name of the bucket in which Evidently stores evaluation events.
2567
+ # @return [String]
2568
+ #
2569
+ # @!attribute [rw] prefix
2570
+ # The bucket prefix in which Evidently stores evaluation events.
2571
+ # @return [String]
2572
+ #
2573
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/S3Destination AWS API Documentation
2574
+ #
2575
+ class S3Destination < Struct.new(
2576
+ :bucket,
2577
+ :prefix)
2578
+ SENSITIVE = []
2579
+ include Aws::Structure
2580
+ end
2581
+
2582
+ # If the project stores evaluation events in an Amazon S3 bucket, this
2583
+ # structure stores the bucket name and bucket prefix.
2584
+ #
2585
+ # @note When making an API call, you may pass S3DestinationConfig
2586
+ # data as a hash:
2587
+ #
2588
+ # {
2589
+ # bucket: "S3BucketSafeName",
2590
+ # prefix: "S3PrefixSafeName",
2591
+ # }
2592
+ #
2593
+ # @!attribute [rw] bucket
2594
+ # The name of the bucket in which Evidently stores evaluation events.
2595
+ # @return [String]
2596
+ #
2597
+ # @!attribute [rw] prefix
2598
+ # The bucket prefix in which Evidently stores evaluation events.
2599
+ # @return [String]
2600
+ #
2601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/S3DestinationConfig AWS API Documentation
2602
+ #
2603
+ class S3DestinationConfig < Struct.new(
2604
+ :bucket,
2605
+ :prefix)
2606
+ SENSITIVE = []
2607
+ include Aws::Structure
2608
+ end
2609
+
2610
+ # This structure defines the traffic allocation percentages among the
2611
+ # feature variations during one step of a launch, and the start time of
2612
+ # that step.
2613
+ #
2614
+ # @!attribute [rw] group_weights
2615
+ # The traffic allocation percentages among the feature variations
2616
+ # during one step of a launch. This is a set of key-value pairs. The
2617
+ # keys are variation names. The values represent the percentage of
2618
+ # traffic to allocate to that variation during this step.
2619
+ # @return [Hash<String,Integer>]
2620
+ #
2621
+ # @!attribute [rw] start_time
2622
+ # The date and time that this step of the launch starts.
2623
+ # @return [Time]
2624
+ #
2625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplit AWS API Documentation
2626
+ #
2627
+ class ScheduledSplit < Struct.new(
2628
+ :group_weights,
2629
+ :start_time)
2630
+ SENSITIVE = []
2631
+ include Aws::Structure
2632
+ end
2633
+
2634
+ # This structure defines the traffic allocation percentages among the
2635
+ # feature variations during one step of a launch, and the start time of
2636
+ # that step.
2637
+ #
2638
+ # @note When making an API call, you may pass ScheduledSplitConfig
2639
+ # data as a hash:
2640
+ #
2641
+ # {
2642
+ # group_weights: { # required
2643
+ # "GroupName" => 1,
2644
+ # },
2645
+ # start_time: Time.now, # required
2646
+ # }
2647
+ #
2648
+ # @!attribute [rw] group_weights
2649
+ # The traffic allocation percentages among the feature variations
2650
+ # during one step of a launch. This is a set of key-value pairs. The
2651
+ # keys are variation names. The values represent the percentage of
2652
+ # traffic to allocate to that variation during this step.
2653
+ # @return [Hash<String,Integer>]
2654
+ #
2655
+ # @!attribute [rw] start_time
2656
+ # The date and time that this step of the launch starts.
2657
+ # @return [Time]
2658
+ #
2659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplitConfig AWS API Documentation
2660
+ #
2661
+ class ScheduledSplitConfig < Struct.new(
2662
+ :group_weights,
2663
+ :start_time)
2664
+ SENSITIVE = []
2665
+ include Aws::Structure
2666
+ end
2667
+
2668
+ # An array of structures that define the traffic allocation percentages
2669
+ # among the feature variations during each step of a launch. This also
2670
+ # defines the start time of each step.
2671
+ #
2672
+ # @note When making an API call, you may pass ScheduledSplitsLaunchConfig
2673
+ # data as a hash:
2674
+ #
2675
+ # {
2676
+ # steps: [ # required
2677
+ # {
2678
+ # group_weights: { # required
2679
+ # "GroupName" => 1,
2680
+ # },
2681
+ # start_time: Time.now, # required
2682
+ # },
2683
+ # ],
2684
+ # }
2685
+ #
2686
+ # @!attribute [rw] steps
2687
+ # An array of structures that define the traffic allocation
2688
+ # percentages among the feature variations during each step of the
2689
+ # launch. This also defines the start time of each step.
2690
+ # @return [Array<Types::ScheduledSplitConfig>]
2691
+ #
2692
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplitsLaunchConfig AWS API Documentation
2693
+ #
2694
+ class ScheduledSplitsLaunchConfig < Struct.new(
2695
+ :steps)
2696
+ SENSITIVE = []
2697
+ include Aws::Structure
2698
+ end
2699
+
2700
+ # An array of structures that define the traffic allocation percentages
2701
+ # among the feature variations during each step of a launch. This also
2702
+ # defines the start time of each step.
2703
+ #
2704
+ # @!attribute [rw] steps
2705
+ # An array of structures that define the traffic allocation
2706
+ # percentages among the feature variations during each step of the
2707
+ # launch. This also defines the start time of each step.
2708
+ # @return [Array<Types::ScheduledSplit>]
2709
+ #
2710
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplitsLaunchDefinition AWS API Documentation
2711
+ #
2712
+ class ScheduledSplitsLaunchDefinition < Struct.new(
2713
+ :steps)
2714
+ SENSITIVE = []
2715
+ include Aws::Structure
2716
+ end
2717
+
2718
+ # The request would cause a service quota to be exceeded.
2719
+ #
2720
+ # @!attribute [rw] message
2721
+ # @return [String]
2722
+ #
2723
+ # @!attribute [rw] quota_code
2724
+ # The ID of the service quota that was exceeded.
2725
+ # @return [String]
2726
+ #
2727
+ # @!attribute [rw] resource_id
2728
+ # The ID of the resource that caused the exception.
2729
+ # @return [String]
2730
+ #
2731
+ # @!attribute [rw] resource_type
2732
+ # The type of the resource that is associated with the error.
2733
+ # @return [String]
2734
+ #
2735
+ # @!attribute [rw] service_code
2736
+ # The ID of the service that is associated with the error.
2737
+ # @return [String]
2738
+ #
2739
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ServiceQuotaExceededException AWS API Documentation
2740
+ #
2741
+ class ServiceQuotaExceededException < Struct.new(
2742
+ :message,
2743
+ :quota_code,
2744
+ :resource_id,
2745
+ :resource_type,
2746
+ :service_code)
2747
+ SENSITIVE = []
2748
+ include Aws::Structure
2749
+ end
2750
+
2751
+ # The service was unavailable. Retry the request.
2752
+ #
2753
+ # @!attribute [rw] message
2754
+ # @return [String]
2755
+ #
2756
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ServiceUnavailableException AWS API Documentation
2757
+ #
2758
+ class ServiceUnavailableException < Struct.new(
2759
+ :message)
2760
+ SENSITIVE = []
2761
+ include Aws::Structure
2762
+ end
2763
+
2764
+ # @note When making an API call, you may pass StartExperimentRequest
2765
+ # data as a hash:
2766
+ #
2767
+ # {
2768
+ # analysis_complete_time: Time.now, # required
2769
+ # experiment: "ExperimentName", # required
2770
+ # project: "ProjectRef", # required
2771
+ # }
2772
+ #
2773
+ # @!attribute [rw] analysis_complete_time
2774
+ # The date and time to end the experiment.
2775
+ # @return [Time]
2776
+ #
2777
+ # @!attribute [rw] experiment
2778
+ # The name of the experiment to start.
2779
+ # @return [String]
2780
+ #
2781
+ # @!attribute [rw] project
2782
+ # The name or ARN of the project that contains the experiment to
2783
+ # start.
2784
+ # @return [String]
2785
+ #
2786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartExperimentRequest AWS API Documentation
2787
+ #
2788
+ class StartExperimentRequest < Struct.new(
2789
+ :analysis_complete_time,
2790
+ :experiment,
2791
+ :project)
2792
+ SENSITIVE = []
2793
+ include Aws::Structure
2794
+ end
2795
+
2796
+ # @!attribute [rw] started_time
2797
+ # A timestamp that indicates when the experiment started.
2798
+ # @return [Time]
2799
+ #
2800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartExperimentResponse AWS API Documentation
2801
+ #
2802
+ class StartExperimentResponse < Struct.new(
2803
+ :started_time)
2804
+ SENSITIVE = []
2805
+ include Aws::Structure
2806
+ end
2807
+
2808
+ # @note When making an API call, you may pass StartLaunchRequest
2809
+ # data as a hash:
2810
+ #
2811
+ # {
2812
+ # launch: "LaunchName", # required
2813
+ # project: "ProjectRef", # required
2814
+ # }
2815
+ #
2816
+ # @!attribute [rw] launch
2817
+ # The name of the launch to start.
2818
+ # @return [String]
2819
+ #
2820
+ # @!attribute [rw] project
2821
+ # The name or ARN of the project that contains the launch to start.
2822
+ # @return [String]
2823
+ #
2824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartLaunchRequest AWS API Documentation
2825
+ #
2826
+ class StartLaunchRequest < Struct.new(
2827
+ :launch,
2828
+ :project)
2829
+ SENSITIVE = []
2830
+ include Aws::Structure
2831
+ end
2832
+
2833
+ # @!attribute [rw] launch
2834
+ # A structure that contains information about the launch that was
2835
+ # started.
2836
+ # @return [Types::Launch]
2837
+ #
2838
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartLaunchResponse AWS API Documentation
2839
+ #
2840
+ class StartLaunchResponse < Struct.new(
2841
+ :launch)
2842
+ SENSITIVE = []
2843
+ include Aws::Structure
2844
+ end
2845
+
2846
+ # @note When making an API call, you may pass StopExperimentRequest
2847
+ # data as a hash:
2848
+ #
2849
+ # {
2850
+ # desired_state: "COMPLETED", # accepts COMPLETED, CANCELLED
2851
+ # experiment: "ExperimentName", # required
2852
+ # project: "ProjectRef", # required
2853
+ # reason: "Description",
2854
+ # }
2855
+ #
2856
+ # @!attribute [rw] desired_state
2857
+ # Specify whether the experiment is to be considered `COMPLETED` or
2858
+ # `CANCELLED` after it stops.
2859
+ # @return [String]
2860
+ #
2861
+ # @!attribute [rw] experiment
2862
+ # The name of the experiment to stop.
2863
+ # @return [String]
2864
+ #
2865
+ # @!attribute [rw] project
2866
+ # The name or ARN of the project that contains the experiment to stop.
2867
+ # @return [String]
2868
+ #
2869
+ # @!attribute [rw] reason
2870
+ # A string that describes why you are stopping the experiment.
2871
+ # @return [String]
2872
+ #
2873
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopExperimentRequest AWS API Documentation
2874
+ #
2875
+ class StopExperimentRequest < Struct.new(
2876
+ :desired_state,
2877
+ :experiment,
2878
+ :project,
2879
+ :reason)
2880
+ SENSITIVE = []
2881
+ include Aws::Structure
2882
+ end
2883
+
2884
+ # @!attribute [rw] ended_time
2885
+ # The date and time that the experiment stopped.
2886
+ # @return [Time]
2887
+ #
2888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopExperimentResponse AWS API Documentation
2889
+ #
2890
+ class StopExperimentResponse < Struct.new(
2891
+ :ended_time)
2892
+ SENSITIVE = []
2893
+ include Aws::Structure
2894
+ end
2895
+
2896
+ # @note When making an API call, you may pass StopLaunchRequest
2897
+ # data as a hash:
2898
+ #
2899
+ # {
2900
+ # desired_state: "COMPLETED", # accepts COMPLETED, CANCELLED
2901
+ # launch: "LaunchName", # required
2902
+ # project: "ProjectRef", # required
2903
+ # reason: "Description",
2904
+ # }
2905
+ #
2906
+ # @!attribute [rw] desired_state
2907
+ # Specify whether to consider the launch as `COMPLETED` or `CANCELLED`
2908
+ # after it stops.
2909
+ # @return [String]
2910
+ #
2911
+ # @!attribute [rw] launch
2912
+ # The name of the launch to stop.
2913
+ # @return [String]
2914
+ #
2915
+ # @!attribute [rw] project
2916
+ # The name or ARN of the project that contains the launch that you
2917
+ # want to stop.
2918
+ # @return [String]
2919
+ #
2920
+ # @!attribute [rw] reason
2921
+ # A string that describes why you are stopping the launch.
2922
+ # @return [String]
2923
+ #
2924
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopLaunchRequest AWS API Documentation
2925
+ #
2926
+ class StopLaunchRequest < Struct.new(
2927
+ :desired_state,
2928
+ :launch,
2929
+ :project,
2930
+ :reason)
2931
+ SENSITIVE = []
2932
+ include Aws::Structure
2933
+ end
2934
+
2935
+ # @!attribute [rw] ended_time
2936
+ # The date and time that the launch stopped.
2937
+ # @return [Time]
2938
+ #
2939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopLaunchResponse AWS API Documentation
2940
+ #
2941
+ class StopLaunchResponse < Struct.new(
2942
+ :ended_time)
2943
+ SENSITIVE = []
2944
+ include Aws::Structure
2945
+ end
2946
+
2947
+ # @note When making an API call, you may pass TagResourceRequest
2948
+ # data as a hash:
2949
+ #
2950
+ # {
2951
+ # resource_arn: "Arn", # required
2952
+ # tags: { # required
2953
+ # "TagKey" => "TagValue",
2954
+ # },
2955
+ # }
2956
+ #
2957
+ # @!attribute [rw] resource_arn
2958
+ # The ARN of the CloudWatch Evidently resource that you're adding
2959
+ # tags to.
2960
+ # @return [String]
2961
+ #
2962
+ # @!attribute [rw] tags
2963
+ # The list of key-value pairs to associate with the resource.
2964
+ # @return [Hash<String,String>]
2965
+ #
2966
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/TagResourceRequest AWS API Documentation
2967
+ #
2968
+ class TagResourceRequest < Struct.new(
2969
+ :resource_arn,
2970
+ :tags)
2971
+ SENSITIVE = []
2972
+ include Aws::Structure
2973
+ end
2974
+
2975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/TagResourceResponse AWS API Documentation
2976
+ #
2977
+ class TagResourceResponse < Aws::EmptyStructure; end
2978
+
2979
+ # The request was denied because of request throttling. Retry the
2980
+ # request.
2981
+ #
2982
+ # @!attribute [rw] message
2983
+ # @return [String]
2984
+ #
2985
+ # @!attribute [rw] quota_code
2986
+ # The ID of the service quota that was exceeded.
2987
+ # @return [String]
2988
+ #
2989
+ # @!attribute [rw] service_code
2990
+ # The ID of the service that is associated with the error.
2991
+ # @return [String]
2992
+ #
2993
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ThrottlingException AWS API Documentation
2994
+ #
2995
+ class ThrottlingException < Struct.new(
2996
+ :message,
2997
+ :quota_code,
2998
+ :service_code)
2999
+ SENSITIVE = []
3000
+ include Aws::Structure
3001
+ end
3002
+
3003
+ # A structure that defines one treatment in an experiment. A treatment
3004
+ # is a variation of the feature that you are including in the
3005
+ # experiment.
3006
+ #
3007
+ # @!attribute [rw] description
3008
+ # The description of the treatment.
3009
+ # @return [String]
3010
+ #
3011
+ # @!attribute [rw] feature_variations
3012
+ # The feature variation used for this treatment. This is a key-value
3013
+ # pair. The key is the feature name, and the value is the variation
3014
+ # name.
3015
+ # @return [Hash<String,String>]
3016
+ #
3017
+ # @!attribute [rw] name
3018
+ # The name of this treatment.
3019
+ # @return [String]
3020
+ #
3021
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Treatment AWS API Documentation
3022
+ #
3023
+ class Treatment < Struct.new(
3024
+ :description,
3025
+ :feature_variations,
3026
+ :name)
3027
+ SENSITIVE = []
3028
+ include Aws::Structure
3029
+ end
3030
+
3031
+ # A structure that defines one treatment in an experiment. A treatment
3032
+ # is a variation of the feature that you are including in the
3033
+ # experiment.
3034
+ #
3035
+ # @note When making an API call, you may pass TreatmentConfig
3036
+ # data as a hash:
3037
+ #
3038
+ # {
3039
+ # description: "Description",
3040
+ # feature: "FeatureName", # required
3041
+ # name: "TreatmentName", # required
3042
+ # variation: "VariationName", # required
3043
+ # }
3044
+ #
3045
+ # @!attribute [rw] description
3046
+ # A description for this treatment.
3047
+ # @return [String]
3048
+ #
3049
+ # @!attribute [rw] feature
3050
+ # The feature that this experiment is testing.
3051
+ # @return [String]
3052
+ #
3053
+ # @!attribute [rw] name
3054
+ # A name for this treatment.
3055
+ # @return [String]
3056
+ #
3057
+ # @!attribute [rw] variation
3058
+ # The name of the variation to use as this treatment in the
3059
+ # experiment.
3060
+ # @return [String]
3061
+ #
3062
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/TreatmentConfig AWS API Documentation
3063
+ #
3064
+ class TreatmentConfig < Struct.new(
3065
+ :description,
3066
+ :feature,
3067
+ :name,
3068
+ :variation)
3069
+ SENSITIVE = []
3070
+ include Aws::Structure
3071
+ end
3072
+
3073
+ # @note When making an API call, you may pass UntagResourceRequest
3074
+ # data as a hash:
3075
+ #
3076
+ # {
3077
+ # resource_arn: "Arn", # required
3078
+ # tag_keys: ["TagKey"], # required
3079
+ # }
3080
+ #
3081
+ # @!attribute [rw] resource_arn
3082
+ # The ARN of the CloudWatch Evidently resource that you're removing
3083
+ # tags from.
3084
+ # @return [String]
3085
+ #
3086
+ # @!attribute [rw] tag_keys
3087
+ # The list of tag keys to remove from the resource.
3088
+ # @return [Array<String>]
3089
+ #
3090
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UntagResourceRequest AWS API Documentation
3091
+ #
3092
+ class UntagResourceRequest < Struct.new(
3093
+ :resource_arn,
3094
+ :tag_keys)
3095
+ SENSITIVE = []
3096
+ include Aws::Structure
3097
+ end
3098
+
3099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UntagResourceResponse AWS API Documentation
3100
+ #
3101
+ class UntagResourceResponse < Aws::EmptyStructure; end
3102
+
3103
+ # @note When making an API call, you may pass UpdateExperimentRequest
3104
+ # data as a hash:
3105
+ #
3106
+ # {
3107
+ # description: "Description",
3108
+ # experiment: "ExperimentName", # required
3109
+ # metric_goals: [
3110
+ # {
3111
+ # desired_change: "INCREASE", # accepts INCREASE, DECREASE
3112
+ # metric_definition: { # required
3113
+ # entity_id_key: "JsonPath",
3114
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
3115
+ # name: "CwDimensionSafeName",
3116
+ # unit_label: "MetricUnitLabel",
3117
+ # value_key: "JsonPath",
3118
+ # },
3119
+ # },
3120
+ # ],
3121
+ # online_ab_config: {
3122
+ # control_treatment_name: "TreatmentName",
3123
+ # treatment_weights: {
3124
+ # "TreatmentName" => 1,
3125
+ # },
3126
+ # },
3127
+ # project: "ProjectRef", # required
3128
+ # randomization_salt: "RandomizationSalt",
3129
+ # sampling_rate: 1,
3130
+ # treatments: [
3131
+ # {
3132
+ # description: "Description",
3133
+ # feature: "FeatureName", # required
3134
+ # name: "TreatmentName", # required
3135
+ # variation: "VariationName", # required
3136
+ # },
3137
+ # ],
3138
+ # }
3139
+ #
3140
+ # @!attribute [rw] description
3141
+ # An optional description of the experiment.
3142
+ # @return [String]
3143
+ #
3144
+ # @!attribute [rw] experiment
3145
+ # The name of the experiment to update.
3146
+ # @return [String]
3147
+ #
3148
+ # @!attribute [rw] metric_goals
3149
+ # An array of structures that defines the metrics used for the
3150
+ # experiment, and whether a higher or lower value for each metric is
3151
+ # the goal.
3152
+ # @return [Array<Types::MetricGoalConfig>]
3153
+ #
3154
+ # @!attribute [rw] online_ab_config
3155
+ # A structure that contains the configuration of which variation o use
3156
+ # as the "control" version. The "control" version is used for
3157
+ # comparison with other variations. This structure also specifies how
3158
+ # much experiment traffic is allocated to each variation.
3159
+ # @return [Types::OnlineAbConfig]
3160
+ #
3161
+ # @!attribute [rw] project
3162
+ # The name or ARN of the project that contains the experiment that you
3163
+ # want to update.
3164
+ # @return [String]
3165
+ #
3166
+ # @!attribute [rw] randomization_salt
3167
+ # When Evidently assigns a particular user session to an experiment,
3168
+ # it must use a randomization ID to determine which variation the user
3169
+ # session is served. This randomization ID is a combination of the
3170
+ # entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
3171
+ # Evidently uses the experiment name as the `randomizationSalt`.
3172
+ # @return [String]
3173
+ #
3174
+ # @!attribute [rw] sampling_rate
3175
+ # The portion of the available audience that you want to allocate to
3176
+ # this experiment, in thousandths of a percent. The available audience
3177
+ # is the total audience minus the audience that you have allocated to
3178
+ # overrides or current launches of this feature.
3179
+ #
3180
+ # This is represented in thousandths of a percent. For example,
3181
+ # specify 20,000 to allocate 20% of the available audience.
3182
+ # @return [Integer]
3183
+ #
3184
+ # @!attribute [rw] treatments
3185
+ # An array of structures that define the variations being tested in
3186
+ # the experiment.
3187
+ # @return [Array<Types::TreatmentConfig>]
3188
+ #
3189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateExperimentRequest AWS API Documentation
3190
+ #
3191
+ class UpdateExperimentRequest < Struct.new(
3192
+ :description,
3193
+ :experiment,
3194
+ :metric_goals,
3195
+ :online_ab_config,
3196
+ :project,
3197
+ :randomization_salt,
3198
+ :sampling_rate,
3199
+ :treatments)
3200
+ SENSITIVE = []
3201
+ include Aws::Structure
3202
+ end
3203
+
3204
+ # @!attribute [rw] experiment
3205
+ # A structure containing the configuration details of the experiment
3206
+ # that was updated.
3207
+ # @return [Types::Experiment]
3208
+ #
3209
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateExperimentResponse AWS API Documentation
3210
+ #
3211
+ class UpdateExperimentResponse < Struct.new(
3212
+ :experiment)
3213
+ SENSITIVE = []
3214
+ include Aws::Structure
3215
+ end
3216
+
3217
+ # @note When making an API call, you may pass UpdateFeatureRequest
3218
+ # data as a hash:
3219
+ #
3220
+ # {
3221
+ # add_or_update_variations: [
3222
+ # {
3223
+ # name: "VariationName", # required
3224
+ # value: { # required
3225
+ # bool_value: false,
3226
+ # double_value: 1.0,
3227
+ # long_value: 1,
3228
+ # string_value: "VariableValueStringValueString",
3229
+ # },
3230
+ # },
3231
+ # ],
3232
+ # default_variation: "VariationName",
3233
+ # description: "Description",
3234
+ # entity_overrides: {
3235
+ # "EntityId" => "VariationName",
3236
+ # },
3237
+ # evaluation_strategy: "ALL_RULES", # accepts ALL_RULES, DEFAULT_VARIATION
3238
+ # feature: "FeatureName", # required
3239
+ # project: "ProjectRef", # required
3240
+ # remove_variations: ["VariationName"],
3241
+ # }
3242
+ #
3243
+ # @!attribute [rw] add_or_update_variations
3244
+ # To update variation configurations for this feature, or add new
3245
+ # ones, specify this structure. In this array, include any variations
3246
+ # that you want to add or update. If the array includes a variation
3247
+ # name that already exists for this feature, it is updated. If it
3248
+ # includes a new variation name, it is added as a new variation.
3249
+ # @return [Array<Types::VariationConfig>]
3250
+ #
3251
+ # @!attribute [rw] default_variation
3252
+ # The name of the variation to use as the default variation. The
3253
+ # default variation is served to users who are not allocated to any
3254
+ # ongoing launches or experiments of this feature.
3255
+ # @return [String]
3256
+ #
3257
+ # @!attribute [rw] description
3258
+ # An optional description of the feature.
3259
+ # @return [String]
3260
+ #
3261
+ # @!attribute [rw] entity_overrides
3262
+ # Specified users that should always be served a specific variation of
3263
+ # a feature. Each user is specified by a key-value pair . For each
3264
+ # key, specify a user by entering their user ID, account ID, or some
3265
+ # other identifier. For the value, specify the name of the variation
3266
+ # that they are to be served.
3267
+ # @return [Hash<String,String>]
3268
+ #
3269
+ # @!attribute [rw] evaluation_strategy
3270
+ # Specify `ALL_RULES` to activate the traffic allocation specified by
3271
+ # any ongoing launches or experiments. Specify `DEFAULT_VARIATION` to
3272
+ # serve the default variation to all users instead.
3273
+ # @return [String]
3274
+ #
3275
+ # @!attribute [rw] feature
3276
+ # The name of the feature to be updated.
3277
+ # @return [String]
3278
+ #
3279
+ # @!attribute [rw] project
3280
+ # The name or ARN of the project that contains the feature to be
3281
+ # updated.
3282
+ # @return [String]
3283
+ #
3284
+ # @!attribute [rw] remove_variations
3285
+ # Removes a variation from the feature. If the variation you specify
3286
+ # doesn't exist, then this makes no change and does not report an
3287
+ # error.
3288
+ #
3289
+ # This operation fails if you try to remove a variation that is part
3290
+ # of an ongoing launch or experiment.
3291
+ # @return [Array<String>]
3292
+ #
3293
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateFeatureRequest AWS API Documentation
3294
+ #
3295
+ class UpdateFeatureRequest < Struct.new(
3296
+ :add_or_update_variations,
3297
+ :default_variation,
3298
+ :description,
3299
+ :entity_overrides,
3300
+ :evaluation_strategy,
3301
+ :feature,
3302
+ :project,
3303
+ :remove_variations)
3304
+ SENSITIVE = []
3305
+ include Aws::Structure
3306
+ end
3307
+
3308
+ # @!attribute [rw] feature
3309
+ # A structure that contains information about the updated feature.
3310
+ # @return [Types::Feature]
3311
+ #
3312
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateFeatureResponse AWS API Documentation
3313
+ #
3314
+ class UpdateFeatureResponse < Struct.new(
3315
+ :feature)
3316
+ SENSITIVE = []
3317
+ include Aws::Structure
3318
+ end
3319
+
3320
+ # @note When making an API call, you may pass UpdateLaunchRequest
3321
+ # data as a hash:
3322
+ #
3323
+ # {
3324
+ # description: "Description",
3325
+ # groups: [
3326
+ # {
3327
+ # description: "Description",
3328
+ # feature: "FeatureName", # required
3329
+ # name: "GroupName", # required
3330
+ # variation: "VariationName", # required
3331
+ # },
3332
+ # ],
3333
+ # launch: "LaunchName", # required
3334
+ # metric_monitors: [
3335
+ # {
3336
+ # metric_definition: { # required
3337
+ # entity_id_key: "JsonPath",
3338
+ # event_pattern: "MetricDefinitionConfigEventPatternString",
3339
+ # name: "CwDimensionSafeName",
3340
+ # unit_label: "MetricUnitLabel",
3341
+ # value_key: "JsonPath",
3342
+ # },
3343
+ # },
3344
+ # ],
3345
+ # project: "ProjectRef", # required
3346
+ # randomization_salt: "RandomizationSalt",
3347
+ # scheduled_splits_config: {
3348
+ # steps: [ # required
3349
+ # {
3350
+ # group_weights: { # required
3351
+ # "GroupName" => 1,
3352
+ # },
3353
+ # start_time: Time.now, # required
3354
+ # },
3355
+ # ],
3356
+ # },
3357
+ # }
3358
+ #
3359
+ # @!attribute [rw] description
3360
+ # An optional description for the launch.
3361
+ # @return [String]
3362
+ #
3363
+ # @!attribute [rw] groups
3364
+ # An array of structures that contains the feature and variations that
3365
+ # are to be used for the launch.
3366
+ # @return [Array<Types::LaunchGroupConfig>]
3367
+ #
3368
+ # @!attribute [rw] launch
3369
+ # The name of the launch that is to be updated.
3370
+ # @return [String]
3371
+ #
3372
+ # @!attribute [rw] metric_monitors
3373
+ # An array of structures that define the metrics that will be used to
3374
+ # monitor the launch performance.
3375
+ # @return [Array<Types::MetricMonitorConfig>]
3376
+ #
3377
+ # @!attribute [rw] project
3378
+ # The name or ARN of the project that contains the launch that you
3379
+ # want to update.
3380
+ # @return [String]
3381
+ #
3382
+ # @!attribute [rw] randomization_salt
3383
+ # When Evidently assigns a particular user session to a launch, it
3384
+ # must use a randomization ID to determine which variation the user
3385
+ # session is served. This randomization ID is a combination of the
3386
+ # entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
3387
+ # Evidently uses the launch name as the `randomizationSalt`.
3388
+ # @return [String]
3389
+ #
3390
+ # @!attribute [rw] scheduled_splits_config
3391
+ # An array of structures that define the traffic allocation
3392
+ # percentages among the feature variations during each step of the
3393
+ # launch.
3394
+ # @return [Types::ScheduledSplitsLaunchConfig]
3395
+ #
3396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateLaunchRequest AWS API Documentation
3397
+ #
3398
+ class UpdateLaunchRequest < Struct.new(
3399
+ :description,
3400
+ :groups,
3401
+ :launch,
3402
+ :metric_monitors,
3403
+ :project,
3404
+ :randomization_salt,
3405
+ :scheduled_splits_config)
3406
+ SENSITIVE = []
3407
+ include Aws::Structure
3408
+ end
3409
+
3410
+ # @!attribute [rw] launch
3411
+ # A structure that contains the new configuration of the launch that
3412
+ # was updated.
3413
+ # @return [Types::Launch]
3414
+ #
3415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateLaunchResponse AWS API Documentation
3416
+ #
3417
+ class UpdateLaunchResponse < Struct.new(
3418
+ :launch)
3419
+ SENSITIVE = []
3420
+ include Aws::Structure
3421
+ end
3422
+
3423
+ # @note When making an API call, you may pass UpdateProjectDataDeliveryRequest
3424
+ # data as a hash:
3425
+ #
3426
+ # {
3427
+ # cloud_watch_logs: {
3428
+ # log_group: "CwLogGroupSafeName",
3429
+ # },
3430
+ # project: "ProjectRef", # required
3431
+ # s3_destination: {
3432
+ # bucket: "S3BucketSafeName",
3433
+ # prefix: "S3PrefixSafeName",
3434
+ # },
3435
+ # }
3436
+ #
3437
+ # @!attribute [rw] cloud_watch_logs
3438
+ # A structure containing the CloudWatch Logs log group where you want
3439
+ # to store evaluation events.
3440
+ # @return [Types::CloudWatchLogsDestinationConfig]
3441
+ #
3442
+ # @!attribute [rw] project
3443
+ # The name or ARN of the project that you want to modify the data
3444
+ # storage options for.
3445
+ # @return [String]
3446
+ #
3447
+ # @!attribute [rw] s3_destination
3448
+ # A structure containing the S3 bucket name and bucket prefix where
3449
+ # you want to store evaluation events.
3450
+ # @return [Types::S3DestinationConfig]
3451
+ #
3452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectDataDeliveryRequest AWS API Documentation
3453
+ #
3454
+ class UpdateProjectDataDeliveryRequest < Struct.new(
3455
+ :cloud_watch_logs,
3456
+ :project,
3457
+ :s3_destination)
3458
+ SENSITIVE = []
3459
+ include Aws::Structure
3460
+ end
3461
+
3462
+ # @!attribute [rw] project
3463
+ # A structure containing details about the project that you updated.
3464
+ # @return [Types::Project]
3465
+ #
3466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectDataDeliveryResponse AWS API Documentation
3467
+ #
3468
+ class UpdateProjectDataDeliveryResponse < Struct.new(
3469
+ :project)
3470
+ SENSITIVE = []
3471
+ include Aws::Structure
3472
+ end
3473
+
3474
+ # @note When making an API call, you may pass UpdateProjectRequest
3475
+ # data as a hash:
3476
+ #
3477
+ # {
3478
+ # description: "Description",
3479
+ # project: "ProjectRef", # required
3480
+ # }
3481
+ #
3482
+ # @!attribute [rw] description
3483
+ # An optional description of the project.
3484
+ # @return [String]
3485
+ #
3486
+ # @!attribute [rw] project
3487
+ # The name or ARN of the project to update.
3488
+ # @return [String]
3489
+ #
3490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectRequest AWS API Documentation
3491
+ #
3492
+ class UpdateProjectRequest < Struct.new(
3493
+ :description,
3494
+ :project)
3495
+ SENSITIVE = []
3496
+ include Aws::Structure
3497
+ end
3498
+
3499
+ # @!attribute [rw] project
3500
+ # A structure containing information about the updated project.
3501
+ # @return [Types::Project]
3502
+ #
3503
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectResponse AWS API Documentation
3504
+ #
3505
+ class UpdateProjectResponse < Struct.new(
3506
+ :project)
3507
+ SENSITIVE = []
3508
+ include Aws::Structure
3509
+ end
3510
+
3511
+ # The value of a parameter in the request caused an error.
3512
+ #
3513
+ # @!attribute [rw] field_list
3514
+ # The parameter that caused the exception.
3515
+ # @return [Array<Types::ValidationExceptionField>]
3516
+ #
3517
+ # @!attribute [rw] message
3518
+ # @return [String]
3519
+ #
3520
+ # @!attribute [rw] reason
3521
+ # A reason for the error.
3522
+ # @return [String]
3523
+ #
3524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ValidationException AWS API Documentation
3525
+ #
3526
+ class ValidationException < Struct.new(
3527
+ :field_list,
3528
+ :message,
3529
+ :reason)
3530
+ SENSITIVE = []
3531
+ include Aws::Structure
3532
+ end
3533
+
3534
+ # A structure containing an error name and message.
3535
+ #
3536
+ # @!attribute [rw] message
3537
+ # The error message.
3538
+ # @return [String]
3539
+ #
3540
+ # @!attribute [rw] name
3541
+ # The error name.
3542
+ # @return [String]
3543
+ #
3544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ValidationExceptionField AWS API Documentation
3545
+ #
3546
+ class ValidationExceptionField < Struct.new(
3547
+ :message,
3548
+ :name)
3549
+ SENSITIVE = []
3550
+ include Aws::Structure
3551
+ end
3552
+
3553
+ # The value assigned to a feature variation. This structure must contain
3554
+ # exactly one field. It can be `boolValue`, `doubleValue`, `longValue`,
3555
+ # or `stringValue`.
3556
+ #
3557
+ # @note VariableValue is a union - when making an API calls you must set exactly one of the members.
3558
+ #
3559
+ # @note VariableValue is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VariableValue corresponding to the set member.
3560
+ #
3561
+ # @!attribute [rw] bool_value
3562
+ # If this feature uses the Boolean variation type, this field contains
3563
+ # the Boolean value of this variation.
3564
+ # @return [Boolean]
3565
+ #
3566
+ # @!attribute [rw] double_value
3567
+ # If this feature uses the double integer variation type, this field
3568
+ # contains the double integer value of this variation.
3569
+ # @return [Float]
3570
+ #
3571
+ # @!attribute [rw] long_value
3572
+ # If this feature uses the long variation type, this field contains
3573
+ # the long value of this variation.
3574
+ # @return [Integer]
3575
+ #
3576
+ # @!attribute [rw] string_value
3577
+ # If this feature uses the string variation type, this field contains
3578
+ # the string value of this variation.
3579
+ # @return [String]
3580
+ #
3581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/VariableValue AWS API Documentation
3582
+ #
3583
+ class VariableValue < Struct.new(
3584
+ :bool_value,
3585
+ :double_value,
3586
+ :long_value,
3587
+ :string_value,
3588
+ :unknown)
3589
+ SENSITIVE = []
3590
+ include Aws::Structure
3591
+ include Aws::Structure::Union
3592
+
3593
+ class BoolValue < VariableValue; end
3594
+ class DoubleValue < VariableValue; end
3595
+ class LongValue < VariableValue; end
3596
+ class StringValue < VariableValue; end
3597
+ class Unknown < VariableValue; end
3598
+ end
3599
+
3600
+ # This structure contains the name and variation value of one variation
3601
+ # of a feature.
3602
+ #
3603
+ # @!attribute [rw] name
3604
+ # The name of the variation.
3605
+ # @return [String]
3606
+ #
3607
+ # @!attribute [rw] value
3608
+ # The value assigned to this variation.
3609
+ # @return [Types::VariableValue]
3610
+ #
3611
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Variation AWS API Documentation
3612
+ #
3613
+ class Variation < Struct.new(
3614
+ :name,
3615
+ :value)
3616
+ SENSITIVE = []
3617
+ include Aws::Structure
3618
+ end
3619
+
3620
+ # This structure contains the name and variation value of one variation
3621
+ # of a feature.
3622
+ #
3623
+ # @note When making an API call, you may pass VariationConfig
3624
+ # data as a hash:
3625
+ #
3626
+ # {
3627
+ # name: "VariationName", # required
3628
+ # value: { # required
3629
+ # bool_value: false,
3630
+ # double_value: 1.0,
3631
+ # long_value: 1,
3632
+ # string_value: "VariableValueStringValueString",
3633
+ # },
3634
+ # }
3635
+ #
3636
+ # @!attribute [rw] name
3637
+ # The name of the variation.
3638
+ # @return [String]
3639
+ #
3640
+ # @!attribute [rw] value
3641
+ # The value assigned to this variation.
3642
+ # @return [Types::VariableValue]
3643
+ #
3644
+ # @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/VariationConfig AWS API Documentation
3645
+ #
3646
+ class VariationConfig < Struct.new(
3647
+ :name,
3648
+ :value)
3649
+ SENSITIVE = []
3650
+ include Aws::Structure
3651
+ end
3652
+
3653
+ end
3654
+ end