openapi-directory
Version:
Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS
1 lines • 201 kB
JSON
{"openapi":"3.0.0","info":{"version":"2021-02-01","x-release":"v4","title":"Amazon CloudWatch Evidently","description":"<p>You can use Amazon CloudWatch Evidently to safely validate new features by serving them to a specified percentage of your users while you roll out the feature. You can monitor the performance of the new feature to help you decide when to ramp up traffic to your users. This helps you reduce risk and identify unintended consequences before you fully launch the feature.</p> <p>You can also conduct A/B experiments to make feature design decisions based on evidence and data. An experiment can test as many as five variations at once. Evidently collects experiment data and analyzes it using statistical methods. It also provides clear recommendations about which variations perform better. You can test both user-facing features and backend features.</p>","x-logo":{"url":"https://twitter.com/awscloud/profile_image?size=original","backgroundColor":"#FFFFFF"},"termsOfService":"https://aws.amazon.com/service-terms/","contact":{"name":"Mike Ralphson","email":"mike.ralphson@gmail.com","url":"https://github.com/mermade/aws2openapi","x-twitter":"PermittedSoc"},"license":{"name":"Apache 2.0 License","url":"http://www.apache.org/licenses/"},"x-providerName":"amazonaws.com","x-serviceName":"evidently","x-aws-signingName":"evidently","x-origin":[{"contentType":"application/json","url":"https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/evidently-2021-02-01.normal.json","converter":{"url":"https://github.com/mermade/aws2openapi","version":"1.0.0"},"x-apisguru-driver":"external"}],"x-apiClientRegistration":{"url":"https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct"},"x-apisguru-categories":["cloud"],"x-preferred":true},"externalDocs":{"description":"Amazon Web Services documentation","url":"https://docs.aws.amazon.com/evidently/"},"servers":[{"url":"http://evidently.{region}.amazonaws.com","variables":{"region":{"description":"The AWS region","enum":["us-east-1","us-east-2","us-west-1","us-west-2","us-gov-west-1","us-gov-east-1","ca-central-1","eu-north-1","eu-west-1","eu-west-2","eu-west-3","eu-central-1","eu-south-1","af-south-1","ap-northeast-1","ap-northeast-2","ap-northeast-3","ap-southeast-1","ap-southeast-2","ap-east-1","ap-south-1","sa-east-1","me-south-1"],"default":"us-east-1"}},"description":"The Amazon CloudWatch Evidently multi-region endpoint"},{"url":"https://evidently.{region}.amazonaws.com","variables":{"region":{"description":"The AWS region","enum":["us-east-1","us-east-2","us-west-1","us-west-2","us-gov-west-1","us-gov-east-1","ca-central-1","eu-north-1","eu-west-1","eu-west-2","eu-west-3","eu-central-1","eu-south-1","af-south-1","ap-northeast-1","ap-northeast-2","ap-northeast-3","ap-southeast-1","ap-southeast-2","ap-east-1","ap-south-1","sa-east-1","me-south-1"],"default":"us-east-1"}},"description":"The Amazon CloudWatch Evidently multi-region endpoint"},{"url":"http://evidently.{region}.amazonaws.com.cn","variables":{"region":{"description":"The AWS region","enum":["cn-north-1","cn-northwest-1"],"default":"cn-north-1"}},"description":"The Amazon CloudWatch Evidently endpoint for China (Beijing) and China (Ningxia)"},{"url":"https://evidently.{region}.amazonaws.com.cn","variables":{"region":{"description":"The AWS region","enum":["cn-north-1","cn-northwest-1"],"default":"cn-north-1"}},"description":"The Amazon CloudWatch Evidently endpoint for China (Beijing) and China (Ningxia)"}],"x-hasEquivalentPaths":true,"paths":{"/projects/{project}/evaluations":{"post":{"operationId":"BatchEvaluateFeature","description":"<p>This operation assigns feature variation to user sessions. For each user session, you pass in an <code>entityID</code> that represents the user. Evidently then checks the evaluation rules and assigns the variation.</p> <p>The first rules that are evaluated are the override rules. If the user's <code>entityID</code> matches an override rule, the user is served the variation specified by that rule.</p> <p>Next, if there is a launch of the feature, the user might be assigned to a variation in the launch. The chance of this depends on the percentage of users that are allocated to that launch. If the user is enrolled in the launch, the variation they are served depends on the allocation of the various feature variations used for the launch.</p> <p>If the user is not assigned to a launch, and there is an ongoing experiment for this feature, the user might be assigned to a variation in the experiment. The chance of this depends on the percentage of users that are allocated to that experiment. If the user is enrolled in the experiment, the variation they are served depends on the allocation of the various feature variations used for the experiment. </p> <p>If the user is not assigned to a launch or experiment, they are served the default variation.</p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchEvaluateFeatureResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that contains the feature being evaluated.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["requests"],"properties":{"requests":{"description":"An array of structures, where each structure assigns a feature variation to one user session.","type":"array","items":{"$ref":"#/components/schemas/EvaluationRequest"},"minItems":1,"maxItems":20}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}]},"/projects/{project}/experiments":{"post":{"operationId":"CreateExperiment","description":"<p>Creates an Evidently <i>experiment</i>. Before you create an experiment, you must create the feature to use for the experiment.</p> <p>An experiment helps you make feature design decisions based on evidence and data. An experiment can test as many as five variations at once. Evidently collects experiment data and analyzes it by statistical methods, and provides clear recommendations about which variations perform better.</p> <p>You can optionally specify a <code>segment</code> to have the experiment consider only certain audience types in the experiment, such as using only user sessions from a certain location or who use a certain internet browser.</p> <p>Don't use this operation to update an existing experiment. Instead, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_UpdateExperiment.html\">UpdateExperiment</a>. </p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExperimentResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"ServiceQuotaExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceQuotaExceededException"}}}},"483":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"484":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that you want to create the new experiment in.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["metricGoals","name","treatments"],"properties":{"description":{"description":"An optional description of the experiment.","type":"string","pattern":".*","minLength":0,"maxLength":160},"metricGoals":{"description":"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.","type":"array","items":{"$ref":"#/components/schemas/MetricGoalConfig"},"minItems":1,"maxItems":3},"name":{"description":"A name for the new experiment.","type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127},"onlineAbConfig":{"description":"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.","type":"object","properties":{"controlTreatmentName":{"allOf":[{"$ref":"#/components/schemas/TreatmentName"},{"description":"The name of the variation that is to be the default variation that the other variations are compared to."}]},"treatmentWeights":{"allOf":[{"$ref":"#/components/schemas/TreatmentToWeightMap"},{"description":"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."}]}}},"randomizationSalt":{"description":"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 <code>randomizationSalt</code>. If you omit <code>randomizationSalt</code>, Evidently uses the experiment name as the <code>randomizationSalt</code>.","type":"string","pattern":".*","minLength":0,"maxLength":127},"samplingRate":{"description":"<p>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.</p> <p>This is represented in thousandths of a percent. For example, specify 10,000 to allocate 10% of the available audience.</p>","type":"integer","minimum":0,"maximum":100000},"segment":{"description":"Specifies an audience <i>segment</i> to use in the experiment. When a segment is used in an experiment, only user sessions that match the segment pattern are used in the experiment.","type":"string","pattern":"(^[-a-zA-Z0-9._]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:segment/[-a-zA-Z0-9._]*)","minLength":0,"maxLength":2048},"tags":{"description":"<p>Assigns one or more tags (key-value pairs) to the experiment.</p> <p>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.</p> <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.</p> <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>","type":"object","additionalProperties":{"$ref":"#/components/schemas/TagValue"}},"treatments":{"description":"An array of structures that describe the configuration of each feature variation used in the experiment.","type":"array","items":{"$ref":"#/components/schemas/TreatmentConfig"},"minItems":0,"maxItems":5}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"ListExperiments","description":"Returns configuration details about all the experiments in the specified project.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListExperimentsResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"482":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"maxResults","in":"query","required":false,"description":"The maximum number of results to include in the response.","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"nextToken","in":"query","required":false,"description":"The token to use when requesting the next set of results. You received this token from a previous <code>ListExperiments</code> operation.","schema":{"type":"string","pattern":".*","minLength":1,"maxLength":8192}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project to return the experiment list from.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}},{"name":"status","in":"query","required":false,"description":"Use this optional parameter to limit the returned results to only the experiments with the status that you specify here.","schema":{"type":"string","enum":["CREATED","UPDATING","RUNNING","COMPLETED","CANCELLED"]}}]}},"/projects/{project}/features":{"post":{"operationId":"CreateFeature","description":"<p>Creates an Evidently <i>feature</i> that you want to launch or test. You can define up to five variations of a feature, and use these variations in your launches and experiments. A feature must be created in a project. For information about creating a project, see <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_CreateProject.html\">CreateProject</a>.</p> <p>Don't use this operation to update an existing feature. Instead, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_UpdateFeature.html\">UpdateFeature</a>. </p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFeatureResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"ServiceQuotaExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceQuotaExceededException"}}}},"483":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"484":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that is to contain the new feature.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","variations"],"properties":{"defaultVariation":{"description":"<p>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.</p> <p>This variation must also be listed in the <code>variations</code> structure.</p> <p>If you omit <code>defaultVariation</code>, the first variation listed in the <code>variations</code> structure is used as the default variation.</p>","type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127},"description":{"description":"An optional description of the feature.","type":"string","pattern":".*","minLength":0,"maxLength":160},"entityOverrides":{"description":"<p>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.</p> <p>This parameter is limited to 2500 overrides or a total of 40KB. The 40KB limit includes an overhead of 6 bytes per override.</p>","type":"object","minProperties":0,"maxProperties":2500,"additionalProperties":{"$ref":"#/components/schemas/VariationName"}},"evaluationStrategy":{"description":"Specify <code>ALL_RULES</code> to activate the traffic allocation specified by any ongoing launches or experiments. Specify <code>DEFAULT_VARIATION</code> to serve the default variation to all users instead.","type":"string","enum":["ALL_RULES","DEFAULT_VARIATION"]},"name":{"description":"The name for the new feature.","type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127},"tags":{"description":"<p>Assigns one or more tags (key-value pairs) to the feature.</p> <p>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.</p> <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.</p> <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>","type":"object","additionalProperties":{"$ref":"#/components/schemas/TagValue"}},"variations":{"description":"An array of structures that contain the configuration of the feature's different variations.","type":"array","items":{"$ref":"#/components/schemas/VariationConfig"},"minItems":1,"maxItems":5}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"ListFeatures","description":"Returns configuration details about all the features in the specified project.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListFeaturesResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"maxResults","in":"query","required":false,"description":"The maximum number of results to include in the response.","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"nextToken","in":"query","required":false,"description":"The token to use when requesting the next set of results. You received this token from a previous <code>ListFeatures</code> operation.","schema":{"type":"string","pattern":".*","minLength":1,"maxLength":8192}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project to return the feature list from.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}]}},"/projects/{project}/launches":{"post":{"operationId":"CreateLaunch","description":"<p>Creates a <i>launch</i> of a given feature. Before you create a launch, you must create the feature to use for the launch.</p> <p>You can use a launch to safely validate new features by serving them to a specified percentage of your users while you roll out the feature. You can monitor the performance of the new feature to help you decide when to ramp up traffic to more users. This helps you reduce risk and identify unintended consequences before you fully launch the feature.</p> <p>Don't use this operation to update an existing launch. Instead, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_UpdateLaunch.html\">UpdateLaunch</a>. </p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLaunchResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"ServiceQuotaExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceQuotaExceededException"}}}},"483":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"484":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that you want to create the launch in.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["groups","name"],"properties":{"description":{"description":"An optional description for the launch.","type":"string","pattern":".*","minLength":0,"maxLength":160},"groups":{"description":"An array of structures that contains the feature and variations that are to be used for the launch.","type":"array","items":{"$ref":"#/components/schemas/LaunchGroupConfig"},"minItems":1,"maxItems":5},"metricMonitors":{"description":"An array of structures that define the metrics that will be used to monitor the launch performance.","type":"array","items":{"$ref":"#/components/schemas/MetricMonitorConfig"},"minItems":0,"maxItems":3},"name":{"description":"The name for the new launch.","type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127},"randomizationSalt":{"description":"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 <code>randomizationSalt</code>. If you omit <code>randomizationSalt</code>, Evidently uses the launch name as the <code>randomizationSalt</code>.","type":"string","pattern":".*","minLength":0,"maxLength":127},"scheduledSplitsConfig":{"description":"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.","type":"object","properties":{"steps":{"allOf":[{"$ref":"#/components/schemas/ScheduledSplitConfigList"},{"description":"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."}]}}},"tags":{"description":"<p>Assigns one or more tags (key-value pairs) to the launch.</p> <p>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.</p> <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.</p> <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>","type":"object","additionalProperties":{"$ref":"#/components/schemas/TagValue"}}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"ListLaunches","description":"Returns configuration details about all the launches in the specified project.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListLaunchesResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"maxResults","in":"query","required":false,"description":"The maximum number of results to include in the response.","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"nextToken","in":"query","required":false,"description":"The token to use when requesting the next set of results. You received this token from a previous <code>ListLaunches</code> operation.","schema":{"type":"string","pattern":".*","minLength":1,"maxLength":8192}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project to return the launch list from.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}},{"name":"status","in":"query","required":false,"description":"Use this optional parameter to limit the returned results to only the launches with the status that you specify here.","schema":{"type":"string","enum":["CREATED","UPDATING","RUNNING","COMPLETED","CANCELLED"]}}]}},"/projects":{"post":{"operationId":"CreateProject","description":"<p>Creates a project, which is the logical object in Evidently that can contain features, launches, and experiments. Use projects to group similar features together.</p> <p>To update an existing project, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_UpdateProject.html\">UpdateProject</a>.</p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"ServiceQuotaExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceQuotaExceededException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name"],"properties":{"appConfigResource":{"description":"<p>Use this parameter to configure client-side evaluation for your project. Client-side evaluation allows your application to assign variations to user sessions locally instead of by calling the <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_EvaluateFeature.html\">EvaluateFeature</a> operation to assign the variations. This mitigates the latency and availability risks that come with an API call.</p> <p> <code>ProjectAppConfigResource</code> is a structure that defines the configuration of how your application integrates with AppConfig to run client-side evaluation.</p>","type":"object","properties":{"applicationId":{"allOf":[{"$ref":"#/components/schemas/AppConfigResourceId"},{"description":"The ID of the AppConfig application to use for client-side evaluation. "}]},"environmentId":{"allOf":[{"$ref":"#/components/schemas/AppConfigResourceId"},{"description":"The ID of the AppConfig environment to use for client-side evaluation. This must be an environment that is within the application that you specify for <code>applicationId</code>."}]}}},"dataDelivery":{"description":"A structure that contains information about where Evidently is to store evaluation events for longer term storage.","type":"object","properties":{"cloudWatchLogs":{"allOf":[{"$ref":"#/components/schemas/CloudWatchLogsDestinationConfig"},{"description":"If the project stores evaluation events in CloudWatch Logs, this structure stores the log group name."}]},"s3Destination":{"allOf":[{"$ref":"#/components/schemas/S3DestinationConfig"},{"description":"If the project stores evaluation events in an Amazon S3 bucket, this structure stores the bucket name and bucket prefix."}]}}},"description":{"description":"An optional description of the project.","type":"string","pattern":".*","minLength":0,"maxLength":160},"name":{"description":"The name for the project.","type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127},"tags":{"description":"<p>Assigns one or more tags (key-value pairs) to the project.</p> <p>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.</p> <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.</p> <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>","type":"object","additionalProperties":{"$ref":"#/components/schemas/TagValue"}}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"ListProjects","description":"Returns configuration details about all the projects in the current Region in your account.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListProjectsResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"maxResults","in":"query","required":false,"description":"The maximum number of results to include in the response.","schema":{"type":"integer","minimum":1,"maximum":50}},{"name":"nextToken","in":"query","required":false,"description":"The token to use when requesting the next set of results. You received this token from a previous <code>ListProjects</code> operation.","schema":{"type":"string","pattern":".*","minLength":1,"maxLength":8192}}]}},"/segments":{"post":{"operationId":"CreateSegment","description":"<p>Use this operation to define a <i>segment</i> of your audience. A segment is a portion of your audience that share one or more characteristics. Examples could be Chrome browser users, users in Europe, or Firefox browser users in Europe who also fit other criteria that your application collects, such as age.</p> <p>Using a segment in an experiment limits that experiment to evaluate only the users who match the segment criteria. Using one or more segments in a launch allows you to define different traffic splits for the different audience segments.</p> <p>For more information about segment pattern syntax, see <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently-segments.html#CloudWatch-Evidently-segments-syntax.html\"> Segment rule pattern syntax</a>.</p> <p>The pattern that you define for a segment is matched against the value of <code>evaluationContext</code>, which is passed into Evidently in the <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_EvaluateFeature.html\">EvaluateFeature</a> operation, when Evidently assigns a feature variation to a user.</p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSegmentResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"ServiceQuotaExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceQuotaExceededException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","pattern"],"properties":{"description":{"description":"An optional description for this segment.","type":"string","pattern":".*","minLength":0,"maxLength":160},"name":{"description":"A name for the segment.","type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":64},"pattern":{"description":"The pattern to use for the segment. For more information about pattern syntax, see <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently-segments.html#CloudWatch-Evidently-segments-syntax.html\"> Segment rule pattern syntax</a>.","type":"string","minLength":1,"maxLength":1024},"tags":{"description":"<p>Assigns one or more tags (key-value pairs) to the segment.</p> <p>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.</p> <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.</p> <p>You can associate as many as 50 tags with a segment.</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>","type":"object","additionalProperties":{"$ref":"#/components/schemas/TagValue"}}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"ListSegments","description":"Returns a list of audience segments that you have created in your account in this Region.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListSegmentsResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"maxResults","in":"query","required":false,"description":"The maximum number of results to include in the response. If you omit this, the default of 50 is used.","schema":{"type":"integer","minimum":1,"maximum":50}},{"name":"nextToken","in":"query","required":false,"description":"The token to use when requesting the next set of results. You received this token from a previous <code>ListSegments</code> operation.","schema":{"type":"string","pattern":".*","minLength":1,"maxLength":8192}}]}},"/projects/{project}/experiments/{experiment}":{"delete":{"operationId":"DeleteExperiment","description":"<p>Deletes an Evidently experiment. The feature used for the experiment is not deleted.</p> <p>To stop an experiment without deleting it, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_StopExperiment.html\">StopExperiment</a>. </p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteExperimentResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"InternalServerException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InternalServerException"}}}},"482":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"483":{"description":"ServiceUnavailableException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceUnavailableException"}}}},"484":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"485":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"experiment","in":"path","required":true,"description":"The name of the experiment to delete.","schema":{"type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that contains the experiment to delete.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}]},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetExperiment","description":"Returns the details about one experiment. You must already know the experiment name. To retrieve a list of experiments in your account, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_ListExperiments.html\">ListExperiments</a>.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetExperimentResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"experiment","in":"path","required":true,"description":"The name of the experiment that you want to see the details of.","schema":{"type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that contains the experiment.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}]},"patch":{"operationId":"UpdateExperiment","description":"<p>Updates an Evidently experiment. </p> <p>Don't use this operation to update an experiment's tag. Instead, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_TagResource.html\">TagResource</a>. </p>","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExperimentResponse"}}}},"480":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"experiment","in":"path","required":true,"description":"The name of the experiment to update.","schema":{"type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that contains the experiment that you want to update.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"description":{"description":"An optional description of the experiment.","type":"string","pattern":".*","minLength":0,"maxLength":160},"metricGoals":{"description":"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.","type":"array","items":{"$ref":"#/components/schemas/MetricGoalConfig"},"minItems":1,"maxItems":3},"onlineAbConfig":{"description":"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.","type":"object","properties":{"controlTreatmentName":{"allOf":[{"$ref":"#/components/schemas/TreatmentName"},{"description":"The name of the variation that is to be the default variation that the other variations are compared to."}]},"treatmentWeights":{"allOf":[{"$ref":"#/components/schemas/TreatmentToWeightMap"},{"description":"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."}]}}},"randomizationSalt":{"description":"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 <code>randomizationSalt</code>. If you omit <code>randomizationSalt</code>, Evidently uses the experiment name as the <code>randomizationSalt</code>.","type":"string","pattern":".*","minLength":0,"maxLength":127},"removeSegment":{"description":"Removes a segment from being used in an experiment. You can't use this parameter if the experiment is currently running.","type":"boolean"},"samplingRate":{"description":"<p>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.</p> <p>This is represented in thousandths of a percent. For example, specify 20,000 to allocate 20% of the available audience.</p>","type":"integer","minimum":0,"maximum":100000},"segment":{"description":"Adds an audience <i>segment</i> to an experiment. When a segment is used in an experiment, only user sessions that match the segment pattern are used in the experiment. You can't use this parameter if the experiment is currently running.","type":"string","pattern":"(^[-a-zA-Z0-9._]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:segment/[-a-zA-Z0-9._]*)","minLength":0,"maxLength":2048},"treatments":{"description":"An array of structures that define the variations being tested in the experiment.","type":"array","items":{"$ref":"#/components/schemas/TreatmentConfig"},"minItems":0,"maxItems":5}}}}}}}},"/projects/{project}/features/{feature}":{"delete":{"operationId":"DeleteFeature","description":"Deletes an Evidently feature.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteFeatureResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"483":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"484":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"feature","in":"path","required":true,"description":"The name of the feature to delete.","schema":{"type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that contains the feature to delete.","schema":{"type":"string","pattern":"(^[a-zA-Z0-9._-]*$)|(arn:[^:]*:[^:]*:[^:]*:[^:]*:project/[a-zA-Z0-9._-]*)","minLength":0,"maxLength":2048}}]},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetFeature","description":"Returns the details about one feature. You must already know the feature name. To retrieve a list of features in your account, use <a href=\"https://docs.aws.amazon.com/cloudwatchevidently/latest/APIReference/API_ListFeatures.html\">ListFeatures</a>.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetFeatureResponse"}}}},"480":{"description":"ThrottlingException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThrottlingException"}}}},"481":{"description":"ValidationException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationException"}}}},"482":{"description":"ResourceNotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceNotFoundException"}}}},"483":{"description":"AccessDeniedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessDeniedException"}}}}},"parameters":[{"name":"feature","in":"path","required":true,"description":"The name of the feature that you want to retrieve information for.","schema":{"type":"string","pattern":"^[-a-zA-Z0-9._]*$","minLength":1,"maxLength":127}},{"name":"project","in":"path","required":true,"description":"The name or ARN of the project that contains the feature.","schema":{"type":"str