CreateWorkload - AWS Well-Architected Tool

CreateWorkload

Create a new workload.

The owner of a workload can share the workload with other AWS accounts, users, an organization, and organizational units (OUs) in the same AWS Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the AWS Well-Architected Tool User Guide.

Important

Either AwsRegions, NonAwsRegions, or both must be specified when creating a workload.

You also must specify ReviewOwner, even though the parameter is listed as not being required in the following section.

When creating a workload using a review template, you must have the following IAM permissions:

  • wellarchitected:GetReviewTemplate

  • wellarchitected:GetReviewTemplateAnswer

  • wellarchitected:ListReviewTemplateAnswers

  • wellarchitected:GetReviewTemplateLensReview

Request Syntax

POST /workloads HTTP/1.1 Content-type: application/json { "AccountIds": [ "string" ], "Applications": [ "string" ], "ArchitecturalDesign": "string", "AwsRegions": [ "string" ], "ClientRequestToken": "string", "Description": "string", "DiscoveryConfig": { "TrustedAdvisorIntegrationStatus": "string", "WorkloadResourceDefinition": [ "string" ] }, "Environment": "string", "Industry": "string", "IndustryType": "string", "Lenses": [ "string" ], "NonAwsRegions": [ "string" ], "Notes": "string", "PillarPriorities": [ "string" ], "ProfileArns": [ "string" ], "ReviewOwner": "string", "ReviewTemplateArns": [ "string" ], "Tags": { "string" : "string" }, "WorkloadName": "string" }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

AccountIds

The list of AWS account IDs associated with the workload.

Type: Array of strings

Array Members: Maximum number of 100 items.

Length Constraints: Fixed length of 12.

Pattern: [0-9]{12}

Required: No

Applications

List of AppRegistry application ARNs associated to the workload.

Type: Array of strings

Array Members: Maximum number of 1 item.

Length Constraints: Maximum length of 2084.

Pattern: arn:aws[-a-z]*:servicecatalog:[a-z]{2}(-gov)?-[a-z]+-\d:\d{12}:/applications/[a-z0-9]+

Required: No

ArchitecturalDesign

The URL of the architectural design for the workload.

Type: String

Length Constraints: Maximum length of 2048.

Pattern: ^(|(https?|ftp):\/\/[^\s/$.?#].[^\s]*)$

Required: No

AwsRegions

The list of AWS Regions associated with the workload, for example, us-east-2, or ca-central-1.

Type: Array of strings

Array Members: Maximum number of 50 items.

Length Constraints: Maximum length of 100.

Required: No

ClientRequestToken

A unique case-sensitive string used to ensure that this request is idempotent (executes only once).

You should not reuse the same token for other requests. If you retry a request with the same client request token and the same parameters after the original request has completed successfully, the result of the original request is returned.

Important

This token is listed as required, however, if you do not specify it, the AWS SDKs automatically generate one for you. If you are not using the AWS SDK or the AWS CLI, you must provide this token or the request will fail.

Type: String

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

Required: Yes

Description

The description for the workload.

Type: String

Length Constraints: Minimum length of 3. Maximum length of 250.

Required: Yes

DiscoveryConfig

Well-Architected discovery configuration settings associated to the workload.

Type: WorkloadDiscoveryConfig object

Required: No

Environment

The environment for the workload.

Type: String

Valid Values: PRODUCTION | PREPRODUCTION

Required: Yes

Industry

The industry for the workload.

Type: String

Length Constraints: Maximum length of 100.

Required: No

IndustryType

The industry type for the workload.

If specified, must be one of the following:

  • Agriculture

  • Automobile

  • Defense

  • Design and Engineering

  • Digital Advertising

  • Education

  • Environmental Protection

  • Financial Services

  • Gaming

  • General Public Services

  • Healthcare

  • Hospitality

  • InfoTech

  • Justice and Public Safety

  • Life Sciences

  • Manufacturing

  • Media & Entertainment

  • Mining & Resources

  • Oil & Gas

  • Power & Utilities

  • Professional Services

  • Real Estate & Construction

  • Retail & Wholesale

  • Social Protection

  • Telecommunications

  • Travel, Transportation & Logistics

  • Other

Type: String

Length Constraints: Maximum length of 100.

Required: No

Lenses

The list of lenses associated with the workload. Each lens is identified by its LensSummary:LensAlias.

If a review template that specifies lenses is applied to the workload, those lenses are applied to the workload in addition to these lenses.

Type: Array of strings

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

Required: Yes

NonAwsRegions

The list of non-AWS Regions associated with the workload.

Type: Array of strings

Array Members: Maximum number of 5 items.

Length Constraints: Minimum length of 3. Maximum length of 25.

Required: No

Notes

The notes associated with the workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

Type: String

Length Constraints: Maximum length of 2084.

Required: No

PillarPriorities

The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary:PillarId.

Type: Array of strings

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

Required: No

ProfileArns

The list of profile ARNs associated with the workload.

Type: Array of strings

Array Members: Maximum number of 1 item.

Length Constraints: Maximum length of 2084.

Pattern: arn:aws[-a-z]*:wellarchitected:[a-z]{2}(-gov)?-[a-z]+-\d:\d{12}:profile/[a-z0-9]+

Required: No

ReviewOwner

The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

Type: String

Length Constraints: Minimum length of 3. Maximum length of 255.

Required: No

ReviewTemplateArns

The list of review template ARNs to associate with the workload.

Type: Array of strings

Array Members: Maximum number of 1 item.

Length Constraints: Minimum length of 50. Maximum length of 250.

Pattern: arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\d:\d{12}:(review-template)/[a-f0-9]{32}

Required: No

Tags

The tags to be associated with the workload.

Type: String to string map

Map Entries: Maximum number of 50 items.

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

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

Required: No

WorkloadName

The name of the workload.

The name must be unique within an account within an AWS Region. Spaces and capitalization are ignored when checking for uniqueness.

Type: String

Length Constraints: Minimum length of 3. Maximum length of 100.

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "WorkloadArn": "string", "WorkloadId": "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.

WorkloadArn

The ARN for the workload.

Type: String

WorkloadId

The ID assigned to the workload. This ID is unique within an AWS Region.

Type: String

Length Constraints: Fixed length of 32.

Pattern: [0-9a-f]{32}

Errors

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

AccessDeniedException

User does not have sufficient access to perform this action.

HTTP Status Code: 403

ConflictException

The resource has already been processed, was deleted, or is too large.

HTTP Status Code: 409

InternalServerException

There is a problem with the AWS Well-Architected Tool API service.

HTTP Status Code: 500

ResourceNotFoundException

The requested resource was not found.

HTTP Status Code: 404

ServiceQuotaExceededException

The user has reached their resource quota.

HTTP Status Code: 402

ThrottlingException

Request was denied due to request throttling.

HTTP Status Code: 429

ValidationException

The user input is not valid.

HTTP Status Code: 400

See Also

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