class Aws::CloudWatchEvidently::Types::CreateExperimentRequest

@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", # required
            event_pattern: "MetricDefinitionConfigEventPatternString",
            name: "CwDimensionSafeName", # required
            unit_label: "MetricUnitLabel",
            value_key: "JsonPath", # required
          },
        },
      ],
      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 docs.aws.amazon.com/goto/WebAPI/evidently-2021-02-01/CreateExperimentRequest AWS API Documentation

Constants

SENSITIVE