diff --git a/CHANGELOG.md b/CHANGELOG.md index 50efad9cc67..e9628867235 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +Release v1.53.17 (2024-06-05) +=== + +### Service Client Updates +* `service/globalaccelerator`: Updates service API and documentation +* `service/glue`: Updates service API and documentation + * AWS Glue now supports native SaaS connectivity: Salesforce connector available now +* `service/s3`: Updates service API and examples + * Added new params copySource and key to copyObject API for supporting S3 Access Grants plugin. These changes will not change any of the existing S3 API functionality. + Release v1.53.16 (2024-06-04) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 794501e8437..ec06aeb0552 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -5297,69 +5297,157 @@ var awsPartition = partition{ endpointKey{ Region: "af-south-1", }: endpoint{}, + endpointKey{ + Region: "af-south-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-east-1", }: endpoint{}, + endpointKey{ + Region: "ap-east-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-northeast-1", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-northeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-northeast-3", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-south-1", }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-southeast-1", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "eu-north-1", }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "eu-south-1", }: endpoint{}, + endpointKey{ + Region: "eu-south-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "eu-west-2", }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "eu-west-3", }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "il-central-1", }: endpoint{}, + endpointKey{ + Region: "il-central-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "me-south-1", }: endpoint{}, + endpointKey{ + Region: "me-south-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "sa-east-1", }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "us-east-1", }: endpoint{}, + endpointKey{ + Region: "us-east-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "us-east-2", }: endpoint{}, + endpointKey{ + Region: "us-east-2", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "us-west-1", }: endpoint{}, + endpointKey{ + Region: "us-west-1", + Variant: dualStackVariant, + }: endpoint{}, endpointKey{ Region: "us-west-2", }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: dualStackVariant, + }: endpoint{}, }, }, "cloudcontrolapi": service{ @@ -9264,9 +9352,21 @@ var awsPartition = partition{ endpointKey{ Region: "ca-central-1", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "directconnect-fips.ca-central-1.amazonaws.com", + }, endpointKey{ Region: "ca-west-1", }: endpoint{}, + endpointKey{ + Region: "ca-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "directconnect-fips.ca-west-1.amazonaws.com", + }, endpointKey{ Region: "eu-central-1", }: endpoint{}, @@ -9291,6 +9391,24 @@ var awsPartition = partition{ endpointKey{ Region: "eu-west-3", }: endpoint{}, + endpointKey{ + Region: "fips-ca-central-1", + }: endpoint{ + Hostname: "directconnect-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ca-west-1", + }: endpoint{ + Hostname: "directconnect-fips.ca-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-west-1", + }, + Deprecated: boxedTrue, + }, endpointKey{ Region: "fips-us-east-1", }: endpoint{ diff --git a/aws/version.go b/aws/version.go index 9662a71e399..5cca8f87274 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.53.16" +const SDKVersion = "1.53.17" diff --git a/models/apis/globalaccelerator/2018-08-08/api-2.json b/models/apis/globalaccelerator/2018-08-08/api-2.json index c7523151282..2262ed8d39d 100644 --- a/models/apis/globalaccelerator/2018-08-08/api-2.json +++ b/models/apis/globalaccelerator/2018-08-08/api-2.json @@ -5,12 +5,14 @@ "endpointPrefix":"globalaccelerator", "jsonVersion":"1.1", "protocol":"json", + "protocols":["json"], "serviceFullName":"AWS Global Accelerator", "serviceId":"Global Accelerator", "signatureVersion":"v4", "signingName":"globalaccelerator", "targetPrefix":"GlobalAccelerator_V20180706", - "uid":"globalaccelerator-2018-08-08" + "uid":"globalaccelerator-2018-08-08", + "auth":["aws.auth#sigv4"] }, "operations":{ "AddCustomRoutingEndpoints":{ @@ -2329,6 +2331,7 @@ "AcceleratorArn":{"shape":"GenericString"}, "Name":{"shape":"GenericString"}, "IpAddressType":{"shape":"IpAddressType"}, + "IpAddresses":{"shape":"IpAddresses"}, "Enabled":{"shape":"GenericBoolean"} } }, @@ -2379,6 +2382,7 @@ "AcceleratorArn":{"shape":"GenericString"}, "Name":{"shape":"GenericString"}, "IpAddressType":{"shape":"IpAddressType"}, + "IpAddresses":{"shape":"IpAddresses"}, "Enabled":{"shape":"GenericBoolean"} } }, diff --git a/models/apis/globalaccelerator/2018-08-08/docs-2.json b/models/apis/globalaccelerator/2018-08-08/docs-2.json index f8d71507f48..06c21b928a7 100644 --- a/models/apis/globalaccelerator/2018-08-08/docs-2.json +++ b/models/apis/globalaccelerator/2018-08-08/docs-2.json @@ -1004,7 +1004,9 @@ "refs": { "CreateAcceleratorRequest$IpAddresses": "

Optionally, if you've added your own IP address pool to Global Accelerator (BYOIP), you can choose an IPv4 address from your own pool to use for the accelerator's static IPv4 address when you create an accelerator.

After you bring an address range to Amazon Web Services, it appears in your account as an address pool. When you create an accelerator, you can assign one IPv4 address from your range to it. Global Accelerator assigns you a second static IPv4 address from an Amazon IP address range. If you bring two IPv4 address ranges to Amazon Web Services, you can assign one IPv4 address from each range to your accelerator. This restriction is because Global Accelerator assigns each address range to a different network zone, for high availability.

You can specify one or two addresses, separated by a space. Do not include the /32 suffix.

Note that you can't update IP addresses for an existing accelerator. To change them, you must create a new accelerator with the new addresses.

For more information, see Bring your own IP addresses (BYOIP) in the Global Accelerator Developer Guide.

", "CreateCustomRoutingAcceleratorRequest$IpAddresses": "

Optionally, if you've added your own IP address pool to Global Accelerator (BYOIP), you can choose an IPv4 address from your own pool to use for the accelerator's static IPv4 address when you create an accelerator.

After you bring an address range to Amazon Web Services, it appears in your account as an address pool. When you create an accelerator, you can assign one IPv4 address from your range to it. Global Accelerator assigns you a second static IPv4 address from an Amazon IP address range. If you bring two IPv4 address ranges to Amazon Web Services, you can assign one IPv4 address from each range to your accelerator. This restriction is because Global Accelerator assigns each address range to a different network zone, for high availability.

You can specify one or two addresses, separated by a space. Do not include the /32 suffix.

Note that you can't update IP addresses for an existing accelerator. To change them, you must create a new accelerator with the new addresses.

For more information, see Bring your own IP addresses (BYOIP) in the Global Accelerator Developer Guide.

", - "IpSet$IpAddresses": "

The array of IP addresses in the IP address set. An IP address set can have a maximum of two IP addresses.

" + "IpSet$IpAddresses": "

The array of IP addresses in the IP address set. An IP address set can have a maximum of two IP addresses.

", + "UpdateAcceleratorRequest$IpAddresses": "

The IP addresses for an accelerator.

", + "UpdateCustomRoutingAcceleratorRequest$IpAddresses": "

The IP addresses for an accelerator.

" } }, "IpSet": { diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index 3f10ff3dae6..64184535edd 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -10,7 +10,8 @@ "serviceId":"Glue", "signatureVersion":"v4", "targetPrefix":"AWSGlue", - "uid":"glue-2017-03-31" + "uid":"glue-2017-03-31", + "auth":["aws.auth#sigv4"] }, "operations":{ "BatchCreatePartition":{ @@ -3327,6 +3328,11 @@ } }, "shapes":{ + "AWSManagedClientApplicationReference":{ + "type":"string", + "max":2048, + "pattern":"\\S+" + }, "AccessDeniedException":{ "type":"structure", "members":{ @@ -3553,6 +3559,43 @@ "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\t]*" }, + "AuthenticationConfiguration":{ + "type":"structure", + "members":{ + "AuthenticationType":{"shape":"AuthenticationType"}, + "SecretArn":{"shape":"SecretArn"}, + "OAuth2Properties":{"shape":"OAuth2Properties"} + } + }, + "AuthenticationConfigurationInput":{ + "type":"structure", + "members":{ + "AuthenticationType":{"shape":"AuthenticationType"}, + "SecretArn":{"shape":"SecretArn"}, + "OAuth2Properties":{"shape":"OAuth2PropertiesInput"} + } + }, + "AuthenticationType":{ + "type":"string", + "enum":[ + "BASIC", + "OAUTH2", + "CUSTOM" + ] + }, + "AuthorizationCode":{ + "type":"string", + "max":4096, + "min":1, + "pattern":"\\S+" + }, + "AuthorizationCodeProperties":{ + "type":"structure", + "members":{ + "AuthorizationCode":{"shape":"AuthorizationCode"}, + "RedirectUri":{"shape":"RedirectUri"} + } + }, "BackfillError":{ "type":"structure", "members":{ @@ -4854,7 +4897,11 @@ "PhysicalConnectionRequirements":{"shape":"PhysicalConnectionRequirements"}, "CreationTime":{"shape":"Timestamp"}, "LastUpdatedTime":{"shape":"Timestamp"}, - "LastUpdatedBy":{"shape":"NameString"} + "LastUpdatedBy":{"shape":"NameString"}, + "Status":{"shape":"ConnectionStatus"}, + "StatusReason":{"shape":"LongValueString"}, + "LastConnectionValidationTime":{"shape":"Timestamp"}, + "AuthenticationConfiguration":{"shape":"AuthenticationConfiguration"} } }, "ConnectionInput":{ @@ -4870,7 +4917,9 @@ "ConnectionType":{"shape":"ConnectionType"}, "MatchCriteria":{"shape":"MatchCriteria"}, "ConnectionProperties":{"shape":"ConnectionProperties"}, - "PhysicalConnectionRequirements":{"shape":"PhysicalConnectionRequirements"} + "PhysicalConnectionRequirements":{"shape":"PhysicalConnectionRequirements"}, + "AuthenticationConfiguration":{"shape":"AuthenticationConfigurationInput"}, + "ValidateCredentials":{"shape":"Boolean"} } }, "ConnectionList":{ @@ -4937,7 +4986,16 @@ "KAFKA_SASL_GSSAPI_KEYTAB", "KAFKA_SASL_GSSAPI_KRB5_CONF", "KAFKA_SASL_GSSAPI_SERVICE", - "KAFKA_SASL_GSSAPI_PRINCIPAL" + "KAFKA_SASL_GSSAPI_PRINCIPAL", + "ROLE_ARN" + ] + }, + "ConnectionStatus":{ + "type":"string", + "enum":[ + "READY", + "IN_PROGRESS", + "FAILED" ] }, "ConnectionType":{ @@ -4949,7 +5007,8 @@ "KAFKA", "NETWORK", "MARKETPLACE", - "CUSTOM" + "CUSTOM", + "SALESFORCE" ] }, "ConnectionsList":{ @@ -5232,6 +5291,7 @@ "CreateConnectionResponse":{ "type":"structure", "members":{ + "CreateConnectionStatus":{"shape":"ConnectionStatus"} } }, "CreateCrawlerRequest":{ @@ -7108,10 +7168,15 @@ "FederationSourceErrorCode":{ "type":"string", "enum":[ + "AccessDeniedException", + "EntityNotFoundException", + "InvalidCredentialsException", + "InvalidInputException", "InvalidResponseException", "OperationTimeoutException", "OperationNotSupportedException", "InternalServiceException", + "PartialFailureException", "ThrottlingException" ] }, @@ -9753,6 +9818,11 @@ } }, "LongValue":{"type":"long"}, + "LongValueString":{ + "type":"string", + "max":16384, + "min":1 + }, "MLTransform":{ "type":"structure", "members":{ @@ -10129,6 +10199,40 @@ "type":"string", "box":true }, + "OAuth2ClientApplication":{ + "type":"structure", + "members":{ + "UserManagedClientApplicationClientId":{"shape":"UserManagedClientApplicationClientId"}, + "AWSManagedClientApplicationReference":{"shape":"AWSManagedClientApplicationReference"} + } + }, + "OAuth2GrantType":{ + "type":"string", + "enum":[ + "AUTHORIZATION_CODE", + "CLIENT_CREDENTIALS", + "JWT_BEARER" + ] + }, + "OAuth2Properties":{ + "type":"structure", + "members":{ + "OAuth2GrantType":{"shape":"OAuth2GrantType"}, + "OAuth2ClientApplication":{"shape":"OAuth2ClientApplication"}, + "TokenUrl":{"shape":"TokenUrl"}, + "TokenUrlParametersMap":{"shape":"TokenUrlParametersMap"} + } + }, + "OAuth2PropertiesInput":{ + "type":"structure", + "members":{ + "OAuth2GrantType":{"shape":"OAuth2GrantType"}, + "OAuth2ClientApplication":{"shape":"OAuth2ClientApplication"}, + "TokenUrl":{"shape":"TokenUrl"}, + "TokenUrlParametersMap":{"shape":"TokenUrlParametersMap"}, + "AuthorizationCodeProperties":{"shape":"AuthorizationCodeProperties"} + } + }, "OneInput":{ "type":"list", "member":{"shape":"NodeId"}, @@ -10763,6 +10867,11 @@ "RecrawlBehavior":{"shape":"RecrawlBehavior"} } }, + "RedirectUri":{ + "type":"string", + "max":512, + "pattern":"^(https?):\\/\\/[^\\s/$.?#].[^\\s]*$" + }, "RedshiftSource":{ "type":"structure", "required":[ @@ -11550,6 +11659,10 @@ "TableList":{"shape":"TableList"} } }, + "SecretArn":{ + "type":"string", + "pattern":"^arn:aws(-(cn|us-gov|iso(-[bef])?))?:secretsmanager:.*$" + }, "SecurityConfiguration":{ "type":"structure", "members":{ @@ -12592,6 +12705,26 @@ "Timestamp":{"type":"timestamp"}, "TimestampValue":{"type":"timestamp"}, "Token":{"type":"string"}, + "TokenUrl":{ + "type":"string", + "max":256, + "pattern":"^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]" + }, + "TokenUrlParameterKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TokenUrlParameterValue":{ + "type":"string", + "max":512, + "min":1 + }, + "TokenUrlParametersMap":{ + "type":"map", + "key":{"shape":"TokenUrlParameterKey"}, + "value":{"shape":"TokenUrlParameterValue"} + }, "Topk":{ "type":"integer", "box":true, @@ -13345,6 +13478,11 @@ "type":"list", "member":{"shape":"UserDefinedFunction"} }, + "UserManagedClientApplicationClientId":{ + "type":"string", + "max":2048, + "pattern":"\\S+" + }, "ValidationException":{ "type":"structure", "members":{ diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index aeda896997c..26487b25994 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -217,6 +217,12 @@ "UpdateWorkflow": "

Updates an existing workflow.

" }, "shapes": { + "AWSManagedClientApplicationReference": { + "base": null, + "refs": { + "OAuth2ClientApplication$AWSManagedClientApplicationReference": "

The reference to the SaaS-side client app that is Amazon Web Services managed.

" + } + }, "AccessDeniedException": { "base": "

Access to a resource was denied.

", "refs": { @@ -396,6 +402,37 @@ "UpdateSourceControlFromJobRequest$AuthToken": "

The value of the authorization token.

" } }, + "AuthenticationConfiguration": { + "base": "

A structure containing the authentication configuration.

", + "refs": { + "Connection$AuthenticationConfiguration": "

The authentication properties of the connection.

" + } + }, + "AuthenticationConfigurationInput": { + "base": "

A structure containing the authentication configuration in the CreateConnection request.

", + "refs": { + "ConnectionInput$AuthenticationConfiguration": "

The authentication properties of the connection. Used for a Salesforce connection.

" + } + }, + "AuthenticationType": { + "base": null, + "refs": { + "AuthenticationConfiguration$AuthenticationType": "

A structure containing the authentication configuration.

", + "AuthenticationConfigurationInput$AuthenticationType": "

A structure containing the authentication configuration in the CreateConnection request.

" + } + }, + "AuthorizationCode": { + "base": null, + "refs": { + "AuthorizationCodeProperties$AuthorizationCode": "

An authorization code to be used in the third leg of the AUTHORIZATION_CODE grant workflow. This is a single-use code which becomes invalid once exchanged for an access token, thus it is acceptable to have this value as a request parameter.

" + } + }, + "AuthorizationCodeProperties": { + "base": "

The set of properties required for the the OAuth2 AUTHORIZATION_CODE grant type workflow.

", + "refs": { + "OAuth2PropertiesInput$AuthorizationCodeProperties": "

The set of properties required for the the OAuth2 AUTHORIZATION_CODE grant type.

" + } + }, "BackfillError": { "base": "

A list of errors that can occur when registering partition indexes for an existing table.

These errors give the details about why an index registration failed and provide a limited number of partitions in the response, so that you can fix the partitions at fault and try registering the index again. The most common set of errors that can occur are categorized as follows:

", "refs": { @@ -811,6 +848,7 @@ "refs": { "CatalogImportStatus$ImportCompleted": "

True if the migration has completed, or False otherwise.

", "CodeGenNodeArg$Param": "

True if the value is used as a parameter.

", + "ConnectionInput$ValidateCredentials": "

A flag to validate the credentials during create connection. Used for a Salesforce connection. Default is true.

", "ConnectionPasswordEncryption$ReturnConnectionPasswordEncrypted": "

When the ReturnConnectionPasswordEncrypted flag is set to \"true\", passwords remain encrypted in the responses of GetConnection and GetConnections. This encryption takes effect independently from catalog encryption.

", "CrawlerMetrics$StillEstimating": "

True if the crawler is still estimating how long it will take to complete this run.

", "GetConnectionRequest$HidePassword": "

Allows you to retrieve the connection metadata without returning the password. For instance, the Glue console uses this flag to retrieve the connection, and does not display the password. Set this parameter when the caller might not have permission to use the KMS key to decrypt the password, but it does have permission to access the rest of the connection properties.

", @@ -1568,11 +1606,18 @@ "ConnectionProperties$key": null } }, + "ConnectionStatus": { + "base": null, + "refs": { + "Connection$Status": "

The status of the connection. Can be one of: READY, IN_PROGRESS, or FAILED.

", + "CreateConnectionResponse$CreateConnectionStatus": "

The status of the connection creation request. The request can take some time for certain authentication types, for example when creating an OAuth connection with token exchange over VPC.

" + } + }, "ConnectionType": { "base": null, "refs": { "Connection$ConnectionType": "

The type of the connection. Currently, SFTP is not supported.

", - "ConnectionInput$ConnectionType": "

The type of the connection. Currently, these types are supported:

SFTP is not supported.

For more information about how optional ConnectionProperties are used to configure features in Glue, consult Glue connection properties.

For more information about how optional ConnectionProperties are used to configure features in Glue Studio, consult Using connectors and connections.

", + "ConnectionInput$ConnectionType": "

The type of the connection. Currently, these types are supported:

SFTP is not supported.

For more information about how optional ConnectionProperties are used to configure features in Glue, consult Glue connection properties.

For more information about how optional ConnectionProperties are used to configure features in Glue Studio, consult Using connectors and connections.

", "GetConnectionsFilter$ConnectionType": "

The type of connections to return. Currently, SFTP is not supported.

" } }, @@ -5404,6 +5449,12 @@ "Statement$CompletedOn": "

The unix time and date that the job definition was completed.

" } }, + "LongValueString": { + "base": null, + "refs": { + "Connection$StatusReason": "

The reason for the connection status.

" + } + }, "MLTransform": { "base": "

A structure for a machine learning transform.

", "refs": { @@ -5720,7 +5771,7 @@ "Condition$CrawlerName": "

The name of the crawler to which this condition applies.

", "Connection$Name": "

The name of the connection definition.

", "Connection$LastUpdatedBy": "

The user, group, or role that last updated this connection definition.

", - "ConnectionInput$Name": "

The name of the connection. Connection will not function as expected without a name.

", + "ConnectionInput$Name": "

The name of the connection.

", "ConnectionPasswordEncryption$AwsKmsKeyId": "

An KMS key that is used to encrypt the connection password.

If connection password protection is enabled, the caller of CreateConnection and UpdateConnection needs at least kms:Encrypt permission on the specified KMS key, to encrypt passwords before storing them in the Data Catalog.

You can set the decrypt permission to enable or restrict access on the password key according to your security requirements.

", "ContextWords$member": null, "Crawler$Name": "

The name of the crawler.

", @@ -5930,7 +5981,7 @@ "PartitionIndex$IndexName": "

The name of the partition index.

", "PartitionIndexDescriptor$IndexName": "

The name of the partition index.

", "PhysicalConnectionRequirements$SubnetId": "

The subnet ID used by the connection.

", - "PhysicalConnectionRequirements$AvailabilityZone": "

The connection's Availability Zone. This field is redundant because the specified subnet implies the Availability Zone to be used. Currently the field must be populated, but it will be deprecated in the future.

", + "PhysicalConnectionRequirements$AvailabilityZone": "

The connection's Availability Zone.

", "Predecessor$JobName": "

The name of the job definition used by the predecessor job run.

", "PutWorkflowRunPropertiesRequest$Name": "

Name of the workflow which was run.

", "ResumeWorkflowRunRequest$Name": "

The name of the workflow to resume.

", @@ -6357,6 +6408,32 @@ "QuerySessionContext$ClusterId": "

An identifier string for the consumer cluster.

" } }, + "OAuth2ClientApplication": { + "base": "

The OAuth2 client app used for the connection.

", + "refs": { + "OAuth2Properties$OAuth2ClientApplication": "

The client application type. For example, AWS_MANAGED or USER_MANAGED.

", + "OAuth2PropertiesInput$OAuth2ClientApplication": "

The client application type in the CreateConnection request. For example, AWS_MANAGED or USER_MANAGED.

" + } + }, + "OAuth2GrantType": { + "base": null, + "refs": { + "OAuth2Properties$OAuth2GrantType": "

The OAuth2 grant type. For example, AUTHORIZATION_CODE, JWT_BEARER, or CLIENT_CREDENTIALS.

", + "OAuth2PropertiesInput$OAuth2GrantType": "

The OAuth2 grant type in the CreateConnection request. For example, AUTHORIZATION_CODE, JWT_BEARER, or CLIENT_CREDENTIALS.

" + } + }, + "OAuth2Properties": { + "base": "

A structure containing properties for OAuth2 authentication.

", + "refs": { + "AuthenticationConfiguration$OAuth2Properties": "

The properties for OAuth2 authentication.

" + } + }, + "OAuth2PropertiesInput": { + "base": "

A structure containing properties for OAuth2 in the CreateConnection request.

", + "refs": { + "AuthenticationConfigurationInput$OAuth2Properties": "

The properties for OAuth2 authentication in the CreateConnection request.

" + } + }, "OneInput": { "base": null, "refs": { @@ -6795,10 +6872,10 @@ } }, "PhysicalConnectionRequirements": { - "base": "

Specifies the physical requirements for a connection.

", + "base": "

The OAuth client app in GetConnection response.

", "refs": { - "Connection$PhysicalConnectionRequirements": "

A map of physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup, that are needed to make this connection successfully.

", - "ConnectionInput$PhysicalConnectionRequirements": "

A map of physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup, that are needed to successfully make this connection.

" + "Connection$PhysicalConnectionRequirements": "

The physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup, that are needed to make this connection successfully.

", + "ConnectionInput$PhysicalConnectionRequirements": "

The physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup, that are needed to successfully make this connection.

" } }, "PiiType": { @@ -7041,6 +7118,12 @@ "UpdateCrawlerRequest$RecrawlPolicy": "

A policy that specifies whether to crawl the entire dataset again, or to crawl only folders that were added since the last crawler run.

" } }, + "RedirectUri": { + "base": null, + "refs": { + "AuthorizationCodeProperties$RedirectUri": "

The redirect URI where the user gets redirected to by authorization server when issuing an authorization code. The URI is subsequently used when the authorization code is exchanged for an access token.

" + } + }, "RedshiftSource": { "base": "

Specifies an Amazon Redshift data store.

", "refs": { @@ -7663,6 +7746,13 @@ "refs": { } }, + "SecretArn": { + "base": null, + "refs": { + "AuthenticationConfiguration$SecretArn": "

The secret manager ARN to store credentials.

", + "AuthenticationConfigurationInput$SecretArn": "

The secret manager ARN to store credentials in the CreateConnection request.

" + } + }, "SecurityConfiguration": { "base": "

Specifies a security configuration.

", "refs": { @@ -8410,20 +8500,20 @@ "base": null, "refs": { "Action$Timeout": "

The JobRun timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours). This overrides the timeout value set in the parent job.

", - "CreateJobRequest$Timeout": "

The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", + "CreateJobRequest$Timeout": "

The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours) for batch jobs.

Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.

", "CreateMLTransformRequest$Timeout": "

The timeout of the task run for this transform in minutes. This is the maximum time that a task run for this transform can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", "CreateSessionRequest$Timeout": "

The number of minutes before session times out. Default for Spark ETL jobs is 48 hours (2880 minutes), the maximum session lifetime for this job type. Consult the documentation for other job types.

", "CreateSessionRequest$IdleTimeout": "

The number of minutes when idle before session times out. Default for Spark ETL jobs is value of Timeout. Consult the documentation for other job types.

", "GetDataQualityRuleRecommendationRunResponse$Timeout": "

The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", "GetDataQualityRulesetEvaluationRunResponse$Timeout": "

The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", "GetMLTransformResponse$Timeout": "

The timeout for a task run for this transform in minutes. This is the maximum time that a task run for this transform can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", - "Job$Timeout": "

The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", - "JobRun$Timeout": "

The JobRun timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. This value overrides the timeout value set in the parent job.

The maximum value for timeout for batch jobs is 7 days or 10080 minutes. The default is 2880 minutes (48 hours) for batch jobs.

Any existing Glue jobs that have a greater timeout value are defaulted to 7 days. For instance you have specified a timeout of 20 days for a batch job, it will be stopped on the 7th day.

Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.

", - "JobUpdate$Timeout": "

The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", + "Job$Timeout": "

The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours) for batch jobs.

Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.

", + "JobRun$Timeout": "

The JobRun timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. This value overrides the timeout value set in the parent job.

Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.

", + "JobUpdate$Timeout": "

The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours) for batch jobs.

Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.

", "MLTransform$Timeout": "

The timeout in minutes of the machine learning transform.

", "StartDataQualityRuleRecommendationRunRequest$Timeout": "

The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", "StartDataQualityRulesetEvaluationRunRequest$Timeout": "

The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

", - "StartJobRunRequest$Timeout": "

The JobRun timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. This value overrides the timeout value set in the parent job.

Streaming jobs do not have a timeout. The default for non-streaming jobs is 2,880 minutes (48 hours).

", + "StartJobRunRequest$Timeout": "

The JobRun timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. This value overrides the timeout value set in the parent job.

Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.

", "UpdateMLTransformRequest$Timeout": "

The timeout for a task run for this transform in minutes. This is the maximum time that a task run for this transform can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).

" } }, @@ -8436,8 +8526,9 @@ "ColumnStatisticsTaskRun$LastUpdated": "

The last point in time when this task was modified.

", "ColumnStatisticsTaskRun$StartTime": "

The start time of the task.

", "ColumnStatisticsTaskRun$EndTime": "

The end time of the task.

", - "Connection$CreationTime": "

The time that this connection definition was created.

", - "Connection$LastUpdatedTime": "

The last time that this connection definition was updated.

", + "Connection$CreationTime": "

The timestamp of the time that this connection definition was created.

", + "Connection$LastUpdatedTime": "

The timestamp of the last time the connection definition was updated.

", + "Connection$LastConnectionValidationTime": "

A timestamp of the time this connection was last validated.

", "Crawler$CreationTime": "

The time that the crawler was created.

", "Crawler$LastUpdated": "

The time that the crawler was last updated.

", "CrawlerHistory$StartTime": "

The date and time on which the crawl started.

", @@ -8586,6 +8677,32 @@ "SearchTablesResponse$NextToken": "

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

" } }, + "TokenUrl": { + "base": null, + "refs": { + "OAuth2Properties$TokenUrl": "

The URL of the provider's authentication server, to exchange an authorization code for an access token.

", + "OAuth2PropertiesInput$TokenUrl": "

The URL of the provider's authentication server, to exchange an authorization code for an access token.

" + } + }, + "TokenUrlParameterKey": { + "base": null, + "refs": { + "TokenUrlParametersMap$key": null + } + }, + "TokenUrlParameterValue": { + "base": null, + "refs": { + "TokenUrlParametersMap$value": null + } + }, + "TokenUrlParametersMap": { + "base": null, + "refs": { + "OAuth2Properties$TokenUrlParametersMap": "

A map of parameters that are added to the token GET request.

", + "OAuth2PropertiesInput$TokenUrlParametersMap": "

A map of parameters that are added to the token GET request.

" + } + }, "Topk": { "base": null, "refs": { @@ -9114,6 +9231,12 @@ "GetUserDefinedFunctionsResponse$UserDefinedFunctions": "

A list of requested function definitions.

" } }, + "UserManagedClientApplicationClientId": { + "base": null, + "refs": { + "OAuth2ClientApplication$UserManagedClientApplicationClientId": "

The client application clientID if the ClientAppType is USER_MANAGED.

" + } + }, "ValidationException": { "base": "

A value could not be validated.

", "refs": { @@ -9246,7 +9369,7 @@ "TableInput$ViewOriginalText": "

Included for Apache Hive compatibility. Not used in the normal course of Glue operations. If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.

", "TableInput$ViewExpandedText": "

Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

", "ViewRepresentation$ViewOriginalText": "

The SELECT query provided by the customer during CREATE VIEW DDL. This SQL is not used during a query on a view (ViewExpandedText is used instead). ViewOriginalText is used for cases like SHOW CREATE VIEW where users want to see the original DDL command that created the view.

", - "ViewRepresentation$ViewExpandedText": "

The expanded SQL for the view. This SQL is used by engines while processing a query on a view. Engines may perform operations during view creation to transform ViewOriginalText to ViewExpandedText. For example:

" + "ViewRepresentation$ViewExpandedText": "

The expanded SQL for the view. This SQL is used by engines while processing a query on a view. Engines may perform operations during view creation to transform ViewOriginalText to ViewExpandedText. For example:

" } }, "WorkerType": { diff --git a/models/apis/s3/2006-03-01/api-2.json b/models/apis/s3/2006-03-01/api-2.json index a2405745d5c..cf7aa8e0df0 100644 --- a/models/apis/s3/2006-03-01/api-2.json +++ b/models/apis/s3/2006-03-01/api-2.json @@ -2036,6 +2036,7 @@ }, "CopySource":{ "shape":"CopySource", + "contextParam":{"name":"CopySource"}, "location":"header", "locationName":"x-amz-copy-source" }, @@ -2086,6 +2087,7 @@ }, "Key":{ "shape":"ObjectKey", + "contextParam":{"name":"Key"}, "location":"uri", "locationName":"Key" }, diff --git a/models/apis/s3/2006-03-01/endpoint-rule-set-1.json b/models/apis/s3/2006-03-01/endpoint-rule-set-1.json index 66392c565c4..1ef9810cdac 100644 --- a/models/apis/s3/2006-03-01/endpoint-rule-set-1.json +++ b/models/apis/s3/2006-03-01/endpoint-rule-set-1.json @@ -68,6 +68,11 @@ "documentation": "The S3 Prefix used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Prefix.", "type": "String" }, + "CopySource": { + "required": false, + "documentation": "The Copy Source used for Copy Object request. This is an optional parameter that will be set automatically for operations that are scoped to Copy Source.", + "type": "String" + }, "DisableAccessPoints": { "required": false, "documentation": "Internal parameter to disable Access Point Buckets", diff --git a/models/apis/s3/2006-03-01/endpoint-tests-1.json b/models/apis/s3/2006-03-01/endpoint-tests-1.json index da5ccda22e5..b6575d8e020 100644 --- a/models/apis/s3/2006-03-01/endpoint-tests-1.json +++ b/models/apis/s3/2006-03-01/endpoint-tests-1.json @@ -1793,6 +1793,33 @@ "Key": "key" } }, + { + "documentation": "virtual addressing, aws-global region with Copy Source, and Key uses the global endpoint. Copy Source and Key parameters should not be used in endpoint evaluation.", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.amazonaws.com" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "CopySource": "/copy/source", + "Key": "key" + } + }, { "documentation": "virtual addressing, aws-global region with fips uses the regional fips endpoint", "expect": { diff --git a/models/apis/s3/2006-03-01/examples-1.json b/models/apis/s3/2006-03-01/examples-1.json index 6f5e995e7db..e2c4125fd6d 100644 --- a/models/apis/s3/2006-03-01/examples-1.json +++ b/models/apis/s3/2006-03-01/examples-1.json @@ -334,10 +334,12 @@ "Delete": { "Objects": [ { - "Key": "objectkey1" + "Key": "HappyFace.jpg", + "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" }, { - "Key": "objectkey2" + "Key": "HappyFace.jpg", + "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" } ], "Quiet": false @@ -346,14 +348,12 @@ "output": { "Deleted": [ { - "DeleteMarker": "true", - "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", - "Key": "objectkey1" + "Key": "HappyFace.jpg", + "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" }, { - "DeleteMarker": "true", - "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", - "Key": "objectkey2" + "Key": "HappyFace.jpg", + "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" } ] }, @@ -363,9 +363,9 @@ "output": { } }, - "description": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", - "id": "to-delete-multiple-objects-from-a-versioned-bucket-1483146248805", - "title": "To delete multiple objects from a versioned bucket" + "description": "The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.", + "id": "to-delete-multiple-object-versions-from-a-versioned-bucket-1483147087737", + "title": "To delete multiple object versions from a versioned bucket" }, { "input": { @@ -373,12 +373,10 @@ "Delete": { "Objects": [ { - "Key": "HappyFace.jpg", - "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" + "Key": "objectkey1" }, { - "Key": "HappyFace.jpg", - "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" + "Key": "objectkey2" } ], "Quiet": false @@ -387,12 +385,14 @@ "output": { "Deleted": [ { - "Key": "HappyFace.jpg", - "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" + "DeleteMarker": "true", + "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", + "Key": "objectkey1" }, { - "Key": "HappyFace.jpg", - "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" + "DeleteMarker": "true", + "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", + "Key": "objectkey2" } ] }, @@ -402,9 +402,9 @@ "output": { } }, - "description": "The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.", - "id": "to-delete-multiple-object-versions-from-a-versioned-bucket-1483147087737", - "title": "To delete multiple object versions from a versioned bucket" + "description": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", + "id": "to-delete-multiple-objects-from-a-versioned-bucket-1483146248805", + "title": "To delete multiple objects from a versioned bucket" } ], "GetBucketCors": [ @@ -1570,14 +1570,33 @@ "Body": "filetoupload", "Bucket": "examplebucket", "Key": "exampleobject", - "Metadata": { - "metadata1": "value1", - "metadata2": "value2" + "ServerSideEncryption": "AES256", + "Tagging": "key1=value1&key2=value2" + }, + "output": { + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "ServerSideEncryption": "AES256", + "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt" + }, + "comments": { + "input": { + }, + "output": { } }, + "description": "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.", + "id": "to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831", + "title": "To upload an object and specify server-side encryption and object tags" + }, + { + "input": { + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "objectkey" + }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0" + "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ" }, "comments": { "input": { @@ -1585,9 +1604,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 creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", + "id": "to-create-an-object-1483147613675", + "title": "To create an object." }, { "input": { @@ -1637,31 +1656,15 @@ "input": { "Body": "filetoupload", "Bucket": "examplebucket", - "Key": "objectkey" - }, - "output": { - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ" - }, - "comments": { - "input": { - }, - "output": { + "Key": "exampleobject", + "Metadata": { + "metadata1": "value1", + "metadata2": "value2" } }, - "description": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", - "id": "to-create-an-object-1483147613675", - "title": "To create an object." - }, - { - "input": { - "Body": "HappyFace.jpg", - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" - }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk" + "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0" }, "comments": { "input": { @@ -1669,9 +1672,9 @@ "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" + "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": { @@ -1696,16 +1699,13 @@ }, { "input": { - "Body": "filetoupload", + "Body": "HappyFace.jpg", "Bucket": "examplebucket", - "Key": "exampleobject", - "ServerSideEncryption": "AES256", - "Tagging": "key1=value1&key2=value2" + "Key": "HappyFace.jpg" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "ServerSideEncryption": "AES256", - "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt" + "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk" }, "comments": { "input": { @@ -1713,9 +1713,9 @@ "output": { } }, - "description": "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.", - "id": "to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831", - "title": "To upload an object and specify server-side encryption and object tags" + "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": [ diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 30c2ac8bca2..ddc93c85e14 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -2951,28 +2951,116 @@ }, "cloud9" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "af-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + } } }, "cloudcontrolapi" : { @@ -5249,8 +5337,18 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "directconnect-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "directconnect-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -5259,6 +5357,20 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "directconnect-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "directconnect-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" diff --git a/service/globalaccelerator/api.go b/service/globalaccelerator/api.go index ebda53a728c..22e3eedab9a 100644 --- a/service/globalaccelerator/api.go +++ b/service/globalaccelerator/api.go @@ -14103,6 +14103,9 @@ type UpdateAcceleratorInput struct { // the value can be IPV4 or DUAL_STACK. IpAddressType *string `type:"string" enum:"IpAddressType"` + // The IP addresses for an accelerator. + IpAddresses []*string `type:"list"` + // The name of the accelerator. The name can have a maximum of 64 characters, // must contain only alphanumeric characters, periods (.), or hyphens (-), and // must not begin or end with a hyphen or period. @@ -14158,6 +14161,12 @@ func (s *UpdateAcceleratorInput) SetIpAddressType(v string) *UpdateAcceleratorIn return s } +// SetIpAddresses sets the IpAddresses field's value. +func (s *UpdateAcceleratorInput) SetIpAddresses(v []*string) *UpdateAcceleratorInput { + s.IpAddresses = v + return s +} + // SetName sets the Name field's value. func (s *UpdateAcceleratorInput) SetName(v string) *UpdateAcceleratorInput { s.Name = &v @@ -14474,6 +14483,9 @@ type UpdateCustomRoutingAcceleratorInput struct { // the value must be IPV4. IpAddressType *string `type:"string" enum:"IpAddressType"` + // The IP addresses for an accelerator. + IpAddresses []*string `type:"list"` + // The name of the accelerator. The name can have a maximum of 64 characters, // must contain only alphanumeric characters, periods (.), or hyphens (-), and // must not begin or end with a hyphen or period. @@ -14529,6 +14541,12 @@ func (s *UpdateCustomRoutingAcceleratorInput) SetIpAddressType(v string) *Update return s } +// SetIpAddresses sets the IpAddresses field's value. +func (s *UpdateCustomRoutingAcceleratorInput) SetIpAddresses(v []*string) *UpdateCustomRoutingAcceleratorInput { + s.IpAddresses = v + return s +} + // SetName sets the Name field's value. func (s *UpdateCustomRoutingAcceleratorInput) SetName(v string) *UpdateCustomRoutingAcceleratorInput { s.Name = &v diff --git a/service/glue/api.go b/service/glue/api.go index 766d13b40ab..4df57b13995 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -2189,7 +2189,6 @@ func (c *Glue) CreateConnectionRequest(input *CreateConnectionInput) (req *reque output = &CreateConnectionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -22974,6 +22973,183 @@ func (s *AuditContext) SetRequestedColumns(v []*string) *AuditContext { return s } +// A structure containing the authentication configuration. +type AuthenticationConfiguration struct { + _ struct{} `type:"structure"` + + // A structure containing the authentication configuration. + AuthenticationType *string `type:"string" enum:"AuthenticationType"` + + // The properties for OAuth2 authentication. + OAuth2Properties *OAuth2Properties `type:"structure"` + + // The secret manager ARN to store credentials. + SecretArn *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 AuthenticationConfiguration) 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 AuthenticationConfiguration) GoString() string { + return s.String() +} + +// SetAuthenticationType sets the AuthenticationType field's value. +func (s *AuthenticationConfiguration) SetAuthenticationType(v string) *AuthenticationConfiguration { + s.AuthenticationType = &v + return s +} + +// SetOAuth2Properties sets the OAuth2Properties field's value. +func (s *AuthenticationConfiguration) SetOAuth2Properties(v *OAuth2Properties) *AuthenticationConfiguration { + s.OAuth2Properties = v + return s +} + +// SetSecretArn sets the SecretArn field's value. +func (s *AuthenticationConfiguration) SetSecretArn(v string) *AuthenticationConfiguration { + s.SecretArn = &v + return s +} + +// A structure containing the authentication configuration in the CreateConnection +// request. +type AuthenticationConfigurationInput_ struct { + _ struct{} `type:"structure"` + + // A structure containing the authentication configuration in the CreateConnection + // request. + AuthenticationType *string `type:"string" enum:"AuthenticationType"` + + // The properties for OAuth2 authentication in the CreateConnection request. + OAuth2Properties *OAuth2PropertiesInput_ `type:"structure"` + + // The secret manager ARN to store credentials in the CreateConnection request. + SecretArn *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 AuthenticationConfigurationInput_) 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 AuthenticationConfigurationInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuthenticationConfigurationInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuthenticationConfigurationInput_"} + if s.OAuth2Properties != nil { + if err := s.OAuth2Properties.Validate(); err != nil { + invalidParams.AddNested("OAuth2Properties", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthenticationType sets the AuthenticationType field's value. +func (s *AuthenticationConfigurationInput_) SetAuthenticationType(v string) *AuthenticationConfigurationInput_ { + s.AuthenticationType = &v + return s +} + +// SetOAuth2Properties sets the OAuth2Properties field's value. +func (s *AuthenticationConfigurationInput_) SetOAuth2Properties(v *OAuth2PropertiesInput_) *AuthenticationConfigurationInput_ { + s.OAuth2Properties = v + return s +} + +// SetSecretArn sets the SecretArn field's value. +func (s *AuthenticationConfigurationInput_) SetSecretArn(v string) *AuthenticationConfigurationInput_ { + s.SecretArn = &v + return s +} + +// The set of properties required for the the OAuth2 AUTHORIZATION_CODE grant +// type workflow. +type AuthorizationCodeProperties struct { + _ struct{} `type:"structure"` + + // An authorization code to be used in the third leg of the AUTHORIZATION_CODE + // grant workflow. This is a single-use code which becomes invalid once exchanged + // for an access token, thus it is acceptable to have this value as a request + // parameter. + AuthorizationCode *string `min:"1" type:"string"` + + // The redirect URI where the user gets redirected to by authorization server + // when issuing an authorization code. The URI is subsequently used when the + // authorization code is exchanged for an access token. + RedirectUri *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 AuthorizationCodeProperties) 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 AuthorizationCodeProperties) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AuthorizationCodeProperties) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AuthorizationCodeProperties"} + if s.AuthorizationCode != nil && len(*s.AuthorizationCode) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AuthorizationCode", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizationCode sets the AuthorizationCode field's value. +func (s *AuthorizationCodeProperties) SetAuthorizationCode(v string) *AuthorizationCodeProperties { + s.AuthorizationCode = &v + return s +} + +// SetRedirectUri sets the RedirectUri field's value. +func (s *AuthorizationCodeProperties) SetRedirectUri(v string) *AuthorizationCodeProperties { + s.RedirectUri = &v + return s +} + // A list of errors that can occur when registering partition indexes for an // existing table. // @@ -29741,6 +29917,9 @@ func (s *ConfusionMatrix) SetNumTruePositives(v int64) *ConfusionMatrix { type Connection struct { _ struct{} `type:"structure"` + // The authentication properties of the connection. + AuthenticationConfiguration *AuthenticationConfiguration `type:"structure"` + // These key-value pairs define parameters for the connection: // // * HOST - The host URI: either the fully qualified domain name (FQDN) or @@ -29885,16 +30064,19 @@ type Connection struct { // The type of the connection. Currently, SFTP is not supported. ConnectionType *string `type:"string" enum:"ConnectionType"` - // The time that this connection definition was created. + // The timestamp of the time that this connection definition was created. CreationTime *time.Time `type:"timestamp"` // The description of the connection. Description *string `type:"string"` + // A timestamp of the time this connection was last validated. + LastConnectionValidationTime *time.Time `type:"timestamp"` + // The user, group, or role that last updated this connection definition. LastUpdatedBy *string `min:"1" type:"string"` - // The last time that this connection definition was updated. + // The timestamp of the last time the connection definition was updated. LastUpdatedTime *time.Time `type:"timestamp"` // A list of criteria that can be used in selecting this connection. @@ -29903,9 +30085,15 @@ type Connection struct { // The name of the connection definition. Name *string `min:"1" type:"string"` - // A map of physical connection requirements, such as virtual private cloud - // (VPC) and SecurityGroup, that are needed to make this connection successfully. + // The physical connection requirements, such as virtual private cloud (VPC) + // and SecurityGroup, that are needed to make this connection successfully. PhysicalConnectionRequirements *PhysicalConnectionRequirements `type:"structure"` + + // The status of the connection. Can be one of: READY, IN_PROGRESS, or FAILED. + Status *string `type:"string" enum:"ConnectionStatus"` + + // The reason for the connection status. + StatusReason *string `min:"1" type:"string"` } // String returns the string representation. @@ -29926,6 +30114,12 @@ func (s Connection) GoString() string { return s.String() } +// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. +func (s *Connection) SetAuthenticationConfiguration(v *AuthenticationConfiguration) *Connection { + s.AuthenticationConfiguration = v + return s +} + // SetConnectionProperties sets the ConnectionProperties field's value. func (s *Connection) SetConnectionProperties(v map[string]*string) *Connection { s.ConnectionProperties = v @@ -29950,6 +30144,12 @@ func (s *Connection) SetDescription(v string) *Connection { return s } +// SetLastConnectionValidationTime sets the LastConnectionValidationTime field's value. +func (s *Connection) SetLastConnectionValidationTime(v time.Time) *Connection { + s.LastConnectionValidationTime = &v + return s +} + // SetLastUpdatedBy sets the LastUpdatedBy field's value. func (s *Connection) SetLastUpdatedBy(v string) *Connection { s.LastUpdatedBy = &v @@ -29980,10 +30180,25 @@ func (s *Connection) SetPhysicalConnectionRequirements(v *PhysicalConnectionRequ return s } +// SetStatus sets the Status field's value. +func (s *Connection) SetStatus(v string) *Connection { + s.Status = &v + return s +} + +// SetStatusReason sets the StatusReason field's value. +func (s *Connection) SetStatusReason(v string) *Connection { + s.StatusReason = &v + return s +} + // A structure that is used to specify a connection to create or update. type ConnectionInput struct { _ struct{} `type:"structure"` + // The authentication properties of the connection. Used for a Salesforce connection. + AuthenticationConfiguration *AuthenticationConfigurationInput_ `type:"structure"` + // These key-value pairs define parameters for the connection. // // ConnectionProperties is a required field @@ -30016,6 +30231,9 @@ type ConnectionInput struct { // Connections use the following ConnectionParameters. Required: CONNECTION_URL. // Required: All of (USERNAME, PASSWORD) or SECRET_ID. // + // * SALESFORCE - Designates a connection to Salesforce using OAuth authencation. + // Requires the AuthenticationConfiguration member to be configured. + // // * NETWORK - Designates a network connection to a data source within an // Amazon Virtual Private Cloud environment (Amazon VPC). NETWORK Connections // do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements. @@ -30049,15 +30267,18 @@ type ConnectionInput struct { // A list of criteria that can be used in selecting this connection. MatchCriteria []*string `type:"list"` - // The name of the connection. Connection will not function as expected without - // a name. + // The name of the connection. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // A map of physical connection requirements, such as virtual private cloud - // (VPC) and SecurityGroup, that are needed to successfully make this connection. + // The physical connection requirements, such as virtual private cloud (VPC) + // and SecurityGroup, that are needed to successfully make this connection. PhysicalConnectionRequirements *PhysicalConnectionRequirements `type:"structure"` + + // A flag to validate the credentials during create connection. Used for a Salesforce + // connection. Default is true. + ValidateCredentials *bool `type:"boolean"` } // String returns the string representation. @@ -30093,6 +30314,11 @@ func (s *ConnectionInput) Validate() error { if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } + if s.AuthenticationConfiguration != nil { + if err := s.AuthenticationConfiguration.Validate(); err != nil { + invalidParams.AddNested("AuthenticationConfiguration", err.(request.ErrInvalidParams)) + } + } if s.PhysicalConnectionRequirements != nil { if err := s.PhysicalConnectionRequirements.Validate(); err != nil { invalidParams.AddNested("PhysicalConnectionRequirements", err.(request.ErrInvalidParams)) @@ -30105,6 +30331,12 @@ func (s *ConnectionInput) Validate() error { return nil } +// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value. +func (s *ConnectionInput) SetAuthenticationConfiguration(v *AuthenticationConfigurationInput_) *ConnectionInput { + s.AuthenticationConfiguration = v + return s +} + // SetConnectionProperties sets the ConnectionProperties field's value. func (s *ConnectionInput) SetConnectionProperties(v map[string]*string) *ConnectionInput { s.ConnectionProperties = v @@ -30141,6 +30373,12 @@ func (s *ConnectionInput) SetPhysicalConnectionRequirements(v *PhysicalConnectio return s } +// SetValidateCredentials sets the ValidateCredentials field's value. +func (s *ConnectionInput) SetValidateCredentials(v bool) *ConnectionInput { + s.ValidateCredentials = &v + return s +} + // The data structure used by the Data Catalog to encrypt the password as part // of CreateConnection or UpdateConnection and store it in the ENCRYPTED_PASSWORD // field in the connection properties. You can enable catalog encryption or @@ -31689,6 +31927,11 @@ func (s *CreateConnectionInput) SetTags(v map[string]*string) *CreateConnectionI type CreateConnectionOutput struct { _ struct{} `type:"structure"` + + // The status of the connection creation request. The request can take some + // time for certain authentication types, for example when creating an OAuth + // connection with token exchange over VPC. + CreateConnectionStatus *string `type:"string" enum:"ConnectionStatus"` } // String returns the string representation. @@ -31709,6 +31952,12 @@ func (s CreateConnectionOutput) GoString() string { return s.String() } +// SetCreateConnectionStatus sets the CreateConnectionStatus field's value. +func (s *CreateConnectionOutput) SetCreateConnectionStatus(v string) *CreateConnectionOutput { + s.CreateConnectionStatus = &v + return s +} + type CreateCrawlerInput struct { _ struct{} `type:"structure"` @@ -33148,7 +33397,12 @@ type CreateJobInput struct { // The job timeout in minutes. This is the maximum time that a job run can consume // resources before it is terminated and enters TIMEOUT status. The default - // is 2,880 minutes (48 hours). + // is 2,880 minutes (48 hours) for batch jobs. + // + // Streaming jobs must have timeout values less than 7 days or 10080 minutes. + // When the value is left blank, the job will be restarted after 7 days based + // if you have not setup a maintenance window. If you have setup maintenance + // window, it will be restarted during the maintenance window after 7 days. Timeout *int64 `min:"1" type:"integer"` // The type of predefined worker that is allocated when a job runs. Accepts @@ -54206,7 +54460,12 @@ type Job struct { // The job timeout in minutes. This is the maximum time that a job run can consume // resources before it is terminated and enters TIMEOUT status. The default - // is 2,880 minutes (48 hours). + // is 2,880 minutes (48 hours) for batch jobs. + // + // Streaming jobs must have timeout values less than 7 days or 10080 minutes. + // When the value is left blank, the job will be restarted after 7 days based + // if you have not setup a maintenance window. If you have setup maintenance + // window, it will be restarted during the maintenance window after 7 days. Timeout *int64 `min:"1" type:"integer"` // The type of predefined worker that is allocated when a job runs. Accepts @@ -54825,13 +55084,6 @@ type JobRun struct { // consume resources before it is terminated and enters TIMEOUT status. This // value overrides the timeout value set in the parent job. // - // The maximum value for timeout for batch jobs is 7 days or 10080 minutes. - // The default is 2880 minutes (48 hours) for batch jobs. - // - // Any existing Glue jobs that have a greater timeout value are defaulted to - // 7 days. For instance you have specified a timeout of 20 days for a batch - // job, it will be stopped on the 7th day. - // // Streaming jobs must have timeout values less than 7 days or 10080 minutes. // When the value is left blank, the job will be restarted after 7 days based // if you have not setup a maintenance window. If you have setup maintenance @@ -55222,7 +55474,12 @@ type JobUpdate struct { // The job timeout in minutes. This is the maximum time that a job run can consume // resources before it is terminated and enters TIMEOUT status. The default - // is 2,880 minutes (48 hours). + // is 2,880 minutes (48 hours) for batch jobs. + // + // Streaming jobs must have timeout values less than 7 days or 10080 minutes. + // When the value is left blank, the job will be restarted after 7 days based + // if you have not setup a maintenance window. If you have setup maintenance + // window, it will be restarted during the maintenance window after 7 days. Timeout *int64 `min:"1" type:"integer"` // The type of predefined worker that is allocated when a job runs. Accepts @@ -60428,6 +60685,194 @@ func (s *NullValueField) SetValue(v string) *NullValueField { return s } +// The OAuth2 client app used for the connection. +type OAuth2ClientApplication struct { + _ struct{} `type:"structure"` + + // The reference to the SaaS-side client app that is Amazon Web Services managed. + AWSManagedClientApplicationReference *string `type:"string"` + + // The client application clientID if the ClientAppType is USER_MANAGED. + UserManagedClientApplicationClientId *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 OAuth2ClientApplication) 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 OAuth2ClientApplication) GoString() string { + return s.String() +} + +// SetAWSManagedClientApplicationReference sets the AWSManagedClientApplicationReference field's value. +func (s *OAuth2ClientApplication) SetAWSManagedClientApplicationReference(v string) *OAuth2ClientApplication { + s.AWSManagedClientApplicationReference = &v + return s +} + +// SetUserManagedClientApplicationClientId sets the UserManagedClientApplicationClientId field's value. +func (s *OAuth2ClientApplication) SetUserManagedClientApplicationClientId(v string) *OAuth2ClientApplication { + s.UserManagedClientApplicationClientId = &v + return s +} + +// A structure containing properties for OAuth2 authentication. +type OAuth2Properties struct { + _ struct{} `type:"structure"` + + // The client application type. For example, AWS_MANAGED or USER_MANAGED. + OAuth2ClientApplication *OAuth2ClientApplication `type:"structure"` + + // The OAuth2 grant type. For example, AUTHORIZATION_CODE, JWT_BEARER, or CLIENT_CREDENTIALS. + OAuth2GrantType *string `type:"string" enum:"OAuth2GrantType"` + + // The URL of the provider's authentication server, to exchange an authorization + // code for an access token. + TokenUrl *string `type:"string"` + + // A map of parameters that are added to the token GET request. + TokenUrlParametersMap map[string]*string `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 OAuth2Properties) 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 OAuth2Properties) GoString() string { + return s.String() +} + +// SetOAuth2ClientApplication sets the OAuth2ClientApplication field's value. +func (s *OAuth2Properties) SetOAuth2ClientApplication(v *OAuth2ClientApplication) *OAuth2Properties { + s.OAuth2ClientApplication = v + return s +} + +// SetOAuth2GrantType sets the OAuth2GrantType field's value. +func (s *OAuth2Properties) SetOAuth2GrantType(v string) *OAuth2Properties { + s.OAuth2GrantType = &v + return s +} + +// SetTokenUrl sets the TokenUrl field's value. +func (s *OAuth2Properties) SetTokenUrl(v string) *OAuth2Properties { + s.TokenUrl = &v + return s +} + +// SetTokenUrlParametersMap sets the TokenUrlParametersMap field's value. +func (s *OAuth2Properties) SetTokenUrlParametersMap(v map[string]*string) *OAuth2Properties { + s.TokenUrlParametersMap = v + return s +} + +// A structure containing properties for OAuth2 in the CreateConnection request. +type OAuth2PropertiesInput_ struct { + _ struct{} `type:"structure"` + + // The set of properties required for the the OAuth2 AUTHORIZATION_CODE grant + // type. + AuthorizationCodeProperties *AuthorizationCodeProperties `type:"structure"` + + // The client application type in the CreateConnection request. For example, + // AWS_MANAGED or USER_MANAGED. + OAuth2ClientApplication *OAuth2ClientApplication `type:"structure"` + + // The OAuth2 grant type in the CreateConnection request. For example, AUTHORIZATION_CODE, + // JWT_BEARER, or CLIENT_CREDENTIALS. + OAuth2GrantType *string `type:"string" enum:"OAuth2GrantType"` + + // The URL of the provider's authentication server, to exchange an authorization + // code for an access token. + TokenUrl *string `type:"string"` + + // A map of parameters that are added to the token GET request. + TokenUrlParametersMap map[string]*string `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 OAuth2PropertiesInput_) 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 OAuth2PropertiesInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OAuth2PropertiesInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OAuth2PropertiesInput_"} + if s.AuthorizationCodeProperties != nil { + if err := s.AuthorizationCodeProperties.Validate(); err != nil { + invalidParams.AddNested("AuthorizationCodeProperties", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAuthorizationCodeProperties sets the AuthorizationCodeProperties field's value. +func (s *OAuth2PropertiesInput_) SetAuthorizationCodeProperties(v *AuthorizationCodeProperties) *OAuth2PropertiesInput_ { + s.AuthorizationCodeProperties = v + return s +} + +// SetOAuth2ClientApplication sets the OAuth2ClientApplication field's value. +func (s *OAuth2PropertiesInput_) SetOAuth2ClientApplication(v *OAuth2ClientApplication) *OAuth2PropertiesInput_ { + s.OAuth2ClientApplication = v + return s +} + +// SetOAuth2GrantType sets the OAuth2GrantType field's value. +func (s *OAuth2PropertiesInput_) SetOAuth2GrantType(v string) *OAuth2PropertiesInput_ { + s.OAuth2GrantType = &v + return s +} + +// SetTokenUrl sets the TokenUrl field's value. +func (s *OAuth2PropertiesInput_) SetTokenUrl(v string) *OAuth2PropertiesInput_ { + s.TokenUrl = &v + return s +} + +// SetTokenUrlParametersMap sets the TokenUrlParametersMap field's value. +func (s *OAuth2PropertiesInput_) SetTokenUrlParametersMap(v map[string]*string) *OAuth2PropertiesInput_ { + s.TokenUrlParametersMap = v + return s +} + // A structure representing an open format table. type OpenTableFormatInput_ struct { _ struct{} `type:"structure"` @@ -61493,13 +61938,11 @@ func (s *PermissionTypeMismatchException) RequestID() string { return s.RespMetadata.RequestID } -// Specifies the physical requirements for a connection. +// The OAuth client app in GetConnection response. type PhysicalConnectionRequirements struct { _ struct{} `type:"structure"` - // The connection's Availability Zone. This field is redundant because the specified - // subnet implies the Availability Zone to be used. Currently the field must - // be populated, but it will be deprecated in the future. + // The connection's Availability Zone. AvailabilityZone *string `min:"1" type:"string"` // The security group ID list used by the connection. @@ -70204,8 +70647,10 @@ type StartJobRunInput struct { // consume resources before it is terminated and enters TIMEOUT status. This // value overrides the timeout value set in the parent job. // - // Streaming jobs do not have a timeout. The default for non-streaming jobs - // is 2,880 minutes (48 hours). + // Streaming jobs must have timeout values less than 7 days or 10080 minutes. + // When the value is left blank, the job will be restarted after 7 days based + // if you have not setup a maintenance window. If you have setup maintenance + // window, it will be restarted during the maintenance window after 7 days. Timeout *int64 `min:"1" type:"integer"` // The type of predefined worker that is allocated when a job runs. Accepts @@ -77851,7 +78296,7 @@ type ViewRepresentation struct { // a query on a view. Engines may perform operations during view creation to // transform ViewOriginalText to ViewExpandedText. For example: // - // * Fully qualify identifiers: SELECT * from table1 → SELECT * from db1.table1 + // * Fully qualified identifiers: SELECT * from table1 -> SELECT * from db1.table1 ViewExpandedText *string `type:"string"` // The SELECT query provided by the customer during CREATE VIEW DDL. This SQL @@ -78455,6 +78900,26 @@ func AggFunction_Values() []string { } } +const ( + // AuthenticationTypeBasic is a AuthenticationType enum value + AuthenticationTypeBasic = "BASIC" + + // AuthenticationTypeOauth2 is a AuthenticationType enum value + AuthenticationTypeOauth2 = "OAUTH2" + + // AuthenticationTypeCustom is a AuthenticationType enum value + AuthenticationTypeCustom = "CUSTOM" +) + +// AuthenticationType_Values returns all elements of the AuthenticationType enum +func AuthenticationType_Values() []string { + return []string{ + AuthenticationTypeBasic, + AuthenticationTypeOauth2, + AuthenticationTypeCustom, + } +} + const ( // BackfillErrorCodeEncryptedPartitionError is a BackfillErrorCode enum value BackfillErrorCodeEncryptedPartitionError = "ENCRYPTED_PARTITION_ERROR" @@ -78841,6 +79306,9 @@ const ( // ConnectionPropertyKeyKafkaSaslGssapiPrincipal is a ConnectionPropertyKey enum value ConnectionPropertyKeyKafkaSaslGssapiPrincipal = "KAFKA_SASL_GSSAPI_PRINCIPAL" + + // ConnectionPropertyKeyRoleArn is a ConnectionPropertyKey enum value + ConnectionPropertyKeyRoleArn = "ROLE_ARN" ) // ConnectionPropertyKey_Values returns all elements of the ConnectionPropertyKey enum @@ -78888,6 +79356,27 @@ func ConnectionPropertyKey_Values() []string { ConnectionPropertyKeyKafkaSaslGssapiKrb5Conf, ConnectionPropertyKeyKafkaSaslGssapiService, ConnectionPropertyKeyKafkaSaslGssapiPrincipal, + ConnectionPropertyKeyRoleArn, + } +} + +const ( + // ConnectionStatusReady is a ConnectionStatus enum value + ConnectionStatusReady = "READY" + + // ConnectionStatusInProgress is a ConnectionStatus enum value + ConnectionStatusInProgress = "IN_PROGRESS" + + // ConnectionStatusFailed is a ConnectionStatus enum value + ConnectionStatusFailed = "FAILED" +) + +// ConnectionStatus_Values returns all elements of the ConnectionStatus enum +func ConnectionStatus_Values() []string { + return []string{ + ConnectionStatusReady, + ConnectionStatusInProgress, + ConnectionStatusFailed, } } @@ -78912,6 +79401,9 @@ const ( // ConnectionTypeCustom is a ConnectionType enum value ConnectionTypeCustom = "CUSTOM" + + // ConnectionTypeSalesforce is a ConnectionType enum value + ConnectionTypeSalesforce = "SALESFORCE" ) // ConnectionType_Values returns all elements of the ConnectionType enum @@ -78924,6 +79416,7 @@ func ConnectionType_Values() []string { ConnectionTypeNetwork, ConnectionTypeMarketplace, ConnectionTypeCustom, + ConnectionTypeSalesforce, } } @@ -79220,6 +79713,18 @@ func ExistCondition_Values() []string { } const ( + // FederationSourceErrorCodeAccessDeniedException is a FederationSourceErrorCode enum value + FederationSourceErrorCodeAccessDeniedException = "AccessDeniedException" + + // FederationSourceErrorCodeEntityNotFoundException is a FederationSourceErrorCode enum value + FederationSourceErrorCodeEntityNotFoundException = "EntityNotFoundException" + + // FederationSourceErrorCodeInvalidCredentialsException is a FederationSourceErrorCode enum value + FederationSourceErrorCodeInvalidCredentialsException = "InvalidCredentialsException" + + // FederationSourceErrorCodeInvalidInputException is a FederationSourceErrorCode enum value + FederationSourceErrorCodeInvalidInputException = "InvalidInputException" + // FederationSourceErrorCodeInvalidResponseException is a FederationSourceErrorCode enum value FederationSourceErrorCodeInvalidResponseException = "InvalidResponseException" @@ -79232,6 +79737,9 @@ const ( // FederationSourceErrorCodeInternalServiceException is a FederationSourceErrorCode enum value FederationSourceErrorCodeInternalServiceException = "InternalServiceException" + // FederationSourceErrorCodePartialFailureException is a FederationSourceErrorCode enum value + FederationSourceErrorCodePartialFailureException = "PartialFailureException" + // FederationSourceErrorCodeThrottlingException is a FederationSourceErrorCode enum value FederationSourceErrorCodeThrottlingException = "ThrottlingException" ) @@ -79239,10 +79747,15 @@ const ( // FederationSourceErrorCode_Values returns all elements of the FederationSourceErrorCode enum func FederationSourceErrorCode_Values() []string { return []string{ + FederationSourceErrorCodeAccessDeniedException, + FederationSourceErrorCodeEntityNotFoundException, + FederationSourceErrorCodeInvalidCredentialsException, + FederationSourceErrorCodeInvalidInputException, FederationSourceErrorCodeInvalidResponseException, FederationSourceErrorCodeOperationTimeoutException, FederationSourceErrorCodeOperationNotSupportedException, FederationSourceErrorCodeInternalServiceException, + FederationSourceErrorCodePartialFailureException, FederationSourceErrorCodeThrottlingException, } } @@ -79883,6 +80396,26 @@ func NodeType_Values() []string { } } +const ( + // OAuth2GrantTypeAuthorizationCode is a OAuth2GrantType enum value + OAuth2GrantTypeAuthorizationCode = "AUTHORIZATION_CODE" + + // OAuth2GrantTypeClientCredentials is a OAuth2GrantType enum value + OAuth2GrantTypeClientCredentials = "CLIENT_CREDENTIALS" + + // OAuth2GrantTypeJwtBearer is a OAuth2GrantType enum value + OAuth2GrantTypeJwtBearer = "JWT_BEARER" +) + +// OAuth2GrantType_Values returns all elements of the OAuth2GrantType enum +func OAuth2GrantType_Values() []string { + return []string{ + OAuth2GrantTypeAuthorizationCode, + OAuth2GrantTypeClientCredentials, + OAuth2GrantTypeJwtBearer, + } +} + const ( // ParamTypeStr is a ParamType enum value ParamTypeStr = "str" diff --git a/service/s3/examples_test.go b/service/s3/examples_test.go index 791e978e3c2..0deb2f82d37 100644 --- a/service/s3/examples_test.go +++ b/service/s3/examples_test.go @@ -510,10 +510,10 @@ func ExampleS3_DeleteObjectTagging_shared01() { fmt.Println(result) } -// To delete multiple objects from a versioned bucket -// The following example deletes objects from a bucket. The bucket is versioned, and -// the request does not specify the object version to delete. In this case, all versions -// remain in the bucket and S3 adds a delete marker. +// To delete multiple object versions from a versioned bucket +// The following example deletes objects from a bucket. The request specifies object +// versions. S3 deletes specific object versions and returns the key and versions of +// deleted objects in the response. func ExampleS3_DeleteObjects_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectsInput{ @@ -521,10 +521,12 @@ func ExampleS3_DeleteObjects_shared00() { Delete: &s3.Delete{ Objects: []*s3.ObjectIdentifier{ { - Key: aws.String("objectkey1"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"), }, { - Key: aws.String("objectkey2"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"), }, }, Quiet: aws.Bool(false), @@ -549,10 +551,10 @@ func ExampleS3_DeleteObjects_shared00() { fmt.Println(result) } -// To delete multiple object versions from a versioned bucket -// The following example deletes objects from a bucket. The request specifies object -// versions. S3 deletes specific object versions and returns the key and versions of -// deleted objects in the response. +// To delete multiple objects from a versioned bucket +// The following example deletes objects from a bucket. The bucket is versioned, and +// the request does not specify the object version to delete. In this case, all versions +// remain in the bucket and S3 adds a delete marker. func ExampleS3_DeleteObjects_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectsInput{ @@ -560,12 +562,10 @@ func ExampleS3_DeleteObjects_shared01() { Delete: &s3.Delete{ Objects: []*s3.ObjectIdentifier{ { - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"), + Key: aws.String("objectkey1"), }, { - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"), + Key: aws.String("objectkey2"), }, }, Quiet: aws.Bool(false), @@ -1745,19 +1745,18 @@ func ExampleS3_PutBucketWebsite_shared00() { 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 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("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("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,17 +1777,15 @@ func ExampleS3_PutObject_shared00() { 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 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("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("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("objectkey"), } result, err := svc.PutObject(input) @@ -1809,16 +1806,17 @@ func ExampleS3_PutObject_shared01() { 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 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("c:\\HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - Tagging: aws.String("key1=value1&key2=value2"), + 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,15 +1837,16 @@ func ExampleS3_PutObject_shared02() { 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 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("objectkey"), + 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) @@ -1868,16 +1867,19 @@ func ExampleS3_PutObject_shared03() { 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 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("HappyFace.jpg")), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Key: aws.String("exampleobject"), + Metadata: map[string]*string{ + "metadata1": aws.String("value1"), + "metadata2": aws.String("value2"), + }, } result, err := svc.PutObject(input) @@ -1929,18 +1931,16 @@ func ExampleS3_PutObject_shared05() { 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 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("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("HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.PutObject(input)