CreateEnvironment - AWS Migration Hub Refactor Spaces

CreateEnvironment

Creates an AWS Migration Hub Refactor Spaces environment. The caller owns the environment resource, and all Refactor Spaces applications, services, and routes created within the environment. They are referred to as the environment owner. The environment owner has cross-account visibility and control of Refactor Spaces resources that are added to the environment by other accounts that the environment is shared with.

When creating an environment with a CreateEnvironment:NetworkFabricType of TRANSIT_GATEWAY, Refactor Spaces provisions a transit gateway to enable services in VPCs to communicate directly across accounts. If CreateEnvironment:NetworkFabricType is NONE, Refactor Spaces does not create a transit gateway and you must use your network infrastructure to route traffic to services with private URL endpoints.

Request Syntax

POST /environments HTTP/1.1 Content-type: application/json { "ClientToken": "string", "Description": "string", "Name": "string", "NetworkFabricType": "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.

ClientToken

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

Type: String

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

Pattern: ^[\x20-\x7E]{1,64}$

Required: No

Description

The description of the environment.

Type: String

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

Pattern: ^[a-zA-Z0-9-_\s\.\!\*\#\@\']+$

Required: No

Name

The name of the environment.

Type: String

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

Pattern: ^(?!env-)[a-zA-Z0-9]+[a-zA-Z0-9-_ ]+$

Required: Yes

NetworkFabricType

The network fabric type of the environment.

Type: String

Valid Values: TRANSIT_GATEWAY | NONE

Required: Yes

Tags

The tags to assign to the environment. A tag is a label that you assign to an AWS resource. Each tag consists of a key-value pair.

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 50 items.

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

Key Pattern: ^(?!aws:).+

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

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "Arn": "string", "CreatedTime": number, "Description": "string", "EnvironmentId": "string", "LastUpdatedTime": number, "Name": "string", "NetworkFabricType": "string", "OwnerAccountId": "string", "State": "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.

Arn

The Amazon Resource Name (ARN) of the environment.

Type: String

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

Pattern: ^arn:aws:refactor-spaces:[a-zA-Z0-9\-]+:\w{12}:[a-zA-Z_0-9+=,.@\-_/]+$

CreatedTime

A timestamp that indicates when the environment is created.

Type: Timestamp

Description

A description of the environment.

Type: String

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

Pattern: ^[a-zA-Z0-9-_\s\.\!\*\#\@\']+$

EnvironmentId

The unique identifier of the environment.

Type: String

Length Constraints: Fixed length of 14.

Pattern: ^env-[0-9A-Za-z]{10}$

LastUpdatedTime

A timestamp that indicates when the environment was last updated.

Type: Timestamp

Name

The name of the environment.

Type: String

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

Pattern: ^(?!env-)[a-zA-Z0-9]+[a-zA-Z0-9-_ ]+$

NetworkFabricType

The network fabric type of the environment.

Type: String

Valid Values: TRANSIT_GATEWAY | NONE

OwnerAccountId

The AWS account ID of environment owner.

Type: String

Length Constraints: Fixed length of 12.

Pattern: ^\d{12}$

State

The current state of the environment.

Type: String

Valid Values: CREATING | ACTIVE | DELETING | FAILED

Tags

The tags assigned to the created environment. A tag is a label that you assign to an AWS resource. Each tag consists of a key-value pair..

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 50 items.

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

Key Pattern: ^(?!aws:).+

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

Errors

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

AccessDeniedException

The user does not have sufficient access to perform this action.

HTTP Status Code: 403

ConflictException

Updating or deleting a resource can cause an inconsistent state.

HTTP Status Code: 409

InternalServerException

An unexpected error occurred while processing the request.

HTTP Status Code: 500

ResourceNotFoundException

The request references a resource that does not exist.

HTTP Status Code: 404

ServiceQuotaExceededException

The request would cause a service quota to be exceeded.

HTTP Status Code: 402

ThrottlingException

Request was denied because the request was throttled.

HTTP Status Code: 429

ValidationException

The input does not satisfy the constraints specified by an AWS service.

HTTP Status Code: 400

See Also

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