diff --git a/CHANGELOG.md b/CHANGELOG.md index 0399a5259c3..a7821fd3413 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,22 @@ +Release v1.45.17 (2023-09-26) +=== + +### Service Client Updates +* `service/appintegrations`: Updates service API, documentation, paginators, and examples +* `service/apprunner`: Updates service API and documentation +* `service/codedeploy`: Updates service documentation + * CodeDeploy now supports In-place and Blue/Green EC2 deployments with multiple Classic Load Balancers and multiple Target Groups. +* `service/connect`: Updates service API, documentation, and paginators +* `service/dynamodb`: Updates service API, documentation, waiters, paginators, and examples + * Amazon DynamoDB now supports Incremental Export as an enhancement to the existing Export Table +* `service/ec2`: Updates service API and documentation + * The release includes AWS verified access to support FIPs compliance in North America regions +* `service/lakeformation`: Updates service API, documentation, and paginators +* `service/pinpoint`: Updates service documentation + * Update documentation for RemoveAttributes to more accurately reflect its behavior when attributes are deleted. +* `service/s3`: Updates service API and examples + * This release adds a new field COMPLETED to the ReplicationStatus Enum. You can now use this field to validate the replication status of S3 objects using the AWS SDK. + Release v1.45.16 (2023-09-25) === diff --git a/aws/version.go b/aws/version.go index f9673717cf9..e5d20a04072 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.45.16" +const SDKVersion = "1.45.17" diff --git a/models/apis/appintegrations/2020-07-29/api-2.json b/models/apis/appintegrations/2020-07-29/api-2.json index c6bbb9d51a2..4780a16c9cb 100644 --- a/models/apis/appintegrations/2020-07-29/api-2.json +++ b/models/apis/appintegrations/2020-07-29/api-2.json @@ -12,6 +12,23 @@ "uid":"appintegrations-2020-07-29" }, "operations":{ + "CreateApplication":{ + "name":"CreateApplication", + "http":{ + "method":"POST", + "requestUri":"/applications" + }, + "input":{"shape":"CreateApplicationRequest"}, + "output":{"shape":"CreateApplicationResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ResourceQuotaExceededException"}, + {"shape":"DuplicateResourceException"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "CreateDataIntegration":{ "name":"CreateDataIntegration", "http":{ @@ -78,6 +95,22 @@ {"shape":"AccessDeniedException"} ] }, + "GetApplication":{ + "name":"GetApplication", + "http":{ + "method":"GET", + "requestUri":"/applications/{Arn}" + }, + "input":{"shape":"GetApplicationRequest"}, + "output":{"shape":"GetApplicationResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetDataIntegration":{ "name":"GetDataIntegration", "http":{ @@ -110,6 +143,21 @@ {"shape":"AccessDeniedException"} ] }, + "ListApplications":{ + "name":"ListApplications", + "http":{ + "method":"GET", + "requestUri":"/applications" + }, + "input":{"shape":"ListApplicationsRequest"}, + "output":{"shape":"ListApplicationsResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListDataIntegrationAssociations":{ "name":"ListDataIntegrationAssociations", "http":{ @@ -217,6 +265,22 @@ {"shape":"ThrottlingException"} ] }, + "UpdateApplication":{ + "name":"UpdateApplication", + "http":{ + "method":"PATCH", + "requestUri":"/applications/{Arn}" + }, + "input":{"shape":"UpdateApplicationRequest"}, + "output":{"shape":"UpdateApplicationResponse"}, + "errors":[ + {"shape":"InternalServiceError"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidRequestException"}, + {"shape":"AccessDeniedException"} + ] + }, "UpdateDataIntegration":{ "name":"UpdateDataIntegration", "http":{ @@ -259,12 +323,65 @@ "error":{"httpStatusCode":403}, "exception":true }, + "ApplicationApprovedOrigins":{ + "type":"list", + "member":{"shape":"ApplicationTrustedSource"}, + "max":50, + "min":1 + }, + "ApplicationName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[a-zA-Z0-9\\/\\._ \\-]+$" + }, + "ApplicationNamespace":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^[a-zA-Z0-9\\/\\._\\-]+$" + }, + "ApplicationSourceConfig":{ + "type":"structure", + "members":{ + "ExternalUrlConfig":{"shape":"ExternalUrlConfig"} + } + }, + "ApplicationSummary":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Id":{"shape":"UUID"}, + "Name":{"shape":"ApplicationName"}, + "Namespace":{"shape":"ApplicationNamespace"}, + "CreatedTime":{"shape":"Timestamp"}, + "LastModifiedTime":{"shape":"Timestamp"} + } + }, + "ApplicationTrustedSource":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^\\w+\\:\\/\\/.*$" + }, + "ApplicationsList":{ + "type":"list", + "member":{"shape":"ApplicationSummary"}, + "max":50, + "min":1 + }, "Arn":{ "type":"string", "max":2048, "min":1, "pattern":"^arn:aws:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$" }, + "ArnOrUUID":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"^(arn:aws:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}|[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})(:[\\w\\$]+)?$" + }, "ClientAssociationMetadata":{ "type":"map", "key":{"shape":"NonBlankString"}, @@ -276,6 +393,34 @@ "min":1, "pattern":".*" }, + "CreateApplicationRequest":{ + "type":"structure", + "required":[ + "Name", + "Namespace", + "ApplicationSourceConfig" + ], + "members":{ + "Name":{"shape":"ApplicationName"}, + "Namespace":{"shape":"ApplicationNamespace"}, + "Description":{"shape":"Description"}, + "ApplicationSourceConfig":{"shape":"ApplicationSourceConfig"}, + "Subscriptions":{"shape":"SubscriptionList"}, + "Publications":{"shape":"PublicationList"}, + "ClientToken":{ + "shape":"IdempotencyToken", + "idempotencyToken":true + }, + "Tags":{"shape":"TagMap"} + } + }, + "CreateApplicationResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Id":{"shape":"UUID"} + } + }, "CreateDataIntegrationRequest":{ "type":"structure", "required":[ @@ -426,6 +571,12 @@ "min":1, "pattern":"^[a-zA-Z0-9\\/\\._\\-]+$" }, + "EventDefinitionSchema":{ + "type":"string", + "max":10240, + "min":1, + "pattern":"^.*$" + }, "EventFilter":{ "type":"structure", "required":["Source"], @@ -467,6 +618,20 @@ "max":50, "min":1 }, + "EventName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^[a-zA-Z0-9\\/\\._\\-]+::[a-zA-Z0-9\\/\\._\\-]+(?:\\*)?$" + }, + "ExternalUrlConfig":{ + "type":"structure", + "required":["AccessUrl"], + "members":{ + "AccessUrl":{"shape":"URL"}, + "ApprovedOrigins":{"shape":"ApplicationApprovedOrigins"} + } + }, "Fields":{ "type":"string", "max":255, @@ -498,6 +663,33 @@ "max":10, "min":1 }, + "GetApplicationRequest":{ + "type":"structure", + "required":["Arn"], + "members":{ + "Arn":{ + "shape":"ArnOrUUID", + "location":"uri", + "locationName":"Arn" + } + } + }, + "GetApplicationResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"Arn"}, + "Id":{"shape":"UUID"}, + "Name":{"shape":"ApplicationName"}, + "Namespace":{"shape":"ApplicationNamespace"}, + "Description":{"shape":"Description"}, + "ApplicationSourceConfig":{"shape":"ApplicationSourceConfig"}, + "Subscriptions":{"shape":"SubscriptionList"}, + "Publications":{"shape":"PublicationList"}, + "CreatedTime":{"shape":"Timestamp"}, + "LastModifiedTime":{"shape":"Timestamp"}, + "Tags":{"shape":"TagMap"} + } + }, "GetDataIntegrationRequest":{ "type":"structure", "required":["Identifier"], @@ -575,6 +767,28 @@ "error":{"httpStatusCode":400}, "exception":true }, + "ListApplicationsRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListApplicationsResponse":{ + "type":"structure", + "members":{ + "Applications":{"shape":"ApplicationsList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListDataIntegrationAssociationsRequest":{ "type":"structure", "required":["DataIntegrationIdentifier"], @@ -733,6 +947,24 @@ "key":{"shape":"NonBlankString"}, "value":{"shape":"FieldsMap"} }, + "Publication":{ + "type":"structure", + "required":[ + "Event", + "Schema" + ], + "members":{ + "Event":{"shape":"EventName"}, + "Schema":{"shape":"EventDefinitionSchema"}, + "Description":{"shape":"Description"} + } + }, + "PublicationList":{ + "type":"list", + "member":{"shape":"Publication"}, + "max":50, + "min":0 + }, "ResourceNotFoundException":{ "type":"structure", "members":{ @@ -770,6 +1002,20 @@ "min":1, "pattern":"^(\\w+\\:\\/\\/[\\w.-]+[\\w/!@#+=.-]+$)|(\\w+\\:\\/\\/[\\w.-]+[\\w/!@#+=.-]+[\\w/!@#+=.-]+[\\w/!@#+=.,-]+$)" }, + "Subscription":{ + "type":"structure", + "required":["Event"], + "members":{ + "Event":{"shape":"EventName"}, + "Description":{"shape":"Description"} + } + }, + "SubscriptionList":{ + "type":"list", + "member":{"shape":"Subscription"}, + "max":50, + "min":0 + }, "TagKey":{ "type":"string", "max":128, @@ -821,6 +1067,13 @@ "error":{"httpStatusCode":429}, "exception":true }, + "Timestamp":{"type":"timestamp"}, + "URL":{ + "type":"string", + "max":1000, + "min":1, + "pattern":"^\\w+\\:\\/\\/.*$" + }, "UUID":{ "type":"string", "pattern":"[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}" @@ -849,6 +1102,27 @@ "members":{ } }, + "UpdateApplicationRequest":{ + "type":"structure", + "required":["Arn"], + "members":{ + "Arn":{ + "shape":"ArnOrUUID", + "location":"uri", + "locationName":"Arn" + }, + "Name":{"shape":"ApplicationName"}, + "Description":{"shape":"Description"}, + "ApplicationSourceConfig":{"shape":"ApplicationSourceConfig"}, + "Subscriptions":{"shape":"SubscriptionList"}, + "Publications":{"shape":"PublicationList"} + } + }, + "UpdateApplicationResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateDataIntegrationRequest":{ "type":"structure", "required":["Identifier"], diff --git a/models/apis/appintegrations/2020-07-29/docs-2.json b/models/apis/appintegrations/2020-07-29/docs-2.json index 1e329a6750a..ee352869da5 100644 --- a/models/apis/appintegrations/2020-07-29/docs-2.json +++ b/models/apis/appintegrations/2020-07-29/docs-2.json @@ -2,12 +2,15 @@ "version": "2.0", "service": "

The Amazon AppIntegrations service enables you to configure and reuse connections to external applications.

For information about how you can use external applications with Amazon Connect, see Set up pre-built integrations and Deliver information to agents using Amazon Connect Wisdom in the Amazon Connect Administrator Guide.

", "operations": { + "CreateApplication": "

This API is in preview release and subject to change.

Creates and persists an Application resource.

", "CreateDataIntegration": "

Creates and persists a DataIntegration resource.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "CreateEventIntegration": "

Creates an EventIntegration, given a specified name, description, and a reference to an Amazon EventBridge bus in your account and a partner event source that pushes events to that bus. No objects are created in the your account, only metadata that is persisted on the EventIntegration control plane.

", "DeleteDataIntegration": "

Deletes the DataIntegration. Only DataIntegrations that don't have any DataIntegrationAssociations can be deleted. Deleting a DataIntegration also deletes the underlying Amazon AppFlow flow and service linked role.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "DeleteEventIntegration": "

Deletes the specified existing event integration. If the event integration is associated with clients, the request is rejected.

", + "GetApplication": "

This API is in preview release and subject to change.

Get an Application resource.

", "GetDataIntegration": "

Returns information about the DataIntegration.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "GetEventIntegration": "

Returns information about the event integration.

", + "ListApplications": "

This API is in preview release and subject to change.

Lists applications in the account.

", "ListDataIntegrationAssociations": "

Returns a paginated list of DataIntegration associations in the account.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "ListDataIntegrations": "

Returns a paginated list of DataIntegrations in the account.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "ListEventIntegrationAssociations": "

Returns a paginated list of event integration associations in the account.

", @@ -15,6 +18,7 @@ "ListTagsForResource": "

Lists the tags for the specified resource.

", "TagResource": "

Adds the specified tags to the specified resource.

", "UntagResource": "

Removes the specified tags from the specified resource.

", + "UpdateApplication": "

This API is in preview release and subject to change.

Updates and persists an Application resource.

", "UpdateDataIntegration": "

Updates the description of a DataIntegration.

You cannot create a DataIntegration association for a DataIntegration that has been previously associated. Use a different DataIntegration, or recreate the DataIntegration using the CreateDataIntegration API.

", "UpdateEventIntegration": "

Updates the description of an event integration.

" }, @@ -24,9 +28,60 @@ "refs": { } }, + "ApplicationApprovedOrigins": { + "base": null, + "refs": { + "ExternalUrlConfig$ApprovedOrigins": "

Additional URLs to allow list if different than the access URL.

" + } + }, + "ApplicationName": { + "base": null, + "refs": { + "ApplicationSummary$Name": "

The name of the application.

", + "CreateApplicationRequest$Name": "

The name of the application.

", + "GetApplicationResponse$Name": "

The name of the application.

", + "UpdateApplicationRequest$Name": "

The name of the application.

" + } + }, + "ApplicationNamespace": { + "base": null, + "refs": { + "ApplicationSummary$Namespace": "

The namespace of the application.

", + "CreateApplicationRequest$Namespace": "

The namespace of the application.

", + "GetApplicationResponse$Namespace": "

The namespace of the application.

" + } + }, + "ApplicationSourceConfig": { + "base": "

The configuration for where the application should be loaded from.

", + "refs": { + "CreateApplicationRequest$ApplicationSourceConfig": "

The configuration for where the application should be loaded from.

", + "GetApplicationResponse$ApplicationSourceConfig": "

The configuration for where the application should be loaded from.

", + "UpdateApplicationRequest$ApplicationSourceConfig": "

The configuration for where the application should be loaded from.

" + } + }, + "ApplicationSummary": { + "base": "

Summary information about the Application.

", + "refs": { + "ApplicationsList$member": null + } + }, + "ApplicationTrustedSource": { + "base": null, + "refs": { + "ApplicationApprovedOrigins$member": null + } + }, + "ApplicationsList": { + "base": null, + "refs": { + "ListApplicationsResponse$Applications": "

The Applications associated with this account.

" + } + }, "Arn": { "base": null, "refs": { + "ApplicationSummary$Arn": "

The Amazon Resource Name (ARN) of the Application.

", + "CreateApplicationResponse$Arn": "

The Amazon Resource Name (ARN) of the Application.

", "CreateDataIntegrationResponse$Arn": "

The Amazon Resource Name (ARN)

", "CreateEventIntegrationResponse$EventIntegrationArn": "

The Amazon Resource Name (ARN) of the event integration.

", "DataIntegrationAssociationSummary$DataIntegrationAssociationArn": "

The Amazon Resource Name (ARN) of the DataIntegration association.

", @@ -34,6 +89,7 @@ "DataIntegrationSummary$Arn": "

The Amazon Resource Name (ARN) of the DataIntegration.

", "EventIntegration$EventIntegrationArn": "

The Amazon Resource Name (ARN) of the event integration.

", "EventIntegrationAssociation$EventIntegrationAssociationArn": "

The Amazon Resource Name (ARN) for the event integration association.

", + "GetApplicationResponse$Arn": "

The Amazon Resource Name (ARN) of the Application.

", "GetDataIntegrationResponse$Arn": "

The Amazon Resource Name (ARN) for the DataIntegration.

", "GetEventIntegrationResponse$EventIntegrationArn": "

The Amazon Resource Name (ARN) for the event integration.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", @@ -41,6 +97,13 @@ "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

" } }, + "ArnOrUUID": { + "base": null, + "refs": { + "GetApplicationRequest$Arn": "

The Amazon Resource Name (ARN) of the Application.

", + "UpdateApplicationRequest$Arn": "

The Amazon Resource Name (ARN) of the Application.

" + } + }, "ClientAssociationMetadata": { "base": null, "refs": { @@ -54,6 +117,16 @@ "EventIntegrationAssociation$ClientId": "

The identifier for the client that is associated with the event integration.

" } }, + "CreateApplicationRequest": { + "base": null, + "refs": { + } + }, + "CreateApplicationResponse": { + "base": null, + "refs": { + } + }, "CreateDataIntegrationRequest": { "base": null, "refs": { @@ -121,14 +194,19 @@ "Description": { "base": null, "refs": { + "CreateApplicationRequest$Description": "

The description of the application.

", "CreateDataIntegrationRequest$Description": "

A description of the DataIntegration.

", "CreateDataIntegrationResponse$Description": "

A description of the DataIntegration.

", "CreateEventIntegrationRequest$Description": "

The description of the event integration.

", "EventIntegration$Description": "

The event integration description.

", + "GetApplicationResponse$Description": "

The description of the application.

", "GetDataIntegrationResponse$Description": "

The KMS key for the DataIntegration.

", "GetEventIntegrationResponse$Description": "

The description of the event integration.

", + "Publication$Description": "

The description of the publication.

", + "Subscription$Description": "

The description of the subscription.

", + "UpdateApplicationRequest$Description": "

The description of the application.

", "UpdateDataIntegrationRequest$Description": "

A description of the DataIntegration.

", - "UpdateEventIntegrationRequest$Description": "

The description of the event inegration.

" + "UpdateEventIntegrationRequest$Description": "

The description of the event integration.

" } }, "DuplicateResourceException": { @@ -150,6 +228,12 @@ "EventIntegrationAssociation$EventBridgeRuleName": "

The name of the EventBridge rule.

" } }, + "EventDefinitionSchema": { + "base": null, + "refs": { + "Publication$Schema": "

The JSON schema of the publication event.

" + } + }, "EventFilter": { "base": "

The event filter.

", "refs": { @@ -182,6 +266,19 @@ "ListEventIntegrationsResponse$EventIntegrations": "

The event integrations.

" } }, + "EventName": { + "base": null, + "refs": { + "Publication$Event": "

The name of the publication.

", + "Subscription$Event": "

The name of the subscription.

" + } + }, + "ExternalUrlConfig": { + "base": "

The external URL source for the application.

", + "refs": { + "ApplicationSourceConfig$ExternalUrlConfig": "

The external URL source for the application.

" + } + }, "Fields": { "base": null, "refs": { @@ -215,6 +312,16 @@ "FileConfiguration$Folders": "

Identifiers for the source folders to pull all files from recursively.

" } }, + "GetApplicationRequest": { + "base": null, + "refs": { + } + }, + "GetApplicationResponse": { + "base": null, + "refs": { + } + }, "GetDataIntegrationRequest": { "base": null, "refs": { @@ -238,6 +345,7 @@ "IdempotencyToken": { "base": null, "refs": { + "CreateApplicationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateDataIntegrationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateDataIntegrationResponse$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

", "CreateEventIntegrationRequest$ClientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

" @@ -262,6 +370,16 @@ "refs": { } }, + "ListApplicationsRequest": { + "base": null, + "refs": { + } + }, + "ListApplicationsResponse": { + "base": null, + "refs": { + } + }, "ListDataIntegrationAssociationsRequest": { "base": null, "refs": { @@ -315,6 +433,7 @@ "MaxResults": { "base": null, "refs": { + "ListApplicationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListDataIntegrationAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListDataIntegrationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListEventIntegrationAssociationsRequest$MaxResults": "

The maximum number of results to return per page.

", @@ -354,6 +473,8 @@ "NextToken": { "base": null, "refs": { + "ListApplicationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", + "ListApplicationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListDataIntegrationAssociationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListDataIntegrationAssociationsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListDataIntegrationsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", @@ -398,6 +519,20 @@ "GetDataIntegrationResponse$ObjectConfiguration": "

The configuration for what data should be pulled from the source.

" } }, + "Publication": { + "base": "

The configuration of an event that the application publishes.

", + "refs": { + "PublicationList$member": null + } + }, + "PublicationList": { + "base": null, + "refs": { + "CreateApplicationRequest$Publications": "

The events that the application publishes.

", + "GetApplicationResponse$Publications": "

The events that the application publishes.

", + "UpdateApplicationRequest$Publications": "

The events that the application publishes.

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

The specified resource was not found.

", "refs": { @@ -431,6 +566,20 @@ "GetDataIntegrationResponse$SourceURI": "

The URI of the data source.

" } }, + "Subscription": { + "base": "

The configuration of an event that the application subscribes.

", + "refs": { + "SubscriptionList$member": null + } + }, + "SubscriptionList": { + "base": null, + "refs": { + "CreateApplicationRequest$Subscriptions": "

The events that the application subscribes.

", + "GetApplicationResponse$Subscriptions": "

The events that the application subscribes.

", + "UpdateApplicationRequest$Subscriptions": "

The events that the application subscribes.

" + } + }, "TagKey": { "base": null, "refs": { @@ -447,10 +596,12 @@ "TagMap": { "base": null, "refs": { + "CreateApplicationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateDataIntegrationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateDataIntegrationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "CreateEventIntegrationRequest$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "EventIntegration$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", + "GetApplicationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "GetDataIntegrationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "GetEventIntegrationResponse$Tags": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

", "ListTagsForResourceResponse$tags": "

Information about the tags.

", @@ -478,11 +629,29 @@ "refs": { } }, + "Timestamp": { + "base": null, + "refs": { + "ApplicationSummary$CreatedTime": "

The time when the application was created.

", + "ApplicationSummary$LastModifiedTime": "

The time when the application was last modified.

", + "GetApplicationResponse$CreatedTime": "

The created time of the Application.

", + "GetApplicationResponse$LastModifiedTime": "

The last modified time of the Application.

" + } + }, + "URL": { + "base": null, + "refs": { + "ExternalUrlConfig$AccessUrl": "

The URL to access the application.

" + } + }, "UUID": { "base": null, "refs": { + "ApplicationSummary$Id": "

A unique identifier for the Application.

", + "CreateApplicationResponse$Id": "

A unique identifier for the Application.

", "CreateDataIntegrationResponse$Id": "

A unique identifier.

", "EventIntegrationAssociation$EventIntegrationAssociationId": "

The identifier for the event integration association.

", + "GetApplicationResponse$Id": "

A unique identifier for the Application.

", "GetDataIntegrationResponse$Id": "

A unique identifier.

" } }, @@ -496,6 +665,16 @@ "refs": { } }, + "UpdateApplicationRequest": { + "base": null, + "refs": { + } + }, + "UpdateApplicationResponse": { + "base": null, + "refs": { + } + }, "UpdateDataIntegrationRequest": { "base": null, "refs": { diff --git a/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json b/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json index 949e319b525..deb3d197b8c 100644 --- a/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json +++ b/models/apis/appintegrations/2020-07-29/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://app-integrations-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://app-integrations-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://app-integrations-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://app-integrations-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://app-integrations.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://app-integrations.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://app-integrations.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://app-integrations.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json b/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json index 0879f46a896..c9bfaf66ce7 100644 --- a/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json +++ b/models/apis/appintegrations/2020-07-29/endpoint-tests-1.json @@ -273,6 +273,17 @@ "UseDualStack": false } }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -286,6 +297,17 @@ "UseDualStack": false } }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -299,6 +321,17 @@ "UseDualStack": false } }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -312,6 +345,17 @@ "UseDualStack": false } }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -375,6 +419,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff --git a/models/apis/appintegrations/2020-07-29/examples-1.json b/models/apis/appintegrations/2020-07-29/examples-1.json index 0ea7e3b0bbe..88db8c31073 100644 --- a/models/apis/appintegrations/2020-07-29/examples-1.json +++ b/models/apis/appintegrations/2020-07-29/examples-1.json @@ -1,5 +1,88 @@ { "version": "1.0", "examples": { + "CreateApplication": [ + { + "input": { + "ApplicationSourceConfig": { + "ExternalUrlConfig": { + "AccessUrl": "https://example.com" + } + }, + "Description": "My first application.", + "Name": "My Application", + "Namespace": "myapplication" + }, + "output": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Id": "98542c53-e8ac-4570-9c85-c6552c8d9c5e" + }, + "comments": { + }, + "description": "The following creates an application named My Application with access url https://example.com.", + "id": "create-an-application", + "title": "To create an application" + } + ], + "GetApplication": [ + { + "input": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e" + }, + "output": { + "ApplicationSourceConfig": { + "ExternalUrlConfig": { + "AccessUrl": "https://example.com" + } + }, + "Description": "My first application.", + "Name": "My Application", + "Namespace": "myapplication" + }, + "comments": { + }, + "description": "The following retrives an application.", + "id": "get-an-application", + "title": "To get an application" + } + ], + "ListApplications": [ + { + "input": { + "MaxResults": 1 + }, + "output": { + "Applications": [ + { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Id": "98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Name": "My Application", + "Namespace": "myapplication" + } + ], + "NextToken": "abc" + }, + "comments": { + }, + "description": "The following lists application summary in the account.", + "id": "list-applications", + "title": "To list applications in the account" + } + ], + "UpdateApplication": [ + { + "input": { + "Arn": "arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e", + "Name": "My New Application Name" + }, + "output": { + }, + "comments": { + }, + "description": "The following updates an existing application named with a new name.", + "id": "update-an-application", + "title": "To update an application" + } + ] } } diff --git a/models/apis/appintegrations/2020-07-29/paginators-1.json b/models/apis/appintegrations/2020-07-29/paginators-1.json index 5677bd8e4a2..e9473354358 100644 --- a/models/apis/appintegrations/2020-07-29/paginators-1.json +++ b/models/apis/appintegrations/2020-07-29/paginators-1.json @@ -1,4 +1,34 @@ { "pagination": { + "ListApplications": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "Applications" + }, + "ListDataIntegrationAssociations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "DataIntegrationAssociations" + }, + "ListDataIntegrations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "DataIntegrations" + }, + "ListEventIntegrationAssociations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "EventIntegrationAssociations" + }, + "ListEventIntegrations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "EventIntegrations" + } } -} +} \ No newline at end of file diff --git a/models/apis/apprunner/2020-05-15/api-2.json b/models/apis/apprunner/2020-05-15/api-2.json index 3ee90a73c3e..2fbd12f2a25 100644 --- a/models/apis/apprunner/2020-05-15/api-2.json +++ b/models/apis/apprunner/2020-05-15/api-2.json @@ -695,7 +695,8 @@ "members":{ "RepositoryUrl":{"shape":"String"}, "SourceCodeVersion":{"shape":"SourceCodeVersion"}, - "CodeConfiguration":{"shape":"CodeConfiguration"} + "CodeConfiguration":{"shape":"CodeConfiguration"}, + "SourceDirectory":{"shape":"SourceDirectory"} } }, "ConfigurationSource":{ @@ -1762,6 +1763,12 @@ "AuthenticationConfiguration":{"shape":"AuthenticationConfiguration"} } }, + "SourceDirectory":{ + "type":"string", + "max":4096, + "min":1, + "pattern":"[^\\x00]+" + }, "StartCommand":{ "type":"string", "pattern":"[^\\x0a\\x0d]+", diff --git a/models/apis/apprunner/2020-05-15/docs-2.json b/models/apis/apprunner/2020-05-15/docs-2.json index a6691d86ecd..fb2368ad0dd 100644 --- a/models/apis/apprunner/2020-05-15/docs-2.json +++ b/models/apis/apprunner/2020-05-15/docs-2.json @@ -145,7 +145,7 @@ "refs": { "AutoScalingConfiguration$AutoScalingConfigurationName": "

The customer-provided auto scaling configuration name. It can be used in multiple revisions of a configuration.

", "AutoScalingConfigurationSummary$AutoScalingConfigurationName": "

The customer-provided auto scaling configuration name. It can be used in multiple revisions of a configuration.

", - "CreateAutoScalingConfigurationRequest$AutoScalingConfigurationName": "

A name for the auto scaling configuration. When you use it for the first time in an Amazon Web Services Region, App Runner creates revision number 1 of this name. When you use the same name in subsequent calls, App Runner creates incremental revisions of the configuration.

Prior to the release of Managing auto scaling, the name DefaultConfiguration was reserved.

This restriction is no longer in place. You can now manage DefaultConfiguration the same way you manage your custom auto scaling configurations. This means you can do the following with the DefaultConfiguration that App Runner provides:

", + "CreateAutoScalingConfigurationRequest$AutoScalingConfigurationName": "

A name for the auto scaling configuration. When you use it for the first time in an Amazon Web Services Region, App Runner creates revision number 1 of this name. When you use the same name in subsequent calls, App Runner creates incremental revisions of the configuration.

Prior to the release of Auto scale configuration enhancements, the name DefaultConfiguration was reserved.

This restriction is no longer in place. You can now manage DefaultConfiguration the same way you manage your custom auto scaling configurations. This means you can do the following with the DefaultConfiguration that App Runner provides:

", "ListAutoScalingConfigurationsRequest$AutoScalingConfigurationName": "

The name of the App Runner auto scaling configuration that you want to list. If specified, App Runner lists revisions that share this name. If not specified, App Runner returns revisions of all active configurations.

" } }, @@ -1079,6 +1079,12 @@ "UpdateServiceRequest$SourceConfiguration": "

The source configuration to apply to the App Runner service.

You can change the configuration of the code or image repository that the service uses. However, you can't switch from code to image or the other way around. This means that you must provide the same structure member of SourceConfiguration that you originally included when you created the service. Specifically, you can include either CodeRepository or ImageRepository. To update the source configuration, set the values to members of the structure that you include.

" } }, + "SourceDirectory": { + "base": null, + "refs": { + "CodeRepository$SourceDirectory": "

The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.

" + } + }, "StartCommand": { "base": null, "refs": { diff --git a/models/apis/codedeploy/2014-10-06/docs-2.json b/models/apis/codedeploy/2014-10-06/docs-2.json index 1ed69821407..22f8018ed3d 100644 --- a/models/apis/codedeploy/2014-10-06/docs-2.json +++ b/models/apis/codedeploy/2014-10-06/docs-2.json @@ -19,7 +19,7 @@ "DeleteDeploymentConfig": "

Deletes a deployment configuration.

A deployment configuration cannot be deleted if it is currently in use. Predefined configurations cannot be deleted.

", "DeleteDeploymentGroup": "

Deletes a deployment group.

", "DeleteGitHubAccountToken": "

Deletes a GitHub account connection.

", - "DeleteResourcesByExternalId": "

Deletes resources linked to an external ID.

", + "DeleteResourcesByExternalId": "

Deletes resources linked to an external ID. This action only applies if you have configured blue/green deployments through CloudFormation.

It is not necessary to call this action directly. CloudFormation calls it on your behalf when it needs to delete stack resources. This action is offered publicly in case you need to delete resources to comply with General Data Protection Regulation (GDPR) requirements.

", "DeregisterOnPremisesInstance": "

Deregisters an on-premises instance.

", "GetApplication": "

Gets information about an application.

", "GetApplicationRevision": "

Gets information about an application revision.

", @@ -30,12 +30,12 @@ "GetDeploymentTarget": "

Returns information about a deployment target.

", "GetOnPremisesInstance": "

Gets information about an on-premises instance.

", "ListApplicationRevisions": "

Lists information about revisions for an application.

", - "ListApplications": "

Lists the applications registered with the IAM user or Amazon Web Services account.

", - "ListDeploymentConfigs": "

Lists the deployment configurations with the IAM user or Amazon Web Services account.

", - "ListDeploymentGroups": "

Lists the deployment groups for an application registered with the IAM user or Amazon Web Services account.

", - "ListDeploymentInstances": "

The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or Lambda.

Lists the instance for a deployment associated with the IAM user or Amazon Web Services account.

", + "ListApplications": "

Lists the applications registered with the user or Amazon Web Services account.

", + "ListDeploymentConfigs": "

Lists the deployment configurations with the user or Amazon Web Services account.

", + "ListDeploymentGroups": "

Lists the deployment groups for an application registered with the Amazon Web Services user or Amazon Web Services account.

", + "ListDeploymentInstances": "

The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or Lambda.

Lists the instance for a deployment associated with the user or Amazon Web Services account.

", "ListDeploymentTargets": "

Returns an array of target IDs that are associated a deployment.

", - "ListDeployments": "

Lists the deployments in a deployment group for an application registered with the IAM user or Amazon Web Services account.

", + "ListDeployments": "

Lists the deployments in a deployment group for an application registered with the user or Amazon Web Services account.

", "ListGitHubAccountTokenNames": "

Lists the names of stored connections to GitHub accounts.

", "ListOnPremisesInstances": "

Gets a list of names for one or more on-premises instances.

Unless otherwise specified, both registered and deregistered on-premises instance names are listed. To list only registered or deregistered on-premises instance names, use the registration status parameter.

", "ListTagsForResource": "

Returns a list of tags for the resource identified by a specified Amazon Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy resources.

", @@ -102,12 +102,12 @@ } }, "ApplicationAlreadyExistsException": { - "base": "

An application with the specified name with the IAM user or Amazon Web Services account already exists.

", + "base": "

An application with the specified name with the user or Amazon Web Services account already exists.

", "refs": { } }, "ApplicationDoesNotExistException": { - "base": "

The application does not exist with the IAM user or Amazon Web Services account.

", + "base": "

The application does not exist with the user or Amazon Web Services account.

", "refs": { } }, @@ -137,23 +137,23 @@ "ApplicationsList$member": null, "BatchGetApplicationRevisionsInput$applicationName": "

The name of an CodeDeploy application about which to get revision information.

", "BatchGetApplicationRevisionsOutput$applicationName": "

The name of the application that corresponds to the revisions.

", - "BatchGetDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the applicable IAM or Amazon Web Services account.

", - "CreateApplicationInput$applicationName": "

The name of the application. This name must be unique with the applicable IAM or Amazon Web Services account.

", - "CreateDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "CreateDeploymentInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "DeleteApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "DeleteDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "BatchGetDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the applicable user or Amazon Web Services account.

", + "CreateApplicationInput$applicationName": "

The name of the application. This name must be unique with the applicable user or Amazon Web Services account.

", + "CreateDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "CreateDeploymentInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "DeleteApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "DeleteDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "DeploymentGroupInfo$applicationName": "

The application name.

", "DeploymentInfo$applicationName": "

The application name.

", - "GetApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "GetApplicationInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "GetApplicationRevisionInput$applicationName": "

The name of the application that corresponds to the revision.

", "GetApplicationRevisionOutput$applicationName": "

The name of the application that corresponds to the revision.

", - "GetDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "ListApplicationRevisionsInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", - "ListDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "GetDeploymentGroupInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "ListApplicationRevisionsInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", + "ListDeploymentGroupsInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "ListDeploymentGroupsOutput$applicationName": "

The application name.

", - "ListDeploymentsInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

If applicationName is specified, then deploymentGroupName must be specified. If it is not specified, then deploymentGroupName must not be specified.

", - "RegisterApplicationRevisionInput$applicationName": "

The name of an CodeDeploy application associated with the IAM user or Amazon Web Services account.

", + "ListDeploymentsInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

If applicationName is specified, then deploymentGroupName must be specified. If it is not specified, then deploymentGroupName must not be specified.

", + "RegisterApplicationRevisionInput$applicationName": "

The name of an CodeDeploy application associated with the user or Amazon Web Services account.

", "UpdateApplicationInput$applicationName": "

The current name of the application you want to change.

", "UpdateApplicationInput$newApplicationName": "

The new name to give the application.

", "UpdateDeploymentGroupInput$applicationName": "

The application name that corresponds to the deployment group to update.

" @@ -250,7 +250,7 @@ "refs": { "CreateDeploymentGroupInput$autoScalingGroups": "

A list of associated Amazon EC2 Auto Scaling groups.

", "TargetInstances$autoScalingGroups": "

The names of one or more Auto Scaling groups to identify a replacement environment for a blue/green deployment.

", - "UpdateDeploymentGroupInput$autoScalingGroups": "

The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.

" + "UpdateDeploymentGroupInput$autoScalingGroups": "

The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.

" } }, "BatchGetApplicationRevisionsInput": { @@ -365,7 +365,7 @@ "BundleType": { "base": null, "refs": { - "S3Location$bundleType": "

The file type of the application revision. Must be one of the following:

" + "S3Location$bundleType": "

The file type of the application revision. Must be one of the following:

" } }, "CloudFormationResourceType": { @@ -493,12 +493,12 @@ } }, "DeploymentConfigAlreadyExistsException": { - "base": "

A deployment configuration with the specified name with the IAM user or Amazon Web Services account already exists.

", + "base": "

A deployment configuration with the specified name with the user or Amazon Web Services account already exists.

", "refs": { } }, "DeploymentConfigDoesNotExistException": { - "base": "

The deployment configuration does not exist with the IAM user or Amazon Web Services account.

", + "base": "

The deployment configuration does not exist with the user or Amazon Web Services account.

", "refs": { } }, @@ -530,13 +530,13 @@ "refs": { "CreateDeploymentConfigInput$deploymentConfigName": "

The name of the deployment configuration to create.

", "CreateDeploymentGroupInput$deploymentConfigName": "

If specified, the deployment configuration name can be either one of the predefined configurations provided with CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.

CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or deployment group.

For more information about the predefined deployment configurations in CodeDeploy, see Working with Deployment Configurations in CodeDeploy in the CodeDeploy User Guide.

", - "CreateDeploymentInput$deploymentConfigName": "

The name of a deployment configuration associated with the IAM user or Amazon Web Services account.

If not specified, the value configured in the deployment group is used as the default. If the deployment group does not have a deployment configuration associated with it, CodeDeployDefault.OneAtATime is used by default.

", - "DeleteDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the IAM user or Amazon Web Services account.

", + "CreateDeploymentInput$deploymentConfigName": "

The name of a deployment configuration associated with the user or Amazon Web Services account.

If not specified, the value configured in the deployment group is used as the default. If the deployment group does not have a deployment configuration associated with it, CodeDeployDefault.OneAtATime is used by default.

", + "DeleteDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the user or Amazon Web Services account.

", "DeploymentConfigInfo$deploymentConfigName": "

The deployment configuration name.

", "DeploymentConfigsList$member": null, "DeploymentGroupInfo$deploymentConfigName": "

The deployment configuration name.

", "DeploymentInfo$deploymentConfigName": "

The deployment configuration name.

", - "GetDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the IAM user or Amazon Web Services account.

", + "GetDeploymentConfigInput$deploymentConfigName": "

The name of a deployment configuration associated with the user or Amazon Web Services account.

", "UpdateDeploymentGroupInput$deploymentConfigName": "

The replacement deployment configuration name to use, if you want to change it.

" } }, @@ -558,17 +558,17 @@ } }, "DeploymentDoesNotExistException": { - "base": "

The deployment with the IAM user or Amazon Web Services account does not exist.

", + "base": "

The deployment with the user or Amazon Web Services account does not exist.

", "refs": { } }, "DeploymentGroupAlreadyExistsException": { - "base": "

A deployment group with the specified name with the IAM user or Amazon Web Services account already exists.

", + "base": "

A deployment group with the specified name with the user or Amazon Web Services account already exists.

", "refs": { } }, "DeploymentGroupDoesNotExistException": { - "base": "

The named deployment group with the IAM user or Amazon Web Services account does not exist.

", + "base": "

The named deployment group with the user or Amazon Web Services account does not exist.

", "refs": { } }, @@ -636,7 +636,7 @@ "DeploymentInfo$deploymentId": "

The unique ID of a deployment.

", "DeploymentsList$member": null, "ECSTarget$deploymentId": "

The unique ID of a deployment.

", - "GetDeploymentInput$deploymentId": "

The unique ID of a deployment associated with the IAM user or Amazon Web Services account.

", + "GetDeploymentInput$deploymentId": "

The unique ID of a deployment associated with the user or Amazon Web Services account.

", "GetDeploymentInstanceInput$deploymentId": "

The unique ID of a deployment.

", "GetDeploymentTargetInput$deploymentId": "

The unique ID of a deployment.

", "InstanceSummary$deploymentId": "

The unique ID of a deployment.

", @@ -933,7 +933,7 @@ } }, "ELBInfo": { - "base": "

Information about a load balancer in Elastic Load Balancing to use in a deployment. Instances are registered directly with a load balancer, and traffic is routed to the load balancer.

", + "base": "

Information about a Classic Load Balancer in Elastic Load Balancing to use in a deployment. Instances are registered directly with a load balancer, and traffic is routed to the load balancer.

", "refs": { "ELBInfoList$member": null } @@ -941,13 +941,13 @@ "ELBInfoList": { "base": null, "refs": { - "LoadBalancerInfo$elbInfoList": "

An array that contains information about the load balancer to use for load balancing in a deployment. In Elastic Load Balancing, load balancers are used with Classic Load Balancers.

Adding more than one load balancer to the array is not supported.

" + "LoadBalancerInfo$elbInfoList": "

An array that contains information about the load balancers to use for load balancing in a deployment. If you're using Classic Load Balancers, specify those load balancers in this array.

You can add up to 10 load balancers to the array.

If you're using Application Load Balancers or Network Load Balancers, use the targetGroupInfoList array instead of this one.

" } }, "ELBName": { "base": null, "refs": { - "ELBInfo$name": "

For blue/green deployments, the name of the load balancer that is used to route traffic from original instances to replacement instances in a blue/green deployment. For in-place deployments, the name of the load balancer that instances are deregistered from so they are not serving traffic during a deployment, and then re-registered with after the deployment is complete.

" + "ELBInfo$name": "

For blue/green deployments, the name of the Classic Load Balancer that is used to route traffic from original instances to replacement instances in a blue/green deployment. For in-place deployments, the name of the Classic Load Balancer that instances are deregistered from so they are not serving traffic during a deployment, and then re-registered with after the deployment is complete.

" } }, "ETag": { @@ -1136,7 +1136,7 @@ } }, "IamArnRequiredException": { - "base": "

No IAM ARN was included in the request. You must use an IAM session ARN or IAM user ARN in the request.

", + "base": "

No IAM ARN was included in the request. You must use an IAM session ARN or user ARN in the request.

", "refs": { } }, @@ -1155,17 +1155,17 @@ "IamUserArn": { "base": null, "refs": { - "InstanceInfo$iamUserArn": "

The IAM user ARN associated with the on-premises instance.

", - "RegisterOnPremisesInstanceInput$iamUserArn": "

The ARN of the IAM user to associate with the on-premises instance.

" + "InstanceInfo$iamUserArn": "

The user ARN associated with the on-premises instance.

", + "RegisterOnPremisesInstanceInput$iamUserArn": "

The ARN of the user to associate with the on-premises instance.

" } }, "IamUserArnAlreadyRegisteredException": { - "base": "

The specified IAM user ARN is already registered with an on-premises instance.

", + "base": "

The specified user ARN is already registered with an on-premises instance.

", "refs": { } }, "IamUserArnRequiredException": { - "base": "

An IAM user ARN was not specified.

", + "base": "

An user ARN was not specified.

", "refs": { } }, @@ -1440,7 +1440,7 @@ } }, "InvalidIamUserArnException": { - "base": "

The IAM user ARN was specified in an invalid format.

", + "base": "

The user ARN was specified in an invalid format.

", "refs": { } }, @@ -1811,7 +1811,7 @@ } }, "LoadBalancerInfo": { - "base": "

Information about the Elastic Load Balancing load balancer or target group used in a deployment.

", + "base": "

Information about the Elastic Load Balancing load balancer or target group used in a deployment.

You can use load balancers and target groups in combination. For example, if you have two Classic Load Balancers, and five target groups tied to an Application Load Balancer, you can specify the two Classic Load Balancers in elbInfoList, and the five target groups in targetGroupInfoList.

", "refs": { "CreateDeploymentGroupInput$loadBalancerInfo": "

Information about the load balancer used in a deployment.

", "DeploymentGroupInfo$loadBalancerInfo": "

Information about the load balancer to use in a deployment.

", @@ -1851,7 +1851,7 @@ } }, "MultipleIamArnsProvidedException": { - "base": "

Both an IAM user ARN and an IAM session ARN were included in the request. Use only one ARN type.

", + "base": "

Both an user ARN and an IAM session ARN were included in the request. Use only one ARN type.

", "refs": { } }, @@ -1994,7 +1994,7 @@ } }, "RevisionDoesNotExistException": { - "base": "

The named revision does not exist with the IAM user or Amazon Web Services account.

", + "base": "

The named revision does not exist with the user or Amazon Web Services account.

", "refs": { } }, @@ -2215,7 +2215,7 @@ "TargetGroupInfoList": { "base": null, "refs": { - "LoadBalancerInfo$targetGroupInfoList": "

An array that contains information about the target group to use for load balancing in a deployment. In Elastic Load Balancing, target groups are used with Application Load Balancers.

Adding more than one target group to the array is not supported.

", + "LoadBalancerInfo$targetGroupInfoList": "

An array that contains information about the target groups to use for load balancing in a deployment. If you're using Application Load Balancers and Network Load Balancers, specify their associated target groups in this array.

You can add up to 10 target groups to the array.

If you're using Classic Load Balancers, use the elbInfoList array instead of this one.

", "TargetGroupPairInfo$targetGroups": "

One pair of target groups. One is associated with the original task set. The second is associated with the task set that serves traffic after the deployment is complete.

" } }, diff --git a/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json b/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json new file mode 100644 index 00000000000..be4aac53712 --- /dev/null +++ b/models/apis/codedeploy/2014-10-06/endpoint-rule-set-1.json @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://codedeploy.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff --git a/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json b/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json new file mode 100644 index 00000000000..31767ba560e --- /dev/null +++ b/models/apis/codedeploy/2014-10-06/endpoint-tests-1.json @@ -0,0 +1,678 @@ +{ + "testCases": [ + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.af-south-1.amazonaws.com" + } + }, + "params": { + "Region": "af-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-northeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-north-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-south-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-west-2.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.eu-west-3.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.sa-east-1.amazonaws.com" + } + }, + "params": { + "Region": "sa-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://codedeploy-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/connect/2017-08-08/api-2.json b/models/apis/connect/2017-08-08/api-2.json index 6218f37bd66..5b16ed21ad8 100644 --- a/models/apis/connect/2017-08-08/api-2.json +++ b/models/apis/connect/2017-08-08/api-2.json @@ -2076,6 +2076,22 @@ {"shape":"ThrottlingException"} ] }, + "ListSecurityProfileApplications":{ + "name":"ListSecurityProfileApplications", + "http":{ + "method":"GET", + "requestUri":"/security-profiles-applications/{InstanceId}/{SecurityProfileId}" + }, + "input":{"shape":"ListSecurityProfileApplicationsRequest"}, + "output":{"shape":"ListSecurityProfileApplicationsResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServiceException"} + ] + }, "ListSecurityProfilePermissions":{ "name":"ListSecurityProfilePermissions", "http":{ @@ -3617,6 +3633,24 @@ "AwaitAnswerMachinePrompt":{"shape":"Boolean"} } }, + "Application":{ + "type":"structure", + "members":{ + "Namespace":{"shape":"Namespace"}, + "ApplicationPermissions":{"shape":"ApplicationPermissions"} + } + }, + "ApplicationPermissions":{ + "type":"list", + "member":{"shape":"Permission"}, + "max":10, + "min":1 + }, + "Applications":{ + "type":"list", + "member":{"shape":"Application"}, + "max":10 + }, "ApproximateTotalCount":{"type":"long"}, "AssignContactCategoryActionDefinition":{ "type":"structure", @@ -4659,7 +4693,8 @@ }, "Tags":{"shape":"TagMap"}, "AllowedAccessControlTags":{"shape":"AllowedAccessControlTags"}, - "TagRestrictedResources":{"shape":"TagRestrictedResourceList"} + "TagRestrictedResources":{"shape":"TagRestrictedResourceList"}, + "Applications":{"shape":"Applications"} } }, "CreateSecurityProfileResponse":{ @@ -7682,7 +7717,8 @@ "PINPOINT_APP", "WISDOM_ASSISTANT", "WISDOM_KNOWLEDGE_BASE", - "CASES_DOMAIN" + "CASES_DOMAIN", + "APPLICATION" ] }, "InternalServiceException":{ @@ -8700,6 +8736,42 @@ "NextToken":{"shape":"NextToken"} } }, + "ListSecurityProfileApplicationsRequest":{ + "type":"structure", + "required":[ + "SecurityProfileId", + "InstanceId" + ], + "members":{ + "SecurityProfileId":{ + "shape":"SecurityProfileId", + "location":"uri", + "locationName":"SecurityProfileId" + }, + "InstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"InstanceId" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResult1000", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListSecurityProfileApplicationsResponse":{ + "type":"structure", + "members":{ + "Applications":{"shape":"Applications"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListSecurityProfilePermissionsRequest":{ "type":"structure", "required":[ @@ -9214,6 +9286,11 @@ "min":1, "pattern":"(^[\\S].*[\\S]$)|(^[\\S]$)" }, + "Namespace":{ + "type":"string", + "max":128, + "min":1 + }, "NextToken":{"type":"string"}, "NextToken2500":{ "type":"string", @@ -9389,6 +9466,11 @@ "max":100, "min":0 }, + "Permission":{ + "type":"string", + "max":128, + "min":1 + }, "PermissionsList":{ "type":"list", "member":{"shape":"SecurityProfilePermission"}, @@ -12514,7 +12596,8 @@ "locationName":"InstanceId" }, "AllowedAccessControlTags":{"shape":"AllowedAccessControlTags"}, - "TagRestrictedResources":{"shape":"TagRestrictedResourceList"} + "TagRestrictedResources":{"shape":"TagRestrictedResourceList"}, + "Applications":{"shape":"Applications"} } }, "UpdateTaskTemplateRequest":{ diff --git a/models/apis/connect/2017-08-08/docs-2.json b/models/apis/connect/2017-08-08/docs-2.json index 1623699acf1..f99ca79e046 100644 --- a/models/apis/connect/2017-08-08/docs-2.json +++ b/models/apis/connect/2017-08-08/docs-2.json @@ -129,6 +129,7 @@ "ListRoutingProfiles": "

Provides summary information about the routing profiles for the specified Amazon Connect instance.

For more information about routing profiles, see Routing Profiles and Create a Routing Profile in the Amazon Connect Administrator Guide.

", "ListRules": "

List all rules for the specified Amazon Connect instance.

", "ListSecurityKeys": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of all security keys associated with the instance.

", + "ListSecurityProfileApplications": "

Returns a list of third party applications in a specific security profile.

", "ListSecurityProfilePermissions": "

This API is in preview release for Amazon Connect and is subject to change.

Lists the permissions granted to a security profile.

", "ListSecurityProfiles": "

Provides summary information about the security profiles for the specified Amazon Connect instance.

For more information about security profiles, see Security Profiles in the Amazon Connect Administrator Guide.

", "ListTagsForResource": "

Lists the tags for the specified resource.

For sample policies that use tags, see Amazon Connect Identity-Based Policy Examples in the Amazon Connect Administrator Guide.

", @@ -549,6 +550,26 @@ "StartOutboundVoiceContactRequest$AnswerMachineDetectionConfig": "

Configuration of the answering machine detection for this outbound call.

" } }, + "Application": { + "base": "

This API is in preview release for Amazon Connect and is subject to change.

A third party application's metadata.

", + "refs": { + "Applications$member": null + } + }, + "ApplicationPermissions": { + "base": null, + "refs": { + "Application$ApplicationPermissions": "

The permissions that the agent is granted on the application. Only the ACCESS permission is supported.

" + } + }, + "Applications": { + "base": null, + "refs": { + "CreateSecurityProfileRequest$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of third party applications that the security profile will give access to.

", + "ListSecurityProfileApplicationsResponse$Applications": "

A list of the third party application's metadata.

", + "UpdateSecurityProfileRequest$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of the third party application's metadata.

" + } + }, "ApproximateTotalCount": { "base": null, "refs": { @@ -566,7 +587,7 @@ "AssignContactCategoryActionDefinition": { "base": "

This action must be set if TriggerEventSource is one of the following values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable. Contact is categorized using the rule name.

RuleName is used as ContactCategory.

", "refs": { - "RuleAction$AssignContactCategoryAction": "

Information about the contact category action.

" + "RuleAction$AssignContactCategoryAction": "

Information about the contact category action.

Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable | OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate

" } }, "AssociateApprovedOriginRequest": { @@ -2431,7 +2452,7 @@ "EventBridgeActionDefinition": { "base": "

The EventBridge action definition.

", "refs": { - "RuleAction$EventBridgeAction": "

Information about the EventBridge action.

" + "RuleAction$EventBridgeAction": "

Information about the EventBridge action.

Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit | OnMetricDataUpdate

" } }, "EventBridgeActionName": { @@ -3054,6 +3075,7 @@ "ListRoutingProfilesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListRulesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListSecurityKeysRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "ListSecurityProfileApplicationsRequest$InstanceId": "

The instance identifier.

", "ListSecurityProfilePermissionsRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListSecurityProfilesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", "ListTaskTemplatesRequest$InstanceId": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", @@ -3640,6 +3662,16 @@ "refs": { } }, + "ListSecurityProfileApplicationsRequest": { + "base": null, + "refs": { + } + }, + "ListSecurityProfileApplicationsResponse": { + "base": null, + "refs": { + } + }, "ListSecurityProfilePermissionsRequest": { "base": null, "refs": { @@ -3806,6 +3838,7 @@ "ListQueuesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListQuickConnectsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListRoutingProfilesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", + "ListSecurityProfileApplicationsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListSecurityProfilePermissionsRequest$MaxResults": "

The maximum number of results to return per page.

", "ListSecurityProfilesRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", "ListUserHierarchyGroupsRequest$MaxResults": "

The maximum number of results to return per page. The default MaxResult size is 100.

", @@ -3991,6 +4024,12 @@ "TrafficDistributionGroupSummary$Name": "

The name of the traffic distribution group.

" } }, + "Namespace": { + "base": null, + "refs": { + "Application$Namespace": "

Namespace of the application that you want to give access to.

" + } + }, "NextToken": { "base": null, "refs": { @@ -4050,6 +4089,8 @@ "ListRulesResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListSecurityKeysRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListSecurityKeysResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", + "ListSecurityProfileApplicationsRequest$NextToken": "

The token for the next set of results. The next set of results can be retrieved by using the token value returned in the previous response when making the next request.

", + "ListSecurityProfileApplicationsResponse$NextToken": "

The token for the next set of results. The next set of results can be retrieved by using the token value returned in the previous response when making the next request.

", "ListSecurityProfilePermissionsRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", "ListSecurityProfilePermissionsResponse$NextToken": "

If there are additional results, this is the token for the next set of results.

", "ListSecurityProfilesRequest$NextToken": "

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

", @@ -4261,6 +4302,12 @@ "Distribution$Percentage": "

The percentage of the traffic that is distributed, in increments of 10.

" } }, + "Permission": { + "base": null, + "refs": { + "ApplicationPermissions$member": null + } + }, "PermissionsList": { "base": null, "refs": { @@ -4376,7 +4423,7 @@ "PhoneNumberTypes": { "base": null, "refs": { - "ListPhoneNumbersRequest$PhoneNumberTypes": "

The type of phone number.

", + "ListPhoneNumbersRequest$PhoneNumberTypes": "

The type of phone number.

We recommend using ListPhoneNumbersV2 to return phone number types. While ListPhoneNumbers returns number types UIFN, SHARED, THIRD_PARTY_TF, and THIRD_PARTY_DID, it incorrectly lists them as TOLL_FREE or DID.

", "ListPhoneNumbersV2Request$PhoneNumberTypes": "

The type of phone number.

" } }, @@ -4724,7 +4771,7 @@ "QuickConnectName": { "base": null, "refs": { - "CreateQuickConnectRequest$Name": "

The name of the quick connect.

", + "CreateQuickConnectRequest$Name": "

A unique name of the quick connect.

", "QuickConnect$Name": "

The name of the quick connect.

", "QuickConnectSummary$Name": "

The name of the quick connect.

", "UpdateQuickConnectNameRequest$Name": "

The name of the quick connect.

" @@ -5208,7 +5255,7 @@ } }, "RuleTriggerEventSource": { - "base": "

The name of the event source. This field is required if TriggerEventSource is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate

", + "base": "

The name of the event source. This field is required if TriggerEventSource is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate | OnContactEvaluationSubmit | OnMetricDataUpdate.

", "refs": { "CreateRuleRequest$TriggerEventSource": "

The event source to trigger the rule.

", "Rule$TriggerEventSource": "

The event source to trigger the rule.

" @@ -5366,6 +5413,7 @@ "CreateSecurityProfileResponse$SecurityProfileId": "

The identifier for the security profle.

", "DeleteSecurityProfileRequest$SecurityProfileId": "

The identifier for the security profle.

", "DescribeSecurityProfileRequest$SecurityProfileId": "

The identifier for the security profle.

", + "ListSecurityProfileApplicationsRequest$SecurityProfileId": "

The security profile identifier.

", "ListSecurityProfilePermissionsRequest$SecurityProfileId": "

The identifier for the security profle.

", "SecurityProfile$Id": "

The identifier for the security profile.

", "SecurityProfileIds$member": null, @@ -5463,7 +5511,7 @@ "SendNotificationActionDefinition": { "base": "

Information about the send notification action.

", "refs": { - "RuleAction$SendNotificationAction": "

Information about the send notification action.

" + "RuleAction$SendNotificationAction": "

Information about the send notification action.

Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit | OnMetricDataUpdate

" } }, "ServiceQuotaExceededException": { diff --git a/models/apis/connect/2017-08-08/paginators-1.json b/models/apis/connect/2017-08-08/paginators-1.json index 2b1d93b7baf..445ee0c8379 100644 --- a/models/apis/connect/2017-08-08/paginators-1.json +++ b/models/apis/connect/2017-08-08/paginators-1.json @@ -180,6 +180,12 @@ "output_token": "NextToken", "result_key": "SecurityKeys" }, + "ListSecurityProfileApplications": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "Applications" + }, "ListSecurityProfilePermissions": { "input_token": "NextToken", "limit_key": "MaxResults", diff --git a/models/apis/dynamodb/2012-08-10/api-2.json b/models/apis/dynamodb/2012-08-10/api-2.json index 00b530950b1..e830e8db96f 100644 --- a/models/apis/dynamodb/2012-08-10/api-2.json +++ b/models/apis/dynamodb/2012-08-10/api-2.json @@ -1947,7 +1947,9 @@ "FailureMessage":{"shape":"FailureMessage"}, "ExportFormat":{"shape":"ExportFormat"}, "BilledSizeBytes":{"shape":"BilledSizeBytes"}, - "ItemCount":{"shape":"ItemCount"} + "ItemCount":{"shape":"ItemCount"}, + "ExportType":{"shape":"ExportType"}, + "IncrementalExportSpecification":{"shape":"IncrementalExportSpecification"} } }, "ExportEndTime":{"type":"timestamp"}, @@ -1958,6 +1960,7 @@ "ION" ] }, + "ExportFromTime":{"type":"timestamp"}, "ExportManifest":{"type":"string"}, "ExportNextToken":{"type":"string"}, "ExportNotFoundException":{ @@ -1984,7 +1987,8 @@ "type":"structure", "members":{ "ExportArn":{"shape":"ExportArn"}, - "ExportStatus":{"shape":"ExportStatus"} + "ExportStatus":{"shape":"ExportStatus"}, + "ExportType":{"shape":"ExportType"} } }, "ExportTableToPointInTimeInput":{ @@ -2005,7 +2009,9 @@ "S3Prefix":{"shape":"S3Prefix"}, "S3SseAlgorithm":{"shape":"S3SseAlgorithm"}, "S3SseKmsKeyId":{"shape":"S3SseKmsKeyId"}, - "ExportFormat":{"shape":"ExportFormat"} + "ExportFormat":{"shape":"ExportFormat"}, + "ExportType":{"shape":"ExportType"}, + "IncrementalExportSpecification":{"shape":"IncrementalExportSpecification"} } }, "ExportTableToPointInTimeOutput":{ @@ -2015,6 +2021,21 @@ } }, "ExportTime":{"type":"timestamp"}, + "ExportToTime":{"type":"timestamp"}, + "ExportType":{ + "type":"string", + "enum":[ + "FULL_EXPORT", + "INCREMENTAL_EXPORT" + ] + }, + "ExportViewType":{ + "type":"string", + "enum":[ + "NEW_IMAGE", + "NEW_AND_OLD_IMAGES" + ] + }, "ExpressionAttributeNameMap":{ "type":"map", "key":{"shape":"ExpressionAttributeNameVariable"}, @@ -2325,6 +2346,14 @@ "type":"long", "min":0 }, + "IncrementalExportSpecification":{ + "type":"structure", + "members":{ + "ExportFromTime":{"shape":"ExportFromTime"}, + "ExportToTime":{"shape":"ExportToTime"}, + "ExportViewType":{"shape":"ExportViewType"} + } + }, "IndexName":{ "type":"string", "max":255, diff --git a/models/apis/dynamodb/2012-08-10/docs-2.json b/models/apis/dynamodb/2012-08-10/docs-2.json index b4a23a7212a..be1e1a40c46 100644 --- a/models/apis/dynamodb/2012-08-10/docs-2.json +++ b/models/apis/dynamodb/2012-08-10/docs-2.json @@ -31,7 +31,7 @@ "ExportTableToPointInTime": "

Exports table data to an S3 bucket. The table must have point in time recovery enabled, and you can export data from any time within the point in time recovery window.

", "GetItem": "

The GetItem operation returns a set of attributes for the item with the given primary key. If there is no matching item, GetItem does not return any data and there will be no Item element in the response.

GetItem provides an eventually consistent read by default. If your application requires a strongly consistent read, set ConsistentRead to true. Although a strongly consistent read might take more time than an eventually consistent read, it always returns the last updated value.

", "ImportTable": "

Imports table data from an S3 bucket.

", - "ListBackups": "

List backups associated with an Amazon Web Services account. To list backups for a given table, specify TableName. ListBackups returns a paginated list of results with at most 1 MB worth of items in a page. You can also specify a maximum number of entries to be returned in a page.

In the request, start time is inclusive, but end time is exclusive. Note that these boundaries are for the time at which the original backup was requested.

You can call ListBackups a maximum of five times per second.

", + "ListBackups": "

List DynamoDB backups that are associated with an Amazon Web Services account and weren't made with Amazon Web Services Backup. To list these backups for a given table, specify TableName. ListBackups returns a paginated list of results with at most 1 MB worth of items in a page. You can also specify a maximum number of entries to be returned in a page.

In the request, start time is inclusive, but end time is exclusive. Note that these boundaries are for the time at which the original backup was requested.

You can call ListBackups a maximum of five times per second.

If you want to retrieve the complete list of backups made with Amazon Web Services Backup, use the Amazon Web Services Backup list API.

", "ListContributorInsights": "

Returns a list of ContributorInsightsSummary for a table and all its global secondary indexes.

", "ListExports": "

Lists completed exports within the past 90 days.

", "ListGlobalTables": "

Lists all global tables that have a replica in the specified Region.

This operation only applies to Version 2017.11.29 (Legacy) of global tables. We recommend using Version 2019.11.21 (Current) when creating new global tables, as it provides greater flexibility, higher efficiency and consumes less write capacity than 2017.11.29 (Legacy). To determine which version you are using, see Determining the version. To update existing global tables from version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see Updating global tables.

", @@ -1112,6 +1112,12 @@ "ExportTableToPointInTimeInput$ExportFormat": "

The format for the exported data. Valid values for ExportFormat are DYNAMODB_JSON or ION.

" } }, + "ExportFromTime": { + "base": null, + "refs": { + "IncrementalExportSpecification$ExportFromTime": "

Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

" + } + }, "ExportManifest": { "base": null, "refs": { @@ -1172,6 +1178,26 @@ "ExportTableToPointInTimeInput$ExportTime": "

Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table export will be a snapshot of the table's state at this point in time.

" } }, + "ExportToTime": { + "base": null, + "refs": { + "IncrementalExportSpecification$ExportToTime": "

Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

" + } + }, + "ExportType": { + "base": null, + "refs": { + "ExportDescription$ExportType": "

Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

", + "ExportSummary$ExportType": "

Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

", + "ExportTableToPointInTimeInput$ExportType": "

Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

" + } + }, + "ExportViewType": { + "base": null, + "refs": { + "IncrementalExportSpecification$ExportViewType": "

Choice of whether to output the previous item image prior to the start time of the incremental export. Valid values are NEW_AND_OLD_IMAGES and NEW_IMAGES.

" + } + }, "ExpressionAttributeNameMap": { "base": null, "refs": { @@ -1461,6 +1487,13 @@ "ImportTableDescription$ImportedItemCount": "

The number of items successfully imported into the new table.

" } }, + "IncrementalExportSpecification": { + "base": "

Optional object containing the parameters specific to an incremental export.

", + "refs": { + "ExportDescription$IncrementalExportSpecification": "

Optional object containing the parameters specific to an incremental export.

", + "ExportTableToPointInTimeInput$IncrementalExportSpecification": "

Optional object containing the parameters specific to an incremental export.

" + } + }, "IndexName": { "base": null, "refs": { diff --git a/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json b/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json index d79f53d622f..5fa72ade6df 100644 --- a/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json +++ b/models/apis/dynamodb/2012-08-10/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,175 +140,83 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://dynamodb.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "PartitionResult" }, - { - "conditions": [], - "endpoint": { - "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] } ], @@ -304,99 +225,142 @@ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, + "aws-us-gov", { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "name" ] } ] } ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "endpoint": { + "url": "https://dynamodb.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { "conditions": [], - "type": "tree", - "rules": [ + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "local" + "supportsDualStack" ] } - ], - "endpoint": { - "url": "http://localhost:8000", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "dynamodb", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [], "endpoint": { - "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "local" + ] + } + ], + "endpoint": { + "url": "http://localhost:8000", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "dynamodb", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/ec2/2016-11-15/api-2.json b/models/apis/ec2/2016-11-15/api-2.json index ac43546a296..46632aa6617 100755 --- a/models/apis/ec2/2016-11-15/api-2.json +++ b/models/apis/ec2/2016-11-15/api-2.json @@ -10032,7 +10032,7 @@ "type":"structure", "required":["AvailabilityZone"], "members":{ - "AvailabilityZone":{"shape":"String"}, + "AvailabilityZone":{"shape":"AvailabilityZoneName"}, "DryRun":{"shape":"Boolean"}, "Ipv6Native":{"shape":"Boolean"} } @@ -12052,7 +12052,8 @@ "shape":"String", "idempotencyToken":true }, - "DryRun":{"shape":"Boolean"} + "DryRun":{"shape":"Boolean"}, + "FIPSEnabled":{"shape":"Boolean"} } }, "CreateVerifiedAccessInstanceResult":{ @@ -43678,6 +43679,10 @@ "Tags":{ "shape":"TagList", "locationName":"tagSet" + }, + "FipsEnabled":{ + "shape":"Boolean", + "locationName":"fipsEnabled" } } }, diff --git a/models/apis/ec2/2016-11-15/docs-2.json b/models/apis/ec2/2016-11-15/docs-2.json index 928da6bccb3..e324908ce55 100755 --- a/models/apis/ec2/2016-11-15/docs-2.json +++ b/models/apis/ec2/2016-11-15/docs-2.json @@ -578,7 +578,7 @@ "RestoreSnapshotTier": "

Restores an archived Amazon EBS snapshot for use temporarily or permanently, or modifies the restore period or restore type for a snapshot that was previously temporarily restored.

For more information see Restore an archived snapshot and modify the restore period or restore type for a temporarily restored snapshot in the Amazon Elastic Compute Cloud User Guide.

", "RevokeClientVpnIngress": "

Removes an ingress authorization rule from a Client VPN endpoint.

", "RevokeSecurityGroupEgress": "

Removes the specified outbound (egress) rules from the specified security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and destination (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", - "RevokeSecurityGroupIngress": "

Removes the specified inbound (ingress) rules from a security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", + "RevokeSecurityGroupIngress": "

Removes the specified inbound (ingress) rules from a security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

For a non-default VPC, if the values you specify do not match the existing rule's values, an InvalidPermission.NotFound client error is returned, and no rules are revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", "RunInstances": "

Launches the specified number of instances using an AMI for which you have permissions.

You can specify a number of options, or leave the default options. The following rules apply:

You can create a launch template, which is a resource that contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify the launch template instead of specifying the launch parameters.

To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances.

An instance is ready for you to use when it's in the running state. You can check the state of your instance using DescribeInstances. You can tag instances and EBS volumes during launch, after launch, or both. For more information, see CreateTags and Tagging your Amazon EC2 resources.

Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key pairs.

For troubleshooting, see What to do if an instance immediately terminates, and Troubleshooting connecting to your instance.

", "RunScheduledInstances": "

Launches the specified Scheduled Instances.

Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon EC2 User Guide.

", "SearchLocalGatewayRoutes": "

Searches for routes in the specified local gateway route table.

", @@ -1747,6 +1747,7 @@ "base": null, "refs": { "CreateCapacityReservationRequest$AvailabilityZone": "

The Availability Zone in which to create the Capacity Reservation.

", + "CreateDefaultSubnetRequest$AvailabilityZone": "

The Availability Zone in which to create the default subnet.

", "CreateVolumeRequest$AvailabilityZone": "

The ID of the Availability Zone in which to create the volume. For example, us-east-1a.

" } }, @@ -2058,6 +2059,7 @@ "CreateVerifiedAccessEndpointRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "CreateVerifiedAccessGroupRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "CreateVerifiedAccessInstanceRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "CreateVerifiedAccessInstanceRequest$FIPSEnabled": "

Choose to enable or disable support for Federal Information Processing Standards (FIPS) on the instance.

", "CreateVerifiedAccessTrustProviderRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "CreateVolumeRequest$Encrypted": "

Indicates whether the volume should be encrypted. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon Elastic Compute Cloud User Guide.

Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types.

", "CreateVolumeRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -2774,6 +2776,7 @@ "UpdateSecurityGroupRuleDescriptionsEgressResult$Return": "

Returns true if the request succeeds; otherwise, returns an error.

", "UpdateSecurityGroupRuleDescriptionsIngressRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "UpdateSecurityGroupRuleDescriptionsIngressResult$Return": "

Returns true if the request succeeds; otherwise, returns an error.

", + "VerifiedAccessInstance$FipsEnabled": "

Describes if support for Federal Information Processing Standards (FIPS) is enabled on the instance.

", "VerifiedAccessLogCloudWatchLogsDestination$Enabled": "

Indicates whether logging is enabled.

", "VerifiedAccessLogCloudWatchLogsDestinationOptions$Enabled": "

Indicates whether logging is enabled.

", "VerifiedAccessLogKinesisDataFirehoseDestination$Enabled": "

Indicates whether logging is enabled.

", @@ -18668,7 +18671,6 @@ "CreateCustomerGatewayRequest$CertificateArn": "

The Amazon Resource Name (ARN) for the customer gateway certificate.

", "CreateCustomerGatewayRequest$DeviceName": "

A name for the customer gateway device.

Length Constraints: Up to 255 characters.

", "CreateCustomerGatewayRequest$IpAddress": "

IPv4 address for the customer gateway device's outside interface. The address must be static.

", - "CreateDefaultSubnetRequest$AvailabilityZone": "

The Availability Zone in which to create the default subnet.

", "CreateEgressOnlyInternetGatewayRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "CreateEgressOnlyInternetGatewayResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "CreateFleetError$ErrorCode": "

The error code that indicates why the instance could not be launched. For more information about error codes, see Error codes.

", diff --git a/models/apis/lakeformation/2017-03-31/api-2.json b/models/apis/lakeformation/2017-03-31/api-2.json index a51feee9935..63c122a62c3 100644 --- a/models/apis/lakeformation/2017-03-31/api-2.json +++ b/models/apis/lakeformation/2017-03-31/api-2.json @@ -141,6 +141,23 @@ {"shape":"AccessDeniedException"} ] }, + "CreateLakeFormationOptIn":{ + "name":"CreateLakeFormationOptIn", + "http":{ + "method":"POST", + "requestUri":"/CreateLakeFormationOptIn" + }, + "input":{"shape":"CreateLakeFormationOptInRequest"}, + "output":{"shape":"CreateLakeFormationOptInResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, "DeleteDataCellsFilter":{ "name":"DeleteDataCellsFilter", "http":{ @@ -173,6 +190,23 @@ {"shape":"AccessDeniedException"} ] }, + "DeleteLakeFormationOptIn":{ + "name":"DeleteLakeFormationOptIn", + "http":{ + "method":"POST", + "requestUri":"/DeleteLakeFormationOptIn" + }, + "input":{"shape":"DeleteLakeFormationOptInRequest"}, + "output":{"shape":"DeleteLakeFormationOptInResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"EntityNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ConcurrentModificationException"} + ] + }, "DeleteObjectsOnCancel":{ "name":"DeleteObjectsOnCancel", "http":{ @@ -501,6 +535,21 @@ {"shape":"AccessDeniedException"} ] }, + "ListLakeFormationOptIns":{ + "name":"ListLakeFormationOptIns", + "http":{ + "method":"POST", + "requestUri":"/ListLakeFormationOptIns" + }, + "input":{"shape":"ListLakeFormationOptInsRequest"}, + "output":{"shape":"ListLakeFormationOptInsResponse"}, + "errors":[ + {"shape":"InvalidInputException"}, + {"shape":"InternalServiceException"}, + {"shape":"OperationTimeoutException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListPermissions":{ "name":"ListPermissions", "http":{ @@ -1030,6 +1079,22 @@ "members":{ } }, + "CreateLakeFormationOptInRequest":{ + "type":"structure", + "required":[ + "Principal", + "Resource" + ], + "members":{ + "Principal":{"shape":"DataLakePrincipal"}, + "Resource":{"shape":"Resource"} + } + }, + "CreateLakeFormationOptInResponse":{ + "type":"structure", + "members":{ + } + }, "CredentialTimeoutDurationSecondInteger":{ "type":"integer", "box":true, @@ -1164,6 +1229,22 @@ "members":{ } }, + "DeleteLakeFormationOptInRequest":{ + "type":"structure", + "required":[ + "Principal", + "Resource" + ], + "members":{ + "Principal":{"shape":"DataLakePrincipal"}, + "Resource":{"shape":"Resource"} + } + }, + "DeleteLakeFormationOptInResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteObjectInput":{ "type":"structure", "required":["Uri"], @@ -1714,6 +1795,19 @@ "max":50, "min":1 }, + "LakeFormationOptInsInfo":{ + "type":"structure", + "members":{ + "Resource":{"shape":"Resource"}, + "Principal":{"shape":"DataLakePrincipal"}, + "LastModified":{"shape":"LastModifiedTimestamp"}, + "LastUpdatedBy":{"shape":"NameString"} + } + }, + "LakeFormationOptInsInfoList":{ + "type":"list", + "member":{"shape":"LakeFormationOptInsInfo"} + }, "LastModifiedTimestamp":{"type":"timestamp"}, "ListDataCellsFilterRequest":{ "type":"structure", @@ -1746,6 +1840,22 @@ "NextToken":{"shape":"Token"} } }, + "ListLakeFormationOptInsRequest":{ + "type":"structure", + "members":{ + "Principal":{"shape":"DataLakePrincipal"}, + "Resource":{"shape":"Resource"}, + "MaxResults":{"shape":"PageSize"}, + "NextToken":{"shape":"Token"} + } + }, + "ListLakeFormationOptInsResponse":{ + "type":"structure", + "members":{ + "LakeFormationOptInsInfoList":{"shape":"LakeFormationOptInsInfoList"}, + "NextToken":{"shape":"Token"} + } + }, "ListPermissionsRequest":{ "type":"structure", "members":{ @@ -1968,7 +2078,9 @@ "Resource":{"shape":"Resource"}, "Permissions":{"shape":"PermissionList"}, "PermissionsWithGrantOption":{"shape":"PermissionList"}, - "AdditionalDetails":{"shape":"DetailsMap"} + "AdditionalDetails":{"shape":"DetailsMap"}, + "LastUpdated":{"shape":"LastModifiedTimestamp"}, + "LastUpdatedBy":{"shape":"NameString"} } }, "PrincipalResourcePermissionsList":{ @@ -2028,7 +2140,8 @@ "ResourceArn":{"shape":"ResourceArnString"}, "UseServiceLinkedRole":{"shape":"NullableBoolean"}, "RoleArn":{"shape":"IAMRoleArn"}, - "WithFederation":{"shape":"NullableBoolean"} + "WithFederation":{"shape":"NullableBoolean"}, + "HybridAccessEnabled":{"shape":"NullableBoolean"} } }, "RegisterResourceResponse":{ @@ -2074,7 +2187,8 @@ "ResourceArn":{"shape":"ResourceArnString"}, "RoleArn":{"shape":"IAMRoleArn"}, "LastModified":{"shape":"LastModifiedTimestamp"}, - "WithFederation":{"shape":"NullableBoolean"} + "WithFederation":{"shape":"NullableBoolean"}, + "HybridAccessEnabled":{"shape":"NullableBoolean"} } }, "ResourceInfoList":{ @@ -2482,7 +2596,8 @@ "members":{ "RoleArn":{"shape":"IAMRoleArn"}, "ResourceArn":{"shape":"ResourceArnString"}, - "WithFederation":{"shape":"NullableBoolean"} + "WithFederation":{"shape":"NullableBoolean"}, + "HybridAccessEnabled":{"shape":"NullableBoolean"} } }, "UpdateResourceResponse":{ diff --git a/models/apis/lakeformation/2017-03-31/docs-2.json b/models/apis/lakeformation/2017-03-31/docs-2.json index f39d1008b99..7b4629a244b 100644 --- a/models/apis/lakeformation/2017-03-31/docs-2.json +++ b/models/apis/lakeformation/2017-03-31/docs-2.json @@ -10,8 +10,10 @@ "CommitTransaction": "

Attempts to commit the specified transaction. Returns an exception if the transaction was previously aborted. This API action is idempotent if called multiple times for the same transaction.

", "CreateDataCellsFilter": "

Creates a data cell filter to allow one to grant access to certain columns on certain rows.

", "CreateLFTag": "

Creates an LF-tag with the specified name and values.

", + "CreateLakeFormationOptIn": "

Enforce Lake Formation permissions for the given databases, tables, and principals.

", "DeleteDataCellsFilter": "

Deletes a data cell filter.

", "DeleteLFTag": "

Deletes the specified LF-tag given a key name. If the input parameter tag key was not found, then the operation will throw an exception. When you delete an LF-tag, the LFTagPolicy attached to the LF-tag becomes invalid. If the deleted LF-tag was still assigned to any resource, the tag policy attach to the deleted LF-tag will no longer be applied to the resource.

", + "DeleteLakeFormationOptIn": "

Remove the Lake Formation permissions enforcement of the given databases, tables, and principals.

", "DeleteObjectsOnCancel": "

For a specific governed table, provides a list of Amazon S3 objects that will be written during the current transaction and that can be automatically deleted if the transaction is canceled. Without this call, no Amazon S3 objects are automatically deleted when a transaction cancels.

The Glue ETL library function write_dynamic_frame.from_catalog() includes an option to automatically call DeleteObjectsOnCancel before writes. For more information, see Rolling Back Amazon S3 Writes.

", "DeregisterResource": "

Deregisters the resource as managed by the Data Catalog.

When you deregister a path, Lake Formation removes the path from the inline policy attached to your service-linked role.

", "DescribeResource": "

Retrieves the current data access role for the given resource registered in Lake Formation.

", @@ -32,6 +34,7 @@ "GrantPermissions": "

Grants permissions to the principal to access metadata in the Data Catalog and data organized in underlying data storage such as Amazon S3.

For information about permissions, see Security and Access Control to Metadata and Data.

", "ListDataCellsFilter": "

Lists all the data cell filters on a table.

", "ListLFTags": "

Lists LF-tags that the requester has permission to view.

", + "ListLakeFormationOptIns": "

Retrieve the current list of resources and principals that are opt in to enforce Lake Formation permissions.

", "ListPermissions": "

Returns a list of the principal permissions on the resource, filtered by the permissions of the caller. For example, if you are granted an ALTER permission, you are able to see only the principal permissions for ALTER.

This operation returns only those permissions that have been explicitly granted.

For information about permissions, see Security and Access Control to Metadata and Data.

", "ListResources": "

Lists the resources registered to be managed by the Data Catalog.

", "ListTableStorageOptimizers": "

Returns the configuration of all storage optimizers associated with a specified table.

", @@ -301,6 +304,16 @@ "refs": { } }, + "CreateLakeFormationOptInRequest": { + "base": null, + "refs": { + } + }, + "CreateLakeFormationOptInResponse": { + "base": null, + "refs": { + } + }, "CredentialTimeoutDurationSecondInteger": { "base": null, "refs": { @@ -334,8 +347,12 @@ "base": "

The Lake Formation principal. Supported principals are IAM users or IAM roles.

", "refs": { "BatchPermissionsRequestEntry$Principal": "

The principal to be granted a permission.

", + "CreateLakeFormationOptInRequest$Principal": null, "DataLakePrincipalList$member": null, + "DeleteLakeFormationOptInRequest$Principal": null, "GrantPermissionsRequest$Principal": "

The principal to be granted the permissions on the resource. Supported principals are IAM users or IAM roles, and they are defined by their principal type and their ARN.

Note that if you define a resource with a particular ARN, then later delete, and recreate a resource with that same ARN, the resource maintains the permissions already granted.

", + "LakeFormationOptInsInfo$Principal": null, + "ListLakeFormationOptInsRequest$Principal": null, "ListPermissionsRequest$Principal": "

Specifies a principal to filter the permissions returned.

", "PrincipalPermissions$Principal": "

The principal who is granted permissions.

", "PrincipalResourcePermissions$Principal": "

The Data Lake principal to be granted or revoked permissions.

", @@ -414,6 +431,16 @@ "refs": { } }, + "DeleteLakeFormationOptInRequest": { + "base": null, + "refs": { + } + }, + "DeleteLakeFormationOptInResponse": { + "base": null, + "refs": { + } + }, "DeleteObjectInput": { "base": "

An object to delete from the governed table.

", "refs": { @@ -832,9 +859,23 @@ "TaggedTable$LFTagsOnTable": "

A list of LF-tags attached to the table.

" } }, + "LakeFormationOptInsInfo": { + "base": "

A single principal-resource pair that has Lake Formation permissins enforced.

", + "refs": { + "LakeFormationOptInsInfoList$member": null + } + }, + "LakeFormationOptInsInfoList": { + "base": null, + "refs": { + "ListLakeFormationOptInsResponse$LakeFormationOptInsInfoList": "

A list of principal-resource pairs that have Lake Formation permissins enforced.

" + } + }, "LastModifiedTimestamp": { "base": null, "refs": { + "LakeFormationOptInsInfo$LastModified": "

The last modified date and time of the record.

", + "PrincipalResourcePermissions$LastUpdated": "

The date and time when the resource was last updated.

", "ResourceInfo$LastModified": "

The date and time the resource was last modified.

" } }, @@ -858,6 +899,16 @@ "refs": { } }, + "ListLakeFormationOptInsRequest": { + "base": null, + "refs": { + } + }, + "ListLakeFormationOptInsResponse": { + "base": null, + "refs": { + } + }, "ListPermissionsRequest": { "base": null, "refs": { @@ -949,8 +1000,10 @@ "GetTableObjectsRequest$DatabaseName": "

The database containing the governed table.

", "GetTableObjectsRequest$TableName": "

The governed table for which to retrieve objects.

", "LFTagKeyResource$TagKey": "

The key-name for the LF-tag.

", + "LakeFormationOptInsInfo$LastUpdatedBy": "

The user who updated the record.

", "ListTableStorageOptimizersRequest$DatabaseName": "

Name of the database where the table is present.

", "ListTableStorageOptimizersRequest$TableName": "

Name of the table.

", + "PrincipalResourcePermissions$LastUpdatedBy": "

The user who updated the record.

", "TableResource$DatabaseName": "

The name of the database for the table. Unique to a Data Catalog. A database is a set of associated table definitions organized into a logical group. You can Grant and Revoke database privileges to a principal.

", "TableResource$Name": "

The name of the table.

", "TableWithColumnsResource$DatabaseName": "

The name of the database for the table with columns resource. Unique to the Data Catalog. A database is a set of associated table definitions organized into a logical group. You can Grant and Revoke database privileges to a principal.

", @@ -968,8 +1021,11 @@ "DataLakeSettings$AllowFullTableExternalDataAccess": "

Whether to allow a third-party query engine to get data access credentials without session tags when a caller has full data access permissions.

", "RegisterResourceRequest$UseServiceLinkedRole": "

Designates an Identity and Access Management (IAM) service-linked role by registering this role with the Data Catalog. A service-linked role is a unique type of IAM role that is linked directly to Lake Formation.

For more information, see Using Service-Linked Roles for Lake Formation.

", "RegisterResourceRequest$WithFederation": "

Whether or not the resource is a federated resource.

", + "RegisterResourceRequest$HybridAccessEnabled": "

Specifies whether the data access of tables pointing to the location can be managed by both Lake Formation permissions as well as Amazon S3 bucket policies.

", "ResourceInfo$WithFederation": "

Whether or not the resource is a federated resource.

", - "UpdateResourceRequest$WithFederation": "

Whether or not the resource is a federated resource.

" + "ResourceInfo$HybridAccessEnabled": "

Indicates whether the data access of tables pointing to the location can be managed by both Lake Formation permissions as well as Amazon S3 bucket policies.

", + "UpdateResourceRequest$WithFederation": "

Whether or not the resource is a federated resource.

", + "UpdateResourceRequest$HybridAccessEnabled": "

Specifies whether the data access of tables pointing to the location can be managed by both Lake Formation permissions as well as Amazon S3 bucket policies.

" } }, "NumberOfBytes": { @@ -1021,6 +1077,7 @@ "GetTableObjectsRequest$MaxResults": "

Specifies how many values to return in a page.

", "ListDataCellsFilterRequest$MaxResults": "

The maximum size of the response.

", "ListLFTagsRequest$MaxResults": "

The maximum number of results to return.

", + "ListLakeFormationOptInsRequest$MaxResults": "

The maximum number of results to return.

", "ListPermissionsRequest$MaxResults": "

The maximum number of results to return.

", "ListResourcesRequest$MaxResults": "

The maximum number of resource results.

", "ListTableStorageOptimizersRequest$MaxResults": "

The number of storage optimizers to return on each call.

", @@ -1222,8 +1279,12 @@ "refs": { "AddLFTagsToResourceRequest$Resource": "

The database, table, or column resource to which to attach an LF-tag.

", "BatchPermissionsRequestEntry$Resource": "

The resource to which the principal is to be granted a permission.

", + "CreateLakeFormationOptInRequest$Resource": null, + "DeleteLakeFormationOptInRequest$Resource": null, "GetResourceLFTagsRequest$Resource": "

The database, table, or column resource for which you want to return LF-tags.

", "GrantPermissionsRequest$Resource": "

The resource to which permissions are to be granted. Resources in Lake Formation are the Data Catalog, databases, and tables.

", + "LakeFormationOptInsInfo$Resource": null, + "ListLakeFormationOptInsRequest$Resource": "

A structure for the resource.

", "ListPermissionsRequest$Resource": "

A resource where you will get a list of the principal permissions.

This operation does not support getting privileges on a table with columns. Instead, call this operation on the table, and the operation returns the table and the table w columns.

", "PrincipalResourcePermissions$Resource": "

The resource where permissions are to be granted or revoked.

", "RemoveLFTagsFromResourceRequest$Resource": "

The database, table, or column resource where you want to remove an LF-tag.

", @@ -1498,7 +1559,7 @@ "refs": { "CreateLFTagRequest$TagValues": "

A list of possible values an attribute can take.

", "GetLFTagResponse$TagValues": "

A list of possible values an attribute can take.

", - "LFTag$TagValues": "

A list of possible values an attribute can take.

", + "LFTag$TagValues": "

A list of possible values an attribute can take.

The maximum number of values that can be defined for a LF-Tag is 1000. A single API call supports 50 values. You can use multiple API calls to add more values.

", "LFTagKeyResource$TagValues": "

A list of possible values an attribute can take.

", "LFTagPair$TagValues": "

A list of possible values an attribute can take.

", "UpdateLFTagRequest$TagValuesToDelete": "

A list of LF-tag values to delete from the LF-tag.

", @@ -1542,6 +1603,8 @@ "ListDataCellsFilterResponse$NextToken": "

A continuation token, if not all requested data cell filters have been returned.

", "ListLFTagsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListLFTagsResponse$NextToken": "

A continuation token, present if the current list segment is not the last.

", + "ListLakeFormationOptInsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", + "ListLakeFormationOptInsResponse$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListPermissionsRequest$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListPermissionsResponse$NextToken": "

A continuation token, if this is not the first call to retrieve this list.

", "ListResourcesRequest$NextToken": "

A continuation token, if this is not the first call to retrieve these resources.

", diff --git a/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json b/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json index 3c84318cfc7..363a3917c99 100644 --- a/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json +++ b/models/apis/lakeformation/2017-03-31/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://lakeformation-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://lakeformation-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://lakeformation-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://lakeformation-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://lakeformation.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://lakeformation.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://lakeformation.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://lakeformation.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/lakeformation/2017-03-31/paginators-1.json b/models/apis/lakeformation/2017-03-31/paginators-1.json index 3de88fef083..1f03c6c9c3d 100644 --- a/models/apis/lakeformation/2017-03-31/paginators-1.json +++ b/models/apis/lakeformation/2017-03-31/paginators-1.json @@ -28,6 +28,11 @@ "output_token": "NextToken", "result_key": "LFTags" }, + "ListLakeFormationOptIns": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" + }, "ListPermissions": { "input_token": "NextToken", "limit_key": "MaxResults", diff --git a/models/apis/pinpoint/2016-12-01/docs-2.json b/models/apis/pinpoint/2016-12-01/docs-2.json index c7ecfe0abff..7624bc831c9 100644 --- a/models/apis/pinpoint/2016-12-01/docs-2.json +++ b/models/apis/pinpoint/2016-12-01/docs-2.json @@ -93,7 +93,7 @@ "PhoneNumberValidate": "

Retrieves information about a phone number.

", "PutEventStream": "

Creates a new event stream for an application or updates the settings of an existing event stream for an application.

", "PutEvents": "

Creates a new event to record for endpoints, or creates or updates endpoint data that existing events are associated with.

", - "RemoveAttributes": "

Removes one or more attributes, of the same attribute type, from all the endpoints that are associated with an application.

", + "RemoveAttributes": "

Removes one or more custom attributes, of the same attribute type, from the application. Existing endpoints still have the attributes but Amazon Pinpoint will stop capturing new or changed values for these attributes.

", "SendMessages": "

Creates and sends a direct message.

", "SendOTPMessage": "

Send an OTP message

", "SendUsersMessages": "

Creates and sends a message to a list of users.

", diff --git a/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json b/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json index 2f55d5222e7..0f212a69ff7 100644 --- a/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json +++ b/models/apis/pinpoint/2016-12-01/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,331 +140,282 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://pinpoint-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://pinpoint-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://pinpoint-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://pinpoint.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], + "conditions": [], "endpoint": { - "url": "https://pinpoint.us-east-1.amazonaws.com", + "url": "https://pinpoint-fips.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "stringEquals", + "fn": "getAttr", "argv": [ { - "ref": "Region" + "ref": "PartitionResult" }, - "us-west-2" + "supportsDualStack" ] } - ], + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], "endpoint": { - "url": "https://pinpoint.us-west-2.amazonaws.com", + "url": "https://pinpoint.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://pinpoint.us-east-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-gov-west-1" - ] - } - ], - "endpoint": { - "url": "https://pinpoint.us-gov-west-1.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "us-west-2" + ] + } + ], + "endpoint": { + "url": "https://pinpoint.us-west-2.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://pinpoint.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "us-gov-west-1" + ] + } + ], + "endpoint": { + "url": "https://pinpoint.us-gov-west-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", { - "conditions": [ + "fn": "getAttr", + "argv": [ { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://pinpoint.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://pinpoint.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", { - "conditions": [], - "endpoint": { - "url": "https://pinpoint.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] } ] } - ] + ], + "endpoint": { + "url": "https://pinpoint.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://pinpoint.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/s3/2006-03-01/api-2.json b/models/apis/s3/2006-03-01/api-2.json index ad5aec592e1..b46ebed99bc 100644 --- a/models/apis/s3/2006-03-01/api-2.json +++ b/models/apis/s3/2006-03-01/api-2.json @@ -7476,7 +7476,8 @@ "COMPLETE", "PENDING", "FAILED", - "REPLICA" + "REPLICA", + "COMPLETED" ] }, "ReplicationTime":{ diff --git a/models/apis/s3/2006-03-01/examples-1.json b/models/apis/s3/2006-03-01/examples-1.json index 75c697b58cf..2a15cc22002 100644 --- a/models/apis/s3/2006-03-01/examples-1.json +++ b/models/apis/s3/2006-03-01/examples-1.json @@ -84,13 +84,10 @@ "CreateBucket": [ { "input": { - "Bucket": "examplebucket", - "CreateBucketConfiguration": { - "LocationConstraint": "eu-west-1" - } + "Bucket": "examplebucket" }, "output": { - "Location": "http://examplebucket..s3.amazonaws.com/" + "Location": "/examplebucket" }, "comments": { "input": { @@ -98,16 +95,19 @@ "output": { } }, - "description": "The following example creates a bucket. The request specifies an AWS region where to create the bucket.", - "id": "to-create-a-bucket-in-a-specific-region-1483399072992", - "title": "To create a bucket in a specific region" + "description": "The following example creates a bucket.", + "id": "to-create-a-bucket--1472851826060", + "title": "To create a bucket " }, { "input": { - "Bucket": "examplebucket" + "Bucket": "examplebucket", + "CreateBucketConfiguration": { + "LocationConstraint": "eu-west-1" + } }, "output": { - "Location": "/examplebucket" + "Location": "http://examplebucket..s3.amazonaws.com/" }, "comments": { "input": { @@ -115,9 +115,9 @@ "output": { } }, - "description": "The following example creates a bucket.", - "id": "to-create-a-bucket--1472851826060", - "title": "To create a bucket " + "description": "The following example creates a bucket. The request specifies an AWS region where to create the bucket.", + "id": "to-create-a-bucket-in-a-specific-region-1483399072992", + "title": "To create a bucket in a specific region" } ], "CreateMultipartUpload": [ @@ -292,10 +292,11 @@ { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "Key": "HappyFace.jpg", + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "output": { - "VersionId": "null" + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "comments": { "input": { @@ -303,18 +304,17 @@ "output": { } }, - "description": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", - "id": "to-remove-tag-set-from-an-object-1483145342862", - "title": "To remove tag set from an object" + "description": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", + "id": "to-remove-tag-set-from-an-object-version-1483145285913", + "title": "To remove tag set from an object version" }, { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "Key": "HappyFace.jpg" }, "output": { - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "VersionId": "null" }, "comments": { "input": { @@ -322,9 +322,9 @@ "output": { } }, - "description": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", - "id": "to-remove-tag-set-from-an-object-version-1483145285913", - "title": "To remove tag set from an object version" + "description": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", + "id": "to-remove-tag-set-from-an-object-1483145342862", + "title": "To remove tag set from an object" } ], "DeleteObjects": [ @@ -728,17 +728,18 @@ { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "Key": "SampleFile.txt", + "Range": "bytes=0-9" }, "output": { "AcceptRanges": "bytes", - "ContentLength": "3191", - "ContentType": "image/jpeg", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "LastModified": "Thu, 15 Dec 2016 01:19:41 GMT", + "ContentLength": "10", + "ContentRange": "bytes 0-9/43", + "ContentType": "text/plain", + "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", + "LastModified": "Thu, 09 Oct 2014 22:57:28 GMT", "Metadata": { }, - "TagCount": 2, "VersionId": "null" }, "comments": { @@ -747,25 +748,24 @@ "output": { } }, - "description": "The following example retrieves an object for an S3 bucket.", - "id": "to-retrieve-an-object-1481827837012", - "title": "To retrieve an object" + "description": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", + "id": "to-retrieve-a-byte-range-of-an-object--1481832674603", + "title": "To retrieve a byte range of an object " }, { "input": { "Bucket": "examplebucket", - "Key": "SampleFile.txt", - "Range": "bytes=0-9" + "Key": "HappyFace.jpg" }, "output": { "AcceptRanges": "bytes", - "ContentLength": "10", - "ContentRange": "bytes 0-9/43", - "ContentType": "text/plain", - "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", - "LastModified": "Thu, 09 Oct 2014 22:57:28 GMT", + "ContentLength": "3191", + "ContentType": "image/jpeg", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "LastModified": "Thu, 15 Dec 2016 01:19:41 GMT", "Metadata": { }, + "TagCount": 2, "VersionId": "null" }, "comments": { @@ -774,9 +774,9 @@ "output": { } }, - "description": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", - "id": "to-retrieve-a-byte-range-of-an-object--1481832674603", - "title": "To retrieve a byte range of an object " + "description": "The following example retrieves an object for an S3 bucket.", + "id": "to-retrieve-an-object-1481827837012", + "title": "To retrieve an object" } ], "GetObjectAcl": [ @@ -989,47 +989,37 @@ "ListMultipartUploads": [ { "input": { - "Bucket": "examplebucket", - "KeyMarker": "nextkeyfrompreviousresponse", - "MaxUploads": "2", - "UploadIdMarker": "valuefrompreviousresponse" + "Bucket": "examplebucket" }, "output": { - "Bucket": "acl1", - "IsTruncated": true, - "KeyMarker": "", - "MaxUploads": "2", - "NextKeyMarker": "someobjectkey", - "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", - "UploadIdMarker": "", "Uploads": [ { "Initiated": "2014-05-01T05:40:58.000Z", "Initiator": { - "DisplayName": "ownder-display-name", + "DisplayName": "display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "mohanataws", - "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + "DisplayName": "display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" + "UploadId": "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" }, { "Initiated": "2014-05-01T05:41:27.000Z", "Initiator": { - "DisplayName": "ownder-display-name", + "DisplayName": "display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "ownder-display-name", + "DisplayName": "display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" + "UploadId": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" } ] }, @@ -1039,43 +1029,53 @@ "output": { } }, - "description": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", - "id": "list-next-set-of-multipart-uploads-when-previous-result-is-truncated-1482428106748", - "title": "List next set of multipart uploads when previous result is truncated" + "description": "The following example lists in-progress multipart uploads on a specific bucket.", + "id": "to-list-in-progress-multipart-uploads-on-a-bucket-1481852775260", + "title": "To list in-progress multipart uploads on a bucket" }, { "input": { - "Bucket": "examplebucket" + "Bucket": "examplebucket", + "KeyMarker": "nextkeyfrompreviousresponse", + "MaxUploads": "2", + "UploadIdMarker": "valuefrompreviousresponse" }, "output": { + "Bucket": "acl1", + "IsTruncated": true, + "KeyMarker": "", + "MaxUploads": "2", + "NextKeyMarker": "someobjectkey", + "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "UploadIdMarker": "", "Uploads": [ { "Initiated": "2014-05-01T05:40:58.000Z", "Initiator": { - "DisplayName": "display-name", + "DisplayName": "ownder-display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + "DisplayName": "mohanataws", + "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" + "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" }, { "Initiated": "2014-05-01T05:41:27.000Z", "Initiator": { - "DisplayName": "display-name", + "DisplayName": "ownder-display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "display-name", + "DisplayName": "ownder-display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" + "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" } ] }, @@ -1085,9 +1085,9 @@ "output": { } }, - "description": "The following example lists in-progress multipart uploads on a specific bucket.", - "id": "to-list-in-progress-multipart-uploads-on-a-bucket-1481852775260", - "title": "To list in-progress multipart uploads on a bucket" + "description": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", + "id": "list-next-set-of-multipart-uploads-when-previous-result-is-truncated-1482428106748", + "title": "List next set of multipart uploads when previous result is truncated" } ], "ListObjectVersions": [ @@ -1565,26 +1565,6 @@ } ], "PutObject": [ - { - "input": { - "Body": "HappyFace.jpg", - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" - }, - "output": { - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk" - }, - "comments": { - "input": { - }, - "output": { - } - }, - "description": "The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.", - "id": "to-upload-an-object-1481760101010", - "title": "To upload an object" - }, { "input": { "Body": "filetoupload", @@ -1630,17 +1610,16 @@ }, { "input": { - "Body": "filetoupload", + "Body": "HappyFace.jpg", "Bucket": "examplebucket", - "Key": "exampleobject", - "Metadata": { - "metadata1": "value1", - "metadata2": "value2" - } + "Key": "HappyFace.jpg", + "ServerSideEncryption": "AES256", + "StorageClass": "STANDARD_IA" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0" + "ServerSideEncryption": "AES256", + "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp" }, "comments": { "input": { @@ -1648,9 +1627,9 @@ "output": { } }, - "description": "The following example creates an object. The request also specifies optional metadata. If the bucket is versioning enabled, S3 returns version ID in response.", - "id": "to-upload-object-and-specify-user-defined-metadata-1483396974757", - "title": "To upload object and specify user-defined metadata" + "description": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", + "id": "to-upload-an-object-(specify-optional-headers)", + "title": "To upload an object (specify optional headers)" }, { "input": { @@ -1673,6 +1652,30 @@ "id": "to-upload-an-object-and-specify-optional-tags-1481762310955", "title": "To upload an object and specify optional tags" }, + { + "input": { + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "exampleobject", + "Metadata": { + "metadata1": "value1", + "metadata2": "value2" + } + }, + "output": { + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "The following example creates an object. The request also specifies optional metadata. If the bucket is versioning enabled, S3 returns version ID in response.", + "id": "to-upload-object-and-specify-user-defined-metadata-1483396974757", + "title": "To upload object and specify user-defined metadata" + }, { "input": { "ACL": "authenticated-read", @@ -1698,14 +1701,11 @@ "input": { "Body": "HappyFace.jpg", "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "ServerSideEncryption": "AES256", - "StorageClass": "STANDARD_IA" + "Key": "HappyFace.jpg" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "ServerSideEncryption": "AES256", - "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp" + "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk" }, "comments": { "input": { @@ -1713,9 +1713,9 @@ "output": { } }, - "description": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", - "id": "to-upload-an-object-(specify-optional-headers)", - "title": "To upload an object (specify optional headers)" + "description": "The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.", + "id": "to-upload-an-object-1481760101010", + "title": "To upload an object" } ], "PutObjectAcl": [ @@ -1826,15 +1826,14 @@ "input": { "Bucket": "examplebucket", "CopySource": "/bucketname/sourceobjectkey", - "CopySourceRange": "bytes=1-100000", "Key": "examplelargeobject", - "PartNumber": "2", + "PartNumber": "1", "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" }, "output": { "CopyPartResult": { - "ETag": "\"65d16d19e65a7508a51f043180edcc36\"", - "LastModified": "2016-12-29T21:44:28.000Z" + "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"", + "LastModified": "2016-12-29T21:24:43.000Z" } }, "comments": { @@ -1843,22 +1842,23 @@ "output": { } }, - "description": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", - "id": "to-upload-a-part-by-copying-byte-range-from-an-existing-object-as-data-source-1483048068594", - "title": "To upload a part by copying byte range from an existing object as data source" + "description": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", + "id": "to-upload-a-part-by-copying-data-from-an-existing-object-as-data-source-1483046746348", + "title": "To upload a part by copying data from an existing object as data source" }, { "input": { "Bucket": "examplebucket", "CopySource": "/bucketname/sourceobjectkey", + "CopySourceRange": "bytes=1-100000", "Key": "examplelargeobject", - "PartNumber": "1", + "PartNumber": "2", "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" }, "output": { "CopyPartResult": { - "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"", - "LastModified": "2016-12-29T21:24:43.000Z" + "ETag": "\"65d16d19e65a7508a51f043180edcc36\"", + "LastModified": "2016-12-29T21:44:28.000Z" } }, "comments": { @@ -1867,9 +1867,9 @@ "output": { } }, - "description": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", - "id": "to-upload-a-part-by-copying-data-from-an-existing-object-as-data-source-1483046746348", - "title": "To upload a part by copying data from an existing object as data source" + "description": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", + "id": "to-upload-a-part-by-copying-byte-range-from-an-existing-object-as-data-source-1483048068594", + "title": "To upload a part by copying byte range from an existing object as data source" } ] } diff --git a/service/appintegrationsservice/api.go b/service/appintegrationsservice/api.go index 1038c2d796c..636300d23fb 100644 --- a/service/appintegrationsservice/api.go +++ b/service/appintegrationsservice/api.go @@ -4,6 +4,7 @@ package appintegrationsservice import ( "fmt" + "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" @@ -12,6 +13,102 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateApplication = "CreateApplication" + +// CreateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the CreateApplication 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 CreateApplication for more information on using the CreateApplication +// 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 CreateApplicationRequest method. +// req, resp := client.CreateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateApplication +func (c *AppIntegrationsService) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { + op := &request.Operation{ + Name: opCreateApplication, + HTTPMethod: "POST", + HTTPPath: "/applications", + } + + if input == nil { + input = &CreateApplicationInput{} + } + + output = &CreateApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateApplication API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Creates and persists an Application resource. +// +// 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 Amazon AppIntegrations Service's +// API operation CreateApplication for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ResourceQuotaExceededException +// The allowed quota for the resource has been exceeded. +// +// - DuplicateResourceException +// A resource with the specified name already exists. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateApplication +func (c *AppIntegrationsService) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + return out, req.Send() +} + +// CreateApplicationWithContext is the same as CreateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See CreateApplication 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 *AppIntegrationsService) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) { + req, out := c.CreateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateDataIntegration = "CreateDataIntegration" // CreateDataIntegrationRequest generates a "aws/request.Request" representing the @@ -399,6 +496,99 @@ func (c *AppIntegrationsService) DeleteEventIntegrationWithContext(ctx aws.Conte return out, req.Send() } +const opGetApplication = "GetApplication" + +// GetApplicationRequest generates a "aws/request.Request" representing the +// client's request for the GetApplication 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 GetApplication for more information on using the GetApplication +// 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 GetApplicationRequest method. +// req, resp := client.GetApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetApplication +func (c *AppIntegrationsService) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { + op := &request.Operation{ + Name: opGetApplication, + HTTPMethod: "GET", + HTTPPath: "/applications/{Arn}", + } + + if input == nil { + input = &GetApplicationInput{} + } + + output = &GetApplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetApplication API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Get an Application resource. +// +// 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 Amazon AppIntegrations Service's +// API operation GetApplication for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetApplication +func (c *AppIntegrationsService) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + return out, req.Send() +} + +// GetApplicationWithContext is the same as GetApplication with the addition of +// the ability to pass a context and additional request options. +// +// See GetApplication 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 *AppIntegrationsService) GetApplicationWithContext(ctx aws.Context, input *GetApplicationInput, opts ...request.Option) (*GetApplicationOutput, error) { + req, out := c.GetApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDataIntegration = "GetDataIntegration" // GetDataIntegrationRequest generates a "aws/request.Request" representing the @@ -586,6 +776,153 @@ func (c *AppIntegrationsService) GetEventIntegrationWithContext(ctx aws.Context, return out, req.Send() } +const opListApplications = "ListApplications" + +// ListApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListApplications 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 ListApplications for more information on using the ListApplications +// 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 ListApplicationsRequest method. +// req, resp := client.ListApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListApplications +func (c *AppIntegrationsService) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { + op := &request.Operation{ + Name: opListApplications, + HTTPMethod: "GET", + HTTPPath: "/applications", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListApplicationsInput{} + } + + output = &ListApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListApplications API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Lists applications in the account. +// +// 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 Amazon AppIntegrations Service's +// API operation ListApplications for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListApplications +func (c *AppIntegrationsService) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + return out, req.Send() +} + +// ListApplicationsWithContext is the same as ListApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListApplications 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 *AppIntegrationsService) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) { + req, out := c.ListApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListApplicationsPages iterates over the pages of a ListApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListApplications 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 ListApplications operation. +// pageNum := 0 +// err := client.ListApplicationsPages(params, +// func(page *appintegrationsservice.ListApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error { + return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListApplicationsPagesWithContext same as ListApplicationsPages 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 *AppIntegrationsService) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDataIntegrationAssociations = "ListDataIntegrationAssociations" // ListDataIntegrationAssociationsRequest generates a "aws/request.Request" representing the @@ -616,6 +953,12 @@ func (c *AppIntegrationsService) ListDataIntegrationAssociationsRequest(input *L Name: opListDataIntegrationAssociations, HTTPMethod: "GET", HTTPPath: "/dataIntegrations/{Identifier}/associations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -682,6 +1025,57 @@ func (c *AppIntegrationsService) ListDataIntegrationAssociationsWithContext(ctx return out, req.Send() } +// ListDataIntegrationAssociationsPages iterates over the pages of a ListDataIntegrationAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataIntegrationAssociations 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 ListDataIntegrationAssociations operation. +// pageNum := 0 +// err := client.ListDataIntegrationAssociationsPages(params, +// func(page *appintegrationsservice.ListDataIntegrationAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListDataIntegrationAssociationsPages(input *ListDataIntegrationAssociationsInput, fn func(*ListDataIntegrationAssociationsOutput, bool) bool) error { + return c.ListDataIntegrationAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataIntegrationAssociationsPagesWithContext same as ListDataIntegrationAssociationsPages 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 *AppIntegrationsService) ListDataIntegrationAssociationsPagesWithContext(ctx aws.Context, input *ListDataIntegrationAssociationsInput, fn func(*ListDataIntegrationAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataIntegrationAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataIntegrationAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataIntegrationAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListDataIntegrations = "ListDataIntegrations" // ListDataIntegrationsRequest generates a "aws/request.Request" representing the @@ -712,6 +1106,12 @@ func (c *AppIntegrationsService) ListDataIntegrationsRequest(input *ListDataInte Name: opListDataIntegrations, HTTPMethod: "GET", HTTPPath: "/dataIntegrations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -775,6 +1175,57 @@ func (c *AppIntegrationsService) ListDataIntegrationsWithContext(ctx aws.Context return out, req.Send() } +// ListDataIntegrationsPages iterates over the pages of a ListDataIntegrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDataIntegrations 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 ListDataIntegrations operation. +// pageNum := 0 +// err := client.ListDataIntegrationsPages(params, +// func(page *appintegrationsservice.ListDataIntegrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListDataIntegrationsPages(input *ListDataIntegrationsInput, fn func(*ListDataIntegrationsOutput, bool) bool) error { + return c.ListDataIntegrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDataIntegrationsPagesWithContext same as ListDataIntegrationsPages 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 *AppIntegrationsService) ListDataIntegrationsPagesWithContext(ctx aws.Context, input *ListDataIntegrationsInput, fn func(*ListDataIntegrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDataIntegrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDataIntegrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDataIntegrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEventIntegrationAssociations = "ListEventIntegrationAssociations" // ListEventIntegrationAssociationsRequest generates a "aws/request.Request" representing the @@ -805,6 +1256,12 @@ func (c *AppIntegrationsService) ListEventIntegrationAssociationsRequest(input * Name: opListEventIntegrationAssociations, HTTPMethod: "GET", HTTPPath: "/eventIntegrations/{Name}/associations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -866,7 +1323,58 @@ func (c *AppIntegrationsService) ListEventIntegrationAssociationsWithContext(ctx return out, req.Send() } -const opListEventIntegrations = "ListEventIntegrations" +// ListEventIntegrationAssociationsPages iterates over the pages of a ListEventIntegrationAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEventIntegrationAssociations 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 ListEventIntegrationAssociations operation. +// pageNum := 0 +// err := client.ListEventIntegrationAssociationsPages(params, +// func(page *appintegrationsservice.ListEventIntegrationAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListEventIntegrationAssociationsPages(input *ListEventIntegrationAssociationsInput, fn func(*ListEventIntegrationAssociationsOutput, bool) bool) error { + return c.ListEventIntegrationAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEventIntegrationAssociationsPagesWithContext same as ListEventIntegrationAssociationsPages 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 *AppIntegrationsService) ListEventIntegrationAssociationsPagesWithContext(ctx aws.Context, input *ListEventIntegrationAssociationsInput, fn func(*ListEventIntegrationAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEventIntegrationAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEventIntegrationAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEventIntegrationAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEventIntegrations = "ListEventIntegrations" // ListEventIntegrationsRequest generates a "aws/request.Request" representing the // client's request for the ListEventIntegrations operation. The "output" return @@ -896,6 +1404,12 @@ func (c *AppIntegrationsService) ListEventIntegrationsRequest(input *ListEventIn Name: opListEventIntegrations, HTTPMethod: "GET", HTTPPath: "/eventIntegrations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -954,6 +1468,57 @@ func (c *AppIntegrationsService) ListEventIntegrationsWithContext(ctx aws.Contex return out, req.Send() } +// ListEventIntegrationsPages iterates over the pages of a ListEventIntegrations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEventIntegrations 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 ListEventIntegrations operation. +// pageNum := 0 +// err := client.ListEventIntegrationsPages(params, +// func(page *appintegrationsservice.ListEventIntegrationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *AppIntegrationsService) ListEventIntegrationsPages(input *ListEventIntegrationsInput, fn func(*ListEventIntegrationsOutput, bool) bool) error { + return c.ListEventIntegrationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEventIntegrationsPagesWithContext same as ListEventIntegrationsPages 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 *AppIntegrationsService) ListEventIntegrationsPagesWithContext(ctx aws.Context, input *ListEventIntegrationsInput, fn func(*ListEventIntegrationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEventIntegrationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEventIntegrationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEventIntegrationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -1220,6 +1785,100 @@ func (c *AppIntegrationsService) UntagResourceWithContext(ctx aws.Context, input return out, req.Send() } +const opUpdateApplication = "UpdateApplication" + +// UpdateApplicationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateApplication 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 UpdateApplication for more information on using the UpdateApplication +// 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 UpdateApplicationRequest method. +// req, resp := client.UpdateApplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateApplication +func (c *AppIntegrationsService) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { + op := &request.Operation{ + Name: opUpdateApplication, + HTTPMethod: "PATCH", + HTTPPath: "/applications/{Arn}", + } + + if input == nil { + input = &UpdateApplicationInput{} + } + + output = &UpdateApplicationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateApplication API operation for Amazon AppIntegrations Service. +// +// This API is in preview release and subject to change. +// +// Updates and persists an Application resource. +// +// 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 Amazon AppIntegrations Service's +// API operation UpdateApplication for usage and error information. +// +// Returned Error Types: +// +// - InternalServiceError +// Request processing failed due to an error or failure with the service. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - InvalidRequestException +// The request is not valid. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateApplication +func (c *AppIntegrationsService) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + return out, req.Send() +} + +// UpdateApplicationWithContext is the same as UpdateApplication with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateApplication 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 *AppIntegrationsService) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) { + req, out := c.UpdateApplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateDataIntegration = "UpdateDataIntegration" // UpdateDataIntegrationRequest generates a "aws/request.Request" representing the @@ -1446,31 +2105,358 @@ 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 "" +// 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 configuration for where the application should be loaded from. +type ApplicationSourceConfig struct { + _ struct{} `type:"structure"` + + // The external URL source for the application. + ExternalUrlConfig *ExternalUrlConfig `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSourceConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSourceConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ApplicationSourceConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ApplicationSourceConfig"} + if s.ExternalUrlConfig != nil { + if err := s.ExternalUrlConfig.Validate(); err != nil { + invalidParams.AddNested("ExternalUrlConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExternalUrlConfig sets the ExternalUrlConfig field's value. +func (s *ApplicationSourceConfig) SetExternalUrlConfig(v *ExternalUrlConfig) *ApplicationSourceConfig { + s.ExternalUrlConfig = v + return s +} + +// Summary information about the Application. +type ApplicationSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + Arn *string `min:"1" type:"string"` + + // The time when the application was created. + CreatedTime *time.Time `type:"timestamp"` + + // A unique identifier for the Application. + Id *string `type:"string"` + + // The time when the application was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + + // The name of the application. + Name *string `min:"1" type:"string"` + + // The namespace of the application. + Namespace *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ApplicationSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ApplicationSummary) SetArn(v string) *ApplicationSummary { + s.Arn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *ApplicationSummary) SetCreatedTime(v time.Time) *ApplicationSummary { + s.CreatedTime = &v + return s +} + +// SetId sets the Id field's value. +func (s *ApplicationSummary) SetId(v string) *ApplicationSummary { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *ApplicationSummary) SetLastModifiedTime(v time.Time) *ApplicationSummary { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *ApplicationSummary) SetName(v string) *ApplicationSummary { + s.Name = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *ApplicationSummary) SetNamespace(v string) *ApplicationSummary { + s.Namespace = &v + return s +} + +type CreateApplicationInput struct { + _ struct{} `type:"structure"` + + // The configuration for where the application should be loaded from. + // + // ApplicationSourceConfig is a required field + ApplicationSourceConfig *ApplicationSourceConfig `type:"structure" required:"true"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. If not provided, the Amazon Web Services SDK populates this + // field. For more information about idempotency, see Making retries safe with + // idempotent APIs (https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/). + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // The name of the application. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The namespace of the application. + // + // Namespace is a required field + Namespace *string `min:"1" type:"string" required:"true"` + + // The events that the application publishes. + Publications []*Publication `type:"list"` + + // The events that the application subscribes. + Subscriptions []*Subscription `type:"list"` + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} + if s.ApplicationSourceConfig == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationSourceConfig")) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 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.Namespace == nil { + invalidParams.Add(request.NewErrParamRequired("Namespace")) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ApplicationSourceConfig != nil { + if err := s.ApplicationSourceConfig.Validate(); err != nil { + invalidParams.AddNested("ApplicationSourceConfig", err.(request.ErrInvalidParams)) + } + } + if s.Publications != nil { + for i, v := range s.Publications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Publications", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Subscriptions != nil { + for i, v := range s.Subscriptions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Subscriptions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationSourceConfig sets the ApplicationSourceConfig field's value. +func (s *CreateApplicationInput) SetApplicationSourceConfig(v *ApplicationSourceConfig) *CreateApplicationInput { + s.ApplicationSourceConfig = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateApplicationInput) SetClientToken(v string) *CreateApplicationInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput { + s.Name = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *CreateApplicationInput) SetNamespace(v string) *CreateApplicationInput { + s.Namespace = &v + return s +} + +// SetPublications sets the Publications field's value. +func (s *CreateApplicationInput) SetPublications(v []*Publication) *CreateApplicationInput { + s.Publications = v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *CreateApplicationInput) SetSubscriptions(v []*Subscription) *CreateApplicationInput { + s.Subscriptions = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateApplicationInput) SetTags(v map[string]*string) *CreateApplicationInput { + s.Tags = v + return s +} + +type CreateApplicationOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + Arn *string `min:"1" type:"string"` + + // A unique identifier for the Application. + Id *string `type:"string"` } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationOutput) String() string { + return awsutil.Prettify(s) } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateApplicationOutput) GoString() string { + return s.String() } -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetArn sets the Arn field's value. +func (s *CreateApplicationOutput) SetArn(v string) *CreateApplicationOutput { + s.Arn = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID +// SetId sets the Id field's value. +func (s *CreateApplicationOutput) SetId(v string) *CreateApplicationOutput { + s.Id = &v + return s } type CreateDataIntegrationInput struct { @@ -2431,6 +3417,68 @@ func (s *EventIntegrationAssociation) SetEventIntegrationName(v string) *EventIn return s } +// The external URL source for the application. +type ExternalUrlConfig struct { + _ struct{} `type:"structure"` + + // The URL to access the application. + // + // AccessUrl is a required field + AccessUrl *string `min:"1" type:"string" required:"true"` + + // Additional URLs to allow list if different than the access URL. + ApprovedOrigins []*string `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalUrlConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExternalUrlConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExternalUrlConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExternalUrlConfig"} + if s.AccessUrl == nil { + invalidParams.Add(request.NewErrParamRequired("AccessUrl")) + } + if s.AccessUrl != nil && len(*s.AccessUrl) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AccessUrl", 1)) + } + if s.ApprovedOrigins != nil && len(s.ApprovedOrigins) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApprovedOrigins", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccessUrl sets the AccessUrl field's value. +func (s *ExternalUrlConfig) SetAccessUrl(v string) *ExternalUrlConfig { + s.AccessUrl = &v + return s +} + +// SetApprovedOrigins sets the ApprovedOrigins field's value. +func (s *ExternalUrlConfig) SetApprovedOrigins(v []*string) *ExternalUrlConfig { + s.ApprovedOrigins = v + return s +} + // The configuration for what files should be pulled from the source. type FileConfiguration struct { _ struct{} `type:"structure"` @@ -2490,6 +3538,177 @@ func (s *FileConfiguration) SetFolders(v []*string) *FileConfiguration { return s } +type GetApplicationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the Application. + // + // Arn is a required field + Arn *string `location:"uri" locationName:"Arn" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetApplicationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetArn sets the Arn field's value. +func (s *GetApplicationInput) SetArn(v string) *GetApplicationInput { + s.Arn = &v + return s +} + +type GetApplicationOutput struct { + _ struct{} `type:"structure"` + + // The configuration for where the application should be loaded from. + ApplicationSourceConfig *ApplicationSourceConfig `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + Arn *string `min:"1" type:"string"` + + // The created time of the Application. + CreatedTime *time.Time `type:"timestamp"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // A unique identifier for the Application. + Id *string `type:"string"` + + // The last modified time of the Application. + LastModifiedTime *time.Time `type:"timestamp"` + + // The name of the application. + Name *string `min:"1" type:"string"` + + // The namespace of the application. + Namespace *string `min:"1" type:"string"` + + // The events that the application publishes. + Publications []*Publication `type:"list"` + + // The events that the application subscribes. + Subscriptions []*Subscription `type:"list"` + + // The tags used to organize, track, or control access for this resource. For + // example, { "tags": {"key1":"value1", "key2":"value2"} }. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetApplicationOutput) GoString() string { + return s.String() +} + +// SetApplicationSourceConfig sets the ApplicationSourceConfig field's value. +func (s *GetApplicationOutput) SetApplicationSourceConfig(v *ApplicationSourceConfig) *GetApplicationOutput { + s.ApplicationSourceConfig = v + return s +} + +// SetArn sets the Arn field's value. +func (s *GetApplicationOutput) SetArn(v string) *GetApplicationOutput { + s.Arn = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *GetApplicationOutput) SetCreatedTime(v time.Time) *GetApplicationOutput { + s.CreatedTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetApplicationOutput) SetDescription(v string) *GetApplicationOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetApplicationOutput) SetId(v string) *GetApplicationOutput { + s.Id = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *GetApplicationOutput) SetLastModifiedTime(v time.Time) *GetApplicationOutput { + s.LastModifiedTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetApplicationOutput) SetName(v string) *GetApplicationOutput { + s.Name = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *GetApplicationOutput) SetNamespace(v string) *GetApplicationOutput { + s.Namespace = &v + return s +} + +// SetPublications sets the Publications field's value. +func (s *GetApplicationOutput) SetPublications(v []*Publication) *GetApplicationOutput { + s.Publications = v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *GetApplicationOutput) SetSubscriptions(v []*Subscription) *GetApplicationOutput { + s.Subscriptions = v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetApplicationOutput) SetTags(v map[string]*string) *GetApplicationOutput { + s.Tags = v + return s +} + type GetDataIntegrationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -2855,7 +4074,74 @@ type InvalidRequestException struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s InvalidRequestException) String() string { +func (s InvalidRequestException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidRequestException) GoString() string { + return s.String() +} + +func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { + return &InvalidRequestException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidRequestException) Code() string { + return "InvalidRequestException" +} + +// Message returns the exception's message. +func (s *InvalidRequestException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidRequestException) OrigErr() error { + return nil +} + +func (s *InvalidRequestException) 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 *InvalidRequestException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidRequestException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListApplicationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. Use the value returned in the previous + // response in the next request to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsInput) String() string { return awsutil.Prettify(s) } @@ -2864,46 +4150,76 @@ func (s InvalidRequestException) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s InvalidRequestException) GoString() string { +func (s ListApplicationsInput) GoString() string { return s.String() } -func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { - return &InvalidRequestException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams } + return nil } -// Code returns the exception type name. -func (s *InvalidRequestException) Code() string { - return "InvalidRequestException" +// SetMaxResults sets the MaxResults field's value. +func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput { + s.MaxResults = &v + return s } -// Message returns the exception's message. -func (s *InvalidRequestException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput { + s.NextToken = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidRequestException) OrigErr() error { - return nil +type ListApplicationsOutput struct { + _ struct{} `type:"structure"` + + // The Applications associated with this account. + Applications []*ApplicationSummary `min:"1" type:"list"` + + // If there are additional results, this is the token for the next set of results. + NextToken *string `min:"1" type:"string"` } -func (s *InvalidRequestException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) String() string { + return awsutil.Prettify(s) } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidRequestException) StatusCode() int { - return s.RespMetadata.StatusCode +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListApplicationsOutput) GoString() string { + return s.String() } -// RequestID returns the service's response RequestID for request. -func (s *InvalidRequestException) RequestID() string { - return s.RespMetadata.RequestID +// SetApplications sets the Applications field's value. +func (s *ListApplicationsOutput) SetApplications(v []*ApplicationSummary) *ListApplicationsOutput { + s.Applications = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput { + s.NextToken = &v + return s } type ListDataIntegrationAssociationsInput struct { @@ -3408,6 +4724,85 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } +// The configuration of an event that the application publishes. +type Publication struct { + _ struct{} `type:"structure"` + + // The description of the publication. + Description *string `min:"1" type:"string"` + + // The name of the publication. + // + // Event is a required field + Event *string `min:"1" type:"string" required:"true"` + + // The JSON schema of the publication event. + // + // Schema is a required field + Schema *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Publication) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Publication) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Publication) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Publication"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Event == nil { + invalidParams.Add(request.NewErrParamRequired("Event")) + } + if s.Event != nil && len(*s.Event) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Event", 1)) + } + if s.Schema == nil { + invalidParams.Add(request.NewErrParamRequired("Schema")) + } + if s.Schema != nil && len(*s.Schema) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Schema", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *Publication) SetDescription(v string) *Publication { + s.Description = &v + return s +} + +// SetEvent sets the Event field's value. +func (s *Publication) SetEvent(v string) *Publication { + s.Event = &v + return s +} + +// SetSchema sets the Schema field's value. +func (s *Publication) SetSchema(v string) *Publication { + s.Schema = &v + return s +} + // The specified resource was not found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -3611,6 +5006,68 @@ func (s *ScheduleConfiguration) SetScheduleExpression(v string) *ScheduleConfigu return s } +// The configuration of an event that the application subscribes. +type Subscription struct { + _ struct{} `type:"structure"` + + // The description of the subscription. + Description *string `min:"1" type:"string"` + + // The name of the subscription. + // + // Event is a required field + Event *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Subscription) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Subscription) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Subscription) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Subscription"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Event == nil { + invalidParams.Add(request.NewErrParamRequired("Event")) + } + if s.Event != nil && len(*s.Event) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Event", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *Subscription) SetDescription(v string) *Subscription { + s.Description = &v + return s +} + +// SetEvent sets the Event field's value. +func (s *Subscription) SetEvent(v string) *Subscription { + s.Event = &v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -3852,6 +5309,153 @@ func (s UntagResourceOutput) GoString() string { return s.String() } +type UpdateApplicationInput struct { + _ struct{} `type:"structure"` + + // The configuration for where the application should be loaded from. + ApplicationSourceConfig *ApplicationSourceConfig `type:"structure"` + + // The Amazon Resource Name (ARN) of the Application. + // + // Arn is a required field + Arn *string `location:"uri" locationName:"Arn" min:"1" type:"string" required:"true"` + + // The description of the application. + Description *string `min:"1" type:"string"` + + // The name of the application. + Name *string `min:"1" type:"string"` + + // The events that the application publishes. + Publications []*Publication `type:"list"` + + // The events that the application subscribes. + Subscriptions []*Subscription `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateApplicationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} + if s.Arn == nil { + invalidParams.Add(request.NewErrParamRequired("Arn")) + } + if s.Arn != nil && len(*s.Arn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ApplicationSourceConfig != nil { + if err := s.ApplicationSourceConfig.Validate(); err != nil { + invalidParams.AddNested("ApplicationSourceConfig", err.(request.ErrInvalidParams)) + } + } + if s.Publications != nil { + for i, v := range s.Publications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Publications", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Subscriptions != nil { + for i, v := range s.Subscriptions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Subscriptions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationSourceConfig sets the ApplicationSourceConfig field's value. +func (s *UpdateApplicationInput) SetApplicationSourceConfig(v *ApplicationSourceConfig) *UpdateApplicationInput { + s.ApplicationSourceConfig = v + return s +} + +// SetArn sets the Arn field's value. +func (s *UpdateApplicationInput) SetArn(v string) *UpdateApplicationInput { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateApplicationInput) SetName(v string) *UpdateApplicationInput { + s.Name = &v + return s +} + +// SetPublications sets the Publications field's value. +func (s *UpdateApplicationInput) SetPublications(v []*Publication) *UpdateApplicationInput { + s.Publications = v + return s +} + +// SetSubscriptions sets the Subscriptions field's value. +func (s *UpdateApplicationInput) SetSubscriptions(v []*Subscription) *UpdateApplicationInput { + s.Subscriptions = v + return s +} + +type UpdateApplicationOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateApplicationOutput) GoString() string { + return s.String() +} + type UpdateDataIntegrationInput struct { _ struct{} `type:"structure"` @@ -3950,7 +5554,7 @@ func (s UpdateDataIntegrationOutput) GoString() string { type UpdateEventIntegrationInput struct { _ struct{} `type:"structure"` - // The description of the event inegration. + // The description of the event integration. Description *string `min:"1" type:"string"` // The name of the event integration. diff --git a/service/appintegrationsservice/appintegrationsserviceiface/interface.go b/service/appintegrationsservice/appintegrationsserviceiface/interface.go index a4d275b05dd..e5d32477627 100644 --- a/service/appintegrationsservice/appintegrationsserviceiface/interface.go +++ b/service/appintegrationsservice/appintegrationsserviceiface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // Amazon AppIntegrations Service. // func myFunc(svc appintegrationsserviceiface.AppIntegrationsServiceAPI) bool { -// // Make svc.CreateDataIntegration request +// // Make svc.CreateApplication request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockAppIntegrationsServiceClient struct { // appintegrationsserviceiface.AppIntegrationsServiceAPI // } -// func (m *mockAppIntegrationsServiceClient) CreateDataIntegration(input *appintegrationsservice.CreateDataIntegrationInput) (*appintegrationsservice.CreateDataIntegrationOutput, error) { +// func (m *mockAppIntegrationsServiceClient) CreateApplication(input *appintegrationsservice.CreateApplicationInput) (*appintegrationsservice.CreateApplicationOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type AppIntegrationsServiceAPI interface { + CreateApplication(*appintegrationsservice.CreateApplicationInput) (*appintegrationsservice.CreateApplicationOutput, error) + CreateApplicationWithContext(aws.Context, *appintegrationsservice.CreateApplicationInput, ...request.Option) (*appintegrationsservice.CreateApplicationOutput, error) + CreateApplicationRequest(*appintegrationsservice.CreateApplicationInput) (*request.Request, *appintegrationsservice.CreateApplicationOutput) + CreateDataIntegration(*appintegrationsservice.CreateDataIntegrationInput) (*appintegrationsservice.CreateDataIntegrationOutput, error) CreateDataIntegrationWithContext(aws.Context, *appintegrationsservice.CreateDataIntegrationInput, ...request.Option) (*appintegrationsservice.CreateDataIntegrationOutput, error) CreateDataIntegrationRequest(*appintegrationsservice.CreateDataIntegrationInput) (*request.Request, *appintegrationsservice.CreateDataIntegrationOutput) @@ -76,6 +80,10 @@ type AppIntegrationsServiceAPI interface { DeleteEventIntegrationWithContext(aws.Context, *appintegrationsservice.DeleteEventIntegrationInput, ...request.Option) (*appintegrationsservice.DeleteEventIntegrationOutput, error) DeleteEventIntegrationRequest(*appintegrationsservice.DeleteEventIntegrationInput) (*request.Request, *appintegrationsservice.DeleteEventIntegrationOutput) + GetApplication(*appintegrationsservice.GetApplicationInput) (*appintegrationsservice.GetApplicationOutput, error) + GetApplicationWithContext(aws.Context, *appintegrationsservice.GetApplicationInput, ...request.Option) (*appintegrationsservice.GetApplicationOutput, error) + GetApplicationRequest(*appintegrationsservice.GetApplicationInput) (*request.Request, *appintegrationsservice.GetApplicationOutput) + GetDataIntegration(*appintegrationsservice.GetDataIntegrationInput) (*appintegrationsservice.GetDataIntegrationOutput, error) GetDataIntegrationWithContext(aws.Context, *appintegrationsservice.GetDataIntegrationInput, ...request.Option) (*appintegrationsservice.GetDataIntegrationOutput, error) GetDataIntegrationRequest(*appintegrationsservice.GetDataIntegrationInput) (*request.Request, *appintegrationsservice.GetDataIntegrationOutput) @@ -84,22 +92,41 @@ type AppIntegrationsServiceAPI interface { GetEventIntegrationWithContext(aws.Context, *appintegrationsservice.GetEventIntegrationInput, ...request.Option) (*appintegrationsservice.GetEventIntegrationOutput, error) GetEventIntegrationRequest(*appintegrationsservice.GetEventIntegrationInput) (*request.Request, *appintegrationsservice.GetEventIntegrationOutput) + ListApplications(*appintegrationsservice.ListApplicationsInput) (*appintegrationsservice.ListApplicationsOutput, error) + ListApplicationsWithContext(aws.Context, *appintegrationsservice.ListApplicationsInput, ...request.Option) (*appintegrationsservice.ListApplicationsOutput, error) + ListApplicationsRequest(*appintegrationsservice.ListApplicationsInput) (*request.Request, *appintegrationsservice.ListApplicationsOutput) + + ListApplicationsPages(*appintegrationsservice.ListApplicationsInput, func(*appintegrationsservice.ListApplicationsOutput, bool) bool) error + ListApplicationsPagesWithContext(aws.Context, *appintegrationsservice.ListApplicationsInput, func(*appintegrationsservice.ListApplicationsOutput, bool) bool, ...request.Option) error + ListDataIntegrationAssociations(*appintegrationsservice.ListDataIntegrationAssociationsInput) (*appintegrationsservice.ListDataIntegrationAssociationsOutput, error) ListDataIntegrationAssociationsWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationAssociationsInput, ...request.Option) (*appintegrationsservice.ListDataIntegrationAssociationsOutput, error) ListDataIntegrationAssociationsRequest(*appintegrationsservice.ListDataIntegrationAssociationsInput) (*request.Request, *appintegrationsservice.ListDataIntegrationAssociationsOutput) + ListDataIntegrationAssociationsPages(*appintegrationsservice.ListDataIntegrationAssociationsInput, func(*appintegrationsservice.ListDataIntegrationAssociationsOutput, bool) bool) error + ListDataIntegrationAssociationsPagesWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationAssociationsInput, func(*appintegrationsservice.ListDataIntegrationAssociationsOutput, bool) bool, ...request.Option) error + ListDataIntegrations(*appintegrationsservice.ListDataIntegrationsInput) (*appintegrationsservice.ListDataIntegrationsOutput, error) ListDataIntegrationsWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationsInput, ...request.Option) (*appintegrationsservice.ListDataIntegrationsOutput, error) ListDataIntegrationsRequest(*appintegrationsservice.ListDataIntegrationsInput) (*request.Request, *appintegrationsservice.ListDataIntegrationsOutput) + ListDataIntegrationsPages(*appintegrationsservice.ListDataIntegrationsInput, func(*appintegrationsservice.ListDataIntegrationsOutput, bool) bool) error + ListDataIntegrationsPagesWithContext(aws.Context, *appintegrationsservice.ListDataIntegrationsInput, func(*appintegrationsservice.ListDataIntegrationsOutput, bool) bool, ...request.Option) error + ListEventIntegrationAssociations(*appintegrationsservice.ListEventIntegrationAssociationsInput) (*appintegrationsservice.ListEventIntegrationAssociationsOutput, error) ListEventIntegrationAssociationsWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationAssociationsInput, ...request.Option) (*appintegrationsservice.ListEventIntegrationAssociationsOutput, error) ListEventIntegrationAssociationsRequest(*appintegrationsservice.ListEventIntegrationAssociationsInput) (*request.Request, *appintegrationsservice.ListEventIntegrationAssociationsOutput) + ListEventIntegrationAssociationsPages(*appintegrationsservice.ListEventIntegrationAssociationsInput, func(*appintegrationsservice.ListEventIntegrationAssociationsOutput, bool) bool) error + ListEventIntegrationAssociationsPagesWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationAssociationsInput, func(*appintegrationsservice.ListEventIntegrationAssociationsOutput, bool) bool, ...request.Option) error + ListEventIntegrations(*appintegrationsservice.ListEventIntegrationsInput) (*appintegrationsservice.ListEventIntegrationsOutput, error) ListEventIntegrationsWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationsInput, ...request.Option) (*appintegrationsservice.ListEventIntegrationsOutput, error) ListEventIntegrationsRequest(*appintegrationsservice.ListEventIntegrationsInput) (*request.Request, *appintegrationsservice.ListEventIntegrationsOutput) + ListEventIntegrationsPages(*appintegrationsservice.ListEventIntegrationsInput, func(*appintegrationsservice.ListEventIntegrationsOutput, bool) bool) error + ListEventIntegrationsPagesWithContext(aws.Context, *appintegrationsservice.ListEventIntegrationsInput, func(*appintegrationsservice.ListEventIntegrationsOutput, bool) bool, ...request.Option) error + ListTagsForResource(*appintegrationsservice.ListTagsForResourceInput) (*appintegrationsservice.ListTagsForResourceOutput, error) ListTagsForResourceWithContext(aws.Context, *appintegrationsservice.ListTagsForResourceInput, ...request.Option) (*appintegrationsservice.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*appintegrationsservice.ListTagsForResourceInput) (*request.Request, *appintegrationsservice.ListTagsForResourceOutput) @@ -112,6 +139,10 @@ type AppIntegrationsServiceAPI interface { UntagResourceWithContext(aws.Context, *appintegrationsservice.UntagResourceInput, ...request.Option) (*appintegrationsservice.UntagResourceOutput, error) UntagResourceRequest(*appintegrationsservice.UntagResourceInput) (*request.Request, *appintegrationsservice.UntagResourceOutput) + UpdateApplication(*appintegrationsservice.UpdateApplicationInput) (*appintegrationsservice.UpdateApplicationOutput, error) + UpdateApplicationWithContext(aws.Context, *appintegrationsservice.UpdateApplicationInput, ...request.Option) (*appintegrationsservice.UpdateApplicationOutput, error) + UpdateApplicationRequest(*appintegrationsservice.UpdateApplicationInput) (*request.Request, *appintegrationsservice.UpdateApplicationOutput) + UpdateDataIntegration(*appintegrationsservice.UpdateDataIntegrationInput) (*appintegrationsservice.UpdateDataIntegrationOutput, error) UpdateDataIntegrationWithContext(aws.Context, *appintegrationsservice.UpdateDataIntegrationInput, ...request.Option) (*appintegrationsservice.UpdateDataIntegrationOutput, error) UpdateDataIntegrationRequest(*appintegrationsservice.UpdateDataIntegrationInput) (*request.Request, *appintegrationsservice.UpdateDataIntegrationOutput) diff --git a/service/appintegrationsservice/examples_test.go b/service/appintegrationsservice/examples_test.go new file mode 100644 index 00000000000..b281d61d32e --- /dev/null +++ b/service/appintegrationsservice/examples_test.go @@ -0,0 +1,178 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package appintegrationsservice_test + +import ( + "fmt" + "strings" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/session" + "github.com/aws/aws-sdk-go/service/appintegrationsservice" +) + +var _ time.Duration +var _ strings.Reader +var _ aws.Config + +func parseTime(layout, value string) *time.Time { + t, err := time.Parse(layout, value) + if err != nil { + panic(err) + } + return &t +} + +// To create an application +// The following creates an application named My Application with access url https://example.com. +func ExampleAppIntegrationsService_CreateApplication_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.CreateApplicationInput{ + ApplicationSourceConfig: &appintegrationsservice.ApplicationSourceConfig{ + ExternalUrlConfig: &appintegrationsservice.ExternalUrlConfig{ + AccessUrl: aws.String("https://example.com"), + }, + }, + Description: aws.String("My first application."), + Name: aws.String("My Application"), + Namespace: aws.String("myapplication"), + } + + result, err := svc.CreateApplication(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeResourceQuotaExceededException: + fmt.Println(appintegrationsservice.ErrCodeResourceQuotaExceededException, aerr.Error()) + case appintegrationsservice.ErrCodeDuplicateResourceException: + fmt.Println(appintegrationsservice.ErrCodeDuplicateResourceException, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To get an application +// The following retrives an application. +func ExampleAppIntegrationsService_GetApplication_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.GetApplicationInput{ + Arn: aws.String("arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e"), + } + + result, err := svc.GetApplication(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeResourceNotFoundException: + fmt.Println(appintegrationsservice.ErrCodeResourceNotFoundException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To list applications in the account +// The following lists application summary in the account. +func ExampleAppIntegrationsService_ListApplications_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.ListApplicationsInput{ + MaxResults: aws.Int64(1), + } + + result, err := svc.ListApplications(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To update an application +// The following updates an existing application named with a new name. +func ExampleAppIntegrationsService_UpdateApplication_shared00() { + svc := appintegrationsservice.New(session.New()) + input := &appintegrationsservice.UpdateApplicationInput{ + Arn: aws.String("arn:aws:app-integrations:us-west-2:0123456789012:application/98542c53-e8ac-4570-9c85-c6552c8d9c5e"), + Name: aws.String("My New Application Name"), + } + + result, err := svc.UpdateApplication(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case appintegrationsservice.ErrCodeInternalServiceError: + fmt.Println(appintegrationsservice.ErrCodeInternalServiceError, aerr.Error()) + case appintegrationsservice.ErrCodeThrottlingException: + fmt.Println(appintegrationsservice.ErrCodeThrottlingException, aerr.Error()) + case appintegrationsservice.ErrCodeResourceNotFoundException: + fmt.Println(appintegrationsservice.ErrCodeResourceNotFoundException, aerr.Error()) + case appintegrationsservice.ErrCodeInvalidRequestException: + fmt.Println(appintegrationsservice.ErrCodeInvalidRequestException, aerr.Error()) + case appintegrationsservice.ErrCodeAccessDeniedException: + fmt.Println(appintegrationsservice.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} diff --git a/service/apprunner/api.go b/service/apprunner/api.go index a33ab580953..c5cc4731457 100644 --- a/service/apprunner/api.go +++ b/service/apprunner/api.go @@ -4675,6 +4675,11 @@ type CodeRepository struct { // // SourceCodeVersion is a required field SourceCodeVersion *SourceCodeVersion `type:"structure" required:"true"` + + // The path of the directory that stores source code and configuration files. + // The build and start commands also execute from here. The path is absolute + // from root and, if not specified, defaults to the repository root. + SourceDirectory *string `min:"1" type:"string"` } // String returns the string representation. @@ -4704,6 +4709,9 @@ func (s *CodeRepository) Validate() error { if s.SourceCodeVersion == nil { invalidParams.Add(request.NewErrParamRequired("SourceCodeVersion")) } + if s.SourceDirectory != nil && len(*s.SourceDirectory) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceDirectory", 1)) + } if s.CodeConfiguration != nil { if err := s.CodeConfiguration.Validate(); err != nil { invalidParams.AddNested("CodeConfiguration", err.(request.ErrInvalidParams)) @@ -4739,6 +4747,12 @@ func (s *CodeRepository) SetSourceCodeVersion(v *SourceCodeVersion) *CodeReposit return s } +// SetSourceDirectory sets the SourceDirectory field's value. +func (s *CodeRepository) SetSourceDirectory(v string) *CodeRepository { + s.SourceDirectory = &v + return s +} + // Describes an App Runner connection resource. type Connection struct { _ struct{} `type:"structure"` @@ -4885,7 +4899,7 @@ type CreateAutoScalingConfigurationInput struct { // 1 of this name. When you use the same name in subsequent calls, App Runner // creates incremental revisions of the configuration. // - // Prior to the release of Managing auto scaling (https://docs.aws.amazon.com/apprunner/latest/relnotes/release-yyyy-mm-dd-asc-improvements.html), + // Prior to the release of Auto scale configuration enhancements (https://docs.aws.amazon.com/apprunner/latest/relnotes/release-2023-09-22-auto-scale-config.html), // the name DefaultConfiguration was reserved. // // This restriction is no longer in place. You can now manage DefaultConfiguration diff --git a/service/codedeploy/api.go b/service/codedeploy/api.go index 88f0eaacb34..6859c7faf46 100644 --- a/service/codedeploy/api.go +++ b/service/codedeploy/api.go @@ -168,7 +168,7 @@ func (c *CodeDeploy) BatchGetApplicationRevisionsRequest(input *BatchGetApplicat // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -269,7 +269,7 @@ func (c *CodeDeploy) BatchGetApplicationsRequest(input *BatchGetApplicationsInpu // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. @@ -357,7 +357,7 @@ func (c *CodeDeploy) BatchGetDeploymentGroupsRequest(input *BatchGetDeploymentGr // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -369,8 +369,8 @@ func (c *CodeDeploy) BatchGetDeploymentGroupsRequest(input *BatchGetDeploymentGr // The maximum number of names or IDs allowed for this request (100) was exceeded. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/BatchGetDeploymentGroups func (c *CodeDeploy) BatchGetDeploymentGroups(input *BatchGetDeploymentGroupsInput) (*BatchGetDeploymentGroupsOutput, error) { @@ -462,8 +462,7 @@ func (c *CodeDeploy) BatchGetDeploymentInstancesRequest(input *BatchGetDeploymen // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - InstanceIdRequiredException // The instance ID was not specified. @@ -583,8 +582,7 @@ func (c *CodeDeploy) BatchGetDeploymentTargetsRequest(input *BatchGetDeploymentT // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -865,8 +863,7 @@ func (c *CodeDeploy) ContinueDeploymentRequest(input *ContinueDeploymentInput) ( // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentAlreadyCompletedException // The deployment is already complete. @@ -969,7 +966,7 @@ func (c *CodeDeploy) CreateApplicationRequest(input *CreateApplicationInput) (re // The application name was specified in an invalid format. // // - ApplicationAlreadyExistsException -// An application with the specified name with the IAM user or Amazon Web Services +// An application with the specified name with the user or Amazon Web Services // account already exists. // // - ApplicationLimitExceededException @@ -1065,7 +1062,7 @@ func (c *CodeDeploy) CreateDeploymentRequest(input *CreateDeploymentInput) (req // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -1074,15 +1071,14 @@ func (c *CodeDeploy) CreateDeploymentRequest(input *CreateDeploymentInput) (req // The deployment group name was specified in an invalid format. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - RevisionRequiredException // The revision ID was not specified. // // - RevisionDoesNotExistException -// The named revision does not exist with the IAM user or Amazon Web Services -// account. +// The named revision does not exist with the user or Amazon Web Services account. // // - InvalidRevisionException // The revision was specified in an invalid format. @@ -1091,8 +1087,8 @@ func (c *CodeDeploy) CreateDeploymentRequest(input *CreateDeploymentInput) (req // The deployment configuration name was specified in an invalid format. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - DescriptionTooLongException // The description is too long. @@ -1251,7 +1247,7 @@ func (c *CodeDeploy) CreateDeploymentConfigRequest(input *CreateDeploymentConfig // The deployment configuration name was not specified. // // - DeploymentConfigAlreadyExistsException -// A deployment configuration with the specified name with the IAM user or Amazon +// A deployment configuration with the specified name with the user or Amazon // Web Services account already exists. // // - InvalidMinimumHealthyHostValueException @@ -1351,7 +1347,7 @@ func (c *CodeDeploy) CreateDeploymentGroupRequest(input *CreateDeploymentGroupIn // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -1360,8 +1356,8 @@ func (c *CodeDeploy) CreateDeploymentGroupRequest(input *CreateDeploymentGroupIn // The deployment group name was specified in an invalid format. // // - DeploymentGroupAlreadyExistsException -// A deployment group with the specified name with the IAM user or Amazon Web -// Services account already exists. +// A deployment group with the specified name with the user or Amazon Web Services +// account already exists. // // - InvalidEC2TagException // The tag was specified in an invalid format. @@ -1376,8 +1372,8 @@ func (c *CodeDeploy) CreateDeploymentGroupRequest(input *CreateDeploymentGroupIn // The deployment configuration name was specified in an invalid format. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - RoleRequiredException // The role ID was not specified. @@ -1898,7 +1894,13 @@ func (c *CodeDeploy) DeleteResourcesByExternalIdRequest(input *DeleteResourcesBy // DeleteResourcesByExternalId API operation for AWS CodeDeploy. // -// Deletes resources linked to an external ID. +// Deletes resources linked to an external ID. This action only applies if you +// have configured blue/green deployments through CloudFormation. +// +// It is not necessary to call this action directly. CloudFormation calls it +// on your behalf when it needs to delete stack resources. This action is offered +// publicly in case you need to delete resources to comply with General Data +// Protection Regulation (GDPR) requirements. // // 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 @@ -2072,7 +2074,7 @@ func (c *CodeDeploy) GetApplicationRequest(input *GetApplicationInput) (req *req // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetApplication func (c *CodeDeploy) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { @@ -2151,7 +2153,7 @@ func (c *CodeDeploy) GetApplicationRevisionRequest(input *GetApplicationRevision // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -2160,8 +2162,7 @@ func (c *CodeDeploy) GetApplicationRevisionRequest(input *GetApplicationRevision // The application name was specified in an invalid format. // // - RevisionDoesNotExistException -// The named revision does not exist with the IAM user or Amazon Web Services -// account. +// The named revision does not exist with the user or Amazon Web Services account. // // - RevisionRequiredException // The revision ID was not specified. @@ -2257,8 +2258,7 @@ func (c *CodeDeploy) GetDeploymentRequest(input *GetDeploymentInput) (req *reque // At least one of the deployment IDs was specified in an invalid format. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetDeployment func (c *CodeDeploy) GetDeployment(input *GetDeploymentInput) (*GetDeploymentOutput, error) { @@ -2343,8 +2343,8 @@ func (c *CodeDeploy) GetDeploymentConfigRequest(input *GetDeploymentConfigInput) // The deployment configuration name was not specified. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - InvalidComputePlatformException // The computePlatform is invalid. The computePlatform should be Lambda, Server, @@ -2433,7 +2433,7 @@ func (c *CodeDeploy) GetDeploymentGroupRequest(input *GetDeploymentGroupInput) ( // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -2442,12 +2442,12 @@ func (c *CodeDeploy) GetDeploymentGroupRequest(input *GetDeploymentGroupInput) ( // The deployment group name was specified in an invalid format. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetDeploymentGroup func (c *CodeDeploy) GetDeploymentGroup(input *GetDeploymentGroupInput) (*GetDeploymentGroupOutput, error) { @@ -2534,8 +2534,7 @@ func (c *CodeDeploy) GetDeploymentInstanceRequest(input *GetDeploymentInstanceIn // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - InstanceIdRequiredException // The instance ID was not specified. @@ -2640,8 +2639,7 @@ func (c *CodeDeploy) GetDeploymentTargetRequest(input *GetDeploymentTargetInput) // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -2826,7 +2824,7 @@ func (c *CodeDeploy) ListApplicationRevisionsRequest(input *ListApplicationRevis // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -2978,8 +2976,7 @@ func (c *CodeDeploy) ListApplicationsRequest(input *ListApplicationsInput) (req // ListApplications API operation for AWS CodeDeploy. // -// Lists the applications registered with the IAM user or Amazon Web Services -// account. +// Lists the applications registered with the user or Amazon Web Services account. // // 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 @@ -3114,7 +3111,7 @@ func (c *CodeDeploy) ListDeploymentConfigsRequest(input *ListDeploymentConfigsIn // ListDeploymentConfigs API operation for AWS CodeDeploy. // -// Lists the deployment configurations with the IAM user or Amazon Web Services +// Lists the deployment configurations with the user or Amazon Web Services // account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3250,8 +3247,8 @@ func (c *CodeDeploy) ListDeploymentGroupsRequest(input *ListDeploymentGroupsInpu // ListDeploymentGroups API operation for AWS CodeDeploy. // -// Lists the deployment groups for an application registered with the IAM user -// or Amazon Web Services account. +// Lists the deployment groups for an application registered with the Amazon +// Web Services user or Amazon Web Services account. // // 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 @@ -3269,7 +3266,7 @@ func (c *CodeDeploy) ListDeploymentGroupsRequest(input *ListDeploymentGroupsInpu // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - InvalidNextTokenException // The next token was specified in an invalid format. @@ -3405,8 +3402,8 @@ func (c *CodeDeploy) ListDeploymentInstancesRequest(input *ListDeploymentInstanc // with all compute types. ListDeploymentInstances throws an exception if it // is used with a compute platform other than EC2/On-premises or Lambda. // -// Lists the instance for a deployment associated with the IAM user or Amazon -// Web Services account. +// Lists the instance for a deployment associated with the user or Amazon Web +// Services account. // // 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 @@ -3421,8 +3418,7 @@ func (c *CodeDeploy) ListDeploymentInstancesRequest(input *ListDeploymentInstanc // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -3591,8 +3587,7 @@ func (c *CodeDeploy) ListDeploymentTargetsRequest(input *ListDeploymentTargetsIn // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentNotStartedException // The specified deployment has not started. @@ -3687,7 +3682,7 @@ func (c *CodeDeploy) ListDeploymentsRequest(input *ListDeploymentsInput) (req *r // ListDeployments API operation for AWS CodeDeploy. // // Lists the deployments in a deployment group for an application registered -// with the IAM user or Amazon Web Services account. +// with the user or Amazon Web Services account. // // 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 @@ -3705,14 +3700,14 @@ func (c *CodeDeploy) ListDeploymentsRequest(input *ListDeploymentsInput) (req *r // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. @@ -4144,8 +4139,7 @@ func (c *CodeDeploy) PutLifecycleEventHookExecutionStatusRequest(input *PutLifec // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. @@ -4231,7 +4225,7 @@ func (c *CodeDeploy) RegisterApplicationRevisionRequest(input *RegisterApplicati // Returned Error Types: // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - ApplicationNameRequiredException // The minimum number of required application names was not specified. @@ -4333,20 +4327,20 @@ func (c *CodeDeploy) RegisterOnPremisesInstanceRequest(input *RegisterOnPremises // // - IamArnRequiredException // No IAM ARN was included in the request. You must use an IAM session ARN or -// IAM user ARN in the request. +// user ARN in the request. // // - IamSessionArnAlreadyRegisteredException // The request included an IAM session ARN that has already been used to register // a different instance. // // - IamUserArnAlreadyRegisteredException -// The specified IAM user ARN is already registered with an on-premises instance. +// The specified user ARN is already registered with an on-premises instance. // // - InstanceNameRequiredException // An on-premises instance name was not specified. // // - IamUserArnRequiredException -// An IAM user ARN was not specified. +// An user ARN was not specified. // // - InvalidInstanceNameException // The on-premises instance name was specified in an invalid format. @@ -4355,11 +4349,11 @@ func (c *CodeDeploy) RegisterOnPremisesInstanceRequest(input *RegisterOnPremises // The IAM session ARN was specified in an invalid format. // // - InvalidIamUserArnException -// The IAM user ARN was specified in an invalid format. +// The user ARN was specified in an invalid format. // // - MultipleIamArnsProvidedException -// Both an IAM user ARN and an IAM session ARN were included in the request. -// Use only one ARN type. +// Both an user ARN and an IAM session ARN were included in the request. Use +// only one ARN type. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/RegisterOnPremisesInstance func (c *CodeDeploy) RegisterOnPremisesInstance(input *RegisterOnPremisesInstanceInput) (*RegisterOnPremisesInstanceOutput, error) { @@ -4547,8 +4541,7 @@ func (c *CodeDeploy) SkipWaitTimeForInstanceTerminationRequest(input *SkipWaitTi // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentAlreadyCompletedException // The deployment is already complete. @@ -4646,12 +4639,11 @@ func (c *CodeDeploy) StopDeploymentRequest(input *StopDeploymentInput) (req *req // At least one deployment ID must be specified. // // - DeploymentDoesNotExistException -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentAlreadyCompletedException // The deployment is already complete. @@ -4744,15 +4736,15 @@ func (c *CodeDeploy) TagResourceRequest(input *TagResourceInput) (req *request.R // The ARN of a resource is required, but was not found. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - TagRequiredException // A tag was not specified. @@ -4850,15 +4842,15 @@ func (c *CodeDeploy) UntagResourceRequest(input *UntagResourceInput) (req *reque // The ARN of a resource is required, but was not found. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - TagRequiredException // A tag was not specified. @@ -4957,11 +4949,11 @@ func (c *CodeDeploy) UpdateApplicationRequest(input *UpdateApplicationInput) (re // The application name was specified in an invalid format. // // - ApplicationAlreadyExistsException -// An application with the specified name with the IAM user or Amazon Web Services +// An application with the specified name with the user or Amazon Web Services // account already exists. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // See also, https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/UpdateApplication func (c *CodeDeploy) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { @@ -5046,21 +5038,21 @@ func (c *CodeDeploy) UpdateDeploymentGroupRequest(input *UpdateDeploymentGroupIn // The application name was specified in an invalid format. // // - ApplicationDoesNotExistException -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. // // - InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // - DeploymentGroupAlreadyExistsException -// A deployment group with the specified name with the IAM user or Amazon Web -// Services account already exists. +// A deployment group with the specified name with the user or Amazon Web Services +// account already exists. // // - DeploymentGroupNameRequiredException // The deployment group name was not specified. // // - DeploymentGroupDoesNotExistException -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. // // - InvalidEC2TagException // The tag was specified in an invalid format. @@ -5075,8 +5067,8 @@ func (c *CodeDeploy) UpdateDeploymentGroupRequest(input *UpdateDeploymentGroupIn // The deployment configuration name was specified in an invalid format. // // - DeploymentConfigDoesNotExistException -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. // // - InvalidRoleException // The service role ARN was specified in an invalid format. Or, if an Auto Scaling @@ -5477,7 +5469,7 @@ func (s *AppSpecContent) SetSha256(v string) *AppSpecContent { return s } -// An application with the specified name with the IAM user or Amazon Web Services +// An application with the specified name with the user or Amazon Web Services // account already exists. type ApplicationAlreadyExistsException struct { _ struct{} `type:"structure"` @@ -5542,7 +5534,7 @@ func (s *ApplicationAlreadyExistsException) RequestID() string { return s.RespMetadata.RequestID } -// The application does not exist with the IAM user or Amazon Web Services account. +// The application does not exist with the user or Amazon Web Services account. type ApplicationDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -6162,7 +6154,7 @@ func (s *BatchGetApplicationsOutput) SetApplicationsInfo(v []*ApplicationInfo) * type BatchGetDeploymentGroupsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the applicable IAM + // The name of an CodeDeploy application associated with the applicable user // or Amazon Web Services account. // // ApplicationName is a required field @@ -7023,7 +7015,7 @@ type CreateApplicationInput struct { _ struct{} `type:"structure"` // The name of the application. This name must be unique with the applicable - // IAM or Amazon Web Services account. + // user or Amazon Web Services account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` @@ -7256,7 +7248,7 @@ type CreateDeploymentGroupInput struct { // is created. AlarmConfiguration *AlarmConfiguration `locationName:"alarmConfiguration" type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -7543,7 +7535,7 @@ func (s *CreateDeploymentGroupOutput) SetDeploymentGroupId(v string) *CreateDepl type CreateDeploymentInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -7553,7 +7545,7 @@ type CreateDeploymentInput struct { // deployment is created. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` - // The name of a deployment configuration associated with the IAM user or Amazon + // The name of a deployment configuration associated with the user or Amazon // Web Services account. // // If not specified, the value configured in the deployment group is used as @@ -7775,7 +7767,7 @@ func (s *CreateDeploymentOutput) SetDeploymentId(v string) *CreateDeploymentOutp type DeleteApplicationInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -7848,7 +7840,7 @@ func (s DeleteApplicationOutput) GoString() string { type DeleteDeploymentConfigInput struct { _ struct{} `type:"structure"` - // The name of a deployment configuration associated with the IAM user or Amazon + // The name of a deployment configuration associated with the user or Amazon // Web Services account. // // DeploymentConfigName is a required field @@ -7921,7 +7913,7 @@ func (s DeleteDeploymentConfigOutput) GoString() string { type DeleteDeploymentGroupInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -8204,7 +8196,7 @@ func (s *DeploymentAlreadyCompletedException) RequestID() string { return s.RespMetadata.RequestID } -// A deployment configuration with the specified name with the IAM user or Amazon +// A deployment configuration with the specified name with the user or Amazon // Web Services account already exists. type DeploymentConfigAlreadyExistsException struct { _ struct{} `type:"structure"` @@ -8269,8 +8261,8 @@ func (s *DeploymentConfigAlreadyExistsException) RequestID() string { return s.RespMetadata.RequestID } -// The deployment configuration does not exist with the IAM user or Amazon Web -// Services account. +// The deployment configuration does not exist with the user or Amazon Web Services +// account. type DeploymentConfigDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8604,8 +8596,7 @@ func (s *DeploymentConfigNameRequiredException) RequestID() string { return s.RespMetadata.RequestID } -// The deployment with the IAM user or Amazon Web Services account does not -// exist. +// The deployment with the user or Amazon Web Services account does not exist. type DeploymentDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8669,8 +8660,8 @@ func (s *DeploymentDoesNotExistException) RequestID() string { return s.RespMetadata.RequestID } -// A deployment group with the specified name with the IAM user or Amazon Web -// Services account already exists. +// A deployment group with the specified name with the user or Amazon Web Services +// account already exists. type DeploymentGroupAlreadyExistsException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -8734,8 +8725,8 @@ func (s *DeploymentGroupAlreadyExistsException) RequestID() string { return s.RespMetadata.RequestID } -// The named deployment group with the IAM user or Amazon Web Services account -// does not exist. +// The named deployment group with the user or Amazon Web Services account does +// not exist. type DeploymentGroupDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -10832,17 +10823,18 @@ func (s *ECSTaskSet) SetTrafficWeight(v float64) *ECSTaskSet { return s } -// Information about a load balancer in Elastic Load Balancing to use in a deployment. -// Instances are registered directly with a load balancer, and traffic is routed -// to the load balancer. +// Information about a Classic Load Balancer in Elastic Load Balancing to use +// in a deployment. Instances are registered directly with a load balancer, +// and traffic is routed to the load balancer. type ELBInfo struct { _ struct{} `type:"structure"` - // For blue/green deployments, the name of the load balancer that is used to - // route traffic from original instances to replacement instances in a blue/green - // deployment. For in-place deployments, the name of the load balancer that - // instances are deregistered from so they are not serving traffic during a - // deployment, and then re-registered with after the deployment is complete. + // For blue/green deployments, the name of the Classic Load Balancer that is + // used to route traffic from original instances to replacement instances in + // a blue/green deployment. For in-place deployments, the name of the Classic + // Load Balancer that instances are deregistered from so they are not serving + // traffic during a deployment, and then re-registered with after the deployment + // is complete. Name *string `locationName:"name" type:"string"` } @@ -11022,7 +11014,7 @@ func (s *GenericRevisionInfo) SetRegisterTime(v time.Time) *GenericRevisionInfo type GetApplicationInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -11219,7 +11211,7 @@ func (s *GetApplicationRevisionOutput) SetRevisionInfo(v *GenericRevisionInfo) * type GetDeploymentConfigInput struct { _ struct{} `type:"structure"` - // The name of a deployment configuration associated with the IAM user or Amazon + // The name of a deployment configuration associated with the user or Amazon // Web Services account. // // DeploymentConfigName is a required field @@ -11302,7 +11294,7 @@ func (s *GetDeploymentConfigOutput) SetDeploymentConfigInfo(v *DeploymentConfigI type GetDeploymentGroupInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -11402,8 +11394,8 @@ func (s *GetDeploymentGroupOutput) SetDeploymentGroupInfo(v *DeploymentGroupInfo type GetDeploymentInput struct { _ struct{} `type:"structure"` - // The unique ID of a deployment associated with the IAM user or Amazon Web - // Services account. + // The unique ID of a deployment associated with the user or Amazon Web Services + // account. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` @@ -11937,7 +11929,7 @@ func (s *GreenFleetProvisioningOption) SetAction(v string) *GreenFleetProvisioni } // No IAM ARN was included in the request. You must use an IAM session ARN or -// IAM user ARN in the request. +// user ARN in the request. type IamArnRequiredException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12066,7 +12058,7 @@ func (s *IamSessionArnAlreadyRegisteredException) RequestID() string { return s.RespMetadata.RequestID } -// The specified IAM user ARN is already registered with an on-premises instance. +// The specified user ARN is already registered with an on-premises instance. type IamUserArnAlreadyRegisteredException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12130,7 +12122,7 @@ func (s *IamUserArnAlreadyRegisteredException) RequestID() string { return s.RespMetadata.RequestID } -// An IAM user ARN was not specified. +// An user ARN was not specified. type IamUserArnRequiredException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -12337,7 +12329,7 @@ type InstanceInfo struct { // The ARN of the IAM session associated with the on-premises instance. IamSessionArn *string `locationName:"iamSessionArn" type:"string"` - // The IAM user ARN associated with the on-premises instance. + // The user ARN associated with the on-premises instance. IamUserArn *string `locationName:"iamUserArn" type:"string"` // The ARN of the on-premises instance. @@ -14476,7 +14468,7 @@ func (s *InvalidIamSessionArnException) RequestID() string { return s.RespMetadata.RequestID } -// The IAM user ARN was specified in an invalid format. +// The user ARN was specified in an invalid format. type InvalidIamUserArnException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -16785,7 +16777,7 @@ func (s *LifecycleHookLimitExceededException) RequestID() string { type ListApplicationRevisionsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -17114,7 +17106,7 @@ func (s *ListDeploymentConfigsOutput) SetNextToken(v string) *ListDeploymentConf type ListDeploymentGroupsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -17457,7 +17449,7 @@ func (s *ListDeploymentTargetsOutput) SetTargetIds(v []*string) *ListDeploymentT type ListDeploymentsInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // If applicationName is specified, then deploymentGroupName must be specified. @@ -17892,21 +17884,32 @@ func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput // Information about the Elastic Load Balancing load balancer or target group // used in a deployment. +// +// You can use load balancers and target groups in combination. For example, +// if you have two Classic Load Balancers, and five target groups tied to an +// Application Load Balancer, you can specify the two Classic Load Balancers +// in elbInfoList, and the five target groups in targetGroupInfoList. type LoadBalancerInfo struct { _ struct{} `type:"structure"` - // An array that contains information about the load balancer to use for load - // balancing in a deployment. In Elastic Load Balancing, load balancers are - // used with Classic Load Balancers. + // An array that contains information about the load balancers to use for load + // balancing in a deployment. If you're using Classic Load Balancers, specify + // those load balancers in this array. + // + // You can add up to 10 load balancers to the array. // - // Adding more than one load balancer to the array is not supported. + // If you're using Application Load Balancers or Network Load Balancers, use + // the targetGroupInfoList array instead of this one. ElbInfoList []*ELBInfo `locationName:"elbInfoList" type:"list"` - // An array that contains information about the target group to use for load - // balancing in a deployment. In Elastic Load Balancing, target groups are used - // with Application Load Balancers. + // An array that contains information about the target groups to use for load + // balancing in a deployment. If you're using Application Load Balancers and + // Network Load Balancers, specify their associated target groups in this array. + // + // You can add up to 10 target groups to the array. // - // Adding more than one target group to the array is not supported. + // If you're using Classic Load Balancers, use the elbInfoList array instead + // of this one. TargetGroupInfoList []*TargetGroupInfo `locationName:"targetGroupInfoList" type:"list"` // The target group pair information. This is an array of TargeGroupPairInfo @@ -18016,8 +18019,8 @@ func (s *MinimumHealthyHosts) SetValue(v int64) *MinimumHealthyHosts { return s } -// Both an IAM user ARN and an IAM session ARN were included in the request. -// Use only one ARN type. +// Both an user ARN and an IAM session ARN were included in the request. Use +// only one ARN type. type MultipleIamArnsProvidedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -18315,7 +18318,7 @@ func (s *RawString) SetSha256(v string) *RawString { type RegisterApplicationRevisionInput struct { _ struct{} `type:"structure"` - // The name of an CodeDeploy application associated with the IAM user or Amazon + // The name of an CodeDeploy application associated with the user or Amazon // Web Services account. // // ApplicationName is a required field @@ -18415,7 +18418,7 @@ type RegisterOnPremisesInstanceInput struct { // The ARN of the IAM session to associate with the on-premises instance. IamSessionArn *string `locationName:"iamSessionArn" type:"string"` - // The ARN of the IAM user to associate with the on-premises instance. + // The ARN of the user to associate with the on-premises instance. IamUserArn *string `locationName:"iamUserArn" type:"string"` // The name of the on-premises instance to register. @@ -18748,8 +18751,7 @@ func (s *ResourceValidationException) RequestID() string { return s.RespMetadata.RequestID } -// The named revision does not exist with the IAM user or Amazon Web Services -// account. +// The named revision does not exist with the user or Amazon Web Services account. type RevisionDoesNotExistException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -19132,6 +19134,10 @@ type S3Location struct { // * tgz: A compressed tar archive file. // // * zip: A zip archive file. + // + // * YAML: A YAML-formatted file. + // + // * JSON: A JSON-formatted file. BundleType *string `locationName:"bundleType" type:"string" enum:"BundleType"` // The ETag of the Amazon S3 object that represents the bundled artifacts for @@ -20553,7 +20559,7 @@ type UpdateDeploymentGroupInput struct { // * To remove Auto Scaling groups, specify a non-null empty list of Auto // Scaling group names to detach all CodeDeploy-managed Auto Scaling lifecycle // hooks. For examples, see Amazon EC2 instances in an Amazon EC2 Auto Scaling - // group fail to launch and receive the error "Heartbeat Timeout" (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat) + // group fail to launch and receive the error "Heartbeat Timeout" (https://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat) // in the CodeDeploy User Guide. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` diff --git a/service/codedeploy/errors.go b/service/codedeploy/errors.go index 02478bb2b3a..7cc366ae460 100644 --- a/service/codedeploy/errors.go +++ b/service/codedeploy/errors.go @@ -17,14 +17,14 @@ const ( // ErrCodeApplicationAlreadyExistsException for service response error code // "ApplicationAlreadyExistsException". // - // An application with the specified name with the IAM user or Amazon Web Services + // An application with the specified name with the user or Amazon Web Services // account already exists. ErrCodeApplicationAlreadyExistsException = "ApplicationAlreadyExistsException" // ErrCodeApplicationDoesNotExistException for service response error code // "ApplicationDoesNotExistException". // - // The application does not exist with the IAM user or Amazon Web Services account. + // The application does not exist with the user or Amazon Web Services account. ErrCodeApplicationDoesNotExistException = "ApplicationDoesNotExistException" // ErrCodeApplicationLimitExceededException for service response error code @@ -67,15 +67,15 @@ const ( // ErrCodeDeploymentConfigAlreadyExistsException for service response error code // "DeploymentConfigAlreadyExistsException". // - // A deployment configuration with the specified name with the IAM user or Amazon + // A deployment configuration with the specified name with the user or Amazon // Web Services account already exists. ErrCodeDeploymentConfigAlreadyExistsException = "DeploymentConfigAlreadyExistsException" // ErrCodeDeploymentConfigDoesNotExistException for service response error code // "DeploymentConfigDoesNotExistException". // - // The deployment configuration does not exist with the IAM user or Amazon Web - // Services account. + // The deployment configuration does not exist with the user or Amazon Web Services + // account. ErrCodeDeploymentConfigDoesNotExistException = "DeploymentConfigDoesNotExistException" // ErrCodeDeploymentConfigInUseException for service response error code @@ -99,22 +99,21 @@ const ( // ErrCodeDeploymentDoesNotExistException for service response error code // "DeploymentDoesNotExistException". // - // The deployment with the IAM user or Amazon Web Services account does not - // exist. + // The deployment with the user or Amazon Web Services account does not exist. ErrCodeDeploymentDoesNotExistException = "DeploymentDoesNotExistException" // ErrCodeDeploymentGroupAlreadyExistsException for service response error code // "DeploymentGroupAlreadyExistsException". // - // A deployment group with the specified name with the IAM user or Amazon Web - // Services account already exists. + // A deployment group with the specified name with the user or Amazon Web Services + // account already exists. ErrCodeDeploymentGroupAlreadyExistsException = "DeploymentGroupAlreadyExistsException" // ErrCodeDeploymentGroupDoesNotExistException for service response error code // "DeploymentGroupDoesNotExistException". // - // The named deployment group with the IAM user or Amazon Web Services account - // does not exist. + // The named deployment group with the user or Amazon Web Services account does + // not exist. ErrCodeDeploymentGroupDoesNotExistException = "DeploymentGroupDoesNotExistException" // ErrCodeDeploymentGroupLimitExceededException for service response error code @@ -203,7 +202,7 @@ const ( // "IamArnRequiredException". // // No IAM ARN was included in the request. You must use an IAM session ARN or - // IAM user ARN in the request. + // user ARN in the request. ErrCodeIamArnRequiredException = "IamArnRequiredException" // ErrCodeIamSessionArnAlreadyRegisteredException for service response error code @@ -216,13 +215,13 @@ const ( // ErrCodeIamUserArnAlreadyRegisteredException for service response error code // "IamUserArnAlreadyRegisteredException". // - // The specified IAM user ARN is already registered with an on-premises instance. + // The specified user ARN is already registered with an on-premises instance. ErrCodeIamUserArnAlreadyRegisteredException = "IamUserArnAlreadyRegisteredException" // ErrCodeIamUserArnRequiredException for service response error code // "IamUserArnRequiredException". // - // An IAM user ARN was not specified. + // An user ARN was not specified. ErrCodeIamUserArnRequiredException = "IamUserArnRequiredException" // ErrCodeInstanceDoesNotExistException for service response error code @@ -437,7 +436,7 @@ const ( // ErrCodeInvalidIamUserArnException for service response error code // "InvalidIamUserArnException". // - // The IAM user ARN was specified in an invalid format. + // The user ARN was specified in an invalid format. ErrCodeInvalidIamUserArnException = "InvalidIamUserArnException" // ErrCodeInvalidIgnoreApplicationStopFailuresValueException for service response error code @@ -643,8 +642,8 @@ const ( // ErrCodeMultipleIamArnsProvidedException for service response error code // "MultipleIamArnsProvidedException". // - // Both an IAM user ARN and an IAM session ARN were included in the request. - // Use only one ARN type. + // Both an user ARN and an IAM session ARN were included in the request. Use + // only one ARN type. ErrCodeMultipleIamArnsProvidedException = "MultipleIamArnsProvidedException" // ErrCodeOperationNotSupportedException for service response error code @@ -668,8 +667,7 @@ const ( // ErrCodeRevisionDoesNotExistException for service response error code // "RevisionDoesNotExistException". // - // The named revision does not exist with the IAM user or Amazon Web Services - // account. + // The named revision does not exist with the user or Amazon Web Services account. ErrCodeRevisionDoesNotExistException = "RevisionDoesNotExistException" // ErrCodeRevisionRequiredException for service response error code diff --git a/service/connect/api.go b/service/connect/api.go index 5aa204b3811..4ac14934f39 100644 --- a/service/connect/api.go +++ b/service/connect/api.go @@ -13922,6 +13922,154 @@ func (c *Connect) ListSecurityKeysPagesWithContext(ctx aws.Context, input *ListS return p.Err() } +const opListSecurityProfileApplications = "ListSecurityProfileApplications" + +// ListSecurityProfileApplicationsRequest generates a "aws/request.Request" representing the +// client's request for the ListSecurityProfileApplications 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 ListSecurityProfileApplications for more information on using the ListSecurityProfileApplications +// 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 ListSecurityProfileApplicationsRequest method. +// req, resp := client.ListSecurityProfileApplicationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListSecurityProfileApplications +func (c *Connect) ListSecurityProfileApplicationsRequest(input *ListSecurityProfileApplicationsInput) (req *request.Request, output *ListSecurityProfileApplicationsOutput) { + op := &request.Operation{ + Name: opListSecurityProfileApplications, + HTTPMethod: "GET", + HTTPPath: "/security-profiles-applications/{InstanceId}/{SecurityProfileId}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSecurityProfileApplicationsInput{} + } + + output = &ListSecurityProfileApplicationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSecurityProfileApplications API operation for Amazon Connect Service. +// +// Returns a list of third party applications in a specific security profile. +// +// 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 Amazon Connect Service's +// API operation ListSecurityProfileApplications for usage and error information. +// +// Returned Error Types: +// +// - InvalidRequestException +// The request is not valid. +// +// - InvalidParameterException +// One or more of the specified parameters are not valid. +// +// - ResourceNotFoundException +// The specified resource was not found. +// +// - ThrottlingException +// The throttling limit has been exceeded. +// +// - InternalServiceException +// Request processing failed because of an error or failure with the service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListSecurityProfileApplications +func (c *Connect) ListSecurityProfileApplications(input *ListSecurityProfileApplicationsInput) (*ListSecurityProfileApplicationsOutput, error) { + req, out := c.ListSecurityProfileApplicationsRequest(input) + return out, req.Send() +} + +// ListSecurityProfileApplicationsWithContext is the same as ListSecurityProfileApplications with the addition of +// the ability to pass a context and additional request options. +// +// See ListSecurityProfileApplications 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 *Connect) ListSecurityProfileApplicationsWithContext(ctx aws.Context, input *ListSecurityProfileApplicationsInput, opts ...request.Option) (*ListSecurityProfileApplicationsOutput, error) { + req, out := c.ListSecurityProfileApplicationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSecurityProfileApplicationsPages iterates over the pages of a ListSecurityProfileApplications operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSecurityProfileApplications 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 ListSecurityProfileApplications operation. +// pageNum := 0 +// err := client.ListSecurityProfileApplicationsPages(params, +// func(page *connect.ListSecurityProfileApplicationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Connect) ListSecurityProfileApplicationsPages(input *ListSecurityProfileApplicationsInput, fn func(*ListSecurityProfileApplicationsOutput, bool) bool) error { + return c.ListSecurityProfileApplicationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSecurityProfileApplicationsPagesWithContext same as ListSecurityProfileApplicationsPages 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 *Connect) ListSecurityProfileApplicationsPagesWithContext(ctx aws.Context, input *ListSecurityProfileApplicationsInput, fn func(*ListSecurityProfileApplicationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSecurityProfileApplicationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSecurityProfileApplicationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSecurityProfileApplicationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListSecurityProfilePermissions = "ListSecurityProfilePermissions" // ListSecurityProfilePermissionsRequest generates a "aws/request.Request" representing the @@ -23672,6 +23820,66 @@ func (s *AnswerMachineDetectionConfig) SetEnableAnswerMachineDetection(v bool) * return s } +// This API is in preview release for Amazon Connect and is subject to change. +// +// A third party application's metadata. +type Application struct { + _ struct{} `type:"structure"` + + // The permissions that the agent is granted on the application. Only the ACCESS + // permission is supported. + ApplicationPermissions []*string `min:"1" type:"list"` + + // Namespace of the application that you want to give access to. + Namespace *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Application) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Application) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Application"} + if s.ApplicationPermissions != nil && len(s.ApplicationPermissions) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApplicationPermissions", 1)) + } + if s.Namespace != nil && len(*s.Namespace) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationPermissions sets the ApplicationPermissions field's value. +func (s *Application) SetApplicationPermissions(v []*string) *Application { + s.ApplicationPermissions = v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *Application) SetNamespace(v string) *Application { + s.Namespace = &v + return s +} + // This action must be set if TriggerEventSource is one of the following values: // OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable. // Contact is categorized using the rule name. @@ -27785,7 +27993,7 @@ type CreateQuickConnectInput struct { // InstanceId is a required field InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` - // The name of the quick connect. + // A unique name of the quick connect. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -28341,6 +28549,12 @@ type CreateSecurityProfileInput struct { // in Amazon Connect. AllowedAccessControlTags map[string]*string `type:"map"` + // This API is in preview release for Amazon Connect and is subject to change. + // + // A list of third party applications that the security profile will give access + // to. + Applications []*Application `type:"list"` + // The description of the security profile. Description *string `type:"string"` @@ -28406,6 +28620,16 @@ func (s *CreateSecurityProfileInput) Validate() error { if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } + if s.Applications != nil { + for i, v := range s.Applications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Applications", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -28419,6 +28643,12 @@ func (s *CreateSecurityProfileInput) SetAllowedAccessControlTags(v map[string]*s return s } +// SetApplications sets the Applications field's value. +func (s *CreateSecurityProfileInput) SetApplications(v []*Application) *CreateSecurityProfileInput { + s.Applications = v + return s +} + // SetDescription sets the Description field's value. func (s *CreateSecurityProfileInput) SetDescription(v string) *CreateSecurityProfileInput { s.Description = &v @@ -44770,6 +45000,11 @@ type ListPhoneNumbersInput struct { PhoneNumberCountryCodes []*string `location:"querystring" locationName:"phoneNumberCountryCodes" type:"list" enum:"PhoneNumberCountryCode"` // The type of phone number. + // + // We recommend using ListPhoneNumbersV2 (https://docs.aws.amazon.com/connect/latest/APIReference/API_ListPhoneNumbersV2.html) + // to return phone number types. While ListPhoneNumbers returns number types + // UIFN, SHARED, THIRD_PARTY_TF, and THIRD_PARTY_DID, it incorrectly lists them + // as TOLL_FREE or DID. PhoneNumberTypes []*string `location:"querystring" locationName:"phoneNumberTypes" type:"list" enum:"PhoneNumberType"` } @@ -46080,6 +46315,137 @@ func (s *ListSecurityKeysOutput) SetSecurityKeys(v []*SecurityKey) *ListSecurity return s } +type ListSecurityProfileApplicationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The instance identifier. + // + // InstanceId is a required field + InstanceId *string `location:"uri" locationName:"InstanceId" min:"1" type:"string" required:"true"` + + // The maximum number of results to return per page. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next set of results. The next set of results can be retrieved + // by using the token value returned in the previous response when making the + // next request. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The security profile identifier. + // + // SecurityProfileId is a required field + SecurityProfileId *string `location:"uri" locationName:"SecurityProfileId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSecurityProfileApplicationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSecurityProfileApplicationsInput"} + if s.InstanceId == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceId")) + } + if s.InstanceId != nil && len(*s.InstanceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.SecurityProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("SecurityProfileId")) + } + if s.SecurityProfileId != nil && len(*s.SecurityProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SecurityProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceId sets the InstanceId field's value. +func (s *ListSecurityProfileApplicationsInput) SetInstanceId(v string) *ListSecurityProfileApplicationsInput { + s.InstanceId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSecurityProfileApplicationsInput) SetMaxResults(v int64) *ListSecurityProfileApplicationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSecurityProfileApplicationsInput) SetNextToken(v string) *ListSecurityProfileApplicationsInput { + s.NextToken = &v + return s +} + +// SetSecurityProfileId sets the SecurityProfileId field's value. +func (s *ListSecurityProfileApplicationsInput) SetSecurityProfileId(v string) *ListSecurityProfileApplicationsInput { + s.SecurityProfileId = &v + return s +} + +type ListSecurityProfileApplicationsOutput struct { + _ struct{} `type:"structure"` + + // A list of the third party application's metadata. + Applications []*Application `type:"list"` + + // The token for the next set of results. The next set of results can be retrieved + // by using the token value returned in the previous response when making the + // next request. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSecurityProfileApplicationsOutput) GoString() string { + return s.String() +} + +// SetApplications sets the Applications field's value. +func (s *ListSecurityProfileApplicationsOutput) SetApplications(v []*Application) *ListSecurityProfileApplicationsOutput { + s.Applications = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSecurityProfileApplicationsOutput) SetNextToken(v string) *ListSecurityProfileApplicationsOutput { + s.NextToken = &v + return s +} + type ListSecurityProfilePermissionsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -51515,12 +51881,24 @@ type RuleAction struct { ActionType *string `type:"string" required:"true" enum:"ActionType"` // Information about the contact category action. + // + // Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable + // | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable | OnZendeskTicketCreate + // | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate AssignContactCategoryAction *AssignContactCategoryActionDefinition `type:"structure"` // Information about the EventBridge action. + // + // Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable + // | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit + // | OnMetricDataUpdate EventBridgeAction *EventBridgeActionDefinition `type:"structure"` // Information about the send notification action. + // + // Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable + // | OnRealTimeCallAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit + // | OnMetricDataUpdate SendNotificationAction *SendNotificationActionDefinition `type:"structure"` // Information about the task action. This field is required if TriggerEventSource @@ -51718,7 +52096,7 @@ func (s *RuleSummary) SetRuleId(v string) *RuleSummary { // The name of the event source. This field is required if TriggerEventSource // is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate -// | OnSalesforceCaseCreate +// | OnSalesforceCaseCreate | OnContactEvaluationSubmit | OnMetricDataUpdate. type RuleTriggerEventSource struct { _ struct{} `type:"structure"` @@ -60961,6 +61339,11 @@ type UpdateSecurityProfileInput struct { // in Amazon Connect. AllowedAccessControlTags map[string]*string `type:"map"` + // This API is in preview release for Amazon Connect and is subject to change. + // + // A list of the third party application's metadata. + Applications []*Application `type:"list"` + // The description of the security profile. Description *string `type:"string"` @@ -61018,6 +61401,16 @@ func (s *UpdateSecurityProfileInput) Validate() error { if s.SecurityProfileId != nil && len(*s.SecurityProfileId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecurityProfileId", 1)) } + if s.Applications != nil { + for i, v := range s.Applications { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Applications", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -61031,6 +61424,12 @@ func (s *UpdateSecurityProfileInput) SetAllowedAccessControlTags(v map[string]*s return s } +// SetApplications sets the Applications field's value. +func (s *UpdateSecurityProfileInput) SetApplications(v []*Application) *UpdateSecurityProfileInput { + s.Applications = v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateSecurityProfileInput) SetDescription(v string) *UpdateSecurityProfileInput { s.Description = &v @@ -65075,6 +65474,9 @@ const ( // IntegrationTypeCasesDomain is a IntegrationType enum value IntegrationTypeCasesDomain = "CASES_DOMAIN" + + // IntegrationTypeApplication is a IntegrationType enum value + IntegrationTypeApplication = "APPLICATION" ) // IntegrationType_Values returns all elements of the IntegrationType enum @@ -65086,6 +65488,7 @@ func IntegrationType_Values() []string { IntegrationTypeWisdomAssistant, IntegrationTypeWisdomKnowledgeBase, IntegrationTypeCasesDomain, + IntegrationTypeApplication, } } diff --git a/service/connect/connectiface/interface.go b/service/connect/connectiface/interface.go index fb60548ca99..e67ba7dd369 100644 --- a/service/connect/connectiface/interface.go +++ b/service/connect/connectiface/interface.go @@ -661,6 +661,13 @@ type ConnectAPI interface { ListSecurityKeysPages(*connect.ListSecurityKeysInput, func(*connect.ListSecurityKeysOutput, bool) bool) error ListSecurityKeysPagesWithContext(aws.Context, *connect.ListSecurityKeysInput, func(*connect.ListSecurityKeysOutput, bool) bool, ...request.Option) error + ListSecurityProfileApplications(*connect.ListSecurityProfileApplicationsInput) (*connect.ListSecurityProfileApplicationsOutput, error) + ListSecurityProfileApplicationsWithContext(aws.Context, *connect.ListSecurityProfileApplicationsInput, ...request.Option) (*connect.ListSecurityProfileApplicationsOutput, error) + ListSecurityProfileApplicationsRequest(*connect.ListSecurityProfileApplicationsInput) (*request.Request, *connect.ListSecurityProfileApplicationsOutput) + + ListSecurityProfileApplicationsPages(*connect.ListSecurityProfileApplicationsInput, func(*connect.ListSecurityProfileApplicationsOutput, bool) bool) error + ListSecurityProfileApplicationsPagesWithContext(aws.Context, *connect.ListSecurityProfileApplicationsInput, func(*connect.ListSecurityProfileApplicationsOutput, bool) bool, ...request.Option) error + ListSecurityProfilePermissions(*connect.ListSecurityProfilePermissionsInput) (*connect.ListSecurityProfilePermissionsOutput, error) ListSecurityProfilePermissionsWithContext(aws.Context, *connect.ListSecurityProfilePermissionsInput, ...request.Option) (*connect.ListSecurityProfilePermissionsOutput, error) ListSecurityProfilePermissionsRequest(*connect.ListSecurityProfilePermissionsInput) (*request.Request, *connect.ListSecurityProfilePermissionsOutput) diff --git a/service/dynamodb/api.go b/service/dynamodb/api.go index a250c7622d6..58b2ecfbee6 100644 --- a/service/dynamodb/api.go +++ b/service/dynamodb/api.go @@ -3991,9 +3991,10 @@ func (c *DynamoDB) ListBackupsRequest(input *ListBackupsInput) (req *request.Req // ListBackups API operation for Amazon DynamoDB. // -// List backups associated with an Amazon Web Services account. To list backups -// for a given table, specify TableName. ListBackups returns a paginated list -// of results with at most 1 MB worth of items in a page. You can also specify +// List DynamoDB backups that are associated with an Amazon Web Services account +// and weren't made with Amazon Web Services Backup. To list these backups for +// a given table, specify TableName. ListBackups returns a paginated list of +// results with at most 1 MB worth of items in a page. You can also specify // a maximum number of entries to be returned in a page. // // In the request, start time is inclusive, but end time is exclusive. Note @@ -4001,6 +4002,9 @@ func (c *DynamoDB) ListBackupsRequest(input *ListBackupsInput) (req *request.Req // // You can call ListBackups a maximum of five times per second. // +// If you want to retrieve the complete list of backups made with Amazon Web +// Services Backup, use the Amazon Web Services Backup list API. (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_ListBackupJobs.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. @@ -14214,12 +14218,20 @@ type ExportDescription struct { // Point in time from which table data was exported. ExportTime *time.Time `type:"timestamp"` + // Choice of whether to execute as a full export or incremental export. Valid + // values are FULL_EXPORT or INCREMENTAL_EXPORT. If INCREMENTAL_EXPORT is provided, + // the IncrementalExportSpecification must also be used. + ExportType *string `type:"string" enum:"ExportType"` + // Status code for the result of the failed export. FailureCode *string `type:"string"` // Export failure reason description. FailureMessage *string `type:"string"` + // Optional object containing the parameters specific to an incremental export. + IncrementalExportSpecification *IncrementalExportSpecification `type:"structure"` + // The number of items exported. ItemCount *int64 `type:"long"` @@ -14322,6 +14334,12 @@ func (s *ExportDescription) SetExportTime(v time.Time) *ExportDescription { return s } +// SetExportType sets the ExportType field's value. +func (s *ExportDescription) SetExportType(v string) *ExportDescription { + s.ExportType = &v + return s +} + // SetFailureCode sets the FailureCode field's value. func (s *ExportDescription) SetFailureCode(v string) *ExportDescription { s.FailureCode = &v @@ -14334,6 +14352,12 @@ func (s *ExportDescription) SetFailureMessage(v string) *ExportDescription { return s } +// SetIncrementalExportSpecification sets the IncrementalExportSpecification field's value. +func (s *ExportDescription) SetIncrementalExportSpecification(v *IncrementalExportSpecification) *ExportDescription { + s.IncrementalExportSpecification = v + return s +} + // SetItemCount sets the ItemCount field's value. func (s *ExportDescription) SetItemCount(v int64) *ExportDescription { s.ItemCount = &v @@ -14462,6 +14486,11 @@ type ExportSummary struct { // Export can be in one of the following states: IN_PROGRESS, COMPLETED, or // FAILED. ExportStatus *string `type:"string" enum:"ExportStatus"` + + // Choice of whether to execute as a full export or incremental export. Valid + // values are FULL_EXPORT or INCREMENTAL_EXPORT. If INCREMENTAL_EXPORT is provided, + // the IncrementalExportSpecification must also be used. + ExportType *string `type:"string" enum:"ExportType"` } // String returns the string representation. @@ -14494,6 +14523,12 @@ func (s *ExportSummary) SetExportStatus(v string) *ExportSummary { return s } +// SetExportType sets the ExportType field's value. +func (s *ExportSummary) SetExportType(v string) *ExportSummary { + s.ExportType = &v + return s +} + type ExportTableToPointInTimeInput struct { _ struct{} `type:"structure"` @@ -14519,6 +14554,14 @@ type ExportTableToPointInTimeInput struct { // state at this point in time. ExportTime *time.Time `type:"timestamp"` + // Choice of whether to execute as a full export or incremental export. Valid + // values are FULL_EXPORT or INCREMENTAL_EXPORT. If INCREMENTAL_EXPORT is provided, + // the IncrementalExportSpecification must also be used. + ExportType *string `type:"string" enum:"ExportType"` + + // Optional object containing the parameters specific to an incremental export. + IncrementalExportSpecification *IncrementalExportSpecification `type:"structure"` + // The name of the Amazon S3 bucket to export the snapshot to. // // S3Bucket is a required field @@ -14605,6 +14648,18 @@ func (s *ExportTableToPointInTimeInput) SetExportTime(v time.Time) *ExportTableT return s } +// SetExportType sets the ExportType field's value. +func (s *ExportTableToPointInTimeInput) SetExportType(v string) *ExportTableToPointInTimeInput { + s.ExportType = &v + return s +} + +// SetIncrementalExportSpecification sets the IncrementalExportSpecification field's value. +func (s *ExportTableToPointInTimeInput) SetIncrementalExportSpecification(v *IncrementalExportSpecification) *ExportTableToPointInTimeInput { + s.IncrementalExportSpecification = v + return s +} + // SetS3Bucket sets the S3Bucket field's value. func (s *ExportTableToPointInTimeInput) SetS3Bucket(v string) *ExportTableToPointInTimeInput { s.S3Bucket = &v @@ -16522,6 +16577,62 @@ func (s *ImportTableOutput) SetImportTableDescription(v *ImportTableDescription) return s } +// Optional object containing the parameters specific to an incremental export. +type IncrementalExportSpecification struct { + _ struct{} `type:"structure"` + + // Time in the past which provides the inclusive start range for the export + // table's data, counted in seconds from the start of the Unix epoch. The incremental + // export will reflect the table's state including and after this point in time. + ExportFromTime *time.Time `type:"timestamp"` + + // Time in the past which provides the exclusive end range for the export table's + // data, counted in seconds from the start of the Unix epoch. The incremental + // export will reflect the table's state just prior to this point in time. If + // this is not provided, the latest time with data available will be used. + ExportToTime *time.Time `type:"timestamp"` + + // Choice of whether to output the previous item image prior to the start time + // of the incremental export. Valid values are NEW_AND_OLD_IMAGES and NEW_IMAGES. + ExportViewType *string `type:"string" enum:"ExportViewType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IncrementalExportSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IncrementalExportSpecification) GoString() string { + return s.String() +} + +// SetExportFromTime sets the ExportFromTime field's value. +func (s *IncrementalExportSpecification) SetExportFromTime(v time.Time) *IncrementalExportSpecification { + s.ExportFromTime = &v + return s +} + +// SetExportToTime sets the ExportToTime field's value. +func (s *IncrementalExportSpecification) SetExportToTime(v time.Time) *IncrementalExportSpecification { + s.ExportToTime = &v + return s +} + +// SetExportViewType sets the ExportViewType field's value. +func (s *IncrementalExportSpecification) SetExportViewType(v string) *IncrementalExportSpecification { + s.ExportViewType = &v + return s +} + // The operation tried to access a nonexistent index. type IndexNotFoundException struct { _ struct{} `type:"structure"` @@ -26926,6 +27037,38 @@ func ExportStatus_Values() []string { } } +const ( + // ExportTypeFullExport is a ExportType enum value + ExportTypeFullExport = "FULL_EXPORT" + + // ExportTypeIncrementalExport is a ExportType enum value + ExportTypeIncrementalExport = "INCREMENTAL_EXPORT" +) + +// ExportType_Values returns all elements of the ExportType enum +func ExportType_Values() []string { + return []string{ + ExportTypeFullExport, + ExportTypeIncrementalExport, + } +} + +const ( + // ExportViewTypeNewImage is a ExportViewType enum value + ExportViewTypeNewImage = "NEW_IMAGE" + + // ExportViewTypeNewAndOldImages is a ExportViewType enum value + ExportViewTypeNewAndOldImages = "NEW_AND_OLD_IMAGES" +) + +// ExportViewType_Values returns all elements of the ExportViewType enum +func ExportViewType_Values() []string { + return []string{ + ExportViewTypeNewImage, + ExportViewTypeNewAndOldImages, + } +} + const ( // GlobalTableStatusCreating is a GlobalTableStatus enum value GlobalTableStatusCreating = "CREATING" diff --git a/service/ec2/api.go b/service/ec2/api.go index bab95287a87..5132ac3fcd4 100644 --- a/service/ec2/api.go +++ b/service/ec2/api.go @@ -52862,6 +52862,10 @@ func (c *EC2) RevokeSecurityGroupIngressRequest(input *RevokeSecurityGroupIngres // values, no error is returned, and the output describes the security group // rules that were not revoked. // +// For a non-default VPC, if the values you specify do not match the existing +// rule's values, an InvalidPermission.NotFound client error is returned, and +// no rules are revoked. +// // Amazon Web Services recommends that you describe the security group to verify // that the rules were removed. // @@ -78184,6 +78188,10 @@ type CreateVerifiedAccessInstanceInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` + // Choose to enable or disable support for Federal Information Processing Standards + // (FIPS) on the instance. + FIPSEnabled *bool `type:"boolean"` + // The tags to assign to the Verified Access instance. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } @@ -78224,6 +78232,12 @@ func (s *CreateVerifiedAccessInstanceInput) SetDryRun(v bool) *CreateVerifiedAcc return s } +// SetFIPSEnabled sets the FIPSEnabled field's value. +func (s *CreateVerifiedAccessInstanceInput) SetFIPSEnabled(v bool) *CreateVerifiedAccessInstanceInput { + s.FIPSEnabled = &v + return s +} + // SetTagSpecifications sets the TagSpecifications field's value. func (s *CreateVerifiedAccessInstanceInput) SetTagSpecifications(v []*TagSpecification) *CreateVerifiedAccessInstanceInput { s.TagSpecifications = v @@ -179083,6 +179097,10 @@ type VerifiedAccessInstance struct { // A description for the Amazon Web Services Verified Access instance. Description *string `locationName:"description" type:"string"` + // Describes if support for Federal Information Processing Standards (FIPS) + // is enabled on the instance. + FipsEnabled *bool `locationName:"fipsEnabled" type:"boolean"` + // The last updated time. LastUpdatedTime *string `locationName:"lastUpdatedTime" type:"string"` @@ -179126,6 +179144,12 @@ func (s *VerifiedAccessInstance) SetDescription(v string) *VerifiedAccessInstanc return s } +// SetFipsEnabled sets the FipsEnabled field's value. +func (s *VerifiedAccessInstance) SetFipsEnabled(v bool) *VerifiedAccessInstance { + s.FipsEnabled = &v + return s +} + // SetLastUpdatedTime sets the LastUpdatedTime field's value. func (s *VerifiedAccessInstance) SetLastUpdatedTime(v string) *VerifiedAccessInstance { s.LastUpdatedTime = &v diff --git a/service/lakeformation/api.go b/service/lakeformation/api.go index 7e2139fb71c..6c6c37ef48e 100644 --- a/service/lakeformation/api.go +++ b/service/lakeformation/api.go @@ -766,6 +766,101 @@ func (c *LakeFormation) CreateLFTagWithContext(ctx aws.Context, input *CreateLFT return out, req.Send() } +const opCreateLakeFormationOptIn = "CreateLakeFormationOptIn" + +// CreateLakeFormationOptInRequest generates a "aws/request.Request" representing the +// client's request for the CreateLakeFormationOptIn 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 CreateLakeFormationOptIn for more information on using the CreateLakeFormationOptIn +// 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 CreateLakeFormationOptInRequest method. +// req, resp := client.CreateLakeFormationOptInRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateLakeFormationOptIn +func (c *LakeFormation) CreateLakeFormationOptInRequest(input *CreateLakeFormationOptInInput) (req *request.Request, output *CreateLakeFormationOptInOutput) { + op := &request.Operation{ + Name: opCreateLakeFormationOptIn, + HTTPMethod: "POST", + HTTPPath: "/CreateLakeFormationOptIn", + } + + if input == nil { + input = &CreateLakeFormationOptInInput{} + } + + output = &CreateLakeFormationOptInOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// CreateLakeFormationOptIn API operation for AWS Lake Formation. +// +// Enforce Lake Formation permissions for the given databases, tables, and principals. +// +// 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 Lake Formation's +// API operation CreateLakeFormationOptIn for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateLakeFormationOptIn +func (c *LakeFormation) CreateLakeFormationOptIn(input *CreateLakeFormationOptInInput) (*CreateLakeFormationOptInOutput, error) { + req, out := c.CreateLakeFormationOptInRequest(input) + return out, req.Send() +} + +// CreateLakeFormationOptInWithContext is the same as CreateLakeFormationOptIn with the addition of +// the ability to pass a context and additional request options. +// +// See CreateLakeFormationOptIn 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 *LakeFormation) CreateLakeFormationOptInWithContext(ctx aws.Context, input *CreateLakeFormationOptInInput, opts ...request.Option) (*CreateLakeFormationOptInOutput, error) { + req, out := c.CreateLakeFormationOptInRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteDataCellsFilter = "DeleteDataCellsFilter" // DeleteDataCellsFilterRequest generates a "aws/request.Request" representing the @@ -954,6 +1049,102 @@ func (c *LakeFormation) DeleteLFTagWithContext(ctx aws.Context, input *DeleteLFT return out, req.Send() } +const opDeleteLakeFormationOptIn = "DeleteLakeFormationOptIn" + +// DeleteLakeFormationOptInRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLakeFormationOptIn 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 DeleteLakeFormationOptIn for more information on using the DeleteLakeFormationOptIn +// 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 DeleteLakeFormationOptInRequest method. +// req, resp := client.DeleteLakeFormationOptInRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLakeFormationOptIn +func (c *LakeFormation) DeleteLakeFormationOptInRequest(input *DeleteLakeFormationOptInInput) (req *request.Request, output *DeleteLakeFormationOptInOutput) { + op := &request.Operation{ + Name: opDeleteLakeFormationOptIn, + HTTPMethod: "POST", + HTTPPath: "/DeleteLakeFormationOptIn", + } + + if input == nil { + input = &DeleteLakeFormationOptInInput{} + } + + output = &DeleteLakeFormationOptInOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteLakeFormationOptIn API operation for AWS Lake Formation. +// +// Remove the Lake Formation permissions enforcement of the given databases, +// tables, and principals. +// +// 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 Lake Formation's +// API operation DeleteLakeFormationOptIn for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - EntityNotFoundException +// A specified entity does not exist. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// - ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLakeFormationOptIn +func (c *LakeFormation) DeleteLakeFormationOptIn(input *DeleteLakeFormationOptInInput) (*DeleteLakeFormationOptInOutput, error) { + req, out := c.DeleteLakeFormationOptInRequest(input) + return out, req.Send() +} + +// DeleteLakeFormationOptInWithContext is the same as DeleteLakeFormationOptIn with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLakeFormationOptIn 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 *LakeFormation) DeleteLakeFormationOptInWithContext(ctx aws.Context, input *DeleteLakeFormationOptInInput, opts ...request.Option) (*DeleteLakeFormationOptInOutput, error) { + req, out := c.DeleteLakeFormationOptInRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteObjectsOnCancel = "DeleteObjectsOnCancel" // DeleteObjectsOnCancelRequest generates a "aws/request.Request" representing the @@ -3116,6 +3307,152 @@ func (c *LakeFormation) ListLFTagsPagesWithContext(ctx aws.Context, input *ListL return p.Err() } +const opListLakeFormationOptIns = "ListLakeFormationOptIns" + +// ListLakeFormationOptInsRequest generates a "aws/request.Request" representing the +// client's request for the ListLakeFormationOptIns 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 ListLakeFormationOptIns for more information on using the ListLakeFormationOptIns +// 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 ListLakeFormationOptInsRequest method. +// req, resp := client.ListLakeFormationOptInsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListLakeFormationOptIns +func (c *LakeFormation) ListLakeFormationOptInsRequest(input *ListLakeFormationOptInsInput) (req *request.Request, output *ListLakeFormationOptInsOutput) { + op := &request.Operation{ + Name: opListLakeFormationOptIns, + HTTPMethod: "POST", + HTTPPath: "/ListLakeFormationOptIns", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLakeFormationOptInsInput{} + } + + output = &ListLakeFormationOptInsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLakeFormationOptIns API operation for AWS Lake Formation. +// +// Retrieve the current list of resources and principals that are opt in to +// enforce Lake Formation permissions. +// +// 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 Lake Formation's +// API operation ListLakeFormationOptIns for usage and error information. +// +// Returned Error Types: +// +// - InvalidInputException +// The input provided was not valid. +// +// - InternalServiceException +// An internal service error occurred. +// +// - OperationTimeoutException +// The operation timed out. +// +// - AccessDeniedException +// Access to a resource was denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListLakeFormationOptIns +func (c *LakeFormation) ListLakeFormationOptIns(input *ListLakeFormationOptInsInput) (*ListLakeFormationOptInsOutput, error) { + req, out := c.ListLakeFormationOptInsRequest(input) + return out, req.Send() +} + +// ListLakeFormationOptInsWithContext is the same as ListLakeFormationOptIns with the addition of +// the ability to pass a context and additional request options. +// +// See ListLakeFormationOptIns 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 *LakeFormation) ListLakeFormationOptInsWithContext(ctx aws.Context, input *ListLakeFormationOptInsInput, opts ...request.Option) (*ListLakeFormationOptInsOutput, error) { + req, out := c.ListLakeFormationOptInsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLakeFormationOptInsPages iterates over the pages of a ListLakeFormationOptIns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLakeFormationOptIns 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 ListLakeFormationOptIns operation. +// pageNum := 0 +// err := client.ListLakeFormationOptInsPages(params, +// func(page *lakeformation.ListLakeFormationOptInsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LakeFormation) ListLakeFormationOptInsPages(input *ListLakeFormationOptInsInput, fn func(*ListLakeFormationOptInsOutput, bool) bool) error { + return c.ListLakeFormationOptInsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLakeFormationOptInsPagesWithContext same as ListLakeFormationOptInsPages 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 *LakeFormation) ListLakeFormationOptInsPagesWithContext(ctx aws.Context, input *ListLakeFormationOptInsInput, fn func(*ListLakeFormationOptInsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLakeFormationOptInsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLakeFormationOptInsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLakeFormationOptInsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListPermissions = "ListPermissions" // ListPermissionsRequest generates a "aws/request.Request" representing the @@ -6427,13 +6764,105 @@ func (s *CreateLFTagInput) SetTagKey(v string) *CreateLFTagInput { return s } -// SetTagValues sets the TagValues field's value. -func (s *CreateLFTagInput) SetTagValues(v []*string) *CreateLFTagInput { - s.TagValues = v +// SetTagValues sets the TagValues field's value. +func (s *CreateLFTagInput) SetTagValues(v []*string) *CreateLFTagInput { + s.TagValues = v + return s +} + +type CreateLFTagOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLFTagOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLFTagOutput) GoString() string { + return s.String() +} + +type CreateLakeFormationOptInInput struct { + _ struct{} `type:"structure"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + // + // Principal is a required field + Principal *DataLakePrincipal `type:"structure" required:"true"` + + // A structure for the resource. + // + // Resource is a required field + Resource *Resource `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLakeFormationOptInInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLakeFormationOptInInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLakeFormationOptInInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLakeFormationOptInInput"} + if s.Principal == nil { + invalidParams.Add(request.NewErrParamRequired("Principal")) + } + if s.Resource == nil { + invalidParams.Add(request.NewErrParamRequired("Resource")) + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPrincipal sets the Principal field's value. +func (s *CreateLakeFormationOptInInput) SetPrincipal(v *DataLakePrincipal) *CreateLakeFormationOptInInput { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *CreateLakeFormationOptInInput) SetResource(v *Resource) *CreateLakeFormationOptInInput { + s.Resource = v return s } -type CreateLFTagOutput struct { +type CreateLakeFormationOptInOutput struct { _ struct{} `type:"structure"` } @@ -6442,7 +6871,7 @@ type CreateLFTagOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLFTagOutput) String() string { +func (s CreateLakeFormationOptInOutput) String() string { return awsutil.Prettify(s) } @@ -6451,7 +6880,7 @@ func (s CreateLFTagOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLFTagOutput) GoString() string { +func (s CreateLakeFormationOptInOutput) GoString() string { return s.String() } @@ -7263,6 +7692,98 @@ func (s DeleteLFTagOutput) GoString() string { return s.String() } +type DeleteLakeFormationOptInInput struct { + _ struct{} `type:"structure"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + // + // Principal is a required field + Principal *DataLakePrincipal `type:"structure" required:"true"` + + // A structure for the resource. + // + // Resource is a required field + Resource *Resource `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationOptInInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationOptInInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLakeFormationOptInInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLakeFormationOptInInput"} + if s.Principal == nil { + invalidParams.Add(request.NewErrParamRequired("Principal")) + } + if s.Resource == nil { + invalidParams.Add(request.NewErrParamRequired("Resource")) + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPrincipal sets the Principal field's value. +func (s *DeleteLakeFormationOptInInput) SetPrincipal(v *DataLakePrincipal) *DeleteLakeFormationOptInInput { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *DeleteLakeFormationOptInInput) SetResource(v *Resource) *DeleteLakeFormationOptInInput { + s.Resource = v + return s +} + +type DeleteLakeFormationOptInOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationOptInOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLakeFormationOptInOutput) GoString() string { + return s.String() +} + // An object to delete from the governed table. type DeleteObjectInput_ struct { _ struct{} `type:"structure"` @@ -9957,6 +10478,10 @@ type LFTag struct { // A list of possible values an attribute can take. // + // The maximum number of values that can be defined for a LF-Tag is 1000. A + // single API call supports 50 values. You can use multiple API calls to add + // more values. + // // TagValues is a required field TagValues []*string `min:"1" type:"list" required:"true"` } @@ -10306,6 +10831,65 @@ func (s *LFTagPolicyResource) SetResourceType(v string) *LFTagPolicyResource { return s } +// A single principal-resource pair that has Lake Formation permissins enforced. +type LakeFormationOptInsInfo struct { + _ struct{} `type:"structure"` + + // The last modified date and time of the record. + LastModified *time.Time `type:"timestamp"` + + // The user who updated the record. + LastUpdatedBy *string `min:"1" type:"string"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + Principal *DataLakePrincipal `type:"structure"` + + // A structure for the resource. + Resource *Resource `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationOptInsInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LakeFormationOptInsInfo) GoString() string { + return s.String() +} + +// SetLastModified sets the LastModified field's value. +func (s *LakeFormationOptInsInfo) SetLastModified(v time.Time) *LakeFormationOptInsInfo { + s.LastModified = &v + return s +} + +// SetLastUpdatedBy sets the LastUpdatedBy field's value. +func (s *LakeFormationOptInsInfo) SetLastUpdatedBy(v string) *LakeFormationOptInsInfo { + s.LastUpdatedBy = &v + return s +} + +// SetPrincipal sets the Principal field's value. +func (s *LakeFormationOptInsInfo) SetPrincipal(v *DataLakePrincipal) *LakeFormationOptInsInfo { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *LakeFormationOptInsInfo) SetResource(v *Resource) *LakeFormationOptInsInfo { + s.Resource = v + return s +} + type ListDataCellsFilterInput struct { _ struct{} `type:"structure"` @@ -10534,6 +11118,127 @@ func (s *ListLFTagsOutput) SetNextToken(v string) *ListLFTagsOutput { return s } +type ListLakeFormationOptInsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return. + MaxResults *int64 `min:"1" type:"integer"` + + // A continuation token, if this is not the first call to retrieve this list. + NextToken *string `type:"string"` + + // The Lake Formation principal. Supported principals are IAM users or IAM roles. + Principal *DataLakePrincipal `type:"structure"` + + // A structure for the resource. + Resource *Resource `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLakeFormationOptInsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLakeFormationOptInsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Principal != nil { + if err := s.Principal.Validate(); err != nil { + invalidParams.AddNested("Principal", err.(request.ErrInvalidParams)) + } + } + if s.Resource != nil { + if err := s.Resource.Validate(); err != nil { + invalidParams.AddNested("Resource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListLakeFormationOptInsInput) SetMaxResults(v int64) *ListLakeFormationOptInsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLakeFormationOptInsInput) SetNextToken(v string) *ListLakeFormationOptInsInput { + s.NextToken = &v + return s +} + +// SetPrincipal sets the Principal field's value. +func (s *ListLakeFormationOptInsInput) SetPrincipal(v *DataLakePrincipal) *ListLakeFormationOptInsInput { + s.Principal = v + return s +} + +// SetResource sets the Resource field's value. +func (s *ListLakeFormationOptInsInput) SetResource(v *Resource) *ListLakeFormationOptInsInput { + s.Resource = v + return s +} + +type ListLakeFormationOptInsOutput struct { + _ struct{} `type:"structure"` + + // A list of principal-resource pairs that have Lake Formation permissins enforced. + LakeFormationOptInsInfoList []*LakeFormationOptInsInfo `type:"list"` + + // A continuation token, if this is not the first call to retrieve this list. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLakeFormationOptInsOutput) GoString() string { + return s.String() +} + +// SetLakeFormationOptInsInfoList sets the LakeFormationOptInsInfoList field's value. +func (s *ListLakeFormationOptInsOutput) SetLakeFormationOptInsInfoList(v []*LakeFormationOptInsInfo) *ListLakeFormationOptInsOutput { + s.LakeFormationOptInsInfoList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListLakeFormationOptInsOutput) SetNextToken(v string) *ListLakeFormationOptInsOutput { + s.NextToken = &v + return s +} + type ListPermissionsInput struct { _ struct{} `type:"structure"` @@ -11415,6 +12120,12 @@ type PrincipalResourcePermissions struct { // Currently returns only as a RAM resource share ARN. AdditionalDetails *DetailsMap `type:"structure"` + // The date and time when the resource was last updated. + LastUpdated *time.Time `type:"timestamp"` + + // The user who updated the record. + LastUpdatedBy *string `min:"1" type:"string"` + // The permissions to be granted or revoked on the resource. Permissions []*string `type:"list" enum:"Permission"` @@ -11453,6 +12164,18 @@ func (s *PrincipalResourcePermissions) SetAdditionalDetails(v *DetailsMap) *Prin return s } +// SetLastUpdated sets the LastUpdated field's value. +func (s *PrincipalResourcePermissions) SetLastUpdated(v time.Time) *PrincipalResourcePermissions { + s.LastUpdated = &v + return s +} + +// SetLastUpdatedBy sets the LastUpdatedBy field's value. +func (s *PrincipalResourcePermissions) SetLastUpdatedBy(v string) *PrincipalResourcePermissions { + s.LastUpdatedBy = &v + return s +} + // SetPermissions sets the Permissions field's value. func (s *PrincipalResourcePermissions) SetPermissions(v []*string) *PrincipalResourcePermissions { s.Permissions = v @@ -11667,6 +12390,11 @@ func (s *QueryPlanningContext) SetTransactionId(v string) *QueryPlanningContext type RegisterResourceInput struct { _ struct{} `type:"structure"` + // Specifies whether the data access of tables pointing to the location can + // be managed by both Lake Formation permissions as well as Amazon S3 bucket + // policies. + HybridAccessEnabled *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the resource that you want to register. // // ResourceArn is a required field @@ -11717,6 +12445,12 @@ func (s *RegisterResourceInput) Validate() error { return nil } +// SetHybridAccessEnabled sets the HybridAccessEnabled field's value. +func (s *RegisterResourceInput) SetHybridAccessEnabled(v bool) *RegisterResourceInput { + s.HybridAccessEnabled = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *RegisterResourceInput) SetResourceArn(v string) *RegisterResourceInput { s.ResourceArn = &v @@ -12039,6 +12773,11 @@ func (s *Resource) SetTableWithColumns(v *TableWithColumnsResource) *Resource { type ResourceInfo struct { _ struct{} `type:"structure"` + // Indicates whether the data access of tables pointing to the location can + // be managed by both Lake Formation permissions as well as Amazon S3 bucket + // policies. + HybridAccessEnabled *bool `type:"boolean"` + // The date and time the resource was last modified. LastModified *time.Time `type:"timestamp"` @@ -12070,6 +12809,12 @@ func (s ResourceInfo) GoString() string { return s.String() } +// SetHybridAccessEnabled sets the HybridAccessEnabled field's value. +func (s *ResourceInfo) SetHybridAccessEnabled(v bool) *ResourceInfo { + s.HybridAccessEnabled = &v + return s +} + // SetLastModified sets the LastModified field's value. func (s *ResourceInfo) SetLastModified(v time.Time) *ResourceInfo { s.LastModified = &v @@ -13852,6 +14597,11 @@ func (s UpdateLFTagOutput) GoString() string { type UpdateResourceInput struct { _ struct{} `type:"structure"` + // Specifies whether the data access of tables pointing to the location can + // be managed by both Lake Formation permissions as well as Amazon S3 bucket + // policies. + HybridAccessEnabled *bool `type:"boolean"` + // The resource ARN. // // ResourceArn is a required field @@ -13900,6 +14650,12 @@ func (s *UpdateResourceInput) Validate() error { return nil } +// SetHybridAccessEnabled sets the HybridAccessEnabled field's value. +func (s *UpdateResourceInput) SetHybridAccessEnabled(v bool) *UpdateResourceInput { + s.HybridAccessEnabled = &v + return s +} + // SetResourceArn sets the ResourceArn field's value. func (s *UpdateResourceInput) SetResourceArn(v string) *UpdateResourceInput { s.ResourceArn = &v diff --git a/service/lakeformation/lakeformationiface/interface.go b/service/lakeformation/lakeformationiface/interface.go index 86b168e9444..5b0903bc9cb 100644 --- a/service/lakeformation/lakeformationiface/interface.go +++ b/service/lakeformation/lakeformationiface/interface.go @@ -92,6 +92,10 @@ type LakeFormationAPI interface { CreateLFTagWithContext(aws.Context, *lakeformation.CreateLFTagInput, ...request.Option) (*lakeformation.CreateLFTagOutput, error) CreateLFTagRequest(*lakeformation.CreateLFTagInput) (*request.Request, *lakeformation.CreateLFTagOutput) + CreateLakeFormationOptIn(*lakeformation.CreateLakeFormationOptInInput) (*lakeformation.CreateLakeFormationOptInOutput, error) + CreateLakeFormationOptInWithContext(aws.Context, *lakeformation.CreateLakeFormationOptInInput, ...request.Option) (*lakeformation.CreateLakeFormationOptInOutput, error) + CreateLakeFormationOptInRequest(*lakeformation.CreateLakeFormationOptInInput) (*request.Request, *lakeformation.CreateLakeFormationOptInOutput) + DeleteDataCellsFilter(*lakeformation.DeleteDataCellsFilterInput) (*lakeformation.DeleteDataCellsFilterOutput, error) DeleteDataCellsFilterWithContext(aws.Context, *lakeformation.DeleteDataCellsFilterInput, ...request.Option) (*lakeformation.DeleteDataCellsFilterOutput, error) DeleteDataCellsFilterRequest(*lakeformation.DeleteDataCellsFilterInput) (*request.Request, *lakeformation.DeleteDataCellsFilterOutput) @@ -100,6 +104,10 @@ type LakeFormationAPI interface { DeleteLFTagWithContext(aws.Context, *lakeformation.DeleteLFTagInput, ...request.Option) (*lakeformation.DeleteLFTagOutput, error) DeleteLFTagRequest(*lakeformation.DeleteLFTagInput) (*request.Request, *lakeformation.DeleteLFTagOutput) + DeleteLakeFormationOptIn(*lakeformation.DeleteLakeFormationOptInInput) (*lakeformation.DeleteLakeFormationOptInOutput, error) + DeleteLakeFormationOptInWithContext(aws.Context, *lakeformation.DeleteLakeFormationOptInInput, ...request.Option) (*lakeformation.DeleteLakeFormationOptInOutput, error) + DeleteLakeFormationOptInRequest(*lakeformation.DeleteLakeFormationOptInInput) (*request.Request, *lakeformation.DeleteLakeFormationOptInOutput) + DeleteObjectsOnCancel(*lakeformation.DeleteObjectsOnCancelInput) (*lakeformation.DeleteObjectsOnCancelOutput, error) DeleteObjectsOnCancelWithContext(aws.Context, *lakeformation.DeleteObjectsOnCancelInput, ...request.Option) (*lakeformation.DeleteObjectsOnCancelOutput, error) DeleteObjectsOnCancelRequest(*lakeformation.DeleteObjectsOnCancelInput) (*request.Request, *lakeformation.DeleteObjectsOnCancelOutput) @@ -195,6 +203,13 @@ type LakeFormationAPI interface { ListLFTagsPages(*lakeformation.ListLFTagsInput, func(*lakeformation.ListLFTagsOutput, bool) bool) error ListLFTagsPagesWithContext(aws.Context, *lakeformation.ListLFTagsInput, func(*lakeformation.ListLFTagsOutput, bool) bool, ...request.Option) error + ListLakeFormationOptIns(*lakeformation.ListLakeFormationOptInsInput) (*lakeformation.ListLakeFormationOptInsOutput, error) + ListLakeFormationOptInsWithContext(aws.Context, *lakeformation.ListLakeFormationOptInsInput, ...request.Option) (*lakeformation.ListLakeFormationOptInsOutput, error) + ListLakeFormationOptInsRequest(*lakeformation.ListLakeFormationOptInsInput) (*request.Request, *lakeformation.ListLakeFormationOptInsOutput) + + ListLakeFormationOptInsPages(*lakeformation.ListLakeFormationOptInsInput, func(*lakeformation.ListLakeFormationOptInsOutput, bool) bool) error + ListLakeFormationOptInsPagesWithContext(aws.Context, *lakeformation.ListLakeFormationOptInsInput, func(*lakeformation.ListLakeFormationOptInsOutput, bool) bool, ...request.Option) error + ListPermissions(*lakeformation.ListPermissionsInput) (*lakeformation.ListPermissionsOutput, error) ListPermissionsWithContext(aws.Context, *lakeformation.ListPermissionsInput, ...request.Option) (*lakeformation.ListPermissionsOutput, error) ListPermissionsRequest(*lakeformation.ListPermissionsInput) (*request.Request, *lakeformation.ListPermissionsOutput) diff --git a/service/pinpoint/api.go b/service/pinpoint/api.go index e6872f77cf6..774ed56f690 100644 --- a/service/pinpoint/api.go +++ b/service/pinpoint/api.go @@ -8887,8 +8887,9 @@ func (c *Pinpoint) RemoveAttributesRequest(input *RemoveAttributesInput) (req *r // RemoveAttributes API operation for Amazon Pinpoint. // -// Removes one or more attributes, of the same attribute type, from all the -// endpoints that are associated with an application. +// Removes one or more custom attributes, of the same attribute type, from the +// application. Existing endpoints still have the attributes but Amazon Pinpoint +// will stop capturing new or changed values for these attributes. // // 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 diff --git a/service/s3/api.go b/service/s3/api.go index 188e37fdcf1..cf17e8299b1 100644 --- a/service/s3/api.go +++ b/service/s3/api.go @@ -42379,6 +42379,9 @@ const ( // ReplicationStatusReplica is a ReplicationStatus enum value ReplicationStatusReplica = "REPLICA" + + // ReplicationStatusCompleted is a ReplicationStatus enum value + ReplicationStatusCompleted = "COMPLETED" ) // ReplicationStatus_Values returns all elements of the ReplicationStatus enum @@ -42388,6 +42391,7 @@ func ReplicationStatus_Values() []string { ReplicationStatusPending, ReplicationStatusFailed, ReplicationStatusReplica, + ReplicationStatusCompleted, } } diff --git a/service/s3/examples_test.go b/service/s3/examples_test.go index 1552ad38a69..cf293cccece 100644 --- a/service/s3/examples_test.go +++ b/service/s3/examples_test.go @@ -125,16 +125,12 @@ func ExampleS3_CopyObject_shared00() { fmt.Println(result) } -// To create a bucket in a specific region -// The following example creates a bucket. The request specifies an AWS region where -// to create the bucket. +// To create a bucket +// The following example creates a bucket. func ExampleS3_CreateBucket_shared00() { svc := s3.New(session.New()) input := &s3.CreateBucketInput{ Bucket: aws.String("examplebucket"), - CreateBucketConfiguration: &s3.CreateBucketConfiguration{ - LocationConstraint: aws.String("eu-west-1"), - }, } result, err := svc.CreateBucket(input) @@ -159,12 +155,16 @@ func ExampleS3_CreateBucket_shared00() { fmt.Println(result) } -// To create a bucket -// The following example creates a bucket. +// To create a bucket in a specific region +// The following example creates a bucket. The request specifies an AWS region where +// to create the bucket. func ExampleS3_CreateBucket_shared01() { svc := s3.New(session.New()) input := &s3.CreateBucketInput{ Bucket: aws.String("examplebucket"), + CreateBucketConfiguration: &s3.CreateBucketConfiguration{ + LocationConstraint: aws.String("eu-west-1"), + }, } result, err := svc.CreateBucket(input) @@ -452,15 +452,15 @@ func ExampleS3_DeleteObject_shared01() { fmt.Println(result) } -// To remove tag set from an object -// The following example removes tag set associated with the specified object. If the -// bucket is versioning enabled, the operation removes tag set from the latest object -// version. +// To remove tag set from an object version +// The following example removes tag set associated with the specified object version. +// The request specifies both the object key and object version. func ExampleS3_DeleteObjectTagging_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), } result, err := svc.DeleteObjectTagging(input) @@ -481,15 +481,15 @@ func ExampleS3_DeleteObjectTagging_shared00() { fmt.Println(result) } -// To remove tag set from an object version -// The following example removes tag set associated with the specified object version. -// The request specifies both the object key and object version. +// To remove tag set from an object +// The following example removes tag set associated with the specified object. If the +// bucket is versioning enabled, the operation removes tag set from the latest object +// version. func ExampleS3_DeleteObjectTagging_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.DeleteObjectTagging(input) @@ -903,13 +903,15 @@ func ExampleS3_GetBucketWebsite_shared00() { fmt.Println(result) } -// To retrieve an object -// The following example retrieves an object for an S3 bucket. +// To retrieve a byte range of an object +// The following example retrieves an object for an S3 bucket. The request specifies +// the range header to retrieve a specific byte range. func ExampleS3_GetObject_shared00() { svc := s3.New(session.New()) input := &s3.GetObjectInput{ Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Key: aws.String("SampleFile.txt"), + Range: aws.String("bytes=0-9"), } result, err := svc.GetObject(input) @@ -934,15 +936,13 @@ func ExampleS3_GetObject_shared00() { fmt.Println(result) } -// To retrieve a byte range of an object -// The following example retrieves an object for an S3 bucket. The request specifies -// the range header to retrieve a specific byte range. +// To retrieve an object +// The following example retrieves an object for an S3 bucket. func ExampleS3_GetObject_shared01() { svc := s3.New(session.New()) input := &s3.GetObjectInput{ Bucket: aws.String("examplebucket"), - Key: aws.String("SampleFile.txt"), - Range: aws.String("bytes=0-9"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.GetObject(input) @@ -1158,16 +1158,12 @@ func ExampleS3_ListBuckets_shared00() { fmt.Println(result) } -// List next set of multipart uploads when previous result is truncated -// The following example specifies the upload-id-marker and key-marker from previous -// truncated response to retrieve next setup of multipart uploads. +// To list in-progress multipart uploads on a bucket +// The following example lists in-progress multipart uploads on a specific bucket. func ExampleS3_ListMultipartUploads_shared00() { svc := s3.New(session.New()) input := &s3.ListMultipartUploadsInput{ - Bucket: aws.String("examplebucket"), - KeyMarker: aws.String("nextkeyfrompreviousresponse"), - MaxUploads: aws.Int64(2), - UploadIdMarker: aws.String("valuefrompreviousresponse"), + Bucket: aws.String("examplebucket"), } result, err := svc.ListMultipartUploads(input) @@ -1188,12 +1184,16 @@ func ExampleS3_ListMultipartUploads_shared00() { fmt.Println(result) } -// To list in-progress multipart uploads on a bucket -// The following example lists in-progress multipart uploads on a specific bucket. +// List next set of multipart uploads when previous result is truncated +// The following example specifies the upload-id-marker and key-marker from previous +// truncated response to retrieve next setup of multipart uploads. func ExampleS3_ListMultipartUploads_shared01() { svc := s3.New(session.New()) input := &s3.ListMultipartUploadsInput{ - Bucket: aws.String("examplebucket"), + Bucket: aws.String("examplebucket"), + KeyMarker: aws.String("nextkeyfrompreviousresponse"), + MaxUploads: aws.Int64(2), + UploadIdMarker: aws.String("valuefrompreviousresponse"), } result, err := svc.ListMultipartUploads(input) @@ -1748,16 +1748,18 @@ func ExampleS3_PutBucketWebsite_shared00() { fmt.Println(result) } -// To upload an object -// The following example uploads an object to a versioning-enabled bucket. The source -// file is specified using Windows file syntax. S3 returns VersionId of the newly created -// object. +// To upload an object and specify server-side encryption and object tags +// The following example uploads an object. The request specifies the optional server-side +// encryption option. The request also specifies optional object tags. If the bucket +// is versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared00() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("exampleobject"), + ServerSideEncryption: aws.String("AES256"), + Tagging: aws.String("key1=value1&key2=value2"), } result, err := svc.PutObject(input) @@ -1778,18 +1780,15 @@ func ExampleS3_PutObject_shared00() { fmt.Println(result) } -// To upload an object and specify server-side encryption and object tags -// The following example uploads an object. The request specifies the optional server-side -// encryption option. The request also specifies optional object tags. If the bucket -// is versioning enabled, S3 returns version ID in response. +// To create an object. +// The following example creates an object. If the bucket is versioning enabled, S3 +// returns version ID in response. func ExampleS3_PutObject_shared01() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - ServerSideEncryption: aws.String("AES256"), - Tagging: aws.String("key1=value1&key2=value2"), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("objectkey"), } result, err := svc.PutObject(input) @@ -1810,15 +1809,17 @@ func ExampleS3_PutObject_shared01() { fmt.Println(result) } -// To create an object. -// The following example creates an object. If the bucket is versioning enabled, S3 -// returns version ID in response. +// To upload an object (specify optional headers) +// The following example uploads an object. The request specifies optional request headers +// to directs S3 to use specific storage class and use server-side encryption. func ExampleS3_PutObject_shared02() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("objectkey"), + Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + ServerSideEncryption: aws.String("AES256"), + StorageClass: aws.String("STANDARD_IA"), } result, err := svc.PutObject(input) @@ -1839,19 +1840,16 @@ func ExampleS3_PutObject_shared02() { fmt.Println(result) } -// To upload object and specify user-defined metadata -// The following example creates an object. The request also specifies optional metadata. -// If the bucket is versioning enabled, S3 returns version ID in response. +// To upload an object and specify optional tags +// The following example uploads an object. The request specifies optional object tags. +// The bucket is versioned, therefore S3 returns version ID of the newly created object. func ExampleS3_PutObject_shared03() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - Metadata: map[string]*string{ - "metadata1": aws.String("value1"), - "metadata2": aws.String("value2"), - }, + Body: aws.ReadSeekCloser(strings.NewReader("c:\\HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + Tagging: aws.String("key1=value1&key2=value2"), } result, err := svc.PutObject(input) @@ -1872,16 +1870,19 @@ func ExampleS3_PutObject_shared03() { fmt.Println(result) } -// To upload an object and specify optional tags -// The following example uploads an object. The request specifies optional object tags. -// The bucket is versioned, therefore S3 returns version ID of the newly created object. +// To upload object and specify user-defined metadata +// The following example creates an object. The request also specifies optional metadata. +// If the bucket is versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared04() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("c:\\HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - Tagging: aws.String("key1=value1&key2=value2"), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("exampleobject"), + Metadata: map[string]*string{ + "metadata1": aws.String("value1"), + "metadata2": aws.String("value2"), + }, } result, err := svc.PutObject(input) @@ -1933,17 +1934,16 @@ func ExampleS3_PutObject_shared05() { fmt.Println(result) } -// To upload an object (specify optional headers) -// The following example uploads an object. The request specifies optional request headers -// to directs S3 to use specific storage class and use server-side encryption. +// To upload an object +// The following example uploads an object to a versioning-enabled bucket. The source +// file is specified using Windows file syntax. S3 returns VersionId of the newly created +// object. func ExampleS3_PutObject_shared06() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - ServerSideEncryption: aws.String("AES256"), - StorageClass: aws.String("STANDARD_IA"), + Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.PutObject(input) @@ -2104,18 +2104,17 @@ func ExampleS3_UploadPart_shared00() { fmt.Println(result) } -// To upload a part by copying byte range from an existing object as data source -// The following example uploads a part of a multipart upload by copying a specified -// byte range from an existing object as data source. +// To upload a part by copying data from an existing object as data source +// The following example uploads a part of a multipart upload by copying data from an +// existing object as data source. func ExampleS3_UploadPartCopy_shared00() { svc := s3.New(session.New()) input := &s3.UploadPartCopyInput{ - Bucket: aws.String("examplebucket"), - CopySource: aws.String("/bucketname/sourceobjectkey"), - CopySourceRange: aws.String("bytes=1-100000"), - Key: aws.String("examplelargeobject"), - PartNumber: aws.Int64(2), - UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), + Bucket: aws.String("examplebucket"), + CopySource: aws.String("/bucketname/sourceobjectkey"), + Key: aws.String("examplelargeobject"), + PartNumber: aws.Int64(1), + UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), } result, err := svc.UploadPartCopy(input) @@ -2136,17 +2135,18 @@ func ExampleS3_UploadPartCopy_shared00() { fmt.Println(result) } -// To upload a part by copying data from an existing object as data source -// The following example uploads a part of a multipart upload by copying data from an -// existing object as data source. +// To upload a part by copying byte range from an existing object as data source +// The following example uploads a part of a multipart upload by copying a specified +// byte range from an existing object as data source. func ExampleS3_UploadPartCopy_shared01() { svc := s3.New(session.New()) input := &s3.UploadPartCopyInput{ - Bucket: aws.String("examplebucket"), - CopySource: aws.String("/bucketname/sourceobjectkey"), - Key: aws.String("examplelargeobject"), - PartNumber: aws.Int64(1), - UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), + Bucket: aws.String("examplebucket"), + CopySource: aws.String("/bucketname/sourceobjectkey"), + CopySourceRange: aws.String("bytes=1-100000"), + Key: aws.String("examplelargeobject"), + PartNumber: aws.Int64(2), + UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), } result, err := svc.UploadPartCopy(input)