CreateService - AWS Proton

CreateService

Create an AWS Proton service. An AWS Proton service is an instantiation of a service template and often includes several service instances and pipeline. For more information, see Services in the AWS Proton User Guide.

Request Syntax

{ "branchName": "string", "description": "string", "name": "string", "repositoryConnectionArn": "string", "repositoryId": "string", "spec": "string", "tags": [ { "key": "string", "value": "string" } ], "templateMajorVersion": "string", "templateMinorVersion": "string", "templateName": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

branchName

The name of the code repository branch that holds the code that's deployed in AWS Proton. Don't include this parameter if your service template doesn't include a service pipeline.

Type: String

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

Required: No

description

A description of the AWS Proton service.

Type: String

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

Required: No

name

The service name.

Type: String

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

Pattern: ^[0-9A-Za-z]+[0-9A-Za-z_\-]*$

Required: Yes

repositoryConnectionArn

The Amazon Resource Name (ARN) of the repository connection. For more information, see Setting up an AWS CodeStar connection in the AWS Proton User Guide. Don't include this parameter if your service template doesn't include a service pipeline.

Type: String

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

Pattern: ^arn:(aws|aws-cn|aws-us-gov):[a-zA-Z0-9-]+:[a-zA-Z0-9-]*:\d{12}:([\w+=,.@-]+[/:])*[\w+=,.@-]+$

Required: No

repositoryId

The ID of the code repository. Don't include this parameter if your service template doesn't include a service pipeline.

Type: String

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

Required: No

spec

A link to a spec file that provides inputs as defined in the service template bundle schema file. The spec file is in YAML format. Don’t include pipeline inputs in the spec if your service template doesn’t include a service pipeline. For more information, see Create a service in the AWS Proton User Guide.

Type: String

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

Required: Yes

tags

An optional list of metadata items that you can associate with the AWS Proton service. A tag is a key-value pair.

For more information, see AWS Proton resources and tagging in the AWS Proton User Guide.

Type: Array of Tag objects

Array Members: Minimum number of 0 items. Maximum number of 50 items.

Required: No

templateMajorVersion

The major version of the service template that was used to create the service.

Type: String

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

Pattern: ^(0|([1-9]{1}\d*))$

Required: Yes

templateMinorVersion

The minor version of the service template that was used to create the service.

Type: String

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

Pattern: ^(0|([1-9]{1}\d*))$

Required: No

templateName

The name of the service template that's used to create the service.

Type: String

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

Pattern: ^[0-9A-Za-z]+[0-9A-Za-z_\-]*$

Required: Yes

Response Syntax

{ "service": { "arn": "string", "branchName": "string", "createdAt": number, "description": "string", "lastModifiedAt": number, "name": "string", "pipeline": { "arn": "string", "createdAt": number, "deploymentStatus": "string", "deploymentStatusMessage": "string", "lastAttemptedDeploymentId": "string", "lastDeploymentAttemptedAt": number, "lastDeploymentSucceededAt": number, "lastSucceededDeploymentId": "string", "spec": "string", "templateMajorVersion": "string", "templateMinorVersion": "string", "templateName": "string" }, "repositoryConnectionArn": "string", "repositoryId": "string", "spec": "string", "status": "string", "statusMessage": "string", "templateName": "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.

service

The service detail data that's returned by AWS Proton.

Type: Service object

Errors

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

AccessDeniedException

There isn't sufficient access for performing this action.

HTTP Status Code: 400

ConflictException

The request couldn't be made due to a conflicting operation or resource.

HTTP Status Code: 400

InternalServerException

The request failed to register with the service.

HTTP Status Code: 500

ResourceNotFoundException

The requested resource wasn't found.

HTTP Status Code: 400

ServiceQuotaExceededException

A quota was exceeded. For more information, see AWS Proton Quotas in the AWS Proton User Guide.

HTTP Status Code: 400

ThrottlingException

The request was denied due to request throttling.

HTTP Status Code: 400

ValidationException

The input is invalid or an out-of-range value was supplied for the input parameter.

HTTP Status Code: 400

See Also

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