From 5068aa17660d8c7a4833bfac39d86e9769e87e2c Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Wed, 9 Jun 2021 11:23:22 -0700 Subject: [PATCH] Release v1.38.58 (2021-06-09) (#3950) Release v1.38.58 (2021-06-09) === ### Service Client Updates * `service/kendra`: Updates service API and documentation * AWS Kendra now supports checking document status. * `service/personalize-events`: Updates service API * `service/proton`: Updates service API, documentation, paginators, and examples * `service/transfer`: Updates service documentation * Documentation updates for the AWS Transfer Family service. --- CHANGELOG.md | 11 + aws/version.go | 2 +- models/apis/kendra/2019-02-03/api-2.json | 85 + models/apis/kendra/2019-02-03/docs-2.json | 66 +- .../personalize-events/2018-03-22/api-2.json | 2 +- models/apis/proton/2020-07-20/api-2.json | 2514 +++ models/apis/proton/2020-07-20/docs-2.json | 1385 ++ models/apis/proton/2020-07-20/examples-1.json | 5 + .../apis/proton/2020-07-20/paginators-1.json | 58 + models/apis/transfer/2018-11-05/docs-2.json | 78 +- service/kendra/api.go | 422 + service/kendra/kendraiface/interface.go | 4 + service/proton/api.go | 13289 ++++++++++++++++ service/proton/doc.go | 130 + service/proton/errors.go | 64 + service/proton/protoniface/interface.go | 287 + service/proton/service.go | 106 + service/transfer/api.go | 306 +- 18 files changed, 18627 insertions(+), 187 deletions(-) create mode 100644 models/apis/proton/2020-07-20/api-2.json create mode 100644 models/apis/proton/2020-07-20/docs-2.json create mode 100644 models/apis/proton/2020-07-20/examples-1.json create mode 100644 models/apis/proton/2020-07-20/paginators-1.json create mode 100644 service/proton/api.go create mode 100644 service/proton/doc.go create mode 100644 service/proton/errors.go create mode 100644 service/proton/protoniface/interface.go create mode 100644 service/proton/service.go diff --git a/CHANGELOG.md b/CHANGELOG.md index f436a90ad68..61110c86c90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +Release v1.38.58 (2021-06-09) +=== + +### Service Client Updates +* `service/kendra`: Updates service API and documentation + * AWS Kendra now supports checking document status. +* `service/personalize-events`: Updates service API +* `service/proton`: Updates service API, documentation, paginators, and examples +* `service/transfer`: Updates service documentation + * Documentation updates for the AWS Transfer Family service. + Release v1.38.57 (2021-06-08) === diff --git a/aws/version.go b/aws/version.go index 08803c8713e..194d3de6525 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.38.57" +const SDKVersion = "1.38.58" diff --git a/models/apis/kendra/2019-02-03/api-2.json b/models/apis/kendra/2019-02-03/api-2.json index 57edc59359b..5d8e7064b70 100644 --- a/models/apis/kendra/2019-02-03/api-2.json +++ b/models/apis/kendra/2019-02-03/api-2.json @@ -31,6 +31,23 @@ {"shape":"InternalServerException"} ] }, + "BatchGetDocumentStatus":{ + "name":"BatchGetDocumentStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchGetDocumentStatusRequest"}, + "output":{"shape":"BatchGetDocumentStatusResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ] + }, "BatchPutDocument":{ "name":"BatchPutDocument", "http":{ @@ -745,6 +762,36 @@ "type":"list", "member":{"shape":"BatchDeleteDocumentResponseFailedDocument"} }, + "BatchGetDocumentStatusRequest":{ + "type":"structure", + "required":[ + "IndexId", + "DocumentInfoList" + ], + "members":{ + "IndexId":{"shape":"IndexId"}, + "DocumentInfoList":{"shape":"DocumentInfoList"} + } + }, + "BatchGetDocumentStatusResponse":{ + "type":"structure", + "members":{ + "Errors":{"shape":"BatchGetDocumentStatusResponseErrors"}, + "DocumentStatusList":{"shape":"DocumentStatusList"} + } + }, + "BatchGetDocumentStatusResponseError":{ + "type":"structure", + "members":{ + "DocumentId":{"shape":"DocumentId"}, + "ErrorCode":{"shape":"ErrorCode"}, + "ErrorMessage":{"shape":"ErrorMessage"} + } + }, + "BatchGetDocumentStatusResponseErrors":{ + "type":"list", + "member":{"shape":"BatchGetDocumentStatusResponseError"} + }, "BatchPutDocumentRequest":{ "type":"structure", "required":[ @@ -1715,6 +1762,20 @@ "max":10, "min":1 }, + "DocumentInfo":{ + "type":"structure", + "required":["DocumentId"], + "members":{ + "DocumentId":{"shape":"DocumentId"}, + "Attributes":{"shape":"DocumentAttributeList"} + } + }, + "DocumentInfoList":{ + "type":"list", + "member":{"shape":"DocumentInfo"}, + "max":10, + "min":1 + }, "DocumentList":{ "type":"list", "member":{"shape":"Document"}, @@ -1763,6 +1824,21 @@ "max":500, "min":0 }, + "DocumentStatus":{ + "type":"string", + "enum":[ + "NOT_FOUND", + "PROCESSING", + "INDEXED", + "UPDATED", + "FAILED", + "UPDATE_FAILED" + ] + }, + "DocumentStatusList":{ + "type":"list", + "member":{"shape":"Status"} + }, "DocumentsMetadataConfiguration":{ "type":"structure", "members":{ @@ -2917,6 +2993,15 @@ "ExecutionId":{"shape":"String"} } }, + "Status":{ + "type":"structure", + "members":{ + "DocumentId":{"shape":"DocumentId"}, + "DocumentStatus":{"shape":"DocumentStatus"}, + "FailureCode":{"shape":"String"}, + "FailureReason":{"shape":"String"} + } + }, "StopDataSourceSyncJobRequest":{ "type":"structure", "required":[ diff --git a/models/apis/kendra/2019-02-03/docs-2.json b/models/apis/kendra/2019-02-03/docs-2.json index 54a695fea3a..eead502aaa2 100644 --- a/models/apis/kendra/2019-02-03/docs-2.json +++ b/models/apis/kendra/2019-02-03/docs-2.json @@ -3,6 +3,7 @@ "service": "

Amazon Kendra is a service for indexing large document sets.

", "operations": { "BatchDeleteDocument": "

Removes one or more documents from an index. The documents must have been added with the BatchPutDocument operation.

The documents are deleted asynchronously. You can see the progress of the deletion by using AWS CloudWatch. Any error messages related to the processing of the batch are sent to you CloudWatch log.

", + "BatchGetDocumentStatus": "

Returns the indexing status for one or more documents submitted with the BatchPutDocument operation.

When you use the BatchPutDocument operation, documents are indexed asynchronously. You can use the BatchGetDocumentStatus operation to get the current status of a list of documents so that you can determine if they have been successfully indexed.

You can also use the BatchGetDocumentStatus operation to check the status of the BatchDeleteDocument operation. When a document is deleted from the index, Amazon Kendra returns NOT_FOUND as the status.

", "BatchPutDocument": "

Adds one or more documents to an index.

The BatchPutDocument operation enables you to ingest inline documents or a set of documents stored in an Amazon S3 bucket. Use this operation to ingest your text and unstructured text into an index, add custom attributes to the documents, and to attach an access control list to the documents added to the index.

The documents are indexed asynchronously. You can see the progress of the batch using AWS CloudWatch. Any error messages related to processing the batch are sent to your AWS CloudWatch log.

", "ClearQuerySuggestions": "

Clears existing query suggestions from an index.

This deletes existing suggestions only, not the queries in the query log. After you clear suggestions, Amazon Kendra learns new suggestions based on new queries added to the query log from the time you cleared suggestions. If you do not see any new suggestions, then please allow Amazon Kendra to collect enough queries to learn new suggestions.

", "CreateDataSource": "

Creates a data source that you use to with an Amazon Kendra index.

You specify a name, data source connector type and description for your data source. You also specify configuration information such as document metadata (author, source URI, and so on) and user context information.

CreateDataSource is a synchronous operation. The operation returns 200 if the data source was successfully created. Otherwise, an exception is raised.

", @@ -128,6 +129,28 @@ "BatchDeleteDocumentResponse$FailedDocuments": "

A list of documents that could not be removed from the index. Each entry contains an error message that indicates why the document couldn't be removed from the index.

" } }, + "BatchGetDocumentStatusRequest": { + "base": null, + "refs": { + } + }, + "BatchGetDocumentStatusResponse": { + "base": null, + "refs": { + } + }, + "BatchGetDocumentStatusResponseError": { + "base": "

Provides a response when the status of a document could not be retrieved.

", + "refs": { + "BatchGetDocumentStatusResponseErrors$member": null + } + }, + "BatchGetDocumentStatusResponseErrors": { + "base": null, + "refs": { + "BatchGetDocumentStatusResponse$Errors": "

A list of documents that Amazon Kendra couldn't get the status for. The list includes the ID of the document and the reason that the status couldn't be found.

" + } + }, "BatchPutDocumentRequest": { "base": null, "refs": { @@ -783,6 +806,7 @@ "base": null, "refs": { "Document$Attributes": "

Custom attributes to apply to the document. Use the custom attributes to provide additional information for searching, to provide facets for refining searches, and to provide additional information in the query response.

", + "DocumentInfo$Attributes": "

Attributes that identify a specific version of a document to check.

The only valid attributes are:

The attributes follow these rules:

", "QueryResultItem$DocumentAttributes": "

An array of document attributes for the document that the query result maps to. For example, the document author (Author) or the source URI (SourceUri) of the document.

" } }, @@ -828,10 +852,13 @@ "base": null, "refs": { "BatchDeleteDocumentResponseFailedDocument$Id": "

The identifier of the document that couldn't be removed from the index.

", + "BatchGetDocumentStatusResponseError$DocumentId": "

The unique identifier of the document whose status could not be retrieved.

", "BatchPutDocumentResponseFailedDocument$Id": "

The unique identifier of the document.

", "Document$Id": "

A unique identifier of the document in the index.

", "DocumentIdList$member": null, - "QueryResultItem$DocumentId": "

The unique identifier for the document.

" + "DocumentInfo$DocumentId": "

The unique identifier of the document.

", + "QueryResultItem$DocumentId": "

The unique identifier for the document.

", + "Status$DocumentId": "

The unique identifier of the document.

" } }, "DocumentIdList": { @@ -840,6 +867,18 @@ "BatchDeleteDocumentRequest$DocumentIdList": "

One or more identifiers for documents to delete from the index.

" } }, + "DocumentInfo": { + "base": "

Identifies a document for which to retrieve status information

", + "refs": { + "DocumentInfoList$member": null + } + }, + "DocumentInfoList": { + "base": null, + "refs": { + "BatchGetDocumentStatusRequest$DocumentInfoList": "

A list of DocumentInfo objects that identify the documents for which to get the status. You identify the documents by their document ID and optional attributes.

" + } + }, "DocumentList": { "base": null, "refs": { @@ -884,6 +923,18 @@ "QueryRequest$DocumentRelevanceOverrideConfigurations": "

Overrides relevance tuning configurations of fields or attributes set at the index level.

If you use this API to override the relevance tuning configured at the index level, but there is no relevance tuning configured at the index level, then Amazon Kendra does not apply any relevance tuning.

If there is relevance tuning configured at the index level, but you do not use this API to override any relevance tuning in the index, then Amazon Kendra uses the relevance tuning that is configured at the index level.

If there is relevance tuning configured for fields at the index level, but you use this API to override only some of these fields, then for the fields you did not override, the importance is set to 1.

" } }, + "DocumentStatus": { + "base": null, + "refs": { + "Status$DocumentStatus": "

The current status of a document.

If the document was submitted for deletion, the status is NOT_FOUND after the document is deleted.

" + } + }, + "DocumentStatusList": { + "base": null, + "refs": { + "BatchGetDocumentStatusResponse$DocumentStatusList": "

The status of documents. The status indicates if the document is waiting to be indexed, is in the process of indexing, has completed indexing, or failed indexing. If a document failed indexing, the status provides the reason why.

" + } + }, "DocumentsMetadataConfiguration": { "base": "

Document metadata files that contain information such as the document access control information, source URI, document author, and custom attributes. Each metadata file contains metadata about a single document.

", "refs": { @@ -900,6 +951,7 @@ "base": null, "refs": { "BatchDeleteDocumentResponseFailedDocument$ErrorCode": "

The error code for why the document couldn't be removed from the index.

", + "BatchGetDocumentStatusResponseError$ErrorCode": "

Indicates the source of the error.

", "BatchPutDocumentResponseFailedDocument$ErrorCode": "

The type of error that caused the document to fail to be indexed.

", "DataSourceSyncJob$ErrorCode": "

If the Status field is set to FAILED, the ErrorCode field contains a the reason that the synchronization failed.

" } @@ -909,6 +961,7 @@ "refs": { "AccessDeniedException$Message": null, "BatchDeleteDocumentResponseFailedDocument$ErrorMessage": "

An explanation for why the document couldn't be removed from the index.

", + "BatchGetDocumentStatusResponseError$ErrorMessage": "

States that the API could not get the status of a document. This could be because the request is not valid or there is a system error.

", "BatchPutDocumentResponseFailedDocument$ErrorMessage": "

A description of the reason why the document could not be indexed.

", "ConflictException$Message": null, "DataSourceSyncJob$ErrorMessage": "

If the Status field is set to ERROR, the ErrorMessage field contains a description of the error that caused the synchronization to fail.

", @@ -1107,6 +1160,7 @@ "base": null, "refs": { "BatchDeleteDocumentRequest$IndexId": "

The identifier of the index that contains the documents to delete.

", + "BatchGetDocumentStatusRequest$IndexId": "

The identifier of the index to add documents to. The index ID is returned by the CreateIndex operation.

", "BatchPutDocumentRequest$IndexId": "

The identifier of the index to add the documents to. You need to create the index first using the CreateIndex operation.

", "ClearQuerySuggestionsRequest$IndexId": "

The identifier of the index you want to clear query suggestions from.

", "CreateDataSourceRequest$IndexId": "

The identifier of the index that should be associated with this data source.

", @@ -1935,6 +1989,12 @@ "refs": { } }, + "Status": { + "base": "

Provides information about the status of documents submitted for indexing.

", + "refs": { + "DocumentStatusList$member": null + } + }, "StopDataSourceSyncJobRequest": { "base": null, "refs": { @@ -1956,6 +2016,8 @@ "JsonTokenTypeConfiguration$UserNameAttributeField": "

The user name attribute field.

", "JsonTokenTypeConfiguration$GroupAttributeField": "

The group attribute field.

", "StartDataSourceSyncJobResponse$ExecutionId": "

Identifies a particular synchronization job.

", + "Status$FailureCode": "

Indicates the source of the error.

", + "Status$FailureReason": "

Provides detailed information about why the document couldn't be indexed. Use this information to correct the error before you resubmit the document for indexing.

", "SuggestionTextWithHighlights$Text": "

The query suggestion text to display to the user.

", "TextWithHighlights$Text": "

The text to display to the user.

" } @@ -2162,7 +2224,7 @@ "DescribeQuerySuggestionsConfigResponse$LastClearTime": "

Shows the date-time query suggestions for an index was last cleared.

After you clear suggestions, Amazon Kendra learns new suggestions based on new queries added to the query log from the time you cleared suggestions. Amazon Kendra only considers re-occurences of a query from the time you cleared suggestions.

", "DescribeThesaurusResponse$CreatedAt": "

The Unix datetime that the thesaurus was created.

", "DescribeThesaurusResponse$UpdatedAt": "

The Unix datetime that the thesaurus was last updated.

", - "DocumentAttributeValue$DateValue": "

A date expressed as an ISO 8601 string.

", + "DocumentAttributeValue$DateValue": "

A date expressed as an ISO 8601 string.

It is important for the time zone to be included in the ISO 8601 date-time format. For example, 20120325T123010+01:00 is the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time.

", "FaqSummary$CreatedAt": "

The UNIX datetime that the FAQ was added to the index.

", "FaqSummary$UpdatedAt": "

The UNIX datetime that the FAQ was last updated.

", "IndexConfigurationSummary$CreatedAt": "

The Unix timestamp when the index was created.

", diff --git a/models/apis/personalize-events/2018-03-22/api-2.json b/models/apis/personalize-events/2018-03-22/api-2.json index 52d2aba77bc..4b0cbd7ec5b 100644 --- a/models/apis/personalize-events/2018-03-22/api-2.json +++ b/models/apis/personalize-events/2018-03-22/api-2.json @@ -128,7 +128,7 @@ }, "ItemProperties":{ "type":"string", - "max":4096, + "max":24262, "min":1 }, "PutEventsRequest":{ diff --git a/models/apis/proton/2020-07-20/api-2.json b/models/apis/proton/2020-07-20/api-2.json new file mode 100644 index 00000000000..3ebbbe31696 --- /dev/null +++ b/models/apis/proton/2020-07-20/api-2.json @@ -0,0 +1,2514 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2020-07-20", + "endpointPrefix":"proton", + "jsonVersion":"1.0", + "protocol":"json", + "serviceFullName":"AWS Proton", + "serviceId":"Proton", + "signatureVersion":"v4", + "signingName":"proton", + "targetPrefix":"AwsProton20200720", + "uid":"proton-2020-07-20" + }, + "operations":{ + "AcceptEnvironmentAccountConnection":{ + "name":"AcceptEnvironmentAccountConnection", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AcceptEnvironmentAccountConnectionInput"}, + "output":{"shape":"AcceptEnvironmentAccountConnectionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CancelEnvironmentDeployment":{ + "name":"CancelEnvironmentDeployment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CancelEnvironmentDeploymentInput"}, + "output":{"shape":"CancelEnvironmentDeploymentOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "CancelServiceInstanceDeployment":{ + "name":"CancelServiceInstanceDeployment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CancelServiceInstanceDeploymentInput"}, + "output":{"shape":"CancelServiceInstanceDeploymentOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "CancelServicePipelineDeployment":{ + "name":"CancelServicePipelineDeployment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CancelServicePipelineDeploymentInput"}, + "output":{"shape":"CancelServicePipelineDeploymentOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "CreateEnvironment":{ + "name":"CreateEnvironment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateEnvironmentInput"}, + "output":{"shape":"CreateEnvironmentOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateEnvironmentAccountConnection":{ + "name":"CreateEnvironmentAccountConnection", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateEnvironmentAccountConnectionInput"}, + "output":{"shape":"CreateEnvironmentAccountConnectionOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateEnvironmentTemplate":{ + "name":"CreateEnvironmentTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateEnvironmentTemplateInput"}, + "output":{"shape":"CreateEnvironmentTemplateOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateEnvironmentTemplateVersion":{ + "name":"CreateEnvironmentTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateEnvironmentTemplateVersionInput"}, + "output":{"shape":"CreateEnvironmentTemplateVersionOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateService":{ + "name":"CreateService", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateServiceInput"}, + "output":{"shape":"CreateServiceOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateServiceTemplate":{ + "name":"CreateServiceTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateServiceTemplateInput"}, + "output":{"shape":"CreateServiceTemplateOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateServiceTemplateVersion":{ + "name":"CreateServiceTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateServiceTemplateVersionInput"}, + "output":{"shape":"CreateServiceTemplateVersionOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteEnvironment":{ + "name":"DeleteEnvironment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteEnvironmentInput"}, + "output":{"shape":"DeleteEnvironmentOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteEnvironmentAccountConnection":{ + "name":"DeleteEnvironmentAccountConnection", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteEnvironmentAccountConnectionInput"}, + "output":{"shape":"DeleteEnvironmentAccountConnectionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteEnvironmentTemplate":{ + "name":"DeleteEnvironmentTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteEnvironmentTemplateInput"}, + "output":{"shape":"DeleteEnvironmentTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteEnvironmentTemplateVersion":{ + "name":"DeleteEnvironmentTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteEnvironmentTemplateVersionInput"}, + "output":{"shape":"DeleteEnvironmentTemplateVersionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteService":{ + "name":"DeleteService", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteServiceInput"}, + "output":{"shape":"DeleteServiceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteServiceTemplate":{ + "name":"DeleteServiceTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteServiceTemplateInput"}, + "output":{"shape":"DeleteServiceTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteServiceTemplateVersion":{ + "name":"DeleteServiceTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteServiceTemplateVersionInput"}, + "output":{"shape":"DeleteServiceTemplateVersionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "GetAccountSettings":{ + "name":"GetAccountSettings", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetAccountSettingsInput"}, + "output":{"shape":"GetAccountSettingsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetEnvironment":{ + "name":"GetEnvironment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEnvironmentInput"}, + "output":{"shape":"GetEnvironmentOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetEnvironmentAccountConnection":{ + "name":"GetEnvironmentAccountConnection", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEnvironmentAccountConnectionInput"}, + "output":{"shape":"GetEnvironmentAccountConnectionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetEnvironmentTemplate":{ + "name":"GetEnvironmentTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEnvironmentTemplateInput"}, + "output":{"shape":"GetEnvironmentTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetEnvironmentTemplateVersion":{ + "name":"GetEnvironmentTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEnvironmentTemplateVersionInput"}, + "output":{"shape":"GetEnvironmentTemplateVersionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetService":{ + "name":"GetService", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetServiceInput"}, + "output":{"shape":"GetServiceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetServiceInstance":{ + "name":"GetServiceInstance", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetServiceInstanceInput"}, + "output":{"shape":"GetServiceInstanceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetServiceTemplate":{ + "name":"GetServiceTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetServiceTemplateInput"}, + "output":{"shape":"GetServiceTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetServiceTemplateVersion":{ + "name":"GetServiceTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetServiceTemplateVersionInput"}, + "output":{"shape":"GetServiceTemplateVersionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListEnvironmentAccountConnections":{ + "name":"ListEnvironmentAccountConnections", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListEnvironmentAccountConnectionsInput"}, + "output":{"shape":"ListEnvironmentAccountConnectionsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "ListEnvironmentTemplateVersions":{ + "name":"ListEnvironmentTemplateVersions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListEnvironmentTemplateVersionsInput"}, + "output":{"shape":"ListEnvironmentTemplateVersionsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListEnvironmentTemplates":{ + "name":"ListEnvironmentTemplates", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListEnvironmentTemplatesInput"}, + "output":{"shape":"ListEnvironmentTemplatesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "ListEnvironments":{ + "name":"ListEnvironments", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListEnvironmentsInput"}, + "output":{"shape":"ListEnvironmentsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListServiceInstances":{ + "name":"ListServiceInstances", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListServiceInstancesInput"}, + "output":{"shape":"ListServiceInstancesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListServiceTemplateVersions":{ + "name":"ListServiceTemplateVersions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListServiceTemplateVersionsInput"}, + "output":{"shape":"ListServiceTemplateVersionsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListServiceTemplates":{ + "name":"ListServiceTemplates", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListServiceTemplatesInput"}, + "output":{"shape":"ListServiceTemplatesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "ListServices":{ + "name":"ListServices", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListServicesInput"}, + "output":{"shape":"ListServicesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceInput"}, + "output":{"shape":"ListTagsForResourceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "RejectEnvironmentAccountConnection":{ + "name":"RejectEnvironmentAccountConnection", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RejectEnvironmentAccountConnectionInput"}, + "output":{"shape":"RejectEnvironmentAccountConnectionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceInput"}, + "output":{"shape":"TagResourceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceInput"}, + "output":{"shape":"UntagResourceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateAccountSettings":{ + "name":"UpdateAccountSettings", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateAccountSettingsInput"}, + "output":{"shape":"UpdateAccountSettingsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateEnvironment":{ + "name":"UpdateEnvironment", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEnvironmentInput"}, + "output":{"shape":"UpdateEnvironmentOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateEnvironmentAccountConnection":{ + "name":"UpdateEnvironmentAccountConnection", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEnvironmentAccountConnectionInput"}, + "output":{"shape":"UpdateEnvironmentAccountConnectionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateEnvironmentTemplate":{ + "name":"UpdateEnvironmentTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEnvironmentTemplateInput"}, + "output":{"shape":"UpdateEnvironmentTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateEnvironmentTemplateVersion":{ + "name":"UpdateEnvironmentTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEnvironmentTemplateVersionInput"}, + "output":{"shape":"UpdateEnvironmentTemplateVersionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateService":{ + "name":"UpdateService", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateServiceInput"}, + "output":{"shape":"UpdateServiceOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateServiceInstance":{ + "name":"UpdateServiceInstance", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateServiceInstanceInput"}, + "output":{"shape":"UpdateServiceInstanceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateServicePipeline":{ + "name":"UpdateServicePipeline", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateServicePipelineInput"}, + "output":{"shape":"UpdateServicePipelineOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateServiceTemplate":{ + "name":"UpdateServiceTemplate", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateServiceTemplateInput"}, + "output":{"shape":"UpdateServiceTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "UpdateServiceTemplateVersion":{ + "name":"UpdateServiceTemplateVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateServiceTemplateVersionInput"}, + "output":{"shape":"UpdateServiceTemplateVersionOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + } + }, + "shapes":{ + "AcceptEnvironmentAccountConnectionInput":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{"shape":"EnvironmentAccountConnectionId"} + } + }, + "AcceptEnvironmentAccountConnectionOutput":{ + "type":"structure", + "required":["environmentAccountConnection"], + "members":{ + "environmentAccountConnection":{"shape":"EnvironmentAccountConnection"} + } + }, + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "AccountSettings":{ + "type":"structure", + "members":{ + "pipelineServiceRoleArn":{"shape":"Arn"} + } + }, + "Arn":{ + "type":"string", + "max":200, + "min":1 + }, + "AwsAccountId":{ + "type":"string", + "pattern":"^\\d{12}$" + }, + "CancelEnvironmentDeploymentInput":{ + "type":"structure", + "required":["environmentName"], + "members":{ + "environmentName":{"shape":"ResourceName"} + } + }, + "CancelEnvironmentDeploymentOutput":{ + "type":"structure", + "required":["environment"], + "members":{ + "environment":{"shape":"Environment"} + } + }, + "CancelServiceInstanceDeploymentInput":{ + "type":"structure", + "required":[ + "serviceInstanceName", + "serviceName" + ], + "members":{ + "serviceInstanceName":{"shape":"ResourceName"}, + "serviceName":{"shape":"ResourceName"} + } + }, + "CancelServiceInstanceDeploymentOutput":{ + "type":"structure", + "required":["serviceInstance"], + "members":{ + "serviceInstance":{"shape":"ServiceInstance"} + } + }, + "CancelServicePipelineDeploymentInput":{ + "type":"structure", + "required":["serviceName"], + "members":{ + "serviceName":{"shape":"ResourceName"} + } + }, + "CancelServicePipelineDeploymentOutput":{ + "type":"structure", + "required":["pipeline"], + "members":{ + "pipeline":{"shape":"ServicePipeline"} + } + }, + "ClientToken":{ + "type":"string", + "max":64, + "min":0, + "pattern":"^[!-~]*$" + }, + "CompatibleEnvironmentTemplate":{ + "type":"structure", + "required":[ + "majorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "CompatibleEnvironmentTemplateInput":{ + "type":"structure", + "required":[ + "majorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "CompatibleEnvironmentTemplateInputList":{ + "type":"list", + "member":{"shape":"CompatibleEnvironmentTemplateInput"}, + "max":10, + "min":1 + }, + "CompatibleEnvironmentTemplateList":{ + "type":"list", + "member":{"shape":"CompatibleEnvironmentTemplate"} + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "CreateEnvironmentAccountConnectionInput":{ + "type":"structure", + "required":[ + "environmentName", + "managementAccountId", + "roleArn" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "environmentName":{"shape":"ResourceName"}, + "managementAccountId":{"shape":"AwsAccountId"}, + "roleArn":{"shape":"Arn"} + } + }, + "CreateEnvironmentAccountConnectionOutput":{ + "type":"structure", + "required":["environmentAccountConnection"], + "members":{ + "environmentAccountConnection":{"shape":"EnvironmentAccountConnection"} + } + }, + "CreateEnvironmentInput":{ + "type":"structure", + "required":[ + "name", + "spec", + "templateMajorVersion", + "templateName" + ], + "members":{ + "description":{"shape":"Description"}, + "environmentAccountConnectionId":{"shape":"EnvironmentAccountConnectionId"}, + "name":{"shape":"ResourceName"}, + "protonServiceRoleArn":{"shape":"Arn"}, + "spec":{"shape":"SpecContents"}, + "tags":{"shape":"TagList"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "CreateEnvironmentOutput":{ + "type":"structure", + "required":["environment"], + "members":{ + "environment":{"shape":"Environment"} + } + }, + "CreateEnvironmentTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "encryptionKey":{"shape":"Arn"}, + "name":{"shape":"ResourceName"}, + "provisioning":{"shape":"Provisioning"}, + "tags":{"shape":"TagList"} + } + }, + "CreateEnvironmentTemplateOutput":{ + "type":"structure", + "required":["environmentTemplate"], + "members":{ + "environmentTemplate":{"shape":"EnvironmentTemplate"} + } + }, + "CreateEnvironmentTemplateVersionInput":{ + "type":"structure", + "required":[ + "source", + "templateName" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "description":{"shape":"Description"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "source":{"shape":"TemplateVersionSourceInput"}, + "tags":{"shape":"TagList"}, + "templateName":{"shape":"ResourceName"} + } + }, + "CreateEnvironmentTemplateVersionOutput":{ + "type":"structure", + "required":["environmentTemplateVersion"], + "members":{ + "environmentTemplateVersion":{"shape":"EnvironmentTemplateVersion"} + } + }, + "CreateServiceInput":{ + "type":"structure", + "required":[ + "name", + "spec", + "templateMajorVersion", + "templateName" + ], + "members":{ + "branchName":{"shape":"GitBranchName"}, + "description":{"shape":"Description"}, + "name":{"shape":"ResourceName"}, + "repositoryConnectionArn":{"shape":"Arn"}, + "repositoryId":{"shape":"RepositoryId"}, + "spec":{"shape":"SpecContents"}, + "tags":{"shape":"TagList"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "CreateServiceOutput":{ + "type":"structure", + "required":["service"], + "members":{ + "service":{"shape":"Service"} + } + }, + "CreateServiceTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "encryptionKey":{"shape":"Arn"}, + "name":{"shape":"ResourceName"}, + "pipelineProvisioning":{"shape":"Provisioning"}, + "tags":{"shape":"TagList"} + } + }, + "CreateServiceTemplateOutput":{ + "type":"structure", + "required":["serviceTemplate"], + "members":{ + "serviceTemplate":{"shape":"ServiceTemplate"} + } + }, + "CreateServiceTemplateVersionInput":{ + "type":"structure", + "required":[ + "compatibleEnvironmentTemplates", + "source", + "templateName" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "compatibleEnvironmentTemplates":{"shape":"CompatibleEnvironmentTemplateInputList"}, + "description":{"shape":"Description"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "source":{"shape":"TemplateVersionSourceInput"}, + "tags":{"shape":"TagList"}, + "templateName":{"shape":"ResourceName"} + } + }, + "CreateServiceTemplateVersionOutput":{ + "type":"structure", + "required":["serviceTemplateVersion"], + "members":{ + "serviceTemplateVersion":{"shape":"ServiceTemplateVersion"} + } + }, + "DeleteEnvironmentAccountConnectionInput":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{"shape":"EnvironmentAccountConnectionId"} + } + }, + "DeleteEnvironmentAccountConnectionOutput":{ + "type":"structure", + "members":{ + "environmentAccountConnection":{"shape":"EnvironmentAccountConnection"} + } + }, + "DeleteEnvironmentInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "DeleteEnvironmentOutput":{ + "type":"structure", + "members":{ + "environment":{"shape":"Environment"} + } + }, + "DeleteEnvironmentTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "DeleteEnvironmentTemplateOutput":{ + "type":"structure", + "members":{ + "environmentTemplate":{"shape":"EnvironmentTemplate"} + } + }, + "DeleteEnvironmentTemplateVersionInput":{ + "type":"structure", + "required":[ + "majorVersion", + "minorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "DeleteEnvironmentTemplateVersionOutput":{ + "type":"structure", + "members":{ + "environmentTemplateVersion":{"shape":"EnvironmentTemplateVersion"} + } + }, + "DeleteServiceInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "DeleteServiceOutput":{ + "type":"structure", + "members":{ + "service":{"shape":"Service"} + } + }, + "DeleteServiceTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "DeleteServiceTemplateOutput":{ + "type":"structure", + "members":{ + "serviceTemplate":{"shape":"ServiceTemplate"} + } + }, + "DeleteServiceTemplateVersionInput":{ + "type":"structure", + "required":[ + "majorVersion", + "minorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "DeleteServiceTemplateVersionOutput":{ + "type":"structure", + "members":{ + "serviceTemplateVersion":{"shape":"ServiceTemplateVersion"} + } + }, + "DeploymentStatus":{ + "type":"string", + "enum":[ + "IN_PROGRESS", + "FAILED", + "SUCCEEDED", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETE_COMPLETE", + "CANCELLING", + "CANCELLED" + ] + }, + "DeploymentUpdateType":{ + "type":"string", + "enum":[ + "NONE", + "CURRENT_VERSION", + "MINOR_VERSION", + "MAJOR_VERSION" + ] + }, + "Description":{ + "type":"string", + "max":500, + "min":0, + "sensitive":true + }, + "DisplayName":{ + "type":"string", + "max":100, + "min":1, + "sensitive":true + }, + "Environment":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "deploymentStatus", + "lastDeploymentAttemptedAt", + "lastDeploymentSucceededAt", + "name", + "templateMajorVersion", + "templateMinorVersion", + "templateName" + ], + "members":{ + "arn":{"shape":"EnvironmentArn"}, + "createdAt":{"shape":"Timestamp"}, + "deploymentStatus":{"shape":"DeploymentStatus"}, + "deploymentStatusMessage":{"shape":"StatusMessage"}, + "description":{"shape":"Description"}, + "environmentAccountConnectionId":{"shape":"EnvironmentAccountConnectionId"}, + "environmentAccountId":{"shape":"AwsAccountId"}, + "lastDeploymentAttemptedAt":{"shape":"Timestamp"}, + "lastDeploymentSucceededAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "protonServiceRoleArn":{"shape":"Arn"}, + "provisioning":{"shape":"Provisioning"}, + "spec":{"shape":"SpecContents"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "EnvironmentAccountConnection":{ + "type":"structure", + "required":[ + "arn", + "environmentAccountId", + "environmentName", + "id", + "lastModifiedAt", + "managementAccountId", + "requestedAt", + "roleArn", + "status" + ], + "members":{ + "arn":{"shape":"EnvironmentAccountConnectionArn"}, + "environmentAccountId":{"shape":"AwsAccountId"}, + "environmentName":{"shape":"ResourceName"}, + "id":{"shape":"EnvironmentAccountConnectionId"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "managementAccountId":{"shape":"AwsAccountId"}, + "requestedAt":{"shape":"Timestamp"}, + "roleArn":{"shape":"Arn"}, + "status":{"shape":"EnvironmentAccountConnectionStatus"} + } + }, + "EnvironmentAccountConnectionArn":{"type":"string"}, + "EnvironmentAccountConnectionId":{ + "type":"string", + "pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + }, + "EnvironmentAccountConnectionRequesterAccountType":{ + "type":"string", + "enum":[ + "MANAGEMENT_ACCOUNT", + "ENVIRONMENT_ACCOUNT" + ] + }, + "EnvironmentAccountConnectionStatus":{ + "type":"string", + "enum":[ + "PENDING", + "CONNECTED", + "REJECTED" + ] + }, + "EnvironmentAccountConnectionStatusList":{ + "type":"list", + "member":{"shape":"EnvironmentAccountConnectionStatus"} + }, + "EnvironmentAccountConnectionSummary":{ + "type":"structure", + "required":[ + "arn", + "environmentAccountId", + "environmentName", + "id", + "lastModifiedAt", + "managementAccountId", + "requestedAt", + "roleArn", + "status" + ], + "members":{ + "arn":{"shape":"EnvironmentAccountConnectionArn"}, + "environmentAccountId":{"shape":"AwsAccountId"}, + "environmentName":{"shape":"ResourceName"}, + "id":{"shape":"EnvironmentAccountConnectionId"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "managementAccountId":{"shape":"AwsAccountId"}, + "requestedAt":{"shape":"Timestamp"}, + "roleArn":{"shape":"Arn"}, + "status":{"shape":"EnvironmentAccountConnectionStatus"} + } + }, + "EnvironmentAccountConnectionSummaryList":{ + "type":"list", + "member":{"shape":"EnvironmentAccountConnectionSummary"} + }, + "EnvironmentArn":{"type":"string"}, + "EnvironmentSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "deploymentStatus", + "lastDeploymentAttemptedAt", + "lastDeploymentSucceededAt", + "name", + "templateMajorVersion", + "templateMinorVersion", + "templateName" + ], + "members":{ + "arn":{"shape":"EnvironmentArn"}, + "createdAt":{"shape":"Timestamp"}, + "deploymentStatus":{"shape":"DeploymentStatus"}, + "deploymentStatusMessage":{"shape":"StatusMessage"}, + "description":{"shape":"Description"}, + "environmentAccountConnectionId":{"shape":"EnvironmentAccountConnectionId"}, + "environmentAccountId":{"shape":"AwsAccountId"}, + "lastDeploymentAttemptedAt":{"shape":"Timestamp"}, + "lastDeploymentSucceededAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "protonServiceRoleArn":{"shape":"Arn"}, + "provisioning":{"shape":"Provisioning"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "EnvironmentSummaryList":{ + "type":"list", + "member":{"shape":"EnvironmentSummary"} + }, + "EnvironmentTemplate":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "name" + ], + "members":{ + "arn":{"shape":"EnvironmentTemplateArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "encryptionKey":{"shape":"Arn"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "provisioning":{"shape":"Provisioning"}, + "recommendedVersion":{"shape":"FullTemplateVersionNumber"} + } + }, + "EnvironmentTemplateArn":{"type":"string"}, + "EnvironmentTemplateFilter":{ + "type":"structure", + "required":[ + "majorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "EnvironmentTemplateFilterList":{ + "type":"list", + "member":{"shape":"EnvironmentTemplateFilter"} + }, + "EnvironmentTemplateSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "name" + ], + "members":{ + "arn":{"shape":"EnvironmentTemplateArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "provisioning":{"shape":"Provisioning"}, + "recommendedVersion":{"shape":"FullTemplateVersionNumber"} + } + }, + "EnvironmentTemplateSummaryList":{ + "type":"list", + "member":{"shape":"EnvironmentTemplateSummary"} + }, + "EnvironmentTemplateVersion":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "majorVersion", + "minorVersion", + "status", + "templateName" + ], + "members":{ + "arn":{"shape":"EnvironmentTemplateVersionArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "recommendedMinorVersion":{"shape":"TemplateVersionPart"}, + "schema":{"shape":"TemplateSchema"}, + "status":{"shape":"TemplateVersionStatus"}, + "statusMessage":{"shape":"StatusMessage"}, + "templateName":{"shape":"ResourceName"} + } + }, + "EnvironmentTemplateVersionArn":{"type":"string"}, + "EnvironmentTemplateVersionSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "majorVersion", + "minorVersion", + "status", + "templateName" + ], + "members":{ + "arn":{"shape":"EnvironmentTemplateVersionArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "recommendedMinorVersion":{"shape":"TemplateVersionPart"}, + "status":{"shape":"TemplateVersionStatus"}, + "statusMessage":{"shape":"StatusMessage"}, + "templateName":{"shape":"ResourceName"} + } + }, + "EnvironmentTemplateVersionSummaryList":{ + "type":"list", + "member":{"shape":"EnvironmentTemplateVersionSummary"} + }, + "ErrorMessage":{ + "type":"string", + "sensitive":true + }, + "FullTemplateVersionNumber":{ + "type":"string", + "max":10, + "min":1, + "pattern":"^(0|([1-9]{1}\\d*)).(0|([1-9]{1}\\d*))$" + }, + "GetAccountSettingsInput":{ + "type":"structure", + "members":{ + } + }, + "GetAccountSettingsOutput":{ + "type":"structure", + "members":{ + "accountSettings":{"shape":"AccountSettings"} + } + }, + "GetEnvironmentAccountConnectionInput":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{"shape":"EnvironmentAccountConnectionId"} + } + }, + "GetEnvironmentAccountConnectionOutput":{ + "type":"structure", + "required":["environmentAccountConnection"], + "members":{ + "environmentAccountConnection":{"shape":"EnvironmentAccountConnection"} + } + }, + "GetEnvironmentInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "GetEnvironmentOutput":{ + "type":"structure", + "required":["environment"], + "members":{ + "environment":{"shape":"Environment"} + } + }, + "GetEnvironmentTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "GetEnvironmentTemplateOutput":{ + "type":"structure", + "required":["environmentTemplate"], + "members":{ + "environmentTemplate":{"shape":"EnvironmentTemplate"} + } + }, + "GetEnvironmentTemplateVersionInput":{ + "type":"structure", + "required":[ + "majorVersion", + "minorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "GetEnvironmentTemplateVersionOutput":{ + "type":"structure", + "required":["environmentTemplateVersion"], + "members":{ + "environmentTemplateVersion":{"shape":"EnvironmentTemplateVersion"} + } + }, + "GetServiceInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "GetServiceInstanceInput":{ + "type":"structure", + "required":[ + "name", + "serviceName" + ], + "members":{ + "name":{"shape":"ResourceName"}, + "serviceName":{"shape":"ResourceName"} + } + }, + "GetServiceInstanceOutput":{ + "type":"structure", + "required":["serviceInstance"], + "members":{ + "serviceInstance":{"shape":"ServiceInstance"} + } + }, + "GetServiceOutput":{ + "type":"structure", + "members":{ + "service":{"shape":"Service"} + } + }, + "GetServiceTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"ResourceName"} + } + }, + "GetServiceTemplateOutput":{ + "type":"structure", + "required":["serviceTemplate"], + "members":{ + "serviceTemplate":{"shape":"ServiceTemplate"} + } + }, + "GetServiceTemplateVersionInput":{ + "type":"structure", + "required":[ + "majorVersion", + "minorVersion", + "templateName" + ], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "GetServiceTemplateVersionOutput":{ + "type":"structure", + "required":["serviceTemplateVersion"], + "members":{ + "serviceTemplateVersion":{"shape":"ServiceTemplateVersion"} + } + }, + "GitBranchName":{ + "type":"string", + "max":200, + "min":1 + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListEnvironmentAccountConnectionsInput":{ + "type":"structure", + "required":["requestedBy"], + "members":{ + "environmentName":{"shape":"ResourceName"}, + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"}, + "requestedBy":{"shape":"EnvironmentAccountConnectionRequesterAccountType"}, + "statuses":{"shape":"EnvironmentAccountConnectionStatusList"} + } + }, + "ListEnvironmentAccountConnectionsOutput":{ + "type":"structure", + "required":["environmentAccountConnections"], + "members":{ + "environmentAccountConnections":{"shape":"EnvironmentAccountConnectionSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListEnvironmentTemplateVersionsInput":{ + "type":"structure", + "required":["templateName"], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ListEnvironmentTemplateVersionsOutput":{ + "type":"structure", + "required":["templateVersions"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "templateVersions":{"shape":"EnvironmentTemplateVersionSummaryList"} + } + }, + "ListEnvironmentTemplatesInput":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListEnvironmentTemplatesOutput":{ + "type":"structure", + "required":["templates"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "templates":{"shape":"EnvironmentTemplateSummaryList"} + } + }, + "ListEnvironmentsInput":{ + "type":"structure", + "members":{ + "environmentTemplates":{"shape":"EnvironmentTemplateFilterList"}, + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListEnvironmentsOutput":{ + "type":"structure", + "required":["environments"], + "members":{ + "environments":{"shape":"EnvironmentSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListServiceInstancesInput":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"}, + "serviceName":{"shape":"ResourceName"} + } + }, + "ListServiceInstancesOutput":{ + "type":"structure", + "required":["serviceInstances"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "serviceInstances":{"shape":"ServiceInstanceSummaryList"} + } + }, + "ListServiceTemplateVersionsInput":{ + "type":"structure", + "required":["templateName"], + "members":{ + "majorVersion":{"shape":"TemplateVersionPart"}, + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ListServiceTemplateVersionsOutput":{ + "type":"structure", + "required":["templateVersions"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "templateVersions":{"shape":"ServiceTemplateVersionSummaryList"} + } + }, + "ListServiceTemplatesInput":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListServiceTemplatesOutput":{ + "type":"structure", + "required":["templates"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "templates":{"shape":"ServiceTemplateSummaryList"} + } + }, + "ListServicesInput":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListServicesOutput":{ + "type":"structure", + "required":["services"], + "members":{ + "nextToken":{"shape":"NextToken"}, + "services":{"shape":"ServiceSummaryList"} + } + }, + "ListTagsForResourceInput":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "maxResults":{"shape":"MaxPageResults"}, + "nextToken":{"shape":"String"}, + "resourceArn":{"shape":"Arn"} + } + }, + "ListTagsForResourceOutput":{ + "type":"structure", + "required":["tags"], + "members":{ + "nextToken":{"shape":"String"}, + "tags":{"shape":"TagList"} + } + }, + "MaxPageResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "NextToken":{ + "type":"string", + "pattern":"^[A-Za-z0-9+=/]+$" + }, + "Provisioning":{ + "type":"string", + "enum":["CUSTOMER_MANAGED"] + }, + "RejectEnvironmentAccountConnectionInput":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{"shape":"EnvironmentAccountConnectionId"} + } + }, + "RejectEnvironmentAccountConnectionOutput":{ + "type":"structure", + "required":["environmentAccountConnection"], + "members":{ + "environmentAccountConnection":{"shape":"EnvironmentAccountConnection"} + } + }, + "RepositoryId":{ + "type":"string", + "max":200, + "min":1 + }, + "ResourceName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"^[0-9A-Za-z]+[0-9A-Za-z_\\-]*$" + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "S3Bucket":{ + "type":"string", + "max":63, + "min":3, + "pattern":"^[a-z0-9]+[a-z0-9-\\.]+[a-z0-9]+$" + }, + "S3Key":{ + "type":"string", + "max":1024, + "min":1 + }, + "S3ObjectSource":{ + "type":"structure", + "required":[ + "bucket", + "key" + ], + "members":{ + "bucket":{"shape":"S3Bucket"}, + "key":{"shape":"S3Key"} + } + }, + "Service":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "name", + "spec", + "status", + "templateName" + ], + "members":{ + "arn":{"shape":"ServiceArn"}, + "branchName":{"shape":"GitBranchName"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "pipeline":{"shape":"ServicePipeline"}, + "repositoryConnectionArn":{"shape":"Arn"}, + "repositoryId":{"shape":"RepositoryId"}, + "spec":{"shape":"SpecContents"}, + "status":{"shape":"ServiceStatus"}, + "statusMessage":{"shape":"StatusMessage"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceArn":{"type":"string"}, + "ServiceInstance":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "deploymentStatus", + "environmentName", + "lastDeploymentAttemptedAt", + "lastDeploymentSucceededAt", + "name", + "serviceName", + "templateMajorVersion", + "templateMinorVersion", + "templateName" + ], + "members":{ + "arn":{"shape":"ServiceInstanceArn"}, + "createdAt":{"shape":"Timestamp"}, + "deploymentStatus":{"shape":"DeploymentStatus"}, + "deploymentStatusMessage":{"shape":"StatusMessage"}, + "environmentName":{"shape":"ResourceName"}, + "lastDeploymentAttemptedAt":{"shape":"Timestamp"}, + "lastDeploymentSucceededAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "serviceName":{"shape":"ResourceName"}, + "spec":{"shape":"SpecContents"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceInstanceArn":{"type":"string"}, + "ServiceInstanceSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "deploymentStatus", + "environmentName", + "lastDeploymentAttemptedAt", + "lastDeploymentSucceededAt", + "name", + "serviceName", + "templateMajorVersion", + "templateMinorVersion", + "templateName" + ], + "members":{ + "arn":{"shape":"ServiceInstanceArn"}, + "createdAt":{"shape":"Timestamp"}, + "deploymentStatus":{"shape":"DeploymentStatus"}, + "deploymentStatusMessage":{"shape":"StatusMessage"}, + "environmentName":{"shape":"ResourceName"}, + "lastDeploymentAttemptedAt":{"shape":"Timestamp"}, + "lastDeploymentSucceededAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "serviceName":{"shape":"ResourceName"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceInstanceSummaryList":{ + "type":"list", + "member":{"shape":"ServiceInstanceSummary"} + }, + "ServicePipeline":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "deploymentStatus", + "lastDeploymentAttemptedAt", + "lastDeploymentSucceededAt", + "templateMajorVersion", + "templateMinorVersion", + "templateName" + ], + "members":{ + "arn":{"shape":"Arn"}, + "createdAt":{"shape":"Timestamp"}, + "deploymentStatus":{"shape":"DeploymentStatus"}, + "deploymentStatusMessage":{"shape":"StatusMessage"}, + "lastDeploymentAttemptedAt":{"shape":"Timestamp"}, + "lastDeploymentSucceededAt":{"shape":"Timestamp"}, + "spec":{"shape":"SpecContents"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "ServiceStatus":{ + "type":"string", + "enum":[ + "CREATE_IN_PROGRESS", + "CREATE_FAILED_CLEANUP_IN_PROGRESS", + "CREATE_FAILED_CLEANUP_COMPLETE", + "CREATE_FAILED_CLEANUP_FAILED", + "CREATE_FAILED", + "ACTIVE", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_FAILED_CLEANUP_IN_PROGRESS", + "UPDATE_FAILED_CLEANUP_COMPLETE", + "UPDATE_FAILED_CLEANUP_FAILED", + "UPDATE_FAILED", + "UPDATE_COMPLETE_CLEANUP_FAILED" + ] + }, + "ServiceSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "name", + "status", + "templateName" + ], + "members":{ + "arn":{"shape":"ServiceArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "status":{"shape":"ServiceStatus"}, + "statusMessage":{"shape":"StatusMessage"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceSummaryList":{ + "type":"list", + "member":{"shape":"ServiceSummary"} + }, + "ServiceTemplate":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "name" + ], + "members":{ + "arn":{"shape":"ServiceTemplateArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "encryptionKey":{"shape":"Arn"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "pipelineProvisioning":{"shape":"Provisioning"}, + "recommendedVersion":{"shape":"FullTemplateVersionNumber"} + } + }, + "ServiceTemplateArn":{"type":"string"}, + "ServiceTemplateSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "name" + ], + "members":{ + "arn":{"shape":"ServiceTemplateArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "name":{"shape":"ResourceName"}, + "pipelineProvisioning":{"shape":"Provisioning"}, + "recommendedVersion":{"shape":"FullTemplateVersionNumber"} + } + }, + "ServiceTemplateSummaryList":{ + "type":"list", + "member":{"shape":"ServiceTemplateSummary"} + }, + "ServiceTemplateVersion":{ + "type":"structure", + "required":[ + "arn", + "compatibleEnvironmentTemplates", + "createdAt", + "lastModifiedAt", + "majorVersion", + "minorVersion", + "status", + "templateName" + ], + "members":{ + "arn":{"shape":"ServiceTemplateVersionArn"}, + "compatibleEnvironmentTemplates":{"shape":"CompatibleEnvironmentTemplateList"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "recommendedMinorVersion":{"shape":"TemplateVersionPart"}, + "schema":{"shape":"TemplateSchema"}, + "status":{"shape":"TemplateVersionStatus"}, + "statusMessage":{"shape":"StatusMessage"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceTemplateVersionArn":{"type":"string"}, + "ServiceTemplateVersionSummary":{ + "type":"structure", + "required":[ + "arn", + "createdAt", + "lastModifiedAt", + "majorVersion", + "minorVersion", + "status", + "templateName" + ], + "members":{ + "arn":{"shape":"ServiceTemplateVersionArn"}, + "createdAt":{"shape":"Timestamp"}, + "description":{"shape":"Description"}, + "lastModifiedAt":{"shape":"Timestamp"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "recommendedMinorVersion":{"shape":"TemplateVersionPart"}, + "status":{"shape":"TemplateVersionStatus"}, + "statusMessage":{"shape":"StatusMessage"}, + "templateName":{"shape":"ResourceName"} + } + }, + "ServiceTemplateVersionSummaryList":{ + "type":"list", + "member":{"shape":"ServiceTemplateVersionSummary"} + }, + "SpecContents":{ + "type":"string", + "max":51200, + "min":1, + "sensitive":true + }, + "StatusMessage":{ + "type":"string", + "sensitive":true + }, + "String":{"type":"string"}, + "Tag":{ + "type":"structure", + "required":[ + "key", + "value" + ], + "members":{ + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":50, + "min":0 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":50, + "min":0 + }, + "TagResourceInput":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{"shape":"Arn"}, + "tags":{"shape":"TagList"} + } + }, + "TagResourceOutput":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "TemplateSchema":{ + "type":"string", + "max":51200, + "min":1, + "sensitive":true + }, + "TemplateVersionPart":{ + "type":"string", + "max":20, + "min":1, + "pattern":"^(0|([1-9]{1}\\d*))$" + }, + "TemplateVersionSourceInput":{ + "type":"structure", + "members":{ + "s3":{"shape":"S3ObjectSource"} + }, + "union":true + }, + "TemplateVersionStatus":{ + "type":"string", + "enum":[ + "REGISTRATION_IN_PROGRESS", + "REGISTRATION_FAILED", + "DRAFT", + "PUBLISHED" + ] + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true, + "retryable":{"throttling":true} + }, + "Timestamp":{"type":"timestamp"}, + "UntagResourceInput":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{"shape":"Arn"}, + "tagKeys":{"shape":"TagKeyList"} + } + }, + "UntagResourceOutput":{ + "type":"structure", + "members":{ + } + }, + "UpdateAccountSettingsInput":{ + "type":"structure", + "members":{ + "pipelineServiceRoleArn":{"shape":"Arn"} + } + }, + "UpdateAccountSettingsOutput":{ + "type":"structure", + "required":["accountSettings"], + "members":{ + "accountSettings":{"shape":"AccountSettings"} + } + }, + "UpdateEnvironmentAccountConnectionInput":{ + "type":"structure", + "required":[ + "id", + "roleArn" + ], + "members":{ + "id":{"shape":"EnvironmentAccountConnectionId"}, + "roleArn":{"shape":"Arn"} + } + }, + "UpdateEnvironmentAccountConnectionOutput":{ + "type":"structure", + "required":["environmentAccountConnection"], + "members":{ + "environmentAccountConnection":{"shape":"EnvironmentAccountConnection"} + } + }, + "UpdateEnvironmentInput":{ + "type":"structure", + "required":[ + "deploymentType", + "name" + ], + "members":{ + "deploymentType":{"shape":"DeploymentUpdateType"}, + "description":{"shape":"Description"}, + "environmentAccountConnectionId":{"shape":"EnvironmentAccountConnectionId"}, + "name":{"shape":"ResourceName"}, + "protonServiceRoleArn":{"shape":"Arn"}, + "spec":{"shape":"SpecContents"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"} + } + }, + "UpdateEnvironmentOutput":{ + "type":"structure", + "required":["environment"], + "members":{ + "environment":{"shape":"Environment"} + } + }, + "UpdateEnvironmentTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "name":{"shape":"ResourceName"} + } + }, + "UpdateEnvironmentTemplateOutput":{ + "type":"structure", + "required":["environmentTemplate"], + "members":{ + "environmentTemplate":{"shape":"EnvironmentTemplate"} + } + }, + "UpdateEnvironmentTemplateVersionInput":{ + "type":"structure", + "required":[ + "majorVersion", + "minorVersion", + "templateName" + ], + "members":{ + "description":{"shape":"Description"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "status":{"shape":"TemplateVersionStatus"}, + "templateName":{"shape":"ResourceName"} + } + }, + "UpdateEnvironmentTemplateVersionOutput":{ + "type":"structure", + "required":["environmentTemplateVersion"], + "members":{ + "environmentTemplateVersion":{"shape":"EnvironmentTemplateVersion"} + } + }, + "UpdateServiceInput":{ + "type":"structure", + "required":["name"], + "members":{ + "description":{"shape":"Description"}, + "name":{"shape":"ResourceName"}, + "spec":{"shape":"SpecContents"} + } + }, + "UpdateServiceInstanceInput":{ + "type":"structure", + "required":[ + "deploymentType", + "name", + "serviceName" + ], + "members":{ + "deploymentType":{"shape":"DeploymentUpdateType"}, + "name":{"shape":"ResourceName"}, + "serviceName":{"shape":"ResourceName"}, + "spec":{"shape":"SpecContents"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"} + } + }, + "UpdateServiceInstanceOutput":{ + "type":"structure", + "required":["serviceInstance"], + "members":{ + "serviceInstance":{"shape":"ServiceInstance"} + } + }, + "UpdateServiceOutput":{ + "type":"structure", + "required":["service"], + "members":{ + "service":{"shape":"Service"} + } + }, + "UpdateServicePipelineInput":{ + "type":"structure", + "required":[ + "deploymentType", + "serviceName", + "spec" + ], + "members":{ + "deploymentType":{"shape":"DeploymentUpdateType"}, + "serviceName":{"shape":"ResourceName"}, + "spec":{"shape":"SpecContents"}, + "templateMajorVersion":{"shape":"TemplateVersionPart"}, + "templateMinorVersion":{"shape":"TemplateVersionPart"} + } + }, + "UpdateServicePipelineOutput":{ + "type":"structure", + "required":["pipeline"], + "members":{ + "pipeline":{"shape":"ServicePipeline"} + } + }, + "UpdateServiceTemplateInput":{ + "type":"structure", + "required":["name"], + "members":{ + "description":{"shape":"Description"}, + "displayName":{"shape":"DisplayName"}, + "name":{"shape":"ResourceName"} + } + }, + "UpdateServiceTemplateOutput":{ + "type":"structure", + "required":["serviceTemplate"], + "members":{ + "serviceTemplate":{"shape":"ServiceTemplate"} + } + }, + "UpdateServiceTemplateVersionInput":{ + "type":"structure", + "required":[ + "majorVersion", + "minorVersion", + "templateName" + ], + "members":{ + "compatibleEnvironmentTemplates":{"shape":"CompatibleEnvironmentTemplateInputList"}, + "description":{"shape":"Description"}, + "majorVersion":{"shape":"TemplateVersionPart"}, + "minorVersion":{"shape":"TemplateVersionPart"}, + "status":{"shape":"TemplateVersionStatus"}, + "templateName":{"shape":"ResourceName"} + } + }, + "UpdateServiceTemplateVersionOutput":{ + "type":"structure", + "required":["serviceTemplateVersion"], + "members":{ + "serviceTemplateVersion":{"shape":"ServiceTemplateVersion"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + } + } +} diff --git a/models/apis/proton/2020-07-20/docs-2.json b/models/apis/proton/2020-07-20/docs-2.json new file mode 100644 index 00000000000..6c184eb2316 --- /dev/null +++ b/models/apis/proton/2020-07-20/docs-2.json @@ -0,0 +1,1385 @@ +{ + "version": "2.0", + "service": "

This is the AWS Proton Service API Reference. It provides descriptions, syntax and usage examples for each of the actions and data types for the AWS Proton service.

The documentation for each action shows the Query API request parameters and the XML response.

Alternatively, you can use the AWS CLI to access an API. For more information, see the AWS Command Line Interface User Guide.

The AWS Proton service is a two-pronged automation framework. Administrators create service templates to provide standardized infrastructure and deployment tooling for serverless and container based applications. Developers, in turn, select from the available service templates to automate their application or service deployments.

Because administrators define the infrastructure and tooling that AWS Proton deploys and manages, they need permissions to use all of the listed API operations.

When developers select a specific infrastructure and tooling set, AWS Proton deploys their applications. To monitor their applications that are running on AWS Proton, developers need permissions to the service create, list, update and delete API operations and the service instance list and update API operations.

To learn more about AWS Proton administration, see the AWS Proton Administration Guide.

To learn more about deploying serverless and containerized applications on AWS Proton, see the AWS Proton User Guide.

Ensuring Idempotency

When you make a mutating API request, the request typically returns a result before the asynchronous workflows of the operation are complete. Operations might also time out or encounter other server issues before they're complete, even if the request already returned a result. This might make it difficult to determine whether the request succeeded. Moreover, you might need to retry the request multiple times to ensure that the operation completes successfully. However, if the original request and the subsequent retries are successful, the operation occurs multiple times. This means that you might create more resources than you intended.

Idempotency ensures that an API request action completes no more than one time. With an idempotent request, if the original request action completes successfully, any subsequent retries complete successfully without performing any further actions. However, the result might contain updated information, such as the current creation status.

The following lists of APIs are grouped according to methods that ensure idempotency.

Idempotent create APIs with a client token

The API actions in this list support idempotency with the use of a client token. The corresponding AWS CLI commands also support idempotency using a client token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. To make an idempotent API request using one of these actions, specify a client token in the request. We recommend that you don't reuse the same client token for other API requests. If you don’t provide a client token for these APIs, a default client token is automatically provided by SDKs.

Given a request action that has succeeded:

If you retry the request using the same client token and the same parameters, the retry succeeds without performing any further actions other than returning the original resource detail data in the response.

If you retry the request using the same client token, but one or more of the parameters are different, the retry throws a ValidationException with an IdempotentParameterMismatch error.

Client tokens expire eight hours after a request is made. If you retry the request with the expired token, a new resource is created.

If the original resource is deleted and you retry the request, a new resource is created.

Idempotent create APIs with a client token:

 <p> <b>Idempotent delete APIs</b> </p> <p>Given a request action that has succeeded:</p> <p>When you retry the request with an API from this group and the resource was deleted, its metadata is returned in the response.</p> <p>If you retry and the resource doesn't exist, the response is empty.</p> <p>In both cases, the retry succeeds.</p> <p>Idempotent delete APIs:</p> <ul> <li> <p>DeleteEnvironmentTemplate</p> </li> <li> <p>DeleteEnvironmentTemplateVersion</p> </li> <li> <p>DeleteServiceTemplate</p> </li> <li> <p>DeleteServiceTemplateVersion</p> </li> <li> <p>DeleteEnvironmentAccountConnection</p> </li> </ul> <p> <b>Asynchronous idempotent delete APIs</b> </p> <p>Given a request action that has succeeded:</p> <p>If you retry the request with an API from this group, if the original request delete operation status is <code>DELETE_IN_PROGRESS</code>, the retry returns the resource detail data in the response without performing any further actions.</p> <p>If the original request delete operation is complete, a retry returns an empty response.</p> <p>Asynchronous idempotent delete APIs:</p> <ul> <li> <p>DeleteEnvironment</p> </li> <li> <p>DeleteService</p> </li> </ul> 
", + "operations": { + "AcceptEnvironmentAccountConnection": "

In a management account, an environment account connection request is accepted. When the environment account connection request is accepted, AWS Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.

For more information, see Environment account connections in the AWS Proton Administration guide.

", + "CancelEnvironmentDeployment": "

Attempts to cancel an environment deployment on an UpdateEnvironment action, if the deployment is IN_PROGRESS. For more information, see Update an environment in the AWS Proton Administration guide.

The following list includes potential cancellation scenarios.

", + "CancelServiceInstanceDeployment": "

Attempts to cancel a service instance deployment on an UpdateServiceInstance action, if the deployment is IN_PROGRESS. For more information, see Update a service instance in the AWS Proton Administration guide or the AWS Proton User guide.

The following list includes potential cancellation scenarios.

", + "CancelServicePipelineDeployment": "

Attempts to cancel a service pipeline deployment on an UpdateServicePipeline action, if the deployment is IN_PROGRESS. For more information, see Update a service pipeline in the AWS Proton Administration guide or the AWS Proton User guide.

The following list includes potential cancellation scenarios.

", + "CreateEnvironment": "

Deploy a new environment. An AWS Proton environment is created from an environment template that defines infrastructure and resources that can be shared across services. For more information, see the Environments in the AWS Proton Administration Guide.

", + "CreateEnvironmentAccountConnection": "

Create an environment account connection in an environment account so that environment infrastructure resources can be provisioned in the environment account from the management account.

An environment account connection is a secure bi-directional connection between a management account and an environment account that maintains authorization and permissions. For more information, see Environment account connections in the AWS Proton Administration guide.

", + "CreateEnvironmentTemplate": "

Create an environment template for AWS Proton. For more information, see Environment Templates in the AWS Proton Administration Guide.

You can create an environment template in one of the two following ways:

", + "CreateEnvironmentTemplateVersion": "

Create a new major or minor version of an environment template. A major version of an environment template is a version that isn't backwards compatible. A minor version of an environment template is a version that's backwards compatible within its major version.

", + "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 Administration Guide and Services in the AWS Proton User Guide.

", + "CreateServiceTemplate": "

Create a service template. The administrator creates a service template to define standardized infrastructure and an optional CICD 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 Service Templates in the AWS Proton Administration Guide.

", + "CreateServiceTemplateVersion": "

Create a new major or minor version of a service template. A major version of a service template is a version that isn't backwards compatible. A minor version of a service template is a version that's backwards compatible within its major version.

", + "DeleteEnvironment": "

Delete an environment.

", + "DeleteEnvironmentAccountConnection": "

In an environment account, delete an environment account connection.

After you delete an environment account connection that’s in use by an AWS Proton environment, AWS Proton can’t manage the environment infrastructure resources until a new environment account connection is accepted for the environment account and associated environment. You're responsible for cleaning up provisioned resources that remain without an environment connection.

For more information, see Environment account connections in the AWS Proton Administration guide.

", + "DeleteEnvironmentTemplate": "

If no other major or minor versions of an environment template exist, delete the environment template.

", + "DeleteEnvironmentTemplateVersion": "

If no other minor versions of an environment template exist, delete a major version of the environment template if it's not the Recommended version. Delete the Recommended version of the environment template if no other major versions or minor versions of the environment template exist. A major version of an environment template is a version that's not backwards compatible.

Delete a minor version of an environment template if it isn't the Recommended version. Delete a Recommended minor version of the environment template if no other minor versions of the environment template exist. A minor version of an environment template is a version that's backwards compatible.

", + "DeleteService": "

Delete a service.

", + "DeleteServiceTemplate": "

If no other major or minor versions of the service template exist, delete the service template.

", + "DeleteServiceTemplateVersion": "

If no other minor versions of a service template exist, delete a major version of the service template if it's not the Recommended version. Delete the Recommended version of the service template if no other major versions or minor versions of the service template exist. A major version of a service template is a version that isn't backwards compatible.

Delete a minor version of a service template if it's not the Recommended version. Delete a Recommended minor version of the service template if no other minor versions of the service template exist. A minor version of a service template is a version that's backwards compatible.

", + "GetAccountSettings": "

Get detail data for the AWS Proton pipeline service role.

", + "GetEnvironment": "

Get detail data for an environment.

", + "GetEnvironmentAccountConnection": "

In an environment account, view the detail data for an environment account connection.

For more information, see Environment account connections in the AWS Proton Administration guide.

", + "GetEnvironmentTemplate": "

Get detail data for an environment template.

", + "GetEnvironmentTemplateVersion": "

View detail data for a major or minor version of an environment template.

", + "GetService": "

Get detail data for a service.

", + "GetServiceInstance": "

Get detail data for a service instance. A service instance is an instantiation of service template, which is running in a specific environment.

", + "GetServiceTemplate": "

Get detail data for a service template.

", + "GetServiceTemplateVersion": "

View detail data for a major or minor version of a service template.

", + "ListEnvironmentAccountConnections": "

View a list of environment account connections.

For more information, see Environment account connections in the AWS Proton Administration guide.

", + "ListEnvironmentTemplateVersions": "

List major or minor versions of an environment template with detail data.

", + "ListEnvironmentTemplates": "

List environment templates.

", + "ListEnvironments": "

List environments with detail data summaries.

", + "ListServiceInstances": "

List service instances with summaries of detail data.

", + "ListServiceTemplateVersions": "

List major or minor versions of a service template with detail data.

", + "ListServiceTemplates": "

List service templates with detail data.

", + "ListServices": "

List services with summaries of detail data.

", + "ListTagsForResource": "

List tags for a resource. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "RejectEnvironmentAccountConnection": "

In a management account, reject an environment account connection from another environment account.

After you reject an environment account connection request, you won’t be able to accept or use the rejected environment account connection.

You can’t reject an environment account connection that is connected to an environment.

For more information, see Environment account connections in the AWS Proton Administration guide.

", + "TagResource": "

Tag a resource. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "UntagResource": "

Remove a tag from a resource. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "UpdateAccountSettings": "

Update the AWS Proton pipeline service account settings.

", + "UpdateEnvironment": "

Update an environment.

If the environment is associated with an environment account connection, don't update or include the protonServiceRoleArn parameter to update or connect to an environment account connection.

You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and associated with the current environment.

If the environment isn't associated with an environment account connection, don't update or include the environmentAccountConnectionId parameter to update or connect to an environment account connection.

You can update either the environmentAccountConnectionId or protonServiceRoleArn parameter and value. You can’t update both.

There are four modes for updating an environment as described in the following. The deploymentType field defines the mode.

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

MINOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that's higher than the major version in use and a minor version (optional).

", + "UpdateEnvironmentAccountConnection": "

In an environment account, update an environment account connection to use a new IAM role.

For more information, see Environment account connections in the AWS Proton Administration guide.

", + "UpdateEnvironmentTemplate": "

Update an environment template.

", + "UpdateEnvironmentTemplateVersion": "

Update a major or minor version of an environment template.

", + "UpdateService": "

Edit a service description or use a spec to add and delete service instances.

Existing service instances and the service pipeline can't be edited using this API. They can only be deleted.

Use the description parameter to modify the description.

Edit the spec parameter to add or delete instances.

", + "UpdateServiceInstance": "

Update a service instance.

There are four modes for updating a service instance as described in the following. The deploymentType field defines the mode.

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the service instance is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

MINOR_VERSION

In this mode, the service instance is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the service instance is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

", + "UpdateServicePipeline": "

Update the service pipeline.

There are four modes for updating a service pipeline as described in the following. The deploymentType field defines the mode.

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the service pipeline is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

MINOR_VERSION

In this mode, the service pipeline is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the service pipeline is deployed and updated with the published, recommended (latest) major and minor version of the current template by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

", + "UpdateServiceTemplate": "

Update a service template.

", + "UpdateServiceTemplateVersion": "

Update a major or minor version of a service template.

" + }, + "shapes": { + "AcceptEnvironmentAccountConnectionInput": { + "base": null, + "refs": { + } + }, + "AcceptEnvironmentAccountConnectionOutput": { + "base": null, + "refs": { + } + }, + "AccessDeniedException": { + "base": "

There isn't sufficient access for performing this action.

", + "refs": { + } + }, + "AccountSettings": { + "base": "

The AWS Proton pipeline service role data.

", + "refs": { + "GetAccountSettingsOutput$accountSettings": "

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

", + "UpdateAccountSettingsOutput$accountSettings": "

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

" + } + }, + "Arn": { + "base": null, + "refs": { + "AccountSettings$pipelineServiceRoleArn": "

The Amazon Resource Name (ARN) of the AWS Proton pipeline service role.

", + "CreateEnvironmentAccountConnectionInput$roleArn": "

The Amazon Resource Name (ARN) of the IAM service role that's created in the environment account. AWS Proton uses this role to provision infrastructure resources in the associated environment account.

", + "CreateEnvironmentInput$protonServiceRoleArn": "

The Amazon Resource Name (ARN) of the AWS Proton service role that allows AWS Proton to make calls to other services on your behalf. You must include either the environmentAccountConnectionId or protonServiceRoleArn parameter and value.

", + "CreateEnvironmentTemplateInput$encryptionKey": "

A customer provided encryption key that AWS Proton uses to encrypt data.

", + "CreateServiceInput$repositoryConnectionArn": "

The ARN of the repository connection. For more information, see Set up repository connection in the AWS Proton Administration Guide and Getting started in the AWS Proton User Guide. Don't include this parameter if your service template doesn't include a service pipeline.

", + "CreateServiceTemplateInput$encryptionKey": "

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

", + "Environment$protonServiceRoleArn": "

The ARN of the AWS Proton service role that allows AWS Proton to make calls to other services on your behalf.

", + "EnvironmentAccountConnection$roleArn": "

The IAM service role that's associated with the environment account connection.

", + "EnvironmentAccountConnectionSummary$roleArn": "

The IAM service role that's associated with the environment account connection.

", + "EnvironmentSummary$protonServiceRoleArn": "

The ARN of the AWS Proton service role that allows AWS Proton to make calls to other services on your behalf.

", + "EnvironmentTemplate$encryptionKey": "

The customer provided encryption key for the environment template.

", + "ListTagsForResourceInput$resourceArn": "

The ARN of the resource for the listed tags.

", + "Service$repositoryConnectionArn": "

The ARN of the repository connection. For more information, see Set up a repository connection in the AWS Proton Administration Guide and Getting started in the AWS Proton User Guide.

", + "ServicePipeline$arn": "

The Amazon Resource Name (ARN) of the service pipeline.

", + "ServiceTemplate$encryptionKey": "

The customer provided service template encryption key that's used to encrypt data.

", + "TagResourceInput$resourceArn": "

The Amazon Resource Name (ARN) of the resource that the resource tag is applied to.

", + "UntagResourceInput$resourceArn": "

The Amazon Resource Name (ARN) of the resource that the tag is to be removed from.

", + "UpdateAccountSettingsInput$pipelineServiceRoleArn": "

The Amazon Resource Name (ARN) of the AWS Proton pipeline service role.

", + "UpdateEnvironmentAccountConnectionInput$roleArn": "

The Amazon Resource Name (ARN) of the IAM service role that is associated with the environment account connection to update.

", + "UpdateEnvironmentInput$protonServiceRoleArn": "

The ARN of the AWS Proton service role that allows AWS Proton to make API calls to other services your behalf.

" + } + }, + "AwsAccountId": { + "base": null, + "refs": { + "CreateEnvironmentAccountConnectionInput$managementAccountId": "

The ID of the management account that accepts or rejects the environment account connection. You create an manage the AWS Proton environment in this account. If the management account accepts the environment account connection, AWS Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.

", + "Environment$environmentAccountId": "

The ID of the environment account that the environment infrastructure resources are provisioned in.

", + "EnvironmentAccountConnection$environmentAccountId": "

The environment account that's connected to the environment account connection.

", + "EnvironmentAccountConnection$managementAccountId": "

The ID of the management account that's connected to the environment account connection.

", + "EnvironmentAccountConnectionSummary$environmentAccountId": "

The ID of the environment account that's connected to the environment account connection.

", + "EnvironmentAccountConnectionSummary$managementAccountId": "

The ID of the management account that's connected to the environment account connection.

", + "EnvironmentSummary$environmentAccountId": "

The ID of the environment account that the environment infrastructure resources are provisioned in.

" + } + }, + "CancelEnvironmentDeploymentInput": { + "base": null, + "refs": { + } + }, + "CancelEnvironmentDeploymentOutput": { + "base": null, + "refs": { + } + }, + "CancelServiceInstanceDeploymentInput": { + "base": null, + "refs": { + } + }, + "CancelServiceInstanceDeploymentOutput": { + "base": null, + "refs": { + } + }, + "CancelServicePipelineDeploymentInput": { + "base": null, + "refs": { + } + }, + "CancelServicePipelineDeploymentOutput": { + "base": null, + "refs": { + } + }, + "ClientToken": { + "base": null, + "refs": { + "CreateEnvironmentAccountConnectionInput$clientToken": "

When included, if two identicial requests are made with the same client token, AWS Proton returns the environment account connection that the first request created.

", + "CreateEnvironmentTemplateVersionInput$clientToken": "

When included, if two identicial requests are made with the same client token, AWS Proton returns the environment template version that the first request created.

", + "CreateServiceTemplateVersionInput$clientToken": "

When included, if two identicial requests are made with the same client token, AWS Proton returns the service template version that the first request created.

" + } + }, + "CompatibleEnvironmentTemplate": { + "base": "

Compatible environment template data.

", + "refs": { + "CompatibleEnvironmentTemplateList$member": null + } + }, + "CompatibleEnvironmentTemplateInput": { + "base": "

Compatible environment template data.

", + "refs": { + "CompatibleEnvironmentTemplateInputList$member": null + } + }, + "CompatibleEnvironmentTemplateInputList": { + "base": null, + "refs": { + "CreateServiceTemplateVersionInput$compatibleEnvironmentTemplates": "

An array of compatible environment template objects for the new version of a service template.

", + "UpdateServiceTemplateVersionInput$compatibleEnvironmentTemplates": "

An array of compatible environment names for a service template major or minor version to update.

" + } + }, + "CompatibleEnvironmentTemplateList": { + "base": null, + "refs": { + "ServiceTemplateVersion$compatibleEnvironmentTemplates": "

An array of compatible environment template names for the major version of a service template.

" + } + }, + "ConflictException": { + "base": "

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

", + "refs": { + } + }, + "CreateEnvironmentAccountConnectionInput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentAccountConnectionOutput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentInput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentTemplateInput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentTemplateOutput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "CreateEnvironmentTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "CreateServiceInput": { + "base": null, + "refs": { + } + }, + "CreateServiceOutput": { + "base": null, + "refs": { + } + }, + "CreateServiceTemplateInput": { + "base": null, + "refs": { + } + }, + "CreateServiceTemplateOutput": { + "base": null, + "refs": { + } + }, + "CreateServiceTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "CreateServiceTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentAccountConnectionInput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentAccountConnectionOutput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentInput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentTemplateInput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentTemplateOutput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "DeleteEnvironmentTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "DeleteServiceInput": { + "base": null, + "refs": { + } + }, + "DeleteServiceOutput": { + "base": null, + "refs": { + } + }, + "DeleteServiceTemplateInput": { + "base": null, + "refs": { + } + }, + "DeleteServiceTemplateOutput": { + "base": null, + "refs": { + } + }, + "DeleteServiceTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "DeleteServiceTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "DeploymentStatus": { + "base": null, + "refs": { + "Environment$deploymentStatus": "

The environment deployment status.

", + "EnvironmentSummary$deploymentStatus": "

The environment deployment status.

", + "ServiceInstance$deploymentStatus": "

The service instance deployment status.

", + "ServiceInstanceSummary$deploymentStatus": "

The service instance deployment status.

", + "ServicePipeline$deploymentStatus": "

The deployment status of the service pipeline.

" + } + }, + "DeploymentUpdateType": { + "base": null, + "refs": { + "UpdateEnvironmentInput$deploymentType": "

There are four modes for updating an environment as described in the following. The deploymentType field defines the mode.

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

MINOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

", + "UpdateServiceInstanceInput$deploymentType": "

The deployment type.

There are four modes for updating a service instance as described in the following. The deploymentType field defines the mode.

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the service instance is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

MINOR_VERSION

In this mode, the service instance is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the service instance is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

", + "UpdateServicePipelineInput$deploymentType": "

The deployment type.

There are four modes for updating a service pipeline as described in the following. The deploymentType field defines the mode.

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the service pipeline is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type.

MINOR_VERSION

In this mode, the service pipeline is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the service pipeline is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).

" + } + }, + "Description": { + "base": null, + "refs": { + "CreateEnvironmentInput$description": "

A description of the environment that's being created and deployed.

", + "CreateEnvironmentTemplateInput$description": "

A description of the environment template.

", + "CreateEnvironmentTemplateVersionInput$description": "

A description of the new version of an environment template.

", + "CreateServiceInput$description": "

A description of the AWS Proton service.

", + "CreateServiceTemplateInput$description": "

A description of the service template.

", + "CreateServiceTemplateVersionInput$description": "

A description of the new version of a service template.

", + "Environment$description": "

The description of the environment.

", + "EnvironmentSummary$description": "

The description of the environment.

", + "EnvironmentTemplate$description": "

A description of the environment template.

", + "EnvironmentTemplateSummary$description": "

A description of the environment template.

", + "EnvironmentTemplateVersion$description": "

A description of the minor version of an environment template.

", + "EnvironmentTemplateVersionSummary$description": "

A description of the version of an environment template.

", + "Service$description": "

A description of a service.

", + "ServiceSummary$description": "

A description of the service.

", + "ServiceTemplate$description": "

A description of the service template.

", + "ServiceTemplateSummary$description": "

A description of the service template.

", + "ServiceTemplateVersion$description": "

A description of the version of a service template.

", + "ServiceTemplateVersionSummary$description": "

A description of the version of a service template.

", + "UpdateEnvironmentInput$description": "

A description of the environment update.

", + "UpdateEnvironmentTemplateInput$description": "

A description of the environment template update.

", + "UpdateEnvironmentTemplateVersionInput$description": "

A description of environment template version to update.

", + "UpdateServiceInput$description": "

The edited service description.

", + "UpdateServiceTemplateInput$description": "

A description of the service template update.

", + "UpdateServiceTemplateVersionInput$description": "

A description of a service template version to update.

" + } + }, + "DisplayName": { + "base": null, + "refs": { + "CreateEnvironmentTemplateInput$displayName": "

The environment template name as displayed in the developer interface.

", + "CreateServiceTemplateInput$displayName": "

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

", + "EnvironmentTemplate$displayName": "

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

", + "EnvironmentTemplateSummary$displayName": "

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

", + "ServiceTemplate$displayName": "

The service template name as displayed in the developer interface.

", + "ServiceTemplateSummary$displayName": "

The service template name as displayed in the developer interface.

", + "UpdateEnvironmentTemplateInput$displayName": "

The name of the environment template to update as displayed in the developer interface.

", + "UpdateServiceTemplateInput$displayName": "

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

" + } + }, + "Environment": { + "base": "

The environment detail data. An AWS Proton environment is a set resources shared across an AWS Proton service.

", + "refs": { + "CancelEnvironmentDeploymentOutput$environment": "

The environment summary data that's returned by AWS Proton.

", + "CreateEnvironmentOutput$environment": "

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

", + "DeleteEnvironmentOutput$environment": "

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

", + "GetEnvironmentOutput$environment": "

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

", + "UpdateEnvironmentOutput$environment": "

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

" + } + }, + "EnvironmentAccountConnection": { + "base": "

The environment account connection detail data.

", + "refs": { + "AcceptEnvironmentAccountConnectionOutput$environmentAccountConnection": "

The environment account connection data that's returned by AWS Proton.

", + "CreateEnvironmentAccountConnectionOutput$environmentAccountConnection": "

The environment account connection detail data that's returned by AWS Proton.

", + "DeleteEnvironmentAccountConnectionOutput$environmentAccountConnection": "

The environment account connection detail data that's returned by AWS Proton.

", + "GetEnvironmentAccountConnectionOutput$environmentAccountConnection": "

The environment account connection detail data that's returned by AWS Proton.

", + "RejectEnvironmentAccountConnectionOutput$environmentAccountConnection": "

The environment connection account detail data that's returned by AWS Proton.

", + "UpdateEnvironmentAccountConnectionOutput$environmentAccountConnection": "

The environment account connection detail data that's returned by AWS Proton.

" + } + }, + "EnvironmentAccountConnectionArn": { + "base": null, + "refs": { + "EnvironmentAccountConnection$arn": "

The Amazon Resource Name (ARN) of the environment account connection.

", + "EnvironmentAccountConnectionSummary$arn": "

The Amazon Resource Name (ARN) of the environment account connection.

" + } + }, + "EnvironmentAccountConnectionId": { + "base": null, + "refs": { + "AcceptEnvironmentAccountConnectionInput$id": "

The ID of the environment account connection.

", + "CreateEnvironmentInput$environmentAccountConnectionId": "

The ID of the environment account connection that you provide if you're provisioning your environment infrastructure resources to an environment account. You must include either the environmentAccountConnectionId or protonServiceRoleArn parameter and value. For more information, see Environment account connections in the AWS Proton Administration guide.

", + "DeleteEnvironmentAccountConnectionInput$id": "

The ID of the environment account connection to delete.

", + "Environment$environmentAccountConnectionId": "

The ID of the environment account connection that's used to provision infrastructure resources in an environment account.

", + "EnvironmentAccountConnection$id": "

The ID of the environment account connection.

", + "EnvironmentAccountConnectionSummary$id": "

The ID of the environment account connection.

", + "EnvironmentSummary$environmentAccountConnectionId": "

The ID of the environment account connection that the environment is associated with.

", + "GetEnvironmentAccountConnectionInput$id": "

The ID of the environment account connection.

", + "RejectEnvironmentAccountConnectionInput$id": "

The ID of the environment account connection to reject.

", + "UpdateEnvironmentAccountConnectionInput$id": "

The ID of the environment account connection to update.

", + "UpdateEnvironmentInput$environmentAccountConnectionId": "

The ID of the environment account connection.

You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and associated with the current environment.

" + } + }, + "EnvironmentAccountConnectionRequesterAccountType": { + "base": null, + "refs": { + "ListEnvironmentAccountConnectionsInput$requestedBy": "

The type of account making the ListEnvironmentAccountConnections request.

" + } + }, + "EnvironmentAccountConnectionStatus": { + "base": null, + "refs": { + "EnvironmentAccountConnection$status": "

The status of the environment account connection.

", + "EnvironmentAccountConnectionStatusList$member": null, + "EnvironmentAccountConnectionSummary$status": "

The status of the environment account connection.

" + } + }, + "EnvironmentAccountConnectionStatusList": { + "base": null, + "refs": { + "ListEnvironmentAccountConnectionsInput$statuses": "

The status details for each listed environment account connection.

" + } + }, + "EnvironmentAccountConnectionSummary": { + "base": "

A summary of the environment account connection detail data.

", + "refs": { + "EnvironmentAccountConnectionSummaryList$member": null + } + }, + "EnvironmentAccountConnectionSummaryList": { + "base": null, + "refs": { + "ListEnvironmentAccountConnectionsOutput$environmentAccountConnections": "

An array of environment account connections with details that's returned by AWS Proton.

" + } + }, + "EnvironmentArn": { + "base": null, + "refs": { + "Environment$arn": "

The Amazon Resource Name (ARN) of the environment.

", + "EnvironmentSummary$arn": "

The Amazon Resource Name (ARN) of the environment.

" + } + }, + "EnvironmentSummary": { + "base": "

A summary of the environment detail data.

", + "refs": { + "EnvironmentSummaryList$member": null + } + }, + "EnvironmentSummaryList": { + "base": null, + "refs": { + "ListEnvironmentsOutput$environments": "

An array of environment detail data summaries.

" + } + }, + "EnvironmentTemplate": { + "base": "

The environment template data.

", + "refs": { + "CreateEnvironmentTemplateOutput$environmentTemplate": "

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

", + "DeleteEnvironmentTemplateOutput$environmentTemplate": "

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

", + "GetEnvironmentTemplateOutput$environmentTemplate": "

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

", + "UpdateEnvironmentTemplateOutput$environmentTemplate": "

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

" + } + }, + "EnvironmentTemplateArn": { + "base": null, + "refs": { + "EnvironmentTemplate$arn": "

The Amazon Resource Name (ARN) of the environment template.

", + "EnvironmentTemplateSummary$arn": "

The Amazon Resource Name (ARN) of the environment template.

" + } + }, + "EnvironmentTemplateFilter": { + "base": "

A search filter for environment templates.

", + "refs": { + "EnvironmentTemplateFilterList$member": null + } + }, + "EnvironmentTemplateFilterList": { + "base": null, + "refs": { + "ListEnvironmentsInput$environmentTemplates": "

An array of the versions of the environment template.

" + } + }, + "EnvironmentTemplateSummary": { + "base": "

The environment template data.

", + "refs": { + "EnvironmentTemplateSummaryList$member": null + } + }, + "EnvironmentTemplateSummaryList": { + "base": null, + "refs": { + "ListEnvironmentTemplatesOutput$templates": "

An array of environment templates with detail data.

" + } + }, + "EnvironmentTemplateVersion": { + "base": "

The environment template version data.

", + "refs": { + "CreateEnvironmentTemplateVersionOutput$environmentTemplateVersion": "

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

", + "DeleteEnvironmentTemplateVersionOutput$environmentTemplateVersion": "

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

", + "GetEnvironmentTemplateVersionOutput$environmentTemplateVersion": "

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

", + "UpdateEnvironmentTemplateVersionOutput$environmentTemplateVersion": "

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

" + } + }, + "EnvironmentTemplateVersionArn": { + "base": null, + "refs": { + "EnvironmentTemplateVersion$arn": "

The Amazon Resource Name (ARN) of the version of an environment template.

", + "EnvironmentTemplateVersionSummary$arn": "

The Amazon Resource Name (ARN) of the version of an environment template.

" + } + }, + "EnvironmentTemplateVersionSummary": { + "base": "

A summary of the version of an environment template detail data.

", + "refs": { + "EnvironmentTemplateVersionSummaryList$member": null + } + }, + "EnvironmentTemplateVersionSummaryList": { + "base": null, + "refs": { + "ListEnvironmentTemplateVersionsOutput$templateVersions": "

An array of major or minor versions of an environment template detail data.

" + } + }, + "ErrorMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "FullTemplateVersionNumber": { + "base": null, + "refs": { + "EnvironmentTemplate$recommendedVersion": "

The ID of the recommended version of the environment template.

", + "EnvironmentTemplateSummary$recommendedVersion": "

The ID of the recommended version of the environment template.

", + "ServiceTemplate$recommendedVersion": "

The ID of the recommended version of the service template.

", + "ServiceTemplateSummary$recommendedVersion": "

The ID of the recommended version of the service template.

" + } + }, + "GetAccountSettingsInput": { + "base": null, + "refs": { + } + }, + "GetAccountSettingsOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentAccountConnectionInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentAccountConnectionOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentTemplateInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentTemplateOutput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "GetEnvironmentTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "GetServiceInput": { + "base": null, + "refs": { + } + }, + "GetServiceInstanceInput": { + "base": null, + "refs": { + } + }, + "GetServiceInstanceOutput": { + "base": null, + "refs": { + } + }, + "GetServiceOutput": { + "base": null, + "refs": { + } + }, + "GetServiceTemplateInput": { + "base": null, + "refs": { + } + }, + "GetServiceTemplateOutput": { + "base": null, + "refs": { + } + }, + "GetServiceTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "GetServiceTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "GitBranchName": { + "base": null, + "refs": { + "CreateServiceInput$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.

", + "Service$branchName": "

The name of the code repository branch that holds the code that's deployed in AWS Proton.

" + } + }, + "InternalServerException": { + "base": "

The request failed to register with the service.

", + "refs": { + } + }, + "ListEnvironmentAccountConnectionsInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentAccountConnectionsOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentTemplateVersionsInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentTemplateVersionsOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentTemplatesInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentTemplatesOutput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentsInput": { + "base": null, + "refs": { + } + }, + "ListEnvironmentsOutput": { + "base": null, + "refs": { + } + }, + "ListServiceInstancesInput": { + "base": null, + "refs": { + } + }, + "ListServiceInstancesOutput": { + "base": null, + "refs": { + } + }, + "ListServiceTemplateVersionsInput": { + "base": null, + "refs": { + } + }, + "ListServiceTemplateVersionsOutput": { + "base": null, + "refs": { + } + }, + "ListServiceTemplatesInput": { + "base": null, + "refs": { + } + }, + "ListServiceTemplatesOutput": { + "base": null, + "refs": { + } + }, + "ListServicesInput": { + "base": null, + "refs": { + } + }, + "ListServicesOutput": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceInput": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceOutput": { + "base": null, + "refs": { + } + }, + "MaxPageResults": { + "base": null, + "refs": { + "ListEnvironmentAccountConnectionsInput$maxResults": "

The maximum number of environment account connections to list.

", + "ListEnvironmentTemplateVersionsInput$maxResults": "

The maximum number of major or minor versions of an environment template to list.

", + "ListEnvironmentTemplatesInput$maxResults": "

The maximum number of environment templates to list.

", + "ListEnvironmentsInput$maxResults": "

The maximum number of environments to list.

", + "ListServiceInstancesInput$maxResults": "

The maximum number of service instances to list.

", + "ListServiceTemplateVersionsInput$maxResults": "

The maximum number of major or minor versions of a service template to list.

", + "ListServiceTemplatesInput$maxResults": "

The maximum number of service templates to list.

", + "ListServicesInput$maxResults": "

The maximum number of services to list.

", + "ListTagsForResourceInput$maxResults": "

The maximum number of tags to list.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "ListEnvironmentAccountConnectionsInput$nextToken": "

A token to indicate the location of the next environment account connection in the array of environment account connections, after the list of environment account connections that was previously requested.

", + "ListEnvironmentAccountConnectionsOutput$nextToken": "

A token to indicate the location of the next environment account connection in the array of environment account connections, after the current requested list of environment account connections.

", + "ListEnvironmentTemplateVersionsInput$nextToken": "

A token to indicate the location of the next major or minor version in the array of major or minor versions of an environment template, after the list of major or minor versions that was previously requested.

", + "ListEnvironmentTemplateVersionsOutput$nextToken": "

A token to indicate the location of the next major or minor version in the array of major or minor versions of an environment template, after the list of major or minor versions that was previously requested.

", + "ListEnvironmentTemplatesInput$nextToken": "

A token to indicate the location of the next environment template in the array of environment templates, after the list of environment templates that was previously requested.

", + "ListEnvironmentTemplatesOutput$nextToken": "

A token to indicate the location of the next environment template in the array of environment templates, after the current requested list of environment templates.

", + "ListEnvironmentsInput$nextToken": "

A token to indicate the location of the next environment in the array of environments, after the list of environments that was previously requested.

", + "ListEnvironmentsOutput$nextToken": "

A token to indicate the location of the next environment in the array of environments, after the current requested list of environments.

", + "ListServiceInstancesInput$nextToken": "

A token to indicate the location of the next service in the array of service instances, after the list of service instances that was previously requested.

", + "ListServiceInstancesOutput$nextToken": "

A token to indicate the location of the next service instance in the array of service instances, after the current requested list of service instances.

", + "ListServiceTemplateVersionsInput$nextToken": "

A token to indicate the location of the next major or minor version in the array of major or minor versions of a service template, after the list of major or minor versions that was previously requested.

", + "ListServiceTemplateVersionsOutput$nextToken": "

A token to indicate the location of the next major or minor version in the array of major or minor versions of a service template, after the list of major or minor versions that was previously requested.

", + "ListServiceTemplatesInput$nextToken": "

A token to indicate the location of the next service template in the array of service templates, after the list of service templates previously requested.

", + "ListServiceTemplatesOutput$nextToken": "

A token to indicate the location of the next service template in the array of service templates, after the current requested list of service templates.

", + "ListServicesInput$nextToken": "

A token to indicate the location of the next service in the array of services, after the list of services that was previously requested.

", + "ListServicesOutput$nextToken": "

A token to indicate the location of the next service in the array of services, after the current requested list of services.

" + } + }, + "Provisioning": { + "base": null, + "refs": { + "CreateEnvironmentTemplateInput$provisioning": "

When included, indicates that the environment template is for customer provisioned and managed infrastructure.

", + "CreateServiceTemplateInput$pipelineProvisioning": "

AWS Proton includes a service pipeline for your service by default. When included, this parameter indicates that an AWS Proton service pipeline won't be included for your service. Once specified, this parameter can't be changed. For more information, see Service template bundles in the AWS Proton Administration Guide.

", + "Environment$provisioning": "

When included, indicates that the environment template is for customer provisioned and managed infrastructure.

", + "EnvironmentSummary$provisioning": "

When included, indicates that the environment template is for customer provisioned and managed infrastructure.

", + "EnvironmentTemplate$provisioning": "

When included, indicates that the environment template is for customer provisioned and managed infrastructure.

", + "EnvironmentTemplateSummary$provisioning": "

When included, indicates that the environment template is for customer provisioned and managed infrastructure.

", + "ServiceTemplate$pipelineProvisioning": "

If pipelineProvisioning is true, a service pipeline is included in the service template. Otherwise, a service pipeline isn't included in the service template.

", + "ServiceTemplateSummary$pipelineProvisioning": "

If pipelineProvisioning is true, a service pipeline is included in the service template, otherwise a service pipeline isn't included in the service template.

" + } + }, + "RejectEnvironmentAccountConnectionInput": { + "base": null, + "refs": { + } + }, + "RejectEnvironmentAccountConnectionOutput": { + "base": null, + "refs": { + } + }, + "RepositoryId": { + "base": null, + "refs": { + "CreateServiceInput$repositoryId": "

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

", + "Service$repositoryId": "

The ID of the code repository.

" + } + }, + "ResourceName": { + "base": null, + "refs": { + "CancelEnvironmentDeploymentInput$environmentName": "

The name of the environment with the deployment to cancel.

", + "CancelServiceInstanceDeploymentInput$serviceInstanceName": "

The name of the service instance with the deployment to cancel.

", + "CancelServiceInstanceDeploymentInput$serviceName": "

The name of the service with the service instance deployment to cancel.

", + "CancelServicePipelineDeploymentInput$serviceName": "

The name of the service with the service pipeline deployment to cancel.

", + "CompatibleEnvironmentTemplate$templateName": "

The compatible environment template name.

", + "CompatibleEnvironmentTemplateInput$templateName": "

The compatible environment template name.

", + "CreateEnvironmentAccountConnectionInput$environmentName": "

The name of the AWS Proton environment that's created in the associated management account.

", + "CreateEnvironmentInput$name": "

The name of the environment.

", + "CreateEnvironmentInput$templateName": "

The name of the environment template. For more information, see Environment Templates in the AWS Proton Administration Guide.

", + "CreateEnvironmentTemplateInput$name": "

The name of the environment template.

", + "CreateEnvironmentTemplateVersionInput$templateName": "

The name of the environment template.

", + "CreateServiceInput$name": "

The service name.

", + "CreateServiceInput$templateName": "

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

", + "CreateServiceTemplateInput$name": "

The name of the service template.

", + "CreateServiceTemplateVersionInput$templateName": "

The name of the service template.

", + "DeleteEnvironmentInput$name": "

The name of the environment to delete.

", + "DeleteEnvironmentTemplateInput$name": "

The name of the environment template to delete.

", + "DeleteEnvironmentTemplateVersionInput$templateName": "

The name of the environment template.

", + "DeleteServiceInput$name": "

The name of the service to delete.

", + "DeleteServiceTemplateInput$name": "

The name of the service template to delete.

", + "DeleteServiceTemplateVersionInput$templateName": "

The name of the service template.

", + "Environment$name": "

The name of the environment.

", + "Environment$templateName": "

The ARN of the environment template.

", + "EnvironmentAccountConnection$environmentName": "

The name of the environment that's associated with the environment account connection.

", + "EnvironmentAccountConnectionSummary$environmentName": "

The name of the environment that's associated with the environment account connection.

", + "EnvironmentSummary$name": "

The name of the environment.

", + "EnvironmentSummary$templateName": "

The name of the environment template.

", + "EnvironmentTemplate$name": "

The name of the environment template.

", + "EnvironmentTemplateFilter$templateName": "

Include templateName to filter search for a template name.

", + "EnvironmentTemplateSummary$name": "

The name of the environment template.

", + "EnvironmentTemplateVersion$templateName": "

The name of the version of an environment template.

", + "EnvironmentTemplateVersionSummary$templateName": "

The name of the version of an environment template.

", + "GetEnvironmentInput$name": "

The name of the environment that you want to get the detail data for.

", + "GetEnvironmentTemplateInput$name": "

The name of the environment template that you want to get the detail data for.

", + "GetEnvironmentTemplateVersionInput$templateName": "

The name of the environment template.

", + "GetServiceInput$name": "

The name of the service that you want to get the detail data for.

", + "GetServiceInstanceInput$name": "

The name of a service instance that you want to get the detail data for.

", + "GetServiceInstanceInput$serviceName": "

The name of the service that the service instance belongs to.

", + "GetServiceTemplateInput$name": "

The name of the service template that you want to get detail data for.

", + "GetServiceTemplateVersionInput$templateName": "

The name of the service template.

", + "ListEnvironmentAccountConnectionsInput$environmentName": "

The environment name that's associated with each listed environment account connection.

", + "ListEnvironmentTemplateVersionsInput$templateName": "

The name of the environment template.

", + "ListServiceInstancesInput$serviceName": "

The name of the service that the service instance belongs to.

", + "ListServiceTemplateVersionsInput$templateName": "

The name of the service template.

", + "Service$name": "

The name of the service.

", + "Service$templateName": "

The name of the service template.

", + "ServiceInstance$environmentName": "

The name of the environment that the service instance was deployed into.

", + "ServiceInstance$name": "

The name of the service instance.

", + "ServiceInstance$serviceName": "

The name of the service that the service instance belongs to.

", + "ServiceInstance$templateName": "

The name of the service template that was used to create the service instance.

", + "ServiceInstanceSummary$environmentName": "

The name of the environment that the service instance was deployed into.

", + "ServiceInstanceSummary$name": "

The name of the service instance.

", + "ServiceInstanceSummary$serviceName": "

The name of the service that the service instance belongs to.

", + "ServiceInstanceSummary$templateName": "

The name of the service template.

", + "ServicePipeline$templateName": "

The name of the service template that was used to create the service pipeline.

", + "ServiceSummary$name": "

The name of the service.

", + "ServiceSummary$templateName": "

The name of the service template.

", + "ServiceTemplate$name": "

The name of the service template.

", + "ServiceTemplateSummary$name": "

The name of the service template.

", + "ServiceTemplateVersion$templateName": "

The name of the version of a service template.

", + "ServiceTemplateVersionSummary$templateName": "

The name of the service template.

", + "UpdateEnvironmentInput$name": "

The name of the environment to update.

", + "UpdateEnvironmentTemplateInput$name": "

The name of the environment template to update.

", + "UpdateEnvironmentTemplateVersionInput$templateName": "

The name of the environment template.

", + "UpdateServiceInput$name": "

The name of the service to edit.

", + "UpdateServiceInstanceInput$name": "

The name of the service instance to update.

", + "UpdateServiceInstanceInput$serviceName": "

The name of the service that the service instance belongs to.

", + "UpdateServicePipelineInput$serviceName": "

The name of the service to that the pipeline is associated with.

", + "UpdateServiceTemplateInput$name": "

The name of the service template to update.

", + "UpdateServiceTemplateVersionInput$templateName": "

The name of the service template.

" + } + }, + "ResourceNotFoundException": { + "base": "

The requested resource wasn't found.

", + "refs": { + } + }, + "S3Bucket": { + "base": null, + "refs": { + "S3ObjectSource$bucket": "

The name of the S3 bucket that contains a template bundle.

" + } + }, + "S3Key": { + "base": null, + "refs": { + "S3ObjectSource$key": "

The path to the S3 bucket that contains a template bundle.

" + } + }, + "S3ObjectSource": { + "base": "

Template bundle S3 bucket data.

", + "refs": { + "TemplateVersionSourceInput$s3": "

An S3 source object that includes the template bundle S3 path and name for a template minor version.

" + } + }, + "Service": { + "base": "

The service detail data.

", + "refs": { + "CreateServiceOutput$service": "

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

", + "DeleteServiceOutput$service": "

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

", + "GetServiceOutput$service": "

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

", + "UpdateServiceOutput$service": "

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

" + } + }, + "ServiceArn": { + "base": null, + "refs": { + "Service$arn": "

The Amazon Resource Name (ARN) of the service.

", + "ServiceSummary$arn": "

The Amazon Resource Name (ARN) of the service.

" + } + }, + "ServiceInstance": { + "base": "

The service instance detail data.

", + "refs": { + "CancelServiceInstanceDeploymentOutput$serviceInstance": "

The service instance summary data that's returned by AWS Proton.

", + "GetServiceInstanceOutput$serviceInstance": "

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

", + "UpdateServiceInstanceOutput$serviceInstance": "

The service instance summary data returned by AWS Proton.

" + } + }, + "ServiceInstanceArn": { + "base": null, + "refs": { + "ServiceInstance$arn": "

The Amazon Resource Name (ARN) of the service instance.

", + "ServiceInstanceSummary$arn": "

The Amazon Resource Name (ARN) of the service instance.

" + } + }, + "ServiceInstanceSummary": { + "base": "

A summary of the service instance detail data.

", + "refs": { + "ServiceInstanceSummaryList$member": null + } + }, + "ServiceInstanceSummaryList": { + "base": null, + "refs": { + "ListServiceInstancesOutput$serviceInstances": "

An array of service instances with summaries of detail data.

" + } + }, + "ServicePipeline": { + "base": "

The service pipeline detail data.

", + "refs": { + "CancelServicePipelineDeploymentOutput$pipeline": "

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

", + "Service$pipeline": "

The service pipeline detail data.

", + "UpdateServicePipelineOutput$pipeline": "

The pipeline details returned by AWS Proton.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

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

", + "refs": { + } + }, + "ServiceStatus": { + "base": null, + "refs": { + "Service$status": "

The status of the service.

", + "ServiceSummary$status": "

The status of the service.

" + } + }, + "ServiceSummary": { + "base": "

A summary of the service detail data.

", + "refs": { + "ServiceSummaryList$member": null + } + }, + "ServiceSummaryList": { + "base": null, + "refs": { + "ListServicesOutput$services": "

An array of services with summaries of detail data.

" + } + }, + "ServiceTemplate": { + "base": "

The service template detail data.

", + "refs": { + "CreateServiceTemplateOutput$serviceTemplate": "

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

", + "DeleteServiceTemplateOutput$serviceTemplate": "

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

", + "GetServiceTemplateOutput$serviceTemplate": "

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

", + "UpdateServiceTemplateOutput$serviceTemplate": "

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

" + } + }, + "ServiceTemplateArn": { + "base": null, + "refs": { + "ServiceTemplate$arn": "

The Amazon Resource Name (ARN) of the service template.

", + "ServiceTemplateSummary$arn": "

The Amazon Resource Name (ARN) of the service template.

" + } + }, + "ServiceTemplateSummary": { + "base": "

The service template summary data.

", + "refs": { + "ServiceTemplateSummaryList$member": null + } + }, + "ServiceTemplateSummaryList": { + "base": null, + "refs": { + "ListServiceTemplatesOutput$templates": "

An array of service templates with detail data.

" + } + }, + "ServiceTemplateVersion": { + "base": "

The version of a service template detail data.

", + "refs": { + "CreateServiceTemplateVersionOutput$serviceTemplateVersion": "

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

", + "DeleteServiceTemplateVersionOutput$serviceTemplateVersion": "

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

", + "GetServiceTemplateVersionOutput$serviceTemplateVersion": "

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

", + "UpdateServiceTemplateVersionOutput$serviceTemplateVersion": "

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

" + } + }, + "ServiceTemplateVersionArn": { + "base": null, + "refs": { + "ServiceTemplateVersion$arn": "

The Amazon Resource Name (ARN) of the version of a service template.

", + "ServiceTemplateVersionSummary$arn": "

The Amazon Resource Name (ARN) of the version of a service template.

" + } + }, + "ServiceTemplateVersionSummary": { + "base": "

A summary of the service template version detail data.

", + "refs": { + "ServiceTemplateVersionSummaryList$member": null + } + }, + "ServiceTemplateVersionSummaryList": { + "base": null, + "refs": { + "ListServiceTemplateVersionsOutput$templateVersions": "

An array of major or minor versions of a service template with detail data.

" + } + }, + "SpecContents": { + "base": null, + "refs": { + "CreateEnvironmentInput$spec": "

A link to a YAML formatted spec file that provides inputs as defined in the environment template bundle schema file. For more information, see Environments in the AWS Proton Administration Guide.

", + "CreateServiceInput$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 Administration Guide and Create a service in the AWS Proton User Guide.

", + "Environment$spec": "

The environment spec.

", + "Service$spec": "

The formatted specification that defines the service.

", + "ServiceInstance$spec": "

The service spec that was used to create the service instance.

", + "ServicePipeline$spec": "

The service spec that was used to create the service pipeline.

", + "UpdateEnvironmentInput$spec": "

The formatted specification that defines the update.

", + "UpdateServiceInput$spec": "

Lists the service instances to add and the existing service instances to remain. Omit the existing service instances to delete from the list. Don't include edits to the existing service instances or pipeline. For more information, see Edit a service in the AWS Proton Administration Guide or the AWS Proton User Guide.

", + "UpdateServiceInstanceInput$spec": "

The formatted specification that defines the service instance update.

", + "UpdateServicePipelineInput$spec": "

The spec for the service pipeline to update.

" + } + }, + "StatusMessage": { + "base": null, + "refs": { + "Environment$deploymentStatusMessage": "

An environment deployment status message.

", + "EnvironmentSummary$deploymentStatusMessage": "

An environment deployment status message.

", + "EnvironmentTemplateVersion$statusMessage": "

The status message of the version of an environment template.

", + "EnvironmentTemplateVersionSummary$statusMessage": "

The status message of the version of an environment template.

", + "Service$statusMessage": "

A service status message.

", + "ServiceInstance$deploymentStatusMessage": "

A service instance deployment status message.

", + "ServiceInstanceSummary$deploymentStatusMessage": "

A service instance deployment status message.

", + "ServicePipeline$deploymentStatusMessage": "

A service pipeline deployment status message.

", + "ServiceSummary$statusMessage": "

A service status message.

", + "ServiceTemplateVersion$statusMessage": "

A service template version status message.

", + "ServiceTemplateVersionSummary$statusMessage": "

A service template minor version status message.

" + } + }, + "String": { + "base": null, + "refs": { + "ListTagsForResourceInput$nextToken": "

A token to indicate the location of the next resource tag in the array of resource tags, after the list of resource tags that was previously requested.

", + "ListTagsForResourceOutput$nextToken": "

A token to indicate the location of the next resource tag in the array of resource tags, after the current requested list of resource tags.

" + } + }, + "Tag": { + "base": "

A description of a resource tag.

", + "refs": { + "TagList$member": null + } + }, + "TagKey": { + "base": null, + "refs": { + "Tag$key": "

The key of the resource tag.

", + "TagKeyList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceInput$tagKeys": "

An array of tag keys indicating the resource tags to be removed from the resource.

" + } + }, + "TagList": { + "base": null, + "refs": { + "CreateEnvironmentInput$tags": "

Create tags for your environment. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "CreateEnvironmentTemplateInput$tags": "

Create tags for your environment template. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "CreateEnvironmentTemplateVersionInput$tags": "

Create tags for a new version of an environment template.

", + "CreateServiceInput$tags": "

Create tags for your service. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "CreateServiceTemplateInput$tags": "

Create tags for your service template. For more information, see AWS Proton resources and tagging in the AWS Proton Administration Guide or AWS Proton User Guide.

", + "CreateServiceTemplateVersionInput$tags": "

Create tags for a new version of a service template.

", + "ListTagsForResourceOutput$tags": "

An array of resource tags with detail data.

", + "TagResourceInput$tags": "

An array of resource tags to apply to a resource.

" + } + }, + "TagResourceInput": { + "base": null, + "refs": { + } + }, + "TagResourceOutput": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tag$value": "

The value of the resource tag.

" + } + }, + "TemplateSchema": { + "base": null, + "refs": { + "EnvironmentTemplateVersion$schema": "

The schema of the version of an environment template.

", + "ServiceTemplateVersion$schema": "

The schema of the version of a service template.

" + } + }, + "TemplateVersionPart": { + "base": null, + "refs": { + "CompatibleEnvironmentTemplate$majorVersion": "

The major version of the compatible environment template.

", + "CompatibleEnvironmentTemplateInput$majorVersion": "

The major version of the compatible environment template.

", + "CreateEnvironmentInput$templateMajorVersion": "

The ID of the major version of the environment template.

", + "CreateEnvironmentInput$templateMinorVersion": "

The ID of the minor version of the environment template.

", + "CreateEnvironmentTemplateVersionInput$majorVersion": "

To create a new minor version of the environment template, include a majorVersion.

To create a new major and minor version of the environment template, exclude majorVersion.

", + "CreateServiceInput$templateMajorVersion": "

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

", + "CreateServiceInput$templateMinorVersion": "

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

", + "CreateServiceTemplateVersionInput$majorVersion": "

To create a new minor version of the service template, include a majorVersion.

To create a new major and minor version of the service template, exclude majorVersion.

", + "DeleteEnvironmentTemplateVersionInput$majorVersion": "

The environment template major version to delete.

", + "DeleteEnvironmentTemplateVersionInput$minorVersion": "

The environment template minor version to delete.

", + "DeleteServiceTemplateVersionInput$majorVersion": "

The service template major version to delete.

", + "DeleteServiceTemplateVersionInput$minorVersion": "

The service template minor version to delete.

", + "Environment$templateMajorVersion": "

The ID of the major version of the environment template.

", + "Environment$templateMinorVersion": "

The ID of the minor version of the environment template.

", + "EnvironmentSummary$templateMajorVersion": "

The ID of the major version of the environment template.

", + "EnvironmentSummary$templateMinorVersion": "

The ID of the minor version of the environment template.

", + "EnvironmentTemplateFilter$majorVersion": "

Include majorVersion to filter search for a major version.

", + "EnvironmentTemplateVersion$majorVersion": "

The ID of the latest major version that's associated with the version of an environment template.

", + "EnvironmentTemplateVersion$minorVersion": "

The ID of the minor version of an environment template.

", + "EnvironmentTemplateVersion$recommendedMinorVersion": "

The ID of the recommended minor version of the environment template.

", + "EnvironmentTemplateVersionSummary$majorVersion": "

The ID of the latest major version that's associated with the version of an environment template.

", + "EnvironmentTemplateVersionSummary$minorVersion": "

The ID of the version of an environment template.

", + "EnvironmentTemplateVersionSummary$recommendedMinorVersion": "

The ID of the recommended minor version of the environment template.

", + "GetEnvironmentTemplateVersionInput$majorVersion": "

To view environment template major version detail data, include majorVersion.

", + "GetEnvironmentTemplateVersionInput$minorVersion": "

To view environment template minor version detail data, include minorVersion.

", + "GetServiceTemplateVersionInput$majorVersion": "

To view service template major version detail data, include majorVersion.

", + "GetServiceTemplateVersionInput$minorVersion": "

To view service template minor version detail data, include minorVersion.

", + "ListEnvironmentTemplateVersionsInput$majorVersion": "

To view a list of minor of versions under a major version of an environment template, include majorVersion.

To view a list of major versions of an environment template, exclude majorVersion.

", + "ListServiceTemplateVersionsInput$majorVersion": "

To view a list of minor of versions under a major version of a service template, include majorVersion.

To view a list of major versions of a service template, exclude majorVersion.

", + "ServiceInstance$templateMajorVersion": "

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

", + "ServiceInstance$templateMinorVersion": "

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

", + "ServiceInstanceSummary$templateMajorVersion": "

The ID of the major version of a service template.

", + "ServiceInstanceSummary$templateMinorVersion": "

The ID of the minor version of a service template.

", + "ServicePipeline$templateMajorVersion": "

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

", + "ServicePipeline$templateMinorVersion": "

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

", + "ServiceTemplateVersion$majorVersion": "

The ID of the latest major version that's associated with the version of a service template.

", + "ServiceTemplateVersion$minorVersion": "

The ID of the minor version of a service template.

", + "ServiceTemplateVersion$recommendedMinorVersion": "

The ID of the recommended minor version of the service template.

", + "ServiceTemplateVersionSummary$majorVersion": "

The ID of the latest major version that's associated with the version of a service template.

", + "ServiceTemplateVersionSummary$minorVersion": "

The ID of the minor version of a service template.

", + "ServiceTemplateVersionSummary$recommendedMinorVersion": "

The ID of the recommended minor version of the service template.

", + "UpdateEnvironmentInput$templateMajorVersion": "

The ID of the major version of the environment to update.

", + "UpdateEnvironmentInput$templateMinorVersion": "

The ID of the minor version of the environment to update.

", + "UpdateEnvironmentTemplateVersionInput$majorVersion": "

To update a major version of an environment template, include majorVersion.

", + "UpdateEnvironmentTemplateVersionInput$minorVersion": "

To update a minor version of an environment template, include minorVersion.

", + "UpdateServiceInstanceInput$templateMajorVersion": "

The major version of the service template to update.

", + "UpdateServiceInstanceInput$templateMinorVersion": "

The minor version of the service template to update.

", + "UpdateServicePipelineInput$templateMajorVersion": "

The major version of the service template that was used to create the service that the pipeline is associated with.

", + "UpdateServicePipelineInput$templateMinorVersion": "

The minor version of the service template that was used to create the service that the pipeline is associated with.

", + "UpdateServiceTemplateVersionInput$majorVersion": "

To update a major version of a service template, include majorVersion.

", + "UpdateServiceTemplateVersionInput$minorVersion": "

To update a minor version of a service template, include minorVersion.

" + } + }, + "TemplateVersionSourceInput": { + "base": "

Template version source data.

", + "refs": { + "CreateEnvironmentTemplateVersionInput$source": "

An object that includes the template bundle S3 bucket path and name for the new version of an template.

", + "CreateServiceTemplateVersionInput$source": "

An object that includes the template bundle S3 bucket path and name for the new version of a service template.

" + } + }, + "TemplateVersionStatus": { + "base": null, + "refs": { + "EnvironmentTemplateVersion$status": "

The status of the version of an environment template.

", + "EnvironmentTemplateVersionSummary$status": "

The status of the version of an environment template.

", + "ServiceTemplateVersion$status": "

The service template version status.

", + "ServiceTemplateVersionSummary$status": "

The service template minor version status.

", + "UpdateEnvironmentTemplateVersionInput$status": "

The status of the environment template minor version to update.

", + "UpdateServiceTemplateVersionInput$status": "

The status of the service template minor version to update.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "Environment$createdAt": "

The time when the environment was created.

", + "Environment$lastDeploymentAttemptedAt": "

The time when a deployment of the environment was last attempted.

", + "Environment$lastDeploymentSucceededAt": "

The time when the environment was last deployed successfully.

", + "EnvironmentAccountConnection$lastModifiedAt": "

The time when the environment account connection was last modified.

", + "EnvironmentAccountConnection$requestedAt": "

The time when the environment account connection request was made.

", + "EnvironmentAccountConnectionSummary$lastModifiedAt": "

The time when the environment account connection was last modified.

", + "EnvironmentAccountConnectionSummary$requestedAt": "

The time when the environment account connection request was made.

", + "EnvironmentSummary$createdAt": "

The time when the environment was created.

", + "EnvironmentSummary$lastDeploymentAttemptedAt": "

The time when a deployment of the environment was last attempted.

", + "EnvironmentSummary$lastDeploymentSucceededAt": "

The time when the environment was last deployed successfully.

", + "EnvironmentTemplate$createdAt": "

The time when the environment template was created.

", + "EnvironmentTemplate$lastModifiedAt": "

The time when the environment template was last modified.

", + "EnvironmentTemplateSummary$createdAt": "

The time when the environment template was created.

", + "EnvironmentTemplateSummary$lastModifiedAt": "

The time when the environment template was last modified.

", + "EnvironmentTemplateVersion$createdAt": "

The time when the version of an environment template was created.

", + "EnvironmentTemplateVersion$lastModifiedAt": "

The time when the version of an environment template was last modified.

", + "EnvironmentTemplateVersionSummary$createdAt": "

The time when the version of an environment template was created.

", + "EnvironmentTemplateVersionSummary$lastModifiedAt": "

The time when the version of an environment template was last modified.

", + "Service$createdAt": "

The time when the service was created.

", + "Service$lastModifiedAt": "

The time when the service was last modified.

", + "ServiceInstance$createdAt": "

The time when the service instance was created.

", + "ServiceInstance$lastDeploymentAttemptedAt": "

The time when a deployment of the service instance was last attempted.

", + "ServiceInstance$lastDeploymentSucceededAt": "

The time when the service instance was last deployed successfully.

", + "ServiceInstanceSummary$createdAt": "

The time when the service instance was created.

", + "ServiceInstanceSummary$lastDeploymentAttemptedAt": "

The time when a deployment of the service was last attempted.

", + "ServiceInstanceSummary$lastDeploymentSucceededAt": "

The time when the service was last deployed successfully.

", + "ServicePipeline$createdAt": "

The time when the service pipeline was created.

", + "ServicePipeline$lastDeploymentAttemptedAt": "

The time when a deployment of the service pipeline was last attempted.

", + "ServicePipeline$lastDeploymentSucceededAt": "

The time when the service pipeline was last deployed successfully.

", + "ServiceSummary$createdAt": "

The time when the service was created.

", + "ServiceSummary$lastModifiedAt": "

The time when the service was last modified.

", + "ServiceTemplate$createdAt": "

The time when the service template was created.

", + "ServiceTemplate$lastModifiedAt": "

The time when the service template was last modified.

", + "ServiceTemplateSummary$createdAt": "

The time when the service template was created.

", + "ServiceTemplateSummary$lastModifiedAt": "

The time when the service template was last modified.

", + "ServiceTemplateVersion$createdAt": "

The time when the version of a service template was created.

", + "ServiceTemplateVersion$lastModifiedAt": "

The time when the version of a service template was last modified.

", + "ServiceTemplateVersionSummary$createdAt": "

The time when the version of a service template was created.

", + "ServiceTemplateVersionSummary$lastModifiedAt": "

The time when the version of a service template was last modified.

" + } + }, + "UntagResourceInput": { + "base": null, + "refs": { + } + }, + "UntagResourceOutput": { + "base": null, + "refs": { + } + }, + "UpdateAccountSettingsInput": { + "base": null, + "refs": { + } + }, + "UpdateAccountSettingsOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentAccountConnectionInput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentAccountConnectionOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentInput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentTemplateInput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentTemplateOutput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "UpdateEnvironmentTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "UpdateServiceInput": { + "base": null, + "refs": { + } + }, + "UpdateServiceInstanceInput": { + "base": null, + "refs": { + } + }, + "UpdateServiceInstanceOutput": { + "base": null, + "refs": { + } + }, + "UpdateServiceOutput": { + "base": null, + "refs": { + } + }, + "UpdateServicePipelineInput": { + "base": null, + "refs": { + } + }, + "UpdateServicePipelineOutput": { + "base": null, + "refs": { + } + }, + "UpdateServiceTemplateInput": { + "base": null, + "refs": { + } + }, + "UpdateServiceTemplateOutput": { + "base": null, + "refs": { + } + }, + "UpdateServiceTemplateVersionInput": { + "base": null, + "refs": { + } + }, + "UpdateServiceTemplateVersionOutput": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

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

", + "refs": { + } + } + } +} diff --git a/models/apis/proton/2020-07-20/examples-1.json b/models/apis/proton/2020-07-20/examples-1.json new file mode 100644 index 00000000000..0ea7e3b0bbe --- /dev/null +++ b/models/apis/proton/2020-07-20/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/models/apis/proton/2020-07-20/paginators-1.json b/models/apis/proton/2020-07-20/paginators-1.json new file mode 100644 index 00000000000..0551934f0ca --- /dev/null +++ b/models/apis/proton/2020-07-20/paginators-1.json @@ -0,0 +1,58 @@ +{ + "pagination": { + "ListEnvironmentAccountConnections": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "environmentAccountConnections" + }, + "ListEnvironmentTemplateVersions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "templateVersions" + }, + "ListEnvironmentTemplates": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "templates" + }, + "ListEnvironments": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "environments" + }, + "ListServiceInstances": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "serviceInstances" + }, + "ListServiceTemplateVersions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "templateVersions" + }, + "ListServiceTemplates": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "templates" + }, + "ListServices": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "services" + }, + "ListTagsForResource": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "tags" + } + } +} diff --git a/models/apis/transfer/2018-11-05/docs-2.json b/models/apis/transfer/2018-11-05/docs-2.json index 429d19b6178..804e131be21 100644 --- a/models/apis/transfer/2018-11-05/docs-2.json +++ b/models/apis/transfer/2018-11-05/docs-2.json @@ -207,7 +207,7 @@ } }, "EndpointDetails": { - "base": "

The virtual private cloud (VPC) endpoint settings that are configured for your file transfer protocol-enabled server. With a VPC endpoint, you can restrict access to your server and resources only within your VPC. To control incoming internet traffic, invoke the UpdateServer API and attach an Elastic IP address to your server's endpoint.

After March 31, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before March 31, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before March 31, 2021, you will not be affected. After this date, use EndpointType=VPC.

For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.

", + "base": "

The virtual private cloud (VPC) endpoint settings that are configured for your file transfer protocol-enabled server. With a VPC endpoint, you can restrict access to your server and resources only within your VPC. To control incoming internet traffic, invoke the UpdateServer API and attach an Elastic IP address to your server's endpoint.

After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType=VPC.

For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.

", "refs": { "CreateServerRequest$EndpointDetails": "

The virtual private cloud (VPC) endpoint settings that are configured for your server. When you host your endpoint within your VPC, you can make it accessible only to resources within your VPC, or you can attach Elastic IP addresses and make it accessible to clients over the internet. Your VPC's default security groups are automatically assigned to your endpoint.

", "DescribedServer$EndpointDetails": "

Specifies the virtual private cloud (VPC) endpoint settings that you configured for your server.

", @@ -217,22 +217,22 @@ "EndpointType": { "base": null, "refs": { - "CreateServerRequest$EndpointType": "

The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

After March 31, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before March 31, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before March 31, 2021, you will not be affected. After this date, use EndpointType=VPC.

For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.

It is recommended that you use VPC as the EndpointType. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT.

", + "CreateServerRequest$EndpointType": "

The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType=VPC.

For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.

It is recommended that you use VPC as the EndpointType. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT.

", "DescribedServer$EndpointType": "

Defines the type of endpoint that your server is connected to. If your server is connected to a VPC endpoint, your server isn't accessible over the public internet.

", "ListedServer$EndpointType": "

Specifies the type of VPC endpoint that your server is connected to. If your server is connected to a VPC endpoint, your server isn't accessible over the public internet.

", - "UpdateServerRequest$EndpointType": "

The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

After March 31, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before March 31, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before March 31, 2021, you will not be affected. After this date, use EndpointType=VPC.

For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.

It is recommended that you use VPC as the EndpointType. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT.

" + "UpdateServerRequest$EndpointType": "

The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.

After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT in your AWS account on or before May 19, 2021, you will not be affected. After this date, use EndpointType=VPC.

For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.

It is recommended that you use VPC as the EndpointType. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType set to VPC_ENDPOINT.

" } }, "ExternalId": { "base": null, "refs": { - "CreateAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamaccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", + "CreateAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamAccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", "CreateAccessResponse$ExternalId": "

The external ID of the group whose users have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family.

", - "DeleteAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamaccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", - "DescribeAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamaccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", - "DescribedAccess$ExternalId": "

A unique identifier that might be required when you assume a role in another account. Think of the ExternalID as a group membership mechanism that uses a unique identifier (often a SID, but could be a group name or something else) as a basis. If the administrator of the account to which the role belongs provided you with an external ID, then provide that value in the ExternalId parameter. A cross-account role is usually set up to trust everyone in an account. Therefore, the administrator of the trusting account might send an external ID to the administrator of the trusted account. That way, only someone with the ID can assume the role, rather than everyone in the account.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", - "ListedAccess$ExternalId": "

A unique identifier that might be required when you assume a role in another account. Think of the ExternalID as a group membership mechanism that uses a unique identifier (often a SID, but could be a group name or something else) as a basis. If the administrator of the account to which the role belongs provided you with an external ID, then provide that value in the ExternalId parameter. A cross-account role is usually set up to trust everyone in an account. Therefore, the administrator of the trusting account might send an external ID to the administrator of the trusted account. That way, only someone with the ID can assume the role, rather than everyone in the account.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", - "UpdateAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamaccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", + "DeleteAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamAccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", + "DescribeAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamAccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", + "DescribedAccess$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamAccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", + "ListedAccess$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamAccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", + "UpdateAccessRequest$ExternalId": "

A unique identifier that is required to identify specific groups within your directory. The users of the group that you associate have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family. If you know the group name, you can view the SID values by running the following command using Windows PowerShell.

Get-ADGroup -Filter {samAccountName -like \"YourGroupName*\"} -Properties * | Select SamAccountName,ObjectSid

In that command, replace YourGroupName with the name of your Active Directory group.

The regex used to validate this parameter is a string of characters consisting of uppercase and lowercase alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-

", "UpdateAccessResponse$ExternalId": "

The external ID of the group whose users have access to your Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer Family.

" } }, @@ -245,14 +245,14 @@ "HomeDirectory": { "base": null, "refs": { - "CreateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /directory_name/home/mydirectory.

", + "CreateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", "CreateUserRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", - "DescribedAccess$HomeDirectory": "

Specifies the landing directory (or folder), which is the location that files are written to or read from in an Amazon S3 bucket, for the described access.

", - "DescribedUser$HomeDirectory": "

Specifies the landing directory (or folder), which is the location that files are written to or read from in an Amazon S3 bucket, for the described user. An example is your-Amazon-S3-bucket-name>/home/username .

", - "ListedAccess$HomeDirectory": "

Specifies the landing directory (or folder), which is the location that files are written to or read from in an Amazon S3 bucket, for the described access.

", - "ListedUser$HomeDirectory": "

Specifies the location that files are written to or read from an Amazon S3 bucket for the user you specify by their ARN.

", - "UpdateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /directory_name/home/mydirectory.

", - "UpdateUserRequest$HomeDirectory": "

Specifies the landing directory (folder) for a user when they log in to the server using their file transfer protocol client.

An example is your-Amazon-S3-bucket-name>/home/username.

" + "DescribedAccess$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "DescribedUser$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "ListedAccess$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "ListedUser$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "UpdateAccessRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

", + "UpdateUserRequest$HomeDirectory": "

The landing directory (folder) for a user when they log in to the server using the client.

A HomeDirectory example is /bucket_name/home/mydirectory.

" } }, "HomeDirectoryMapEntry": { @@ -264,24 +264,24 @@ "HomeDirectoryMappings": { "base": null, "refs": { - "CreateAccessRequest$HomeDirectoryMappings": "

Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it will be displayed as is. You also must ensure that your AWS Identity and Access Management (IAM) role provides access to paths in Target. This value can only be set when HomeDirectoryType is set to LOGICAL.

The following is an Entry and Target pair example.

[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]

In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot\"). To do this, you can set Entry to / and set Target to the HomeDirectory parameter value.

The following is an Entry and Target pair example for chroot.

[ { \"Entry\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]

If the target of a logical directory entry does not exist in Amazon S3 or Amazon EFS, the entry will be ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0-byte objects as place holders for your directory. If using the AWS CLI, use the s3api or efsapi call instead of s3 or efs so you can use the put-object operation. For example, you can use the following.

aws s3api put-object --bucket bucketname --key path/to/folder/

The end of the key name must end in a / for it to be considered a folder.

Required: No

", + "CreateAccessRequest$HomeDirectoryMappings": "

Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it will be displayed as is. You also must ensure that your AWS Identity and Access Management (IAM) role provides access to paths in Target. This value can only be set when HomeDirectoryType is set to LOGICAL.

The following is an Entry and Target pair example.

[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]

In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot\"). To do this, you can set Entry to / and set Target to the HomeDirectory parameter value.

The following is an Entry and Target pair example for chroot.

[ { \"Entry\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]

If the target of a logical directory entry does not exist in Amazon S3 or Amazon EFS, the entry will be ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0-byte objects as place holders for your directory. If using the AWS CLI, use the s3api or efsapi call instead of s3 or efs so you can use the put-object operation. For example, you can use the following.

aws s3api put-object --bucket bucketname --key path/to/folder/

The end of the key name must end in a / for it to be considered a folder.

", "CreateUserRequest$HomeDirectoryMappings": "

Logical directory mappings that specify what Amazon S3 or EFS paths and keys should be visible to your user and how you want to make them visible. You will need to specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or EFS path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. This value can only be set when HomeDirectoryType is set to LOGICAL.

The following is an Entry and Target pair example.

[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory (\"chroot\"). To do this, you can set Entry to / and set Target to the HomeDirectory parameter value.

The following is an Entry and Target pair example for chroot.

[ { \"Entry\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]

If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry will be ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0 byte objects as place holders for your directory. If using the CLI, use the s3api or efsapi call instead of s3 or efs so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/. Make sure that the end of the key name ends in a / for it to be considered a folder.

", "DescribedAccess$HomeDirectoryMappings": "

Specifies the logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to the associated access and how you want to make them visible. You must specify the \"Entry\" and \"Target\" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or EFS path. If you only specify a target, it will be displayed as is. You also must ensure that your AWS Identity and Access Management (IAM) role provides access to paths in Target.

In most cases, you can use this value instead of the scope-down policy to lock down the associated access to the designated home directory (\"chroot\"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

", "DescribedUser$HomeDirectoryMappings": "

Specifies the logical directory mappings that specify what Amazon S3 or EFS paths and keys should be visible to your user and how you want to make them visible. You will need to specify the \"Entry\" and \"Target\" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or EFS path. If you only specify a target, it will be displayed as is. You will need to also make sure that your AWS Identity and Access Management (IAM) role provides access to paths in Target.

In most cases, you can use this value instead of the scope-down policy to lock your user down to the designated home directory (\"chroot\"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

", - "UpdateAccessRequest$HomeDirectoryMappings": "

Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it will be displayed as is. You also must ensure that your AWS Identity and Access Management (IAM) role provides access to paths in Target. This value can only be set when HomeDirectoryType is set to LOGICAL.

The following is an Entry and Target pair example.

[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]

In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot\"). To do this, you can set Entry to / and set Target to the HomeDirectory parameter value.

The following is an Entry and Target pair example for chroot.

[ { \"Entry\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]

If the target of a logical directory entry does not exist in Amazon S3 or Amazon EFS, the entry will be ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0-byte objects as place holders for your directory. If using the AWS CLI, use the s3api or efsapi call instead of s3 or efs so you can use the put-object operation. For example, you can use the following.

aws s3api put-object --bucket bucketname --key path/to/folder/

The end of the key name must end in a / for it to be considered a folder.

Required: No

", + "UpdateAccessRequest$HomeDirectoryMappings": "

Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You must specify the Entry and Target pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it will be displayed as is. You also must ensure that your AWS Identity and Access Management (IAM) role provides access to paths in Target. This value can only be set when HomeDirectoryType is set to LOGICAL.

The following is an Entry and Target pair example.

[ { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]

In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot\"). To do this, you can set Entry to / and set Target to the HomeDirectory parameter value.

The following is an Entry and Target pair example for chroot.

[ { \"Entry\": \"/\", \"Target\": \"/bucket_name/home/mydirectory\" } ]

If the target of a logical directory entry does not exist in Amazon S3 or Amazon EFS, the entry will be ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0-byte objects as place holders for your directory. If using the AWS CLI, use the s3api or efsapi call instead of s3 or efs so you can use the put-object operation. For example, you can use the following.

aws s3api put-object --bucket bucketname --key path/to/folder/

The end of the key name must end in a / for it to be considered a folder.

", "UpdateUserRequest$HomeDirectoryMappings": "

Logical directory mappings that specify what Amazon S3 or Amazon EFS paths and keys should be visible to your user and how you want to make them visible. You will need to specify the \"Entry\" and \"Target\" pair, where Entry shows how the path is made visible and Target is the actual Amazon S3 or Amazon EFS path. If you only specify a target, it will be displayed as is. You will need to also make sure that your IAM role provides access to paths in Target. The following is an example.

'[ \"/bucket2/documentation\", { \"Entry\": \"your-personal-report.pdf\", \"Target\": \"/bucket3/customized-reports/${transfer:UserName}.pdf\" } ]'

In most cases, you can use this value instead of the scope-down policy to lock down your user to the designated home directory (\"chroot\"). To do this, you can set Entry to '/' and set Target to the HomeDirectory parameter value.

If the target of a logical directory entry does not exist in Amazon S3 or EFS, the entry will be ignored. As a workaround, you can use the Amazon S3 API or EFS API to create 0-byte objects as place holders for your directory. If using the AWS CLI, use the s3api or efsapi call instead of s3 efs so you can use the put-object operation. For example, you use the following: aws s3api put-object --bucket bucketname --key path/to/folder/. Make sure that the end of the key name ends in a / for it to be considered a folder.

" } }, "HomeDirectoryType": { "base": null, "refs": { - "CreateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you must provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

", - "CreateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

", - "DescribedAccess$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it to LOGICAL, you must provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

", - "DescribedUser$HomeDirectoryType": "

Specifies the type of landing directory (folder) you mapped for your users to see when they log into the file transfer protocol-enabled server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", - "ListedAccess$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it to LOGICAL, you must provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

", - "ListedUser$HomeDirectoryType": "

Specifies the type of landing directory (folder) you mapped for your users' home directory. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

", - "UpdateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) that you want your users' home directory to be when they log in to the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket paths as is in their file transfer protocol clients. If you set it LOGICAL, you must provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 paths visible to your users.

", + "CreateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", + "CreateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", + "DescribedAccess$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", + "DescribedUser$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", + "ListedAccess$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", + "ListedUser$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", + "UpdateAccessRequest$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

", "UpdateUserRequest$HomeDirectoryType": "

The type of landing directory (folder) you want your users' home directory to be when they log into the server. If you set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths as is in their file transfer protocol clients. If you set it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths visible to your users.

" } }, @@ -483,12 +483,12 @@ "Policy": { "base": null, "refs": { - "CreateAccessRequest$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. Amazon EFS does not use scope down policy.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Example scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

", - "CreateUserRequest$Policy": "

A scope-down policy for your user so you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. EFS does not use scope down policy.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Example scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

", - "DescribedAccess$Policy": "

A scope-down policy for your user so that you can use the same AWS Identity and Access Management (IAM) role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

", - "DescribedUser$Policy": "

Specifies the name of the policy in use for the described user.

", - "UpdateAccessRequest$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. Amazon EFS does not use scope down policy.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Example scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

", - "UpdateUserRequest$Policy": "

Allows you to supply a scope-down policy for your user so you can use the same IAM role across multiple users. The policy scopes down user access to portions of your Amazon S3 bucket. Variables you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

" + "CreateAccessRequest$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. Amazon EFS does not use scope-down policies.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Example scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

", + "CreateUserRequest$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. EFS does not use scope down policy.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Example scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

", + "DescribedAccess$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

", + "DescribedUser$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

", + "UpdateAccessRequest$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. Amazon EFS does not use scope down policy.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Example scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

", + "UpdateUserRequest$Policy": "

A scope-down policy for your user so that you can use the same IAM role across multiple users. This policy scopes down user access to portions of their Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}.

This only applies when domain of ServerId is S3. Amazon EFS does not use scope-down policies.

For scope-down policies, AWS Transfer Family stores the policy as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. You save the policy as a JSON blob and pass it in the Policy argument.

For an example of a scope-down policy, see Creating a scope-down policy.

For more information, see AssumeRole in the AWS Security Token Service API Reference.

" } }, "PosixId": { @@ -564,18 +564,18 @@ "Role": { "base": null, "refs": { - "CreateAccessRequest$Role": "

Specifies the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", + "CreateAccessRequest$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "CreateServerRequest$LoggingRole": "

Allows the service to write your users' activity to your Amazon CloudWatch logs for monitoring and auditing purposes.

", - "CreateUserRequest$Role": "

Specifies the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", - "DescribedAccess$Role": "

The IAM role that controls access to your Amazon S3 bucket from the specified associated access. The policies attached to this role will determine the level of access that you want to provide the associated access when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows a server to access your resources when servicing transfer requests for the associated access.

", + "CreateUserRequest$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", + "DescribedAccess$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "DescribedServer$LoggingRole": "

Specifies the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, user activity can be viewed in your CloudWatch logs.

", - "DescribedUser$Role": "

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role will determine the level of access you want to provide your users when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows a server to access your resources when servicing your users' transfer requests.

", + "DescribedUser$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "IdentityProviderDetails$InvocationRole": "

Provides the type of InvocationRole used to authenticate the user account.

", - "ListedAccess$Role": "

The AWS Identity and Access Management (IAM) role that controls access to your Amazon S3 bucket from the specified associated access. The policies attached to this role will determine the level of access that you want to provide the associated access when transferring files into and out of your Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship that allows a server to access your resources when servicing transfer requests for the associated access.

", + "ListedAccess$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", "ListedServer$LoggingRole": "

Specifies the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging.

", - "ListedUser$Role": "

Specifies the role that is in use by this user. A role is an AWS Identity and Access Management (IAM) entity that, in this case, allows a file transfer protocol-enabled server to act on a user's behalf. It allows the server to inherit the trust relationship that enables that user to perform file operations to their Amazon S3 bucket.

The IAM role that controls your users' access to your Amazon S3 bucket for servers with Domain=S3, or your EFS file system for servers with Domain=EFS.

The policies attached to this role determine the level of access you want to provide your users when transferring files into and out of your S3 buckets or EFS file systems.

", - "UpdateAccessRequest$Role": "

Specifies the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", - "UpdateUserRequest$Role": "

The IAM role that controls your users' access to your Amazon S3 bucket. The policies attached to this role determine the level of access you want to provide your users when transferring files into and out of your S3 bucket or buckets. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

" + "ListedUser$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

The IAM role that controls your users' access to your Amazon S3 bucket for servers with Domain=S3, or your EFS file system for servers with Domain=EFS.

The policies attached to this role determine the level of access you want to provide your users when transferring files into and out of your S3 buckets or EFS file systems.

", + "UpdateAccessRequest$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

", + "UpdateUserRequest$Role": "

Specifies the Amazon Resource Name (ARN) of the IAM role that controls your users' access to your Amazon S3 bucket or EFS file system. The policies attached to this role determine the level of access that you want to provide your users when transferring files into and out of your Amazon S3 bucket or EFS file system. The IAM role should also contain a trust relationship that allows the server to access your resources when servicing your users' transfer requests.

" } }, "SecondaryGids": { diff --git a/service/kendra/api.go b/service/kendra/api.go index 7ed11971a33..9d63867996f 100644 --- a/service/kendra/api.go +++ b/service/kendra/api.go @@ -106,6 +106,106 @@ func (c *Kendra) BatchDeleteDocumentWithContext(ctx aws.Context, input *BatchDel return out, req.Send() } +const opBatchGetDocumentStatus = "BatchGetDocumentStatus" + +// BatchGetDocumentStatusRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetDocumentStatus operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See BatchGetDocumentStatus for more information on using the BatchGetDocumentStatus +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the BatchGetDocumentStatusRequest method. +// req, resp := client.BatchGetDocumentStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchGetDocumentStatus +func (c *Kendra) BatchGetDocumentStatusRequest(input *BatchGetDocumentStatusInput) (req *request.Request, output *BatchGetDocumentStatusOutput) { + op := &request.Operation{ + Name: opBatchGetDocumentStatus, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchGetDocumentStatusInput{} + } + + output = &BatchGetDocumentStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetDocumentStatus API operation for AWSKendraFrontendService. +// +// Returns the indexing status for one or more documents submitted with the +// BatchPutDocument (https://docs.aws.amazon.com/kendra/latest/dg/API_BatchPutDocument.html) +// operation. +// +// When you use the BatchPutDocument operation, documents are indexed asynchronously. +// You can use the BatchGetDocumentStatus operation to get the current status +// of a list of documents so that you can determine if they have been successfully +// indexed. +// +// You can also use the BatchGetDocumentStatus operation to check the status +// of the BatchDeleteDocument (https://docs.aws.amazon.com/kendra/latest/dg/API_BatchDeleteDocument.html) +// operation. When a document is deleted from the index, Amazon Kendra returns +// NOT_FOUND as the status. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWSKendraFrontendService's +// API operation BatchGetDocumentStatus for usage and error information. +// +// Returned Error Types: +// * ValidationException +// +// * ConflictException +// +// * ResourceNotFoundException +// +// * ThrottlingException +// +// * AccessDeniedException +// +// * InternalServerException +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchGetDocumentStatus +func (c *Kendra) BatchGetDocumentStatus(input *BatchGetDocumentStatusInput) (*BatchGetDocumentStatusOutput, error) { + req, out := c.BatchGetDocumentStatusRequest(input) + return out, req.Send() +} + +// BatchGetDocumentStatusWithContext is the same as BatchGetDocumentStatus with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetDocumentStatus for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Kendra) BatchGetDocumentStatusWithContext(ctx aws.Context, input *BatchGetDocumentStatusInput, opts ...request.Option) (*BatchGetDocumentStatusOutput, error) { + req, out := c.BatchGetDocumentStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchPutDocument = "BatchPutDocument" // BatchPutDocumentRequest generates a "aws/request.Request" representing the @@ -4177,6 +4277,158 @@ func (s *BatchDeleteDocumentResponseFailedDocument) SetId(v string) *BatchDelete return s } +type BatchGetDocumentStatusInput struct { + _ struct{} `type:"structure"` + + // A list of DocumentInfo objects that identify the documents for which to get + // the status. You identify the documents by their document ID and optional + // attributes. + // + // DocumentInfoList is a required field + DocumentInfoList []*DocumentInfo `min:"1" type:"list" required:"true"` + + // The identifier of the index to add documents to. The index ID is returned + // by the CreateIndex (https://docs.aws.amazon.com/kendra/latest/dg/API_CreateIndex.html) + // operation. + // + // IndexId is a required field + IndexId *string `min:"36" type:"string" required:"true"` +} + +// String returns the string representation +func (s BatchGetDocumentStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BatchGetDocumentStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetDocumentStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetDocumentStatusInput"} + if s.DocumentInfoList == nil { + invalidParams.Add(request.NewErrParamRequired("DocumentInfoList")) + } + if s.DocumentInfoList != nil && len(s.DocumentInfoList) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DocumentInfoList", 1)) + } + if s.IndexId == nil { + invalidParams.Add(request.NewErrParamRequired("IndexId")) + } + if s.IndexId != nil && len(*s.IndexId) < 36 { + invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) + } + if s.DocumentInfoList != nil { + for i, v := range s.DocumentInfoList { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DocumentInfoList", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDocumentInfoList sets the DocumentInfoList field's value. +func (s *BatchGetDocumentStatusInput) SetDocumentInfoList(v []*DocumentInfo) *BatchGetDocumentStatusInput { + s.DocumentInfoList = v + return s +} + +// SetIndexId sets the IndexId field's value. +func (s *BatchGetDocumentStatusInput) SetIndexId(v string) *BatchGetDocumentStatusInput { + s.IndexId = &v + return s +} + +type BatchGetDocumentStatusOutput struct { + _ struct{} `type:"structure"` + + // The status of documents. The status indicates if the document is waiting + // to be indexed, is in the process of indexing, has completed indexing, or + // failed indexing. If a document failed indexing, the status provides the reason + // why. + DocumentStatusList []*Status `type:"list"` + + // A list of documents that Amazon Kendra couldn't get the status for. The list + // includes the ID of the document and the reason that the status couldn't be + // found. + Errors []*BatchGetDocumentStatusResponseError `type:"list"` +} + +// String returns the string representation +func (s BatchGetDocumentStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BatchGetDocumentStatusOutput) GoString() string { + return s.String() +} + +// SetDocumentStatusList sets the DocumentStatusList field's value. +func (s *BatchGetDocumentStatusOutput) SetDocumentStatusList(v []*Status) *BatchGetDocumentStatusOutput { + s.DocumentStatusList = v + return s +} + +// SetErrors sets the Errors field's value. +func (s *BatchGetDocumentStatusOutput) SetErrors(v []*BatchGetDocumentStatusResponseError) *BatchGetDocumentStatusOutput { + s.Errors = v + return s +} + +// Provides a response when the status of a document could not be retrieved. +type BatchGetDocumentStatusResponseError struct { + _ struct{} `type:"structure"` + + // The unique identifier of the document whose status could not be retrieved. + DocumentId *string `min:"1" type:"string"` + + // Indicates the source of the error. + ErrorCode *string `type:"string" enum:"ErrorCode"` + + // States that the API could not get the status of a document. This could be + // because the request is not valid or there is a system error. + ErrorMessage *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s BatchGetDocumentStatusResponseError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BatchGetDocumentStatusResponseError) GoString() string { + return s.String() +} + +// SetDocumentId sets the DocumentId field's value. +func (s *BatchGetDocumentStatusResponseError) SetDocumentId(v string) *BatchGetDocumentStatusResponseError { + s.DocumentId = &v + return s +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *BatchGetDocumentStatusResponseError) SetErrorCode(v string) *BatchGetDocumentStatusResponseError { + s.ErrorCode = &v + return s +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *BatchGetDocumentStatusResponseError) SetErrorMessage(v string) *BatchGetDocumentStatusResponseError { + s.ErrorMessage = &v + return s +} + type BatchPutDocumentInput struct { _ struct{} `type:"structure"` @@ -8750,6 +9002,10 @@ type DocumentAttributeValue struct { _ struct{} `type:"structure"` // A date expressed as an ISO 8601 string. + // + // It is important for the time zone to be included in the ISO 8601 date-time + // format. For example, 20120325T123010+01:00 is the ISO 8601 date-time format + // for March 25th 2012 at 12:30PM (plus 10 seconds) in Central European Time. DateValue *time.Time `type:"timestamp"` // A long integer value. @@ -8844,6 +9100,84 @@ func (s *DocumentAttributeValueCountPair) SetDocumentAttributeValue(v *DocumentA return s } +// Identifies a document for which to retrieve status information +type DocumentInfo struct { + _ struct{} `type:"structure"` + + // Attributes that identify a specific version of a document to check. + // + // The only valid attributes are: + // + // * version + // + // * datasourceId + // + // * jobExecutionId + // + // The attributes follow these rules: + // + // * dataSourceId and jobExecutionId must be used together. + // + // * version is ignored if dataSourceId and jobExecutionId are not provided. + // + // * If dataSourceId and jobExecutionId are provided, but version is not, + // the version defaults to "0". + Attributes []*DocumentAttribute `type:"list"` + + // The unique identifier of the document. + // + // DocumentId is a required field + DocumentId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DocumentInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DocumentInfo) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentInfo) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentInfo"} + if s.DocumentId == nil { + invalidParams.Add(request.NewErrParamRequired("DocumentId")) + } + if s.DocumentId != nil && len(*s.DocumentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DocumentId", 1)) + } + if s.Attributes != nil { + for i, v := range s.Attributes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributes sets the Attributes field's value. +func (s *DocumentInfo) SetAttributes(v []*DocumentAttribute) *DocumentInfo { + s.Attributes = v + return s +} + +// SetDocumentId sets the DocumentId field's value. +func (s *DocumentInfo) SetDocumentId(v string) *DocumentInfo { + s.DocumentId = &v + return s +} + // Specifies the properties of a custom index field. type DocumentMetadataConfiguration struct { _ struct{} `type:"structure"` @@ -13497,6 +13831,62 @@ func (s *StartDataSourceSyncJobOutput) SetExecutionId(v string) *StartDataSource return s } +// Provides information about the status of documents submitted for indexing. +type Status struct { + _ struct{} `type:"structure"` + + // The unique identifier of the document. + DocumentId *string `min:"1" type:"string"` + + // The current status of a document. + // + // If the document was submitted for deletion, the status is NOT_FOUND after + // the document is deleted. + DocumentStatus *string `type:"string" enum:"DocumentStatus"` + + // Indicates the source of the error. + FailureCode *string `min:"1" type:"string"` + + // Provides detailed information about why the document couldn't be indexed. + // Use this information to correct the error before you resubmit the document + // for indexing. + FailureReason *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s Status) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Status) GoString() string { + return s.String() +} + +// SetDocumentId sets the DocumentId field's value. +func (s *Status) SetDocumentId(v string) *Status { + s.DocumentId = &v + return s +} + +// SetDocumentStatus sets the DocumentStatus field's value. +func (s *Status) SetDocumentStatus(v string) *Status { + s.DocumentStatus = &v + return s +} + +// SetFailureCode sets the FailureCode field's value. +func (s *Status) SetFailureCode(v string) *Status { + s.FailureCode = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *Status) SetFailureReason(v string) *Status { + s.FailureReason = &v + return s +} + type StopDataSourceSyncJobInput struct { _ struct{} `type:"structure"` @@ -15450,6 +15840,38 @@ func DocumentAttributeValueType_Values() []string { } } +const ( + // DocumentStatusNotFound is a DocumentStatus enum value + DocumentStatusNotFound = "NOT_FOUND" + + // DocumentStatusProcessing is a DocumentStatus enum value + DocumentStatusProcessing = "PROCESSING" + + // DocumentStatusIndexed is a DocumentStatus enum value + DocumentStatusIndexed = "INDEXED" + + // DocumentStatusUpdated is a DocumentStatus enum value + DocumentStatusUpdated = "UPDATED" + + // DocumentStatusFailed is a DocumentStatus enum value + DocumentStatusFailed = "FAILED" + + // DocumentStatusUpdateFailed is a DocumentStatus enum value + DocumentStatusUpdateFailed = "UPDATE_FAILED" +) + +// DocumentStatus_Values returns all elements of the DocumentStatus enum +func DocumentStatus_Values() []string { + return []string{ + DocumentStatusNotFound, + DocumentStatusProcessing, + DocumentStatusIndexed, + DocumentStatusUpdated, + DocumentStatusFailed, + DocumentStatusUpdateFailed, + } +} + const ( // ErrorCodeInternalError is a ErrorCode enum value ErrorCodeInternalError = "InternalError" diff --git a/service/kendra/kendraiface/interface.go b/service/kendra/kendraiface/interface.go index 1e4c82b3b33..d43926a4f78 100644 --- a/service/kendra/kendraiface/interface.go +++ b/service/kendra/kendraiface/interface.go @@ -64,6 +64,10 @@ type KendraAPI interface { BatchDeleteDocumentWithContext(aws.Context, *kendra.BatchDeleteDocumentInput, ...request.Option) (*kendra.BatchDeleteDocumentOutput, error) BatchDeleteDocumentRequest(*kendra.BatchDeleteDocumentInput) (*request.Request, *kendra.BatchDeleteDocumentOutput) + BatchGetDocumentStatus(*kendra.BatchGetDocumentStatusInput) (*kendra.BatchGetDocumentStatusOutput, error) + BatchGetDocumentStatusWithContext(aws.Context, *kendra.BatchGetDocumentStatusInput, ...request.Option) (*kendra.BatchGetDocumentStatusOutput, error) + BatchGetDocumentStatusRequest(*kendra.BatchGetDocumentStatusInput) (*request.Request, *kendra.BatchGetDocumentStatusOutput) + BatchPutDocument(*kendra.BatchPutDocumentInput) (*kendra.BatchPutDocumentOutput, error) BatchPutDocumentWithContext(aws.Context, *kendra.BatchPutDocumentInput, ...request.Option) (*kendra.BatchPutDocumentOutput, error) BatchPutDocumentRequest(*kendra.BatchPutDocumentInput) (*request.Request, *kendra.BatchPutDocumentOutput) diff --git a/service/proton/api.go b/service/proton/api.go new file mode 100644 index 00000000000..a1450bcea56 --- /dev/null +++ b/service/proton/api.go @@ -0,0 +1,13289 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package proton + +import ( + "fmt" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +const opAcceptEnvironmentAccountConnection = "AcceptEnvironmentAccountConnection" + +// AcceptEnvironmentAccountConnectionRequest generates a "aws/request.Request" representing the +// client's request for the AcceptEnvironmentAccountConnection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See AcceptEnvironmentAccountConnection for more information on using the AcceptEnvironmentAccountConnection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the AcceptEnvironmentAccountConnectionRequest method. +// req, resp := client.AcceptEnvironmentAccountConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/AcceptEnvironmentAccountConnection +func (c *Proton) AcceptEnvironmentAccountConnectionRequest(input *AcceptEnvironmentAccountConnectionInput) (req *request.Request, output *AcceptEnvironmentAccountConnectionOutput) { + op := &request.Operation{ + Name: opAcceptEnvironmentAccountConnection, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AcceptEnvironmentAccountConnectionInput{} + } + + output = &AcceptEnvironmentAccountConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// AcceptEnvironmentAccountConnection API operation for AWS Proton. +// +// In a management account, an environment account connection request is accepted. +// When the environment account connection request is accepted, AWS Proton can +// use the associated IAM role to provision environment infrastructure resources +// in the associated environment account. +// +// For more information, see Environment account connections (proton/latest/adminguide/ag-env-account-connections.html) +// in the AWS Proton Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation AcceptEnvironmentAccountConnection for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/AcceptEnvironmentAccountConnection +func (c *Proton) AcceptEnvironmentAccountConnection(input *AcceptEnvironmentAccountConnectionInput) (*AcceptEnvironmentAccountConnectionOutput, error) { + req, out := c.AcceptEnvironmentAccountConnectionRequest(input) + return out, req.Send() +} + +// AcceptEnvironmentAccountConnectionWithContext is the same as AcceptEnvironmentAccountConnection with the addition of +// the ability to pass a context and additional request options. +// +// See AcceptEnvironmentAccountConnection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) AcceptEnvironmentAccountConnectionWithContext(ctx aws.Context, input *AcceptEnvironmentAccountConnectionInput, opts ...request.Option) (*AcceptEnvironmentAccountConnectionOutput, error) { + req, out := c.AcceptEnvironmentAccountConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCancelEnvironmentDeployment = "CancelEnvironmentDeployment" + +// CancelEnvironmentDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the CancelEnvironmentDeployment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CancelEnvironmentDeployment for more information on using the CancelEnvironmentDeployment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CancelEnvironmentDeploymentRequest method. +// req, resp := client.CancelEnvironmentDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelEnvironmentDeployment +func (c *Proton) CancelEnvironmentDeploymentRequest(input *CancelEnvironmentDeploymentInput) (req *request.Request, output *CancelEnvironmentDeploymentOutput) { + op := &request.Operation{ + Name: opCancelEnvironmentDeployment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CancelEnvironmentDeploymentInput{} + } + + output = &CancelEnvironmentDeploymentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CancelEnvironmentDeployment API operation for AWS Proton. +// +// Attempts to cancel an environment deployment on an UpdateEnvironment action, +// if the deployment is IN_PROGRESS. For more information, see Update an environment +// (https://docs.aws.amazon.com/proton/latest/adminguide/ag-env-update.html) +// in the AWS Proton Administration guide. +// +// The following list includes potential cancellation scenarios. +// +// * If the cancellation attempt succeeds, the resulting deployment state +// is CANCELLED. +// +// * If the cancellation attempt fails, the resulting deployment state is +// FAILED. +// +// * If the current UpdateEnvironment action succeeds before the cancellation +// attempt starts, the resulting deployment state is SUCCEEDED and the cancellation +// attempt has no effect. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CancelEnvironmentDeployment for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelEnvironmentDeployment +func (c *Proton) CancelEnvironmentDeployment(input *CancelEnvironmentDeploymentInput) (*CancelEnvironmentDeploymentOutput, error) { + req, out := c.CancelEnvironmentDeploymentRequest(input) + return out, req.Send() +} + +// CancelEnvironmentDeploymentWithContext is the same as CancelEnvironmentDeployment with the addition of +// the ability to pass a context and additional request options. +// +// See CancelEnvironmentDeployment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CancelEnvironmentDeploymentWithContext(ctx aws.Context, input *CancelEnvironmentDeploymentInput, opts ...request.Option) (*CancelEnvironmentDeploymentOutput, error) { + req, out := c.CancelEnvironmentDeploymentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCancelServiceInstanceDeployment = "CancelServiceInstanceDeployment" + +// CancelServiceInstanceDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the CancelServiceInstanceDeployment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CancelServiceInstanceDeployment for more information on using the CancelServiceInstanceDeployment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CancelServiceInstanceDeploymentRequest method. +// req, resp := client.CancelServiceInstanceDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelServiceInstanceDeployment +func (c *Proton) CancelServiceInstanceDeploymentRequest(input *CancelServiceInstanceDeploymentInput) (req *request.Request, output *CancelServiceInstanceDeploymentOutput) { + op := &request.Operation{ + Name: opCancelServiceInstanceDeployment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CancelServiceInstanceDeploymentInput{} + } + + output = &CancelServiceInstanceDeploymentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CancelServiceInstanceDeployment API operation for AWS Proton. +// +// Attempts to cancel a service instance deployment on an UpdateServiceInstance +// action, if the deployment is IN_PROGRESS. For more information, see Update +// a service instance in the AWS Proton Administration guide (https://docs.aws.amazon.com/proton/latest/adminguide/ag-svc-instance-update.html) +// or the AWS Proton User guide (https://docs.aws.amazon.com/proton/latest/userguide/ug-svc-instance-update.html). +// +// The following list includes potential cancellation scenarios. +// +// * If the cancellation attempt succeeds, the resulting deployment state +// is CANCELLED. +// +// * If the cancellation attempt fails, the resulting deployment state is +// FAILED. +// +// * If the current UpdateServiceInstance action succeeds before the cancellation +// attempt starts, the resulting deployment state is SUCCEEDED and the cancellation +// attempt has no effect. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CancelServiceInstanceDeployment for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelServiceInstanceDeployment +func (c *Proton) CancelServiceInstanceDeployment(input *CancelServiceInstanceDeploymentInput) (*CancelServiceInstanceDeploymentOutput, error) { + req, out := c.CancelServiceInstanceDeploymentRequest(input) + return out, req.Send() +} + +// CancelServiceInstanceDeploymentWithContext is the same as CancelServiceInstanceDeployment with the addition of +// the ability to pass a context and additional request options. +// +// See CancelServiceInstanceDeployment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CancelServiceInstanceDeploymentWithContext(ctx aws.Context, input *CancelServiceInstanceDeploymentInput, opts ...request.Option) (*CancelServiceInstanceDeploymentOutput, error) { + req, out := c.CancelServiceInstanceDeploymentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCancelServicePipelineDeployment = "CancelServicePipelineDeployment" + +// CancelServicePipelineDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the CancelServicePipelineDeployment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CancelServicePipelineDeployment for more information on using the CancelServicePipelineDeployment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CancelServicePipelineDeploymentRequest method. +// req, resp := client.CancelServicePipelineDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelServicePipelineDeployment +func (c *Proton) CancelServicePipelineDeploymentRequest(input *CancelServicePipelineDeploymentInput) (req *request.Request, output *CancelServicePipelineDeploymentOutput) { + op := &request.Operation{ + Name: opCancelServicePipelineDeployment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CancelServicePipelineDeploymentInput{} + } + + output = &CancelServicePipelineDeploymentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CancelServicePipelineDeployment API operation for AWS Proton. +// +// Attempts to cancel a service pipeline deployment on an UpdateServicePipeline +// action, if the deployment is IN_PROGRESS. For more information, see Update +// a service pipeline in the AWS Proton Administration guide (https://docs.aws.amazon.com/proton/latest/adminguide/ag-svc-pipeline-update.html) +// or the AWS Proton User guide (https://docs.aws.amazon.com/proton/latest/userguide/ug-svc-pipeline-update.html). +// +// The following list includes potential cancellation scenarios. +// +// * If the cancellation attempt succeeds, the resulting deployment state +// is CANCELLED. +// +// * If the cancellation attempt fails, the resulting deployment state is +// FAILED. +// +// * If the current UpdateServicePipeline action succeeds before the cancellation +// attempt starts, the resulting deployment state is SUCCEEDED and the cancellation +// attempt has no effect. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CancelServicePipelineDeployment for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelServicePipelineDeployment +func (c *Proton) CancelServicePipelineDeployment(input *CancelServicePipelineDeploymentInput) (*CancelServicePipelineDeploymentOutput, error) { + req, out := c.CancelServicePipelineDeploymentRequest(input) + return out, req.Send() +} + +// CancelServicePipelineDeploymentWithContext is the same as CancelServicePipelineDeployment with the addition of +// the ability to pass a context and additional request options. +// +// See CancelServicePipelineDeployment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CancelServicePipelineDeploymentWithContext(ctx aws.Context, input *CancelServicePipelineDeploymentInput, opts ...request.Option) (*CancelServicePipelineDeploymentOutput, error) { + req, out := c.CancelServicePipelineDeploymentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEnvironment = "CreateEnvironment" + +// CreateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateEnvironment for more information on using the CreateEnvironment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateEnvironmentRequest method. +// req, resp := client.CreateEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironment +func (c *Proton) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *CreateEnvironmentOutput) { + op := &request.Operation{ + Name: opCreateEnvironment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateEnvironmentInput{} + } + + output = &CreateEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEnvironment API operation for AWS Proton. +// +// Deploy a new environment. An AWS Proton environment is created from an environment +// template that defines infrastructure and resources that can be shared across +// services. For more information, see the Environments (https://docs.aws.amazon.com/proton/latest/adminguide/ag-environments.html) +// in the AWS Proton Administration Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateEnvironment for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironment +func (c *Proton) CreateEnvironment(input *CreateEnvironmentInput) (*CreateEnvironmentOutput, error) { + req, out := c.CreateEnvironmentRequest(input) + return out, req.Send() +} + +// CreateEnvironmentWithContext is the same as CreateEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateEnvironmentWithContext(ctx aws.Context, input *CreateEnvironmentInput, opts ...request.Option) (*CreateEnvironmentOutput, error) { + req, out := c.CreateEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEnvironmentAccountConnection = "CreateEnvironmentAccountConnection" + +// CreateEnvironmentAccountConnectionRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironmentAccountConnection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateEnvironmentAccountConnection for more information on using the CreateEnvironmentAccountConnection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateEnvironmentAccountConnectionRequest method. +// req, resp := client.CreateEnvironmentAccountConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentAccountConnection +func (c *Proton) CreateEnvironmentAccountConnectionRequest(input *CreateEnvironmentAccountConnectionInput) (req *request.Request, output *CreateEnvironmentAccountConnectionOutput) { + op := &request.Operation{ + Name: opCreateEnvironmentAccountConnection, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateEnvironmentAccountConnectionInput{} + } + + output = &CreateEnvironmentAccountConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEnvironmentAccountConnection API operation for AWS Proton. +// +// Create an environment account connection in an environment account so that +// environment infrastructure resources can be provisioned in the environment +// account from the management account. +// +// An environment account connection is a secure bi-directional connection between +// a management account and an environment account that maintains authorization +// and permissions. For more information, see Environment account connections +// (proton/latest/adminguide/ag-env-account-connections.html) in the AWS Proton +// Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateEnvironmentAccountConnection for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentAccountConnection +func (c *Proton) CreateEnvironmentAccountConnection(input *CreateEnvironmentAccountConnectionInput) (*CreateEnvironmentAccountConnectionOutput, error) { + req, out := c.CreateEnvironmentAccountConnectionRequest(input) + return out, req.Send() +} + +// CreateEnvironmentAccountConnectionWithContext is the same as CreateEnvironmentAccountConnection with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironmentAccountConnection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateEnvironmentAccountConnectionWithContext(ctx aws.Context, input *CreateEnvironmentAccountConnectionInput, opts ...request.Option) (*CreateEnvironmentAccountConnectionOutput, error) { + req, out := c.CreateEnvironmentAccountConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEnvironmentTemplate = "CreateEnvironmentTemplate" + +// CreateEnvironmentTemplateRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironmentTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateEnvironmentTemplate for more information on using the CreateEnvironmentTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateEnvironmentTemplateRequest method. +// req, resp := client.CreateEnvironmentTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentTemplate +func (c *Proton) CreateEnvironmentTemplateRequest(input *CreateEnvironmentTemplateInput) (req *request.Request, output *CreateEnvironmentTemplateOutput) { + op := &request.Operation{ + Name: opCreateEnvironmentTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateEnvironmentTemplateInput{} + } + + output = &CreateEnvironmentTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEnvironmentTemplate API operation for AWS Proton. +// +// Create an environment template for AWS Proton. For more information, see +// Environment Templates (https://docs.aws.amazon.com/proton/latest/adminguide/ag-env-templates.html) +// in the AWS Proton Administration Guide. +// +// You can create an environment template in one of the two following ways: +// +// * Register and publish a standard environment template that instructs +// AWS Proton to deploy and manage environment infrastructure. +// +// * Register and publish a customer managed environment template that connects +// AWS Proton to your existing provisioned infrastructure that you manage. +// AWS Proton doesn't manage your existing provisioned infrastructure. To +// create an environment template for customer provisioned and managed infrastructure, +// include the provisioning parameter and set the value to CUSTOMER_MANAGED. +// For more information, see Register and publish an environment template +// (https://docs.aws.amazon.com/proton/latest/adminguide/env-template-v1.html) +// in the AWS Proton Administration Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateEnvironmentTemplate for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentTemplate +func (c *Proton) CreateEnvironmentTemplate(input *CreateEnvironmentTemplateInput) (*CreateEnvironmentTemplateOutput, error) { + req, out := c.CreateEnvironmentTemplateRequest(input) + return out, req.Send() +} + +// CreateEnvironmentTemplateWithContext is the same as CreateEnvironmentTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironmentTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateEnvironmentTemplateWithContext(ctx aws.Context, input *CreateEnvironmentTemplateInput, opts ...request.Option) (*CreateEnvironmentTemplateOutput, error) { + req, out := c.CreateEnvironmentTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEnvironmentTemplateVersion = "CreateEnvironmentTemplateVersion" + +// CreateEnvironmentTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the CreateEnvironmentTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateEnvironmentTemplateVersion for more information on using the CreateEnvironmentTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateEnvironmentTemplateVersionRequest method. +// req, resp := client.CreateEnvironmentTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentTemplateVersion +func (c *Proton) CreateEnvironmentTemplateVersionRequest(input *CreateEnvironmentTemplateVersionInput) (req *request.Request, output *CreateEnvironmentTemplateVersionOutput) { + op := &request.Operation{ + Name: opCreateEnvironmentTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateEnvironmentTemplateVersionInput{} + } + + output = &CreateEnvironmentTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEnvironmentTemplateVersion API operation for AWS Proton. +// +// Create a new major or minor version of an environment template. A major version +// of an environment template is a version that isn't backwards compatible. +// A minor version of an environment template is a version that's backwards +// compatible within its major version. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateEnvironmentTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentTemplateVersion +func (c *Proton) CreateEnvironmentTemplateVersion(input *CreateEnvironmentTemplateVersionInput) (*CreateEnvironmentTemplateVersionOutput, error) { + req, out := c.CreateEnvironmentTemplateVersionRequest(input) + return out, req.Send() +} + +// CreateEnvironmentTemplateVersionWithContext is the same as CreateEnvironmentTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEnvironmentTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateEnvironmentTemplateVersionWithContext(ctx aws.Context, input *CreateEnvironmentTemplateVersionInput, opts ...request.Option) (*CreateEnvironmentTemplateVersionOutput, error) { + req, out := c.CreateEnvironmentTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateService = "CreateService" + +// CreateServiceRequest generates a "aws/request.Request" representing the +// client's request for the CreateService operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateService for more information on using the CreateService +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateServiceRequest method. +// req, resp := client.CreateServiceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateService +func (c *Proton) CreateServiceRequest(input *CreateServiceInput) (req *request.Request, output *CreateServiceOutput) { + op := &request.Operation{ + Name: opCreateService, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateServiceInput{} + } + + output = &CreateServiceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateService API operation for AWS Proton. +// +// 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 (https://docs.aws.amazon.com/proton/latest/adminguide/ag-services.html) +// in the AWS Proton Administration Guide and Services (https://docs.aws.amazon.com/proton/latest/userguide/ug-service.html) +// in the AWS Proton User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateService for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateService +func (c *Proton) CreateService(input *CreateServiceInput) (*CreateServiceOutput, error) { + req, out := c.CreateServiceRequest(input) + return out, req.Send() +} + +// CreateServiceWithContext is the same as CreateService with the addition of +// the ability to pass a context and additional request options. +// +// See CreateService for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateServiceWithContext(ctx aws.Context, input *CreateServiceInput, opts ...request.Option) (*CreateServiceOutput, error) { + req, out := c.CreateServiceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateServiceTemplate = "CreateServiceTemplate" + +// CreateServiceTemplateRequest generates a "aws/request.Request" representing the +// client's request for the CreateServiceTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateServiceTemplate for more information on using the CreateServiceTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateServiceTemplateRequest method. +// req, resp := client.CreateServiceTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateServiceTemplate +func (c *Proton) CreateServiceTemplateRequest(input *CreateServiceTemplateInput) (req *request.Request, output *CreateServiceTemplateOutput) { + op := &request.Operation{ + Name: opCreateServiceTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateServiceTemplateInput{} + } + + output = &CreateServiceTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateServiceTemplate API operation for AWS Proton. +// +// Create a service template. The administrator creates a service template to +// define standardized infrastructure and an optional CICD 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 Service Templates (https://docs.aws.amazon.com/proton/latest/adminguide/managing-svc-templates.html) +// in the AWS Proton Administration Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateServiceTemplate for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateServiceTemplate +func (c *Proton) CreateServiceTemplate(input *CreateServiceTemplateInput) (*CreateServiceTemplateOutput, error) { + req, out := c.CreateServiceTemplateRequest(input) + return out, req.Send() +} + +// CreateServiceTemplateWithContext is the same as CreateServiceTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See CreateServiceTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateServiceTemplateWithContext(ctx aws.Context, input *CreateServiceTemplateInput, opts ...request.Option) (*CreateServiceTemplateOutput, error) { + req, out := c.CreateServiceTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateServiceTemplateVersion = "CreateServiceTemplateVersion" + +// CreateServiceTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the CreateServiceTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateServiceTemplateVersion for more information on using the CreateServiceTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateServiceTemplateVersionRequest method. +// req, resp := client.CreateServiceTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateServiceTemplateVersion +func (c *Proton) CreateServiceTemplateVersionRequest(input *CreateServiceTemplateVersionInput) (req *request.Request, output *CreateServiceTemplateVersionOutput) { + op := &request.Operation{ + Name: opCreateServiceTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateServiceTemplateVersionInput{} + } + + output = &CreateServiceTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateServiceTemplateVersion API operation for AWS Proton. +// +// Create a new major or minor version of a service template. A major version +// of a service template is a version that isn't backwards compatible. A minor +// version of a service template is a version that's backwards compatible within +// its major version. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation CreateServiceTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateServiceTemplateVersion +func (c *Proton) CreateServiceTemplateVersion(input *CreateServiceTemplateVersionInput) (*CreateServiceTemplateVersionOutput, error) { + req, out := c.CreateServiceTemplateVersionRequest(input) + return out, req.Send() +} + +// CreateServiceTemplateVersionWithContext is the same as CreateServiceTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See CreateServiceTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) CreateServiceTemplateVersionWithContext(ctx aws.Context, input *CreateServiceTemplateVersionInput, opts ...request.Option) (*CreateServiceTemplateVersionOutput, error) { + req, out := c.CreateServiceTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironment = "DeleteEnvironment" + +// DeleteEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteEnvironment for more information on using the DeleteEnvironment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteEnvironmentRequest method. +// req, resp := client.DeleteEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironment +func (c *Proton) DeleteEnvironmentRequest(input *DeleteEnvironmentInput) (req *request.Request, output *DeleteEnvironmentOutput) { + op := &request.Operation{ + Name: opDeleteEnvironment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteEnvironmentInput{} + } + + output = &DeleteEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteEnvironment API operation for AWS Proton. +// +// Delete an environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteEnvironment for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironment +func (c *Proton) DeleteEnvironment(input *DeleteEnvironmentInput) (*DeleteEnvironmentOutput, error) { + req, out := c.DeleteEnvironmentRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentWithContext is the same as DeleteEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteEnvironmentWithContext(ctx aws.Context, input *DeleteEnvironmentInput, opts ...request.Option) (*DeleteEnvironmentOutput, error) { + req, out := c.DeleteEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironmentAccountConnection = "DeleteEnvironmentAccountConnection" + +// DeleteEnvironmentAccountConnectionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironmentAccountConnection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteEnvironmentAccountConnection for more information on using the DeleteEnvironmentAccountConnection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteEnvironmentAccountConnectionRequest method. +// req, resp := client.DeleteEnvironmentAccountConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironmentAccountConnection +func (c *Proton) DeleteEnvironmentAccountConnectionRequest(input *DeleteEnvironmentAccountConnectionInput) (req *request.Request, output *DeleteEnvironmentAccountConnectionOutput) { + op := &request.Operation{ + Name: opDeleteEnvironmentAccountConnection, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteEnvironmentAccountConnectionInput{} + } + + output = &DeleteEnvironmentAccountConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteEnvironmentAccountConnection API operation for AWS Proton. +// +// In an environment account, delete an environment account connection. +// +// After you delete an environment account connection that’s in use by an +// AWS Proton environment, AWS Proton can’t manage the environment infrastructure +// resources until a new environment account connection is accepted for the +// environment account and associated environment. You're responsible for cleaning +// up provisioned resources that remain without an environment connection. +// +// For more information, see Environment account connections (proton/latest/adminguide/ag-env-account-connections.html) +// in the AWS Proton Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteEnvironmentAccountConnection for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironmentAccountConnection +func (c *Proton) DeleteEnvironmentAccountConnection(input *DeleteEnvironmentAccountConnectionInput) (*DeleteEnvironmentAccountConnectionOutput, error) { + req, out := c.DeleteEnvironmentAccountConnectionRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentAccountConnectionWithContext is the same as DeleteEnvironmentAccountConnection with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironmentAccountConnection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteEnvironmentAccountConnectionWithContext(ctx aws.Context, input *DeleteEnvironmentAccountConnectionInput, opts ...request.Option) (*DeleteEnvironmentAccountConnectionOutput, error) { + req, out := c.DeleteEnvironmentAccountConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironmentTemplate = "DeleteEnvironmentTemplate" + +// DeleteEnvironmentTemplateRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironmentTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteEnvironmentTemplate for more information on using the DeleteEnvironmentTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteEnvironmentTemplateRequest method. +// req, resp := client.DeleteEnvironmentTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironmentTemplate +func (c *Proton) DeleteEnvironmentTemplateRequest(input *DeleteEnvironmentTemplateInput) (req *request.Request, output *DeleteEnvironmentTemplateOutput) { + op := &request.Operation{ + Name: opDeleteEnvironmentTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteEnvironmentTemplateInput{} + } + + output = &DeleteEnvironmentTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteEnvironmentTemplate API operation for AWS Proton. +// +// If no other major or minor versions of an environment template exist, delete +// the environment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteEnvironmentTemplate for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironmentTemplate +func (c *Proton) DeleteEnvironmentTemplate(input *DeleteEnvironmentTemplateInput) (*DeleteEnvironmentTemplateOutput, error) { + req, out := c.DeleteEnvironmentTemplateRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentTemplateWithContext is the same as DeleteEnvironmentTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironmentTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteEnvironmentTemplateWithContext(ctx aws.Context, input *DeleteEnvironmentTemplateInput, opts ...request.Option) (*DeleteEnvironmentTemplateOutput, error) { + req, out := c.DeleteEnvironmentTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEnvironmentTemplateVersion = "DeleteEnvironmentTemplateVersion" + +// DeleteEnvironmentTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEnvironmentTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteEnvironmentTemplateVersion for more information on using the DeleteEnvironmentTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteEnvironmentTemplateVersionRequest method. +// req, resp := client.DeleteEnvironmentTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironmentTemplateVersion +func (c *Proton) DeleteEnvironmentTemplateVersionRequest(input *DeleteEnvironmentTemplateVersionInput) (req *request.Request, output *DeleteEnvironmentTemplateVersionOutput) { + op := &request.Operation{ + Name: opDeleteEnvironmentTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteEnvironmentTemplateVersionInput{} + } + + output = &DeleteEnvironmentTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteEnvironmentTemplateVersion API operation for AWS Proton. +// +// If no other minor versions of an environment template exist, delete a major +// version of the environment template if it's not the Recommended version. +// Delete the Recommended version of the environment template if no other major +// versions or minor versions of the environment template exist. A major version +// of an environment template is a version that's not backwards compatible. +// +// Delete a minor version of an environment template if it isn't the Recommended +// version. Delete a Recommended minor version of the environment template if +// no other minor versions of the environment template exist. A minor version +// of an environment template is a version that's backwards compatible. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteEnvironmentTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteEnvironmentTemplateVersion +func (c *Proton) DeleteEnvironmentTemplateVersion(input *DeleteEnvironmentTemplateVersionInput) (*DeleteEnvironmentTemplateVersionOutput, error) { + req, out := c.DeleteEnvironmentTemplateVersionRequest(input) + return out, req.Send() +} + +// DeleteEnvironmentTemplateVersionWithContext is the same as DeleteEnvironmentTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEnvironmentTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteEnvironmentTemplateVersionWithContext(ctx aws.Context, input *DeleteEnvironmentTemplateVersionInput, opts ...request.Option) (*DeleteEnvironmentTemplateVersionOutput, error) { + req, out := c.DeleteEnvironmentTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteService = "DeleteService" + +// DeleteServiceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteService operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteService for more information on using the DeleteService +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteServiceRequest method. +// req, resp := client.DeleteServiceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteService +func (c *Proton) DeleteServiceRequest(input *DeleteServiceInput) (req *request.Request, output *DeleteServiceOutput) { + op := &request.Operation{ + Name: opDeleteService, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteServiceInput{} + } + + output = &DeleteServiceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteService API operation for AWS Proton. +// +// Delete a service. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteService for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteService +func (c *Proton) DeleteService(input *DeleteServiceInput) (*DeleteServiceOutput, error) { + req, out := c.DeleteServiceRequest(input) + return out, req.Send() +} + +// DeleteServiceWithContext is the same as DeleteService with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteService for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteServiceWithContext(ctx aws.Context, input *DeleteServiceInput, opts ...request.Option) (*DeleteServiceOutput, error) { + req, out := c.DeleteServiceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteServiceTemplate = "DeleteServiceTemplate" + +// DeleteServiceTemplateRequest generates a "aws/request.Request" representing the +// client's request for the DeleteServiceTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteServiceTemplate for more information on using the DeleteServiceTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteServiceTemplateRequest method. +// req, resp := client.DeleteServiceTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteServiceTemplate +func (c *Proton) DeleteServiceTemplateRequest(input *DeleteServiceTemplateInput) (req *request.Request, output *DeleteServiceTemplateOutput) { + op := &request.Operation{ + Name: opDeleteServiceTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteServiceTemplateInput{} + } + + output = &DeleteServiceTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteServiceTemplate API operation for AWS Proton. +// +// If no other major or minor versions of the service template exist, delete +// the service template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteServiceTemplate for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteServiceTemplate +func (c *Proton) DeleteServiceTemplate(input *DeleteServiceTemplateInput) (*DeleteServiceTemplateOutput, error) { + req, out := c.DeleteServiceTemplateRequest(input) + return out, req.Send() +} + +// DeleteServiceTemplateWithContext is the same as DeleteServiceTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteServiceTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteServiceTemplateWithContext(ctx aws.Context, input *DeleteServiceTemplateInput, opts ...request.Option) (*DeleteServiceTemplateOutput, error) { + req, out := c.DeleteServiceTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteServiceTemplateVersion = "DeleteServiceTemplateVersion" + +// DeleteServiceTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteServiceTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteServiceTemplateVersion for more information on using the DeleteServiceTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteServiceTemplateVersionRequest method. +// req, resp := client.DeleteServiceTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteServiceTemplateVersion +func (c *Proton) DeleteServiceTemplateVersionRequest(input *DeleteServiceTemplateVersionInput) (req *request.Request, output *DeleteServiceTemplateVersionOutput) { + op := &request.Operation{ + Name: opDeleteServiceTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteServiceTemplateVersionInput{} + } + + output = &DeleteServiceTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteServiceTemplateVersion API operation for AWS Proton. +// +// If no other minor versions of a service template exist, delete a major version +// of the service template if it's not the Recommended version. Delete the Recommended +// version of the service template if no other major versions or minor versions +// of the service template exist. A major version of a service template is a +// version that isn't backwards compatible. +// +// Delete a minor version of a service template if it's not the Recommended +// version. Delete a Recommended minor version of the service template if no +// other minor versions of the service template exist. A minor version of a +// service template is a version that's backwards compatible. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation DeleteServiceTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteServiceTemplateVersion +func (c *Proton) DeleteServiceTemplateVersion(input *DeleteServiceTemplateVersionInput) (*DeleteServiceTemplateVersionOutput, error) { + req, out := c.DeleteServiceTemplateVersionRequest(input) + return out, req.Send() +} + +// DeleteServiceTemplateVersionWithContext is the same as DeleteServiceTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteServiceTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) DeleteServiceTemplateVersionWithContext(ctx aws.Context, input *DeleteServiceTemplateVersionInput, opts ...request.Option) (*DeleteServiceTemplateVersionOutput, error) { + req, out := c.DeleteServiceTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccountSettings = "GetAccountSettings" + +// GetAccountSettingsRequest generates a "aws/request.Request" representing the +// client's request for the GetAccountSettings operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetAccountSettings for more information on using the GetAccountSettings +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetAccountSettingsRequest method. +// req, resp := client.GetAccountSettingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetAccountSettings +func (c *Proton) GetAccountSettingsRequest(input *GetAccountSettingsInput) (req *request.Request, output *GetAccountSettingsOutput) { + op := &request.Operation{ + Name: opGetAccountSettings, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetAccountSettingsInput{} + } + + output = &GetAccountSettingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAccountSettings API operation for AWS Proton. +// +// Get detail data for the AWS Proton pipeline service role. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetAccountSettings for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetAccountSettings +func (c *Proton) GetAccountSettings(input *GetAccountSettingsInput) (*GetAccountSettingsOutput, error) { + req, out := c.GetAccountSettingsRequest(input) + return out, req.Send() +} + +// GetAccountSettingsWithContext is the same as GetAccountSettings with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccountSettings for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetAccountSettingsWithContext(ctx aws.Context, input *GetAccountSettingsInput, opts ...request.Option) (*GetAccountSettingsOutput, error) { + req, out := c.GetAccountSettingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironment = "GetEnvironment" + +// GetEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetEnvironment for more information on using the GetEnvironment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetEnvironmentRequest method. +// req, resp := client.GetEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironment +func (c *Proton) GetEnvironmentRequest(input *GetEnvironmentInput) (req *request.Request, output *GetEnvironmentOutput) { + op := &request.Operation{ + Name: opGetEnvironment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEnvironmentInput{} + } + + output = &GetEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironment API operation for AWS Proton. +// +// Get detail data for an environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetEnvironment for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironment +func (c *Proton) GetEnvironment(input *GetEnvironmentInput) (*GetEnvironmentOutput, error) { + req, out := c.GetEnvironmentRequest(input) + return out, req.Send() +} + +// GetEnvironmentWithContext is the same as GetEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetEnvironmentWithContext(ctx aws.Context, input *GetEnvironmentInput, opts ...request.Option) (*GetEnvironmentOutput, error) { + req, out := c.GetEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironmentAccountConnection = "GetEnvironmentAccountConnection" + +// GetEnvironmentAccountConnectionRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironmentAccountConnection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetEnvironmentAccountConnection for more information on using the GetEnvironmentAccountConnection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetEnvironmentAccountConnectionRequest method. +// req, resp := client.GetEnvironmentAccountConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironmentAccountConnection +func (c *Proton) GetEnvironmentAccountConnectionRequest(input *GetEnvironmentAccountConnectionInput) (req *request.Request, output *GetEnvironmentAccountConnectionOutput) { + op := &request.Operation{ + Name: opGetEnvironmentAccountConnection, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEnvironmentAccountConnectionInput{} + } + + output = &GetEnvironmentAccountConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironmentAccountConnection API operation for AWS Proton. +// +// In an environment account, view the detail data for an environment account +// connection. +// +// For more information, see Environment account connections (proton/latest/adminguide/ag-env-account-connections.html) +// in the AWS Proton Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetEnvironmentAccountConnection for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironmentAccountConnection +func (c *Proton) GetEnvironmentAccountConnection(input *GetEnvironmentAccountConnectionInput) (*GetEnvironmentAccountConnectionOutput, error) { + req, out := c.GetEnvironmentAccountConnectionRequest(input) + return out, req.Send() +} + +// GetEnvironmentAccountConnectionWithContext is the same as GetEnvironmentAccountConnection with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironmentAccountConnection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetEnvironmentAccountConnectionWithContext(ctx aws.Context, input *GetEnvironmentAccountConnectionInput, opts ...request.Option) (*GetEnvironmentAccountConnectionOutput, error) { + req, out := c.GetEnvironmentAccountConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironmentTemplate = "GetEnvironmentTemplate" + +// GetEnvironmentTemplateRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironmentTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetEnvironmentTemplate for more information on using the GetEnvironmentTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetEnvironmentTemplateRequest method. +// req, resp := client.GetEnvironmentTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironmentTemplate +func (c *Proton) GetEnvironmentTemplateRequest(input *GetEnvironmentTemplateInput) (req *request.Request, output *GetEnvironmentTemplateOutput) { + op := &request.Operation{ + Name: opGetEnvironmentTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEnvironmentTemplateInput{} + } + + output = &GetEnvironmentTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironmentTemplate API operation for AWS Proton. +// +// Get detail data for an environment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetEnvironmentTemplate for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironmentTemplate +func (c *Proton) GetEnvironmentTemplate(input *GetEnvironmentTemplateInput) (*GetEnvironmentTemplateOutput, error) { + req, out := c.GetEnvironmentTemplateRequest(input) + return out, req.Send() +} + +// GetEnvironmentTemplateWithContext is the same as GetEnvironmentTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironmentTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetEnvironmentTemplateWithContext(ctx aws.Context, input *GetEnvironmentTemplateInput, opts ...request.Option) (*GetEnvironmentTemplateOutput, error) { + req, out := c.GetEnvironmentTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEnvironmentTemplateVersion = "GetEnvironmentTemplateVersion" + +// GetEnvironmentTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the GetEnvironmentTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetEnvironmentTemplateVersion for more information on using the GetEnvironmentTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetEnvironmentTemplateVersionRequest method. +// req, resp := client.GetEnvironmentTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironmentTemplateVersion +func (c *Proton) GetEnvironmentTemplateVersionRequest(input *GetEnvironmentTemplateVersionInput) (req *request.Request, output *GetEnvironmentTemplateVersionOutput) { + op := &request.Operation{ + Name: opGetEnvironmentTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEnvironmentTemplateVersionInput{} + } + + output = &GetEnvironmentTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEnvironmentTemplateVersion API operation for AWS Proton. +// +// View detail data for a major or minor version of an environment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetEnvironmentTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetEnvironmentTemplateVersion +func (c *Proton) GetEnvironmentTemplateVersion(input *GetEnvironmentTemplateVersionInput) (*GetEnvironmentTemplateVersionOutput, error) { + req, out := c.GetEnvironmentTemplateVersionRequest(input) + return out, req.Send() +} + +// GetEnvironmentTemplateVersionWithContext is the same as GetEnvironmentTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See GetEnvironmentTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetEnvironmentTemplateVersionWithContext(ctx aws.Context, input *GetEnvironmentTemplateVersionInput, opts ...request.Option) (*GetEnvironmentTemplateVersionOutput, error) { + req, out := c.GetEnvironmentTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetService = "GetService" + +// GetServiceRequest generates a "aws/request.Request" representing the +// client's request for the GetService operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetService for more information on using the GetService +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetServiceRequest method. +// req, resp := client.GetServiceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetService +func (c *Proton) GetServiceRequest(input *GetServiceInput) (req *request.Request, output *GetServiceOutput) { + op := &request.Operation{ + Name: opGetService, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetServiceInput{} + } + + output = &GetServiceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetService API operation for AWS Proton. +// +// Get detail data for a service. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetService for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetService +func (c *Proton) GetService(input *GetServiceInput) (*GetServiceOutput, error) { + req, out := c.GetServiceRequest(input) + return out, req.Send() +} + +// GetServiceWithContext is the same as GetService with the addition of +// the ability to pass a context and additional request options. +// +// See GetService for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetServiceWithContext(ctx aws.Context, input *GetServiceInput, opts ...request.Option) (*GetServiceOutput, error) { + req, out := c.GetServiceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetServiceInstance = "GetServiceInstance" + +// GetServiceInstanceRequest generates a "aws/request.Request" representing the +// client's request for the GetServiceInstance operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetServiceInstance for more information on using the GetServiceInstance +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetServiceInstanceRequest method. +// req, resp := client.GetServiceInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetServiceInstance +func (c *Proton) GetServiceInstanceRequest(input *GetServiceInstanceInput) (req *request.Request, output *GetServiceInstanceOutput) { + op := &request.Operation{ + Name: opGetServiceInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetServiceInstanceInput{} + } + + output = &GetServiceInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetServiceInstance API operation for AWS Proton. +// +// Get detail data for a service instance. A service instance is an instantiation +// of service template, which is running in a specific environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetServiceInstance for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetServiceInstance +func (c *Proton) GetServiceInstance(input *GetServiceInstanceInput) (*GetServiceInstanceOutput, error) { + req, out := c.GetServiceInstanceRequest(input) + return out, req.Send() +} + +// GetServiceInstanceWithContext is the same as GetServiceInstance with the addition of +// the ability to pass a context and additional request options. +// +// See GetServiceInstance for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetServiceInstanceWithContext(ctx aws.Context, input *GetServiceInstanceInput, opts ...request.Option) (*GetServiceInstanceOutput, error) { + req, out := c.GetServiceInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetServiceTemplate = "GetServiceTemplate" + +// GetServiceTemplateRequest generates a "aws/request.Request" representing the +// client's request for the GetServiceTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetServiceTemplate for more information on using the GetServiceTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetServiceTemplateRequest method. +// req, resp := client.GetServiceTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetServiceTemplate +func (c *Proton) GetServiceTemplateRequest(input *GetServiceTemplateInput) (req *request.Request, output *GetServiceTemplateOutput) { + op := &request.Operation{ + Name: opGetServiceTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetServiceTemplateInput{} + } + + output = &GetServiceTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetServiceTemplate API operation for AWS Proton. +// +// Get detail data for a service template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetServiceTemplate for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetServiceTemplate +func (c *Proton) GetServiceTemplate(input *GetServiceTemplateInput) (*GetServiceTemplateOutput, error) { + req, out := c.GetServiceTemplateRequest(input) + return out, req.Send() +} + +// GetServiceTemplateWithContext is the same as GetServiceTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See GetServiceTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetServiceTemplateWithContext(ctx aws.Context, input *GetServiceTemplateInput, opts ...request.Option) (*GetServiceTemplateOutput, error) { + req, out := c.GetServiceTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetServiceTemplateVersion = "GetServiceTemplateVersion" + +// GetServiceTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the GetServiceTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetServiceTemplateVersion for more information on using the GetServiceTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetServiceTemplateVersionRequest method. +// req, resp := client.GetServiceTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetServiceTemplateVersion +func (c *Proton) GetServiceTemplateVersionRequest(input *GetServiceTemplateVersionInput) (req *request.Request, output *GetServiceTemplateVersionOutput) { + op := &request.Operation{ + Name: opGetServiceTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetServiceTemplateVersionInput{} + } + + output = &GetServiceTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetServiceTemplateVersion API operation for AWS Proton. +// +// View detail data for a major or minor version of a service template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation GetServiceTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetServiceTemplateVersion +func (c *Proton) GetServiceTemplateVersion(input *GetServiceTemplateVersionInput) (*GetServiceTemplateVersionOutput, error) { + req, out := c.GetServiceTemplateVersionRequest(input) + return out, req.Send() +} + +// GetServiceTemplateVersionWithContext is the same as GetServiceTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See GetServiceTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) GetServiceTemplateVersionWithContext(ctx aws.Context, input *GetServiceTemplateVersionInput, opts ...request.Option) (*GetServiceTemplateVersionOutput, error) { + req, out := c.GetServiceTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListEnvironmentAccountConnections = "ListEnvironmentAccountConnections" + +// ListEnvironmentAccountConnectionsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironmentAccountConnections operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListEnvironmentAccountConnections for more information on using the ListEnvironmentAccountConnections +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListEnvironmentAccountConnectionsRequest method. +// req, resp := client.ListEnvironmentAccountConnectionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironmentAccountConnections +func (c *Proton) ListEnvironmentAccountConnectionsRequest(input *ListEnvironmentAccountConnectionsInput) (req *request.Request, output *ListEnvironmentAccountConnectionsOutput) { + op := &request.Operation{ + Name: opListEnvironmentAccountConnections, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentAccountConnectionsInput{} + } + + output = &ListEnvironmentAccountConnectionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironmentAccountConnections API operation for AWS Proton. +// +// View a list of environment account connections. +// +// For more information, see Environment account connections (proton/latest/adminguide/ag-env-account-connections.html) +// in the AWS Proton Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListEnvironmentAccountConnections for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironmentAccountConnections +func (c *Proton) ListEnvironmentAccountConnections(input *ListEnvironmentAccountConnectionsInput) (*ListEnvironmentAccountConnectionsOutput, error) { + req, out := c.ListEnvironmentAccountConnectionsRequest(input) + return out, req.Send() +} + +// ListEnvironmentAccountConnectionsWithContext is the same as ListEnvironmentAccountConnections with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironmentAccountConnections for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentAccountConnectionsWithContext(ctx aws.Context, input *ListEnvironmentAccountConnectionsInput, opts ...request.Option) (*ListEnvironmentAccountConnectionsOutput, error) { + req, out := c.ListEnvironmentAccountConnectionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentAccountConnectionsPages iterates over the pages of a ListEnvironmentAccountConnections operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironmentAccountConnections method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListEnvironmentAccountConnections operation. +// pageNum := 0 +// err := client.ListEnvironmentAccountConnectionsPages(params, +// func(page *proton.ListEnvironmentAccountConnectionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListEnvironmentAccountConnectionsPages(input *ListEnvironmentAccountConnectionsInput, fn func(*ListEnvironmentAccountConnectionsOutput, bool) bool) error { + return c.ListEnvironmentAccountConnectionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentAccountConnectionsPagesWithContext same as ListEnvironmentAccountConnectionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentAccountConnectionsPagesWithContext(ctx aws.Context, input *ListEnvironmentAccountConnectionsInput, fn func(*ListEnvironmentAccountConnectionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentAccountConnectionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentAccountConnectionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentAccountConnectionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironmentTemplateVersions = "ListEnvironmentTemplateVersions" + +// ListEnvironmentTemplateVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironmentTemplateVersions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListEnvironmentTemplateVersions for more information on using the ListEnvironmentTemplateVersions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListEnvironmentTemplateVersionsRequest method. +// req, resp := client.ListEnvironmentTemplateVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironmentTemplateVersions +func (c *Proton) ListEnvironmentTemplateVersionsRequest(input *ListEnvironmentTemplateVersionsInput) (req *request.Request, output *ListEnvironmentTemplateVersionsOutput) { + op := &request.Operation{ + Name: opListEnvironmentTemplateVersions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentTemplateVersionsInput{} + } + + output = &ListEnvironmentTemplateVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironmentTemplateVersions API operation for AWS Proton. +// +// List major or minor versions of an environment template with detail data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListEnvironmentTemplateVersions for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironmentTemplateVersions +func (c *Proton) ListEnvironmentTemplateVersions(input *ListEnvironmentTemplateVersionsInput) (*ListEnvironmentTemplateVersionsOutput, error) { + req, out := c.ListEnvironmentTemplateVersionsRequest(input) + return out, req.Send() +} + +// ListEnvironmentTemplateVersionsWithContext is the same as ListEnvironmentTemplateVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironmentTemplateVersions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentTemplateVersionsWithContext(ctx aws.Context, input *ListEnvironmentTemplateVersionsInput, opts ...request.Option) (*ListEnvironmentTemplateVersionsOutput, error) { + req, out := c.ListEnvironmentTemplateVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentTemplateVersionsPages iterates over the pages of a ListEnvironmentTemplateVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironmentTemplateVersions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListEnvironmentTemplateVersions operation. +// pageNum := 0 +// err := client.ListEnvironmentTemplateVersionsPages(params, +// func(page *proton.ListEnvironmentTemplateVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListEnvironmentTemplateVersionsPages(input *ListEnvironmentTemplateVersionsInput, fn func(*ListEnvironmentTemplateVersionsOutput, bool) bool) error { + return c.ListEnvironmentTemplateVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentTemplateVersionsPagesWithContext same as ListEnvironmentTemplateVersionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentTemplateVersionsPagesWithContext(ctx aws.Context, input *ListEnvironmentTemplateVersionsInput, fn func(*ListEnvironmentTemplateVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentTemplateVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentTemplateVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentTemplateVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironmentTemplates = "ListEnvironmentTemplates" + +// ListEnvironmentTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironmentTemplates operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListEnvironmentTemplates for more information on using the ListEnvironmentTemplates +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListEnvironmentTemplatesRequest method. +// req, resp := client.ListEnvironmentTemplatesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironmentTemplates +func (c *Proton) ListEnvironmentTemplatesRequest(input *ListEnvironmentTemplatesInput) (req *request.Request, output *ListEnvironmentTemplatesOutput) { + op := &request.Operation{ + Name: opListEnvironmentTemplates, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentTemplatesInput{} + } + + output = &ListEnvironmentTemplatesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironmentTemplates API operation for AWS Proton. +// +// List environment templates. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListEnvironmentTemplates for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironmentTemplates +func (c *Proton) ListEnvironmentTemplates(input *ListEnvironmentTemplatesInput) (*ListEnvironmentTemplatesOutput, error) { + req, out := c.ListEnvironmentTemplatesRequest(input) + return out, req.Send() +} + +// ListEnvironmentTemplatesWithContext is the same as ListEnvironmentTemplates with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironmentTemplates for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentTemplatesWithContext(ctx aws.Context, input *ListEnvironmentTemplatesInput, opts ...request.Option) (*ListEnvironmentTemplatesOutput, error) { + req, out := c.ListEnvironmentTemplatesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentTemplatesPages iterates over the pages of a ListEnvironmentTemplates operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironmentTemplates method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListEnvironmentTemplates operation. +// pageNum := 0 +// err := client.ListEnvironmentTemplatesPages(params, +// func(page *proton.ListEnvironmentTemplatesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListEnvironmentTemplatesPages(input *ListEnvironmentTemplatesInput, fn func(*ListEnvironmentTemplatesOutput, bool) bool) error { + return c.ListEnvironmentTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentTemplatesPagesWithContext same as ListEnvironmentTemplatesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentTemplatesPagesWithContext(ctx aws.Context, input *ListEnvironmentTemplatesInput, fn func(*ListEnvironmentTemplatesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentTemplatesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentTemplatesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentTemplatesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnvironments = "ListEnvironments" + +// ListEnvironmentsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnvironments operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListEnvironments for more information on using the ListEnvironments +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListEnvironmentsRequest method. +// req, resp := client.ListEnvironmentsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironments +func (c *Proton) ListEnvironmentsRequest(input *ListEnvironmentsInput) (req *request.Request, output *ListEnvironmentsOutput) { + op := &request.Operation{ + Name: opListEnvironments, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEnvironmentsInput{} + } + + output = &ListEnvironmentsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnvironments API operation for AWS Proton. +// +// List environments with detail data summaries. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListEnvironments for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListEnvironments +func (c *Proton) ListEnvironments(input *ListEnvironmentsInput) (*ListEnvironmentsOutput, error) { + req, out := c.ListEnvironmentsRequest(input) + return out, req.Send() +} + +// ListEnvironmentsWithContext is the same as ListEnvironments with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnvironments for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentsWithContext(ctx aws.Context, input *ListEnvironmentsInput, opts ...request.Option) (*ListEnvironmentsOutput, error) { + req, out := c.ListEnvironmentsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnvironmentsPages iterates over the pages of a ListEnvironments operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnvironments method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListEnvironments operation. +// pageNum := 0 +// err := client.ListEnvironmentsPages(params, +// func(page *proton.ListEnvironmentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListEnvironmentsPages(input *ListEnvironmentsInput, fn func(*ListEnvironmentsOutput, bool) bool) error { + return c.ListEnvironmentsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnvironmentsPagesWithContext same as ListEnvironmentsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListEnvironmentsPagesWithContext(ctx aws.Context, input *ListEnvironmentsInput, fn func(*ListEnvironmentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnvironmentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnvironmentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnvironmentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListServiceInstances = "ListServiceInstances" + +// ListServiceInstancesRequest generates a "aws/request.Request" representing the +// client's request for the ListServiceInstances operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListServiceInstances for more information on using the ListServiceInstances +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListServiceInstancesRequest method. +// req, resp := client.ListServiceInstancesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServiceInstances +func (c *Proton) ListServiceInstancesRequest(input *ListServiceInstancesInput) (req *request.Request, output *ListServiceInstancesOutput) { + op := &request.Operation{ + Name: opListServiceInstances, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListServiceInstancesInput{} + } + + output = &ListServiceInstancesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListServiceInstances API operation for AWS Proton. +// +// List service instances with summaries of detail data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListServiceInstances for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServiceInstances +func (c *Proton) ListServiceInstances(input *ListServiceInstancesInput) (*ListServiceInstancesOutput, error) { + req, out := c.ListServiceInstancesRequest(input) + return out, req.Send() +} + +// ListServiceInstancesWithContext is the same as ListServiceInstances with the addition of +// the ability to pass a context and additional request options. +// +// See ListServiceInstances for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServiceInstancesWithContext(ctx aws.Context, input *ListServiceInstancesInput, opts ...request.Option) (*ListServiceInstancesOutput, error) { + req, out := c.ListServiceInstancesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListServiceInstancesPages iterates over the pages of a ListServiceInstances operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListServiceInstances method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListServiceInstances operation. +// pageNum := 0 +// err := client.ListServiceInstancesPages(params, +// func(page *proton.ListServiceInstancesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListServiceInstancesPages(input *ListServiceInstancesInput, fn func(*ListServiceInstancesOutput, bool) bool) error { + return c.ListServiceInstancesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListServiceInstancesPagesWithContext same as ListServiceInstancesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServiceInstancesPagesWithContext(ctx aws.Context, input *ListServiceInstancesInput, fn func(*ListServiceInstancesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListServiceInstancesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListServiceInstancesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListServiceInstancesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListServiceTemplateVersions = "ListServiceTemplateVersions" + +// ListServiceTemplateVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListServiceTemplateVersions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListServiceTemplateVersions for more information on using the ListServiceTemplateVersions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListServiceTemplateVersionsRequest method. +// req, resp := client.ListServiceTemplateVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServiceTemplateVersions +func (c *Proton) ListServiceTemplateVersionsRequest(input *ListServiceTemplateVersionsInput) (req *request.Request, output *ListServiceTemplateVersionsOutput) { + op := &request.Operation{ + Name: opListServiceTemplateVersions, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListServiceTemplateVersionsInput{} + } + + output = &ListServiceTemplateVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListServiceTemplateVersions API operation for AWS Proton. +// +// List major or minor versions of a service template with detail data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListServiceTemplateVersions for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServiceTemplateVersions +func (c *Proton) ListServiceTemplateVersions(input *ListServiceTemplateVersionsInput) (*ListServiceTemplateVersionsOutput, error) { + req, out := c.ListServiceTemplateVersionsRequest(input) + return out, req.Send() +} + +// ListServiceTemplateVersionsWithContext is the same as ListServiceTemplateVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListServiceTemplateVersions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServiceTemplateVersionsWithContext(ctx aws.Context, input *ListServiceTemplateVersionsInput, opts ...request.Option) (*ListServiceTemplateVersionsOutput, error) { + req, out := c.ListServiceTemplateVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListServiceTemplateVersionsPages iterates over the pages of a ListServiceTemplateVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListServiceTemplateVersions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListServiceTemplateVersions operation. +// pageNum := 0 +// err := client.ListServiceTemplateVersionsPages(params, +// func(page *proton.ListServiceTemplateVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListServiceTemplateVersionsPages(input *ListServiceTemplateVersionsInput, fn func(*ListServiceTemplateVersionsOutput, bool) bool) error { + return c.ListServiceTemplateVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListServiceTemplateVersionsPagesWithContext same as ListServiceTemplateVersionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServiceTemplateVersionsPagesWithContext(ctx aws.Context, input *ListServiceTemplateVersionsInput, fn func(*ListServiceTemplateVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListServiceTemplateVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListServiceTemplateVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListServiceTemplateVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListServiceTemplates = "ListServiceTemplates" + +// ListServiceTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListServiceTemplates operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListServiceTemplates for more information on using the ListServiceTemplates +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListServiceTemplatesRequest method. +// req, resp := client.ListServiceTemplatesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServiceTemplates +func (c *Proton) ListServiceTemplatesRequest(input *ListServiceTemplatesInput) (req *request.Request, output *ListServiceTemplatesOutput) { + op := &request.Operation{ + Name: opListServiceTemplates, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListServiceTemplatesInput{} + } + + output = &ListServiceTemplatesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListServiceTemplates API operation for AWS Proton. +// +// List service templates with detail data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListServiceTemplates for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServiceTemplates +func (c *Proton) ListServiceTemplates(input *ListServiceTemplatesInput) (*ListServiceTemplatesOutput, error) { + req, out := c.ListServiceTemplatesRequest(input) + return out, req.Send() +} + +// ListServiceTemplatesWithContext is the same as ListServiceTemplates with the addition of +// the ability to pass a context and additional request options. +// +// See ListServiceTemplates for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServiceTemplatesWithContext(ctx aws.Context, input *ListServiceTemplatesInput, opts ...request.Option) (*ListServiceTemplatesOutput, error) { + req, out := c.ListServiceTemplatesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListServiceTemplatesPages iterates over the pages of a ListServiceTemplates operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListServiceTemplates method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListServiceTemplates operation. +// pageNum := 0 +// err := client.ListServiceTemplatesPages(params, +// func(page *proton.ListServiceTemplatesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListServiceTemplatesPages(input *ListServiceTemplatesInput, fn func(*ListServiceTemplatesOutput, bool) bool) error { + return c.ListServiceTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListServiceTemplatesPagesWithContext same as ListServiceTemplatesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServiceTemplatesPagesWithContext(ctx aws.Context, input *ListServiceTemplatesInput, fn func(*ListServiceTemplatesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListServiceTemplatesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListServiceTemplatesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListServiceTemplatesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListServices = "ListServices" + +// ListServicesRequest generates a "aws/request.Request" representing the +// client's request for the ListServices operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListServices for more information on using the ListServices +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListServicesRequest method. +// req, resp := client.ListServicesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServices +func (c *Proton) ListServicesRequest(input *ListServicesInput) (req *request.Request, output *ListServicesOutput) { + op := &request.Operation{ + Name: opListServices, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListServicesInput{} + } + + output = &ListServicesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListServices API operation for AWS Proton. +// +// List services with summaries of detail data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListServices for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListServices +func (c *Proton) ListServices(input *ListServicesInput) (*ListServicesOutput, error) { + req, out := c.ListServicesRequest(input) + return out, req.Send() +} + +// ListServicesWithContext is the same as ListServices with the addition of +// the ability to pass a context and additional request options. +// +// See ListServices for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServicesWithContext(ctx aws.Context, input *ListServicesInput, opts ...request.Option) (*ListServicesOutput, error) { + req, out := c.ListServicesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListServicesPages iterates over the pages of a ListServices operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListServices method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListServices operation. +// pageNum := 0 +// err := client.ListServicesPages(params, +// func(page *proton.ListServicesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListServicesPages(input *ListServicesInput, fn func(*ListServicesOutput, bool) bool) error { + return c.ListServicesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListServicesPagesWithContext same as ListServicesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListServicesPagesWithContext(ctx aws.Context, input *ListServicesInput, fn func(*ListServicesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListServicesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListServicesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListServicesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListTagsForResource +func (c *Proton) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Proton. +// +// List tags for a resource. For more information, see AWS Proton resources +// and tagging in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) +// or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListTagsForResource +func (c *Proton) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTagsForResource method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTagsForResource operation. +// pageNum := 0 +// err := client.ListTagsForResourcePages(params, +// func(page *proton.ListTagsForResourceOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Proton) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error { + return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTagsForResourceInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTagsForResourceRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opRejectEnvironmentAccountConnection = "RejectEnvironmentAccountConnection" + +// RejectEnvironmentAccountConnectionRequest generates a "aws/request.Request" representing the +// client's request for the RejectEnvironmentAccountConnection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See RejectEnvironmentAccountConnection for more information on using the RejectEnvironmentAccountConnection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the RejectEnvironmentAccountConnectionRequest method. +// req, resp := client.RejectEnvironmentAccountConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/RejectEnvironmentAccountConnection +func (c *Proton) RejectEnvironmentAccountConnectionRequest(input *RejectEnvironmentAccountConnectionInput) (req *request.Request, output *RejectEnvironmentAccountConnectionOutput) { + op := &request.Operation{ + Name: opRejectEnvironmentAccountConnection, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RejectEnvironmentAccountConnectionInput{} + } + + output = &RejectEnvironmentAccountConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// RejectEnvironmentAccountConnection API operation for AWS Proton. +// +// In a management account, reject an environment account connection from another +// environment account. +// +// After you reject an environment account connection request, you won’t be +// able to accept or use the rejected environment account connection. +// +// You can’t reject an environment account connection that is connected to +// an environment. +// +// For more information, see Environment account connections (proton/latest/adminguide/ag-env-account-connections.html) +// in the AWS Proton Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation RejectEnvironmentAccountConnection for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/RejectEnvironmentAccountConnection +func (c *Proton) RejectEnvironmentAccountConnection(input *RejectEnvironmentAccountConnectionInput) (*RejectEnvironmentAccountConnectionOutput, error) { + req, out := c.RejectEnvironmentAccountConnectionRequest(input) + return out, req.Send() +} + +// RejectEnvironmentAccountConnectionWithContext is the same as RejectEnvironmentAccountConnection with the addition of +// the ability to pass a context and additional request options. +// +// See RejectEnvironmentAccountConnection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) RejectEnvironmentAccountConnectionWithContext(ctx aws.Context, input *RejectEnvironmentAccountConnectionInput, opts ...request.Option) (*RejectEnvironmentAccountConnectionOutput, error) { + req, out := c.RejectEnvironmentAccountConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/TagResource +func (c *Proton) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Proton. +// +// Tag a resource. For more information, see AWS Proton resources and tagging +// in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) +// or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/TagResource +func (c *Proton) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UntagResource +func (c *Proton) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Proton. +// +// Remove a tag from a resource. For more information, see AWS Proton resources +// and tagging in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) +// or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UntagResource +func (c *Proton) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAccountSettings = "UpdateAccountSettings" + +// UpdateAccountSettingsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAccountSettings operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateAccountSettings for more information on using the UpdateAccountSettings +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateAccountSettingsRequest method. +// req, resp := client.UpdateAccountSettingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateAccountSettings +func (c *Proton) UpdateAccountSettingsRequest(input *UpdateAccountSettingsInput) (req *request.Request, output *UpdateAccountSettingsOutput) { + op := &request.Operation{ + Name: opUpdateAccountSettings, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateAccountSettingsInput{} + } + + output = &UpdateAccountSettingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateAccountSettings API operation for AWS Proton. +// +// Update the AWS Proton pipeline service account settings. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateAccountSettings for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateAccountSettings +func (c *Proton) UpdateAccountSettings(input *UpdateAccountSettingsInput) (*UpdateAccountSettingsOutput, error) { + req, out := c.UpdateAccountSettingsRequest(input) + return out, req.Send() +} + +// UpdateAccountSettingsWithContext is the same as UpdateAccountSettings with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateAccountSettings for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateAccountSettingsWithContext(ctx aws.Context, input *UpdateAccountSettingsInput, opts ...request.Option) (*UpdateAccountSettingsOutput, error) { + req, out := c.UpdateAccountSettingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironment = "UpdateEnvironment" + +// UpdateEnvironmentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironment operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateEnvironment for more information on using the UpdateEnvironment +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateEnvironmentRequest method. +// req, resp := client.UpdateEnvironmentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironment +func (c *Proton) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *UpdateEnvironmentOutput) { + op := &request.Operation{ + Name: opUpdateEnvironment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateEnvironmentInput{} + } + + output = &UpdateEnvironmentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnvironment API operation for AWS Proton. +// +// Update an environment. +// +// If the environment is associated with an environment account connection, +// don't update or include the protonServiceRoleArn parameter to update or connect +// to an environment account connection. +// +// You can only update to a new environment account connection if it was created +// in the same environment account that the current environment account connection +// was created in and associated with the current environment. +// +// If the environment isn't associated with an environment account connection, +// don't update or include the environmentAccountConnectionId parameter to update +// or connect to an environment account connection. +// +// You can update either the environmentAccountConnectionId or protonServiceRoleArn +// parameter and value. You can’t update both. +// +// There are four modes for updating an environment as described in the following. +// The deploymentType field defines the mode. +// +// NONE +// +// In this mode, a deployment doesn't occur. Only the requested metadata parameters +// are updated. +// +// CURRENT_VERSION +// +// In this mode, the environment is deployed and updated with the new spec that +// you provide. Only requested parameters are updated. Don’t include minor +// or major version parameters when you use this deployment-type. +// +// MINOR_VERSION +// +// In this mode, the environment is deployed and updated with the published, +// recommended (latest) minor version of the current major version in use, by +// default. You can also specify a different minor version of the current major +// version in use. +// +// MAJOR_VERSION +// +// In this mode, the environment is deployed and updated with the published, +// recommended (latest) major and minor version of the current template, by +// default. You can also specify a different major version that's higher than +// the major version in use and a minor version (optional). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateEnvironment for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironment +func (c *Proton) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironment for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*UpdateEnvironmentOutput, error) { + req, out := c.UpdateEnvironmentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironmentAccountConnection = "UpdateEnvironmentAccountConnection" + +// UpdateEnvironmentAccountConnectionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironmentAccountConnection operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateEnvironmentAccountConnection for more information on using the UpdateEnvironmentAccountConnection +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateEnvironmentAccountConnectionRequest method. +// req, resp := client.UpdateEnvironmentAccountConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironmentAccountConnection +func (c *Proton) UpdateEnvironmentAccountConnectionRequest(input *UpdateEnvironmentAccountConnectionInput) (req *request.Request, output *UpdateEnvironmentAccountConnectionOutput) { + op := &request.Operation{ + Name: opUpdateEnvironmentAccountConnection, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateEnvironmentAccountConnectionInput{} + } + + output = &UpdateEnvironmentAccountConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnvironmentAccountConnection API operation for AWS Proton. +// +// In an environment account, update an environment account connection to use +// a new IAM role. +// +// For more information, see Environment account connections (proton/latest/adminguide/ag-env-account-connections.html) +// in the AWS Proton Administration guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateEnvironmentAccountConnection for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironmentAccountConnection +func (c *Proton) UpdateEnvironmentAccountConnection(input *UpdateEnvironmentAccountConnectionInput) (*UpdateEnvironmentAccountConnectionOutput, error) { + req, out := c.UpdateEnvironmentAccountConnectionRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentAccountConnectionWithContext is the same as UpdateEnvironmentAccountConnection with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironmentAccountConnection for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateEnvironmentAccountConnectionWithContext(ctx aws.Context, input *UpdateEnvironmentAccountConnectionInput, opts ...request.Option) (*UpdateEnvironmentAccountConnectionOutput, error) { + req, out := c.UpdateEnvironmentAccountConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironmentTemplate = "UpdateEnvironmentTemplate" + +// UpdateEnvironmentTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironmentTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateEnvironmentTemplate for more information on using the UpdateEnvironmentTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateEnvironmentTemplateRequest method. +// req, resp := client.UpdateEnvironmentTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironmentTemplate +func (c *Proton) UpdateEnvironmentTemplateRequest(input *UpdateEnvironmentTemplateInput) (req *request.Request, output *UpdateEnvironmentTemplateOutput) { + op := &request.Operation{ + Name: opUpdateEnvironmentTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateEnvironmentTemplateInput{} + } + + output = &UpdateEnvironmentTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnvironmentTemplate API operation for AWS Proton. +// +// Update an environment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateEnvironmentTemplate for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironmentTemplate +func (c *Proton) UpdateEnvironmentTemplate(input *UpdateEnvironmentTemplateInput) (*UpdateEnvironmentTemplateOutput, error) { + req, out := c.UpdateEnvironmentTemplateRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentTemplateWithContext is the same as UpdateEnvironmentTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironmentTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateEnvironmentTemplateWithContext(ctx aws.Context, input *UpdateEnvironmentTemplateInput, opts ...request.Option) (*UpdateEnvironmentTemplateOutput, error) { + req, out := c.UpdateEnvironmentTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnvironmentTemplateVersion = "UpdateEnvironmentTemplateVersion" + +// UpdateEnvironmentTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnvironmentTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateEnvironmentTemplateVersion for more information on using the UpdateEnvironmentTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateEnvironmentTemplateVersionRequest method. +// req, resp := client.UpdateEnvironmentTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironmentTemplateVersion +func (c *Proton) UpdateEnvironmentTemplateVersionRequest(input *UpdateEnvironmentTemplateVersionInput) (req *request.Request, output *UpdateEnvironmentTemplateVersionOutput) { + op := &request.Operation{ + Name: opUpdateEnvironmentTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateEnvironmentTemplateVersionInput{} + } + + output = &UpdateEnvironmentTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnvironmentTemplateVersion API operation for AWS Proton. +// +// Update a major or minor version of an environment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateEnvironmentTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateEnvironmentTemplateVersion +func (c *Proton) UpdateEnvironmentTemplateVersion(input *UpdateEnvironmentTemplateVersionInput) (*UpdateEnvironmentTemplateVersionOutput, error) { + req, out := c.UpdateEnvironmentTemplateVersionRequest(input) + return out, req.Send() +} + +// UpdateEnvironmentTemplateVersionWithContext is the same as UpdateEnvironmentTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnvironmentTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateEnvironmentTemplateVersionWithContext(ctx aws.Context, input *UpdateEnvironmentTemplateVersionInput, opts ...request.Option) (*UpdateEnvironmentTemplateVersionOutput, error) { + req, out := c.UpdateEnvironmentTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateService = "UpdateService" + +// UpdateServiceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateService operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateService for more information on using the UpdateService +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateServiceRequest method. +// req, resp := client.UpdateServiceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateService +func (c *Proton) UpdateServiceRequest(input *UpdateServiceInput) (req *request.Request, output *UpdateServiceOutput) { + op := &request.Operation{ + Name: opUpdateService, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateServiceInput{} + } + + output = &UpdateServiceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateService API operation for AWS Proton. +// +// Edit a service description or use a spec to add and delete service instances. +// +// Existing service instances and the service pipeline can't be edited using +// this API. They can only be deleted. +// +// Use the description parameter to modify the description. +// +// Edit the spec parameter to add or delete instances. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateService for usage and error information. +// +// Returned Error Types: +// * ServiceQuotaExceededException +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +// +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateService +func (c *Proton) UpdateService(input *UpdateServiceInput) (*UpdateServiceOutput, error) { + req, out := c.UpdateServiceRequest(input) + return out, req.Send() +} + +// UpdateServiceWithContext is the same as UpdateService with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateService for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateServiceWithContext(ctx aws.Context, input *UpdateServiceInput, opts ...request.Option) (*UpdateServiceOutput, error) { + req, out := c.UpdateServiceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateServiceInstance = "UpdateServiceInstance" + +// UpdateServiceInstanceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateServiceInstance operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateServiceInstance for more information on using the UpdateServiceInstance +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateServiceInstanceRequest method. +// req, resp := client.UpdateServiceInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceInstance +func (c *Proton) UpdateServiceInstanceRequest(input *UpdateServiceInstanceInput) (req *request.Request, output *UpdateServiceInstanceOutput) { + op := &request.Operation{ + Name: opUpdateServiceInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateServiceInstanceInput{} + } + + output = &UpdateServiceInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateServiceInstance API operation for AWS Proton. +// +// Update a service instance. +// +// There are four modes for updating a service instance as described in the +// following. The deploymentType field defines the mode. +// +// NONE +// +// In this mode, a deployment doesn't occur. Only the requested metadata parameters +// are updated. +// +// CURRENT_VERSION +// +// In this mode, the service instance is deployed and updated with the new spec +// that you provide. Only requested parameters are updated. Don’t include +// minor or major version parameters when you use this deployment-type. +// +// MINOR_VERSION +// +// In this mode, the service instance is deployed and updated with the published, +// recommended (latest) minor version of the current major version in use, by +// default. You can also specify a different minor version of the current major +// version in use. +// +// MAJOR_VERSION +// +// In this mode, the service instance is deployed and updated with the published, +// recommended (latest) major and minor version of the current template, by +// default. You can also specify a different major version that is higher than +// the major version in use and a minor version (optional). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateServiceInstance for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceInstance +func (c *Proton) UpdateServiceInstance(input *UpdateServiceInstanceInput) (*UpdateServiceInstanceOutput, error) { + req, out := c.UpdateServiceInstanceRequest(input) + return out, req.Send() +} + +// UpdateServiceInstanceWithContext is the same as UpdateServiceInstance with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateServiceInstance for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateServiceInstanceWithContext(ctx aws.Context, input *UpdateServiceInstanceInput, opts ...request.Option) (*UpdateServiceInstanceOutput, error) { + req, out := c.UpdateServiceInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateServicePipeline = "UpdateServicePipeline" + +// UpdateServicePipelineRequest generates a "aws/request.Request" representing the +// client's request for the UpdateServicePipeline operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateServicePipeline for more information on using the UpdateServicePipeline +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateServicePipelineRequest method. +// req, resp := client.UpdateServicePipelineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServicePipeline +func (c *Proton) UpdateServicePipelineRequest(input *UpdateServicePipelineInput) (req *request.Request, output *UpdateServicePipelineOutput) { + op := &request.Operation{ + Name: opUpdateServicePipeline, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateServicePipelineInput{} + } + + output = &UpdateServicePipelineOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateServicePipeline API operation for AWS Proton. +// +// Update the service pipeline. +// +// There are four modes for updating a service pipeline as described in the +// following. The deploymentType field defines the mode. +// +// NONE +// +// In this mode, a deployment doesn't occur. Only the requested metadata parameters +// are updated. +// +// CURRENT_VERSION +// +// In this mode, the service pipeline is deployed and updated with the new spec +// that you provide. Only requested parameters are updated. Don’t include +// minor or major version parameters when you use this deployment-type. +// +// MINOR_VERSION +// +// In this mode, the service pipeline is deployed and updated with the published, +// recommended (latest) minor version of the current major version in use, by +// default. You can also specify a different minor version of the current major +// version in use. +// +// MAJOR_VERSION +// +// In this mode, the service pipeline is deployed and updated with the published, +// recommended (latest) major and minor version of the current template by default. +// You can also specify a different major version that is higher than the major +// version in use and a minor version (optional). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateServicePipeline for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServicePipeline +func (c *Proton) UpdateServicePipeline(input *UpdateServicePipelineInput) (*UpdateServicePipelineOutput, error) { + req, out := c.UpdateServicePipelineRequest(input) + return out, req.Send() +} + +// UpdateServicePipelineWithContext is the same as UpdateServicePipeline with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateServicePipeline for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateServicePipelineWithContext(ctx aws.Context, input *UpdateServicePipelineInput, opts ...request.Option) (*UpdateServicePipelineOutput, error) { + req, out := c.UpdateServicePipelineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateServiceTemplate = "UpdateServiceTemplate" + +// UpdateServiceTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateServiceTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateServiceTemplate for more information on using the UpdateServiceTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateServiceTemplateRequest method. +// req, resp := client.UpdateServiceTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceTemplate +func (c *Proton) UpdateServiceTemplateRequest(input *UpdateServiceTemplateInput) (req *request.Request, output *UpdateServiceTemplateOutput) { + op := &request.Operation{ + Name: opUpdateServiceTemplate, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateServiceTemplateInput{} + } + + output = &UpdateServiceTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateServiceTemplate API operation for AWS Proton. +// +// Update a service template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateServiceTemplate for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceTemplate +func (c *Proton) UpdateServiceTemplate(input *UpdateServiceTemplateInput) (*UpdateServiceTemplateOutput, error) { + req, out := c.UpdateServiceTemplateRequest(input) + return out, req.Send() +} + +// UpdateServiceTemplateWithContext is the same as UpdateServiceTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateServiceTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateServiceTemplateWithContext(ctx aws.Context, input *UpdateServiceTemplateInput, opts ...request.Option) (*UpdateServiceTemplateOutput, error) { + req, out := c.UpdateServiceTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateServiceTemplateVersion = "UpdateServiceTemplateVersion" + +// UpdateServiceTemplateVersionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateServiceTemplateVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateServiceTemplateVersion for more information on using the UpdateServiceTemplateVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateServiceTemplateVersionRequest method. +// req, resp := client.UpdateServiceTemplateVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceTemplateVersion +func (c *Proton) UpdateServiceTemplateVersionRequest(input *UpdateServiceTemplateVersionInput) (req *request.Request, output *UpdateServiceTemplateVersionOutput) { + op := &request.Operation{ + Name: opUpdateServiceTemplateVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateServiceTemplateVersionInput{} + } + + output = &UpdateServiceTemplateVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateServiceTemplateVersion API operation for AWS Proton. +// +// Update a major or minor version of a service template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Proton's +// API operation UpdateServiceTemplateVersion for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +// +// * AccessDeniedException +// There isn't sufficient access for performing this action. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// * ConflictException +// The request couldn't be made due to a conflicting operation or resource. +// +// * ResourceNotFoundException +// The requested resource wasn't found. +// +// * InternalServerException +// The request failed to register with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceTemplateVersion +func (c *Proton) UpdateServiceTemplateVersion(input *UpdateServiceTemplateVersionInput) (*UpdateServiceTemplateVersionOutput, error) { + req, out := c.UpdateServiceTemplateVersionRequest(input) + return out, req.Send() +} + +// UpdateServiceTemplateVersionWithContext is the same as UpdateServiceTemplateVersion with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateServiceTemplateVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Proton) UpdateServiceTemplateVersionWithContext(ctx aws.Context, input *UpdateServiceTemplateVersionInput, opts ...request.Option) (*UpdateServiceTemplateVersionOutput, error) { + req, out := c.UpdateServiceTemplateVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +type AcceptEnvironmentAccountConnectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the environment account connection. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation +func (s AcceptEnvironmentAccountConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AcceptEnvironmentAccountConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AcceptEnvironmentAccountConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AcceptEnvironmentAccountConnectionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *AcceptEnvironmentAccountConnectionInput) SetId(v string) *AcceptEnvironmentAccountConnectionInput { + s.Id = &v + return s +} + +type AcceptEnvironmentAccountConnectionOutput struct { + _ struct{} `type:"structure"` + + // The environment account connection data that's returned by AWS Proton. + // + // EnvironmentAccountConnection is a required field + EnvironmentAccountConnection *EnvironmentAccountConnection `locationName:"environmentAccountConnection" type:"structure" required:"true"` +} + +// String returns the string representation +func (s AcceptEnvironmentAccountConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AcceptEnvironmentAccountConnectionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnection sets the EnvironmentAccountConnection field's value. +func (s *AcceptEnvironmentAccountConnectionOutput) SetEnvironmentAccountConnection(v *EnvironmentAccountConnection) *AcceptEnvironmentAccountConnectionOutput { + s.EnvironmentAccountConnection = v + return s +} + +// There isn't sufficient access for performing this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The AWS Proton pipeline service role data. +type AccountSettings struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AWS Proton pipeline service role. + PipelineServiceRoleArn *string `locationName:"pipelineServiceRoleArn" min:"1" type:"string"` +} + +// String returns the string representation +func (s AccountSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccountSettings) GoString() string { + return s.String() +} + +// SetPipelineServiceRoleArn sets the PipelineServiceRoleArn field's value. +func (s *AccountSettings) SetPipelineServiceRoleArn(v string) *AccountSettings { + s.PipelineServiceRoleArn = &v + return s +} + +type CancelEnvironmentDeploymentInput struct { + _ struct{} `type:"structure"` + + // The name of the environment with the deployment to cancel. + // + // EnvironmentName is a required field + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CancelEnvironmentDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelEnvironmentDeploymentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelEnvironmentDeploymentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelEnvironmentDeploymentInput"} + if s.EnvironmentName == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentName")) + } + if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *CancelEnvironmentDeploymentInput) SetEnvironmentName(v string) *CancelEnvironmentDeploymentInput { + s.EnvironmentName = &v + return s +} + +type CancelEnvironmentDeploymentOutput struct { + _ struct{} `type:"structure"` + + // The environment summary data that's returned by AWS Proton. + // + // Environment is a required field + Environment *Environment `locationName:"environment" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CancelEnvironmentDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelEnvironmentDeploymentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *CancelEnvironmentDeploymentOutput) SetEnvironment(v *Environment) *CancelEnvironmentDeploymentOutput { + s.Environment = v + return s +} + +type CancelServiceInstanceDeploymentInput struct { + _ struct{} `type:"structure"` + + // The name of the service instance with the deployment to cancel. + // + // ServiceInstanceName is a required field + ServiceInstanceName *string `locationName:"serviceInstanceName" min:"1" type:"string" required:"true"` + + // The name of the service with the service instance deployment to cancel. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CancelServiceInstanceDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelServiceInstanceDeploymentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelServiceInstanceDeploymentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelServiceInstanceDeploymentInput"} + if s.ServiceInstanceName == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceInstanceName")) + } + if s.ServiceInstanceName != nil && len(*s.ServiceInstanceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceInstanceName", 1)) + } + if s.ServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceName")) + } + if s.ServiceName != nil && len(*s.ServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetServiceInstanceName sets the ServiceInstanceName field's value. +func (s *CancelServiceInstanceDeploymentInput) SetServiceInstanceName(v string) *CancelServiceInstanceDeploymentInput { + s.ServiceInstanceName = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *CancelServiceInstanceDeploymentInput) SetServiceName(v string) *CancelServiceInstanceDeploymentInput { + s.ServiceName = &v + return s +} + +type CancelServiceInstanceDeploymentOutput struct { + _ struct{} `type:"structure"` + + // The service instance summary data that's returned by AWS Proton. + // + // ServiceInstance is a required field + ServiceInstance *ServiceInstance `locationName:"serviceInstance" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CancelServiceInstanceDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelServiceInstanceDeploymentOutput) GoString() string { + return s.String() +} + +// SetServiceInstance sets the ServiceInstance field's value. +func (s *CancelServiceInstanceDeploymentOutput) SetServiceInstance(v *ServiceInstance) *CancelServiceInstanceDeploymentOutput { + s.ServiceInstance = v + return s +} + +type CancelServicePipelineDeploymentInput struct { + _ struct{} `type:"structure"` + + // The name of the service with the service pipeline deployment to cancel. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CancelServicePipelineDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelServicePipelineDeploymentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelServicePipelineDeploymentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelServicePipelineDeploymentInput"} + if s.ServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceName")) + } + if s.ServiceName != nil && len(*s.ServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetServiceName sets the ServiceName field's value. +func (s *CancelServicePipelineDeploymentInput) SetServiceName(v string) *CancelServicePipelineDeploymentInput { + s.ServiceName = &v + return s +} + +type CancelServicePipelineDeploymentOutput struct { + _ struct{} `type:"structure"` + + // The service pipeline detail data that's returned by AWS Proton. + // + // Pipeline is a required field + Pipeline *ServicePipeline `locationName:"pipeline" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CancelServicePipelineDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CancelServicePipelineDeploymentOutput) GoString() string { + return s.String() +} + +// SetPipeline sets the Pipeline field's value. +func (s *CancelServicePipelineDeploymentOutput) SetPipeline(v *ServicePipeline) *CancelServicePipelineDeploymentOutput { + s.Pipeline = v + return s +} + +// Compatible environment template data. +type CompatibleEnvironmentTemplate struct { + _ struct{} `type:"structure"` + + // The major version of the compatible environment template. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The compatible environment template name. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CompatibleEnvironmentTemplate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CompatibleEnvironmentTemplate) GoString() string { + return s.String() +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *CompatibleEnvironmentTemplate) SetMajorVersion(v string) *CompatibleEnvironmentTemplate { + s.MajorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CompatibleEnvironmentTemplate) SetTemplateName(v string) *CompatibleEnvironmentTemplate { + s.TemplateName = &v + return s +} + +// Compatible environment template data. +type CompatibleEnvironmentTemplateInput struct { + _ struct{} `type:"structure"` + + // The major version of the compatible environment template. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The compatible environment template name. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CompatibleEnvironmentTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CompatibleEnvironmentTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CompatibleEnvironmentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CompatibleEnvironmentTemplateInput"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *CompatibleEnvironmentTemplateInput) SetMajorVersion(v string) *CompatibleEnvironmentTemplateInput { + s.MajorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CompatibleEnvironmentTemplateInput) SetTemplateName(v string) *CompatibleEnvironmentTemplateInput { + s.TemplateName = &v + return s +} + +// The request couldn't be made due to a conflicting operation or resource. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateEnvironmentAccountConnectionInput struct { + _ struct{} `type:"structure"` + + // When included, if two identicial requests are made with the same client token, + // AWS Proton returns the environment account connection that the first request + // created. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // The name of the AWS Proton environment that's created in the associated management + // account. + // + // EnvironmentName is a required field + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"` + + // The ID of the management account that accepts or rejects the environment + // account connection. You create an manage the AWS Proton environment in this + // account. If the management account accepts the environment account connection, + // AWS Proton can use the associated IAM role to provision environment infrastructure + // resources in the associated environment account. + // + // ManagementAccountId is a required field + ManagementAccountId *string `locationName:"managementAccountId" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM service role that's created in + // the environment account. AWS Proton uses this role to provision infrastructure + // resources in the associated environment account. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentAccountConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentAccountConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentAccountConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentAccountConnectionInput"} + if s.EnvironmentName == nil { + invalidParams.Add(request.NewErrParamRequired("EnvironmentName")) + } + if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1)) + } + if s.ManagementAccountId == nil { + invalidParams.Add(request.NewErrParamRequired("ManagementAccountId")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateEnvironmentAccountConnectionInput) SetClientToken(v string) *CreateEnvironmentAccountConnectionInput { + s.ClientToken = &v + return s +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *CreateEnvironmentAccountConnectionInput) SetEnvironmentName(v string) *CreateEnvironmentAccountConnectionInput { + s.EnvironmentName = &v + return s +} + +// SetManagementAccountId sets the ManagementAccountId field's value. +func (s *CreateEnvironmentAccountConnectionInput) SetManagementAccountId(v string) *CreateEnvironmentAccountConnectionInput { + s.ManagementAccountId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateEnvironmentAccountConnectionInput) SetRoleArn(v string) *CreateEnvironmentAccountConnectionInput { + s.RoleArn = &v + return s +} + +type CreateEnvironmentAccountConnectionOutput struct { + _ struct{} `type:"structure"` + + // The environment account connection detail data that's returned by AWS Proton. + // + // EnvironmentAccountConnection is a required field + EnvironmentAccountConnection *EnvironmentAccountConnection `locationName:"environmentAccountConnection" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentAccountConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentAccountConnectionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnection sets the EnvironmentAccountConnection field's value. +func (s *CreateEnvironmentAccountConnectionOutput) SetEnvironmentAccountConnection(v *EnvironmentAccountConnection) *CreateEnvironmentAccountConnectionOutput { + s.EnvironmentAccountConnection = v + return s +} + +type CreateEnvironmentInput struct { + _ struct{} `type:"structure"` + + // A description of the environment that's being created and deployed. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the environment account connection that you provide if you're provisioning + // your environment infrastructure resources to an environment account. You + // must include either the environmentAccountConnectionId or protonServiceRoleArn + // parameter and value. For more information, see Environment account connections + // (proton/latest/adminguide/ag-env-account-connections.html) in the AWS Proton + // Administration guide. + EnvironmentAccountConnectionId *string `locationName:"environmentAccountConnectionId" type:"string"` + + // The name of the environment. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the AWS Proton service role that allows + // AWS Proton to make calls to other services on your behalf. You must include + // either the environmentAccountConnectionId or protonServiceRoleArn parameter + // and value. + ProtonServiceRoleArn *string `locationName:"protonServiceRoleArn" min:"1" type:"string"` + + // A link to a YAML formatted spec file that provides inputs as defined in the + // environment template bundle schema file. For more information, see Environments + // (https://docs.aws.amazon.com/proton/latest/adminguide/ag-managing-environments.html) + // in the AWS Proton Administration Guide. + // + // Spec is a required field + Spec *string `locationName:"spec" min:"1" type:"string" required:"true" sensitive:"true"` + + // Create tags for your environment. For more information, see AWS Proton resources + // and tagging in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) + // or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). + Tags []*Tag `locationName:"tags" type:"list"` + + // The ID of the major version of the environment template. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of the environment template. + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string"` + + // The name of the environment template. For more information, see Environment + // Templates (https://docs.aws.amazon.com/proton/latest/adminguide/ag-env-templates.html) + // in the AWS Proton Administration Guide. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ProtonServiceRoleArn != nil && len(*s.ProtonServiceRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProtonServiceRoleArn", 1)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.Spec != nil && len(*s.Spec) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Spec", 1)) + } + if s.TemplateMajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateMajorVersion")) + } + if s.TemplateMajorVersion != nil && len(*s.TemplateMajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMajorVersion", 1)) + } + if s.TemplateMinorVersion != nil && len(*s.TemplateMinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentInput) SetDescription(v string) *CreateEnvironmentInput { + s.Description = &v + return s +} + +// SetEnvironmentAccountConnectionId sets the EnvironmentAccountConnectionId field's value. +func (s *CreateEnvironmentInput) SetEnvironmentAccountConnectionId(v string) *CreateEnvironmentInput { + s.EnvironmentAccountConnectionId = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentInput) SetName(v string) *CreateEnvironmentInput { + s.Name = &v + return s +} + +// SetProtonServiceRoleArn sets the ProtonServiceRoleArn field's value. +func (s *CreateEnvironmentInput) SetProtonServiceRoleArn(v string) *CreateEnvironmentInput { + s.ProtonServiceRoleArn = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *CreateEnvironmentInput) SetSpec(v string) *CreateEnvironmentInput { + s.Spec = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateEnvironmentInput) SetTags(v []*Tag) *CreateEnvironmentInput { + s.Tags = v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *CreateEnvironmentInput) SetTemplateMajorVersion(v string) *CreateEnvironmentInput { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *CreateEnvironmentInput) SetTemplateMinorVersion(v string) *CreateEnvironmentInput { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateEnvironmentInput) SetTemplateName(v string) *CreateEnvironmentInput { + s.TemplateName = &v + return s +} + +type CreateEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The environment detail data that's returned by AWS Proton. + // + // Environment is a required field + Environment *Environment `locationName:"environment" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *CreateEnvironmentOutput) SetEnvironment(v *Environment) *CreateEnvironmentOutput { + s.Environment = v + return s +} + +type CreateEnvironmentTemplateInput struct { + _ struct{} `type:"structure"` + + // A description of the environment template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The environment template name as displayed in the developer interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // A customer provided encryption key that AWS Proton uses to encrypt data. + EncryptionKey *string `locationName:"encryptionKey" min:"1" type:"string"` + + // The name of the environment template. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // When included, indicates that the environment template is for customer provisioned + // and managed infrastructure. + Provisioning *string `locationName:"provisioning" type:"string" enum:"Provisioning"` + + // Create tags for your environment template. For more information, see AWS + // Proton resources and tagging in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) + // or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation +func (s CreateEnvironmentTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentTemplateInput"} + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.EncryptionKey != nil && len(*s.EncryptionKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EncryptionKey", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentTemplateInput) SetDescription(v string) *CreateEnvironmentTemplateInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *CreateEnvironmentTemplateInput) SetDisplayName(v string) *CreateEnvironmentTemplateInput { + s.DisplayName = &v + return s +} + +// SetEncryptionKey sets the EncryptionKey field's value. +func (s *CreateEnvironmentTemplateInput) SetEncryptionKey(v string) *CreateEnvironmentTemplateInput { + s.EncryptionKey = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateEnvironmentTemplateInput) SetName(v string) *CreateEnvironmentTemplateInput { + s.Name = &v + return s +} + +// SetProvisioning sets the Provisioning field's value. +func (s *CreateEnvironmentTemplateInput) SetProvisioning(v string) *CreateEnvironmentTemplateInput { + s.Provisioning = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateEnvironmentTemplateInput) SetTags(v []*Tag) *CreateEnvironmentTemplateInput { + s.Tags = v + return s +} + +type CreateEnvironmentTemplateOutput struct { + _ struct{} `type:"structure"` + + // The environment template detail data that's returned by AWS Proton. + // + // EnvironmentTemplate is a required field + EnvironmentTemplate *EnvironmentTemplate `locationName:"environmentTemplate" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentTemplateOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplate sets the EnvironmentTemplate field's value. +func (s *CreateEnvironmentTemplateOutput) SetEnvironmentTemplate(v *EnvironmentTemplate) *CreateEnvironmentTemplateOutput { + s.EnvironmentTemplate = v + return s +} + +type CreateEnvironmentTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // When included, if two identicial requests are made with the same client token, + // AWS Proton returns the environment template version that the first request + // created. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // A description of the new version of an environment template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // To create a new minor version of the environment template, include a majorVersion. + // + // To create a new major and minor version of the environment template, exclude + // majorVersion. + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string"` + + // An object that includes the template bundle S3 bucket path and name for the + // new version of an template. + // + // Source is a required field + Source *TemplateVersionSourceInput `locationName:"source" type:"structure" required:"true"` + + // Create tags for a new version of an environment template. + Tags []*Tag `locationName:"tags" type:"list"` + + // The name of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEnvironmentTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentTemplateVersionInput"} + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.Source == nil { + invalidParams.Add(request.NewErrParamRequired("Source")) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + if s.Source != nil { + if err := s.Source.Validate(); err != nil { + invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateEnvironmentTemplateVersionInput) SetClientToken(v string) *CreateEnvironmentTemplateVersionInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateEnvironmentTemplateVersionInput) SetDescription(v string) *CreateEnvironmentTemplateVersionInput { + s.Description = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *CreateEnvironmentTemplateVersionInput) SetMajorVersion(v string) *CreateEnvironmentTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetSource sets the Source field's value. +func (s *CreateEnvironmentTemplateVersionInput) SetSource(v *TemplateVersionSourceInput) *CreateEnvironmentTemplateVersionInput { + s.Source = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateEnvironmentTemplateVersionInput) SetTags(v []*Tag) *CreateEnvironmentTemplateVersionInput { + s.Tags = v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateEnvironmentTemplateVersionInput) SetTemplateName(v string) *CreateEnvironmentTemplateVersionInput { + s.TemplateName = &v + return s +} + +type CreateEnvironmentTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The environment template detail data that's returned by AWS Proton. + // + // EnvironmentTemplateVersion is a required field + EnvironmentTemplateVersion *EnvironmentTemplateVersion `locationName:"environmentTemplateVersion" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateEnvironmentTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateEnvironmentTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplateVersion sets the EnvironmentTemplateVersion field's value. +func (s *CreateEnvironmentTemplateVersionOutput) SetEnvironmentTemplateVersion(v *EnvironmentTemplateVersion) *CreateEnvironmentTemplateVersionOutput { + s.EnvironmentTemplateVersion = v + return s +} + +type CreateServiceInput struct { + _ struct{} `type:"structure"` + + // 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. + BranchName *string `locationName:"branchName" min:"1" type:"string"` + + // A description of the AWS Proton service. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The service name. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the repository connection. For more information, see Set up repository + // connection (https://docs.aws.amazon.com/proton/latest/adminguide/setting-up-for-service.html#settingSS-up-vcontrol) + // in the AWS Proton Administration Guide and Getting started (https://docs.aws.amazon.com/proton/latest/userguide/ug-getting-started.html#getting-started-step1) + // in the AWS Proton User Guide. Don't include this parameter if your service + // template doesn't include a service pipeline. + RepositoryConnectionArn *string `locationName:"repositoryConnectionArn" min:"1" type:"string"` + + // The ID of the code repository. Don't include this parameter if your service + // template doesn't include a service pipeline. + RepositoryId *string `locationName:"repositoryId" min:"1" type:"string"` + + // 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 (https://docs.aws.amazon.com/proton/latest/adminguide/ag-create-svc.html.html) + // in the AWS Proton Administration Guide and Create a service (https://docs.aws.amazon.com/proton/latest/userguide/ug-svc-create.html) + // in the AWS Proton User Guide. + // + // Spec is a required field + Spec *string `locationName:"spec" min:"1" type:"string" required:"true" sensitive:"true"` + + // Create tags for your service. For more information, see AWS Proton resources + // and tagging in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) + // or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). + Tags []*Tag `locationName:"tags" type:"list"` + + // The ID of the major version of the service template that was used to create + // the service. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of the service template that was used to create + // the service. + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string"` + + // The name of the service template that's used to create the service. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateServiceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateServiceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateServiceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateServiceInput"} + if s.BranchName != nil && len(*s.BranchName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BranchName", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.RepositoryConnectionArn != nil && len(*s.RepositoryConnectionArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RepositoryConnectionArn", 1)) + } + if s.RepositoryId != nil && len(*s.RepositoryId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RepositoryId", 1)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.Spec != nil && len(*s.Spec) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Spec", 1)) + } + if s.TemplateMajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateMajorVersion")) + } + if s.TemplateMajorVersion != nil && len(*s.TemplateMajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMajorVersion", 1)) + } + if s.TemplateMinorVersion != nil && len(*s.TemplateMinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBranchName sets the BranchName field's value. +func (s *CreateServiceInput) SetBranchName(v string) *CreateServiceInput { + s.BranchName = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateServiceInput) SetDescription(v string) *CreateServiceInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateServiceInput) SetName(v string) *CreateServiceInput { + s.Name = &v + return s +} + +// SetRepositoryConnectionArn sets the RepositoryConnectionArn field's value. +func (s *CreateServiceInput) SetRepositoryConnectionArn(v string) *CreateServiceInput { + s.RepositoryConnectionArn = &v + return s +} + +// SetRepositoryId sets the RepositoryId field's value. +func (s *CreateServiceInput) SetRepositoryId(v string) *CreateServiceInput { + s.RepositoryId = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *CreateServiceInput) SetSpec(v string) *CreateServiceInput { + s.Spec = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateServiceInput) SetTags(v []*Tag) *CreateServiceInput { + s.Tags = v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *CreateServiceInput) SetTemplateMajorVersion(v string) *CreateServiceInput { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *CreateServiceInput) SetTemplateMinorVersion(v string) *CreateServiceInput { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateServiceInput) SetTemplateName(v string) *CreateServiceInput { + s.TemplateName = &v + return s +} + +type CreateServiceOutput struct { + _ struct{} `type:"structure"` + + // The service detail data that's returned by AWS Proton. + // + // Service is a required field + Service *Service `locationName:"service" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateServiceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateServiceOutput) GoString() string { + return s.String() +} + +// SetService sets the Service field's value. +func (s *CreateServiceOutput) SetService(v *Service) *CreateServiceOutput { + s.Service = v + return s +} + +type CreateServiceTemplateInput struct { + _ struct{} `type:"structure"` + + // A description of the service template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The name of the service template as displayed in the developer interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // A customer provided encryption key that's used to encrypt data. + EncryptionKey *string `locationName:"encryptionKey" min:"1" type:"string"` + + // The name of the service template. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // AWS Proton includes a service pipeline for your service by default. When + // included, this parameter indicates that an AWS Proton service pipeline won't + // be included for your service. Once specified, this parameter can't be changed. + // For more information, see Service template bundles (https://docs.aws.amazon.com/proton/latest/adminguide/ag-svc-template-bundles.html) + // in the AWS Proton Administration Guide. + PipelineProvisioning *string `locationName:"pipelineProvisioning" type:"string" enum:"Provisioning"` + + // Create tags for your service template. For more information, see AWS Proton + // resources and tagging in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/resources.html) + // or AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/resources.html). + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation +func (s CreateServiceTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateServiceTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateServiceTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateServiceTemplateInput"} + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.EncryptionKey != nil && len(*s.EncryptionKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EncryptionKey", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateServiceTemplateInput) SetDescription(v string) *CreateServiceTemplateInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *CreateServiceTemplateInput) SetDisplayName(v string) *CreateServiceTemplateInput { + s.DisplayName = &v + return s +} + +// SetEncryptionKey sets the EncryptionKey field's value. +func (s *CreateServiceTemplateInput) SetEncryptionKey(v string) *CreateServiceTemplateInput { + s.EncryptionKey = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateServiceTemplateInput) SetName(v string) *CreateServiceTemplateInput { + s.Name = &v + return s +} + +// SetPipelineProvisioning sets the PipelineProvisioning field's value. +func (s *CreateServiceTemplateInput) SetPipelineProvisioning(v string) *CreateServiceTemplateInput { + s.PipelineProvisioning = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateServiceTemplateInput) SetTags(v []*Tag) *CreateServiceTemplateInput { + s.Tags = v + return s +} + +type CreateServiceTemplateOutput struct { + _ struct{} `type:"structure"` + + // The service template detail data that's returned by AWS Proton. + // + // ServiceTemplate is a required field + ServiceTemplate *ServiceTemplate `locationName:"serviceTemplate" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateServiceTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateServiceTemplateOutput) GoString() string { + return s.String() +} + +// SetServiceTemplate sets the ServiceTemplate field's value. +func (s *CreateServiceTemplateOutput) SetServiceTemplate(v *ServiceTemplate) *CreateServiceTemplateOutput { + s.ServiceTemplate = v + return s +} + +type CreateServiceTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // When included, if two identicial requests are made with the same client token, + // AWS Proton returns the service template version that the first request created. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // An array of compatible environment template objects for the new version of + // a service template. + // + // CompatibleEnvironmentTemplates is a required field + CompatibleEnvironmentTemplates []*CompatibleEnvironmentTemplateInput `locationName:"compatibleEnvironmentTemplates" min:"1" type:"list" required:"true"` + + // A description of the new version of a service template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // To create a new minor version of the service template, include a majorVersion. + // + // To create a new major and minor version of the service template, exclude + // majorVersion. + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string"` + + // An object that includes the template bundle S3 bucket path and name for the + // new version of a service template. + // + // Source is a required field + Source *TemplateVersionSourceInput `locationName:"source" type:"structure" required:"true"` + + // Create tags for a new version of a service template. + Tags []*Tag `locationName:"tags" type:"list"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateServiceTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateServiceTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateServiceTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateServiceTemplateVersionInput"} + if s.CompatibleEnvironmentTemplates == nil { + invalidParams.Add(request.NewErrParamRequired("CompatibleEnvironmentTemplates")) + } + if s.CompatibleEnvironmentTemplates != nil && len(s.CompatibleEnvironmentTemplates) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CompatibleEnvironmentTemplates", 1)) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.Source == nil { + invalidParams.Add(request.NewErrParamRequired("Source")) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + if s.CompatibleEnvironmentTemplates != nil { + for i, v := range s.CompatibleEnvironmentTemplates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CompatibleEnvironmentTemplates", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Source != nil { + if err := s.Source.Validate(); err != nil { + invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateServiceTemplateVersionInput) SetClientToken(v string) *CreateServiceTemplateVersionInput { + s.ClientToken = &v + return s +} + +// SetCompatibleEnvironmentTemplates sets the CompatibleEnvironmentTemplates field's value. +func (s *CreateServiceTemplateVersionInput) SetCompatibleEnvironmentTemplates(v []*CompatibleEnvironmentTemplateInput) *CreateServiceTemplateVersionInput { + s.CompatibleEnvironmentTemplates = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateServiceTemplateVersionInput) SetDescription(v string) *CreateServiceTemplateVersionInput { + s.Description = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *CreateServiceTemplateVersionInput) SetMajorVersion(v string) *CreateServiceTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetSource sets the Source field's value. +func (s *CreateServiceTemplateVersionInput) SetSource(v *TemplateVersionSourceInput) *CreateServiceTemplateVersionInput { + s.Source = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateServiceTemplateVersionInput) SetTags(v []*Tag) *CreateServiceTemplateVersionInput { + s.Tags = v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateServiceTemplateVersionInput) SetTemplateName(v string) *CreateServiceTemplateVersionInput { + s.TemplateName = &v + return s +} + +type CreateServiceTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The service template version summary of detail data that's returned by AWS + // Proton. + // + // ServiceTemplateVersion is a required field + ServiceTemplateVersion *ServiceTemplateVersion `locationName:"serviceTemplateVersion" type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateServiceTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateServiceTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetServiceTemplateVersion sets the ServiceTemplateVersion field's value. +func (s *CreateServiceTemplateVersionOutput) SetServiceTemplateVersion(v *ServiceTemplateVersion) *CreateServiceTemplateVersionOutput { + s.ServiceTemplateVersion = v + return s +} + +type DeleteEnvironmentAccountConnectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the environment account connection to delete. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteEnvironmentAccountConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentAccountConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentAccountConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentAccountConnectionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *DeleteEnvironmentAccountConnectionInput) SetId(v string) *DeleteEnvironmentAccountConnectionInput { + s.Id = &v + return s +} + +type DeleteEnvironmentAccountConnectionOutput struct { + _ struct{} `type:"structure"` + + // The environment account connection detail data that's returned by AWS Proton. + EnvironmentAccountConnection *EnvironmentAccountConnection `locationName:"environmentAccountConnection" type:"structure"` +} + +// String returns the string representation +func (s DeleteEnvironmentAccountConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentAccountConnectionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnection sets the EnvironmentAccountConnection field's value. +func (s *DeleteEnvironmentAccountConnectionOutput) SetEnvironmentAccountConnection(v *EnvironmentAccountConnection) *DeleteEnvironmentAccountConnectionOutput { + s.EnvironmentAccountConnection = v + return s +} + +type DeleteEnvironmentInput struct { + _ struct{} `type:"structure"` + + // The name of the environment to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteEnvironmentInput) SetName(v string) *DeleteEnvironmentInput { + s.Name = &v + return s +} + +type DeleteEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The environment detail data that's returned by AWS Proton. + Environment *Environment `locationName:"environment" type:"structure"` +} + +// String returns the string representation +func (s DeleteEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *DeleteEnvironmentOutput) SetEnvironment(v *Environment) *DeleteEnvironmentOutput { + s.Environment = v + return s +} + +type DeleteEnvironmentTemplateInput struct { + _ struct{} `type:"structure"` + + // The name of the environment template to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteEnvironmentTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentTemplateInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteEnvironmentTemplateInput) SetName(v string) *DeleteEnvironmentTemplateInput { + s.Name = &v + return s +} + +type DeleteEnvironmentTemplateOutput struct { + _ struct{} `type:"structure"` + + // The environment template detail data that's returned by AWS Proton. + EnvironmentTemplate *EnvironmentTemplate `locationName:"environmentTemplate" type:"structure"` +} + +// String returns the string representation +func (s DeleteEnvironmentTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentTemplateOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplate sets the EnvironmentTemplate field's value. +func (s *DeleteEnvironmentTemplateOutput) SetEnvironmentTemplate(v *EnvironmentTemplate) *DeleteEnvironmentTemplateOutput { + s.EnvironmentTemplate = v + return s +} + +type DeleteEnvironmentTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // The environment template major version to delete. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The environment template minor version to delete. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The name of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteEnvironmentTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEnvironmentTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentTemplateVersionInput"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MinorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MinorVersion")) + } + if s.MinorVersion != nil && len(*s.MinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *DeleteEnvironmentTemplateVersionInput) SetMajorVersion(v string) *DeleteEnvironmentTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *DeleteEnvironmentTemplateVersionInput) SetMinorVersion(v string) *DeleteEnvironmentTemplateVersionInput { + s.MinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *DeleteEnvironmentTemplateVersionInput) SetTemplateName(v string) *DeleteEnvironmentTemplateVersionInput { + s.TemplateName = &v + return s +} + +type DeleteEnvironmentTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The environment template version detail data that's returned by AWS Proton. + EnvironmentTemplateVersion *EnvironmentTemplateVersion `locationName:"environmentTemplateVersion" type:"structure"` +} + +// String returns the string representation +func (s DeleteEnvironmentTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteEnvironmentTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplateVersion sets the EnvironmentTemplateVersion field's value. +func (s *DeleteEnvironmentTemplateVersionOutput) SetEnvironmentTemplateVersion(v *EnvironmentTemplateVersion) *DeleteEnvironmentTemplateVersionOutput { + s.EnvironmentTemplateVersion = v + return s +} + +type DeleteServiceInput struct { + _ struct{} `type:"structure"` + + // The name of the service to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteServiceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteServiceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteServiceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteServiceInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteServiceInput) SetName(v string) *DeleteServiceInput { + s.Name = &v + return s +} + +type DeleteServiceOutput struct { + _ struct{} `type:"structure"` + + // The service detail data that's returned by AWS Proton. + Service *Service `locationName:"service" type:"structure"` +} + +// String returns the string representation +func (s DeleteServiceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteServiceOutput) GoString() string { + return s.String() +} + +// SetService sets the Service field's value. +func (s *DeleteServiceOutput) SetService(v *Service) *DeleteServiceOutput { + s.Service = v + return s +} + +type DeleteServiceTemplateInput struct { + _ struct{} `type:"structure"` + + // The name of the service template to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteServiceTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteServiceTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteServiceTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteServiceTemplateInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteServiceTemplateInput) SetName(v string) *DeleteServiceTemplateInput { + s.Name = &v + return s +} + +type DeleteServiceTemplateOutput struct { + _ struct{} `type:"structure"` + + // The service template detail data that's returned by AWS Proton. + ServiceTemplate *ServiceTemplate `locationName:"serviceTemplate" type:"structure"` +} + +// String returns the string representation +func (s DeleteServiceTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteServiceTemplateOutput) GoString() string { + return s.String() +} + +// SetServiceTemplate sets the ServiceTemplate field's value. +func (s *DeleteServiceTemplateOutput) SetServiceTemplate(v *ServiceTemplate) *DeleteServiceTemplateOutput { + s.ServiceTemplate = v + return s +} + +type DeleteServiceTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // The service template major version to delete. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The service template minor version to delete. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteServiceTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteServiceTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteServiceTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteServiceTemplateVersionInput"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MinorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MinorVersion")) + } + if s.MinorVersion != nil && len(*s.MinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *DeleteServiceTemplateVersionInput) SetMajorVersion(v string) *DeleteServiceTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *DeleteServiceTemplateVersionInput) SetMinorVersion(v string) *DeleteServiceTemplateVersionInput { + s.MinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *DeleteServiceTemplateVersionInput) SetTemplateName(v string) *DeleteServiceTemplateVersionInput { + s.TemplateName = &v + return s +} + +type DeleteServiceTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The service template version detail data that's returned by AWS Proton. + ServiceTemplateVersion *ServiceTemplateVersion `locationName:"serviceTemplateVersion" type:"structure"` +} + +// String returns the string representation +func (s DeleteServiceTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteServiceTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetServiceTemplateVersion sets the ServiceTemplateVersion field's value. +func (s *DeleteServiceTemplateVersionOutput) SetServiceTemplateVersion(v *ServiceTemplateVersion) *DeleteServiceTemplateVersionOutput { + s.ServiceTemplateVersion = v + return s +} + +// The environment detail data. An AWS Proton environment is a set resources +// shared across an AWS Proton service. +type Environment struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the environment. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the environment was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The environment deployment status. + // + // DeploymentStatus is a required field + DeploymentStatus *string `locationName:"deploymentStatus" type:"string" required:"true" enum:"DeploymentStatus"` + + // An environment deployment status message. + DeploymentStatusMessage *string `locationName:"deploymentStatusMessage" type:"string" sensitive:"true"` + + // The description of the environment. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the environment account connection that's used to provision infrastructure + // resources in an environment account. + EnvironmentAccountConnectionId *string `locationName:"environmentAccountConnectionId" type:"string"` + + // The ID of the environment account that the environment infrastructure resources + // are provisioned in. + EnvironmentAccountId *string `locationName:"environmentAccountId" type:"string"` + + // The time when a deployment of the environment was last attempted. + // + // LastDeploymentAttemptedAt is a required field + LastDeploymentAttemptedAt *time.Time `locationName:"lastDeploymentAttemptedAt" type:"timestamp" required:"true"` + + // The time when the environment was last deployed successfully. + // + // LastDeploymentSucceededAt is a required field + LastDeploymentSucceededAt *time.Time `locationName:"lastDeploymentSucceededAt" type:"timestamp" required:"true"` + + // The name of the environment. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the AWS Proton service role that allows AWS Proton to make calls + // to other services on your behalf. + ProtonServiceRoleArn *string `locationName:"protonServiceRoleArn" min:"1" type:"string"` + + // When included, indicates that the environment template is for customer provisioned + // and managed infrastructure. + Provisioning *string `locationName:"provisioning" type:"string" enum:"Provisioning"` + + // The environment spec. + Spec *string `locationName:"spec" min:"1" type:"string" sensitive:"true"` + + // The ID of the major version of the environment template. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of the environment template. + // + // TemplateMinorVersion is a required field + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string" required:"true"` + + // The ARN of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s Environment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Environment) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Environment) SetArn(v string) *Environment { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Environment) SetCreatedAt(v time.Time) *Environment { + s.CreatedAt = &v + return s +} + +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *Environment) SetDeploymentStatus(v string) *Environment { + s.DeploymentStatus = &v + return s +} + +// SetDeploymentStatusMessage sets the DeploymentStatusMessage field's value. +func (s *Environment) SetDeploymentStatusMessage(v string) *Environment { + s.DeploymentStatusMessage = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Environment) SetDescription(v string) *Environment { + s.Description = &v + return s +} + +// SetEnvironmentAccountConnectionId sets the EnvironmentAccountConnectionId field's value. +func (s *Environment) SetEnvironmentAccountConnectionId(v string) *Environment { + s.EnvironmentAccountConnectionId = &v + return s +} + +// SetEnvironmentAccountId sets the EnvironmentAccountId field's value. +func (s *Environment) SetEnvironmentAccountId(v string) *Environment { + s.EnvironmentAccountId = &v + return s +} + +// SetLastDeploymentAttemptedAt sets the LastDeploymentAttemptedAt field's value. +func (s *Environment) SetLastDeploymentAttemptedAt(v time.Time) *Environment { + s.LastDeploymentAttemptedAt = &v + return s +} + +// SetLastDeploymentSucceededAt sets the LastDeploymentSucceededAt field's value. +func (s *Environment) SetLastDeploymentSucceededAt(v time.Time) *Environment { + s.LastDeploymentSucceededAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *Environment) SetName(v string) *Environment { + s.Name = &v + return s +} + +// SetProtonServiceRoleArn sets the ProtonServiceRoleArn field's value. +func (s *Environment) SetProtonServiceRoleArn(v string) *Environment { + s.ProtonServiceRoleArn = &v + return s +} + +// SetProvisioning sets the Provisioning field's value. +func (s *Environment) SetProvisioning(v string) *Environment { + s.Provisioning = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *Environment) SetSpec(v string) *Environment { + s.Spec = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *Environment) SetTemplateMajorVersion(v string) *Environment { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *Environment) SetTemplateMinorVersion(v string) *Environment { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *Environment) SetTemplateName(v string) *Environment { + s.TemplateName = &v + return s +} + +// The environment account connection detail data. +type EnvironmentAccountConnection struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the environment account connection. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The environment account that's connected to the environment account connection. + // + // EnvironmentAccountId is a required field + EnvironmentAccountId *string `locationName:"environmentAccountId" type:"string" required:"true"` + + // The name of the environment that's associated with the environment account + // connection. + // + // EnvironmentName is a required field + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"` + + // The ID of the environment account connection. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The time when the environment account connection was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The ID of the management account that's connected to the environment account + // connection. + // + // ManagementAccountId is a required field + ManagementAccountId *string `locationName:"managementAccountId" type:"string" required:"true"` + + // The time when the environment account connection request was made. + // + // RequestedAt is a required field + RequestedAt *time.Time `locationName:"requestedAt" type:"timestamp" required:"true"` + + // The IAM service role that's associated with the environment account connection. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` + + // The status of the environment account connection. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"EnvironmentAccountConnectionStatus"` +} + +// String returns the string representation +func (s EnvironmentAccountConnection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentAccountConnection) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentAccountConnection) SetArn(v string) *EnvironmentAccountConnection { + s.Arn = &v + return s +} + +// SetEnvironmentAccountId sets the EnvironmentAccountId field's value. +func (s *EnvironmentAccountConnection) SetEnvironmentAccountId(v string) *EnvironmentAccountConnection { + s.EnvironmentAccountId = &v + return s +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *EnvironmentAccountConnection) SetEnvironmentName(v string) *EnvironmentAccountConnection { + s.EnvironmentName = &v + return s +} + +// SetId sets the Id field's value. +func (s *EnvironmentAccountConnection) SetId(v string) *EnvironmentAccountConnection { + s.Id = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *EnvironmentAccountConnection) SetLastModifiedAt(v time.Time) *EnvironmentAccountConnection { + s.LastModifiedAt = &v + return s +} + +// SetManagementAccountId sets the ManagementAccountId field's value. +func (s *EnvironmentAccountConnection) SetManagementAccountId(v string) *EnvironmentAccountConnection { + s.ManagementAccountId = &v + return s +} + +// SetRequestedAt sets the RequestedAt field's value. +func (s *EnvironmentAccountConnection) SetRequestedAt(v time.Time) *EnvironmentAccountConnection { + s.RequestedAt = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *EnvironmentAccountConnection) SetRoleArn(v string) *EnvironmentAccountConnection { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnvironmentAccountConnection) SetStatus(v string) *EnvironmentAccountConnection { + s.Status = &v + return s +} + +// A summary of the environment account connection detail data. +type EnvironmentAccountConnectionSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the environment account connection. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The ID of the environment account that's connected to the environment account + // connection. + // + // EnvironmentAccountId is a required field + EnvironmentAccountId *string `locationName:"environmentAccountId" type:"string" required:"true"` + + // The name of the environment that's associated with the environment account + // connection. + // + // EnvironmentName is a required field + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"` + + // The ID of the environment account connection. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The time when the environment account connection was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The ID of the management account that's connected to the environment account + // connection. + // + // ManagementAccountId is a required field + ManagementAccountId *string `locationName:"managementAccountId" type:"string" required:"true"` + + // The time when the environment account connection request was made. + // + // RequestedAt is a required field + RequestedAt *time.Time `locationName:"requestedAt" type:"timestamp" required:"true"` + + // The IAM service role that's associated with the environment account connection. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` + + // The status of the environment account connection. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"EnvironmentAccountConnectionStatus"` +} + +// String returns the string representation +func (s EnvironmentAccountConnectionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentAccountConnectionSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentAccountConnectionSummary) SetArn(v string) *EnvironmentAccountConnectionSummary { + s.Arn = &v + return s +} + +// SetEnvironmentAccountId sets the EnvironmentAccountId field's value. +func (s *EnvironmentAccountConnectionSummary) SetEnvironmentAccountId(v string) *EnvironmentAccountConnectionSummary { + s.EnvironmentAccountId = &v + return s +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *EnvironmentAccountConnectionSummary) SetEnvironmentName(v string) *EnvironmentAccountConnectionSummary { + s.EnvironmentName = &v + return s +} + +// SetId sets the Id field's value. +func (s *EnvironmentAccountConnectionSummary) SetId(v string) *EnvironmentAccountConnectionSummary { + s.Id = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *EnvironmentAccountConnectionSummary) SetLastModifiedAt(v time.Time) *EnvironmentAccountConnectionSummary { + s.LastModifiedAt = &v + return s +} + +// SetManagementAccountId sets the ManagementAccountId field's value. +func (s *EnvironmentAccountConnectionSummary) SetManagementAccountId(v string) *EnvironmentAccountConnectionSummary { + s.ManagementAccountId = &v + return s +} + +// SetRequestedAt sets the RequestedAt field's value. +func (s *EnvironmentAccountConnectionSummary) SetRequestedAt(v time.Time) *EnvironmentAccountConnectionSummary { + s.RequestedAt = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *EnvironmentAccountConnectionSummary) SetRoleArn(v string) *EnvironmentAccountConnectionSummary { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnvironmentAccountConnectionSummary) SetStatus(v string) *EnvironmentAccountConnectionSummary { + s.Status = &v + return s +} + +// A summary of the environment detail data. +type EnvironmentSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the environment. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the environment was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The environment deployment status. + // + // DeploymentStatus is a required field + DeploymentStatus *string `locationName:"deploymentStatus" type:"string" required:"true" enum:"DeploymentStatus"` + + // An environment deployment status message. + DeploymentStatusMessage *string `locationName:"deploymentStatusMessage" type:"string" sensitive:"true"` + + // The description of the environment. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the environment account connection that the environment is associated + // with. + EnvironmentAccountConnectionId *string `locationName:"environmentAccountConnectionId" type:"string"` + + // The ID of the environment account that the environment infrastructure resources + // are provisioned in. + EnvironmentAccountId *string `locationName:"environmentAccountId" type:"string"` + + // The time when a deployment of the environment was last attempted. + // + // LastDeploymentAttemptedAt is a required field + LastDeploymentAttemptedAt *time.Time `locationName:"lastDeploymentAttemptedAt" type:"timestamp" required:"true"` + + // The time when the environment was last deployed successfully. + // + // LastDeploymentSucceededAt is a required field + LastDeploymentSucceededAt *time.Time `locationName:"lastDeploymentSucceededAt" type:"timestamp" required:"true"` + + // The name of the environment. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the AWS Proton service role that allows AWS Proton to make calls + // to other services on your behalf. + ProtonServiceRoleArn *string `locationName:"protonServiceRoleArn" min:"1" type:"string"` + + // When included, indicates that the environment template is for customer provisioned + // and managed infrastructure. + Provisioning *string `locationName:"provisioning" type:"string" enum:"Provisioning"` + + // The ID of the major version of the environment template. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of the environment template. + // + // TemplateMinorVersion is a required field + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string" required:"true"` + + // The name of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s EnvironmentSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentSummary) SetArn(v string) *EnvironmentSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentSummary) SetCreatedAt(v time.Time) *EnvironmentSummary { + s.CreatedAt = &v + return s +} + +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *EnvironmentSummary) SetDeploymentStatus(v string) *EnvironmentSummary { + s.DeploymentStatus = &v + return s +} + +// SetDeploymentStatusMessage sets the DeploymentStatusMessage field's value. +func (s *EnvironmentSummary) SetDeploymentStatusMessage(v string) *EnvironmentSummary { + s.DeploymentStatusMessage = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentSummary) SetDescription(v string) *EnvironmentSummary { + s.Description = &v + return s +} + +// SetEnvironmentAccountConnectionId sets the EnvironmentAccountConnectionId field's value. +func (s *EnvironmentSummary) SetEnvironmentAccountConnectionId(v string) *EnvironmentSummary { + s.EnvironmentAccountConnectionId = &v + return s +} + +// SetEnvironmentAccountId sets the EnvironmentAccountId field's value. +func (s *EnvironmentSummary) SetEnvironmentAccountId(v string) *EnvironmentSummary { + s.EnvironmentAccountId = &v + return s +} + +// SetLastDeploymentAttemptedAt sets the LastDeploymentAttemptedAt field's value. +func (s *EnvironmentSummary) SetLastDeploymentAttemptedAt(v time.Time) *EnvironmentSummary { + s.LastDeploymentAttemptedAt = &v + return s +} + +// SetLastDeploymentSucceededAt sets the LastDeploymentSucceededAt field's value. +func (s *EnvironmentSummary) SetLastDeploymentSucceededAt(v time.Time) *EnvironmentSummary { + s.LastDeploymentSucceededAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentSummary) SetName(v string) *EnvironmentSummary { + s.Name = &v + return s +} + +// SetProtonServiceRoleArn sets the ProtonServiceRoleArn field's value. +func (s *EnvironmentSummary) SetProtonServiceRoleArn(v string) *EnvironmentSummary { + s.ProtonServiceRoleArn = &v + return s +} + +// SetProvisioning sets the Provisioning field's value. +func (s *EnvironmentSummary) SetProvisioning(v string) *EnvironmentSummary { + s.Provisioning = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *EnvironmentSummary) SetTemplateMajorVersion(v string) *EnvironmentSummary { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *EnvironmentSummary) SetTemplateMinorVersion(v string) *EnvironmentSummary { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *EnvironmentSummary) SetTemplateName(v string) *EnvironmentSummary { + s.TemplateName = &v + return s +} + +// The environment template data. +type EnvironmentTemplate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the environment template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the environment template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the environment template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The name of the environment template as displayed in the developer interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // The customer provided encryption key for the environment template. + EncryptionKey *string `locationName:"encryptionKey" min:"1" type:"string"` + + // The time when the environment template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The name of the environment template. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // When included, indicates that the environment template is for customer provisioned + // and managed infrastructure. + Provisioning *string `locationName:"provisioning" type:"string" enum:"Provisioning"` + + // The ID of the recommended version of the environment template. + RecommendedVersion *string `locationName:"recommendedVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s EnvironmentTemplate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentTemplate) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentTemplate) SetArn(v string) *EnvironmentTemplate { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentTemplate) SetCreatedAt(v time.Time) *EnvironmentTemplate { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentTemplate) SetDescription(v string) *EnvironmentTemplate { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *EnvironmentTemplate) SetDisplayName(v string) *EnvironmentTemplate { + s.DisplayName = &v + return s +} + +// SetEncryptionKey sets the EncryptionKey field's value. +func (s *EnvironmentTemplate) SetEncryptionKey(v string) *EnvironmentTemplate { + s.EncryptionKey = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *EnvironmentTemplate) SetLastModifiedAt(v time.Time) *EnvironmentTemplate { + s.LastModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentTemplate) SetName(v string) *EnvironmentTemplate { + s.Name = &v + return s +} + +// SetProvisioning sets the Provisioning field's value. +func (s *EnvironmentTemplate) SetProvisioning(v string) *EnvironmentTemplate { + s.Provisioning = &v + return s +} + +// SetRecommendedVersion sets the RecommendedVersion field's value. +func (s *EnvironmentTemplate) SetRecommendedVersion(v string) *EnvironmentTemplate { + s.RecommendedVersion = &v + return s +} + +// A search filter for environment templates. +type EnvironmentTemplateFilter struct { + _ struct{} `type:"structure"` + + // Include majorVersion to filter search for a major version. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // Include templateName to filter search for a template name. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s EnvironmentTemplateFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentTemplateFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EnvironmentTemplateFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnvironmentTemplateFilter"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *EnvironmentTemplateFilter) SetMajorVersion(v string) *EnvironmentTemplateFilter { + s.MajorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *EnvironmentTemplateFilter) SetTemplateName(v string) *EnvironmentTemplateFilter { + s.TemplateName = &v + return s +} + +// The environment template data. +type EnvironmentTemplateSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the environment template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the environment template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the environment template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The name of the environment template as displayed in the developer interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // The time when the environment template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The name of the environment template. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // When included, indicates that the environment template is for customer provisioned + // and managed infrastructure. + Provisioning *string `locationName:"provisioning" type:"string" enum:"Provisioning"` + + // The ID of the recommended version of the environment template. + RecommendedVersion *string `locationName:"recommendedVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s EnvironmentTemplateSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentTemplateSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentTemplateSummary) SetArn(v string) *EnvironmentTemplateSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentTemplateSummary) SetCreatedAt(v time.Time) *EnvironmentTemplateSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentTemplateSummary) SetDescription(v string) *EnvironmentTemplateSummary { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *EnvironmentTemplateSummary) SetDisplayName(v string) *EnvironmentTemplateSummary { + s.DisplayName = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *EnvironmentTemplateSummary) SetLastModifiedAt(v time.Time) *EnvironmentTemplateSummary { + s.LastModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *EnvironmentTemplateSummary) SetName(v string) *EnvironmentTemplateSummary { + s.Name = &v + return s +} + +// SetProvisioning sets the Provisioning field's value. +func (s *EnvironmentTemplateSummary) SetProvisioning(v string) *EnvironmentTemplateSummary { + s.Provisioning = &v + return s +} + +// SetRecommendedVersion sets the RecommendedVersion field's value. +func (s *EnvironmentTemplateSummary) SetRecommendedVersion(v string) *EnvironmentTemplateSummary { + s.RecommendedVersion = &v + return s +} + +// The environment template version data. +type EnvironmentTemplateVersion struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the version of an environment template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the version of an environment template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the minor version of an environment template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The time when the version of an environment template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The ID of the latest major version that's associated with the version of + // an environment template. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of an environment template. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The ID of the recommended minor version of the environment template. + RecommendedMinorVersion *string `locationName:"recommendedMinorVersion" min:"1" type:"string"` + + // The schema of the version of an environment template. + Schema *string `locationName:"schema" min:"1" type:"string" sensitive:"true"` + + // The status of the version of an environment template. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TemplateVersionStatus"` + + // The status message of the version of an environment template. + StatusMessage *string `locationName:"statusMessage" type:"string" sensitive:"true"` + + // The name of the version of an environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s EnvironmentTemplateVersion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentTemplateVersion) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentTemplateVersion) SetArn(v string) *EnvironmentTemplateVersion { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentTemplateVersion) SetCreatedAt(v time.Time) *EnvironmentTemplateVersion { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentTemplateVersion) SetDescription(v string) *EnvironmentTemplateVersion { + s.Description = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *EnvironmentTemplateVersion) SetLastModifiedAt(v time.Time) *EnvironmentTemplateVersion { + s.LastModifiedAt = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *EnvironmentTemplateVersion) SetMajorVersion(v string) *EnvironmentTemplateVersion { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *EnvironmentTemplateVersion) SetMinorVersion(v string) *EnvironmentTemplateVersion { + s.MinorVersion = &v + return s +} + +// SetRecommendedMinorVersion sets the RecommendedMinorVersion field's value. +func (s *EnvironmentTemplateVersion) SetRecommendedMinorVersion(v string) *EnvironmentTemplateVersion { + s.RecommendedMinorVersion = &v + return s +} + +// SetSchema sets the Schema field's value. +func (s *EnvironmentTemplateVersion) SetSchema(v string) *EnvironmentTemplateVersion { + s.Schema = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnvironmentTemplateVersion) SetStatus(v string) *EnvironmentTemplateVersion { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *EnvironmentTemplateVersion) SetStatusMessage(v string) *EnvironmentTemplateVersion { + s.StatusMessage = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *EnvironmentTemplateVersion) SetTemplateName(v string) *EnvironmentTemplateVersion { + s.TemplateName = &v + return s +} + +// A summary of the version of an environment template detail data. +type EnvironmentTemplateVersionSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the version of an environment template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the version of an environment template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the version of an environment template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The time when the version of an environment template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The ID of the latest major version that's associated with the version of + // an environment template. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The ID of the version of an environment template. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The ID of the recommended minor version of the environment template. + RecommendedMinorVersion *string `locationName:"recommendedMinorVersion" min:"1" type:"string"` + + // The status of the version of an environment template. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TemplateVersionStatus"` + + // The status message of the version of an environment template. + StatusMessage *string `locationName:"statusMessage" type:"string" sensitive:"true"` + + // The name of the version of an environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s EnvironmentTemplateVersionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EnvironmentTemplateVersionSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *EnvironmentTemplateVersionSummary) SetArn(v string) *EnvironmentTemplateVersionSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *EnvironmentTemplateVersionSummary) SetCreatedAt(v time.Time) *EnvironmentTemplateVersionSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *EnvironmentTemplateVersionSummary) SetDescription(v string) *EnvironmentTemplateVersionSummary { + s.Description = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *EnvironmentTemplateVersionSummary) SetLastModifiedAt(v time.Time) *EnvironmentTemplateVersionSummary { + s.LastModifiedAt = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *EnvironmentTemplateVersionSummary) SetMajorVersion(v string) *EnvironmentTemplateVersionSummary { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *EnvironmentTemplateVersionSummary) SetMinorVersion(v string) *EnvironmentTemplateVersionSummary { + s.MinorVersion = &v + return s +} + +// SetRecommendedMinorVersion sets the RecommendedMinorVersion field's value. +func (s *EnvironmentTemplateVersionSummary) SetRecommendedMinorVersion(v string) *EnvironmentTemplateVersionSummary { + s.RecommendedMinorVersion = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnvironmentTemplateVersionSummary) SetStatus(v string) *EnvironmentTemplateVersionSummary { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *EnvironmentTemplateVersionSummary) SetStatusMessage(v string) *EnvironmentTemplateVersionSummary { + s.StatusMessage = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *EnvironmentTemplateVersionSummary) SetTemplateName(v string) *EnvironmentTemplateVersionSummary { + s.TemplateName = &v + return s +} + +type GetAccountSettingsInput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s GetAccountSettingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetAccountSettingsInput) GoString() string { + return s.String() +} + +type GetAccountSettingsOutput struct { + _ struct{} `type:"structure"` + + // The AWS Proton pipeline service role detail data that's returned by AWS Proton. + AccountSettings *AccountSettings `locationName:"accountSettings" type:"structure"` +} + +// String returns the string representation +func (s GetAccountSettingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetAccountSettingsOutput) GoString() string { + return s.String() +} + +// SetAccountSettings sets the AccountSettings field's value. +func (s *GetAccountSettingsOutput) SetAccountSettings(v *AccountSettings) *GetAccountSettingsOutput { + s.AccountSettings = v + return s +} + +type GetEnvironmentAccountConnectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the environment account connection. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentAccountConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentAccountConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentAccountConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentAccountConnectionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *GetEnvironmentAccountConnectionInput) SetId(v string) *GetEnvironmentAccountConnectionInput { + s.Id = &v + return s +} + +type GetEnvironmentAccountConnectionOutput struct { + _ struct{} `type:"structure"` + + // The environment account connection detail data that's returned by AWS Proton. + // + // EnvironmentAccountConnection is a required field + EnvironmentAccountConnection *EnvironmentAccountConnection `locationName:"environmentAccountConnection" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentAccountConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentAccountConnectionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnection sets the EnvironmentAccountConnection field's value. +func (s *GetEnvironmentAccountConnectionOutput) SetEnvironmentAccountConnection(v *EnvironmentAccountConnection) *GetEnvironmentAccountConnectionOutput { + s.EnvironmentAccountConnection = v + return s +} + +type GetEnvironmentInput struct { + _ struct{} `type:"structure"` + + // The name of the environment that you want to get the detail data for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetEnvironmentInput) SetName(v string) *GetEnvironmentInput { + s.Name = &v + return s +} + +type GetEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The environment detail data that's returned by AWS Proton. + // + // Environment is a required field + Environment *Environment `locationName:"environment" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *GetEnvironmentOutput) SetEnvironment(v *Environment) *GetEnvironmentOutput { + s.Environment = v + return s +} + +type GetEnvironmentTemplateInput struct { + _ struct{} `type:"structure"` + + // The name of the environment template that you want to get the detail data + // for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentTemplateInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetEnvironmentTemplateInput) SetName(v string) *GetEnvironmentTemplateInput { + s.Name = &v + return s +} + +type GetEnvironmentTemplateOutput struct { + _ struct{} `type:"structure"` + + // The environment template detail data that's returned by AWS Proton. + // + // EnvironmentTemplate is a required field + EnvironmentTemplate *EnvironmentTemplate `locationName:"environmentTemplate" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentTemplateOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplate sets the EnvironmentTemplate field's value. +func (s *GetEnvironmentTemplateOutput) SetEnvironmentTemplate(v *EnvironmentTemplate) *GetEnvironmentTemplateOutput { + s.EnvironmentTemplate = v + return s +} + +type GetEnvironmentTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // To view environment template major version detail data, include majorVersion. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // To view environment template minor version detail data, include minorVersion. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The name of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnvironmentTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnvironmentTemplateVersionInput"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MinorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MinorVersion")) + } + if s.MinorVersion != nil && len(*s.MinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *GetEnvironmentTemplateVersionInput) SetMajorVersion(v string) *GetEnvironmentTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *GetEnvironmentTemplateVersionInput) SetMinorVersion(v string) *GetEnvironmentTemplateVersionInput { + s.MinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *GetEnvironmentTemplateVersionInput) SetTemplateName(v string) *GetEnvironmentTemplateVersionInput { + s.TemplateName = &v + return s +} + +type GetEnvironmentTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The environment template version detail data that's returned by AWS Proton. + // + // EnvironmentTemplateVersion is a required field + EnvironmentTemplateVersion *EnvironmentTemplateVersion `locationName:"environmentTemplateVersion" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetEnvironmentTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEnvironmentTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplateVersion sets the EnvironmentTemplateVersion field's value. +func (s *GetEnvironmentTemplateVersionOutput) SetEnvironmentTemplateVersion(v *EnvironmentTemplateVersion) *GetEnvironmentTemplateVersionOutput { + s.EnvironmentTemplateVersion = v + return s +} + +type GetServiceInput struct { + _ struct{} `type:"structure"` + + // The name of the service that you want to get the detail data for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetServiceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetServiceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetServiceInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetServiceInput) SetName(v string) *GetServiceInput { + s.Name = &v + return s +} + +type GetServiceInstanceInput struct { + _ struct{} `type:"structure"` + + // The name of a service instance that you want to get the detail data for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The name of the service that the service instance belongs to. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetServiceInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetServiceInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetServiceInstanceInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceName")) + } + if s.ServiceName != nil && len(*s.ServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetServiceInstanceInput) SetName(v string) *GetServiceInstanceInput { + s.Name = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *GetServiceInstanceInput) SetServiceName(v string) *GetServiceInstanceInput { + s.ServiceName = &v + return s +} + +type GetServiceInstanceOutput struct { + _ struct{} `type:"structure"` + + // The service instance detail data that's returned by AWS Proton. + // + // ServiceInstance is a required field + ServiceInstance *ServiceInstance `locationName:"serviceInstance" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetServiceInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceInstanceOutput) GoString() string { + return s.String() +} + +// SetServiceInstance sets the ServiceInstance field's value. +func (s *GetServiceInstanceOutput) SetServiceInstance(v *ServiceInstance) *GetServiceInstanceOutput { + s.ServiceInstance = v + return s +} + +type GetServiceOutput struct { + _ struct{} `type:"structure"` + + // The service detail data that's returned by AWS Proton. + Service *Service `locationName:"service" type:"structure"` +} + +// String returns the string representation +func (s GetServiceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceOutput) GoString() string { + return s.String() +} + +// SetService sets the Service field's value. +func (s *GetServiceOutput) SetService(v *Service) *GetServiceOutput { + s.Service = v + return s +} + +type GetServiceTemplateInput struct { + _ struct{} `type:"structure"` + + // The name of the service template that you want to get detail data for. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetServiceTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetServiceTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetServiceTemplateInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetServiceTemplateInput) SetName(v string) *GetServiceTemplateInput { + s.Name = &v + return s +} + +type GetServiceTemplateOutput struct { + _ struct{} `type:"structure"` + + // The service template detail data that's returned by AWS Proton. + // + // ServiceTemplate is a required field + ServiceTemplate *ServiceTemplate `locationName:"serviceTemplate" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetServiceTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceTemplateOutput) GoString() string { + return s.String() +} + +// SetServiceTemplate sets the ServiceTemplate field's value. +func (s *GetServiceTemplateOutput) SetServiceTemplate(v *ServiceTemplate) *GetServiceTemplateOutput { + s.ServiceTemplate = v + return s +} + +type GetServiceTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // To view service template major version detail data, include majorVersion. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // To view service template minor version detail data, include minorVersion. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetServiceTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetServiceTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetServiceTemplateVersionInput"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MinorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MinorVersion")) + } + if s.MinorVersion != nil && len(*s.MinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *GetServiceTemplateVersionInput) SetMajorVersion(v string) *GetServiceTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *GetServiceTemplateVersionInput) SetMinorVersion(v string) *GetServiceTemplateVersionInput { + s.MinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *GetServiceTemplateVersionInput) SetTemplateName(v string) *GetServiceTemplateVersionInput { + s.TemplateName = &v + return s +} + +type GetServiceTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The service template version detail data that's returned by AWS Proton. + // + // ServiceTemplateVersion is a required field + ServiceTemplateVersion *ServiceTemplateVersion `locationName:"serviceTemplateVersion" type:"structure" required:"true"` +} + +// String returns the string representation +func (s GetServiceTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetServiceTemplateVersion sets the ServiceTemplateVersion field's value. +func (s *GetServiceTemplateVersionOutput) SetServiceTemplateVersion(v *ServiceTemplateVersion) *GetServiceTemplateVersionOutput { + s.ServiceTemplateVersion = v + return s +} + +// The request failed to register with the service. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListEnvironmentAccountConnectionsInput struct { + _ struct{} `type:"structure"` + + // The environment name that's associated with each listed environment account + // connection. + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string"` + + // The maximum number of environment account connections to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next environment account connection + // in the array of environment account connections, after the list of environment + // account connections that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // The type of account making the ListEnvironmentAccountConnections request. + // + // RequestedBy is a required field + RequestedBy *string `locationName:"requestedBy" type:"string" required:"true" enum:"EnvironmentAccountConnectionRequesterAccountType"` + + // The status details for each listed environment account connection. + Statuses []*string `locationName:"statuses" type:"list"` +} + +// String returns the string representation +func (s ListEnvironmentAccountConnectionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentAccountConnectionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentAccountConnectionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentAccountConnectionsInput"} + if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.RequestedBy == nil { + invalidParams.Add(request.NewErrParamRequired("RequestedBy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *ListEnvironmentAccountConnectionsInput) SetEnvironmentName(v string) *ListEnvironmentAccountConnectionsInput { + s.EnvironmentName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentAccountConnectionsInput) SetMaxResults(v int64) *ListEnvironmentAccountConnectionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentAccountConnectionsInput) SetNextToken(v string) *ListEnvironmentAccountConnectionsInput { + s.NextToken = &v + return s +} + +// SetRequestedBy sets the RequestedBy field's value. +func (s *ListEnvironmentAccountConnectionsInput) SetRequestedBy(v string) *ListEnvironmentAccountConnectionsInput { + s.RequestedBy = &v + return s +} + +// SetStatuses sets the Statuses field's value. +func (s *ListEnvironmentAccountConnectionsInput) SetStatuses(v []*string) *ListEnvironmentAccountConnectionsInput { + s.Statuses = v + return s +} + +type ListEnvironmentAccountConnectionsOutput struct { + _ struct{} `type:"structure"` + + // An array of environment account connections with details that's returned + // by AWS Proton. + // + // EnvironmentAccountConnections is a required field + EnvironmentAccountConnections []*EnvironmentAccountConnectionSummary `locationName:"environmentAccountConnections" type:"list" required:"true"` + + // A token to indicate the location of the next environment account connection + // in the array of environment account connections, after the current requested + // list of environment account connections. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListEnvironmentAccountConnectionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentAccountConnectionsOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnections sets the EnvironmentAccountConnections field's value. +func (s *ListEnvironmentAccountConnectionsOutput) SetEnvironmentAccountConnections(v []*EnvironmentAccountConnectionSummary) *ListEnvironmentAccountConnectionsOutput { + s.EnvironmentAccountConnections = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentAccountConnectionsOutput) SetNextToken(v string) *ListEnvironmentAccountConnectionsOutput { + s.NextToken = &v + return s +} + +type ListEnvironmentTemplateVersionsInput struct { + _ struct{} `type:"structure"` + + // To view a list of minor of versions under a major version of an environment + // template, include majorVersion. + // + // To view a list of major versions of an environment template, exclude majorVersion. + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string"` + + // The maximum number of major or minor versions of an environment template + // to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next major or minor version in the + // array of major or minor versions of an environment template, after the list + // of major or minor versions that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // The name of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ListEnvironmentTemplateVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentTemplateVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentTemplateVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentTemplateVersionsInput"} + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *ListEnvironmentTemplateVersionsInput) SetMajorVersion(v string) *ListEnvironmentTemplateVersionsInput { + s.MajorVersion = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentTemplateVersionsInput) SetMaxResults(v int64) *ListEnvironmentTemplateVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentTemplateVersionsInput) SetNextToken(v string) *ListEnvironmentTemplateVersionsInput { + s.NextToken = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ListEnvironmentTemplateVersionsInput) SetTemplateName(v string) *ListEnvironmentTemplateVersionsInput { + s.TemplateName = &v + return s +} + +type ListEnvironmentTemplateVersionsOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next major or minor version in the + // array of major or minor versions of an environment template, after the list + // of major or minor versions that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of major or minor versions of an environment template detail data. + // + // TemplateVersions is a required field + TemplateVersions []*EnvironmentTemplateVersionSummary `locationName:"templateVersions" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListEnvironmentTemplateVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentTemplateVersionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentTemplateVersionsOutput) SetNextToken(v string) *ListEnvironmentTemplateVersionsOutput { + s.NextToken = &v + return s +} + +// SetTemplateVersions sets the TemplateVersions field's value. +func (s *ListEnvironmentTemplateVersionsOutput) SetTemplateVersions(v []*EnvironmentTemplateVersionSummary) *ListEnvironmentTemplateVersionsOutput { + s.TemplateVersions = v + return s +} + +type ListEnvironmentTemplatesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of environment templates to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next environment template in the + // array of environment templates, after the list of environment templates that + // was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListEnvironmentTemplatesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentTemplatesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentTemplatesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentTemplatesInput) SetMaxResults(v int64) *ListEnvironmentTemplatesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentTemplatesInput) SetNextToken(v string) *ListEnvironmentTemplatesInput { + s.NextToken = &v + return s +} + +type ListEnvironmentTemplatesOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next environment template in the + // array of environment templates, after the current requested list of environment + // templates. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of environment templates with detail data. + // + // Templates is a required field + Templates []*EnvironmentTemplateSummary `locationName:"templates" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListEnvironmentTemplatesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentTemplatesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentTemplatesOutput) SetNextToken(v string) *ListEnvironmentTemplatesOutput { + s.NextToken = &v + return s +} + +// SetTemplates sets the Templates field's value. +func (s *ListEnvironmentTemplatesOutput) SetTemplates(v []*EnvironmentTemplateSummary) *ListEnvironmentTemplatesOutput { + s.Templates = v + return s +} + +type ListEnvironmentsInput struct { + _ struct{} `type:"structure"` + + // An array of the versions of the environment template. + EnvironmentTemplates []*EnvironmentTemplateFilter `locationName:"environmentTemplates" type:"list"` + + // The maximum number of environments to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next environment in the array of + // environments, after the list of environments that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListEnvironmentsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnvironmentsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnvironmentsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.EnvironmentTemplates != nil { + for i, v := range s.EnvironmentTemplates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EnvironmentTemplates", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnvironmentTemplates sets the EnvironmentTemplates field's value. +func (s *ListEnvironmentsInput) SetEnvironmentTemplates(v []*EnvironmentTemplateFilter) *ListEnvironmentsInput { + s.EnvironmentTemplates = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnvironmentsInput) SetMaxResults(v int64) *ListEnvironmentsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsInput) SetNextToken(v string) *ListEnvironmentsInput { + s.NextToken = &v + return s +} + +type ListEnvironmentsOutput struct { + _ struct{} `type:"structure"` + + // An array of environment detail data summaries. + // + // Environments is a required field + Environments []*EnvironmentSummary `locationName:"environments" type:"list" required:"true"` + + // A token to indicate the location of the next environment in the array of + // environments, after the current requested list of environments. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListEnvironmentsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListEnvironmentsOutput) GoString() string { + return s.String() +} + +// SetEnvironments sets the Environments field's value. +func (s *ListEnvironmentsOutput) SetEnvironments(v []*EnvironmentSummary) *ListEnvironmentsOutput { + s.Environments = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnvironmentsOutput) SetNextToken(v string) *ListEnvironmentsOutput { + s.NextToken = &v + return s +} + +type ListServiceInstancesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of service instances to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next service in the array of service + // instances, after the list of service instances that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // The name of the service that the service instance belongs to. + ServiceName *string `locationName:"serviceName" min:"1" type:"string"` +} + +// String returns the string representation +func (s ListServiceInstancesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServiceInstancesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListServiceInstancesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListServiceInstancesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ServiceName != nil && len(*s.ServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListServiceInstancesInput) SetMaxResults(v int64) *ListServiceInstancesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServiceInstancesInput) SetNextToken(v string) *ListServiceInstancesInput { + s.NextToken = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *ListServiceInstancesInput) SetServiceName(v string) *ListServiceInstancesInput { + s.ServiceName = &v + return s +} + +type ListServiceInstancesOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next service instance in the array + // of service instances, after the current requested list of service instances. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of service instances with summaries of detail data. + // + // ServiceInstances is a required field + ServiceInstances []*ServiceInstanceSummary `locationName:"serviceInstances" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListServiceInstancesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServiceInstancesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServiceInstancesOutput) SetNextToken(v string) *ListServiceInstancesOutput { + s.NextToken = &v + return s +} + +// SetServiceInstances sets the ServiceInstances field's value. +func (s *ListServiceInstancesOutput) SetServiceInstances(v []*ServiceInstanceSummary) *ListServiceInstancesOutput { + s.ServiceInstances = v + return s +} + +type ListServiceTemplateVersionsInput struct { + _ struct{} `type:"structure"` + + // To view a list of minor of versions under a major version of a service template, + // include majorVersion. + // + // To view a list of major versions of a service template, exclude majorVersion. + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string"` + + // The maximum number of major or minor versions of a service template to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next major or minor version in the + // array of major or minor versions of a service template, after the list of + // major or minor versions that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ListServiceTemplateVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServiceTemplateVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListServiceTemplateVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListServiceTemplateVersionsInput"} + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *ListServiceTemplateVersionsInput) SetMajorVersion(v string) *ListServiceTemplateVersionsInput { + s.MajorVersion = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListServiceTemplateVersionsInput) SetMaxResults(v int64) *ListServiceTemplateVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServiceTemplateVersionsInput) SetNextToken(v string) *ListServiceTemplateVersionsInput { + s.NextToken = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ListServiceTemplateVersionsInput) SetTemplateName(v string) *ListServiceTemplateVersionsInput { + s.TemplateName = &v + return s +} + +type ListServiceTemplateVersionsOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next major or minor version in the + // array of major or minor versions of a service template, after the list of + // major or minor versions that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of major or minor versions of a service template with detail data. + // + // TemplateVersions is a required field + TemplateVersions []*ServiceTemplateVersionSummary `locationName:"templateVersions" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListServiceTemplateVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServiceTemplateVersionsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServiceTemplateVersionsOutput) SetNextToken(v string) *ListServiceTemplateVersionsOutput { + s.NextToken = &v + return s +} + +// SetTemplateVersions sets the TemplateVersions field's value. +func (s *ListServiceTemplateVersionsOutput) SetTemplateVersions(v []*ServiceTemplateVersionSummary) *ListServiceTemplateVersionsOutput { + s.TemplateVersions = v + return s +} + +type ListServiceTemplatesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of service templates to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next service template in the array + // of service templates, after the list of service templates previously requested. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListServiceTemplatesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServiceTemplatesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListServiceTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListServiceTemplatesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListServiceTemplatesInput) SetMaxResults(v int64) *ListServiceTemplatesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServiceTemplatesInput) SetNextToken(v string) *ListServiceTemplatesInput { + s.NextToken = &v + return s +} + +type ListServiceTemplatesOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next service template in the array + // of service templates, after the current requested list of service templates. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of service templates with detail data. + // + // Templates is a required field + Templates []*ServiceTemplateSummary `locationName:"templates" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListServiceTemplatesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServiceTemplatesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServiceTemplatesOutput) SetNextToken(v string) *ListServiceTemplatesOutput { + s.NextToken = &v + return s +} + +// SetTemplates sets the Templates field's value. +func (s *ListServiceTemplatesOutput) SetTemplates(v []*ServiceTemplateSummary) *ListServiceTemplatesOutput { + s.Templates = v + return s +} + +type ListServicesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of services to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next service in the array of services, + // after the list of services that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListServicesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServicesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListServicesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListServicesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListServicesInput) SetMaxResults(v int64) *ListServicesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServicesInput) SetNextToken(v string) *ListServicesInput { + s.NextToken = &v + return s +} + +type ListServicesOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next service in the array of services, + // after the current requested list of services. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of services with summaries of detail data. + // + // Services is a required field + Services []*ServiceSummary `locationName:"services" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListServicesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListServicesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListServicesOutput) SetNextToken(v string) *ListServicesOutput { + s.NextToken = &v + return s +} + +// SetServices sets the Services field's value. +func (s *ListServicesOutput) SetServices(v []*ServiceSummary) *ListServicesOutput { + s.Services = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The maximum number of tags to list. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A token to indicate the location of the next resource tag in the array of + // resource tags, after the list of resource tags that was previously requested. + NextToken *string `locationName:"nextToken" type:"string"` + + // The ARN of the resource for the listed tags. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { + s.NextToken = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A token to indicate the location of the next resource tag in the array of + // resource tags, after the current requested list of resource tags. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of resource tags with detail data. + // + // Tags is a required field + Tags []*Tag `locationName:"tags" type:"list" required:"true"` +} + +// String returns the string representation +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { + s.NextToken = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type RejectEnvironmentAccountConnectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the environment account connection to reject. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` +} + +// String returns the string representation +func (s RejectEnvironmentAccountConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RejectEnvironmentAccountConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RejectEnvironmentAccountConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RejectEnvironmentAccountConnectionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *RejectEnvironmentAccountConnectionInput) SetId(v string) *RejectEnvironmentAccountConnectionInput { + s.Id = &v + return s +} + +type RejectEnvironmentAccountConnectionOutput struct { + _ struct{} `type:"structure"` + + // The environment connection account detail data that's returned by AWS Proton. + // + // EnvironmentAccountConnection is a required field + EnvironmentAccountConnection *EnvironmentAccountConnection `locationName:"environmentAccountConnection" type:"structure" required:"true"` +} + +// String returns the string representation +func (s RejectEnvironmentAccountConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RejectEnvironmentAccountConnectionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnection sets the EnvironmentAccountConnection field's value. +func (s *RejectEnvironmentAccountConnectionOutput) SetEnvironmentAccountConnection(v *EnvironmentAccountConnection) *RejectEnvironmentAccountConnectionOutput { + s.EnvironmentAccountConnection = v + return s +} + +// The requested resource wasn't found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Template bundle S3 bucket data. +type S3ObjectSource struct { + _ struct{} `type:"structure"` + + // The name of the S3 bucket that contains a template bundle. + // + // Bucket is a required field + Bucket *string `locationName:"bucket" min:"3" type:"string" required:"true"` + + // The path to the S3 bucket that contains a template bundle. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s S3ObjectSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s S3ObjectSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3ObjectSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3ObjectSource"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) + } + if s.Bucket != nil && len(*s.Bucket) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) + } + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *S3ObjectSource) SetBucket(v string) *S3ObjectSource { + s.Bucket = &v + return s +} + +// SetKey sets the Key field's value. +func (s *S3ObjectSource) SetKey(v string) *S3ObjectSource { + s.Key = &v + return s +} + +// The service detail data. +type Service struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the code repository branch that holds the code that's deployed + // in AWS Proton. + BranchName *string `locationName:"branchName" min:"1" type:"string"` + + // The time when the service was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of a service. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The time when the service was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The name of the service. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The service pipeline detail data. + Pipeline *ServicePipeline `locationName:"pipeline" type:"structure"` + + // The ARN of the repository connection. For more information, see Set up a + // repository connection (https://docs.aws.amazon.com/proton/latest/adminguide/setting-up-for-service.html#setting-up-vcontrol) + // in the AWS Proton Administration Guide and Getting started (https://docs.aws.amazon.com/proton/latest/userguide/ug-getting-started.html#getting-started-step1) + // in the AWS Proton User Guide. + RepositoryConnectionArn *string `locationName:"repositoryConnectionArn" min:"1" type:"string"` + + // The ID of the code repository. + RepositoryId *string `locationName:"repositoryId" min:"1" type:"string"` + + // The formatted specification that defines the service. + // + // Spec is a required field + Spec *string `locationName:"spec" min:"1" type:"string" required:"true" sensitive:"true"` + + // The status of the service. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ServiceStatus"` + + // A service status message. + StatusMessage *string `locationName:"statusMessage" type:"string" sensitive:"true"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s Service) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Service) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *Service) SetArn(v string) *Service { + s.Arn = &v + return s +} + +// SetBranchName sets the BranchName field's value. +func (s *Service) SetBranchName(v string) *Service { + s.BranchName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Service) SetCreatedAt(v time.Time) *Service { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Service) SetDescription(v string) *Service { + s.Description = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *Service) SetLastModifiedAt(v time.Time) *Service { + s.LastModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *Service) SetName(v string) *Service { + s.Name = &v + return s +} + +// SetPipeline sets the Pipeline field's value. +func (s *Service) SetPipeline(v *ServicePipeline) *Service { + s.Pipeline = v + return s +} + +// SetRepositoryConnectionArn sets the RepositoryConnectionArn field's value. +func (s *Service) SetRepositoryConnectionArn(v string) *Service { + s.RepositoryConnectionArn = &v + return s +} + +// SetRepositoryId sets the RepositoryId field's value. +func (s *Service) SetRepositoryId(v string) *Service { + s.RepositoryId = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *Service) SetSpec(v string) *Service { + s.Spec = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Service) SetStatus(v string) *Service { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *Service) SetStatusMessage(v string) *Service { + s.StatusMessage = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *Service) SetTemplateName(v string) *Service { + s.TemplateName = &v + return s +} + +// The service instance detail data. +type ServiceInstance struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service instance. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the service instance was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The service instance deployment status. + // + // DeploymentStatus is a required field + DeploymentStatus *string `locationName:"deploymentStatus" type:"string" required:"true" enum:"DeploymentStatus"` + + // A service instance deployment status message. + DeploymentStatusMessage *string `locationName:"deploymentStatusMessage" type:"string" sensitive:"true"` + + // The name of the environment that the service instance was deployed into. + // + // EnvironmentName is a required field + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"` + + // The time when a deployment of the service instance was last attempted. + // + // LastDeploymentAttemptedAt is a required field + LastDeploymentAttemptedAt *time.Time `locationName:"lastDeploymentAttemptedAt" type:"timestamp" required:"true"` + + // The time when the service instance was last deployed successfully. + // + // LastDeploymentSucceededAt is a required field + LastDeploymentSucceededAt *time.Time `locationName:"lastDeploymentSucceededAt" type:"timestamp" required:"true"` + + // The name of the service instance. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The name of the service that the service instance belongs to. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` + + // The service spec that was used to create the service instance. + Spec *string `locationName:"spec" min:"1" type:"string" sensitive:"true"` + + // The ID of the major version of the service template that was used to create + // the service instance. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of the service template that was used to create + // the service instance. + // + // TemplateMinorVersion is a required field + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string" required:"true"` + + // The name of the service template that was used to create the service instance. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ServiceInstance) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceInstance) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceInstance) SetArn(v string) *ServiceInstance { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceInstance) SetCreatedAt(v time.Time) *ServiceInstance { + s.CreatedAt = &v + return s +} + +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *ServiceInstance) SetDeploymentStatus(v string) *ServiceInstance { + s.DeploymentStatus = &v + return s +} + +// SetDeploymentStatusMessage sets the DeploymentStatusMessage field's value. +func (s *ServiceInstance) SetDeploymentStatusMessage(v string) *ServiceInstance { + s.DeploymentStatusMessage = &v + return s +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *ServiceInstance) SetEnvironmentName(v string) *ServiceInstance { + s.EnvironmentName = &v + return s +} + +// SetLastDeploymentAttemptedAt sets the LastDeploymentAttemptedAt field's value. +func (s *ServiceInstance) SetLastDeploymentAttemptedAt(v time.Time) *ServiceInstance { + s.LastDeploymentAttemptedAt = &v + return s +} + +// SetLastDeploymentSucceededAt sets the LastDeploymentSucceededAt field's value. +func (s *ServiceInstance) SetLastDeploymentSucceededAt(v time.Time) *ServiceInstance { + s.LastDeploymentSucceededAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ServiceInstance) SetName(v string) *ServiceInstance { + s.Name = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *ServiceInstance) SetServiceName(v string) *ServiceInstance { + s.ServiceName = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *ServiceInstance) SetSpec(v string) *ServiceInstance { + s.Spec = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *ServiceInstance) SetTemplateMajorVersion(v string) *ServiceInstance { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *ServiceInstance) SetTemplateMinorVersion(v string) *ServiceInstance { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ServiceInstance) SetTemplateName(v string) *ServiceInstance { + s.TemplateName = &v + return s +} + +// A summary of the service instance detail data. +type ServiceInstanceSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service instance. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the service instance was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The service instance deployment status. + // + // DeploymentStatus is a required field + DeploymentStatus *string `locationName:"deploymentStatus" type:"string" required:"true" enum:"DeploymentStatus"` + + // A service instance deployment status message. + DeploymentStatusMessage *string `locationName:"deploymentStatusMessage" type:"string" sensitive:"true"` + + // The name of the environment that the service instance was deployed into. + // + // EnvironmentName is a required field + EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"` + + // The time when a deployment of the service was last attempted. + // + // LastDeploymentAttemptedAt is a required field + LastDeploymentAttemptedAt *time.Time `locationName:"lastDeploymentAttemptedAt" type:"timestamp" required:"true"` + + // The time when the service was last deployed successfully. + // + // LastDeploymentSucceededAt is a required field + LastDeploymentSucceededAt *time.Time `locationName:"lastDeploymentSucceededAt" type:"timestamp" required:"true"` + + // The name of the service instance. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The name of the service that the service instance belongs to. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` + + // The ID of the major version of a service template. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of a service template. + // + // TemplateMinorVersion is a required field + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string" required:"true"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ServiceInstanceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceInstanceSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceInstanceSummary) SetArn(v string) *ServiceInstanceSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceInstanceSummary) SetCreatedAt(v time.Time) *ServiceInstanceSummary { + s.CreatedAt = &v + return s +} + +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *ServiceInstanceSummary) SetDeploymentStatus(v string) *ServiceInstanceSummary { + s.DeploymentStatus = &v + return s +} + +// SetDeploymentStatusMessage sets the DeploymentStatusMessage field's value. +func (s *ServiceInstanceSummary) SetDeploymentStatusMessage(v string) *ServiceInstanceSummary { + s.DeploymentStatusMessage = &v + return s +} + +// SetEnvironmentName sets the EnvironmentName field's value. +func (s *ServiceInstanceSummary) SetEnvironmentName(v string) *ServiceInstanceSummary { + s.EnvironmentName = &v + return s +} + +// SetLastDeploymentAttemptedAt sets the LastDeploymentAttemptedAt field's value. +func (s *ServiceInstanceSummary) SetLastDeploymentAttemptedAt(v time.Time) *ServiceInstanceSummary { + s.LastDeploymentAttemptedAt = &v + return s +} + +// SetLastDeploymentSucceededAt sets the LastDeploymentSucceededAt field's value. +func (s *ServiceInstanceSummary) SetLastDeploymentSucceededAt(v time.Time) *ServiceInstanceSummary { + s.LastDeploymentSucceededAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ServiceInstanceSummary) SetName(v string) *ServiceInstanceSummary { + s.Name = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *ServiceInstanceSummary) SetServiceName(v string) *ServiceInstanceSummary { + s.ServiceName = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *ServiceInstanceSummary) SetTemplateMajorVersion(v string) *ServiceInstanceSummary { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *ServiceInstanceSummary) SetTemplateMinorVersion(v string) *ServiceInstanceSummary { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ServiceInstanceSummary) SetTemplateName(v string) *ServiceInstanceSummary { + s.TemplateName = &v + return s +} + +// The service pipeline detail data. +type ServicePipeline struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service pipeline. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The time when the service pipeline was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // The deployment status of the service pipeline. + // + // DeploymentStatus is a required field + DeploymentStatus *string `locationName:"deploymentStatus" type:"string" required:"true" enum:"DeploymentStatus"` + + // A service pipeline deployment status message. + DeploymentStatusMessage *string `locationName:"deploymentStatusMessage" type:"string" sensitive:"true"` + + // The time when a deployment of the service pipeline was last attempted. + // + // LastDeploymentAttemptedAt is a required field + LastDeploymentAttemptedAt *time.Time `locationName:"lastDeploymentAttemptedAt" type:"timestamp" required:"true"` + + // The time when the service pipeline was last deployed successfully. + // + // LastDeploymentSucceededAt is a required field + LastDeploymentSucceededAt *time.Time `locationName:"lastDeploymentSucceededAt" type:"timestamp" required:"true"` + + // The service spec that was used to create the service pipeline. + Spec *string `locationName:"spec" min:"1" type:"string" sensitive:"true"` + + // The ID of the major version of the service template that was used to create + // the service pipeline. + // + // TemplateMajorVersion is a required field + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of the service template that was used to create + // the service pipeline. + // + // TemplateMinorVersion is a required field + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string" required:"true"` + + // The name of the service template that was used to create the service pipeline. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ServicePipeline) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServicePipeline) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServicePipeline) SetArn(v string) *ServicePipeline { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServicePipeline) SetCreatedAt(v time.Time) *ServicePipeline { + s.CreatedAt = &v + return s +} + +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *ServicePipeline) SetDeploymentStatus(v string) *ServicePipeline { + s.DeploymentStatus = &v + return s +} + +// SetDeploymentStatusMessage sets the DeploymentStatusMessage field's value. +func (s *ServicePipeline) SetDeploymentStatusMessage(v string) *ServicePipeline { + s.DeploymentStatusMessage = &v + return s +} + +// SetLastDeploymentAttemptedAt sets the LastDeploymentAttemptedAt field's value. +func (s *ServicePipeline) SetLastDeploymentAttemptedAt(v time.Time) *ServicePipeline { + s.LastDeploymentAttemptedAt = &v + return s +} + +// SetLastDeploymentSucceededAt sets the LastDeploymentSucceededAt field's value. +func (s *ServicePipeline) SetLastDeploymentSucceededAt(v time.Time) *ServicePipeline { + s.LastDeploymentSucceededAt = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *ServicePipeline) SetSpec(v string) *ServicePipeline { + s.Spec = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *ServicePipeline) SetTemplateMajorVersion(v string) *ServicePipeline { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *ServicePipeline) SetTemplateMinorVersion(v string) *ServicePipeline { + s.TemplateMinorVersion = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ServicePipeline) SetTemplateName(v string) *ServicePipeline { + s.TemplateName = &v + return s +} + +// A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) +// in the AWS Proton Administration Guide. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A summary of the service detail data. +type ServiceSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the service was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the service. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The time when the service was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The name of the service. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The status of the service. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ServiceStatus"` + + // A service status message. + StatusMessage *string `locationName:"statusMessage" type:"string" sensitive:"true"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ServiceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceSummary) SetArn(v string) *ServiceSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceSummary) SetCreatedAt(v time.Time) *ServiceSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ServiceSummary) SetDescription(v string) *ServiceSummary { + s.Description = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ServiceSummary) SetLastModifiedAt(v time.Time) *ServiceSummary { + s.LastModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ServiceSummary) SetName(v string) *ServiceSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ServiceSummary) SetStatus(v string) *ServiceSummary { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *ServiceSummary) SetStatusMessage(v string) *ServiceSummary { + s.StatusMessage = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ServiceSummary) SetTemplateName(v string) *ServiceSummary { + s.TemplateName = &v + return s +} + +// The service template detail data. +type ServiceTemplate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the service template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the service template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The service template name as displayed in the developer interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // The customer provided service template encryption key that's used to encrypt + // data. + EncryptionKey *string `locationName:"encryptionKey" min:"1" type:"string"` + + // The time when the service template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The name of the service template. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // If pipelineProvisioning is true, a service pipeline is included in the service + // template. Otherwise, a service pipeline isn't included in the service template. + PipelineProvisioning *string `locationName:"pipelineProvisioning" type:"string" enum:"Provisioning"` + + // The ID of the recommended version of the service template. + RecommendedVersion *string `locationName:"recommendedVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s ServiceTemplate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceTemplate) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceTemplate) SetArn(v string) *ServiceTemplate { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceTemplate) SetCreatedAt(v time.Time) *ServiceTemplate { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ServiceTemplate) SetDescription(v string) *ServiceTemplate { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *ServiceTemplate) SetDisplayName(v string) *ServiceTemplate { + s.DisplayName = &v + return s +} + +// SetEncryptionKey sets the EncryptionKey field's value. +func (s *ServiceTemplate) SetEncryptionKey(v string) *ServiceTemplate { + s.EncryptionKey = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ServiceTemplate) SetLastModifiedAt(v time.Time) *ServiceTemplate { + s.LastModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ServiceTemplate) SetName(v string) *ServiceTemplate { + s.Name = &v + return s +} + +// SetPipelineProvisioning sets the PipelineProvisioning field's value. +func (s *ServiceTemplate) SetPipelineProvisioning(v string) *ServiceTemplate { + s.PipelineProvisioning = &v + return s +} + +// SetRecommendedVersion sets the RecommendedVersion field's value. +func (s *ServiceTemplate) SetRecommendedVersion(v string) *ServiceTemplate { + s.RecommendedVersion = &v + return s +} + +// The service template summary data. +type ServiceTemplateSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the service template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the service template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the service template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The service template name as displayed in the developer interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // The time when the service template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The name of the service template. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // If pipelineProvisioning is true, a service pipeline is included in the service + // template, otherwise a service pipeline isn't included in the service template. + PipelineProvisioning *string `locationName:"pipelineProvisioning" type:"string" enum:"Provisioning"` + + // The ID of the recommended version of the service template. + RecommendedVersion *string `locationName:"recommendedVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s ServiceTemplateSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceTemplateSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceTemplateSummary) SetArn(v string) *ServiceTemplateSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceTemplateSummary) SetCreatedAt(v time.Time) *ServiceTemplateSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ServiceTemplateSummary) SetDescription(v string) *ServiceTemplateSummary { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *ServiceTemplateSummary) SetDisplayName(v string) *ServiceTemplateSummary { + s.DisplayName = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ServiceTemplateSummary) SetLastModifiedAt(v time.Time) *ServiceTemplateSummary { + s.LastModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ServiceTemplateSummary) SetName(v string) *ServiceTemplateSummary { + s.Name = &v + return s +} + +// SetPipelineProvisioning sets the PipelineProvisioning field's value. +func (s *ServiceTemplateSummary) SetPipelineProvisioning(v string) *ServiceTemplateSummary { + s.PipelineProvisioning = &v + return s +} + +// SetRecommendedVersion sets the RecommendedVersion field's value. +func (s *ServiceTemplateSummary) SetRecommendedVersion(v string) *ServiceTemplateSummary { + s.RecommendedVersion = &v + return s +} + +// The version of a service template detail data. +type ServiceTemplateVersion struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the version of a service template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // An array of compatible environment template names for the major version of + // a service template. + // + // CompatibleEnvironmentTemplates is a required field + CompatibleEnvironmentTemplates []*CompatibleEnvironmentTemplate `locationName:"compatibleEnvironmentTemplates" type:"list" required:"true"` + + // The time when the version of a service template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the version of a service template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The time when the version of a service template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The ID of the latest major version that's associated with the version of + // a service template. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of a service template. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The ID of the recommended minor version of the service template. + RecommendedMinorVersion *string `locationName:"recommendedMinorVersion" min:"1" type:"string"` + + // The schema of the version of a service template. + Schema *string `locationName:"schema" min:"1" type:"string" sensitive:"true"` + + // The service template version status. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TemplateVersionStatus"` + + // A service template version status message. + StatusMessage *string `locationName:"statusMessage" type:"string" sensitive:"true"` + + // The name of the version of a service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ServiceTemplateVersion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceTemplateVersion) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceTemplateVersion) SetArn(v string) *ServiceTemplateVersion { + s.Arn = &v + return s +} + +// SetCompatibleEnvironmentTemplates sets the CompatibleEnvironmentTemplates field's value. +func (s *ServiceTemplateVersion) SetCompatibleEnvironmentTemplates(v []*CompatibleEnvironmentTemplate) *ServiceTemplateVersion { + s.CompatibleEnvironmentTemplates = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceTemplateVersion) SetCreatedAt(v time.Time) *ServiceTemplateVersion { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ServiceTemplateVersion) SetDescription(v string) *ServiceTemplateVersion { + s.Description = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ServiceTemplateVersion) SetLastModifiedAt(v time.Time) *ServiceTemplateVersion { + s.LastModifiedAt = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *ServiceTemplateVersion) SetMajorVersion(v string) *ServiceTemplateVersion { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *ServiceTemplateVersion) SetMinorVersion(v string) *ServiceTemplateVersion { + s.MinorVersion = &v + return s +} + +// SetRecommendedMinorVersion sets the RecommendedMinorVersion field's value. +func (s *ServiceTemplateVersion) SetRecommendedMinorVersion(v string) *ServiceTemplateVersion { + s.RecommendedMinorVersion = &v + return s +} + +// SetSchema sets the Schema field's value. +func (s *ServiceTemplateVersion) SetSchema(v string) *ServiceTemplateVersion { + s.Schema = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ServiceTemplateVersion) SetStatus(v string) *ServiceTemplateVersion { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *ServiceTemplateVersion) SetStatusMessage(v string) *ServiceTemplateVersion { + s.StatusMessage = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ServiceTemplateVersion) SetTemplateName(v string) *ServiceTemplateVersion { + s.TemplateName = &v + return s +} + +// A summary of the service template version detail data. +type ServiceTemplateVersionSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the version of a service template. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time when the version of a service template was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"` + + // A description of the version of a service template. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The time when the version of a service template was last modified. + // + // LastModifiedAt is a required field + LastModifiedAt *time.Time `locationName:"lastModifiedAt" type:"timestamp" required:"true"` + + // The ID of the latest major version that's associated with the version of + // a service template. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // The ID of the minor version of a service template. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The ID of the recommended minor version of the service template. + RecommendedMinorVersion *string `locationName:"recommendedMinorVersion" min:"1" type:"string"` + + // The service template minor version status. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TemplateVersionStatus"` + + // A service template minor version status message. + StatusMessage *string `locationName:"statusMessage" type:"string" sensitive:"true"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s ServiceTemplateVersionSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ServiceTemplateVersionSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ServiceTemplateVersionSummary) SetArn(v string) *ServiceTemplateVersionSummary { + s.Arn = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ServiceTemplateVersionSummary) SetCreatedAt(v time.Time) *ServiceTemplateVersionSummary { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ServiceTemplateVersionSummary) SetDescription(v string) *ServiceTemplateVersionSummary { + s.Description = &v + return s +} + +// SetLastModifiedAt sets the LastModifiedAt field's value. +func (s *ServiceTemplateVersionSummary) SetLastModifiedAt(v time.Time) *ServiceTemplateVersionSummary { + s.LastModifiedAt = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *ServiceTemplateVersionSummary) SetMajorVersion(v string) *ServiceTemplateVersionSummary { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *ServiceTemplateVersionSummary) SetMinorVersion(v string) *ServiceTemplateVersionSummary { + s.MinorVersion = &v + return s +} + +// SetRecommendedMinorVersion sets the RecommendedMinorVersion field's value. +func (s *ServiceTemplateVersionSummary) SetRecommendedMinorVersion(v string) *ServiceTemplateVersionSummary { + s.RecommendedMinorVersion = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ServiceTemplateVersionSummary) SetStatus(v string) *ServiceTemplateVersionSummary { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *ServiceTemplateVersionSummary) SetStatusMessage(v string) *ServiceTemplateVersionSummary { + s.StatusMessage = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *ServiceTemplateVersionSummary) SetTemplateName(v string) *ServiceTemplateVersionSummary { + s.TemplateName = &v + return s +} + +// A description of a resource tag. +type Tag struct { + _ struct{} `type:"structure"` + + // The key of the resource tag. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + // The value of the resource tag. + // + // Value is a required field + Value *string `locationName:"value" type:"string" required:"true"` +} + +// String returns the string representation +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that the resource tag is applied + // to. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // An array of resource tags to apply to a resource. + // + // Tags is a required field + Tags []*Tag `locationName:"tags" type:"list" required:"true"` +} + +// String returns the string representation +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// Template version source data. +type TemplateVersionSourceInput struct { + _ struct{} `type:"structure"` + + // An S3 source object that includes the template bundle S3 path and name for + // a template minor version. + S3 *S3ObjectSource `locationName:"s3" type:"structure"` +} + +// String returns the string representation +func (s TemplateVersionSourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TemplateVersionSourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TemplateVersionSourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TemplateVersionSourceInput"} + if s.S3 != nil { + if err := s.S3.Validate(); err != nil { + invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3 sets the S3 field's value. +func (s *TemplateVersionSourceInput) SetS3(v *S3ObjectSource) *TemplateVersionSourceInput { + s.S3 = v + return s +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource that the tag is to be removed + // from. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // An array of tag keys indicating the resource tags to be removed from the + // resource. + // + // TagKeys is a required field + TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateAccountSettingsInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AWS Proton pipeline service role. + PipelineServiceRoleArn *string `locationName:"pipelineServiceRoleArn" min:"1" type:"string"` +} + +// String returns the string representation +func (s UpdateAccountSettingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateAccountSettingsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAccountSettingsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAccountSettingsInput"} + if s.PipelineServiceRoleArn != nil && len(*s.PipelineServiceRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PipelineServiceRoleArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPipelineServiceRoleArn sets the PipelineServiceRoleArn field's value. +func (s *UpdateAccountSettingsInput) SetPipelineServiceRoleArn(v string) *UpdateAccountSettingsInput { + s.PipelineServiceRoleArn = &v + return s +} + +type UpdateAccountSettingsOutput struct { + _ struct{} `type:"structure"` + + // The AWS Proton pipeline service role detail data that's returned by AWS Proton. + // + // AccountSettings is a required field + AccountSettings *AccountSettings `locationName:"accountSettings" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateAccountSettingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateAccountSettingsOutput) GoString() string { + return s.String() +} + +// SetAccountSettings sets the AccountSettings field's value. +func (s *UpdateAccountSettingsOutput) SetAccountSettings(v *AccountSettings) *UpdateAccountSettingsOutput { + s.AccountSettings = v + return s +} + +type UpdateEnvironmentAccountConnectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the environment account connection to update. + // + // Id is a required field + Id *string `locationName:"id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the IAM service role that is associated + // with the environment account connection to update. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentAccountConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentAccountConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentAccountConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentAccountConnectionInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *UpdateEnvironmentAccountConnectionInput) SetId(v string) *UpdateEnvironmentAccountConnectionInput { + s.Id = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateEnvironmentAccountConnectionInput) SetRoleArn(v string) *UpdateEnvironmentAccountConnectionInput { + s.RoleArn = &v + return s +} + +type UpdateEnvironmentAccountConnectionOutput struct { + _ struct{} `type:"structure"` + + // The environment account connection detail data that's returned by AWS Proton. + // + // EnvironmentAccountConnection is a required field + EnvironmentAccountConnection *EnvironmentAccountConnection `locationName:"environmentAccountConnection" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentAccountConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentAccountConnectionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentAccountConnection sets the EnvironmentAccountConnection field's value. +func (s *UpdateEnvironmentAccountConnectionOutput) SetEnvironmentAccountConnection(v *EnvironmentAccountConnection) *UpdateEnvironmentAccountConnectionOutput { + s.EnvironmentAccountConnection = v + return s +} + +type UpdateEnvironmentInput struct { + _ struct{} `type:"structure"` + + // There are four modes for updating an environment as described in the following. + // The deploymentType field defines the mode. + // + // NONE + // + // In this mode, a deployment doesn't occur. Only the requested metadata parameters + // are updated. + // + // CURRENT_VERSION + // + // In this mode, the environment is deployed and updated with the new spec that + // you provide. Only requested parameters are updated. Don’t include minor + // or major version parameters when you use this deployment-type. + // + // MINOR_VERSION + // + // In this mode, the environment is deployed and updated with the published, + // recommended (latest) minor version of the current major version in use, by + // default. You can also specify a different minor version of the current major + // version in use. + // + // MAJOR_VERSION + // + // In this mode, the environment is deployed and updated with the published, + // recommended (latest) major and minor version of the current template, by + // default. You can also specify a different major version that is higher than + // the major version in use and a minor version (optional). + // + // DeploymentType is a required field + DeploymentType *string `locationName:"deploymentType" type:"string" required:"true" enum:"DeploymentUpdateType"` + + // A description of the environment update. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The ID of the environment account connection. + // + // You can only update to a new environment account connection if it was created + // in the same environment account that the current environment account connection + // was created in and associated with the current environment. + EnvironmentAccountConnectionId *string `locationName:"environmentAccountConnectionId" type:"string"` + + // The name of the environment to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the AWS Proton service role that allows AWS Proton to make API + // calls to other services your behalf. + ProtonServiceRoleArn *string `locationName:"protonServiceRoleArn" min:"1" type:"string"` + + // The formatted specification that defines the update. + Spec *string `locationName:"spec" min:"1" type:"string" sensitive:"true"` + + // The ID of the major version of the environment to update. + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string"` + + // The ID of the minor version of the environment to update. + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s UpdateEnvironmentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"} + if s.DeploymentType == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentType")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ProtonServiceRoleArn != nil && len(*s.ProtonServiceRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProtonServiceRoleArn", 1)) + } + if s.Spec != nil && len(*s.Spec) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Spec", 1)) + } + if s.TemplateMajorVersion != nil && len(*s.TemplateMajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMajorVersion", 1)) + } + if s.TemplateMinorVersion != nil && len(*s.TemplateMinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMinorVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *UpdateEnvironmentInput) SetDeploymentType(v string) *UpdateEnvironmentInput { + s.DeploymentType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentInput) SetDescription(v string) *UpdateEnvironmentInput { + s.Description = &v + return s +} + +// SetEnvironmentAccountConnectionId sets the EnvironmentAccountConnectionId field's value. +func (s *UpdateEnvironmentInput) SetEnvironmentAccountConnectionId(v string) *UpdateEnvironmentInput { + s.EnvironmentAccountConnectionId = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentInput) SetName(v string) *UpdateEnvironmentInput { + s.Name = &v + return s +} + +// SetProtonServiceRoleArn sets the ProtonServiceRoleArn field's value. +func (s *UpdateEnvironmentInput) SetProtonServiceRoleArn(v string) *UpdateEnvironmentInput { + s.ProtonServiceRoleArn = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *UpdateEnvironmentInput) SetSpec(v string) *UpdateEnvironmentInput { + s.Spec = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *UpdateEnvironmentInput) SetTemplateMajorVersion(v string) *UpdateEnvironmentInput { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *UpdateEnvironmentInput) SetTemplateMinorVersion(v string) *UpdateEnvironmentInput { + s.TemplateMinorVersion = &v + return s +} + +type UpdateEnvironmentOutput struct { + _ struct{} `type:"structure"` + + // The environment detail data that's returned by AWS Proton. + // + // Environment is a required field + Environment *Environment `locationName:"environment" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentOutput) GoString() string { + return s.String() +} + +// SetEnvironment sets the Environment field's value. +func (s *UpdateEnvironmentOutput) SetEnvironment(v *Environment) *UpdateEnvironmentOutput { + s.Environment = v + return s +} + +type UpdateEnvironmentTemplateInput struct { + _ struct{} `type:"structure"` + + // A description of the environment template update. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The name of the environment template to update as displayed in the developer + // interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // The name of the environment template to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentTemplateInput"} + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentTemplateInput) SetDescription(v string) *UpdateEnvironmentTemplateInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdateEnvironmentTemplateInput) SetDisplayName(v string) *UpdateEnvironmentTemplateInput { + s.DisplayName = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateEnvironmentTemplateInput) SetName(v string) *UpdateEnvironmentTemplateInput { + s.Name = &v + return s +} + +type UpdateEnvironmentTemplateOutput struct { + _ struct{} `type:"structure"` + + // The environment template detail data that's returned by AWS Proton. + // + // EnvironmentTemplate is a required field + EnvironmentTemplate *EnvironmentTemplate `locationName:"environmentTemplate" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentTemplateOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplate sets the EnvironmentTemplate field's value. +func (s *UpdateEnvironmentTemplateOutput) SetEnvironmentTemplate(v *EnvironmentTemplate) *UpdateEnvironmentTemplateOutput { + s.EnvironmentTemplate = v + return s +} + +type UpdateEnvironmentTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // A description of environment template version to update. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // To update a major version of an environment template, include majorVersion. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // To update a minor version of an environment template, include minorVersion. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The status of the environment template minor version to update. + Status *string `locationName:"status" type:"string" enum:"TemplateVersionStatus"` + + // The name of the environment template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnvironmentTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentTemplateVersionInput"} + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MinorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MinorVersion")) + } + if s.MinorVersion != nil && len(*s.MinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateEnvironmentTemplateVersionInput) SetDescription(v string) *UpdateEnvironmentTemplateVersionInput { + s.Description = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *UpdateEnvironmentTemplateVersionInput) SetMajorVersion(v string) *UpdateEnvironmentTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *UpdateEnvironmentTemplateVersionInput) SetMinorVersion(v string) *UpdateEnvironmentTemplateVersionInput { + s.MinorVersion = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateEnvironmentTemplateVersionInput) SetStatus(v string) *UpdateEnvironmentTemplateVersionInput { + s.Status = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *UpdateEnvironmentTemplateVersionInput) SetTemplateName(v string) *UpdateEnvironmentTemplateVersionInput { + s.TemplateName = &v + return s +} + +type UpdateEnvironmentTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The environment template version detail data that's returned by AWS Proton. + // + // EnvironmentTemplateVersion is a required field + EnvironmentTemplateVersion *EnvironmentTemplateVersion `locationName:"environmentTemplateVersion" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateEnvironmentTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateEnvironmentTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetEnvironmentTemplateVersion sets the EnvironmentTemplateVersion field's value. +func (s *UpdateEnvironmentTemplateVersionOutput) SetEnvironmentTemplateVersion(v *EnvironmentTemplateVersion) *UpdateEnvironmentTemplateVersionOutput { + s.EnvironmentTemplateVersion = v + return s +} + +type UpdateServiceInput struct { + _ struct{} `type:"structure"` + + // The edited service description. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The name of the service to edit. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Lists the service instances to add and the existing service instances to + // remain. Omit the existing service instances to delete from the list. Don't + // include edits to the existing service instances or pipeline. For more information, + // see Edit a service in the AWS Proton Administration Guide (https://docs.aws.amazon.com/proton/latest/adminguide/ag-svc-update.html) + // or the AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/ug-svc-update.html). + Spec *string `locationName:"spec" min:"1" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s UpdateServiceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateServiceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateServiceInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Spec != nil && len(*s.Spec) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Spec", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateServiceInput) SetDescription(v string) *UpdateServiceInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateServiceInput) SetName(v string) *UpdateServiceInput { + s.Name = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *UpdateServiceInput) SetSpec(v string) *UpdateServiceInput { + s.Spec = &v + return s +} + +type UpdateServiceInstanceInput struct { + _ struct{} `type:"structure"` + + // The deployment type. + // + // There are four modes for updating a service instance as described in the + // following. The deploymentType field defines the mode. + // + // NONE + // + // In this mode, a deployment doesn't occur. Only the requested metadata parameters + // are updated. + // + // CURRENT_VERSION + // + // In this mode, the service instance is deployed and updated with the new spec + // that you provide. Only requested parameters are updated. Don’t include + // minor or major version parameters when you use this deployment-type. + // + // MINOR_VERSION + // + // In this mode, the service instance is deployed and updated with the published, + // recommended (latest) minor version of the current major version in use, by + // default. You can also specify a different minor version of the current major + // version in use. + // + // MAJOR_VERSION + // + // In this mode, the service instance is deployed and updated with the published, + // recommended (latest) major and minor version of the current template, by + // default. You can also specify a different major version that is higher than + // the major version in use and a minor version (optional). + // + // DeploymentType is a required field + DeploymentType *string `locationName:"deploymentType" type:"string" required:"true" enum:"DeploymentUpdateType"` + + // The name of the service instance to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The name of the service that the service instance belongs to. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` + + // The formatted specification that defines the service instance update. + Spec *string `locationName:"spec" min:"1" type:"string" sensitive:"true"` + + // The major version of the service template to update. + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string"` + + // The minor version of the service template to update. + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s UpdateServiceInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateServiceInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateServiceInstanceInput"} + if s.DeploymentType == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentType")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceName")) + } + if s.ServiceName != nil && len(*s.ServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) + } + if s.Spec != nil && len(*s.Spec) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Spec", 1)) + } + if s.TemplateMajorVersion != nil && len(*s.TemplateMajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMajorVersion", 1)) + } + if s.TemplateMinorVersion != nil && len(*s.TemplateMinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMinorVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *UpdateServiceInstanceInput) SetDeploymentType(v string) *UpdateServiceInstanceInput { + s.DeploymentType = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateServiceInstanceInput) SetName(v string) *UpdateServiceInstanceInput { + s.Name = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *UpdateServiceInstanceInput) SetServiceName(v string) *UpdateServiceInstanceInput { + s.ServiceName = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *UpdateServiceInstanceInput) SetSpec(v string) *UpdateServiceInstanceInput { + s.Spec = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *UpdateServiceInstanceInput) SetTemplateMajorVersion(v string) *UpdateServiceInstanceInput { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *UpdateServiceInstanceInput) SetTemplateMinorVersion(v string) *UpdateServiceInstanceInput { + s.TemplateMinorVersion = &v + return s +} + +type UpdateServiceInstanceOutput struct { + _ struct{} `type:"structure"` + + // The service instance summary data returned by AWS Proton. + // + // ServiceInstance is a required field + ServiceInstance *ServiceInstance `locationName:"serviceInstance" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateServiceInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceInstanceOutput) GoString() string { + return s.String() +} + +// SetServiceInstance sets the ServiceInstance field's value. +func (s *UpdateServiceInstanceOutput) SetServiceInstance(v *ServiceInstance) *UpdateServiceInstanceOutput { + s.ServiceInstance = v + return s +} + +type UpdateServiceOutput struct { + _ struct{} `type:"structure"` + + // The service detail data that's returned by AWS Proton. + // + // Service is a required field + Service *Service `locationName:"service" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateServiceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceOutput) GoString() string { + return s.String() +} + +// SetService sets the Service field's value. +func (s *UpdateServiceOutput) SetService(v *Service) *UpdateServiceOutput { + s.Service = v + return s +} + +type UpdateServicePipelineInput struct { + _ struct{} `type:"structure"` + + // The deployment type. + // + // There are four modes for updating a service pipeline as described in the + // following. The deploymentType field defines the mode. + // + // NONE + // + // In this mode, a deployment doesn't occur. Only the requested metadata parameters + // are updated. + // + // CURRENT_VERSION + // + // In this mode, the service pipeline is deployed and updated with the new spec + // that you provide. Only requested parameters are updated. Don’t include + // minor or major version parameters when you use this deployment-type. + // + // MINOR_VERSION + // + // In this mode, the service pipeline is deployed and updated with the published, + // recommended (latest) minor version of the current major version in use, by + // default. You can also specify a different minor version of the current major + // version in use. + // + // MAJOR_VERSION + // + // In this mode, the service pipeline is deployed and updated with the published, + // recommended (latest) major and minor version of the current template, by + // default. You can also specify a different major version that is higher than + // the major version in use and a minor version (optional). + // + // DeploymentType is a required field + DeploymentType *string `locationName:"deploymentType" type:"string" required:"true" enum:"DeploymentUpdateType"` + + // The name of the service to that the pipeline is associated with. + // + // ServiceName is a required field + ServiceName *string `locationName:"serviceName" min:"1" type:"string" required:"true"` + + // The spec for the service pipeline to update. + // + // Spec is a required field + Spec *string `locationName:"spec" min:"1" type:"string" required:"true" sensitive:"true"` + + // The major version of the service template that was used to create the service + // that the pipeline is associated with. + TemplateMajorVersion *string `locationName:"templateMajorVersion" min:"1" type:"string"` + + // The minor version of the service template that was used to create the service + // that the pipeline is associated with. + TemplateMinorVersion *string `locationName:"templateMinorVersion" min:"1" type:"string"` +} + +// String returns the string representation +func (s UpdateServicePipelineInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServicePipelineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateServicePipelineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateServicePipelineInput"} + if s.DeploymentType == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentType")) + } + if s.ServiceName == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceName")) + } + if s.ServiceName != nil && len(*s.ServiceName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) + } + if s.Spec == nil { + invalidParams.Add(request.NewErrParamRequired("Spec")) + } + if s.Spec != nil && len(*s.Spec) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Spec", 1)) + } + if s.TemplateMajorVersion != nil && len(*s.TemplateMajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMajorVersion", 1)) + } + if s.TemplateMinorVersion != nil && len(*s.TemplateMinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateMinorVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *UpdateServicePipelineInput) SetDeploymentType(v string) *UpdateServicePipelineInput { + s.DeploymentType = &v + return s +} + +// SetServiceName sets the ServiceName field's value. +func (s *UpdateServicePipelineInput) SetServiceName(v string) *UpdateServicePipelineInput { + s.ServiceName = &v + return s +} + +// SetSpec sets the Spec field's value. +func (s *UpdateServicePipelineInput) SetSpec(v string) *UpdateServicePipelineInput { + s.Spec = &v + return s +} + +// SetTemplateMajorVersion sets the TemplateMajorVersion field's value. +func (s *UpdateServicePipelineInput) SetTemplateMajorVersion(v string) *UpdateServicePipelineInput { + s.TemplateMajorVersion = &v + return s +} + +// SetTemplateMinorVersion sets the TemplateMinorVersion field's value. +func (s *UpdateServicePipelineInput) SetTemplateMinorVersion(v string) *UpdateServicePipelineInput { + s.TemplateMinorVersion = &v + return s +} + +type UpdateServicePipelineOutput struct { + _ struct{} `type:"structure"` + + // The pipeline details returned by AWS Proton. + // + // Pipeline is a required field + Pipeline *ServicePipeline `locationName:"pipeline" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateServicePipelineOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServicePipelineOutput) GoString() string { + return s.String() +} + +// SetPipeline sets the Pipeline field's value. +func (s *UpdateServicePipelineOutput) SetPipeline(v *ServicePipeline) *UpdateServicePipelineOutput { + s.Pipeline = v + return s +} + +type UpdateServiceTemplateInput struct { + _ struct{} `type:"structure"` + + // A description of the service template update. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The name of the service template to update as displayed in the developer + // interface. + DisplayName *string `locationName:"displayName" min:"1" type:"string" sensitive:"true"` + + // The name of the service template to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateServiceTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateServiceTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateServiceTemplateInput"} + if s.DisplayName != nil && len(*s.DisplayName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateServiceTemplateInput) SetDescription(v string) *UpdateServiceTemplateInput { + s.Description = &v + return s +} + +// SetDisplayName sets the DisplayName field's value. +func (s *UpdateServiceTemplateInput) SetDisplayName(v string) *UpdateServiceTemplateInput { + s.DisplayName = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateServiceTemplateInput) SetName(v string) *UpdateServiceTemplateInput { + s.Name = &v + return s +} + +type UpdateServiceTemplateOutput struct { + _ struct{} `type:"structure"` + + // The service template detail data that's returned by AWS Proton. + // + // ServiceTemplate is a required field + ServiceTemplate *ServiceTemplate `locationName:"serviceTemplate" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateServiceTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceTemplateOutput) GoString() string { + return s.String() +} + +// SetServiceTemplate sets the ServiceTemplate field's value. +func (s *UpdateServiceTemplateOutput) SetServiceTemplate(v *ServiceTemplate) *UpdateServiceTemplateOutput { + s.ServiceTemplate = v + return s +} + +type UpdateServiceTemplateVersionInput struct { + _ struct{} `type:"structure"` + + // An array of compatible environment names for a service template major or + // minor version to update. + CompatibleEnvironmentTemplates []*CompatibleEnvironmentTemplateInput `locationName:"compatibleEnvironmentTemplates" min:"1" type:"list"` + + // A description of a service template version to update. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // To update a major version of a service template, include majorVersion. + // + // MajorVersion is a required field + MajorVersion *string `locationName:"majorVersion" min:"1" type:"string" required:"true"` + + // To update a minor version of a service template, include minorVersion. + // + // MinorVersion is a required field + MinorVersion *string `locationName:"minorVersion" min:"1" type:"string" required:"true"` + + // The status of the service template minor version to update. + Status *string `locationName:"status" type:"string" enum:"TemplateVersionStatus"` + + // The name of the service template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateServiceTemplateVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceTemplateVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateServiceTemplateVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateServiceTemplateVersionInput"} + if s.CompatibleEnvironmentTemplates != nil && len(s.CompatibleEnvironmentTemplates) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CompatibleEnvironmentTemplates", 1)) + } + if s.MajorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MajorVersion")) + } + if s.MajorVersion != nil && len(*s.MajorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MajorVersion", 1)) + } + if s.MinorVersion == nil { + invalidParams.Add(request.NewErrParamRequired("MinorVersion")) + } + if s.MinorVersion != nil && len(*s.MinorVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MinorVersion", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + if s.CompatibleEnvironmentTemplates != nil { + for i, v := range s.CompatibleEnvironmentTemplates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CompatibleEnvironmentTemplates", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCompatibleEnvironmentTemplates sets the CompatibleEnvironmentTemplates field's value. +func (s *UpdateServiceTemplateVersionInput) SetCompatibleEnvironmentTemplates(v []*CompatibleEnvironmentTemplateInput) *UpdateServiceTemplateVersionInput { + s.CompatibleEnvironmentTemplates = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateServiceTemplateVersionInput) SetDescription(v string) *UpdateServiceTemplateVersionInput { + s.Description = &v + return s +} + +// SetMajorVersion sets the MajorVersion field's value. +func (s *UpdateServiceTemplateVersionInput) SetMajorVersion(v string) *UpdateServiceTemplateVersionInput { + s.MajorVersion = &v + return s +} + +// SetMinorVersion sets the MinorVersion field's value. +func (s *UpdateServiceTemplateVersionInput) SetMinorVersion(v string) *UpdateServiceTemplateVersionInput { + s.MinorVersion = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateServiceTemplateVersionInput) SetStatus(v string) *UpdateServiceTemplateVersionInput { + s.Status = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *UpdateServiceTemplateVersionInput) SetTemplateName(v string) *UpdateServiceTemplateVersionInput { + s.TemplateName = &v + return s +} + +type UpdateServiceTemplateVersionOutput struct { + _ struct{} `type:"structure"` + + // The service template version detail data that's returned by AWS Proton. + // + // ServiceTemplateVersion is a required field + ServiceTemplateVersion *ServiceTemplateVersion `locationName:"serviceTemplateVersion" type:"structure" required:"true"` +} + +// String returns the string representation +func (s UpdateServiceTemplateVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateServiceTemplateVersionOutput) GoString() string { + return s.String() +} + +// SetServiceTemplateVersion sets the ServiceTemplateVersion field's value. +func (s *UpdateServiceTemplateVersionOutput) SetServiceTemplateVersion(v *ServiceTemplateVersion) *UpdateServiceTemplateVersionOutput { + s.ServiceTemplateVersion = v + return s +} + +// The input is invalid or an out-of-range value was supplied for the input +// parameter. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +const ( + // DeploymentStatusInProgress is a DeploymentStatus enum value + DeploymentStatusInProgress = "IN_PROGRESS" + + // DeploymentStatusFailed is a DeploymentStatus enum value + DeploymentStatusFailed = "FAILED" + + // DeploymentStatusSucceeded is a DeploymentStatus enum value + DeploymentStatusSucceeded = "SUCCEEDED" + + // DeploymentStatusDeleteInProgress is a DeploymentStatus enum value + DeploymentStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // DeploymentStatusDeleteFailed is a DeploymentStatus enum value + DeploymentStatusDeleteFailed = "DELETE_FAILED" + + // DeploymentStatusDeleteComplete is a DeploymentStatus enum value + DeploymentStatusDeleteComplete = "DELETE_COMPLETE" + + // DeploymentStatusCancelling is a DeploymentStatus enum value + DeploymentStatusCancelling = "CANCELLING" + + // DeploymentStatusCancelled is a DeploymentStatus enum value + DeploymentStatusCancelled = "CANCELLED" +) + +// DeploymentStatus_Values returns all elements of the DeploymentStatus enum +func DeploymentStatus_Values() []string { + return []string{ + DeploymentStatusInProgress, + DeploymentStatusFailed, + DeploymentStatusSucceeded, + DeploymentStatusDeleteInProgress, + DeploymentStatusDeleteFailed, + DeploymentStatusDeleteComplete, + DeploymentStatusCancelling, + DeploymentStatusCancelled, + } +} + +const ( + // DeploymentUpdateTypeNone is a DeploymentUpdateType enum value + DeploymentUpdateTypeNone = "NONE" + + // DeploymentUpdateTypeCurrentVersion is a DeploymentUpdateType enum value + DeploymentUpdateTypeCurrentVersion = "CURRENT_VERSION" + + // DeploymentUpdateTypeMinorVersion is a DeploymentUpdateType enum value + DeploymentUpdateTypeMinorVersion = "MINOR_VERSION" + + // DeploymentUpdateTypeMajorVersion is a DeploymentUpdateType enum value + DeploymentUpdateTypeMajorVersion = "MAJOR_VERSION" +) + +// DeploymentUpdateType_Values returns all elements of the DeploymentUpdateType enum +func DeploymentUpdateType_Values() []string { + return []string{ + DeploymentUpdateTypeNone, + DeploymentUpdateTypeCurrentVersion, + DeploymentUpdateTypeMinorVersion, + DeploymentUpdateTypeMajorVersion, + } +} + +const ( + // EnvironmentAccountConnectionRequesterAccountTypeManagementAccount is a EnvironmentAccountConnectionRequesterAccountType enum value + EnvironmentAccountConnectionRequesterAccountTypeManagementAccount = "MANAGEMENT_ACCOUNT" + + // EnvironmentAccountConnectionRequesterAccountTypeEnvironmentAccount is a EnvironmentAccountConnectionRequesterAccountType enum value + EnvironmentAccountConnectionRequesterAccountTypeEnvironmentAccount = "ENVIRONMENT_ACCOUNT" +) + +// EnvironmentAccountConnectionRequesterAccountType_Values returns all elements of the EnvironmentAccountConnectionRequesterAccountType enum +func EnvironmentAccountConnectionRequesterAccountType_Values() []string { + return []string{ + EnvironmentAccountConnectionRequesterAccountTypeManagementAccount, + EnvironmentAccountConnectionRequesterAccountTypeEnvironmentAccount, + } +} + +const ( + // EnvironmentAccountConnectionStatusPending is a EnvironmentAccountConnectionStatus enum value + EnvironmentAccountConnectionStatusPending = "PENDING" + + // EnvironmentAccountConnectionStatusConnected is a EnvironmentAccountConnectionStatus enum value + EnvironmentAccountConnectionStatusConnected = "CONNECTED" + + // EnvironmentAccountConnectionStatusRejected is a EnvironmentAccountConnectionStatus enum value + EnvironmentAccountConnectionStatusRejected = "REJECTED" +) + +// EnvironmentAccountConnectionStatus_Values returns all elements of the EnvironmentAccountConnectionStatus enum +func EnvironmentAccountConnectionStatus_Values() []string { + return []string{ + EnvironmentAccountConnectionStatusPending, + EnvironmentAccountConnectionStatusConnected, + EnvironmentAccountConnectionStatusRejected, + } +} + +const ( + // ProvisioningCustomerManaged is a Provisioning enum value + ProvisioningCustomerManaged = "CUSTOMER_MANAGED" +) + +// Provisioning_Values returns all elements of the Provisioning enum +func Provisioning_Values() []string { + return []string{ + ProvisioningCustomerManaged, + } +} + +const ( + // ServiceStatusCreateInProgress is a ServiceStatus enum value + ServiceStatusCreateInProgress = "CREATE_IN_PROGRESS" + + // ServiceStatusCreateFailedCleanupInProgress is a ServiceStatus enum value + ServiceStatusCreateFailedCleanupInProgress = "CREATE_FAILED_CLEANUP_IN_PROGRESS" + + // ServiceStatusCreateFailedCleanupComplete is a ServiceStatus enum value + ServiceStatusCreateFailedCleanupComplete = "CREATE_FAILED_CLEANUP_COMPLETE" + + // ServiceStatusCreateFailedCleanupFailed is a ServiceStatus enum value + ServiceStatusCreateFailedCleanupFailed = "CREATE_FAILED_CLEANUP_FAILED" + + // ServiceStatusCreateFailed is a ServiceStatus enum value + ServiceStatusCreateFailed = "CREATE_FAILED" + + // ServiceStatusActive is a ServiceStatus enum value + ServiceStatusActive = "ACTIVE" + + // ServiceStatusDeleteInProgress is a ServiceStatus enum value + ServiceStatusDeleteInProgress = "DELETE_IN_PROGRESS" + + // ServiceStatusDeleteFailed is a ServiceStatus enum value + ServiceStatusDeleteFailed = "DELETE_FAILED" + + // ServiceStatusUpdateInProgress is a ServiceStatus enum value + ServiceStatusUpdateInProgress = "UPDATE_IN_PROGRESS" + + // ServiceStatusUpdateFailedCleanupInProgress is a ServiceStatus enum value + ServiceStatusUpdateFailedCleanupInProgress = "UPDATE_FAILED_CLEANUP_IN_PROGRESS" + + // ServiceStatusUpdateFailedCleanupComplete is a ServiceStatus enum value + ServiceStatusUpdateFailedCleanupComplete = "UPDATE_FAILED_CLEANUP_COMPLETE" + + // ServiceStatusUpdateFailedCleanupFailed is a ServiceStatus enum value + ServiceStatusUpdateFailedCleanupFailed = "UPDATE_FAILED_CLEANUP_FAILED" + + // ServiceStatusUpdateFailed is a ServiceStatus enum value + ServiceStatusUpdateFailed = "UPDATE_FAILED" + + // ServiceStatusUpdateCompleteCleanupFailed is a ServiceStatus enum value + ServiceStatusUpdateCompleteCleanupFailed = "UPDATE_COMPLETE_CLEANUP_FAILED" +) + +// ServiceStatus_Values returns all elements of the ServiceStatus enum +func ServiceStatus_Values() []string { + return []string{ + ServiceStatusCreateInProgress, + ServiceStatusCreateFailedCleanupInProgress, + ServiceStatusCreateFailedCleanupComplete, + ServiceStatusCreateFailedCleanupFailed, + ServiceStatusCreateFailed, + ServiceStatusActive, + ServiceStatusDeleteInProgress, + ServiceStatusDeleteFailed, + ServiceStatusUpdateInProgress, + ServiceStatusUpdateFailedCleanupInProgress, + ServiceStatusUpdateFailedCleanupComplete, + ServiceStatusUpdateFailedCleanupFailed, + ServiceStatusUpdateFailed, + ServiceStatusUpdateCompleteCleanupFailed, + } +} + +const ( + // TemplateVersionStatusRegistrationInProgress is a TemplateVersionStatus enum value + TemplateVersionStatusRegistrationInProgress = "REGISTRATION_IN_PROGRESS" + + // TemplateVersionStatusRegistrationFailed is a TemplateVersionStatus enum value + TemplateVersionStatusRegistrationFailed = "REGISTRATION_FAILED" + + // TemplateVersionStatusDraft is a TemplateVersionStatus enum value + TemplateVersionStatusDraft = "DRAFT" + + // TemplateVersionStatusPublished is a TemplateVersionStatus enum value + TemplateVersionStatusPublished = "PUBLISHED" +) + +// TemplateVersionStatus_Values returns all elements of the TemplateVersionStatus enum +func TemplateVersionStatus_Values() []string { + return []string{ + TemplateVersionStatusRegistrationInProgress, + TemplateVersionStatusRegistrationFailed, + TemplateVersionStatusDraft, + TemplateVersionStatusPublished, + } +} diff --git a/service/proton/doc.go b/service/proton/doc.go new file mode 100644 index 00000000000..2c2e0cc4706 --- /dev/null +++ b/service/proton/doc.go @@ -0,0 +1,130 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package proton provides the client and types for making API +// requests to AWS Proton. +// +// This is the AWS Proton Service API Reference. It provides descriptions, syntax +// and usage examples for each of the actions (https://docs.aws.amazon.com/proton/latest/APIReference/API_Operations.html) +// and data types (https://docs.aws.amazon.com/proton/latest/APIReference/API_Types.html) +// for the AWS Proton service. +// +// The documentation for each action shows the Query API request parameters +// and the XML response. +// +// Alternatively, you can use the AWS CLI to access an API. For more information, +// see the AWS Command Line Interface User Guide (https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html). +// +// The AWS Proton service is a two-pronged automation framework. Administrators +// create service templates to provide standardized infrastructure and deployment +// tooling for serverless and container based applications. Developers, in turn, +// select from the available service templates to automate their application +// or service deployments. +// +// Because administrators define the infrastructure and tooling that AWS Proton +// deploys and manages, they need permissions to use all of the listed API operations. +// +// When developers select a specific infrastructure and tooling set, AWS Proton +// deploys their applications. To monitor their applications that are running +// on AWS Proton, developers need permissions to the service create, list, update +// and delete API operations and the service instance list and update API operations. +// +// To learn more about AWS Proton administration, see the AWS Proton Administration +// Guide (https://docs.aws.amazon.com/proton/latest/adminguide/Welcome.html). +// +// To learn more about deploying serverless and containerized applications on +// AWS Proton, see the AWS Proton User Guide (https://docs.aws.amazon.com/proton/latest/userguide/Welcome.html). +// +// Ensuring Idempotency +// +// When you make a mutating API request, the request typically returns a result +// before the asynchronous workflows of the operation are complete. Operations +// might also time out or encounter other server issues before they're complete, +// even if the request already returned a result. This might make it difficult +// to determine whether the request succeeded. Moreover, you might need to retry +// the request multiple times to ensure that the operation completes successfully. +// However, if the original request and the subsequent retries are successful, +// the operation occurs multiple times. This means that you might create more +// resources than you intended. +// +// Idempotency ensures that an API request action completes no more than one +// time. With an idempotent request, if the original request action completes +// successfully, any subsequent retries complete successfully without performing +// any further actions. However, the result might contain updated information, +// such as the current creation status. +// +// The following lists of APIs are grouped according to methods that ensure +// idempotency. +// +// Idempotent create APIs with a client token +// +// The API actions in this list support idempotency with the use of a client +// token. The corresponding AWS CLI commands also support idempotency using +// a client token. A client token is a unique, case-sensitive string of up to +// 64 ASCII characters. To make an idempotent API request using one of these +// actions, specify a client token in the request. We recommend that you don't +// reuse the same client token for other API requests. If you don’t provide +// a client token for these APIs, a default client token is automatically provided +// by SDKs. +// +// Given a request action that has succeeded: +// +// If you retry the request using the same client token and the same parameters, +// the retry succeeds without performing any further actions other than returning +// the original resource detail data in the response. +// +// If you retry the request using the same client token, but one or more of +// the parameters are different, the retry throws a ValidationException with +// an IdempotentParameterMismatch error. +// +// Client tokens expire eight hours after a request is made. If you retry the +// request with the expired token, a new resource is created. +// +// If the original resource is deleted and you retry the request, a new resource +// is created. +// +// Idempotent create APIs with a client token: +// +// * CreateEnvironmentTemplateVersion +// +// * CreateServiceTemplateVersion +// +// * CreateEnvironmentAccountConnection +// +//

Idempotent delete APIs

Given a request action that +// has succeeded:

When you retry the request with an API from this +// group and the resource was deleted, its metadata is returned in the response.

+//

If you retry and the resource doesn't exist, the response is empty.

+//

In both cases, the retry succeeds.

Idempotent delete APIs:

+//

Asynchronous +// idempotent delete APIs

Given a request action that has succeeded:

+//

If you retry the request with an API from this group, if the original +// request delete operation status is DELETE_IN_PROGRESS, the +// retry returns the resource detail data in the response without performing +// any further actions.

If the original request delete operation is +// complete, a retry returns an empty response.

Asynchronous idempotent +// delete APIs:

+// +// See https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20 for more information on this service. +// +// See proton package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/proton/ +// +// Using the Client +// +// To contact AWS Proton with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Proton client Proton for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/proton/#New +package proton diff --git a/service/proton/errors.go b/service/proton/errors.go new file mode 100644 index 00000000000..9404ca87bd7 --- /dev/null +++ b/service/proton/errors.go @@ -0,0 +1,64 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package proton + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // There isn't sufficient access for performing this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // The request couldn't be made due to a conflicting operation or resource. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // The request failed to register with the service. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The requested resource wasn't found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // A quota was exceeded. For more information, see AWS Proton Quotas (https://docs.aws.amazon.com/proton/latest/adminguide/ag-limits.html) + // in the AWS Proton Administration Guide. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input is invalid or an out-of-range value was supplied for the input + // parameter. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff --git a/service/proton/protoniface/interface.go b/service/proton/protoniface/interface.go new file mode 100644 index 00000000000..884f1c2d6e5 --- /dev/null +++ b/service/proton/protoniface/interface.go @@ -0,0 +1,287 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package protoniface provides an interface to enable mocking the AWS Proton service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package protoniface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/proton" +) + +// ProtonAPI provides an interface to enable mocking the +// proton.Proton service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Proton. +// func myFunc(svc protoniface.ProtonAPI) bool { +// // Make svc.AcceptEnvironmentAccountConnection request +// } +// +// func main() { +// sess := session.New() +// svc := proton.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockProtonClient struct { +// protoniface.ProtonAPI +// } +// func (m *mockProtonClient) AcceptEnvironmentAccountConnection(input *proton.AcceptEnvironmentAccountConnectionInput) (*proton.AcceptEnvironmentAccountConnectionOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockProtonClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type ProtonAPI interface { + AcceptEnvironmentAccountConnection(*proton.AcceptEnvironmentAccountConnectionInput) (*proton.AcceptEnvironmentAccountConnectionOutput, error) + AcceptEnvironmentAccountConnectionWithContext(aws.Context, *proton.AcceptEnvironmentAccountConnectionInput, ...request.Option) (*proton.AcceptEnvironmentAccountConnectionOutput, error) + AcceptEnvironmentAccountConnectionRequest(*proton.AcceptEnvironmentAccountConnectionInput) (*request.Request, *proton.AcceptEnvironmentAccountConnectionOutput) + + CancelEnvironmentDeployment(*proton.CancelEnvironmentDeploymentInput) (*proton.CancelEnvironmentDeploymentOutput, error) + CancelEnvironmentDeploymentWithContext(aws.Context, *proton.CancelEnvironmentDeploymentInput, ...request.Option) (*proton.CancelEnvironmentDeploymentOutput, error) + CancelEnvironmentDeploymentRequest(*proton.CancelEnvironmentDeploymentInput) (*request.Request, *proton.CancelEnvironmentDeploymentOutput) + + CancelServiceInstanceDeployment(*proton.CancelServiceInstanceDeploymentInput) (*proton.CancelServiceInstanceDeploymentOutput, error) + CancelServiceInstanceDeploymentWithContext(aws.Context, *proton.CancelServiceInstanceDeploymentInput, ...request.Option) (*proton.CancelServiceInstanceDeploymentOutput, error) + CancelServiceInstanceDeploymentRequest(*proton.CancelServiceInstanceDeploymentInput) (*request.Request, *proton.CancelServiceInstanceDeploymentOutput) + + CancelServicePipelineDeployment(*proton.CancelServicePipelineDeploymentInput) (*proton.CancelServicePipelineDeploymentOutput, error) + CancelServicePipelineDeploymentWithContext(aws.Context, *proton.CancelServicePipelineDeploymentInput, ...request.Option) (*proton.CancelServicePipelineDeploymentOutput, error) + CancelServicePipelineDeploymentRequest(*proton.CancelServicePipelineDeploymentInput) (*request.Request, *proton.CancelServicePipelineDeploymentOutput) + + CreateEnvironment(*proton.CreateEnvironmentInput) (*proton.CreateEnvironmentOutput, error) + CreateEnvironmentWithContext(aws.Context, *proton.CreateEnvironmentInput, ...request.Option) (*proton.CreateEnvironmentOutput, error) + CreateEnvironmentRequest(*proton.CreateEnvironmentInput) (*request.Request, *proton.CreateEnvironmentOutput) + + CreateEnvironmentAccountConnection(*proton.CreateEnvironmentAccountConnectionInput) (*proton.CreateEnvironmentAccountConnectionOutput, error) + CreateEnvironmentAccountConnectionWithContext(aws.Context, *proton.CreateEnvironmentAccountConnectionInput, ...request.Option) (*proton.CreateEnvironmentAccountConnectionOutput, error) + CreateEnvironmentAccountConnectionRequest(*proton.CreateEnvironmentAccountConnectionInput) (*request.Request, *proton.CreateEnvironmentAccountConnectionOutput) + + CreateEnvironmentTemplate(*proton.CreateEnvironmentTemplateInput) (*proton.CreateEnvironmentTemplateOutput, error) + CreateEnvironmentTemplateWithContext(aws.Context, *proton.CreateEnvironmentTemplateInput, ...request.Option) (*proton.CreateEnvironmentTemplateOutput, error) + CreateEnvironmentTemplateRequest(*proton.CreateEnvironmentTemplateInput) (*request.Request, *proton.CreateEnvironmentTemplateOutput) + + CreateEnvironmentTemplateVersion(*proton.CreateEnvironmentTemplateVersionInput) (*proton.CreateEnvironmentTemplateVersionOutput, error) + CreateEnvironmentTemplateVersionWithContext(aws.Context, *proton.CreateEnvironmentTemplateVersionInput, ...request.Option) (*proton.CreateEnvironmentTemplateVersionOutput, error) + CreateEnvironmentTemplateVersionRequest(*proton.CreateEnvironmentTemplateVersionInput) (*request.Request, *proton.CreateEnvironmentTemplateVersionOutput) + + CreateService(*proton.CreateServiceInput) (*proton.CreateServiceOutput, error) + CreateServiceWithContext(aws.Context, *proton.CreateServiceInput, ...request.Option) (*proton.CreateServiceOutput, error) + CreateServiceRequest(*proton.CreateServiceInput) (*request.Request, *proton.CreateServiceOutput) + + CreateServiceTemplate(*proton.CreateServiceTemplateInput) (*proton.CreateServiceTemplateOutput, error) + CreateServiceTemplateWithContext(aws.Context, *proton.CreateServiceTemplateInput, ...request.Option) (*proton.CreateServiceTemplateOutput, error) + CreateServiceTemplateRequest(*proton.CreateServiceTemplateInput) (*request.Request, *proton.CreateServiceTemplateOutput) + + CreateServiceTemplateVersion(*proton.CreateServiceTemplateVersionInput) (*proton.CreateServiceTemplateVersionOutput, error) + CreateServiceTemplateVersionWithContext(aws.Context, *proton.CreateServiceTemplateVersionInput, ...request.Option) (*proton.CreateServiceTemplateVersionOutput, error) + CreateServiceTemplateVersionRequest(*proton.CreateServiceTemplateVersionInput) (*request.Request, *proton.CreateServiceTemplateVersionOutput) + + DeleteEnvironment(*proton.DeleteEnvironmentInput) (*proton.DeleteEnvironmentOutput, error) + DeleteEnvironmentWithContext(aws.Context, *proton.DeleteEnvironmentInput, ...request.Option) (*proton.DeleteEnvironmentOutput, error) + DeleteEnvironmentRequest(*proton.DeleteEnvironmentInput) (*request.Request, *proton.DeleteEnvironmentOutput) + + DeleteEnvironmentAccountConnection(*proton.DeleteEnvironmentAccountConnectionInput) (*proton.DeleteEnvironmentAccountConnectionOutput, error) + DeleteEnvironmentAccountConnectionWithContext(aws.Context, *proton.DeleteEnvironmentAccountConnectionInput, ...request.Option) (*proton.DeleteEnvironmentAccountConnectionOutput, error) + DeleteEnvironmentAccountConnectionRequest(*proton.DeleteEnvironmentAccountConnectionInput) (*request.Request, *proton.DeleteEnvironmentAccountConnectionOutput) + + DeleteEnvironmentTemplate(*proton.DeleteEnvironmentTemplateInput) (*proton.DeleteEnvironmentTemplateOutput, error) + DeleteEnvironmentTemplateWithContext(aws.Context, *proton.DeleteEnvironmentTemplateInput, ...request.Option) (*proton.DeleteEnvironmentTemplateOutput, error) + DeleteEnvironmentTemplateRequest(*proton.DeleteEnvironmentTemplateInput) (*request.Request, *proton.DeleteEnvironmentTemplateOutput) + + DeleteEnvironmentTemplateVersion(*proton.DeleteEnvironmentTemplateVersionInput) (*proton.DeleteEnvironmentTemplateVersionOutput, error) + DeleteEnvironmentTemplateVersionWithContext(aws.Context, *proton.DeleteEnvironmentTemplateVersionInput, ...request.Option) (*proton.DeleteEnvironmentTemplateVersionOutput, error) + DeleteEnvironmentTemplateVersionRequest(*proton.DeleteEnvironmentTemplateVersionInput) (*request.Request, *proton.DeleteEnvironmentTemplateVersionOutput) + + DeleteService(*proton.DeleteServiceInput) (*proton.DeleteServiceOutput, error) + DeleteServiceWithContext(aws.Context, *proton.DeleteServiceInput, ...request.Option) (*proton.DeleteServiceOutput, error) + DeleteServiceRequest(*proton.DeleteServiceInput) (*request.Request, *proton.DeleteServiceOutput) + + DeleteServiceTemplate(*proton.DeleteServiceTemplateInput) (*proton.DeleteServiceTemplateOutput, error) + DeleteServiceTemplateWithContext(aws.Context, *proton.DeleteServiceTemplateInput, ...request.Option) (*proton.DeleteServiceTemplateOutput, error) + DeleteServiceTemplateRequest(*proton.DeleteServiceTemplateInput) (*request.Request, *proton.DeleteServiceTemplateOutput) + + DeleteServiceTemplateVersion(*proton.DeleteServiceTemplateVersionInput) (*proton.DeleteServiceTemplateVersionOutput, error) + DeleteServiceTemplateVersionWithContext(aws.Context, *proton.DeleteServiceTemplateVersionInput, ...request.Option) (*proton.DeleteServiceTemplateVersionOutput, error) + DeleteServiceTemplateVersionRequest(*proton.DeleteServiceTemplateVersionInput) (*request.Request, *proton.DeleteServiceTemplateVersionOutput) + + GetAccountSettings(*proton.GetAccountSettingsInput) (*proton.GetAccountSettingsOutput, error) + GetAccountSettingsWithContext(aws.Context, *proton.GetAccountSettingsInput, ...request.Option) (*proton.GetAccountSettingsOutput, error) + GetAccountSettingsRequest(*proton.GetAccountSettingsInput) (*request.Request, *proton.GetAccountSettingsOutput) + + GetEnvironment(*proton.GetEnvironmentInput) (*proton.GetEnvironmentOutput, error) + GetEnvironmentWithContext(aws.Context, *proton.GetEnvironmentInput, ...request.Option) (*proton.GetEnvironmentOutput, error) + GetEnvironmentRequest(*proton.GetEnvironmentInput) (*request.Request, *proton.GetEnvironmentOutput) + + GetEnvironmentAccountConnection(*proton.GetEnvironmentAccountConnectionInput) (*proton.GetEnvironmentAccountConnectionOutput, error) + GetEnvironmentAccountConnectionWithContext(aws.Context, *proton.GetEnvironmentAccountConnectionInput, ...request.Option) (*proton.GetEnvironmentAccountConnectionOutput, error) + GetEnvironmentAccountConnectionRequest(*proton.GetEnvironmentAccountConnectionInput) (*request.Request, *proton.GetEnvironmentAccountConnectionOutput) + + GetEnvironmentTemplate(*proton.GetEnvironmentTemplateInput) (*proton.GetEnvironmentTemplateOutput, error) + GetEnvironmentTemplateWithContext(aws.Context, *proton.GetEnvironmentTemplateInput, ...request.Option) (*proton.GetEnvironmentTemplateOutput, error) + GetEnvironmentTemplateRequest(*proton.GetEnvironmentTemplateInput) (*request.Request, *proton.GetEnvironmentTemplateOutput) + + GetEnvironmentTemplateVersion(*proton.GetEnvironmentTemplateVersionInput) (*proton.GetEnvironmentTemplateVersionOutput, error) + GetEnvironmentTemplateVersionWithContext(aws.Context, *proton.GetEnvironmentTemplateVersionInput, ...request.Option) (*proton.GetEnvironmentTemplateVersionOutput, error) + GetEnvironmentTemplateVersionRequest(*proton.GetEnvironmentTemplateVersionInput) (*request.Request, *proton.GetEnvironmentTemplateVersionOutput) + + GetService(*proton.GetServiceInput) (*proton.GetServiceOutput, error) + GetServiceWithContext(aws.Context, *proton.GetServiceInput, ...request.Option) (*proton.GetServiceOutput, error) + GetServiceRequest(*proton.GetServiceInput) (*request.Request, *proton.GetServiceOutput) + + GetServiceInstance(*proton.GetServiceInstanceInput) (*proton.GetServiceInstanceOutput, error) + GetServiceInstanceWithContext(aws.Context, *proton.GetServiceInstanceInput, ...request.Option) (*proton.GetServiceInstanceOutput, error) + GetServiceInstanceRequest(*proton.GetServiceInstanceInput) (*request.Request, *proton.GetServiceInstanceOutput) + + GetServiceTemplate(*proton.GetServiceTemplateInput) (*proton.GetServiceTemplateOutput, error) + GetServiceTemplateWithContext(aws.Context, *proton.GetServiceTemplateInput, ...request.Option) (*proton.GetServiceTemplateOutput, error) + GetServiceTemplateRequest(*proton.GetServiceTemplateInput) (*request.Request, *proton.GetServiceTemplateOutput) + + GetServiceTemplateVersion(*proton.GetServiceTemplateVersionInput) (*proton.GetServiceTemplateVersionOutput, error) + GetServiceTemplateVersionWithContext(aws.Context, *proton.GetServiceTemplateVersionInput, ...request.Option) (*proton.GetServiceTemplateVersionOutput, error) + GetServiceTemplateVersionRequest(*proton.GetServiceTemplateVersionInput) (*request.Request, *proton.GetServiceTemplateVersionOutput) + + ListEnvironmentAccountConnections(*proton.ListEnvironmentAccountConnectionsInput) (*proton.ListEnvironmentAccountConnectionsOutput, error) + ListEnvironmentAccountConnectionsWithContext(aws.Context, *proton.ListEnvironmentAccountConnectionsInput, ...request.Option) (*proton.ListEnvironmentAccountConnectionsOutput, error) + ListEnvironmentAccountConnectionsRequest(*proton.ListEnvironmentAccountConnectionsInput) (*request.Request, *proton.ListEnvironmentAccountConnectionsOutput) + + ListEnvironmentAccountConnectionsPages(*proton.ListEnvironmentAccountConnectionsInput, func(*proton.ListEnvironmentAccountConnectionsOutput, bool) bool) error + ListEnvironmentAccountConnectionsPagesWithContext(aws.Context, *proton.ListEnvironmentAccountConnectionsInput, func(*proton.ListEnvironmentAccountConnectionsOutput, bool) bool, ...request.Option) error + + ListEnvironmentTemplateVersions(*proton.ListEnvironmentTemplateVersionsInput) (*proton.ListEnvironmentTemplateVersionsOutput, error) + ListEnvironmentTemplateVersionsWithContext(aws.Context, *proton.ListEnvironmentTemplateVersionsInput, ...request.Option) (*proton.ListEnvironmentTemplateVersionsOutput, error) + ListEnvironmentTemplateVersionsRequest(*proton.ListEnvironmentTemplateVersionsInput) (*request.Request, *proton.ListEnvironmentTemplateVersionsOutput) + + ListEnvironmentTemplateVersionsPages(*proton.ListEnvironmentTemplateVersionsInput, func(*proton.ListEnvironmentTemplateVersionsOutput, bool) bool) error + ListEnvironmentTemplateVersionsPagesWithContext(aws.Context, *proton.ListEnvironmentTemplateVersionsInput, func(*proton.ListEnvironmentTemplateVersionsOutput, bool) bool, ...request.Option) error + + ListEnvironmentTemplates(*proton.ListEnvironmentTemplatesInput) (*proton.ListEnvironmentTemplatesOutput, error) + ListEnvironmentTemplatesWithContext(aws.Context, *proton.ListEnvironmentTemplatesInput, ...request.Option) (*proton.ListEnvironmentTemplatesOutput, error) + ListEnvironmentTemplatesRequest(*proton.ListEnvironmentTemplatesInput) (*request.Request, *proton.ListEnvironmentTemplatesOutput) + + ListEnvironmentTemplatesPages(*proton.ListEnvironmentTemplatesInput, func(*proton.ListEnvironmentTemplatesOutput, bool) bool) error + ListEnvironmentTemplatesPagesWithContext(aws.Context, *proton.ListEnvironmentTemplatesInput, func(*proton.ListEnvironmentTemplatesOutput, bool) bool, ...request.Option) error + + ListEnvironments(*proton.ListEnvironmentsInput) (*proton.ListEnvironmentsOutput, error) + ListEnvironmentsWithContext(aws.Context, *proton.ListEnvironmentsInput, ...request.Option) (*proton.ListEnvironmentsOutput, error) + ListEnvironmentsRequest(*proton.ListEnvironmentsInput) (*request.Request, *proton.ListEnvironmentsOutput) + + ListEnvironmentsPages(*proton.ListEnvironmentsInput, func(*proton.ListEnvironmentsOutput, bool) bool) error + ListEnvironmentsPagesWithContext(aws.Context, *proton.ListEnvironmentsInput, func(*proton.ListEnvironmentsOutput, bool) bool, ...request.Option) error + + ListServiceInstances(*proton.ListServiceInstancesInput) (*proton.ListServiceInstancesOutput, error) + ListServiceInstancesWithContext(aws.Context, *proton.ListServiceInstancesInput, ...request.Option) (*proton.ListServiceInstancesOutput, error) + ListServiceInstancesRequest(*proton.ListServiceInstancesInput) (*request.Request, *proton.ListServiceInstancesOutput) + + ListServiceInstancesPages(*proton.ListServiceInstancesInput, func(*proton.ListServiceInstancesOutput, bool) bool) error + ListServiceInstancesPagesWithContext(aws.Context, *proton.ListServiceInstancesInput, func(*proton.ListServiceInstancesOutput, bool) bool, ...request.Option) error + + ListServiceTemplateVersions(*proton.ListServiceTemplateVersionsInput) (*proton.ListServiceTemplateVersionsOutput, error) + ListServiceTemplateVersionsWithContext(aws.Context, *proton.ListServiceTemplateVersionsInput, ...request.Option) (*proton.ListServiceTemplateVersionsOutput, error) + ListServiceTemplateVersionsRequest(*proton.ListServiceTemplateVersionsInput) (*request.Request, *proton.ListServiceTemplateVersionsOutput) + + ListServiceTemplateVersionsPages(*proton.ListServiceTemplateVersionsInput, func(*proton.ListServiceTemplateVersionsOutput, bool) bool) error + ListServiceTemplateVersionsPagesWithContext(aws.Context, *proton.ListServiceTemplateVersionsInput, func(*proton.ListServiceTemplateVersionsOutput, bool) bool, ...request.Option) error + + ListServiceTemplates(*proton.ListServiceTemplatesInput) (*proton.ListServiceTemplatesOutput, error) + ListServiceTemplatesWithContext(aws.Context, *proton.ListServiceTemplatesInput, ...request.Option) (*proton.ListServiceTemplatesOutput, error) + ListServiceTemplatesRequest(*proton.ListServiceTemplatesInput) (*request.Request, *proton.ListServiceTemplatesOutput) + + ListServiceTemplatesPages(*proton.ListServiceTemplatesInput, func(*proton.ListServiceTemplatesOutput, bool) bool) error + ListServiceTemplatesPagesWithContext(aws.Context, *proton.ListServiceTemplatesInput, func(*proton.ListServiceTemplatesOutput, bool) bool, ...request.Option) error + + ListServices(*proton.ListServicesInput) (*proton.ListServicesOutput, error) + ListServicesWithContext(aws.Context, *proton.ListServicesInput, ...request.Option) (*proton.ListServicesOutput, error) + ListServicesRequest(*proton.ListServicesInput) (*request.Request, *proton.ListServicesOutput) + + ListServicesPages(*proton.ListServicesInput, func(*proton.ListServicesOutput, bool) bool) error + ListServicesPagesWithContext(aws.Context, *proton.ListServicesInput, func(*proton.ListServicesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*proton.ListTagsForResourceInput) (*proton.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *proton.ListTagsForResourceInput, ...request.Option) (*proton.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*proton.ListTagsForResourceInput) (*request.Request, *proton.ListTagsForResourceOutput) + + ListTagsForResourcePages(*proton.ListTagsForResourceInput, func(*proton.ListTagsForResourceOutput, bool) bool) error + ListTagsForResourcePagesWithContext(aws.Context, *proton.ListTagsForResourceInput, func(*proton.ListTagsForResourceOutput, bool) bool, ...request.Option) error + + RejectEnvironmentAccountConnection(*proton.RejectEnvironmentAccountConnectionInput) (*proton.RejectEnvironmentAccountConnectionOutput, error) + RejectEnvironmentAccountConnectionWithContext(aws.Context, *proton.RejectEnvironmentAccountConnectionInput, ...request.Option) (*proton.RejectEnvironmentAccountConnectionOutput, error) + RejectEnvironmentAccountConnectionRequest(*proton.RejectEnvironmentAccountConnectionInput) (*request.Request, *proton.RejectEnvironmentAccountConnectionOutput) + + TagResource(*proton.TagResourceInput) (*proton.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *proton.TagResourceInput, ...request.Option) (*proton.TagResourceOutput, error) + TagResourceRequest(*proton.TagResourceInput) (*request.Request, *proton.TagResourceOutput) + + UntagResource(*proton.UntagResourceInput) (*proton.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *proton.UntagResourceInput, ...request.Option) (*proton.UntagResourceOutput, error) + UntagResourceRequest(*proton.UntagResourceInput) (*request.Request, *proton.UntagResourceOutput) + + UpdateAccountSettings(*proton.UpdateAccountSettingsInput) (*proton.UpdateAccountSettingsOutput, error) + UpdateAccountSettingsWithContext(aws.Context, *proton.UpdateAccountSettingsInput, ...request.Option) (*proton.UpdateAccountSettingsOutput, error) + UpdateAccountSettingsRequest(*proton.UpdateAccountSettingsInput) (*request.Request, *proton.UpdateAccountSettingsOutput) + + UpdateEnvironment(*proton.UpdateEnvironmentInput) (*proton.UpdateEnvironmentOutput, error) + UpdateEnvironmentWithContext(aws.Context, *proton.UpdateEnvironmentInput, ...request.Option) (*proton.UpdateEnvironmentOutput, error) + UpdateEnvironmentRequest(*proton.UpdateEnvironmentInput) (*request.Request, *proton.UpdateEnvironmentOutput) + + UpdateEnvironmentAccountConnection(*proton.UpdateEnvironmentAccountConnectionInput) (*proton.UpdateEnvironmentAccountConnectionOutput, error) + UpdateEnvironmentAccountConnectionWithContext(aws.Context, *proton.UpdateEnvironmentAccountConnectionInput, ...request.Option) (*proton.UpdateEnvironmentAccountConnectionOutput, error) + UpdateEnvironmentAccountConnectionRequest(*proton.UpdateEnvironmentAccountConnectionInput) (*request.Request, *proton.UpdateEnvironmentAccountConnectionOutput) + + UpdateEnvironmentTemplate(*proton.UpdateEnvironmentTemplateInput) (*proton.UpdateEnvironmentTemplateOutput, error) + UpdateEnvironmentTemplateWithContext(aws.Context, *proton.UpdateEnvironmentTemplateInput, ...request.Option) (*proton.UpdateEnvironmentTemplateOutput, error) + UpdateEnvironmentTemplateRequest(*proton.UpdateEnvironmentTemplateInput) (*request.Request, *proton.UpdateEnvironmentTemplateOutput) + + UpdateEnvironmentTemplateVersion(*proton.UpdateEnvironmentTemplateVersionInput) (*proton.UpdateEnvironmentTemplateVersionOutput, error) + UpdateEnvironmentTemplateVersionWithContext(aws.Context, *proton.UpdateEnvironmentTemplateVersionInput, ...request.Option) (*proton.UpdateEnvironmentTemplateVersionOutput, error) + UpdateEnvironmentTemplateVersionRequest(*proton.UpdateEnvironmentTemplateVersionInput) (*request.Request, *proton.UpdateEnvironmentTemplateVersionOutput) + + UpdateService(*proton.UpdateServiceInput) (*proton.UpdateServiceOutput, error) + UpdateServiceWithContext(aws.Context, *proton.UpdateServiceInput, ...request.Option) (*proton.UpdateServiceOutput, error) + UpdateServiceRequest(*proton.UpdateServiceInput) (*request.Request, *proton.UpdateServiceOutput) + + UpdateServiceInstance(*proton.UpdateServiceInstanceInput) (*proton.UpdateServiceInstanceOutput, error) + UpdateServiceInstanceWithContext(aws.Context, *proton.UpdateServiceInstanceInput, ...request.Option) (*proton.UpdateServiceInstanceOutput, error) + UpdateServiceInstanceRequest(*proton.UpdateServiceInstanceInput) (*request.Request, *proton.UpdateServiceInstanceOutput) + + UpdateServicePipeline(*proton.UpdateServicePipelineInput) (*proton.UpdateServicePipelineOutput, error) + UpdateServicePipelineWithContext(aws.Context, *proton.UpdateServicePipelineInput, ...request.Option) (*proton.UpdateServicePipelineOutput, error) + UpdateServicePipelineRequest(*proton.UpdateServicePipelineInput) (*request.Request, *proton.UpdateServicePipelineOutput) + + UpdateServiceTemplate(*proton.UpdateServiceTemplateInput) (*proton.UpdateServiceTemplateOutput, error) + UpdateServiceTemplateWithContext(aws.Context, *proton.UpdateServiceTemplateInput, ...request.Option) (*proton.UpdateServiceTemplateOutput, error) + UpdateServiceTemplateRequest(*proton.UpdateServiceTemplateInput) (*request.Request, *proton.UpdateServiceTemplateOutput) + + UpdateServiceTemplateVersion(*proton.UpdateServiceTemplateVersionInput) (*proton.UpdateServiceTemplateVersionOutput, error) + UpdateServiceTemplateVersionWithContext(aws.Context, *proton.UpdateServiceTemplateVersionInput, ...request.Option) (*proton.UpdateServiceTemplateVersionOutput, error) + UpdateServiceTemplateVersionRequest(*proton.UpdateServiceTemplateVersionInput) (*request.Request, *proton.UpdateServiceTemplateVersionOutput) +} + +var _ ProtonAPI = (*proton.Proton)(nil) diff --git a/service/proton/service.go b/service/proton/service.go new file mode 100644 index 00000000000..031c3c5218d --- /dev/null +++ b/service/proton/service.go @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package proton + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +// Proton provides the API operation methods for making requests to +// AWS Proton. See this package's package overview docs +// for details on the service. +// +// Proton methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type Proton struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "Proton" // Name of service. + EndpointsID = "proton" // ID to lookup a service endpoint with. + ServiceID = "Proton" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the Proton client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// mySession := session.Must(session.NewSession()) +// +// // Create a Proton client from just a session. +// svc := proton.New(mySession) +// +// // Create a Proton client with additional configuration +// svc := proton.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *Proton { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "proton" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName string) *Proton { + svc := &Proton{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2020-07-20", + JSONVersion: "1.0", + TargetPrefix: "AwsProton20200720", + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(jsonrpc.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a Proton operation and runs any +// custom request initialization. +func (c *Proton) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff --git a/service/transfer/api.go b/service/transfer/api.go index 7470b180a9a..c729024a27c 100644 --- a/service/transfer/api.go +++ b/service/transfer/api.go @@ -2838,7 +2838,7 @@ type CreateAccessInput struct { // the following command using Windows PowerShell. // // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * - // | Select SamaccountName,ObjectSid + // | Select SamAccountName,ObjectSid // // In that command, replace YourGroupName with the name of your Active Directory // group. @@ -2853,7 +2853,7 @@ type CreateAccessInput struct { // The landing directory (folder) for a user when they log in to the server // using the client. // - // A HomeDirectory example is /directory_name/home/mydirectory. + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -2887,15 +2887,14 @@ type CreateAccessInput struct { // aws s3api put-object --bucket bucketname --key path/to/folder/ // // The end of the key name must end in a / for it to be considered a folder. - // - // Required: No HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` - // The type of landing directory (folder) that you want your users' home directory - // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket paths as is in their file transfer protocol - // clients. If you set it LOGICAL, you must provide mappings in the HomeDirectoryMappings - // for how you want to make Amazon S3 paths visible to your users. + // The type of landing directory (folder) you want your users' home directory + // to be when they log into the server. If you set it to PATH, the user will + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A scope-down policy for your user so that you can use the same IAM role across @@ -2904,7 +2903,7 @@ type CreateAccessInput struct { // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. // // This only applies when domain of ServerId is S3. Amazon EFS does not use - // scope down policy. + // scope-down policies. // // For scope-down policies, AWS Transfer Family stores the policy as a JSON // blob, instead of the Amazon Resource Name (ARN) of the policy. You save the @@ -2923,12 +2922,12 @@ type CreateAccessInput struct { // get when transferring files into and out of your Amazon EFS file systems. PosixProfile *PosixProfile `type:"structure"` - // Specifies the IAM role that controls your users' access to your Amazon S3 - // bucket or EFS file system. The policies attached to this role determine the - // level of access that you want to provide your users when transferring files - // into and out of your Amazon S3 bucket or EFS file system. The IAM role should - // also contain a trust relationship that allows the server to access your resources - // when servicing your users' transfer requests. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. // // Role is a required field Role *string `min:"20" type:"string" required:"true"` @@ -3135,10 +3134,10 @@ type CreateServerInput struct { // to your server and resources only within your VPC or choose to make it internet // facing by attaching Elastic IP addresses directly to it. // - // After March 31, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT - // in your AWS account if your account hasn't already done so before March 31, + // After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT + // in your AWS account if your account hasn't already done so before May 19, // 2021. If you have already created servers with EndpointType=VPC_ENDPOINT - // in your AWS account on or before March 31, 2021, you will not be affected. + // in your AWS account on or before May 19, 2021, you will not be affected. // After this date, use EndpointType=VPC. // // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. @@ -3397,13 +3396,13 @@ type CreateUserInput struct { // The type of landing directory (folder) you want your users' home directory // to be when they log into the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket paths as is in their file transfer protocol - // clients. If you set it LOGICAL, you will need to provide mappings in the - // HomeDirectoryMappings for how you want to make Amazon S3 paths visible to - // your users. + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so you can use the same IAM role across + // A scope-down policy for your user so that you can use the same IAM role across // multiple users. This policy scopes down user access to portions of their // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. @@ -3428,12 +3427,12 @@ type CreateUserInput struct { // when transferring files into and out of your Amazon EFS file systems. PosixProfile *PosixProfile `type:"structure"` - // Specifies the IAM role that controls your users' access to your Amazon S3 - // bucket or EFS file system. The policies attached to this role will determine - // the level of access you want to provide your users when transferring files - // into and out of your Amazon S3 bucket or EFS file system. The IAM role should - // also contain a trust relationship that allows the server to access your resources - // when servicing your users' transfer requests. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. // // Role is a required field Role *string `min:"20" type:"string" required:"true"` @@ -3637,7 +3636,7 @@ type DeleteAccessInput struct { // the following command using Windows PowerShell. // // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * - // | Select SamaccountName,ObjectSid + // | Select SamAccountName,ObjectSid // // In that command, replace YourGroupName with the name of your Active Directory // group. @@ -3935,13 +3934,13 @@ type DescribeAccessInput struct { _ struct{} `type:"structure"` // A unique identifier that is required to identify specific groups within your - // directory. The users of the group you associate have access to your Amazon - // S3 or Amazon EFS resources over the enabled protocols using AWS Transfer + // directory. The users of the group that you associate have access to your + // Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer // Family. If you know the group name, you can view the SID values by running // the following command using Windows PowerShell. // // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * - // | Select SamaccountName,ObjectSid + // | Select SamAccountName,ObjectSid // // In that command, replace YourGroupName with the name of your Active Directory // group. @@ -4269,23 +4268,27 @@ func (s *DescribeUserOutput) SetUser(v *DescribedUser) *DescribeUserOutput { type DescribedAccess struct { _ struct{} `type:"structure"` - // A unique identifier that might be required when you assume a role in another - // account. Think of the ExternalID as a group membership mechanism that uses - // a unique identifier (often a SID, but could be a group name or something - // else) as a basis. If the administrator of the account to which the role belongs - // provided you with an external ID, then provide that value in the ExternalId - // parameter. A cross-account role is usually set up to trust everyone in an - // account. Therefore, the administrator of the trusting account might send - // an external ID to the administrator of the trusted account. That way, only - // someone with the ID can assume the role, rather than everyone in the account. + // A unique identifier that is required to identify specific groups within your + // directory. The users of the group that you associate have access to your + // Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer + // Family. If you know the group name, you can view the SID values by running + // the following command using Windows PowerShell. + // + // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * + // | Select SamAccountName,ObjectSid + // + // In that command, replace YourGroupName with the name of your Active Directory + // group. // // The regex used to validate this parameter is a string of characters consisting // of uppercase and lowercase alphanumeric characters with no spaces. You can // also include underscores or any of the following characters: =,.@:/- ExternalId *string `min:"1" type:"string"` - // Specifies the landing directory (or folder), which is the location that files - // are written to or read from in an Amazon S3 bucket, for the described access. + // The landing directory (folder) for a user when they log in to the server + // using the client. + // + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` // Specifies the logical directory mappings that specify what Amazon S3 or Amazon @@ -4302,18 +4305,18 @@ type DescribedAccess struct { // parameter value. HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` - // The type of landing directory (folder) that you want your users' home directory - // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket paths as is in their file transfer protocol - // clients. If you set it to LOGICAL, you must provide mappings in the HomeDirectoryMappings - // for how you want to make Amazon S3 paths visible to your users. + // The type of landing directory (folder) you want your users' home directory + // to be when they log into the server. If you set it to PATH, the user will + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // A scope-down policy for your user so that you can use the same AWS Identity - // and Access Management (IAM) role across multiple users. This policy scopes - // down user access to portions of their Amazon S3 bucket. Variables that you - // can use inside this policy include ${Transfer:UserName}, ${Transfer:HomeDirectory}, - // and ${Transfer:HomeBucket}. + // A scope-down policy for your user so that you can use the same IAM role across + // multiple users. This policy scopes down user access to portions of their + // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, + // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. Policy *string `type:"string"` // The full POSIX identity, including user ID (Uid), group ID (Gid), and any @@ -4323,12 +4326,12 @@ type DescribedAccess struct { // get when transferring files into and out of your Amazon EFS file systems. PosixProfile *PosixProfile `type:"structure"` - // The IAM role that controls access to your Amazon S3 bucket from the specified - // associated access. The policies attached to this role will determine the - // level of access that you want to provide the associated access when transferring - // files into and out of your Amazon S3 bucket or buckets. The IAM role should - // also contain a trust relationship that allows a server to access your resources - // when servicing transfer requests for the associated access. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. Role *string `min:"20" type:"string"` } @@ -4659,9 +4662,10 @@ type DescribedUser struct { // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` - // Specifies the landing directory (or folder), which is the location that files - // are written to or read from in an Amazon S3 bucket, for the described user. - // An example is your-Amazon-S3-bucket-name>/home/username . + // The landing directory (folder) for a user when they log in to the server + // using the client. + // + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` // Specifies the logical directory mappings that specify what Amazon S3 or EFS @@ -4677,15 +4681,18 @@ type DescribedUser struct { // you can set Entry to '/' and set Target to the HomeDirectory parameter value. HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` - // Specifies the type of landing directory (folder) you mapped for your users - // to see when they log into the file transfer protocol-enabled server. If you - // set it to PATH, the user will see the absolute Amazon S3 bucket or EFS paths - // as is in their file transfer protocol clients. If you set it LOGICAL, you - // will need to provide mappings in the HomeDirectoryMappings for how you want - // to make Amazon S3 or EFS paths visible to your users. + // The type of landing directory (folder) you want your users' home directory + // to be when they log into the server. If you set it to PATH, the user will + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // Specifies the name of the policy in use for the described user. + // A scope-down policy for your user so that you can use the same IAM role across + // multiple users. This policy scopes down user access to portions of their + // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, + // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. Policy *string `type:"string"` // Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), @@ -4696,12 +4703,12 @@ type DescribedUser struct { // EFS file systems. PosixProfile *PosixProfile `type:"structure"` - // The IAM role that controls your users' access to your Amazon S3 bucket. The - // policies attached to this role will determine the level of access you want - // to provide your users when transferring files into and out of your Amazon - // S3 bucket or buckets. The IAM role should also contain a trust relationship - // that allows a server to access your resources when servicing your users' - // transfer requests. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. Role *string `min:"20" type:"string"` // Specifies the public key portion of the Secure Shell (SSH) keys stored for @@ -4794,10 +4801,10 @@ func (s *DescribedUser) SetUserName(v string) *DescribedUser { // incoming internet traffic, invoke the UpdateServer API and attach an Elastic // IP address to your server's endpoint. // -// After March 31, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT -// in your AWS account if your account hasn't already done so before March 31, +// After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT +// in your AWS account if your account hasn't already done so before May 19, // 2021. If you have already created servers with EndpointType=VPC_ENDPOINT -// in your AWS account on or before March 31, 2021, you will not be affected. +// in your AWS account on or before May 19, 2021, you will not be affected. // After this date, use EndpointType=VPC. // // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. @@ -5827,39 +5834,43 @@ func (s *ListUsersOutput) SetUsers(v []*ListedUser) *ListUsersOutput { type ListedAccess struct { _ struct{} `type:"structure"` - // A unique identifier that might be required when you assume a role in another - // account. Think of the ExternalID as a group membership mechanism that uses - // a unique identifier (often a SID, but could be a group name or something - // else) as a basis. If the administrator of the account to which the role belongs - // provided you with an external ID, then provide that value in the ExternalId - // parameter. A cross-account role is usually set up to trust everyone in an - // account. Therefore, the administrator of the trusting account might send - // an external ID to the administrator of the trusted account. That way, only - // someone with the ID can assume the role, rather than everyone in the account. + // A unique identifier that is required to identify specific groups within your + // directory. The users of the group that you associate have access to your + // Amazon S3 or Amazon EFS resources over the enabled protocols using AWS Transfer + // Family. If you know the group name, you can view the SID values by running + // the following command using Windows PowerShell. + // + // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * + // | Select SamAccountName,ObjectSid + // + // In that command, replace YourGroupName with the name of your Active Directory + // group. // // The regex used to validate this parameter is a string of characters consisting // of uppercase and lowercase alphanumeric characters with no spaces. You can // also include underscores or any of the following characters: =,.@:/- ExternalId *string `min:"1" type:"string"` - // Specifies the landing directory (or folder), which is the location that files - // are written to or read from in an Amazon S3 bucket, for the described access. + // The landing directory (folder) for a user when they log in to the server + // using the client. + // + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` - // The type of landing directory (folder) that you want your users' home directory - // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket paths as is in their file transfer protocol - // clients. If you set it to LOGICAL, you must provide mappings in the HomeDirectoryMappings - // for how you want to make Amazon S3 paths visible to your users. + // The type of landing directory (folder) you want your users' home directory + // to be when they log into the server. If you set it to PATH, the user will + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // The AWS Identity and Access Management (IAM) role that controls access to - // your Amazon S3 bucket from the specified associated access. The policies - // attached to this role will determine the level of access that you want to - // provide the associated access when transferring files into and out of your - // Amazon S3 bucket or buckets. The IAM role should also contain a trust relationship - // that allows a server to access your resources when servicing transfer requests - // for the associated access. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. Role *string `min:"20" type:"string"` } @@ -6011,22 +6022,26 @@ type ListedUser struct { // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` - // Specifies the location that files are written to or read from an Amazon S3 - // bucket for the user you specify by their ARN. + // The landing directory (folder) for a user when they log in to the server + // using the client. + // + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` - // Specifies the type of landing directory (folder) you mapped for your users' - // home directory. If you set it to PATH, the user will see the absolute Amazon - // S3 bucket paths as is in their file transfer protocol clients. If you set - // it LOGICAL, you will need to provide mappings in the HomeDirectoryMappings - // for how you want to make Amazon S3 paths visible to your users. + // The type of landing directory (folder) you want your users' home directory + // to be when they log into the server. If you set it to PATH, the user will + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // Specifies the role that is in use by this user. A role is an AWS Identity - // and Access Management (IAM) entity that, in this case, allows a file transfer - // protocol-enabled server to act on a user's behalf. It allows the server to - // inherit the trust relationship that enables that user to perform file operations - // to their Amazon S3 bucket. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. // // The IAM role that controls your users' access to your Amazon S3 bucket for // servers with Domain=S3, or your EFS file system for servers with Domain=EFS. @@ -6938,7 +6953,7 @@ type UpdateAccessInput struct { // the following command using Windows PowerShell. // // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * - // | Select SamaccountName,ObjectSid + // | Select SamAccountName,ObjectSid // // In that command, replace YourGroupName with the name of your Active Directory // group. @@ -6953,7 +6968,7 @@ type UpdateAccessInput struct { // The landing directory (folder) for a user when they log in to the server // using the client. // - // A HomeDirectory example is /directory_name/home/mydirectory. + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -6987,15 +7002,14 @@ type UpdateAccessInput struct { // aws s3api put-object --bucket bucketname --key path/to/folder/ // // The end of the key name must end in a / for it to be considered a folder. - // - // Required: No HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` - // The type of landing directory (folder) that you want your users' home directory - // to be when they log in to the server. If you set it to PATH, the user will - // see the absolute Amazon S3 bucket paths as is in their file transfer protocol - // clients. If you set it LOGICAL, you must provide mappings in the HomeDirectoryMappings - // for how you want to make Amazon S3 paths visible to your users. + // The type of landing directory (folder) you want your users' home directory + // to be when they log into the server. If you set it to PATH, the user will + // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer + // protocol clients. If you set it LOGICAL, you will need to provide mappings + // in the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths + // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` // A scope-down policy for your user so that you can use the same IAM role across @@ -7023,12 +7037,12 @@ type UpdateAccessInput struct { // get when transferring files into and out of your Amazon EFS file systems. PosixProfile *PosixProfile `type:"structure"` - // Specifies the IAM role that controls your users' access to your Amazon S3 - // bucket or EFS file system. The policies attached to this role determine the - // level of access that you want to provide your users when transferring files - // into and out of your Amazon S3 bucket or EFS file system. The IAM role should - // also contain a trust relationship that allows the server to access your resources - // when servicing your users' transfer requests. + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows + // the server to access your resources when servicing your users' transfer requests. Role *string `min:"20" type:"string"` // A system-assigned unique identifier for a server instance. This is the specific @@ -7223,10 +7237,10 @@ type UpdateServerInput struct { // to your server and resources only within your VPC or choose to make it internet // facing by attaching Elastic IP addresses directly to it. // - // After March 31, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT - // in your AWS account if your account hasn't already done so before March 31, + // After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT + // in your AWS account if your account hasn't already done so before May 19, // 2021. If you have already created servers with EndpointType=VPC_ENDPOINT - // in your AWS account on or before March 31, 2021, you will not be affected. + // in your AWS account on or before May 19, 2021, you will not be affected. // After this date, use EndpointType=VPC. // // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. @@ -7414,10 +7428,10 @@ func (s *UpdateServerOutput) SetServerId(v string) *UpdateServerOutput { type UpdateUserInput struct { _ struct{} `type:"structure"` - // Specifies the landing directory (folder) for a user when they log in to the - // server using their file transfer protocol client. + // The landing directory (folder) for a user when they log in to the server + // using the client. // - // An example is your-Amazon-S3-bucket-name>/home/username. + // A HomeDirectory example is /bucket_name/home/mydirectory. HomeDirectory *string `type:"string"` // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths @@ -7452,10 +7466,13 @@ type UpdateUserInput struct { // visible to your users. HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` - // Allows you to supply a scope-down policy for your user so you can use the - // same IAM role across multiple users. The policy scopes down user access to - // portions of your Amazon S3 bucket. Variables you can use inside this policy - // include ${Transfer:UserName}, ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. + // A scope-down policy for your user so that you can use the same IAM role across + // multiple users. This policy scopes down user access to portions of their + // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, + // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. + // + // This only applies when domain of ServerId is S3. Amazon EFS does not use + // scope-down policies. // // For scope-down policies, AWS Transfer Family stores the policy as a JSON // blob, instead of the Amazon Resource Name (ARN) of the policy. You save the @@ -7475,10 +7492,11 @@ type UpdateUserInput struct { // EFS file systems. PosixProfile *PosixProfile `type:"structure"` - // The IAM role that controls your users' access to your Amazon S3 bucket. The - // policies attached to this role determine the level of access you want to - // provide your users when transferring files into and out of your S3 bucket - // or buckets. The IAM role should also contain a trust relationship that allows + // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your + // users' access to your Amazon S3 bucket or EFS file system. The policies attached + // to this role determine the level of access that you want to provide your + // users when transferring files into and out of your Amazon S3 bucket or EFS + // file system. The IAM role should also contain a trust relationship that allows // the server to access your resources when servicing your users' transfer requests. Role *string `min:"20" type:"string"`