CreateProject - CloudWatch Evidently

CreateProject

Important

End of support notice: On October 16, 2025, AWS will discontinue support for CloudWatch Evidently. After October 16, 2025, you will no longer be able to access the Evidently console or CloudWatch Evidently resources.

Creates a project, which is the logical object in Evidently that can contain features, launches, and experiments. Use projects to group similar features together.

To update an existing project, use UpdateProject.

Request Syntax

POST /projects HTTP/1.1 Content-type: application/json { "appConfigResource": { "applicationId": "string", "environmentId": "string" }, "dataDelivery": { "cloudWatchLogs": { "logGroup": "string" }, "s3Destination": { "bucket": "string", "prefix": "string" } }, "description": "string", "name": "string", "tags": { "string" : "string" } }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

appConfigResource

Use this parameter if the project will use client-side evaluation powered by AWS AppConfig . Client-side evaluation allows your application to assign variations to user sessions locally instead of by calling the EvaluateFeature operation. This mitigates the latency and availability risks that come with an API call. For more information, see Client-side evaluation - powered by AWS AppConfig.

This parameter is a structure that contains information about the AWS AppConfig application and environment that will be used as for client-side evaluation.

To create a project that uses client-side evaluation, you must have the evidently:ExportProjectAsConfiguration permission.

Type: ProjectAppConfigResourceConfig object

Required: No

dataDelivery

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.

Type: ProjectDataDeliveryConfig object

Required: No

description

An optional description of the project.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 160.

Pattern: .*

Required: No

name

The name for the project.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 127.

Pattern: ^[-a-zA-Z0-9._]*$

Required: Yes

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 AWS and are interpreted strictly as strings of characters.

You can associate as many as 50 tags with a project.

For more information, see Tagging AWS resources.

Type: String to string map

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$

Value Length Constraints: Minimum length of 0. Maximum length of 256.

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "project": { "activeExperimentCount": number, "activeLaunchCount": number, "appConfigResource": { "applicationId": "string", "configurationProfileId": "string", "environmentId": "string" }, "arn": "string", "createdTime": number, "dataDelivery": { "cloudWatchLogs": { "logGroup": "string" }, "s3Destination": { "bucket": "string", "prefix": "string" } }, "description": "string", "experimentCount": number, "featureCount": number, "lastUpdatedTime": number, "launchCount": number, "name": "string", "status": "string", "tags": { "string" : "string" } } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

project

A structure that contains information about the created project.

Type: Project object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You do not have sufficient permissions to perform this action.

HTTP Status Code: 403

ConflictException

A resource was in an inconsistent state during an update or a deletion.

HTTP Status Code: 409

ServiceQuotaExceededException

The request would cause a service quota to be exceeded.

HTTP Status Code: 402

ValidationException

The value of a parameter in the request caused an error.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: