CreateService
Creates a service. A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC).
For more information, see Services in the Amazon VPC Lattice User Guide.
Request Syntax
POST /services HTTP/1.1
Content-type: application/json
{
"authType": "string
",
"certificateArn": "string
",
"clientToken": "string
",
"customDomainName": "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.
- authType
-
The type of IAM policy.
-
NONE
: The resource does not use an IAM policy. This is the default. -
AWS_IAM
: The resource uses an IAM policy. When this type is used, auth is enabled and an auth policy is required.
Type: String
Valid Values:
NONE | AWS_IAM
Required: No
-
- certificateArn
-
The Amazon Resource Name (ARN) of the certificate.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 2048.
Pattern:
^(arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:certificate/[0-9a-z-]+)?$
Required: No
- clientToken
-
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[!-~]+
Required: No
- customDomainName
-
The custom domain name of the service.
Type: String
Length Constraints: Minimum length of 3. Maximum length of 255.
Required: No
- name
-
The name of the service. The name must be unique within the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.
Type: String
Length Constraints: Minimum length of 3. Maximum length of 40.
Pattern:
^(?!svc-)(?![-])(?!.*[-]$)(?!.*[-]{2})[a-z0-9-]+$
Required: Yes
-
The tags for the service.
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 201
Content-type: application/json
{
"arn": "string",
"authType": "string",
"certificateArn": "string",
"customDomainName": "string",
"dnsEntry": {
"domainName": "string",
"hostedZoneId": "string"
},
"id": "string",
"name": "string",
"status": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
- arn
-
The Amazon Resource Name (ARN) of the service.
Type: String
Length Constraints: Minimum length of 20. Maximum length of 2048.
Pattern:
^arn:[a-z0-9\-]+:vpc-lattice:[a-zA-Z0-9\-]+:\d{12}:service/svc-[0-9a-z]{17}$
- authType
-
The type of IAM policy.
Type: String
Valid Values:
NONE | AWS_IAM
- certificateArn
-
The Amazon Resource Name (ARN) of the certificate.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 2048.
Pattern:
^(arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:certificate/[0-9a-z-]+)?$
- customDomainName
-
The custom domain name of the service.
Type: String
Length Constraints: Minimum length of 3. Maximum length of 255.
- dnsEntry
-
The public DNS name of the service.
Type: DnsEntry object
- id
-
The ID of the service.
Type: String
Length Constraints: Fixed length of 21.
Pattern:
^svc-[0-9a-z]{17}$
- name
-
The name of the service.
Type: String
Length Constraints: Minimum length of 3. Maximum length of 40.
Pattern:
^(?!svc-)(?![-])(?!.*[-]$)(?!.*[-]{2})[a-z0-9-]+$
- status
-
The status. If the status is
CREATE_FAILED
, you must delete and recreate the service.Type: String
Valid Values:
ACTIVE | CREATE_IN_PROGRESS | DELETE_IN_PROGRESS | CREATE_FAILED | DELETE_FAILED
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
-
The request conflicts with the current state of the resource. 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
-
The limit on the number of requests per second was exceeded.
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: