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
-
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.
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: