CreateInstance - AWS Supply Chain

CreateInstance

Enables you to programmatically create an AWS Supply Chain instance by applying KMS keys and relevant information associated with the API without using the AWS console.

This is an asynchronous operation. Upon receiving a CreateInstance request, AWS Supply Chain immediately returns the instance resource, instance ID, and the initializing state while simultaneously creating all required AWS resources for an instance creation. You can use GetInstance to check the status of the instance. If the instance results in an unhealthy state, you need to check the error message, delete the current instance, and recreate a new one based on the mitigation from the error message.

Request Syntax

POST /api/instance HTTP/1.1 Content-type: application/json { "clientToken": "string", "instanceDescription": "string", "instanceName": "string", "kmsKeyArn": "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

The client token for idempotency.

Type: String

Length Constraints: Minimum length of 33. Maximum length of 126.

Required: No

instanceDescription

The AWS Supply Chain instance description.

Type: String

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

Pattern: ([a-zA-Z0-9., _ʼ'%-]){0,500}

Required: No

instanceName

The AWS Supply Chain instance name.

Type: String

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

Pattern: (?![ _ʼ'%-])[a-zA-Z0-9 _ʼ'%-]{0,62}[a-zA-Z0-9]

Required: No

kmsKeyArn

The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption. This is required if you do not want to use the AWS owned KMS key. If you don't provide anything here, AWS Supply Chain uses the AWS owned KMS key.

Type: String

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

Pattern: arn:[a-z0-9][-.a-z0-9]{0,62}:kms:([a-z0-9][-.a-z0-9]{0,62})?:([a-z0-9][-.a-z0-9]{0,62})?:key/.{0,1019}

Required: No

tags

The AWS tags of an instance to be created.

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 200 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

Response Syntax

HTTP/1.1 200 Content-type: application/json { "instance": { "awsAccountId": "string", "createdTime": number, "errorMessage": "string", "instanceDescription": "string", "instanceId": "string", "instanceName": "string", "kmsKeyArn": "string", "lastModifiedTime": number, "state": "string", "versionNumber": number, "webAppDnsDomain": "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.

instance

The AWS Supply Chain instance resource data details.

Type: Instance object

Errors

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

AccessDeniedException

You do not have the required privileges to perform this action.

HTTP Status Code: 403

ConflictException

Updating or deleting a resource can cause an inconsistent state.

HTTP Status Code: 409

InternalServerException

Unexpected error during processing of request.

HTTP Status Code: 500

ResourceNotFoundException

Request references a resource which does not exist.

HTTP Status Code: 404

ServiceQuotaExceededException

Request would cause a service quota to be exceeded.

HTTP Status Code: 402

ThrottlingException

Request was denied due to request throttling.

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: