CreateServiceTemplate - AWS Proton

CreateServiceTemplate

Create a service template. The administrator creates a service template to define standardized infrastructure and an optional CI/CD service pipeline. Developers, in turn, select the service template from AWS Proton. If the selected service template includes a service pipeline definition, they provide a link to their source code repository. AWS Proton then deploys and manages the infrastructure defined by the selected service template. For more information, see AWS Proton templates in the AWS Proton User Guide.

Request Syntax

{ "description": "string", "displayName": "string", "encryptionKey": "string", "name": "string", "pipelineProvisioning": "string", "tags": [ { "key": "string", "value": "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.

description

A description of the service template.

Type: String

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

Required: No

displayName

The name of the service template as displayed in the developer interface.

Type: String

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

Required: No

encryptionKey

A customer provided encryption key that's used to encrypt data.

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

name

The name of the service template.

Type: String

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

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

Required: Yes

pipelineProvisioning

By default, AWS Proton provides a service pipeline for your service. When this parameter is included, it indicates that an AWS Proton service pipeline isn't provided for your service. After it's included, it can't be changed. For more information, see Template bundles in the AWS Proton User Guide.

Type: String

Valid Values: CUSTOMER_MANAGED

Required: No

tags

An optional list of metadata items that you can associate with the AWS Proton service template. 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

Response Syntax

{ "serviceTemplate": { "arn": "string", "createdAt": number, "description": "string", "displayName": "string", "encryptionKey": "string", "lastModifiedAt": number, "name": "string", "pipelineProvisioning": "string", "recommendedVersion": "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.

serviceTemplate

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

Type: ServiceTemplate 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

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: