# frozen_string_literal: true
# WARNING ABOUT GENERATED CODE
#
# This file is generated. See the contributing guide for more information:
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
#
# WARNING ABOUT GENERATED CODE
module Aws::CloudWatchEvidently
module Types
# You do not have sufficient permissions to perform this action.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/AccessDeniedException AWS API Documentation
#
class AccessDeniedException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass BatchEvaluateFeatureRequest
# data as a hash:
#
# {
# project: "ProjectRef", # required
# requests: [ # required
# {
# entity_id: "EntityId", # required
# evaluation_context: "JsonValue",
# feature: "FeatureName", # required
# },
# ],
# }
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature being
# evaluated.
# @return [String]
#
# @!attribute [rw] requests
# An array of structures, where each structure assigns a feature
# variation to one user session.
# @return [Array<Types::EvaluationRequest>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/BatchEvaluateFeatureRequest AWS API Documentation
#
class BatchEvaluateFeatureRequest < Struct.new(
:project,
:requests)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] results
# An array of structures, where each structure displays the results of
# one feature evaluation assignment to one user session.
# @return [Array<Types::EvaluationResult>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/BatchEvaluateFeatureResponse AWS API Documentation
#
class BatchEvaluateFeatureResponse < Struct.new(
:results)
SENSITIVE = []
include Aws::Structure
end
# A structure containing the CloudWatch Logs log group where the project
# stores evaluation events.
#
# @!attribute [rw] log_group
# The name of the log group where the project stores evaluation
# events.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CloudWatchLogsDestination AWS API Documentation
#
class CloudWatchLogsDestination < Struct.new(
:log_group)
SENSITIVE = []
include Aws::Structure
end
# A structure containing the CloudWatch Logs log group where the project
# stores evaluation events.
#
# @note When making an API call, you may pass CloudWatchLogsDestinationConfig
# data as a hash:
#
# {
# log_group: "CwLogGroupSafeName",
# }
#
# @!attribute [rw] log_group
# The name of the log group where the project stores evaluation
# events.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CloudWatchLogsDestinationConfig AWS API Documentation
#
class CloudWatchLogsDestinationConfig < Struct.new(
:log_group)
SENSITIVE = []
include Aws::Structure
end
# A resource was in an inconsistent state during an update or a
# deletion.
#
# @!attribute [rw] message
# @return [String]
#
# @!attribute [rw] resource_id
# The ID of the resource that caused the exception.
# @return [String]
#
# @!attribute [rw] resource_type
# The type of the resource that is associated with the error.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ConflictException AWS API Documentation
#
class ConflictException < Struct.new(
:message,
:resource_id,
:resource_type)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass CreateExperimentRequest
# data as a hash:
#
# {
# description: "Description",
# metric_goals: [ # required
# {
# desired_change: "INCREASE", # accepts INCREASE, DECREASE
# metric_definition: { # required
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# },
# },
# ],
# name: "ExperimentName", # required
# online_ab_config: {
# control_treatment_name: "TreatmentName",
# treatment_weights: {
# "TreatmentName" => 1,
# },
# },
# project: "ProjectRef", # required
# randomization_salt: "RandomizationSalt",
# sampling_rate: 1,
# tags: {
# "TagKey" => "TagValue",
# },
# treatments: [ # required
# {
# description: "Description",
# feature: "FeatureName", # required
# name: "TreatmentName", # required
# variation: "VariationName", # required
# },
# ],
# }
#
# @!attribute [rw] description
# An optional description of the experiment.
# @return [String]
#
# @!attribute [rw] metric_goals
# An array of structures that defines the metrics used for the
# experiment, and whether a higher or lower value for each metric is
# the goal.
# @return [Array<Types::MetricGoalConfig>]
#
# @!attribute [rw] name
# A name for the new experiment.
# @return [String]
#
# @!attribute [rw] online_ab_config
# A structure that contains the configuration of which variation to
# use as the "control" version. tThe "control" version is used for
# comparison with other variations. This structure also specifies how
# much experiment traffic is allocated to each variation.
# @return [Types::OnlineAbConfig]
#
# @!attribute [rw] project
# The name or ARN of the project that you want to create the new
# experiment in.
# @return [String]
#
# @!attribute [rw] randomization_salt
# When Evidently assigns a particular user session to an experiment,
# it must use a randomization ID to determine which variation the user
# session is served. This randomization ID is a combination of the
# entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
# Evidently uses the experiment name as the `randomizationSalt`.
# @return [String]
#
# @!attribute [rw] sampling_rate
# The portion of the available audience that you want to allocate to
# this experiment, in thousandths of a percent. The available audience
# is the total audience minus the audience that you have allocated to
# overrides or current launches of this feature.
#
# This is represented in thousandths of a percent. For example,
# specify 10,000 to allocate 10% of the available audience.
# @return [Integer]
#
# @!attribute [rw] tags
# Assigns one or more tags (key-value pairs) to the experiment.
#
# Tags can help you organize and categorize your resources. You can
# also use them to scope user permissions by granting a user
# permission to access or change only resources with certain tag
# values.
#
# Tags don't have any semantic meaning to Amazon Web Services and are
# interpreted strictly as strings of characters.
#
# <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>
# @return [Hash<String,String>]
#
# @!attribute [rw] treatments
# An array of structures that describe the configuration of each
# feature variation used in the experiment.
# @return [Array<Types::TreatmentConfig>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateExperimentRequest AWS API Documentation
#
class CreateExperimentRequest < Struct.new(
:description,
:metric_goals,
:name,
:online_ab_config,
:project,
:randomization_salt,
:sampling_rate,
:tags,
:treatments)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] experiment
# A structure containing the configuration details of the experiment
# that you created.
# @return [Types::Experiment]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateExperimentResponse AWS API Documentation
#
class CreateExperimentResponse < Struct.new(
:experiment)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass CreateFeatureRequest
# data as a hash:
#
# {
# default_variation: "VariationName",
# description: "Description",
# entity_overrides: {
# "EntityId" => "VariationName",
# },
# evaluation_strategy: "ALL_RULES", # accepts ALL_RULES, DEFAULT_VARIATION
# name: "FeatureName", # required
# project: "ProjectRef", # required
# tags: {
# "TagKey" => "TagValue",
# },
# variations: [ # required
# {
# name: "VariationName", # required
# value: { # required
# bool_value: false,
# double_value: 1.0,
# long_value: 1,
# string_value: "VariableValueStringValueString",
# },
# },
# ],
# }
#
# @!attribute [rw] default_variation
# The name of the variation to use as the default variation. The
# default variation is served to users who are not allocated to any
# ongoing launches or experiments of this feature.
#
# This variation must also be listed in the `variations` structure.
#
# If you omit `defaultVariation`, the first variation listed in the
# `variations` structure is used as the default variation.
# @return [String]
#
# @!attribute [rw] description
# An optional description of the feature.
# @return [String]
#
# @!attribute [rw] entity_overrides
# Specify users that should always be served a specific variation of a
# feature. Each user is specified by a key-value pair . For each key,
# specify a user by entering their user ID, account ID, or some other
# identifier. For the value, specify the name of the variation that
# they are to be served.
# @return [Hash<String,String>]
#
# @!attribute [rw] evaluation_strategy
# Specify `ALL_RULES` to activate the traffic allocation specified by
# any ongoing launches or experiments. Specify `DEFAULT_VARIATION` to
# serve the default variation to all users instead.
# @return [String]
#
# @!attribute [rw] name
# The name for the new feature.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that is to contain the new feature.
# @return [String]
#
# @!attribute [rw] tags
# Assigns one or more tags (key-value pairs) to the feature.
#
# Tags can help you organize and categorize your resources. You can
# also use them to scope user permissions by granting a user
# permission to access or change only resources with certain tag
# values.
#
# Tags don't have any semantic meaning to Amazon Web Services and are
# interpreted strictly as strings of characters.
#
# <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>
# @return [Hash<String,String>]
#
# @!attribute [rw] variations
# An array of structures that contain the configuration of the
# feature's different variations.
# @return [Array<Types::VariationConfig>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateFeatureRequest AWS API Documentation
#
class CreateFeatureRequest < Struct.new(
:default_variation,
:description,
:entity_overrides,
:evaluation_strategy,
:name,
:project,
:tags,
:variations)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] feature
# A structure that contains information about the new feature.
# @return [Types::Feature]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateFeatureResponse AWS API Documentation
#
class CreateFeatureResponse < Struct.new(
:feature)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass CreateLaunchRequest
# data as a hash:
#
# {
# description: "Description",
# groups: [ # required
# {
# description: "Description",
# feature: "FeatureName", # required
# name: "GroupName", # required
# variation: "VariationName", # required
# },
# ],
# metric_monitors: [
# {
# metric_definition: { # required
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# },
# },
# ],
# name: "LaunchName", # required
# project: "ProjectRef", # required
# randomization_salt: "RandomizationSalt",
# scheduled_splits_config: {
# steps: [ # required
# {
# group_weights: { # required
# "GroupName" => 1,
# },
# start_time: Time.now, # required
# },
# ],
# },
# tags: {
# "TagKey" => "TagValue",
# },
# }
#
# @!attribute [rw] description
# An optional description for the launch.
# @return [String]
#
# @!attribute [rw] groups
# An array of structures that contains the feature and variations that
# are to be used for the launch.
# @return [Array<Types::LaunchGroupConfig>]
#
# @!attribute [rw] metric_monitors
# An array of structures that define the metrics that will be used to
# monitor the launch performance.
# @return [Array<Types::MetricMonitorConfig>]
#
# @!attribute [rw] name
# The name for the new launch.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that you want to create the launch
# in.
# @return [String]
#
# @!attribute [rw] randomization_salt
# When Evidently assigns a particular user session to a launch, it
# must use a randomization ID to determine which variation the user
# session is served. This randomization ID is a combination of the
# entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
# Evidently uses the launch name as the `randomizationsSalt`.
# @return [String]
#
# @!attribute [rw] scheduled_splits_config
# An array of structures that define the traffic allocation
# percentages among the feature variations during each step of the
# launch.
# @return [Types::ScheduledSplitsLaunchConfig]
#
# @!attribute [rw] tags
# Assigns one or more tags (key-value pairs) to the launch.
#
# Tags can help you organize and categorize your resources. You can
# also use them to scope user permissions by granting a user
# permission to access or change only resources with certain tag
# values.
#
# Tags don't have any semantic meaning to Amazon Web Services and are
# interpreted strictly as strings of characters.
#
# <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>
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateLaunchRequest AWS API Documentation
#
class CreateLaunchRequest < Struct.new(
:description,
:groups,
:metric_monitors,
:name,
:project,
:randomization_salt,
:scheduled_splits_config,
:tags)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] launch
# A structure that contains the configuration of the launch that was
# created.
# @return [Types::Launch]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateLaunchResponse AWS API Documentation
#
class CreateLaunchResponse < Struct.new(
:launch)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass CreateProjectRequest
# data as a hash:
#
# {
# data_delivery: {
# cloud_watch_logs: {
# log_group: "CwLogGroupSafeName",
# },
# s3_destination: {
# bucket: "S3BucketSafeName",
# prefix: "S3PrefixSafeName",
# },
# },
# description: "Description",
# name: "ProjectName", # required
# tags: {
# "TagKey" => "TagValue",
# },
# }
#
# @!attribute [rw] data_delivery
# A structure that contains information about where Evidently is to
# store evaluation events for longer term storage, if you choose to do
# so. If you choose not to store these events, Evidently deletes them
# after using them to produce metrics and other experiment results
# that you can view.
# @return [Types::ProjectDataDeliveryConfig]
#
# @!attribute [rw] description
# An optional description of the project.
# @return [String]
#
# @!attribute [rw] name
# The name for the project.
# @return [String]
#
# @!attribute [rw] tags
# Assigns one or more tags (key-value pairs) to the project.
#
# Tags can help you organize and categorize your resources. You can
# also use them to scope user permissions by granting a user
# permission to access or change only resources with certain tag
# values.
#
# Tags don't have any semantic meaning to Amazon Web Services and are
# interpreted strictly as strings of characters.
#
# <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>
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateProjectRequest AWS API Documentation
#
class CreateProjectRequest < Struct.new(
:data_delivery,
:description,
:name,
:tags)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] project
# A structure that contains information about the created project.
# @return [Types::Project]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateProjectResponse AWS API Documentation
#
class CreateProjectResponse < Struct.new(
:project)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass DeleteExperimentRequest
# data as a hash:
#
# {
# experiment: "ExperimentName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] experiment
# The name of the experiment to delete.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the experiment to
# delete.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteExperimentRequest AWS API Documentation
#
class DeleteExperimentRequest < Struct.new(
:experiment,
:project)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteExperimentResponse AWS API Documentation
#
class DeleteExperimentResponse < Aws::EmptyStructure; end
# @note When making an API call, you may pass DeleteFeatureRequest
# data as a hash:
#
# {
# feature: "FeatureName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] feature
# The name of the feature to delete.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature to delete.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteFeatureRequest AWS API Documentation
#
class DeleteFeatureRequest < Struct.new(
:feature,
:project)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteFeatureResponse AWS API Documentation
#
class DeleteFeatureResponse < Aws::EmptyStructure; end
# @note When making an API call, you may pass DeleteLaunchRequest
# data as a hash:
#
# {
# launch: "LaunchName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] launch
# The name of the launch to delete.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the launch to delete.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteLaunchRequest AWS API Documentation
#
class DeleteLaunchRequest < Struct.new(
:launch,
:project)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteLaunchResponse AWS API Documentation
#
class DeleteLaunchResponse < Aws::EmptyStructure; end
# @note When making an API call, you may pass DeleteProjectRequest
# data as a hash:
#
# {
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] project
# The name or ARN of the project to delete.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteProjectRequest AWS API Documentation
#
class DeleteProjectRequest < Struct.new(
:project)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/DeleteProjectResponse AWS API Documentation
#
class DeleteProjectResponse < Aws::EmptyStructure; end
# @note When making an API call, you may pass EvaluateFeatureRequest
# data as a hash:
#
# {
# entity_id: "EntityId", # required
# evaluation_context: "JsonValue",
# feature: "FeatureName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] entity_id
# An internal ID that represents a unique user of the application.
# This `entityID` is checked against any override rules assigned for
# this feature.
# @return [String]
#
# @!attribute [rw] evaluation_context
# A JSON block of attributes that you can optionally pass in. This
# JSON block is included in the evaluation events sent to Evidently
# from the user session.
# @return [String]
#
# @!attribute [rw] feature
# The name of the feature being evaluated.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains this feature.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluateFeatureRequest AWS API Documentation
#
class EvaluateFeatureRequest < Struct.new(
:entity_id,
:evaluation_context,
:feature,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] details
# If this user was assigned to a launch or experiment, this field
# lists the launch or experiment name.
# @return [String]
#
# @!attribute [rw] reason
# Specifies the reason that the user session was assigned this
# variation. Possible values include `DEFAULT`, meaning the user was
# served the default variation; `LAUNCH_RULE_MATCH`, if the user
# session was enrolled in a launch; `EXPERIMENT_RULE_MATCH`, if the
# user session was enrolled in an experiment; or
# `ENTITY_OVERRIDES_MATCH`, if the user's `entityId` matches an
# override rule.
# @return [String]
#
# @!attribute [rw] value
# The value assigned to this variation to differentiate it from the
# other variations of this feature.
# @return [Types::VariableValue]
#
# @!attribute [rw] variation
# The name of the variation that was served to the user session.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluateFeatureResponse AWS API Documentation
#
class EvaluateFeatureResponse < Struct.new(
:details,
:reason,
:value,
:variation)
SENSITIVE = []
include Aws::Structure
end
# This structure assigns a feature variation to one user session.
#
# @note When making an API call, you may pass EvaluationRequest
# data as a hash:
#
# {
# entity_id: "EntityId", # required
# evaluation_context: "JsonValue",
# feature: "FeatureName", # required
# }
#
# @!attribute [rw] entity_id
# An internal ID that represents a unique user session of the
# application. This `entityID` is checked against any override rules
# assigned for this feature.
# @return [String]
#
# @!attribute [rw] evaluation_context
# A JSON block of attributes that you can optionally pass in. This
# JSON block is included in the evaluation events sent to Evidently
# from the user session.
# @return [String]
#
# @!attribute [rw] feature
# The name of the feature being evaluated.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluationRequest AWS API Documentation
#
class EvaluationRequest < Struct.new(
:entity_id,
:evaluation_context,
:feature)
SENSITIVE = []
include Aws::Structure
end
# This structure displays the results of one feature evaluation
# assignment to one user session.
#
# @!attribute [rw] details
# If this user was assigned to a launch or experiment, this field
# lists the launch or experiment name.
# @return [String]
#
# @!attribute [rw] entity_id
# An internal ID that represents a unique user session of the
# application.
# @return [String]
#
# @!attribute [rw] feature
# The name of the feature being evaluated.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature being
# evaluated.
# @return [String]
#
# @!attribute [rw] reason
# Specifies the reason that the user session was assigned this
# variation. Possible values include `DEFAULT`, meaning the user was
# served the default variation; `LAUNCH_RULE_MATCH`, if the user
# session was enrolled in a launch; or `EXPERIMENT_RULE_MATCH`, if the
# user session was enrolled in an experiment.
# @return [String]
#
# @!attribute [rw] value
# The value assigned to this variation to differentiate it from the
# other variations of this feature.
# @return [Types::VariableValue]
#
# @!attribute [rw] variation
# The name of the variation that was served to the user session.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluationResult AWS API Documentation
#
class EvaluationResult < Struct.new(
:details,
:entity_id,
:feature,
:project,
:reason,
:value,
:variation)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains the information about an evaluation rule for
# this feature, if it is used in a launch or experiment.
#
# @!attribute [rw] name
# The name of the experiment or launch.
# @return [String]
#
# @!attribute [rw] type
# This value is `aws.evidently.splits` if this is an evaluation rule
# for a launch, and it is `aws.evidently.onlineab` if this is an
# evaluation rule for an experiment.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/EvaluationRule AWS API Documentation
#
class EvaluationRule < Struct.new(
:name,
:type)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains the information about one evaluation event
# or custom event sent to Evidently. This is a JSON payload. If this
# event specifies a pre-defined event type, the payload must follow the
# defined event schema.
#
# @note When making an API call, you may pass Event
# data as a hash:
#
# {
# data: "JsonValue", # required
# timestamp: Time.now, # required
# type: "aws.evidently.evaluation", # required, accepts aws.evidently.evaluation, aws.evidently.custom
# }
#
# @!attribute [rw] data
# The event data.
# @return [String]
#
# @!attribute [rw] timestamp
# The timestamp of the event.
# @return [Time]
#
# @!attribute [rw] type
# `aws.evidently.evaluation` specifies an evaluation event, which
# determines which feature variation that a user sees.
# `aws.evidently.custom` specifies a custom event, which generates
# metrics from user actions such as clicks and checkouts.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Event AWS API Documentation
#
class Event < Struct.new(
:data,
:timestamp,
:type)
SENSITIVE = []
include Aws::Structure
end
# A structure containing the configuration details of an experiment.
#
# @!attribute [rw] arn
# The ARN of the experiment.
# @return [String]
#
# @!attribute [rw] created_time
# The date and time that the experiment is first created.
# @return [Time]
#
# @!attribute [rw] description
# A description of the experiment.
# @return [String]
#
# @!attribute [rw] execution
# A structure that contains the date and time that the experiment
# started and ended.
# @return [Types::ExperimentExecution]
#
# @!attribute [rw] last_updated_time
# The date and time that the experiment was most recently updated.
# @return [Time]
#
# @!attribute [rw] metric_goals
# An array of structures that defines the metrics used for the
# experiment, and whether a higher or lower value for each metric is
# the goal.
# @return [Array<Types::MetricGoal>]
#
# @!attribute [rw] name
# The name of the experiment.
# @return [String]
#
# @!attribute [rw] online_ab_definition
# A structure that contains the configuration of which variation to
# use as the "control" version. The "control" version is used for
# comparison with other variations. This structure also specifies how
# much experiment traffic is allocated to each variation.
# @return [Types::OnlineAbDefinition]
#
# @!attribute [rw] project
# The name or ARN of the project that contains this experiment.
# @return [String]
#
# @!attribute [rw] randomization_salt
# This value is used when Evidently assigns a particular user session
# to the experiment. It helps create a randomization ID to determine
# which variation the user session is served. This randomization ID is
# a combination of the entity ID and `randomizationSalt`.
# @return [String]
#
# @!attribute [rw] sampling_rate
# In thousandths of a percent, the amount of the available audience
# that is allocated to this experiment. The available audience is the
# total audience minus the audience that you have allocated to
# overrides or current launches of this feature.
#
# This is represented in thousandths of a percent, so a value of
# 10,000 is 10% of the available audience.
# @return [Integer]
#
# @!attribute [rw] schedule
# A structure that contains the time and date that Evidently completed
# the analysis of the experiment.
# @return [Types::ExperimentSchedule]
#
# @!attribute [rw] status
# The current state of the experiment.
# @return [String]
#
# @!attribute [rw] status_reason
# If the experiment was stopped, this is the string that was entered
# by the person who stopped the experiment, to explain why it was
# stopped.
# @return [String]
#
# @!attribute [rw] tags
# The list of tag keys and values associated with this experiment.
# @return [Hash<String,String>]
#
# @!attribute [rw] treatments
# An array of structures that describe the configuration of each
# feature variation used in the experiment.
# @return [Array<Types::Treatment>]
#
# @!attribute [rw] type
# The type of this experiment. Currently, this value must be
# `aws.experiment.onlineab`.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Experiment AWS API Documentation
#
class Experiment < Struct.new(
:arn,
:created_time,
:description,
:execution,
:last_updated_time,
:metric_goals,
:name,
:online_ab_definition,
:project,
:randomization_salt,
:sampling_rate,
:schedule,
:status,
:status_reason,
:tags,
:treatments,
:type)
SENSITIVE = []
include Aws::Structure
end
# This structure contains the date and time that the experiment started
# and ended.
#
# @!attribute [rw] ended_time
# The date and time that the experiment ended.
# @return [Time]
#
# @!attribute [rw] started_time
# The date and time that the experiment started.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentExecution AWS API Documentation
#
class ExperimentExecution < Struct.new(
:ended_time,
:started_time)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains results of an experiment.
#
# @!attribute [rw] content
# The content of the report.
# @return [String]
#
# @!attribute [rw] metric_name
# The name of the metric that is analyzed in this experiment report.
# @return [String]
#
# @!attribute [rw] report_name
# The type of analysis used for this report.
# @return [String]
#
# @!attribute [rw] treatment_name
# The name of the variation that this report pertains to.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentReport AWS API Documentation
#
class ExperimentReport < Struct.new(
:content,
:metric_name,
:report_name,
:treatment_name)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains experiment results for one metric that is
# monitored in the experiment.
#
# @!attribute [rw] metric_name
# The name of the metric.
# @return [String]
#
# @!attribute [rw] result_stat
# The experiment statistic that these results pertain to.
# @return [String]
#
# @!attribute [rw] treatment_name
# The treatment, or variation, that returned the `values` in this
# structure.
# @return [String]
#
# @!attribute [rw] values
# The values for the `metricName` that were recorded in the
# experiment.
# @return [Array<Float>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentResultsData AWS API Documentation
#
class ExperimentResultsData < Struct.new(
:metric_name,
:result_stat,
:treatment_name,
:values)
SENSITIVE = []
include Aws::Structure
end
# This structure contains the time and date that Evidently completed the
# analysis of the experiment.
#
# @!attribute [rw] analysis_complete_time
# The time and date that Evidently completed the analysis of the
# experiment.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ExperimentSchedule AWS API Documentation
#
class ExperimentSchedule < Struct.new(
:analysis_complete_time)
SENSITIVE = []
include Aws::Structure
end
# This structure contains information about one Evidently feature in
# your account.
#
# @!attribute [rw] arn
# The ARN of the feature.
# @return [String]
#
# @!attribute [rw] created_time
# The date and time that the feature is created.
# @return [Time]
#
# @!attribute [rw] default_variation
# The name of the variation that is used as the default variation. The
# default variation is served to users who are not allocated to any
# ongoing launches or experiments of this feature.
#
# This variation must also be listed in the `variations` structure.
#
# If you omit `defaultVariation`, the first variation listed in the
# `variations` structure is used as the default variation.
# @return [String]
#
# @!attribute [rw] description
# The description of the feature.
# @return [String]
#
# @!attribute [rw] entity_overrides
# A set of key-value pairs that specify users who should always be
# served a specific variation of a feature. Each key specifies a user
# using their user ID, account ID, or some other identifier. The value
# specifies the name of the variation that the user is to be served.
#
# For the override to be successful, the value of the key must match
# the `entityId` used in the [EvaluateFeature][1] operation.
#
#
#
# [1]: https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_EvaluateFeature.html
# @return [Hash<String,String>]
#
# @!attribute [rw] evaluation_rules
# An array of structures that define the evaluation rules for the
# feature.
# @return [Array<Types::EvaluationRule>]
#
# @!attribute [rw] evaluation_strategy
# If this value is `ALL_RULES`, the traffic allocation specified by
# any ongoing launches or experiments is being used. If this is
# `DEFAULT_VARIATION`, the default variation is being served to all
# users.
# @return [String]
#
# @!attribute [rw] last_updated_time
# The date and time that the feature was most recently updated.
# @return [Time]
#
# @!attribute [rw] name
# The name of the feature.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature.
# @return [String]
#
# @!attribute [rw] status
# The current state of the feature.
# @return [String]
#
# @!attribute [rw] tags
# The list of tag keys and values associated with this feature.
# @return [Hash<String,String>]
#
# @!attribute [rw] value_type
# Defines the type of value used to define the different feature
# variations. For more information, see [Variation types][1]
#
#
#
# [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently-variationtypes.html
# @return [String]
#
# @!attribute [rw] variations
# An array of structures that contain the configuration of the
# feature's different variations.
# @return [Array<Types::Variation>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Feature AWS API Documentation
#
class Feature < Struct.new(
:arn,
:created_time,
:default_variation,
:description,
:entity_overrides,
:evaluation_rules,
:evaluation_strategy,
:last_updated_time,
:name,
:project,
:status,
:tags,
:value_type,
:variations)
SENSITIVE = []
include Aws::Structure
end
# This structure contains information about one Evidently feature in
# your account.
#
# @!attribute [rw] arn
# The ARN of the feature.
# @return [String]
#
# @!attribute [rw] created_time
# The date and time that the feature is created.
# @return [Time]
#
# @!attribute [rw] default_variation
# The name of the variation that is used as the default variation. The
# default variation is served to users who are not allocated to any
# ongoing launches or experiments of this feature.
# @return [String]
#
# @!attribute [rw] evaluation_rules
# An array of structures that define
# @return [Array<Types::EvaluationRule>]
#
# @!attribute [rw] evaluation_strategy
# If this value is `ALL_RULES`, the traffic allocation specified by
# any ongoing launches or experiments is being used. If this is
# `DEFAULT_VARIATION`, the default variation is being served to all
# users.
# @return [String]
#
# @!attribute [rw] last_updated_time
# The date and time that the feature was most recently updated.
# @return [Time]
#
# @!attribute [rw] name
# The name of the feature.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature.
# @return [String]
#
# @!attribute [rw] status
# The current state of the feature.
# @return [String]
#
# @!attribute [rw] tags
# The list of tag keys and values associated with this feature.
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/FeatureSummary AWS API Documentation
#
class FeatureSummary < Struct.new(
:arn,
:created_time,
:default_variation,
:evaluation_rules,
:evaluation_strategy,
:last_updated_time,
:name,
:project,
:status,
:tags)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass GetExperimentRequest
# data as a hash:
#
# {
# experiment: "ExperimentName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] experiment
# The name of the experiment that you want to see the details of.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the experiment.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentRequest AWS API Documentation
#
class GetExperimentRequest < Struct.new(
:experiment,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] experiment
# A structure containing the configuration details of the experiment.
# @return [Types::Experiment]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentResponse AWS API Documentation
#
class GetExperimentResponse < Struct.new(
:experiment)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass GetExperimentResultsRequest
# data as a hash:
#
# {
# base_stat: "Mean", # accepts Mean
# end_time: Time.now,
# experiment: "ExperimentName", # required
# metric_names: ["CwDimensionSafeName"], # required
# period: 1,
# project: "ProjectRef", # required
# report_names: ["BayesianInference"], # accepts BayesianInference
# result_stats: ["BaseStat"], # accepts BaseStat, TreatmentEffect, ConfidenceInterval, PValue
# start_time: Time.now,
# treatment_names: ["TreatmentName"], # required
# }
#
# @!attribute [rw] base_stat
# The statistic used to calculate experiment results. Currently the
# only valid value is `mean`, which uses the mean of the collected
# values as the statistic.
# @return [String]
#
# @!attribute [rw] end_time
# The date and time that the experiment ended, if it is completed.
# @return [Time]
#
# @!attribute [rw] experiment
# The name of the experiment to retrieve the results of.
# @return [String]
#
# @!attribute [rw] metric_names
# The names of the experiment metrics that you want to see the results
# of.
# @return [Array<String>]
#
# @!attribute [rw] period
# In seconds, the amount of time to aggregate results together.
# @return [Integer]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the experiment that you
# want to see the results of.
# @return [String]
#
# @!attribute [rw] report_names
# The names of the report types that you want to see. Currently,
# `BayesianInference` is the only valid value.
# @return [Array<String>]
#
# @!attribute [rw] result_stats
# The statistics that you want to see in the returned results.
#
# * `PValue` specifies to use p-values for the results. A p-value is
# used in hypothesis testing to measure how often you are willing to
# make a mistake in rejecting the null hypothesis. A general
# practice is to reject the null hypothesis and declare that the
# results are statistically significant when the p-value is less
# than 0.05.
#
# * `ConfidenceInterval` specifies a confidence interval for the
# results. The confidence interval represents the range of values
# for the chosen metric that is likely to contain the true
# difference between the `baseStat` of a variation and the baseline.
# Evidently returns the 95% confidence interval.
#
# * `TreatmentEffect` is the difference in the statistic specified by
# the `baseStat` parameter between each variation and the default
# variation.
#
# * `BaseStat` returns the statistical values collected for the metric
# for each variation. The statistic uses the same statistic
# specified in the `baseStat` parameter. Therefore, if `baseStat` is
# `mean`, this returns the mean of the values collected for each
# variation.
# @return [Array<String>]
#
# @!attribute [rw] start_time
# The date and time that the experiment started.
# @return [Time]
#
# @!attribute [rw] treatment_names
# The names of the experiment treatments that you want to see the
# results for.
# @return [Array<String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentResultsRequest AWS API Documentation
#
class GetExperimentResultsRequest < Struct.new(
:base_stat,
:end_time,
:experiment,
:metric_names,
:period,
:project,
:report_names,
:result_stats,
:start_time,
:treatment_names)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] reports
# An array of structures that include the reports that you requested.
# @return [Array<Types::ExperimentReport>]
#
# @!attribute [rw] results_data
# An array of structures that include experiment results including
# metric names and values.
# @return [Array<Types::ExperimentResultsData>]
#
# @!attribute [rw] timestamps
# The timestamps of each result returned.
# @return [Array<Time>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetExperimentResultsResponse AWS API Documentation
#
class GetExperimentResultsResponse < Struct.new(
:reports,
:results_data,
:timestamps)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass GetFeatureRequest
# data as a hash:
#
# {
# feature: "FeatureName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] feature
# The name of the feature that you want to retrieve information for.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetFeatureRequest AWS API Documentation
#
class GetFeatureRequest < Struct.new(
:feature,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] feature
# A structure containing the configuration details of the feature.
# @return [Types::Feature]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetFeatureResponse AWS API Documentation
#
class GetFeatureResponse < Struct.new(
:feature)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass GetLaunchRequest
# data as a hash:
#
# {
# launch: "LaunchName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] launch
# The name of the launch that you want to see the details of.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the launch.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetLaunchRequest AWS API Documentation
#
class GetLaunchRequest < Struct.new(
:launch,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] launch
# A structure containing the configuration details of the launch.
# @return [Types::Launch]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetLaunchResponse AWS API Documentation
#
class GetLaunchResponse < Struct.new(
:launch)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass GetProjectRequest
# data as a hash:
#
# {
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] project
# The name or ARN of the project that you want to see the details of.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetProjectRequest AWS API Documentation
#
class GetProjectRequest < Struct.new(
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] project
# A structure containing the configuration details of the project.
# @return [Types::Project]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/GetProjectResponse AWS API Documentation
#
class GetProjectResponse < Struct.new(
:project)
SENSITIVE = []
include Aws::Structure
end
# Unexpected error while processing the request. Retry the request.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/InternalServerException AWS API Documentation
#
class InternalServerException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# This structure contains the configuration details of one Evidently
# launch.
#
# @!attribute [rw] arn
# The ARN of the launch.
# @return [String]
#
# @!attribute [rw] created_time
# The date and time that the launch is created.
# @return [Time]
#
# @!attribute [rw] description
# The description of the launch.
# @return [String]
#
# @!attribute [rw] execution
# A structure that contains information about the start and end times
# of the launch.
# @return [Types::LaunchExecution]
#
# @!attribute [rw] groups
# An array of structures that define the feature variations that are
# being used in the launch.
# @return [Array<Types::LaunchGroup>]
#
# @!attribute [rw] last_updated_time
# The date and time that the launch was most recently updated.
# @return [Time]
#
# @!attribute [rw] metric_monitors
# An array of structures that define the metrics that are being used
# to monitor the launch performance.
# @return [Array<Types::MetricMonitor>]
#
# @!attribute [rw] name
# The name of the launch.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the launch.
# @return [String]
#
# @!attribute [rw] randomization_salt
# This value is used when Evidently assigns a particular user session
# to the launch, to help create a randomization ID to determine which
# variation the user session is served. This randomization ID is a
# combination of the entity ID and `randomizationSalt`.
# @return [String]
#
# @!attribute [rw] scheduled_splits_definition
# An array of structures that define the traffic allocation
# percentages among the feature variations during each step of the
# launch.
# @return [Types::ScheduledSplitsLaunchDefinition]
#
# @!attribute [rw] status
# The current state of the launch.
# @return [String]
#
# @!attribute [rw] status_reason
# If the launch was stopped, this is the string that was entered by
# the person who stopped the launch, to explain why it was stopped.
# @return [String]
#
# @!attribute [rw] tags
# The list of tag keys and values associated with this launch.
# @return [Hash<String,String>]
#
# @!attribute [rw] type
# The type of launch.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Launch AWS API Documentation
#
class Launch < Struct.new(
:arn,
:created_time,
:description,
:execution,
:groups,
:last_updated_time,
:metric_monitors,
:name,
:project,
:randomization_salt,
:scheduled_splits_definition,
:status,
:status_reason,
:tags,
:type)
SENSITIVE = []
include Aws::Structure
end
# This structure contains information about the start and end times of
# the launch.
#
# @!attribute [rw] ended_time
# The date and time that the launch ended.
# @return [Time]
#
# @!attribute [rw] started_time
# The date and time that the launch started.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/LaunchExecution AWS API Documentation
#
class LaunchExecution < Struct.new(
:ended_time,
:started_time)
SENSITIVE = []
include Aws::Structure
end
# A structure that defines one launch group in a launch. A launch group
# is a variation of the feature that you are including in the launch.
#
# @!attribute [rw] description
# A description of the launch group.
# @return [String]
#
# @!attribute [rw] feature_variations
# The feature variation for this launch group. This is a key-value
# pair.
# @return [Hash<String,String>]
#
# @!attribute [rw] name
# The name of the launch group.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/LaunchGroup AWS API Documentation
#
class LaunchGroup < Struct.new(
:description,
:feature_variations,
:name)
SENSITIVE = []
include Aws::Structure
end
# A structure that defines one launch group in a launch. A launch group
# is a variation of the feature that you are including in the launch.
#
# @note When making an API call, you may pass LaunchGroupConfig
# data as a hash:
#
# {
# description: "Description",
# feature: "FeatureName", # required
# name: "GroupName", # required
# variation: "VariationName", # required
# }
#
# @!attribute [rw] description
# A description of the launch group.
# @return [String]
#
# @!attribute [rw] feature
# The feature that this launch is using.
# @return [String]
#
# @!attribute [rw] name
# A name for this launch group.
# @return [String]
#
# @!attribute [rw] variation
# The feature variation to use for this launch group.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/LaunchGroupConfig AWS API Documentation
#
class LaunchGroupConfig < Struct.new(
:description,
:feature,
:name,
:variation)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass ListExperimentsRequest
# data as a hash:
#
# {
# max_results: 1,
# next_token: "NextToken",
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] max_results
# The maximum number of results to include in the response.
# @return [Integer]
#
# @!attribute [rw] next_token
# The token to use when requesting the next set of results. You
# received this token from a previous `ListExperiments` operation.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project to return the experiment list from.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListExperimentsRequest AWS API Documentation
#
class ListExperimentsRequest < Struct.new(
:max_results,
:next_token,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] experiments
# An array of structures that contain the configuration details of the
# experiments in the specified project.
# @return [Array<Types::Experiment>]
#
# @!attribute [rw] next_token
# The token to use in a subsequent `ListExperiments` operation to
# return the next set of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListExperimentsResponse AWS API Documentation
#
class ListExperimentsResponse < Struct.new(
:experiments,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass ListFeaturesRequest
# data as a hash:
#
# {
# max_results: 1,
# next_token: "NextToken",
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] max_results
# The maximum number of results to include in the response.
# @return [Integer]
#
# @!attribute [rw] next_token
# The token to use when requesting the next set of results. You
# received this token from a previous `ListFeatures` operation.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project to return the feature list from.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListFeaturesRequest AWS API Documentation
#
class ListFeaturesRequest < Struct.new(
:max_results,
:next_token,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] features
# An array of structures that contain the configuration details of the
# features in the specified project.
# @return [Array<Types::FeatureSummary>]
#
# @!attribute [rw] next_token
# The token to use in a subsequent `ListFeatures` operation to return
# the next set of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListFeaturesResponse AWS API Documentation
#
class ListFeaturesResponse < Struct.new(
:features,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass ListLaunchesRequest
# data as a hash:
#
# {
# max_results: 1,
# next_token: "NextToken",
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] max_results
# The maximum number of results to include in the response.
# @return [Integer]
#
# @!attribute [rw] next_token
# The token to use when requesting the next set of results. You
# received this token from a previous `ListLaunches` operation.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project to return the launch list from.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListLaunchesRequest AWS API Documentation
#
class ListLaunchesRequest < Struct.new(
:max_results,
:next_token,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] launches
# An array of structures that contain the configuration details of the
# launches in the specified project.
# @return [Array<Types::Launch>]
#
# @!attribute [rw] next_token
# The token to use in a subsequent `ListLaunches` operation to return
# the next set of results.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListLaunchesResponse AWS API Documentation
#
class ListLaunchesResponse < Struct.new(
:launches,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass ListProjectsRequest
# data as a hash:
#
# {
# max_results: 1,
# next_token: "NextToken",
# }
#
# @!attribute [rw] max_results
# The maximum number of results to include in the response.
# @return [Integer]
#
# @!attribute [rw] next_token
# The token to use when requesting the next set of results. You
# received this token from a previous `ListProjects` operation.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListProjectsRequest AWS API Documentation
#
class ListProjectsRequest < Struct.new(
:max_results,
:next_token)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] next_token
# The token to use in a subsequent `ListProjects` operation to return
# the next set of results.
# @return [String]
#
# @!attribute [rw] projects
# An array of structures that contain the configuration details of the
# projects in the Region.
# @return [Array<Types::ProjectSummary>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListProjectsResponse AWS API Documentation
#
class ListProjectsResponse < Struct.new(
:next_token,
:projects)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass ListTagsForResourceRequest
# data as a hash:
#
# {
# resource_arn: "Arn", # required
# }
#
# @!attribute [rw] resource_arn
# The ARN of the resource that you want to see the tags of.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListTagsForResourceRequest AWS API Documentation
#
class ListTagsForResourceRequest < Struct.new(
:resource_arn)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] tags
# The list of tag keys and values associated with the resource you
# specified.
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ListTagsForResourceResponse AWS API Documentation
#
class ListTagsForResourceResponse < Struct.new(
:tags)
SENSITIVE = []
include Aws::Structure
end
# This structure defines a metric that is being used to evaluate the
# variations during a launch or experiment.
#
# @!attribute [rw] entity_id_key
# The entity, such as a user or session, that does an action that
# causes a metric value to be recorded.
# @return [String]
#
# @!attribute [rw] event_pattern
# The EventBridge event pattern that defines how the metric is
# recorded.
#
# For more information about EventBridge event patterns, see [Amazon
# EventBridge event patterns][1].
#
#
#
# [1]: https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html
# @return [String]
#
# @!attribute [rw] name
# The name of the metric.
# @return [String]
#
# @!attribute [rw] unit_label
# The label for the units that the metric is measuring.
# @return [String]
#
# @!attribute [rw] value_key
# The value that is tracked to produce the metric.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricDefinition AWS API Documentation
#
class MetricDefinition < Struct.new(
:entity_id_key,
:event_pattern,
:name,
:unit_label,
:value_key)
SENSITIVE = []
include Aws::Structure
end
# This structure defines a metric that you want to use to evaluate the
# variations during a launch or experiment.
#
# @note When making an API call, you may pass MetricDefinitionConfig
# data as a hash:
#
# {
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# }
#
# @!attribute [rw] entity_id_key
# The entity, such as a user or session, that does an action that
# causes a metric value to be recorded. An example is
# `userDetails.userID`.
# @return [String]
#
# @!attribute [rw] event_pattern
# The EventBridge event pattern that defines how the metric is
# recorded.
#
# For more information about EventBridge event patterns, see [Amazon
# EventBridge event patterns][1].
#
#
#
# [1]: https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html
# @return [String]
#
# @!attribute [rw] name
# A name for the metric.
# @return [String]
#
# @!attribute [rw] unit_label
# A label for the units that the metric is measuring.
# @return [String]
#
# @!attribute [rw] value_key
# The value that is tracked to produce the metric.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricDefinitionConfig AWS API Documentation
#
class MetricDefinitionConfig < Struct.new(
:entity_id_key,
:event_pattern,
:name,
:unit_label,
:value_key)
SENSITIVE = []
include Aws::Structure
end
# A structure that tells Evidently whether higher or lower values are
# desired for a metric that is used in an experiment.
#
# @!attribute [rw] desired_change
# `INCREASE` means that a variation with a higher number for this
# metric is performing better.
#
# `DECREASE` means that a variation with a lower number for this
# metric is performing better.
# @return [String]
#
# @!attribute [rw] metric_definition
# A structure that contains details about the metric.
# @return [Types::MetricDefinition]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricGoal AWS API Documentation
#
class MetricGoal < Struct.new(
:desired_change,
:metric_definition)
SENSITIVE = []
include Aws::Structure
end
# Use this structure to tell Evidently whether higher or lower values
# are desired for a metric that is used in an experiment.
#
# @note When making an API call, you may pass MetricGoalConfig
# data as a hash:
#
# {
# desired_change: "INCREASE", # accepts INCREASE, DECREASE
# metric_definition: { # required
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# },
# }
#
# @!attribute [rw] desired_change
# `INCREASE` means that a variation with a higher number for this
# metric is performing better.
#
# `DECREASE` means that a variation with a lower number for this
# metric is performing better.
# @return [String]
#
# @!attribute [rw] metric_definition
# A structure that contains details about the metric.
# @return [Types::MetricDefinitionConfig]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricGoalConfig AWS API Documentation
#
class MetricGoalConfig < Struct.new(
:desired_change,
:metric_definition)
SENSITIVE = []
include Aws::Structure
end
# A structure that defines a metric to be used to monitor performance of
# the variations during a launch.
#
# @!attribute [rw] metric_definition
# A structure that defines the metric.
# @return [Types::MetricDefinition]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricMonitor AWS API Documentation
#
class MetricMonitor < Struct.new(
:metric_definition)
SENSITIVE = []
include Aws::Structure
end
# A structure that defines a metric to be used to monitor performance of
# the variations during a launch.
#
# @note When making an API call, you may pass MetricMonitorConfig
# data as a hash:
#
# {
# metric_definition: { # required
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# },
# }
#
# @!attribute [rw] metric_definition
# A structure that defines the metric.
# @return [Types::MetricDefinitionConfig]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/MetricMonitorConfig AWS API Documentation
#
class MetricMonitorConfig < Struct.new(
:metric_definition)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains the configuration of which variation to use
# as the "control" version. The "control" version is used for
# comparison with other variations. This structure also specifies how
# much experiment traffic is allocated to each variation.
#
# @note When making an API call, you may pass OnlineAbConfig
# data as a hash:
#
# {
# control_treatment_name: "TreatmentName",
# treatment_weights: {
# "TreatmentName" => 1,
# },
# }
#
# @!attribute [rw] control_treatment_name
# The name of the variation that is to be the default variation that
# the other variations are compared to.
# @return [String]
#
# @!attribute [rw] treatment_weights
# A set of key-value pairs. The keys are variation names, and the
# values are the portion of experiment traffic to be assigned to that
# variation. Specify the traffic portion in thousandths of a percent,
# so 20,000 for a variation would allocate 20% of the experiment
# traffic to that variation.
# @return [Hash<String,Integer>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/OnlineAbConfig AWS API Documentation
#
class OnlineAbConfig < Struct.new(
:control_treatment_name,
:treatment_weights)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains the configuration of which variation to use
# as the "control" version. The "control" version is used for
# comparison with other variations. This structure also specifies how
# much experiment traffic is allocated to each variation.
#
# @!attribute [rw] control_treatment_name
# The name of the variation that is the default variation that the
# other variations are compared to.
# @return [String]
#
# @!attribute [rw] treatment_weights
# A set of key-value pairs. The keys are variation names, and the
# values are the portion of experiment traffic to be assigned to that
# variation. The traffic portion is specified in thousandths of a
# percent, so 20,000 for a variation would allocate 20% of the
# experiment traffic to that variation.
# @return [Hash<String,Integer>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/OnlineAbDefinition AWS API Documentation
#
class OnlineAbDefinition < Struct.new(
:control_treatment_name,
:treatment_weights)
SENSITIVE = []
include Aws::Structure
end
# This structure defines a project, which is the logical object in
# Evidently that can contain features, launches, and experiments. Use
# projects to group similar features together.
#
# @!attribute [rw] active_experiment_count
# The number of ongoing experiments currently in the project.
# @return [Integer]
#
# @!attribute [rw] active_launch_count
# The number of ongoing launches currently in the project.
# @return [Integer]
#
# @!attribute [rw] arn
# The name or ARN of the project.
# @return [String]
#
# @!attribute [rw] created_time
# The date and time that the project is created.
# @return [Time]
#
# @!attribute [rw] data_delivery
# A structure that contains information about where Evidently is to
# store evaluation events for longer term storage.
# @return [Types::ProjectDataDelivery]
#
# @!attribute [rw] description
# The user-entered description of the project.
# @return [String]
#
# @!attribute [rw] experiment_count
# The number of experiments currently in the project. This includes
# all experiments that have been created and not deleted, whether they
# are ongoing or not.
# @return [Integer]
#
# @!attribute [rw] feature_count
# The number of features currently in the project.
# @return [Integer]
#
# @!attribute [rw] last_updated_time
# The date and time that the project was most recently updated.
# @return [Time]
#
# @!attribute [rw] launch_count
# The number of launches currently in the project. This includes all
# launches that have been created and not deleted, whether they are
# ongoing or not.
# @return [Integer]
#
# @!attribute [rw] name
# The name of the project.
# @return [String]
#
# @!attribute [rw] status
# The current state of the project.
# @return [String]
#
# @!attribute [rw] tags
# The list of tag keys and values associated with this project.
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Project AWS API Documentation
#
class Project < Struct.new(
:active_experiment_count,
:active_launch_count,
:arn,
:created_time,
:data_delivery,
:description,
:experiment_count,
:feature_count,
:last_updated_time,
:launch_count,
:name,
:status,
:tags)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains information about where Evidently is to
# store evaluation events for longer term storage.
#
# @!attribute [rw] cloud_watch_logs
# If the project stores evaluation events in CloudWatch Logs, this
# structure stores the log group name.
# @return [Types::CloudWatchLogsDestination]
#
# @!attribute [rw] s3_destination
# If the project stores evaluation events in an Amazon S3 bucket, this
# structure stores the bucket name and bucket prefix.
# @return [Types::S3Destination]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ProjectDataDelivery AWS API Documentation
#
class ProjectDataDelivery < Struct.new(
:cloud_watch_logs,
:s3_destination)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains information about where Evidently is to
# store evaluation events for longer term storage.
#
# @note When making an API call, you may pass ProjectDataDeliveryConfig
# data as a hash:
#
# {
# cloud_watch_logs: {
# log_group: "CwLogGroupSafeName",
# },
# s3_destination: {
# bucket: "S3BucketSafeName",
# prefix: "S3PrefixSafeName",
# },
# }
#
# @!attribute [rw] cloud_watch_logs
# If the project stores evaluation events in CloudWatch Logs, this
# structure stores the log group name.
# @return [Types::CloudWatchLogsDestinationConfig]
#
# @!attribute [rw] s3_destination
# If the project stores evaluation events in an Amazon S3 bucket, this
# structure stores the bucket name and bucket prefix.
# @return [Types::S3DestinationConfig]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ProjectDataDeliveryConfig AWS API Documentation
#
class ProjectDataDeliveryConfig < Struct.new(
:cloud_watch_logs,
:s3_destination)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains configuration information about an Evidently
# project.
#
# @!attribute [rw] active_experiment_count
# The number of experiments currently in the project.
# @return [Integer]
#
# @!attribute [rw] active_launch_count
# The number of ongoing launches currently in the project.
# @return [Integer]
#
# @!attribute [rw] arn
# The name or ARN of the project.
# @return [String]
#
# @!attribute [rw] created_time
# The date and time that the project is created.
# @return [Time]
#
# @!attribute [rw] description
# The description of the project.
# @return [String]
#
# @!attribute [rw] experiment_count
# The number of experiments currently in the project.
# @return [Integer]
#
# @!attribute [rw] feature_count
# The number of features currently in the project.
# @return [Integer]
#
# @!attribute [rw] last_updated_time
# The date and time that the project was most recently updated.
# @return [Time]
#
# @!attribute [rw] launch_count
# The number of launches currently in the project, including launches
# that are ongoing, completed, and not started yet.
# @return [Integer]
#
# @!attribute [rw] name
# The name of the project.
# @return [String]
#
# @!attribute [rw] status
# The current state of the project.
# @return [String]
#
# @!attribute [rw] tags
# The list of tag keys and values associated with this project.
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ProjectSummary AWS API Documentation
#
class ProjectSummary < Struct.new(
:active_experiment_count,
:active_launch_count,
:arn,
:created_time,
:description,
:experiment_count,
:feature_count,
:last_updated_time,
:launch_count,
:name,
:status,
:tags)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass PutProjectEventsRequest
# data as a hash:
#
# {
# events: [ # required
# {
# data: "JsonValue", # required
# timestamp: Time.now, # required
# type: "aws.evidently.evaluation", # required, accepts aws.evidently.evaluation, aws.evidently.custom
# },
# ],
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] events
# An array of event structures that contain the performance data that
# is being sent to Evidently.
# @return [Array<Types::Event>]
#
# @!attribute [rw] project
# The name or ARN of the project to write the events to.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/PutProjectEventsRequest AWS API Documentation
#
class PutProjectEventsRequest < Struct.new(
:events,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] event_results
# A structure that contains Evidently's response to the sent events,
# including an event ID and error codes, if any.
# @return [Array<Types::PutProjectEventsResultEntry>]
#
# @!attribute [rw] failed_event_count
# The number of events in the operation that could not be used by
# Evidently.
# @return [Integer]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/PutProjectEventsResponse AWS API Documentation
#
class PutProjectEventsResponse < Struct.new(
:event_results,
:failed_event_count)
SENSITIVE = []
include Aws::Structure
end
# A structure that contains Evidently's response to the sent events,
# including an event ID and error codes, if any.
#
# @!attribute [rw] error_code
# If the `PutProjectEvents` operation has an error, the error code is
# returned here.
# @return [String]
#
# @!attribute [rw] error_message
# If the `PutProjectEvents` operation has an error, the error message
# is returned here.
# @return [String]
#
# @!attribute [rw] event_id
# A unique ID assigned to this `PutProjectEvents` operation.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/PutProjectEventsResultEntry AWS API Documentation
#
class PutProjectEventsResultEntry < Struct.new(
:error_code,
:error_message,
:event_id)
SENSITIVE = []
include Aws::Structure
end
# The request references a resource that does not exist.
#
# @!attribute [rw] message
# @return [String]
#
# @!attribute [rw] resource_id
# The ID of the resource that caused the exception.
# @return [String]
#
# @!attribute [rw] resource_type
# The type of the resource that is associated with the error.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ResourceNotFoundException AWS API Documentation
#
class ResourceNotFoundException < Struct.new(
:message,
:resource_id,
:resource_type)
SENSITIVE = []
include Aws::Structure
end
# If the project stores evaluation events in an Amazon S3 bucket, this
# structure stores the bucket name and bucket prefix.
#
# @!attribute [rw] bucket
# The name of the bucket in which Evidently stores evaluation events.
# @return [String]
#
# @!attribute [rw] prefix
# The bucket prefix in which Evidently stores evaluation events.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/S3Destination AWS API Documentation
#
class S3Destination < Struct.new(
:bucket,
:prefix)
SENSITIVE = []
include Aws::Structure
end
# If the project stores evaluation events in an Amazon S3 bucket, this
# structure stores the bucket name and bucket prefix.
#
# @note When making an API call, you may pass S3DestinationConfig
# data as a hash:
#
# {
# bucket: "S3BucketSafeName",
# prefix: "S3PrefixSafeName",
# }
#
# @!attribute [rw] bucket
# The name of the bucket in which Evidently stores evaluation events.
# @return [String]
#
# @!attribute [rw] prefix
# The bucket prefix in which Evidently stores evaluation events.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/S3DestinationConfig AWS API Documentation
#
class S3DestinationConfig < Struct.new(
:bucket,
:prefix)
SENSITIVE = []
include Aws::Structure
end
# This structure defines the traffic allocation percentages among the
# feature variations during one step of a launch, and the start time of
# that step.
#
# @!attribute [rw] group_weights
# The traffic allocation percentages among the feature variations
# during one step of a launch. This is a set of key-value pairs. The
# keys are variation names. The values represent the percentage of
# traffic to allocate to that variation during this step.
# @return [Hash<String,Integer>]
#
# @!attribute [rw] start_time
# The date and time that this step of the launch starts.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplit AWS API Documentation
#
class ScheduledSplit < Struct.new(
:group_weights,
:start_time)
SENSITIVE = []
include Aws::Structure
end
# This structure defines the traffic allocation percentages among the
# feature variations during one step of a launch, and the start time of
# that step.
#
# @note When making an API call, you may pass ScheduledSplitConfig
# data as a hash:
#
# {
# group_weights: { # required
# "GroupName" => 1,
# },
# start_time: Time.now, # required
# }
#
# @!attribute [rw] group_weights
# The traffic allocation percentages among the feature variations
# during one step of a launch. This is a set of key-value pairs. The
# keys are variation names. The values represent the percentage of
# traffic to allocate to that variation during this step.
# @return [Hash<String,Integer>]
#
# @!attribute [rw] start_time
# The date and time that this step of the launch starts.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplitConfig AWS API Documentation
#
class ScheduledSplitConfig < Struct.new(
:group_weights,
:start_time)
SENSITIVE = []
include Aws::Structure
end
# An array of structures that define the traffic allocation percentages
# among the feature variations during each step of a launch. This also
# defines the start time of each step.
#
# @note When making an API call, you may pass ScheduledSplitsLaunchConfig
# data as a hash:
#
# {
# steps: [ # required
# {
# group_weights: { # required
# "GroupName" => 1,
# },
# start_time: Time.now, # required
# },
# ],
# }
#
# @!attribute [rw] steps
# An array of structures that define the traffic allocation
# percentages among the feature variations during each step of the
# launch. This also defines the start time of each step.
# @return [Array<Types::ScheduledSplitConfig>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplitsLaunchConfig AWS API Documentation
#
class ScheduledSplitsLaunchConfig < Struct.new(
:steps)
SENSITIVE = []
include Aws::Structure
end
# An array of structures that define the traffic allocation percentages
# among the feature variations during each step of a launch. This also
# defines the start time of each step.
#
# @!attribute [rw] steps
# An array of structures that define the traffic allocation
# percentages among the feature variations during each step of the
# launch. This also defines the start time of each step.
# @return [Array<Types::ScheduledSplit>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ScheduledSplitsLaunchDefinition AWS API Documentation
#
class ScheduledSplitsLaunchDefinition < Struct.new(
:steps)
SENSITIVE = []
include Aws::Structure
end
# The request would cause a service quota to be exceeded.
#
# @!attribute [rw] message
# @return [String]
#
# @!attribute [rw] quota_code
# The ID of the service quota that was exceeded.
# @return [String]
#
# @!attribute [rw] resource_id
# The ID of the resource that caused the exception.
# @return [String]
#
# @!attribute [rw] resource_type
# The type of the resource that is associated with the error.
# @return [String]
#
# @!attribute [rw] service_code
# The ID of the service that is associated with the error.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ServiceQuotaExceededException AWS API Documentation
#
class ServiceQuotaExceededException < Struct.new(
:message,
:quota_code,
:resource_id,
:resource_type,
:service_code)
SENSITIVE = []
include Aws::Structure
end
# The service was unavailable. Retry the request.
#
# @!attribute [rw] message
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ServiceUnavailableException AWS API Documentation
#
class ServiceUnavailableException < Struct.new(
:message)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass StartExperimentRequest
# data as a hash:
#
# {
# analysis_complete_time: Time.now, # required
# experiment: "ExperimentName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] analysis_complete_time
# The date and time to end the experiment.
# @return [Time]
#
# @!attribute [rw] experiment
# The name of the experiment to start.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the experiment to
# start.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartExperimentRequest AWS API Documentation
#
class StartExperimentRequest < Struct.new(
:analysis_complete_time,
:experiment,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] started_time
# A timestamp that indicates when the experiment started.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartExperimentResponse AWS API Documentation
#
class StartExperimentResponse < Struct.new(
:started_time)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass StartLaunchRequest
# data as a hash:
#
# {
# launch: "LaunchName", # required
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] launch
# The name of the launch to start.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the launch to start.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartLaunchRequest AWS API Documentation
#
class StartLaunchRequest < Struct.new(
:launch,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] launch
# A structure that contains information about the launch that was
# started.
# @return [Types::Launch]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StartLaunchResponse AWS API Documentation
#
class StartLaunchResponse < Struct.new(
:launch)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass StopExperimentRequest
# data as a hash:
#
# {
# desired_state: "COMPLETED", # accepts COMPLETED, CANCELLED
# experiment: "ExperimentName", # required
# project: "ProjectRef", # required
# reason: "Description",
# }
#
# @!attribute [rw] desired_state
# Specify whether the experiment is to be considered `COMPLETED` or
# `CANCELLED` after it stops.
# @return [String]
#
# @!attribute [rw] experiment
# The name of the experiment to stop.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the experiment to stop.
# @return [String]
#
# @!attribute [rw] reason
# A string that describes why you are stopping the experiment.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopExperimentRequest AWS API Documentation
#
class StopExperimentRequest < Struct.new(
:desired_state,
:experiment,
:project,
:reason)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] ended_time
# The date and time that the experiment stopped.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopExperimentResponse AWS API Documentation
#
class StopExperimentResponse < Struct.new(
:ended_time)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass StopLaunchRequest
# data as a hash:
#
# {
# desired_state: "COMPLETED", # accepts COMPLETED, CANCELLED
# launch: "LaunchName", # required
# project: "ProjectRef", # required
# reason: "Description",
# }
#
# @!attribute [rw] desired_state
# Specify whether to consider the launch as `COMPLETED` or `CANCELLED`
# after it stops.
# @return [String]
#
# @!attribute [rw] launch
# The name of the launch to stop.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the launch that you
# want to stop.
# @return [String]
#
# @!attribute [rw] reason
# A string that describes why you are stopping the launch.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopLaunchRequest AWS API Documentation
#
class StopLaunchRequest < Struct.new(
:desired_state,
:launch,
:project,
:reason)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] ended_time
# The date and time that the launch stopped.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/StopLaunchResponse AWS API Documentation
#
class StopLaunchResponse < Struct.new(
:ended_time)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass TagResourceRequest
# data as a hash:
#
# {
# resource_arn: "Arn", # required
# tags: { # required
# "TagKey" => "TagValue",
# },
# }
#
# @!attribute [rw] resource_arn
# The ARN of the CloudWatch Evidently resource that you're adding
# tags to.
# @return [String]
#
# @!attribute [rw] tags
# The list of key-value pairs to associate with the resource.
# @return [Hash<String,String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/TagResourceRequest AWS API Documentation
#
class TagResourceRequest < Struct.new(
:resource_arn,
:tags)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/TagResourceResponse AWS API Documentation
#
class TagResourceResponse < Aws::EmptyStructure; end
# The request was denied because of request throttling. Retry the
# request.
#
# @!attribute [rw] message
# @return [String]
#
# @!attribute [rw] quota_code
# The ID of the service quota that was exceeded.
# @return [String]
#
# @!attribute [rw] service_code
# The ID of the service that is associated with the error.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ThrottlingException AWS API Documentation
#
class ThrottlingException < Struct.new(
:message,
:quota_code,
:service_code)
SENSITIVE = []
include Aws::Structure
end
# A structure that defines one treatment in an experiment. A treatment
# is a variation of the feature that you are including in the
# experiment.
#
# @!attribute [rw] description
# The description of the treatment.
# @return [String]
#
# @!attribute [rw] feature_variations
# The feature variation used for this treatment. This is a key-value
# pair. The key is the feature name, and the value is the variation
# name.
# @return [Hash<String,String>]
#
# @!attribute [rw] name
# The name of this treatment.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Treatment AWS API Documentation
#
class Treatment < Struct.new(
:description,
:feature_variations,
:name)
SENSITIVE = []
include Aws::Structure
end
# A structure that defines one treatment in an experiment. A treatment
# is a variation of the feature that you are including in the
# experiment.
#
# @note When making an API call, you may pass TreatmentConfig
# data as a hash:
#
# {
# description: "Description",
# feature: "FeatureName", # required
# name: "TreatmentName", # required
# variation: "VariationName", # required
# }
#
# @!attribute [rw] description
# A description for this treatment.
# @return [String]
#
# @!attribute [rw] feature
# The feature that this experiment is testing.
# @return [String]
#
# @!attribute [rw] name
# A name for this treatment.
# @return [String]
#
# @!attribute [rw] variation
# The name of the variation to use as this treatment in the
# experiment.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/TreatmentConfig AWS API Documentation
#
class TreatmentConfig < Struct.new(
:description,
:feature,
:name,
:variation)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass UntagResourceRequest
# data as a hash:
#
# {
# resource_arn: "Arn", # required
# tag_keys: ["TagKey"], # required
# }
#
# @!attribute [rw] resource_arn
# The ARN of the CloudWatch Evidently resource that you're removing
# tags from.
# @return [String]
#
# @!attribute [rw] tag_keys
# The list of tag keys to remove from the resource.
# @return [Array<String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UntagResourceRequest AWS API Documentation
#
class UntagResourceRequest < Struct.new(
:resource_arn,
:tag_keys)
SENSITIVE = []
include Aws::Structure
end
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UntagResourceResponse AWS API Documentation
#
class UntagResourceResponse < Aws::EmptyStructure; end
# @note When making an API call, you may pass UpdateExperimentRequest
# data as a hash:
#
# {
# description: "Description",
# experiment: "ExperimentName", # required
# metric_goals: [
# {
# desired_change: "INCREASE", # accepts INCREASE, DECREASE
# metric_definition: { # required
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# },
# },
# ],
# online_ab_config: {
# control_treatment_name: "TreatmentName",
# treatment_weights: {
# "TreatmentName" => 1,
# },
# },
# project: "ProjectRef", # required
# randomization_salt: "RandomizationSalt",
# sampling_rate: 1,
# treatments: [
# {
# description: "Description",
# feature: "FeatureName", # required
# name: "TreatmentName", # required
# variation: "VariationName", # required
# },
# ],
# }
#
# @!attribute [rw] description
# An optional description of the experiment.
# @return [String]
#
# @!attribute [rw] experiment
# The name of the experiment to update.
# @return [String]
#
# @!attribute [rw] metric_goals
# An array of structures that defines the metrics used for the
# experiment, and whether a higher or lower value for each metric is
# the goal.
# @return [Array<Types::MetricGoalConfig>]
#
# @!attribute [rw] online_ab_config
# A structure that contains the configuration of which variation o use
# as the "control" version. The "control" version is used for
# comparison with other variations. This structure also specifies how
# much experiment traffic is allocated to each variation.
# @return [Types::OnlineAbConfig]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the experiment that you
# want to update.
# @return [String]
#
# @!attribute [rw] randomization_salt
# When Evidently assigns a particular user session to an experiment,
# it must use a randomization ID to determine which variation the user
# session is served. This randomization ID is a combination of the
# entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
# Evidently uses the experiment name as the `randomizationSalt`.
# @return [String]
#
# @!attribute [rw] sampling_rate
# The portion of the available audience that you want to allocate to
# this experiment, in thousandths of a percent. The available audience
# is the total audience minus the audience that you have allocated to
# overrides or current launches of this feature.
#
# This is represented in thousandths of a percent. For example,
# specify 20,000 to allocate 20% of the available audience.
# @return [Integer]
#
# @!attribute [rw] treatments
# An array of structures that define the variations being tested in
# the experiment.
# @return [Array<Types::TreatmentConfig>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateExperimentRequest AWS API Documentation
#
class UpdateExperimentRequest < Struct.new(
:description,
:experiment,
:metric_goals,
:online_ab_config,
:project,
:randomization_salt,
:sampling_rate,
:treatments)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] experiment
# A structure containing the configuration details of the experiment
# that was updated.
# @return [Types::Experiment]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateExperimentResponse AWS API Documentation
#
class UpdateExperimentResponse < Struct.new(
:experiment)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass UpdateFeatureRequest
# data as a hash:
#
# {
# add_or_update_variations: [
# {
# name: "VariationName", # required
# value: { # required
# bool_value: false,
# double_value: 1.0,
# long_value: 1,
# string_value: "VariableValueStringValueString",
# },
# },
# ],
# default_variation: "VariationName",
# description: "Description",
# entity_overrides: {
# "EntityId" => "VariationName",
# },
# evaluation_strategy: "ALL_RULES", # accepts ALL_RULES, DEFAULT_VARIATION
# feature: "FeatureName", # required
# project: "ProjectRef", # required
# remove_variations: ["VariationName"],
# }
#
# @!attribute [rw] add_or_update_variations
# To update variation configurations for this feature, or add new
# ones, specify this structure. In this array, include any variations
# that you want to add or update. If the array includes a variation
# name that already exists for this feature, it is updated. If it
# includes a new variation name, it is added as a new variation.
# @return [Array<Types::VariationConfig>]
#
# @!attribute [rw] default_variation
# The name of the variation to use as the default variation. The
# default variation is served to users who are not allocated to any
# ongoing launches or experiments of this feature.
# @return [String]
#
# @!attribute [rw] description
# An optional description of the feature.
# @return [String]
#
# @!attribute [rw] entity_overrides
# Specified users that should always be served a specific variation of
# a feature. Each user is specified by a key-value pair . For each
# key, specify a user by entering their user ID, account ID, or some
# other identifier. For the value, specify the name of the variation
# that they are to be served.
# @return [Hash<String,String>]
#
# @!attribute [rw] evaluation_strategy
# Specify `ALL_RULES` to activate the traffic allocation specified by
# any ongoing launches or experiments. Specify `DEFAULT_VARIATION` to
# serve the default variation to all users instead.
# @return [String]
#
# @!attribute [rw] feature
# The name of the feature to be updated.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the feature to be
# updated.
# @return [String]
#
# @!attribute [rw] remove_variations
# Removes a variation from the feature. If the variation you specify
# doesn't exist, then this makes no change and does not report an
# error.
#
# This operation fails if you try to remove a variation that is part
# of an ongoing launch or experiment.
# @return [Array<String>]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateFeatureRequest AWS API Documentation
#
class UpdateFeatureRequest < Struct.new(
:add_or_update_variations,
:default_variation,
:description,
:entity_overrides,
:evaluation_strategy,
:feature,
:project,
:remove_variations)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] feature
# A structure that contains information about the updated feature.
# @return [Types::Feature]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateFeatureResponse AWS API Documentation
#
class UpdateFeatureResponse < Struct.new(
:feature)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass UpdateLaunchRequest
# data as a hash:
#
# {
# description: "Description",
# groups: [
# {
# description: "Description",
# feature: "FeatureName", # required
# name: "GroupName", # required
# variation: "VariationName", # required
# },
# ],
# launch: "LaunchName", # required
# metric_monitors: [
# {
# metric_definition: { # required
# entity_id_key: "JsonPath",
# event_pattern: "MetricDefinitionConfigEventPatternString",
# name: "CwDimensionSafeName",
# unit_label: "MetricUnitLabel",
# value_key: "JsonPath",
# },
# },
# ],
# project: "ProjectRef", # required
# randomization_salt: "RandomizationSalt",
# scheduled_splits_config: {
# steps: [ # required
# {
# group_weights: { # required
# "GroupName" => 1,
# },
# start_time: Time.now, # required
# },
# ],
# },
# }
#
# @!attribute [rw] description
# An optional description for the launch.
# @return [String]
#
# @!attribute [rw] groups
# An array of structures that contains the feature and variations that
# are to be used for the launch.
# @return [Array<Types::LaunchGroupConfig>]
#
# @!attribute [rw] launch
# The name of the launch that is to be updated.
# @return [String]
#
# @!attribute [rw] metric_monitors
# An array of structures that define the metrics that will be used to
# monitor the launch performance.
# @return [Array<Types::MetricMonitorConfig>]
#
# @!attribute [rw] project
# The name or ARN of the project that contains the launch that you
# want to update.
# @return [String]
#
# @!attribute [rw] randomization_salt
# When Evidently assigns a particular user session to a launch, it
# must use a randomization ID to determine which variation the user
# session is served. This randomization ID is a combination of the
# entity ID and `randomizationSalt`. If you omit `randomizationSalt`,
# Evidently uses the launch name as the `randomizationSalt`.
# @return [String]
#
# @!attribute [rw] scheduled_splits_config
# An array of structures that define the traffic allocation
# percentages among the feature variations during each step of the
# launch.
# @return [Types::ScheduledSplitsLaunchConfig]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateLaunchRequest AWS API Documentation
#
class UpdateLaunchRequest < Struct.new(
:description,
:groups,
:launch,
:metric_monitors,
:project,
:randomization_salt,
:scheduled_splits_config)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] launch
# A structure that contains the new configuration of the launch that
# was updated.
# @return [Types::Launch]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateLaunchResponse AWS API Documentation
#
class UpdateLaunchResponse < Struct.new(
:launch)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass UpdateProjectDataDeliveryRequest
# data as a hash:
#
# {
# cloud_watch_logs: {
# log_group: "CwLogGroupSafeName",
# },
# project: "ProjectRef", # required
# s3_destination: {
# bucket: "S3BucketSafeName",
# prefix: "S3PrefixSafeName",
# },
# }
#
# @!attribute [rw] cloud_watch_logs
# A structure containing the CloudWatch Logs log group where you want
# to store evaluation events.
# @return [Types::CloudWatchLogsDestinationConfig]
#
# @!attribute [rw] project
# The name or ARN of the project that you want to modify the data
# storage options for.
# @return [String]
#
# @!attribute [rw] s3_destination
# A structure containing the S3 bucket name and bucket prefix where
# you want to store evaluation events.
# @return [Types::S3DestinationConfig]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectDataDeliveryRequest AWS API Documentation
#
class UpdateProjectDataDeliveryRequest < Struct.new(
:cloud_watch_logs,
:project,
:s3_destination)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] project
# A structure containing details about the project that you updated.
# @return [Types::Project]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectDataDeliveryResponse AWS API Documentation
#
class UpdateProjectDataDeliveryResponse < Struct.new(
:project)
SENSITIVE = []
include Aws::Structure
end
# @note When making an API call, you may pass UpdateProjectRequest
# data as a hash:
#
# {
# description: "Description",
# project: "ProjectRef", # required
# }
#
# @!attribute [rw] description
# An optional description of the project.
# @return [String]
#
# @!attribute [rw] project
# The name or ARN of the project to update.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectRequest AWS API Documentation
#
class UpdateProjectRequest < Struct.new(
:description,
:project)
SENSITIVE = []
include Aws::Structure
end
# @!attribute [rw] project
# A structure containing information about the updated project.
# @return [Types::Project]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/UpdateProjectResponse AWS API Documentation
#
class UpdateProjectResponse < Struct.new(
:project)
SENSITIVE = []
include Aws::Structure
end
# The value of a parameter in the request caused an error.
#
# @!attribute [rw] field_list
# The parameter that caused the exception.
# @return [Array<Types::ValidationExceptionField>]
#
# @!attribute [rw] message
# @return [String]
#
# @!attribute [rw] reason
# A reason for the error.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ValidationException AWS API Documentation
#
class ValidationException < Struct.new(
:field_list,
:message,
:reason)
SENSITIVE = []
include Aws::Structure
end
# A structure containing an error name and message.
#
# @!attribute [rw] message
# The error message.
# @return [String]
#
# @!attribute [rw] name
# The error name.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/ValidationExceptionField AWS API Documentation
#
class ValidationExceptionField < Struct.new(
:message,
:name)
SENSITIVE = []
include Aws::Structure
end
# The value assigned to a feature variation. This structure must contain
# exactly one field. It can be `boolValue`, `doubleValue`, `longValue`,
# or `stringValue`.
#
# @note VariableValue is a union - when making an API calls you must set exactly one of the members.
#
# @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.
#
# @!attribute [rw] bool_value
# If this feature uses the Boolean variation type, this field contains
# the Boolean value of this variation.
# @return [Boolean]
#
# @!attribute [rw] double_value
# If this feature uses the double integer variation type, this field
# contains the double integer value of this variation.
# @return [Float]
#
# @!attribute [rw] long_value
# If this feature uses the long variation type, this field contains
# the long value of this variation.
# @return [Integer]
#
# @!attribute [rw] string_value
# If this feature uses the string variation type, this field contains
# the string value of this variation.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/VariableValue AWS API Documentation
#
class VariableValue < Struct.new(
:bool_value,
:double_value,
:long_value,
:string_value,
:unknown)
SENSITIVE = []
include Aws::Structure
include Aws::Structure::Union
class BoolValue < VariableValue; end
class DoubleValue < VariableValue; end
class LongValue < VariableValue; end
class StringValue < VariableValue; end
class Unknown < VariableValue; end
end
# This structure contains the name and variation value of one variation
# of a feature.
#
# @!attribute [rw] name
# The name of the variation.
# @return [String]
#
# @!attribute [rw] value
# The value assigned to this variation.
# @return [Types::VariableValue]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/Variation AWS API Documentation
#
class Variation < Struct.new(
:name,
:value)
SENSITIVE = []
include Aws::Structure
end
# This structure contains the name and variation value of one variation
# of a feature.
#
# @note When making an API call, you may pass VariationConfig
# data as a hash:
#
# {
# name: "VariationName", # required
# value: { # required
# bool_value: false,
# double_value: 1.0,
# long_value: 1,
# string_value: "VariableValueStringValueString",
# },
# }
#
# @!attribute [rw] name
# The name of the variation.
# @return [String]
#
# @!attribute [rw] value
# The value assigned to this variation.
# @return [Types::VariableValue]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/VariationConfig AWS API Documentation
#
class VariationConfig < Struct.new(
:name,
:value)
SENSITIVE = []
include Aws::Structure
end
end
end