diff --git a/apis/amplify/2017-07-25/api-2.json b/apis/amplify/2017-07-25/api-2.json
index 641bbe6ae79..2514a146905 100644
--- a/apis/amplify/2017-07-25/api-2.json
+++ b/apis/amplify/2017-07-25/api-2.json
@@ -640,7 +640,9 @@
"autoBranchCreationPatterns":{"shape":"AutoBranchCreationPatterns"},
"autoBranchCreationConfig":{"shape":"AutoBranchCreationConfig"},
"repositoryCloneMethod":{"shape":"RepositoryCloneMethod"},
- "cacheConfig":{"shape":"CacheConfig"}
+ "cacheConfig":{"shape":"CacheConfig"},
+ "webhookCreateTime":{"shape":"webhookCreateTime"},
+ "wafConfiguration":{"shape":"WafConfiguration"}
}
},
"AppArn":{
@@ -1659,6 +1661,7 @@
"JobStatus":{
"type":"string",
"enum":[
+ "CREATED",
"PENDING",
"PROVISIONING",
"RUNNING",
@@ -2533,6 +2536,30 @@
"max":1000
},
"Verified":{"type":"boolean"},
+ "WafConfiguration":{
+ "type":"structure",
+ "members":{
+ "webAclArn":{"shape":"WebAclArn"},
+ "wafStatus":{"shape":"WafStatus"},
+ "statusReason":{"shape":"StatusReason"}
+ }
+ },
+ "WafStatus":{
+ "type":"string",
+ "enum":[
+ "ASSOCIATING",
+ "ASSOCIATION_FAILED",
+ "ASSOCIATION_SUCCESS",
+ "DISASSOCIATING",
+ "DISASSOCIATION_FAILED"
+ ]
+ },
+ "WebAclArn":{
+ "type":"string",
+ "max":512,
+ "min":0,
+ "pattern":"^arn:aws:wafv2:.*"
+ },
"Webhook":{
"type":"structure",
"required":[
@@ -2570,6 +2597,7 @@
"Webhooks":{
"type":"list",
"member":{"shape":"Webhook"}
- }
+ },
+ "webhookCreateTime":{"type":"timestamp"}
}
}
diff --git a/apis/amplify/2017-07-25/docs-2.json b/apis/amplify/2017-07-25/docs-2.json
index 4cbfa7126a5..0436f4d08ba 100644
--- a/apis/amplify/2017-07-25/docs-2.json
+++ b/apis/amplify/2017-07-25/docs-2.json
@@ -383,7 +383,7 @@
"CommitTime": {
"base": null,
"refs": {
- "JobSummary$commitTime": "
The commit date and time for the job.
",
+ "JobSummary$commitTime": "The commit date and time for the job.
",
"StartJobRequest$commitTime": " The commit date and time for the job.
"
}
},
@@ -452,10 +452,10 @@
"CreateTime": {
"base": null,
"refs": {
- "App$createTime": "Creates a date and time for the Amplify app.
",
+ "App$createTime": "A timestamp of when Amplify created the application.
",
"BackendEnvironment$createTime": "The creation date and time for a backend environment that is part of an Amplify app.
",
- "Branch$createTime": " The creation date and time for a branch that is part of an Amplify app.
",
- "Webhook$createTime": "The create date and time for a webhook.
"
+ "Branch$createTime": "A timestamp of when Amplify created the branch.
",
+ "Webhook$createTime": "A timestamp of when Amplify created the webhook in your Git repository.
"
}
},
"CreateWebhookRequest": {
@@ -1266,7 +1266,8 @@
"base": null,
"refs": {
"DomainAssociation$statusReason": " Additional information that describes why the domain association is in the current state.
",
- "Step$statusReason": " The reason for the current step status.
"
+ "Step$statusReason": " The reason for the current step status.
",
+ "WafConfiguration$statusReason": "The reason for the current status of the Firewall configuration.
"
}
},
"Step": {
@@ -1463,10 +1464,10 @@
"UpdateTime": {
"base": null,
"refs": {
- "App$updateTime": "Updates the date and time for the Amplify app.
",
+ "App$updateTime": "A timestamp of when Amplify updated the application.
",
"BackendEnvironment$updateTime": "The last updated date and time for a backend environment that is part of an Amplify app.
",
- "Branch$updateTime": " The last updated date and time for a branch that is part of an Amplify app.
",
- "Webhook$updateTime": "Updates the date and time for a webhook.
"
+ "Branch$updateTime": "A timestamp for the last updated time for a branch.
",
+ "Webhook$updateTime": "A timestamp of when Amplify updated the webhook in your Git repository.
"
}
},
"UpdateWebhookRequest": {
@@ -1492,6 +1493,24 @@
"SubDomain$verified": " The verified status of the subdomain
"
}
},
+ "WafConfiguration": {
+ "base": "Describes the Firewall configuration for a hosted Amplify application. Firewall support enables you to protect your web applications with a direct integration with WAF. For more information about using WAF protections for an Amplify application, see Firewall support for hosted sites in the Amplify User Guide.
",
+ "refs": {
+ "App$wafConfiguration": "Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF.
"
+ }
+ },
+ "WafStatus": {
+ "base": null,
+ "refs": {
+ "WafConfiguration$wafStatus": "The status of the process to associate or disassociate a web ACL to an Amplify app.
"
+ }
+ },
+ "WebAclArn": {
+ "base": null,
+ "refs": {
+ "WafConfiguration$webAclArn": "The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
"
+ }
+ },
"Webhook": {
"base": "Describes a webhook that connects repository events to an Amplify app.
",
"refs": {
@@ -1528,6 +1547,12 @@
"refs": {
"ListWebhooksResult$webhooks": "A list of webhooks.
"
}
+ },
+ "webhookCreateTime": {
+ "base": null,
+ "refs": {
+ "App$webhookCreateTime": "A timestamp of when Amplify created the webhook in your Git repository.
"
+ }
}
}
}
diff --git a/apis/budgets/2016-10-20/endpoint-rule-set-1.json b/apis/budgets/2016-10-20/endpoint-rule-set-1.json
index 2899674a8a7..35ad019a458 100644
--- a/apis/budgets/2016-10-20/endpoint-rule-set-1.json
+++ b/apis/budgets/2016-10-20/endpoint-rule-set-1.json
@@ -212,6 +212,108 @@
},
"type": "endpoint"
},
+ {
+ "conditions": [
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "name"
+ ]
+ },
+ "aws-iso"
+ ]
+ },
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ false
+ ]
+ },
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ false
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://budgets.c2s.ic.gov",
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "budgets",
+ "signingRegion": "us-iso-east-1"
+ }
+ ]
+ },
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "name"
+ ]
+ },
+ "aws-iso-b"
+ ]
+ },
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ false
+ ]
+ },
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ false
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://budgets.global.sc2s.sgov.gov",
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "budgets",
+ "signingRegion": "us-isob-east-1"
+ }
+ ]
+ },
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
{
"conditions": [
{
diff --git a/apis/budgets/2016-10-20/endpoint-tests-1.json b/apis/budgets/2016-10-20/endpoint-tests-1.json
index b97c4559b59..c4254a59cd6 100644
--- a/apis/budgets/2016-10-20/endpoint-tests-1.json
+++ b/apis/budgets/2016-10-20/endpoint-tests-1.json
@@ -218,6 +218,28 @@
"UseDualStack": false
}
},
+ {
+ "documentation": "For region aws-iso-global with FIPS disabled and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "budgets",
+ "signingRegion": "us-iso-east-1"
+ }
+ ]
+ },
+ "url": "https://budgets.c2s.ic.gov"
+ }
+ },
+ "params": {
+ "Region": "aws-iso-global",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
{
"documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled",
"expect": {
@@ -257,7 +279,16 @@
"documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled",
"expect": {
"endpoint": {
- "url": "https://budgets.us-iso-east-1.c2s.ic.gov"
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "budgets",
+ "signingRegion": "us-iso-east-1"
+ }
+ ]
+ },
+ "url": "https://budgets.c2s.ic.gov"
}
},
"params": {
@@ -266,6 +297,28 @@
"UseDualStack": false
}
},
+ {
+ "documentation": "For region aws-iso-b-global with FIPS disabled and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "budgets",
+ "signingRegion": "us-isob-east-1"
+ }
+ ]
+ },
+ "url": "https://budgets.global.sc2s.sgov.gov"
+ }
+ },
+ "params": {
+ "Region": "aws-iso-b-global",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
{
"documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled",
"expect": {
@@ -305,7 +358,16 @@
"documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled",
"expect": {
"endpoint": {
- "url": "https://budgets.us-isob-east-1.sc2s.sgov.gov"
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "budgets",
+ "signingRegion": "us-isob-east-1"
+ }
+ ]
+ },
+ "url": "https://budgets.global.sc2s.sgov.gov"
}
},
"params": {
diff --git a/apis/connect/2017-08-08/api-2.json b/apis/connect/2017-08-08/api-2.json
index 1f1865f7b1c..d28b1554050 100644
--- a/apis/connect/2017-08-08/api-2.json
+++ b/apis/connect/2017-08-08/api-2.json
@@ -4057,6 +4057,23 @@
{"shape":"ThrottlingException"}
]
},
+ "UpdateParticipantAuthentication":{
+ "name":"UpdateParticipantAuthentication",
+ "http":{
+ "method":"POST",
+ "requestUri":"/contact/update-participant-authentication"
+ },
+ "input":{"shape":"UpdateParticipantAuthenticationRequest"},
+ "output":{"shape":"UpdateParticipantAuthenticationResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InvalidParameterException"},
+ {"shape":"ConflictException"},
+ {"shape":"InternalServiceException"},
+ {"shape":"ThrottlingException"},
+ {"shape":"AccessDeniedException"}
+ ]
+ },
"UpdateParticipantRoleConfig":{
"name":"UpdateParticipantRoleConfig",
"http":{
@@ -5406,6 +5423,20 @@
}
},
"AudioQualityScore":{"type":"float"},
+ "AuthenticationError":{
+ "type":"string",
+ "max":2048,
+ "min":1,
+ "pattern":"^[\\x20-\\x21\\x23-\\x5B\\x5D-\\x7E]*$",
+ "sensitive":true
+ },
+ "AuthenticationErrorDescription":{
+ "type":"string",
+ "max":2048,
+ "min":1,
+ "pattern":"^[\\x20-\\x21\\x23-\\x5B\\x5D-\\x7E]*$",
+ "sensitive":true
+ },
"AuthenticationProfile":{
"type":"structure",
"members":{
@@ -5453,6 +5484,12 @@
"type":"list",
"member":{"shape":"AuthenticationProfileSummary"}
},
+ "AuthorizationCode":{
+ "type":"string",
+ "max":2048,
+ "min":1,
+ "sensitive":true
+ },
"AutoAccept":{"type":"boolean"},
"AvailableNumberSummary":{
"type":"structure",
@@ -5881,6 +5918,7 @@
"ScheduledTimestamp":{"shape":"timestamp"},
"RelatedContactId":{"shape":"ContactId"},
"WisdomInfo":{"shape":"WisdomInfo"},
+ "CustomerId":{"shape":"CustomerId"},
"CustomerEndpoint":{"shape":"EndpointInfo"},
"SystemEndpoint":{"shape":"EndpointInfo"},
"QueueTimeAdjustmentSeconds":{"shape":"QueueTimeAdjustmentSeconds"},
@@ -7280,6 +7318,17 @@
"Capabilities":{"shape":"ParticipantCapabilities"}
}
},
+ "CustomerId":{
+ "type":"string",
+ "max":128,
+ "min":0
+ },
+ "CustomerIdNonEmpty":{
+ "type":"string",
+ "max":128,
+ "min":1,
+ "sensitive":true
+ },
"CustomerProfileAttributesSerialized":{"type":"string"},
"CustomerQualityMetrics":{
"type":"structure",
@@ -10914,7 +10963,8 @@
"MULTI_PARTY_CONFERENCE",
"HIGH_VOLUME_OUTBOUND",
"ENHANCED_CONTACT_MONITORING",
- "ENHANCED_CHAT_MONITORING"
+ "ENHANCED_CHAT_MONITORING",
+ "MULTI_PARTY_CHAT_CONFERENCE"
]
},
"InstanceAttributeValue":{
@@ -11053,7 +11103,8 @@
"FILE_SCANNER",
"SES_IDENTITY",
"ANALYTICS_CONNECTOR",
- "CALL_TRANSFER_CONNECTOR"
+ "CALL_TRANSFER_CONNECTOR",
+ "COGNITO_USER_POOL"
]
},
"InternalServiceException":{
@@ -16152,7 +16203,8 @@
"SupportedMessagingContentTypes":{"shape":"SupportedMessagingContentTypes"},
"PersistentChat":{"shape":"PersistentChat"},
"RelatedContactId":{"shape":"ContactId"},
- "SegmentAttributes":{"shape":"SegmentAttributes"}
+ "SegmentAttributes":{"shape":"SegmentAttributes"},
+ "CustomerId":{"shape":"CustomerIdNonEmpty"}
}
},
"StartChatContactResponse":{
@@ -17706,6 +17758,25 @@
"StorageConfig":{"shape":"InstanceStorageConfig"}
}
},
+ "UpdateParticipantAuthenticationRequest":{
+ "type":"structure",
+ "required":[
+ "State",
+ "InstanceId"
+ ],
+ "members":{
+ "State":{"shape":"ParticipantToken"},
+ "InstanceId":{"shape":"InstanceId"},
+ "Code":{"shape":"AuthorizationCode"},
+ "Error":{"shape":"AuthenticationError"},
+ "ErrorDescription":{"shape":"AuthenticationErrorDescription"}
+ }
+ },
+ "UpdateParticipantAuthenticationResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
"UpdateParticipantRoleConfigChannelInfo":{
"type":"structure",
"members":{
diff --git a/apis/connect/2017-08-08/docs-2.json b/apis/connect/2017-08-08/docs-2.json
index 3518189ddbb..9c77ed67d01 100644
--- a/apis/connect/2017-08-08/docs-2.json
+++ b/apis/connect/2017-08-08/docs-2.json
@@ -39,7 +39,7 @@
"CreatePersistentContactAssociation": "Enables rehydration of chats for the lifespan of a contact. For more information about chat rehydration, see Enable persistent chat in the Amazon Connect Administrator Guide.
",
"CreatePredefinedAttribute": "Creates a new predefined attribute for the specified Amazon Connect instance. Predefined attributes are attributes in an Amazon Connect instance that can be used to route contacts to an agent or pools of agents within a queue. For more information, see Create predefined attributes for routing contacts to agents.
",
"CreatePrompt": "Creates a prompt. For more information about prompts, such as supported file types and maximum length, see Create prompts in the Amazon Connect Administrator Guide.
",
- "CreatePushNotificationRegistration": "Creates registration for a device token and a chat contact to receive real-time push notifications. For more information about push notifications, see Set up push notifications in Amazon Connect for mobile chat in the Amazon Connect Administrator Guide.
",
+ "CreatePushNotificationRegistration": "Creates registration for a device token and a chat contact to receive real-time push notifications. For more information about push notifications, see Set up push notifications in Amazon Connect for mobile chat in the Amazon Connect Administrator Guide.
",
"CreateQueue": "Creates a new queue for the specified Amazon Connect instance.
-
If the phone number is claimed to a traffic distribution group that was created in the same Region as the Amazon Connect instance where you are calling this API, then you can use a full phone number ARN or a UUID for OutboundCallerIdNumberId
. However, if the phone number is claimed to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive a ResourceNotFoundException
.
-
Only use the phone number ARN format that doesn't contain instance
in the path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid
. This is the same ARN format that is returned when you call the ListPhoneNumbersV2 API.
-
If you plan to use IAM policies to allow/deny access to this API for phone number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.
",
"CreateQuickConnect": "Creates a quick connect for the specified Amazon Connect instance.
",
"CreateRoutingProfile": "Creates a new routing profile.
",
@@ -139,7 +139,7 @@
"ListApprovedOrigins": "This API is in preview release for Amazon Connect and is subject to change.
Returns a paginated list of all approved origins associated with the instance.
",
"ListAssociatedContacts": "Provides information about contact tree, a list of associated contacts with a unique identifier.
",
"ListAuthenticationProfiles": "This API is in preview release for Amazon Connect and is subject to change. To request access to this API, contact Amazon Web Services Support.
Provides summary information about the authentication profiles in a specified Amazon Connect instance.
",
- "ListBots": "This API is in preview release for Amazon Connect and is subject to change.
For the specified version of Amazon Lex, returns a paginated list of all the Amazon Lex bots currently associated with the instance. Use this API to returns both Amazon Lex V1 and V2 bots.
",
+ "ListBots": "This API is in preview release for Amazon Connect and is subject to change.
For the specified version of Amazon Lex, returns a paginated list of all the Amazon Lex bots currently associated with the instance. Use this API to return both Amazon Lex V1 and V2 bots.
",
"ListContactEvaluations": "Lists contact evaluations in the specified Amazon Connect instance.
",
"ListContactFlowModules": "Provides information about the flow modules for the specified Amazon Connect instance.
",
"ListContactFlowVersions": "Returns all the available versions for the specified Amazon Connect instance and flow identifier.
",
@@ -249,6 +249,7 @@
"UpdateHoursOfOperationOverride": "Update the hours of operation override.
",
"UpdateInstanceAttribute": "This API is in preview release for Amazon Connect and is subject to change.
Updates the value for the specified attribute type.
",
"UpdateInstanceStorageConfig": "This API is in preview release for Amazon Connect and is subject to change.
Updates an existing configuration for a resource type. This API is idempotent.
",
+ "UpdateParticipantAuthentication": "Instructs Amazon Connect to resume the authentication process. The subsequent actions depend on the request body contents:
-
If a code is provided: Connect retrieves the identity information from Amazon Cognito and imports it into Connect Customer Profiles.
-
If an error is provided: The error branch of the Authenticate Customer block is executed.
The API returns a success response to acknowledge the request. However, the interaction and exchange of identity information occur asynchronously after the response is returned.
",
"UpdateParticipantRoleConfig": "Updates timeouts for when human chat participants are to be considered idle, and when agents are automatically disconnected from a chat due to idleness. You can set four timers:
For more information about how chat timeouts work, see Set up chat timeouts for human participants.
",
"UpdatePhoneNumber": "Updates your claimed phone number from its current Amazon Connect instance or traffic distribution group to another Amazon Connect instance or traffic distribution group in the same Amazon Web Services Region.
After using this API, you must verify that the phone number is attached to the correct flow in the target instance or traffic distribution group. You need to do this because the API switches only the phone number to a new instance or traffic distribution group. It doesn't migrate the flow configuration of the phone number, too.
You can call DescribePhoneNumber API to verify the status of a previous UpdatePhoneNumber operation.
",
"UpdatePhoneNumberMetadata": "Updates a phone number’s metadata.
To verify the status of a previous UpdatePhoneNumberMetadata operation, call the DescribePhoneNumber API.
",
@@ -1120,6 +1121,18 @@
"AudioQualityMetricsInfo$QualityScore": "Number measuring the estimated quality of the media connection.
"
}
},
+ "AuthenticationError": {
+ "base": null,
+ "refs": {
+ "UpdateParticipantAuthenticationRequest$Error": "The error
query parameter provided by Cognito in the redirectUri
.
"
+ }
+ },
+ "AuthenticationErrorDescription": {
+ "base": null,
+ "refs": {
+ "UpdateParticipantAuthenticationRequest$ErrorDescription": "The error_description
parameter provided by Cognito in the redirectUri
.
"
+ }
+ },
"AuthenticationProfile": {
"base": "This API is in preview release for Amazon Connect and is subject to change. To request access to this API, contact Amazon Web Services Support.
Information about an authentication profile. An authentication profile is a resource that stores the authentication settings for users in your contact center. You use authentication profiles to set up IP address range restrictions and session timeouts. For more information, see Set IP address restrictions or session timeouts.
",
"refs": {
@@ -1162,6 +1175,12 @@
"ListAuthenticationProfilesResponse$AuthenticationProfileSummaryList": "A summary of a given authentication profile.
"
}
},
+ "AuthorizationCode": {
+ "base": null,
+ "refs": {
+ "UpdateParticipantAuthenticationRequest$Code": "The code
query parameter provided by Cognito in the redirectUri
.
"
+ }
+ },
"AutoAccept": {
"base": null,
"refs": {
@@ -2466,6 +2485,18 @@
"Contact$Customer": "Information about the Customer on the contact.
"
}
},
+ "CustomerId": {
+ "base": null,
+ "refs": {
+ "Contact$CustomerId": "The customer's identification number. For example, the CustomerId
may be a customer number from your CRM. You can create a Lambda function to pull the unique customer ID of the caller from your CRM system. If you enable Amazon Connect Voice ID capability, this attribute is populated with the CustomerSpeakerId
of the caller.
"
+ }
+ },
+ "CustomerIdNonEmpty": {
+ "base": null,
+ "refs": {
+ "StartChatContactRequest$CustomerId": "The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
"
+ }
+ },
"CustomerProfileAttributesSerialized": {
"base": null,
"refs": {
@@ -5007,6 +5038,7 @@
"UpdateHoursOfOperationRequest$InstanceId": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
"UpdateInstanceAttributeRequest$InstanceId": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
"UpdateInstanceStorageConfigRequest$InstanceId": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
+ "UpdateParticipantAuthenticationRequest$InstanceId": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
"UpdateParticipantRoleConfigRequest$InstanceId": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
"UpdatePhoneNumberRequest$InstanceId": "The identifier of the Amazon Connect instance that phone numbers are claimed to. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You must enter InstanceId
or TargetArn
.
",
"UpdatePredefinedAttributeRequest$InstanceId": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
@@ -5224,7 +5256,7 @@
"IvrRecordingTrack": {
"base": null,
"refs": {
- "VoiceRecordingConfiguration$IvrRecordingTrack": "Identifies which IVR track is being recorded.
"
+ "VoiceRecordingConfiguration$IvrRecordingTrack": "Identifies which IVR track is being recorded.
One and only one of the track configurations should be presented in the request.
"
}
},
"JoinToken": {
@@ -6603,7 +6635,8 @@
"refs": {
"ParticipantTokenCredentials$ParticipantToken": "The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat participant.
",
"StartChatContactResponse$ParticipantToken": "The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat participant.
",
- "StartWebRTCContactResponse$ParticipantToken": "The token used by the contact participant to call the CreateParticipantConnection API. The participant token is valid for the lifetime of a contact participant.
"
+ "StartWebRTCContactResponse$ParticipantToken": "The token used by the contact participant to call the CreateParticipantConnection API. The participant token is valid for the lifetime of a contact participant.
",
+ "UpdateParticipantAuthenticationRequest$State": "The state
query parameter that was provided by Cognito in the redirectUri
. This will also match the state
parameter provided in the AuthenticationUrl
from the GetAuthenticationUrl response.
"
}
},
"ParticipantTokenCredentials": {
@@ -9906,6 +9939,16 @@
"refs": {
}
},
+ "UpdateParticipantAuthenticationRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateParticipantAuthenticationResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
"UpdateParticipantRoleConfigChannelInfo": {
"base": "Configuration information for the chat participant role.
",
"refs": {
diff --git a/apis/connectparticipant/2018-09-07/api-2.json b/apis/connectparticipant/2018-09-07/api-2.json
index 5aa8257485c..58ad8b90d6b 100644
--- a/apis/connectparticipant/2018-09-07/api-2.json
+++ b/apis/connectparticipant/2018-09-07/api-2.json
@@ -15,6 +15,21 @@
"auth":["aws.auth#sigv4"]
},
"operations":{
+ "CancelParticipantAuthentication":{
+ "name":"CancelParticipantAuthentication",
+ "http":{
+ "method":"POST",
+ "requestUri":"/participant/cancel-authentication"
+ },
+ "input":{"shape":"CancelParticipantAuthenticationRequest"},
+ "output":{"shape":"CancelParticipantAuthenticationResponse"},
+ "errors":[
+ {"shape":"AccessDeniedException"},
+ {"shape":"InternalServerException"},
+ {"shape":"ThrottlingException"},
+ {"shape":"ValidationException"}
+ ]
+ },
"CompleteAttachmentUpload":{
"name":"CompleteAttachmentUpload",
"http":{
@@ -93,6 +108,21 @@
{"shape":"ValidationException"}
]
},
+ "GetAuthenticationUrl":{
+ "name":"GetAuthenticationUrl",
+ "http":{
+ "method":"POST",
+ "requestUri":"/participant/authentication-url"
+ },
+ "input":{"shape":"GetAuthenticationUrlRequest"},
+ "output":{"shape":"GetAuthenticationUrlResponse"},
+ "errors":[
+ {"shape":"AccessDeniedException"},
+ {"shape":"InternalServerException"},
+ {"shape":"ThrottlingException"},
+ {"shape":"ValidationException"}
+ ]
+ },
"GetTranscript":{
"name":"GetTranscript",
"http":{
@@ -208,7 +238,32 @@
"type":"list",
"member":{"shape":"AttachmentItem"}
},
+ "AuthenticationUrl":{
+ "type":"string",
+ "max":2083,
+ "min":1
+ },
"Bool":{"type":"boolean"},
+ "CancelParticipantAuthenticationRequest":{
+ "type":"structure",
+ "required":[
+ "SessionId",
+ "ConnectionToken"
+ ],
+ "members":{
+ "SessionId":{"shape":"SessionId"},
+ "ConnectionToken":{
+ "shape":"ParticipantToken",
+ "location":"header",
+ "locationName":"X-Amz-Bearer"
+ }
+ }
+ },
+ "CancelParticipantAuthenticationResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
"ChatContent":{
"type":"string",
"max":16384,
@@ -390,14 +445,43 @@
"shape":"ParticipantToken",
"location":"header",
"locationName":"X-Amz-Bearer"
- }
+ },
+ "UrlExpiryInSeconds":{"shape":"URLExpiryInSeconds"}
}
},
"GetAttachmentResponse":{
"type":"structure",
+ "required":["AttachmentSizeInBytes"],
"members":{
"Url":{"shape":"PreSignedAttachmentUrl"},
- "UrlExpiry":{"shape":"ISO8601Datetime"}
+ "UrlExpiry":{"shape":"ISO8601Datetime"},
+ "AttachmentSizeInBytes":{
+ "shape":"AttachmentSizeInBytes",
+ "box":true
+ }
+ }
+ },
+ "GetAuthenticationUrlRequest":{
+ "type":"structure",
+ "required":[
+ "SessionId",
+ "RedirectUri",
+ "ConnectionToken"
+ ],
+ "members":{
+ "SessionId":{"shape":"SessionId"},
+ "RedirectUri":{"shape":"RedirectURI"},
+ "ConnectionToken":{
+ "shape":"ParticipantToken",
+ "location":"header",
+ "locationName":"X-Amz-Bearer"
+ }
+ }
+ },
+ "GetAuthenticationUrlResponse":{
+ "type":"structure",
+ "members":{
+ "AuthenticationUrl":{"shape":"AuthenticationUrl"}
}
},
"GetTranscriptRequest":{
@@ -536,6 +620,11 @@
"type":"list",
"member":{"shape":"Receipt"}
},
+ "RedirectURI":{
+ "type":"string",
+ "max":1024,
+ "min":1
+ },
"ResourceId":{"type":"string"},
"ResourceNotFoundException":{
"type":"structure",
@@ -631,6 +720,11 @@
"error":{"httpStatusCode":402},
"exception":true
},
+ "SessionId":{
+ "type":"string",
+ "max":36,
+ "min":36
+ },
"SortKey":{
"type":"string",
"enum":[
@@ -690,6 +784,11 @@
"type":"list",
"member":{"shape":"Item"}
},
+ "URLExpiryInSeconds":{
+ "type":"integer",
+ "max":300,
+ "min":5
+ },
"UploadMetadata":{
"type":"structure",
"members":{
diff --git a/apis/connectparticipant/2018-09-07/docs-2.json b/apis/connectparticipant/2018-09-07/docs-2.json
index a36ad04401e..76a72c3bf5b 100644
--- a/apis/connectparticipant/2018-09-07/docs-2.json
+++ b/apis/connectparticipant/2018-09-07/docs-2.json
@@ -1,16 +1,18 @@
{
"version": "2.0",
- "service": "Amazon Connect is an easy-to-use omnichannel cloud contact center service that enables companies of any size to deliver superior customer service at a lower cost. Amazon Connect communications capabilities make it easy for companies to deliver personalized interactions across communication channels, including chat.
Use the Amazon Connect Participant Service to manage participants (for example, agents, customers, and managers listening in), and to send messages and events within a chat contact. The APIs in the service enable the following: sending chat messages, attachment sharing, managing a participant's connection state and message events, and retrieving chat transcripts.
",
+ "service": " Amazon Connect is an easy-to-use omnichannel cloud contact center service that enables companies of any size to deliver superior customer service at a lower cost. Amazon Connect communications capabilities make it easy for companies to deliver personalized interactions across communication channels, including chat.
Use the Amazon Connect Participant Service to manage participants (for example, agents, customers, and managers listening in), and to send messages and events within a chat contact. The APIs in the service enable the following: sending chat messages, attachment sharing, managing a participant's connection state and message events, and retrieving chat transcripts.
",
"operations": {
- "CompleteAttachmentUpload": "Allows you to confirm that the attachment has been uploaded using the pre-signed URL provided in StartAttachmentUpload API. A conflict exception is thrown when an attachment with that identifier is already being uploaded.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "CreateParticipantConnection": "Creates the participant's connection.
ParticipantToken
is used for invoking this API instead of ConnectionToken
.
The participant token is valid for the lifetime of the participant – until they are part of a contact.
The response URL for WEBSOCKET
Type has a connect expiry timeout of 100s. Clients must manually connect to the returned websocket URL and subscribe to the desired topic.
For chat, you need to publish the following on the established websocket connection:
{\"topic\":\"aws/subscribe\",\"content\":{\"topics\":[\"aws/chat\"]}}
Upon websocket URL expiry, as specified in the response ConnectionExpiry parameter, clients need to call this API again to obtain a new websocket URL and perform the same steps as before.
Message streaming support: This API can also be used together with the StartContactStreaming API to create a participant connection for chat contacts that are not using a websocket. For more information about message streaming, Enable real-time chat message streaming in the Amazon Connect Administrator Guide.
Feature specifications: For information about feature specifications, such as the allowed number of open websocket connections per participant, see Feature specifications in the Amazon Connect Administrator Guide.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "DescribeView": "Retrieves the view for the specified view token.
",
- "DisconnectParticipant": "Disconnects a participant.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "GetAttachment": "Provides a pre-signed URL for download of a completed attachment. This is an asynchronous API for use with active contacts.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "GetTranscript": "Retrieves a transcript of the session, including details about any attachments. For information about accessing past chat contact transcripts for a persistent chat, see Enable persistent chat.
If you have a process that consumes events in the transcript of an chat that has ended, note that chat transcripts contain the following event content types if the event has occurred during the chat session:
-
application/vnd.amazonaws.connect.event.participant.left
-
application/vnd.amazonaws.connect.event.participant.joined
-
application/vnd.amazonaws.connect.event.chat.ended
-
application/vnd.amazonaws.connect.event.transfer.succeeded
-
application/vnd.amazonaws.connect.event.transfer.failed
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "SendEvent": " The application/vnd.amazonaws.connect.event.connection.acknowledged
ContentType will no longer be supported starting December 31, 2024. This event has been migrated to the CreateParticipantConnection API using the ConnectParticipant
field.
Sends an event. Message receipts are not supported when there are more than two active participants in the chat. Using the SendEvent API for message receipts when a supervisor is barged-in will result in a conflict exception.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "SendMessage": "Sends a message.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
- "StartAttachmentUpload": "Provides a pre-signed Amazon S3 URL in response for uploading the file directly to S3.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
"
+ "CancelParticipantAuthentication": "Cancels the authentication session. The opted out branch of the Authenticate Customer flow block will be taken.
The current supported channel is chat. This API is not supported for Apple Messages for Business, WhatsApp, or SMS chats.
",
+ "CompleteAttachmentUpload": "Allows you to confirm that the attachment has been uploaded using the pre-signed URL provided in StartAttachmentUpload API. A conflict exception is thrown when an attachment with that identifier is already being uploaded.
For security recommendations, see Amazon Connect Chat security best practices.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "CreateParticipantConnection": "Creates the participant's connection.
For security recommendations, see Amazon Connect Chat security best practices.
ParticipantToken
is used for invoking this API instead of ConnectionToken
.
The participant token is valid for the lifetime of the participant – until they are part of a contact.
The response URL for WEBSOCKET
Type has a connect expiry timeout of 100s. Clients must manually connect to the returned websocket URL and subscribe to the desired topic.
For chat, you need to publish the following on the established websocket connection:
{\"topic\":\"aws/subscribe\",\"content\":{\"topics\":[\"aws/chat\"]}}
Upon websocket URL expiry, as specified in the response ConnectionExpiry parameter, clients need to call this API again to obtain a new websocket URL and perform the same steps as before.
Message streaming support: This API can also be used together with the StartContactStreaming API to create a participant connection for chat contacts that are not using a websocket. For more information about message streaming, Enable real-time chat message streaming in the Amazon Connect Administrator Guide.
Feature specifications: For information about feature specifications, such as the allowed number of open websocket connections per participant, see Feature specifications in the Amazon Connect Administrator Guide.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "DescribeView": "Retrieves the view for the specified view token.
For security recommendations, see Amazon Connect Chat security best practices.
",
+ "DisconnectParticipant": "Disconnects a participant.
For security recommendations, see Amazon Connect Chat security best practices.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "GetAttachment": "Provides a pre-signed URL for download of a completed attachment. This is an asynchronous API for use with active contacts.
For security recommendations, see Amazon Connect Chat security best practices.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "GetAuthenticationUrl": "Retrieves the AuthenticationUrl for the current authentication session for the AuthenticateCustomer flow block.
For security recommendations, see Amazon Connect Chat security best practices.
-
This API can only be called within one minute of receiving the authenticationInitiated event.
-
The current supported channel is chat. This API is not supported for Apple Messages for Business, WhatsApp, or SMS chats.
",
+ "GetTranscript": "Retrieves a transcript of the session, including details about any attachments. For information about accessing past chat contact transcripts for a persistent chat, see Enable persistent chat.
For security recommendations, see Amazon Connect Chat security best practices.
If you have a process that consumes events in the transcript of an chat that has ended, note that chat transcripts contain the following event content types if the event has occurred during the chat session:
-
application/vnd.amazonaws.connect.event.participant.left
-
application/vnd.amazonaws.connect.event.participant.joined
-
application/vnd.amazonaws.connect.event.chat.ended
-
application/vnd.amazonaws.connect.event.transfer.succeeded
-
application/vnd.amazonaws.connect.event.transfer.failed
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "SendEvent": " The application/vnd.amazonaws.connect.event.connection.acknowledged
ContentType will no longer be supported starting December 31, 2024. This event has been migrated to the CreateParticipantConnection API using the ConnectParticipant
field.
Sends an event. Message receipts are not supported when there are more than two active participants in the chat. Using the SendEvent API for message receipts when a supervisor is barged-in will result in a conflict exception.
For security recommendations, see Amazon Connect Chat security best practices.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "SendMessage": "Sends a message.
For security recommendations, see Amazon Connect Chat security best practices.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
",
+ "StartAttachmentUpload": "Provides a pre-signed Amazon S3 URL in response for uploading the file directly to S3.
For security recommendations, see Amazon Connect Chat security best practices.
ConnectionToken
is used for invoking this API instead of ParticipantToken
.
The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.
"
},
"shapes": {
"ARN": {
@@ -61,6 +63,7 @@
"AttachmentSizeInBytes": {
"base": null,
"refs": {
+ "GetAttachmentResponse$AttachmentSizeInBytes": "The size of the attachment in bytes.
",
"StartAttachmentUploadRequest$AttachmentSizeInBytes": "The size of the attachment in bytes.
"
}
},
@@ -70,12 +73,28 @@
"Item$Attachments": "Provides information about the attachments.
"
}
},
+ "AuthenticationUrl": {
+ "base": null,
+ "refs": {
+ "GetAuthenticationUrlResponse$AuthenticationUrl": "The URL where the customer will sign in to the identity provider. This URL contains the authorize endpoint for the Cognito UserPool used in the authentication.
"
+ }
+ },
"Bool": {
"base": null,
"refs": {
"CreateParticipantConnectionRequest$ConnectParticipant": "Amazon Connect Participant is used to mark the participant as connected for customer participant in message streaming, as well as for agent or manager participant in non-streaming chats.
"
}
},
+ "CancelParticipantAuthenticationRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "CancelParticipantAuthenticationResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
"ChatContent": {
"base": null,
"refs": {
@@ -211,6 +230,16 @@
"refs": {
}
},
+ "GetAuthenticationUrlRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "GetAuthenticationUrlResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
"GetTranscriptRequest": {
"base": null,
"refs": {
@@ -310,12 +339,14 @@
"ParticipantToken": {
"base": null,
"refs": {
+ "CancelParticipantAuthenticationRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
"CompleteAttachmentUploadRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
"ConnectionCredentials$ConnectionToken": "The connection token.
",
"CreateParticipantConnectionRequest$ParticipantToken": "This is a header parameter.
The ParticipantToken as obtained from StartChatContact API response.
",
"DescribeViewRequest$ConnectionToken": "The connection token.
",
"DisconnectParticipantRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
"GetAttachmentRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
+ "GetAuthenticationUrlRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
"GetTranscriptRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
"SendEventRequest$ConnectionToken": "The authentication token associated with the participant's connection.
",
"SendMessageRequest$ConnectionToken": "The authentication token associated with the connection.
",
@@ -353,6 +384,12 @@
"MessageMetadata$Receipts": "The list of receipt information for a message for different recipients.
"
}
},
+ "RedirectURI": {
+ "base": null,
+ "refs": {
+ "GetAuthenticationUrlRequest$RedirectUri": "The URL where the customer will be redirected after Amazon Cognito authorizes the user.
"
+ }
+ },
"ResourceId": {
"base": null,
"refs": {
@@ -401,6 +438,13 @@
"refs": {
}
},
+ "SessionId": {
+ "base": null,
+ "refs": {
+ "CancelParticipantAuthenticationRequest$SessionId": "The sessionId
provided in the authenticationInitiated
event.
",
+ "GetAuthenticationUrlRequest$SessionId": "The sessionId provided in the authenticationInitiated event.
"
+ }
+ },
"SortKey": {
"base": null,
"refs": {
@@ -434,10 +478,16 @@
"GetTranscriptResponse$Transcript": "The list of messages in the session.
"
}
},
+ "URLExpiryInSeconds": {
+ "base": null,
+ "refs": {
+ "GetAttachmentRequest$UrlExpiryInSeconds": "The expiration time of the URL in ISO timestamp. It's specified in ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example, 2019-11-08T02:41:28.172Z.
"
+ }
+ },
"UploadMetadata": {
"base": "Fields to be used while uploading the attachment.
",
"refs": {
- "StartAttachmentUploadResponse$UploadMetadata": "Fields to be used while uploading the attachment.
"
+ "StartAttachmentUploadResponse$UploadMetadata": "The headers to be provided while uploading the file to the URL.
"
}
},
"UploadMetadataSignedHeaders": {
diff --git a/apis/datasync/2018-11-09/api-2.json b/apis/datasync/2018-11-09/api-2.json
index 01c6f272629..6ef56eef7cb 100644
--- a/apis/datasync/2018-11-09/api-2.json
+++ b/apis/datasync/2018-11-09/api-2.json
@@ -717,6 +717,71 @@
{"shape":"InternalException"}
]
},
+ "UpdateLocationEfs":{
+ "name":"UpdateLocationEfs",
+ "http":{
+ "method":"POST",
+ "requestUri":"/"
+ },
+ "input":{"shape":"UpdateLocationEfsRequest"},
+ "output":{"shape":"UpdateLocationEfsResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InternalException"}
+ ]
+ },
+ "UpdateLocationFsxLustre":{
+ "name":"UpdateLocationFsxLustre",
+ "http":{
+ "method":"POST",
+ "requestUri":"/"
+ },
+ "input":{"shape":"UpdateLocationFsxLustreRequest"},
+ "output":{"shape":"UpdateLocationFsxLustreResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InternalException"}
+ ]
+ },
+ "UpdateLocationFsxOntap":{
+ "name":"UpdateLocationFsxOntap",
+ "http":{
+ "method":"POST",
+ "requestUri":"/"
+ },
+ "input":{"shape":"UpdateLocationFsxOntapRequest"},
+ "output":{"shape":"UpdateLocationFsxOntapResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InternalException"}
+ ]
+ },
+ "UpdateLocationFsxOpenZfs":{
+ "name":"UpdateLocationFsxOpenZfs",
+ "http":{
+ "method":"POST",
+ "requestUri":"/"
+ },
+ "input":{"shape":"UpdateLocationFsxOpenZfsRequest"},
+ "output":{"shape":"UpdateLocationFsxOpenZfsResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InternalException"}
+ ]
+ },
+ "UpdateLocationFsxWindows":{
+ "name":"UpdateLocationFsxWindows",
+ "http":{
+ "method":"POST",
+ "requestUri":"/"
+ },
+ "input":{"shape":"UpdateLocationFsxWindowsRequest"},
+ "output":{"shape":"UpdateLocationFsxWindowsResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InternalException"}
+ ]
+ },
"UpdateLocationHdfs":{
"name":"UpdateLocationHdfs",
"http":{
@@ -756,6 +821,19 @@
{"shape":"InternalException"}
]
},
+ "UpdateLocationS3":{
+ "name":"UpdateLocationS3",
+ "http":{
+ "method":"POST",
+ "requestUri":"/"
+ },
+ "input":{"shape":"UpdateLocationS3Request"},
+ "output":{"shape":"UpdateLocationS3Response"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"InternalException"}
+ ]
+ },
"UpdateLocationSmb":{
"name":"UpdateLocationSmb",
"http":{
@@ -1930,6 +2008,27 @@
"User":{"shape":"SmbUser"}
}
},
+ "FsxUpdateProtocol":{
+ "type":"structure",
+ "members":{
+ "NFS":{"shape":"FsxProtocolNfs"},
+ "SMB":{"shape":"FsxUpdateProtocolSmb"}
+ }
+ },
+ "FsxUpdateProtocolSmb":{
+ "type":"structure",
+ "members":{
+ "Domain":{"shape":"FsxUpdateSmbDomain"},
+ "MountOptions":{"shape":"SmbMountOptions"},
+ "Password":{"shape":"SmbPassword"},
+ "User":{"shape":"SmbUser"}
+ }
+ },
+ "FsxUpdateSmbDomain":{
+ "type":"string",
+ "max":253,
+ "pattern":"^([A-Za-z0-9]((\\.|-+)?[A-Za-z0-9]){0,252})?$"
+ },
"FsxWindowsSubdirectory":{
"type":"string",
"max":4096,
@@ -3265,6 +3364,79 @@
"members":{
}
},
+ "UpdateLocationEfsRequest":{
+ "type":"structure",
+ "required":["LocationArn"],
+ "members":{
+ "LocationArn":{"shape":"LocationArn"},
+ "Subdirectory":{"shape":"EfsSubdirectory"},
+ "AccessPointArn":{"shape":"UpdatedEfsAccessPointArn"},
+ "FileSystemAccessRoleArn":{"shape":"UpdatedEfsIamRoleArn"},
+ "InTransitEncryption":{"shape":"EfsInTransitEncryption"}
+ }
+ },
+ "UpdateLocationEfsResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
+ "UpdateLocationFsxLustreRequest":{
+ "type":"structure",
+ "required":["LocationArn"],
+ "members":{
+ "LocationArn":{"shape":"LocationArn"},
+ "Subdirectory":{"shape":"SmbSubdirectory"}
+ }
+ },
+ "UpdateLocationFsxLustreResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
+ "UpdateLocationFsxOntapRequest":{
+ "type":"structure",
+ "required":["LocationArn"],
+ "members":{
+ "LocationArn":{"shape":"LocationArn"},
+ "Protocol":{"shape":"FsxUpdateProtocol"},
+ "Subdirectory":{"shape":"FsxOntapSubdirectory"}
+ }
+ },
+ "UpdateLocationFsxOntapResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
+ "UpdateLocationFsxOpenZfsRequest":{
+ "type":"structure",
+ "required":["LocationArn"],
+ "members":{
+ "LocationArn":{"shape":"LocationArn"},
+ "Protocol":{"shape":"FsxProtocol"},
+ "Subdirectory":{"shape":"SmbSubdirectory"}
+ }
+ },
+ "UpdateLocationFsxOpenZfsResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
+ "UpdateLocationFsxWindowsRequest":{
+ "type":"structure",
+ "required":["LocationArn"],
+ "members":{
+ "LocationArn":{"shape":"LocationArn"},
+ "Subdirectory":{"shape":"FsxWindowsSubdirectory"},
+ "Domain":{"shape":"FsxUpdateSmbDomain"},
+ "User":{"shape":"SmbUser"},
+ "Password":{"shape":"SmbPassword"}
+ }
+ },
+ "UpdateLocationFsxWindowsResponse":{
+ "type":"structure",
+ "members":{
+ }
+ },
"UpdateLocationHdfsRequest":{
"type":"structure",
"required":["LocationArn"],
@@ -3323,6 +3495,21 @@
"members":{
}
},
+ "UpdateLocationS3Request":{
+ "type":"structure",
+ "required":["LocationArn"],
+ "members":{
+ "LocationArn":{"shape":"LocationArn"},
+ "Subdirectory":{"shape":"S3Subdirectory"},
+ "S3StorageClass":{"shape":"S3StorageClass"},
+ "S3Config":{"shape":"S3Config"}
+ }
+ },
+ "UpdateLocationS3Response":{
+ "type":"structure",
+ "members":{
+ }
+ },
"UpdateLocationSmbRequest":{
"type":"structure",
"required":["LocationArn"],
@@ -3394,6 +3581,16 @@
"members":{
}
},
+ "UpdatedEfsAccessPointArn":{
+ "type":"string",
+ "max":128,
+ "pattern":"(^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):elasticfilesystem:[a-z\\-0-9]+:[0-9]{12}:access-point/fsap-[0-9a-f]{8,40}$)|(^$)"
+ },
+ "UpdatedEfsIamRoleArn":{
+ "type":"string",
+ "max":2048,
+ "pattern":"(^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):iam::[0-9]{12}:role/.*$)|(^$)"
+ },
"VerifyMode":{
"type":"string",
"enum":[
diff --git a/apis/datasync/2018-11-09/docs-2.json b/apis/datasync/2018-11-09/docs-2.json
index b9348f8adbf..6504caf160f 100644
--- a/apis/datasync/2018-11-09/docs-2.json
+++ b/apis/datasync/2018-11-09/docs-2.json
@@ -12,7 +12,7 @@
"CreateLocationFsxOpenZfs": "Creates a transfer location for an Amazon FSx for OpenZFS file system. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand how DataSync accesses FSx for OpenZFS file systems.
Request parameters related to SMB
aren't supported with the CreateLocationFsxOpenZfs
operation.
",
"CreateLocationFsxWindows": "Creates a transfer location for an Amazon FSx for Windows File Server file system. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand how DataSync accesses FSx for Windows File Server file systems.
",
"CreateLocationHdfs": "Creates a transfer location for a Hadoop Distributed File System (HDFS). DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand how DataSync accesses HDFS clusters.
",
- "CreateLocationNfs": "Creates a transfer location for a Network File System (NFS) file server. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand how DataSync accesses NFS file servers.
If you're copying data to or from an Snowcone device, you can also use CreateLocationNfs
to create your transfer location. For more information, see Configuring transfers with Snowcone.
",
+ "CreateLocationNfs": "Creates a transfer location for a Network File System (NFS) file server. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand how DataSync accesses NFS file servers.
",
"CreateLocationObjectStorage": "Creates a transfer location for an object storage system. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand the prerequisites for DataSync to work with object storage systems.
",
"CreateLocationS3": "Creates a transfer location for an Amazon S3 bucket. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you read the following topics:
For more information, see Configuring transfers with Amazon S3.
",
"CreateLocationSmb": "Creates a transfer location for a Server Message Block (SMB) file server. DataSync can use this location as a source or destination for transferring data.
Before you begin, make sure that you understand how DataSync accesses SMB file servers.
",
@@ -54,11 +54,17 @@
"UntagResource": "Removes tags from an Amazon Web Services resource.
",
"UpdateAgent": "Updates the name of an DataSync agent.
",
"UpdateDiscoveryJob": "Edits a DataSync discovery job configuration.
",
- "UpdateLocationAzureBlob": "Modifies some configurations of the Microsoft Azure Blob Storage transfer location that you're using with DataSync.
",
- "UpdateLocationHdfs": "Updates some parameters of a previously created location for a Hadoop Distributed File System cluster.
",
- "UpdateLocationNfs": "Modifies some configurations of the Network File System (NFS) transfer location that you're using with DataSync.
For more information, see Configuring transfers to or from an NFS file server.
",
- "UpdateLocationObjectStorage": "Updates some parameters of an existing DataSync location for an object storage system.
",
- "UpdateLocationSmb": "Updates some of the parameters of a Server Message Block (SMB) file server location that you can use for DataSync transfers.
",
+ "UpdateLocationAzureBlob": "Modifies the following configurations of the Microsoft Azure Blob Storage transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with Azure Blob Storage.
",
+ "UpdateLocationEfs": "Modifies the following configuration parameters of the Amazon EFS transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with Amazon EFS.
",
+ "UpdateLocationFsxLustre": "Modifies the following configuration parameters of the Amazon FSx for Lustre transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with FSx for Lustre.
",
+ "UpdateLocationFsxOntap": "Modifies the following configuration parameters of the Amazon FSx for NetApp ONTAP transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with FSx for ONTAP.
",
+ "UpdateLocationFsxOpenZfs": "Modifies the following configuration parameters of the Amazon FSx for OpenZFS transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with FSx for OpenZFS.
Request parameters related to SMB
aren't supported with the UpdateLocationFsxOpenZfs
operation.
",
+ "UpdateLocationFsxWindows": "Modifies the following configuration parameters of the Amazon FSx for Windows File Server transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with FSx for Windows File Server.
",
+ "UpdateLocationHdfs": "Modifies the following configuration parameters of the Hadoop Distributed File System (HDFS) transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with an HDFS cluster.
",
+ "UpdateLocationNfs": "Modifies the following configuration parameters of the Network File System (NFS) transfer location that you're using with DataSync.
For more information, see Configuring transfers with an NFS file server.
",
+ "UpdateLocationObjectStorage": "Modifies the following configuration parameters of the object storage transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with an object storage system.
",
+ "UpdateLocationS3": "Modifies the following configuration parameters of the Amazon S3 transfer location that you're using with DataSync.
Before you begin, make sure that you read the following topics:
",
+ "UpdateLocationSmb": "Modifies the following configuration parameters of the Server Message Block (SMB) transfer location that you're using with DataSync.
For more information, see Configuring DataSync transfers with an SMB file server.
",
"UpdateStorageSystem": "Modifies some configurations of an on-premises storage system resource that you're using with DataSync Discovery.
",
"UpdateTask": "Updates the configuration of a task, which defines where and how DataSync transfers your data.
",
"UpdateTaskExecution": "Updates the configuration of a running DataSync task execution.
Currently, the only Option
that you can modify with UpdateTaskExecution
is BytesPerSecond
, which throttles bandwidth for a running or queued task execution.
"
@@ -717,7 +723,7 @@
"Ec2SecurityGroupArnList": {
"base": null,
"refs": {
- "CreateLocationFsxLustreRequest$SecurityGroupArns": "The Amazon Resource Names (ARNs) of the security groups that are used to configure the FSx for Lustre file system.
",
+ "CreateLocationFsxLustreRequest$SecurityGroupArns": "Specifies the Amazon Resource Names (ARNs) of up to five security groups that provide access to your FSx for Lustre file system.
The security groups must be able to access the file system's ports. The file system must also allow access from the security groups. For information about file system access, see the Amazon FSx for Lustre User Guide .
",
"CreateLocationFsxOntapRequest$SecurityGroupArns": "Specifies the Amazon EC2 security groups that provide access to your file system's preferred subnet.
The security groups must allow outbound traffic on the following ports (depending on the protocol you use):
-
Network File System (NFS): TCP ports 111, 635, and 2049
-
Server Message Block (SMB): TCP port 445
Your file system's security groups must also allow inbound traffic on the same ports.
",
"CreateLocationFsxOpenZfsRequest$SecurityGroupArns": "The ARNs of the security groups that are used to configure the FSx for OpenZFS file system.
",
"CreateLocationFsxWindowsRequest$SecurityGroupArns": "Specifies the ARNs of the Amazon EC2 security groups that provide access to your file system's preferred subnet.
The security groups that you specify must be able to communicate with your file system's security groups. For information about configuring security groups for file system access, see the Amazon FSx for Windows File Server User Guide .
If you choose a security group that doesn't allow connections from within itself, do one of the following:
",
@@ -752,13 +758,15 @@
"base": null,
"refs": {
"CreateLocationEfsRequest$InTransitEncryption": "Specifies whether you want DataSync to use Transport Layer Security (TLS) 1.2 encryption when it transfers data to or from your Amazon EFS file system.
If you specify an access point using AccessPointArn
or an IAM role using FileSystemAccessRoleArn
, you must set this parameter to TLS1_2
.
",
- "DescribeLocationEfsResponse$InTransitEncryption": "Indicates whether DataSync uses Transport Layer Security (TLS) encryption when transferring data to or from the Amazon EFS file system.
"
+ "DescribeLocationEfsResponse$InTransitEncryption": "Indicates whether DataSync uses Transport Layer Security (TLS) encryption when transferring data to or from the Amazon EFS file system.
",
+ "UpdateLocationEfsRequest$InTransitEncryption": "Specifies whether you want DataSync to use Transport Layer Security (TLS) 1.2 encryption when it transfers data to or from your Amazon EFS file system.
If you specify an access point using AccessPointArn
or an IAM role using FileSystemAccessRoleArn
, you must set this parameter to TLS1_2
.
"
}
},
"EfsSubdirectory": {
"base": null,
"refs": {
- "CreateLocationEfsRequest$Subdirectory": "Specifies a mount path for your Amazon EFS file system. This is where DataSync reads or writes data (depending on if this is a source or destination location) on your file system.
By default, DataSync uses the root directory (or access point if you provide one by using AccessPointArn
). You can also include subdirectories using forward slashes (for example, /path/to/folder
).
"
+ "CreateLocationEfsRequest$Subdirectory": "Specifies a mount path for your Amazon EFS file system. This is where DataSync reads or writes data on your file system (depending on if this is a source or destination location).
By default, DataSync uses the root directory (or access point if you provide one by using AccessPointArn
). You can also include subdirectories using forward slashes (for example, /path/to/folder
).
",
+ "UpdateLocationEfsRequest$Subdirectory": "Specifies a mount path for your Amazon EFS file system. This is where DataSync reads or writes data on your file system (depending on if this is a source or destination location).
By default, DataSync uses the root directory (or access point if you provide one by using AccessPointArn
). You can also include subdirectories using forward slashes (for example, /path/to/folder
).
"
}
},
"EnabledProtocols": {
@@ -840,7 +848,7 @@
"FsxFilesystemArn": {
"base": null,
"refs": {
- "CreateLocationFsxLustreRequest$FsxFilesystemArn": "The Amazon Resource Name (ARN) for the FSx for Lustre file system.
",
+ "CreateLocationFsxLustreRequest$FsxFilesystemArn": "Specifies the Amazon Resource Name (ARN) of the FSx for Lustre file system.
",
"CreateLocationFsxOpenZfsRequest$FsxFilesystemArn": "The Amazon Resource Name (ARN) of the FSx for OpenZFS file system.
",
"CreateLocationFsxWindowsRequest$FsxFilesystemArn": "Specifies the Amazon Resource Name (ARN) for the FSx for Windows File Server file system.
",
"DescribeLocationFsxOntapResponse$FsxFilesystemArn": "The ARN of the FSx for ONTAP file system.
"
@@ -849,13 +857,14 @@
"FsxLustreSubdirectory": {
"base": null,
"refs": {
- "CreateLocationFsxLustreRequest$Subdirectory": "A subdirectory in the location's path. This subdirectory in the FSx for Lustre file system is used to read data from the FSx for Lustre source location or write data to the FSx for Lustre destination.
"
+ "CreateLocationFsxLustreRequest$Subdirectory": "Specifies a mount path for your FSx for Lustre file system. The path can include subdirectories.
When the location is used as a source, DataSync reads data from the mount path. When the location is used as a destination, DataSync writes data to the mount path. If you don't include this parameter, DataSync uses the file system's root directory (/
).
"
}
},
"FsxOntapSubdirectory": {
"base": null,
"refs": {
- "CreateLocationFsxOntapRequest$Subdirectory": "Specifies a path to the file share in the SVM where you'll copy your data.
You can specify a junction path (also known as a mount point), qtree path (for NFS file shares), or share name (for SMB file shares). For example, your mount path might be /vol1
, /vol1/tree1
, or /share1
.
Don't specify a junction path in the SVM's root volume. For more information, see Managing FSx for ONTAP storage virtual machines in the Amazon FSx for NetApp ONTAP User Guide.
"
+ "CreateLocationFsxOntapRequest$Subdirectory": "Specifies a path to the file share in the SVM where you want to transfer data to or from.
You can specify a junction path (also known as a mount point), qtree path (for NFS file shares), or share name (for SMB file shares). For example, your mount path might be /vol1
, /vol1/tree1
, or /share1
.
Don't specify a junction path in the SVM's root volume. For more information, see Managing FSx for ONTAP storage virtual machines in the Amazon FSx for NetApp ONTAP User Guide.
",
+ "UpdateLocationFsxOntapRequest$Subdirectory": "Specifies a path to the file share in the storage virtual machine (SVM) where you want to transfer data to or from.
You can specify a junction path (also known as a mount point), qtree path (for NFS file shares), or share name (for SMB file shares). For example, your mount path might be /vol1
, /vol1/tree1
, or /share1
.
Don't specify a junction path in the SVM's root volume. For more information, see Managing FSx for ONTAP storage virtual machines in the Amazon FSx for NetApp ONTAP User Guide.
"
}
},
"FsxOpenZfsSubdirectory": {
@@ -870,25 +879,47 @@
"CreateLocationFsxOntapRequest$Protocol": null,
"CreateLocationFsxOpenZfsRequest$Protocol": "The type of protocol that DataSync uses to access your file system.
",
"DescribeLocationFsxOntapResponse$Protocol": null,
- "DescribeLocationFsxOpenZfsResponse$Protocol": "The type of protocol that DataSync uses to access your file system.
"
+ "DescribeLocationFsxOpenZfsResponse$Protocol": "The type of protocol that DataSync uses to access your file system.
",
+ "UpdateLocationFsxOpenZfsRequest$Protocol": null
}
},
"FsxProtocolNfs": {
- "base": "Specifies the Network File System (NFS) protocol configuration that DataSync uses to access your Amazon FSx for OpenZFS or Amazon FSx for NetApp ONTAP file system.
",
+ "base": "Specifies the Network File System (NFS) protocol configuration that DataSync uses to access your FSx for OpenZFS file system or FSx for ONTAP file system's storage virtual machine (SVM).
",
"refs": {
- "FsxProtocol$NFS": "Specifies the Network File System (NFS) protocol configuration that DataSync uses to access your FSx for OpenZFS file system or FSx for ONTAP file system's storage virtual machine (SVM).
"
+ "FsxProtocol$NFS": "Specifies the Network File System (NFS) protocol configuration that DataSync uses to access your FSx for OpenZFS file system or FSx for ONTAP file system's storage virtual machine (SVM).
",
+ "FsxUpdateProtocol$NFS": null
}
},
"FsxProtocolSmb": {
- "base": "Specifies the Server Message Block (SMB) protocol configuration that DataSync uses to access your Amazon FSx for NetApp ONTAP file system. For more information, see Accessing FSx for ONTAP file systems.
",
+ "base": "Specifies the Server Message Block (SMB) protocol configuration that DataSync uses to access your Amazon FSx for NetApp ONTAP file system's storage virtual machine (SVM). For more information, see Providing DataSync access to FSx for ONTAP file systems.
",
"refs": {
"FsxProtocol$SMB": "Specifies the Server Message Block (SMB) protocol configuration that DataSync uses to access your FSx for ONTAP file system's SVM.
"
}
},
+ "FsxUpdateProtocol": {
+ "base": "Specifies the data transfer protocol that DataSync uses to access your Amazon FSx file system.
You can't update the Network File System (NFS) protocol configuration for FSx for ONTAP locations. DataSync currently only supports NFS version 3 with this location type.
",
+ "refs": {
+ "UpdateLocationFsxOntapRequest$Protocol": "Specifies the data transfer protocol that DataSync uses to access your Amazon FSx file system.
"
+ }
+ },
+ "FsxUpdateProtocolSmb": {
+ "base": "Specifies the Server Message Block (SMB) protocol configuration that DataSync uses to access your Amazon FSx for NetApp ONTAP file system's storage virtual machine (SVM). For more information, see Providing DataSync access to FSx for ONTAP file systems.
",
+ "refs": {
+ "FsxUpdateProtocol$SMB": "Specifies the Server Message Block (SMB) protocol configuration that DataSync uses to access your FSx for ONTAP file system's storage virtual machine (SVM).
"
+ }
+ },
+ "FsxUpdateSmbDomain": {
+ "base": null,
+ "refs": {
+ "FsxUpdateProtocolSmb$Domain": "Specifies the name of the Windows domain that your storage virtual machine (SVM) belongs to.
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right SVM.
",
+ "UpdateLocationFsxWindowsRequest$Domain": "Specifies the name of the Windows domain that your FSx for Windows File Server file system belongs to.
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right file system.
"
+ }
+ },
"FsxWindowsSubdirectory": {
"base": null,
"refs": {
- "CreateLocationFsxWindowsRequest$Subdirectory": "Specifies a mount path for your file system using forward slashes. This is where DataSync reads or writes data (depending on if this is a source or destination location).
"
+ "CreateLocationFsxWindowsRequest$Subdirectory": "Specifies a mount path for your file system using forward slashes. This is where DataSync reads or writes data (depending on if this is a source or destination location).
",
+ "UpdateLocationFsxWindowsRequest$Subdirectory": "Specifies a mount path for your file system using forward slashes. DataSync uses this subdirectory to read or write data (depending on whether the file system is a source or destination location).
"
}
},
"GenerateRecommendationsRequest": {
@@ -1007,7 +1038,7 @@
"CreateAgentRequest$Tags": "Specifies labels that help you categorize, filter, and search for your Amazon Web Services resources. We recommend creating at least one tag for your agent.
",
"CreateLocationAzureBlobRequest$Tags": "Specifies labels that help you categorize, filter, and search for your Amazon Web Services resources. We recommend creating at least a name tag for your transfer location.
",
"CreateLocationEfsRequest$Tags": "Specifies the key-value pair that represents a tag that you want to add to the resource. The value can be an empty string. This value helps you manage, filter, and search for your resources. We recommend that you create a name tag for your location.
",
- "CreateLocationFsxLustreRequest$Tags": "The key-value pair that represents a tag that you want to add to the resource. The value can be an empty string. This value helps you manage, filter, and search for your resources. We recommend that you create a name tag for your location.
",
+ "CreateLocationFsxLustreRequest$Tags": "Specifies labels that help you categorize, filter, and search for your Amazon Web Services resources. We recommend creating at least a name tag for your location.
",
"CreateLocationFsxOntapRequest$Tags": "Specifies labels that help you categorize, filter, and search for your Amazon Web Services resources. We recommend creating at least a name tag for your location.
",
"CreateLocationFsxOpenZfsRequest$Tags": "The key-value pair that represents a tag that you want to add to the resource. The value can be an empty string. This value helps you manage, filter, and search for your resources. We recommend that you create a name tag for your location.
",
"CreateLocationFsxWindowsRequest$Tags": "Specifies labels that help you categorize, filter, and search for your Amazon Web Services resources. We recommend creating at least a name tag for your location.
",
@@ -1143,7 +1174,7 @@
"refs": {
"CreateLocationAzureBlobResponse$LocationArn": "The ARN of the Azure Blob Storage transfer location that you created.
",
"CreateLocationEfsResponse$LocationArn": "The Amazon Resource Name (ARN) of the Amazon EFS file system location that you create.
",
- "CreateLocationFsxLustreResponse$LocationArn": "The Amazon Resource Name (ARN) of the FSx for Lustre file system location that's created.
",
+ "CreateLocationFsxLustreResponse$LocationArn": "The Amazon Resource Name (ARN) of the FSx for Lustre file system location that you created.
",
"CreateLocationFsxOntapResponse$LocationArn": "Specifies the ARN of the FSx for ONTAP file system location that you create.
",
"CreateLocationFsxOpenZfsResponse$LocationArn": "The ARN of the FSx for OpenZFS file system location that you created.
",
"CreateLocationFsxWindowsResponse$LocationArn": "The ARN of the FSx for Windows File Server file system location you created.
",
@@ -1181,9 +1212,15 @@
"DescribeTaskResponse$DestinationLocationArn": "The ARN of your transfer's destination location.
",
"LocationListEntry$LocationArn": "The Amazon Resource Name (ARN) of the location. For Network File System (NFS) or Amazon EFS, the location is the export path. For Amazon S3, the location is the prefix path that you want to mount and use as the root of the location.
",
"UpdateLocationAzureBlobRequest$LocationArn": "Specifies the ARN of the Azure Blob Storage transfer location that you're updating.
",
+ "UpdateLocationEfsRequest$LocationArn": "Specifies the Amazon Resource Name (ARN) of the Amazon EFS transfer location that you're updating.
",
+ "UpdateLocationFsxLustreRequest$LocationArn": "Specifies the Amazon Resource Name (ARN) of the FSx for Lustre transfer location that you're updating.
",
+ "UpdateLocationFsxOntapRequest$LocationArn": "Specifies the Amazon Resource Name (ARN) of the FSx for ONTAP transfer location that you're updating.
",
+ "UpdateLocationFsxOpenZfsRequest$LocationArn": "Specifies the Amazon Resource Name (ARN) of the FSx for OpenZFS transfer location that you're updating.
",
+ "UpdateLocationFsxWindowsRequest$LocationArn": "Specifies the ARN of the FSx for Windows File Server transfer location that you're updating.
",
"UpdateLocationHdfsRequest$LocationArn": "The Amazon Resource Name (ARN) of the source HDFS cluster location.
",
"UpdateLocationNfsRequest$LocationArn": "Specifies the Amazon Resource Name (ARN) of the NFS transfer location that you want to update.
",
"UpdateLocationObjectStorageRequest$LocationArn": "Specifies the ARN of the object storage system location that you're updating.
",
+ "UpdateLocationS3Request$LocationArn": "Specifies the Amazon Resource Name (ARN) of the Amazon S3 transfer location that you're updating.
",
"UpdateLocationSmbRequest$LocationArn": "Specifies the ARN of the SMB location that you want to update.
"
}
},
@@ -1783,10 +1820,11 @@
}
},
"S3Config": {
- "base": "Specifies the Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that DataSync uses to access your S3 bucket.
For more information, see Accessing S3 buckets.
",
+ "base": "Specifies the Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that DataSync uses to access your S3 bucket.
For more information, see Providing DataSync access to S3 buckets.
",
"refs": {
"CreateLocationS3Request$S3Config": null,
- "DescribeLocationS3Response$S3Config": null
+ "DescribeLocationS3Response$S3Config": null,
+ "UpdateLocationS3Request$S3Config": null
}
},
"S3ManifestConfig": {
@@ -1805,7 +1843,8 @@
"base": null,
"refs": {
"CreateLocationS3Request$S3StorageClass": "Specifies the storage class that you want your objects to use when Amazon S3 is a transfer destination.
For buckets in Amazon Web Services Regions, the storage class defaults to STANDARD
. For buckets on Outposts, the storage class defaults to OUTPOSTS
.
For more information, see Storage class considerations with Amazon S3 transfers.
",
- "DescribeLocationS3Response$S3StorageClass": "When Amazon S3 is a destination location, this is the storage class that you chose for your objects.
Some storage classes have behaviors that can affect your Amazon S3 storage costs. For more information, see Storage class considerations with Amazon S3 transfers.
"
+ "DescribeLocationS3Response$S3StorageClass": "When Amazon S3 is a destination location, this is the storage class that you chose for your objects.
Some storage classes have behaviors that can affect your Amazon S3 storage costs. For more information, see Storage class considerations with Amazon S3 transfers.
",
+ "UpdateLocationS3Request$S3StorageClass": "Specifies the storage class that you want your objects to use when Amazon S3 is a transfer destination.
For buckets in Amazon Web Services Regions, the storage class defaults to STANDARD
. For buckets on Outposts, the storage class defaults to OUTPOSTS
.
For more information, see Storage class considerations with Amazon S3 transfers.
"
}
},
"S3Subdirectory": {
@@ -1815,7 +1854,8 @@
"CreateLocationS3Request$Subdirectory": "Specifies a prefix in the S3 bucket that DataSync reads from or writes to (depending on whether the bucket is a source or destination location).
DataSync can't transfer objects with a prefix that begins with a slash (/
) or includes //
, /./
, or /../
patterns. For example:
-
/photos
-
photos//2006/January
-
photos/./2006/February
-
photos/../2006/March
",
"ReportDestinationS3$Subdirectory": "Specifies a bucket prefix for your report.
",
"S3ManifestConfig$ManifestObjectPath": "Specifies the Amazon S3 object key of your manifest. This can include a prefix (for example, prefix/my-manifest.csv
).
",
- "UpdateLocationObjectStorageRequest$Subdirectory": "Specifies the object prefix for your object storage server. If this is a source location, DataSync only copies objects with this prefix. If this is a destination location, DataSync writes all objects with this prefix.
"
+ "UpdateLocationObjectStorageRequest$Subdirectory": "Specifies the object prefix for your object storage server. If this is a source location, DataSync only copies objects with this prefix. If this is a destination location, DataSync writes all objects with this prefix.
",
+ "UpdateLocationS3Request$Subdirectory": "Specifies a prefix in the S3 bucket that DataSync reads from or writes to (depending on whether the bucket is a source or destination location).
DataSync can't transfer objects with a prefix that begins with a slash (/
) or includes //
, /./
, or /../
patterns. For example:
-
/photos
-
photos//2006/January
-
photos/./2006/February
-
photos/../2006/March
"
}
},
"ScheduleDisabledBy": {
@@ -1859,11 +1899,11 @@
"SmbDomain": {
"base": null,
"refs": {
- "CreateLocationFsxWindowsRequest$Domain": "Specifies the name of the Microsoft Active Directory domain that the FSx for Windows File Server file system belongs to.
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right file system.
",
+ "CreateLocationFsxWindowsRequest$Domain": "Specifies the name of the Windows domain that the FSx for Windows File Server file system belongs to.
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right file system.
",
"CreateLocationSmbRequest$Domain": "Specifies the name of the Active Directory domain that your SMB file server belongs to.
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.
",
"DescribeLocationFsxWindowsResponse$Domain": "The name of the Microsoft Active Directory domain that the FSx for Windows File Server file system belongs to.
",
"DescribeLocationSmbResponse$Domain": "The name of the Microsoft Active Directory domain that the SMB file server belongs to.
",
- "FsxProtocolSmb$Domain": "Specifies the fully qualified domain name (FQDN) of the Microsoft Active Directory that your storage virtual machine (SVM) belongs to.
If you have multiple domains in your environment, configuring this setting makes sure that DataSync connects to the right SVM.
",
+ "FsxProtocolSmb$Domain": "Specifies the name of the Windows domain that your storage virtual machine (SVM) belongs to.
If you have multiple domains in your environment, configuring this setting makes sure that DataSync connects to the right SVM.
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right SVM.
",
"UpdateLocationSmbRequest$Domain": "Specifies the Windows domain name that your SMB file server belongs to.
If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.
For more information, see required permissions for SMB locations.
"
}
},
@@ -1873,6 +1913,7 @@
"CreateLocationSmbRequest$MountOptions": "Specifies the version of the SMB protocol that DataSync uses to access your SMB file server.
",
"DescribeLocationSmbResponse$MountOptions": "The protocol that DataSync use to access your SMB file.
",
"FsxProtocolSmb$MountOptions": null,
+ "FsxUpdateProtocolSmb$MountOptions": null,
"UpdateLocationSmbRequest$MountOptions": null
}
},
@@ -1882,6 +1923,8 @@
"CreateLocationFsxWindowsRequest$Password": "Specifies the password of the user with the permissions to mount and access the files, folders, and file metadata in your FSx for Windows File Server file system.
",
"CreateLocationSmbRequest$Password": "Specifies the password of the user who can mount your SMB file server and has permission to access the files and folders involved in your transfer.
For more information, see required permissions for SMB locations.
",
"FsxProtocolSmb$Password": "Specifies the password of a user who has permission to access your SVM.
",
+ "FsxUpdateProtocolSmb$Password": "Specifies the password of a user who has permission to access your SVM.
",
+ "UpdateLocationFsxWindowsRequest$Password": "Specifies the password of the user with the permissions to mount and access the files, folders, and file metadata in your FSx for Windows File Server file system.
",
"UpdateLocationSmbRequest$Password": "Specifies the password of the user who can mount your SMB file server and has permission to access the files and folders involved in your transfer.
For more information, see required permissions for SMB locations.
"
}
},
@@ -1895,6 +1938,8 @@
"base": null,
"refs": {
"CreateLocationSmbRequest$Subdirectory": "Specifies the name of the share exported by your SMB file server where DataSync will read or write data. You can include a subdirectory in the share path (for example, /path/to/subdirectory
). Make sure that other SMB clients in your network can also mount this path.
To copy all data in the subdirectory, DataSync must be able to mount the SMB share and access all of its data. For more information, see required permissions for SMB locations.
",
+ "UpdateLocationFsxLustreRequest$Subdirectory": "Specifies a mount path for your FSx for Lustre file system. The path can include subdirectories.
When the location is used as a source, DataSync reads data from the mount path. When the location is used as a destination, DataSync writes data to the mount path. If you don't include this parameter, DataSync uses the file system's root directory (/
).
",
+ "UpdateLocationFsxOpenZfsRequest$Subdirectory": "Specifies a subdirectory in the location's path that must begin with /fsx
. DataSync uses this subdirectory to read or write data (depending on whether the file system is a source or destination location).
",
"UpdateLocationSmbRequest$Subdirectory": "Specifies the name of the share exported by your SMB file server where DataSync will read or write data. You can include a subdirectory in the share path (for example, /path/to/subdirectory
). Make sure that other SMB clients in your network can also mount this path.
To copy all data in the specified subdirectory, DataSync must be able to mount the SMB share and access all of its data. For more information, see required permissions for SMB locations.
"
}
},
@@ -1906,6 +1951,8 @@
"DescribeLocationFsxWindowsResponse$User": "The user with the permissions to mount and access the FSx for Windows File Server file system.
",
"DescribeLocationSmbResponse$User": "The user that can mount and access the files, folders, and file metadata in your SMB file server.
",
"FsxProtocolSmb$User": "Specifies a user that can mount and access the files, folders, and metadata in your SVM.
For information about choosing a user with the right level of access for your transfer, see Using the SMB protocol.
",
+ "FsxUpdateProtocolSmb$User": "Specifies a user that can mount and access the files, folders, and metadata in your SVM.
For information about choosing a user with the right level of access for your transfer, see Using the SMB protocol.
",
+ "UpdateLocationFsxWindowsRequest$User": "Specifies the user with the permissions to mount and access the files, folders, and file metadata in your FSx for Windows File Server file system.
For information about choosing a user with the right level of access for your transfer, see required permissions for FSx for Windows File Server locations.
",
"UpdateLocationSmbRequest$User": "Specifies the user name that can mount your SMB file server and has permission to access the files and folders involved in your transfer.
For information about choosing a user with the right level of access for your transfer, see required permissions for SMB locations.
"
}
},
@@ -2273,6 +2320,56 @@
"refs": {
}
},
+ "UpdateLocationEfsRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationEfsResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxLustreRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxLustreResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxOntapRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxOntapResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxOpenZfsRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxOpenZfsResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxWindowsRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationFsxWindowsResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
"UpdateLocationHdfsRequest": {
"base": null,
"refs": {
@@ -2303,6 +2400,16 @@
"refs": {
}
},
+ "UpdateLocationS3Request": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "UpdateLocationS3Response": {
+ "base": null,
+ "refs": {
+ }
+ },
"UpdateLocationSmbRequest": {
"base": null,
"refs": {
@@ -2343,6 +2450,18 @@
"refs": {
}
},
+ "UpdatedEfsAccessPointArn": {
+ "base": null,
+ "refs": {
+ "UpdateLocationEfsRequest$AccessPointArn": "Specifies the Amazon Resource Name (ARN) of the access point that DataSync uses to mount your Amazon EFS file system.
For more information, see Accessing restricted Amazon EFS file systems.
"
+ }
+ },
+ "UpdatedEfsIamRoleArn": {
+ "base": null,
+ "refs": {
+ "UpdateLocationEfsRequest$FileSystemAccessRoleArn": "Specifies an Identity and Access Management (IAM) role that allows DataSync to access your Amazon EFS file system.
For information on creating this role, see Creating a DataSync IAM role for Amazon EFS file system access.
"
+ }
+ },
"VerifyMode": {
"base": null,
"refs": {
diff --git a/apis/iot/2015-05-28/api-2.json b/apis/iot/2015-05-28/api-2.json
index 58f78d3beb5..e4083e32868 100644
--- a/apis/iot/2015-05-28/api-2.json
+++ b/apis/iot/2015-05-28/api-2.json
@@ -2382,6 +2382,24 @@
{"shape":"IndexNotReadyException"}
]
},
+ "GetThingConnectivityData":{
+ "name":"GetThingConnectivityData",
+ "http":{
+ "method":"POST",
+ "requestUri":"/things/{thingName}/connectivity-data"
+ },
+ "input":{"shape":"GetThingConnectivityDataRequest"},
+ "output":{"shape":"GetThingConnectivityDataResponse"},
+ "errors":[
+ {"shape":"InvalidRequestException"},
+ {"shape":"ThrottlingException"},
+ {"shape":"UnauthorizedException"},
+ {"shape":"ServiceUnavailableException"},
+ {"shape":"InternalFailureException"},
+ {"shape":"ResourceNotFoundException"},
+ {"shape":"IndexNotReadyException"}
+ ]
+ },
"GetTopicRule":{
"name":"GetTopicRule",
"http":{
@@ -6041,6 +6059,13 @@
"max":128,
"pattern":"[a-zA-Z0-9:.]+"
},
+ "ConnectivityApiThingName":{
+ "type":"string",
+ "max":128,
+ "min":1,
+ "pattern":"[a-zA-Z0-9:_-]+",
+ "sensitive":true
+ },
"ConnectivityTimestamp":{"type":"long"},
"ConsecutiveDatapointsToAlarm":{
"type":"integer",
@@ -8705,6 +8730,25 @@
}
},
"DisconnectReason":{"type":"string"},
+ "DisconnectReasonValue":{
+ "type":"string",
+ "enum":[
+ "AUTH_ERROR",
+ "CLIENT_INITIATED_DISCONNECT",
+ "CLIENT_ERROR",
+ "CONNECTION_LOST",
+ "DUPLICATE_CLIENTID",
+ "FORBIDDEN_ACCESS",
+ "MQTT_KEEP_ALIVE_TIMEOUT",
+ "SERVER_ERROR",
+ "SERVER_INITIATED_DISCONNECT",
+ "THROTTLED",
+ "WEBSOCKET_TTL_EXPIRATION",
+ "CUSTOMAUTH_TTL_EXPIRATION",
+ "UNKNOWN",
+ "NONE"
+ ]
+ },
"DisplayName":{
"type":"string",
"max":64,
@@ -9502,6 +9546,26 @@
"statistics":{"shape":"Statistics"}
}
},
+ "GetThingConnectivityDataRequest":{
+ "type":"structure",
+ "required":["thingName"],
+ "members":{
+ "thingName":{
+ "shape":"ConnectivityApiThingName",
+ "location":"uri",
+ "locationName":"thingName"
+ }
+ }
+ },
+ "GetThingConnectivityDataResponse":{
+ "type":"structure",
+ "members":{
+ "thingName":{"shape":"ConnectivityApiThingName"},
+ "connected":{"shape":"Boolean"},
+ "timestamp":{"shape":"Timestamp"},
+ "disconnectReason":{"shape":"DisconnectReasonValue"}
+ }
+ },
"GetTopicRuleDestinationRequest":{
"type":"structure",
"required":["arn"],
diff --git a/apis/iot/2015-05-28/docs-2.json b/apis/iot/2015-05-28/docs-2.json
index 21b85d9b6a7..340c7b6fb85 100644
--- a/apis/iot/2015-05-28/docs-2.json
+++ b/apis/iot/2015-05-28/docs-2.json
@@ -147,6 +147,7 @@
"GetPolicyVersion": "Gets information about the specified policy version.
Requires permission to access the GetPolicyVersion action.
",
"GetRegistrationCode": "Gets a registration code used to register a CA certificate with IoT.
IoT will create a registration code as part of this API call if the registration code doesn't exist or has been deleted. If you already have a registration code, this API call will return the same registration code.
Requires permission to access the GetRegistrationCode action.
",
"GetStatistics": "Returns the count, average, sum, minimum, maximum, sum of squares, variance, and standard deviation for the specified aggregated field. If the aggregation field is of type String
, only the count statistic is returned.
Requires permission to access the GetStatistics action.
",
+ "GetThingConnectivityData": "Retrieves the live connectivity status per device.
",
"GetTopicRule": "Gets information about the rule.
Requires permission to access the GetTopicRule action.
",
"GetTopicRuleDestination": "Gets information about a topic rule destination.
Requires permission to access the GetTopicRuleDestination action.
",
"GetV2LoggingOptions": "Gets the fine grained logging options.
Requires permission to access the GetV2LoggingOptions action.
",
@@ -163,7 +164,7 @@
"ListCertificateProviders": "Lists all your certificate providers in your Amazon Web Services account.
Requires permission to access the ListCertificateProviders action.
",
"ListCertificates": "Lists the certificates registered in your Amazon Web Services account.
The results are paginated with a default page size of 25. You can use the returned marker to retrieve additional results.
Requires permission to access the ListCertificates action.
",
"ListCertificatesByCA": "List the device certificates signed by the specified CA certificate.
Requires permission to access the ListCertificatesByCA action.
",
- "ListCommandExecutions": "List all command executions.
You must provide only the startedTimeFilter
or the completedTimeFilter
information. If you provide both time filters, the API will generate an error. You can use this information to find command executions that started within a specific timeframe.
",
+ "ListCommandExecutions": "List all command executions.
-
You must provide only the startedTimeFilter
or the completedTimeFilter
information. If you provide both time filters, the API will generate an error. You can use this information to retrieve a list of command executions within a specific timeframe.
-
You must provide only the commandArn
or the thingArn
information depending on whether you want to list executions for a specific command or an IoT thing. If you provide both fields, the API will generate an error.
For more information about considerations for using this API, see List command executions in your account (CLI).
",
"ListCommands": "List all commands in your account.
",
"ListCustomMetrics": " Lists your Device Defender detect custom metrics.
Requires permission to access the ListCustomMetrics action.
",
"ListDetectMitigationActionsExecutions": " Lists mitigation actions executions for a Device Defender ML Detect Security Profile.
Requires permission to access the ListDetectMitigationActionsExecutions action.
",
@@ -1382,6 +1383,7 @@
"Boolean": {
"base": null,
"refs": {
+ "GetThingConnectivityDataResponse$connected": "A Boolean that indicates the connectivity status.
",
"ThingConnectivity$connected": "True if the thing is connected to the Amazon Web Services IoT Core service; false if it is not connected.
",
"ThingTypeMetadata$deprecated": "Whether the thing type is deprecated. If true, no new things could be associated with this type.
"
}
@@ -2119,6 +2121,13 @@
"PropagatingAttribute$connectionAttribute": "The attribute associated with the connection between a device and Amazon Web Services IoT Core.
"
}
},
+ "ConnectivityApiThingName": {
+ "base": null,
+ "refs": {
+ "GetThingConnectivityDataRequest$thingName": "The name of your IoT thing.
",
+ "GetThingConnectivityDataResponse$thingName": "The name of your IoT thing.
"
+ }
+ },
"ConnectivityTimestamp": {
"base": null,
"refs": {
@@ -2587,7 +2596,7 @@
"GetCommandExecutionResponse$lastUpdatedAt": "The timestamp, when the command execution was last updated.
",
"GetCommandExecutionResponse$startedAt": "The timestamp, when the command execution was started.
",
"GetCommandExecutionResponse$completedAt": "The timestamp, when the command execution was completed.
",
- "GetCommandExecutionResponse$timeToLive": "The time to live (TTL) parameter for the GetCommandExecution
API.
",
+ "GetCommandExecutionResponse$timeToLive": "The time to live (TTL) parameter that indicates the duration for which executions will be retained in your account. The default value is six months.
",
"GetCommandResponse$createdAt": "The timestamp, when the command was created.
",
"GetCommandResponse$lastUpdatedAt": "The timestamp, when the command was last updated.
",
"GetPolicyResponse$creationDate": "The date the policy was created.
",
@@ -3622,6 +3631,12 @@
"ThingConnectivity$disconnectReason": "The reason why the client is disconnected. If the thing has been disconnected for approximately an hour, the disconnectReason
value might be missing.
"
}
},
+ "DisconnectReasonValue": {
+ "base": null,
+ "refs": {
+ "GetThingConnectivityDataResponse$disconnectReason": "The reason why the client is disconnecting.
"
+ }
+ },
"DisplayName": {
"base": null,
"refs": {
@@ -4362,6 +4377,16 @@
"refs": {
}
},
+ "GetThingConnectivityDataRequest": {
+ "base": null,
+ "refs": {
+ }
+ },
+ "GetThingConnectivityDataResponse": {
+ "base": null,
+ "refs": {
+ }
+ },
"GetTopicRuleDestinationRequest": {
"base": null,
"refs": {
@@ -7576,7 +7601,7 @@
"refs": {
"AlertTarget$roleArn": "The ARN of the role that grants permission to send alerts to the notification target.
",
"AuditNotificationTarget$roleArn": "The ARN of the role that grants permission to send notifications to the target.
",
- "CreateCommandRequest$roleArn": "The IAM role that allows access to create the command.
",
+ "CreateCommandRequest$roleArn": "The IAM role that you must provide when using the AWS-IoT-FleetWise
namespace. The role grants IoT Device Management the permission to access IoT FleetWise resources for generating the payload for the command. This field is not required when you use the AWS-IoT
namespace.
",
"CreateMitigationActionRequest$roleArn": "The ARN of the IAM role that is used to apply the mitigation action.
",
"CreateOTAUpdateRequest$roleArn": "The IAM role that grants Amazon Web Services IoT Core access to the Amazon S3, IoT jobs and Amazon Web Services Code Signing resources to create an OTA update job.
",
"CreateProvisioningTemplateRequest$provisioningRoleArn": "The role ARN for the role associated with the provisioning template. This IoT role grants permission to provision a device.
",
@@ -7587,7 +7612,7 @@
"DescribeProvisioningTemplateResponse$provisioningRoleArn": "The ARN of the role associated with the provisioning template. This IoT role grants permission to provision a device.
",
"DescribeThingRegistrationTaskResponse$roleArn": "The role ARN that grants access to the input file bucket.
",
"EnableIoTLoggingParams$roleArnForLogging": "The Amazon Resource Name (ARN) of the IAM role used for logging.
",
- "GetCommandResponse$roleArn": "The IAM role that allows access to retrieve information about the command.
",
+ "GetCommandResponse$roleArn": "The IAM role that you provided when creating the command with AWS-IoT-FleetWise
as the namespace.
",
"MetricsExportConfig$roleArn": "This role ARN has permission to publish MQTT messages, after which Device Defender Detect can assume the role and publish messages on your behalf.
",
"MitigationAction$roleArn": "The IAM role ARN used to apply this mitigation action.
",
"PresignedUrlConfig$roleArn": "The ARN of an IAM role that grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.
For information about addressing the confused deputy problem, see cross-service confused deputy prevention in the Amazon Web Services IoT Core developer guide.
",
@@ -9149,6 +9174,7 @@
"DetectMitigationActionExecution$executionEndDate": " The date a mitigation action ended.
",
"DetectMitigationActionsTaskSummary$taskStartTime": " The date the task started.
",
"DetectMitigationActionsTaskSummary$taskEndTime": " The date the task ended.
",
+ "GetThingConnectivityDataResponse$timestamp": "The timestamp of when the event occurred.
",
"ListAuditFindingsRequest$startTime": "A filter to limit results to those found after the specified time. You must specify either the startTime and endTime or the taskId, but not both.
",
"ListAuditFindingsRequest$endTime": "A filter to limit results to those found before the specified time. You must specify either the startTime and endTime or the taskId, but not both.
",
"ListAuditMitigationActionsTasksRequest$startTime": "Specify this filter to limit results to tasks that began on or after a specific date and time.
",
diff --git a/apis/mwaa/2020-07-01/docs-2.json b/apis/mwaa/2020-07-01/docs-2.json
index 1cefc8862f7..c0616268d45 100644
--- a/apis/mwaa/2020-07-01/docs-2.json
+++ b/apis/mwaa/2020-07-01/docs-2.json
@@ -38,9 +38,9 @@
"AirflowVersion": {
"base": null,
"refs": {
- "CreateEnvironmentInput$AirflowVersion": "The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version. For more information, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (Amazon MWAA).
Valid values: 1.10.12
, 2.0.2
, 2.2.2
, 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
, 2.8.1
, 2.9.2
, and 2.10.1
.
",
- "Environment$AirflowVersion": "The Apache Airflow version on your environment.
Valid values: 1.10.12
, 2.0.2
, 2.2.2
, 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
, 2.8.1
, 2.9.2
, and 2.10.1
.
",
- "UpdateEnvironmentInput$AirflowVersion": "The Apache Airflow version for your environment. To upgrade your environment, specify a newer version of Apache Airflow supported by Amazon MWAA.
Before you upgrade an environment, make sure your requirements, DAGs, plugins, and other resources used in your workflows are compatible with the new Apache Airflow version. For more information about updating your resources, see Upgrading an Amazon MWAA environment.
Valid values: 1.10.12
, 2.0.2
, 2.2.2
, 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
, 2.8.1
, 2.9.2
, and 2.10.1
.
"
+ "CreateEnvironmentInput$AirflowVersion": "The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version. For more information, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (Amazon MWAA).
Valid values: 1.10.12
, 2.0.2
, 2.2.2
, 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
, 2.8.1
, 2.9.2
, 2.10.1
, and 2.10.3
.
",
+ "Environment$AirflowVersion": "The Apache Airflow version on your environment.
Valid values: 1.10.12
, 2.0.2
, 2.2.2
, 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
, 2.8.1
, 2.9.2
, 2.10.1
, and 2.10.3
.
",
+ "UpdateEnvironmentInput$AirflowVersion": "The Apache Airflow version for your environment. To upgrade your environment, specify a newer version of Apache Airflow supported by Amazon MWAA.
Before you upgrade an environment, make sure your requirements, DAGs, plugins, and other resources used in your workflows are compatible with the new Apache Airflow version. For more information about updating your resources, see Upgrading an Amazon MWAA environment.
Valid values: 1.10.12
, 2.0.2
, 2.2.2
, 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
, 2.8.1
, 2.9.2
, 2.10.1
, and 2.10.3
.
"
}
},
"CeleryExecutorQueue": {
diff --git a/apis/quicksight/2018-04-01/api-2.json b/apis/quicksight/2018-04-01/api-2.json
index 461ed6ab44d..48d85519657 100644
--- a/apis/quicksight/2018-04-01/api-2.json
+++ b/apis/quicksight/2018-04-01/api-2.json
@@ -6922,7 +6922,8 @@
"Tags":{"shape":"TagList"},
"DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"},
"DatasetParameters":{"shape":"DatasetParameterList"},
- "FolderArns":{"shape":"FolderArnList"}
+ "FolderArns":{"shape":"FolderArnList"},
+ "PerformanceConfiguration":{"shape":"PerformanceConfiguration"}
}
},
"CreateDataSetResponse":{
@@ -8257,7 +8258,8 @@
"RowLevelPermissionTagConfiguration":{"shape":"RowLevelPermissionTagConfiguration"},
"ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"},
"DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"},
- "DatasetParameters":{"shape":"DatasetParameterList"}
+ "DatasetParameters":{"shape":"DatasetParameterList"},
+ "PerformanceConfiguration":{"shape":"PerformanceConfiguration"}
}
},
"DataSetArnsList":{
@@ -17513,6 +17515,12 @@
"max":100,
"min":0
},
+ "PerformanceConfiguration":{
+ "type":"structure",
+ "members":{
+ "UniqueKeys":{"shape":"UniqueKeyList"}
+ }
+ },
"PeriodOverPeriodComputation":{
"type":"structure",
"required":["ComputationId"],
@@ -22498,6 +22506,25 @@
"type":"string",
"pattern":"^[^\\u0000-\\u00FF]$"
},
+ "UniqueKey":{
+ "type":"structure",
+ "required":["ColumnNames"],
+ "members":{
+ "ColumnNames":{"shape":"UniqueKeyColumnNameList"}
+ }
+ },
+ "UniqueKeyColumnNameList":{
+ "type":"list",
+ "member":{"shape":"ColumnName"},
+ "max":1,
+ "min":1
+ },
+ "UniqueKeyList":{
+ "type":"list",
+ "member":{"shape":"UniqueKey"},
+ "max":1,
+ "min":1
+ },
"UniqueValuesComputation":{
"type":"structure",
"required":["ComputationId"],
@@ -23070,7 +23097,8 @@
"RowLevelPermissionTagConfiguration":{"shape":"RowLevelPermissionTagConfiguration"},
"ColumnLevelPermissionRules":{"shape":"ColumnLevelPermissionRuleList"},
"DataSetUsageConfiguration":{"shape":"DataSetUsageConfiguration"},
- "DatasetParameters":{"shape":"DatasetParameterList"}
+ "DatasetParameters":{"shape":"DatasetParameterList"},
+ "PerformanceConfiguration":{"shape":"PerformanceConfiguration"}
}
},
"UpdateDataSetResponse":{
diff --git a/apis/quicksight/2018-04-01/docs-2.json b/apis/quicksight/2018-04-01/docs-2.json
index 8eb134a8936..62b6df45578 100644
--- a/apis/quicksight/2018-04-01/docs-2.json
+++ b/apis/quicksight/2018-04-01/docs-2.json
@@ -2867,6 +2867,7 @@
"RenameColumnOperation$ColumnName": "The name of the column to be renamed.
",
"RenameColumnOperation$NewColumnName": "The new name for the column.
",
"TagColumnOperation$ColumnName": "The column that this operation acts on.
",
+ "UniqueKeyColumnNameList$member": null,
"UntagColumnOperation$ColumnName": "The column that this operation acts on.
"
}
},
@@ -9622,6 +9623,14 @@
"PercentileAggregation$PercentileValue": "The percentile value. This value can be any numeric constant 0–100. A percentile value of 50 computes the median value of the measure.
"
}
},
+ "PerformanceConfiguration": {
+ "base": "The configuration for the performance optimization of the dataset that contains a UniqueKey
configuration.
",
+ "refs": {
+ "CreateDataSetRequest$PerformanceConfiguration": "The configuration for the performance optimization of the dataset that contains a UniqueKey
configuration.
",
+ "DataSet$PerformanceConfiguration": "The performance optimization configuration of a dataset.
",
+ "UpdateDataSetRequest$PerformanceConfiguration": "The configuration for the performance optimization of the dataset that contains a UniqueKey
configuration.
"
+ }
+ },
"PeriodOverPeriodComputation": {
"base": "The period over period computation configuration.
",
"refs": {
@@ -14612,6 +14621,24 @@
"ConditionalFormattingCustomIconOptions$UnicodeIcon": "Determines the Unicode icon type.
"
}
},
+ "UniqueKey": {
+ "base": "A UniqueKey
configuration that references a dataset column.
",
+ "refs": {
+ "UniqueKeyList$member": null
+ }
+ },
+ "UniqueKeyColumnNameList": {
+ "base": null,
+ "refs": {
+ "UniqueKey$ColumnNames": "The name of the column that is referenced in the UniqueKey
configuration.
"
+ }
+ },
+ "UniqueKeyList": {
+ "base": null,
+ "refs": {
+ "PerformanceConfiguration$UniqueKeys": "A UniqueKey
configuration.
"
+ }
+ },
"UniqueValuesComputation": {
"base": "The unique values computation configuration.
",
"refs": {
diff --git a/apis/resiliencehub/2020-04-30/api-2.json b/apis/resiliencehub/2020-04-30/api-2.json
index 7073416658d..11c97bc575a 100644
--- a/apis/resiliencehub/2020-04-30/api-2.json
+++ b/apis/resiliencehub/2020-04-30/api-2.json
@@ -1201,6 +1201,13 @@
"max":10,
"min":1
},
+ "Alarm":{
+ "type":"structure",
+ "members":{
+ "alarmArn":{"shape":"Arn"},
+ "source":{"shape":"String255"}
+ }
+ },
"AlarmRecommendation":{
"type":"structure",
"required":[
@@ -1568,6 +1575,7 @@
"referenceId"
],
"members":{
+ "appComponentId":{"shape":"EntityName255"},
"entryId":{"shape":"String255"},
"excludeReason":{"shape":"ExcludeRecommendationReason"},
"excluded":{"shape":"BooleanOptional"},
@@ -2469,6 +2477,13 @@
"ComplexityOfImplementation"
]
},
+ "Experiment":{
+ "type":"structure",
+ "members":{
+ "experimentArn":{"shape":"String255"},
+ "experimentTemplateId":{"shape":"String255"}
+ }
+ },
"FailedGroupingRecommendationEntries":{
"type":"list",
"member":{"shape":"FailedGroupingRecommendationEntry"}
@@ -3361,8 +3376,10 @@
"type":"structure",
"members":{
"alreadyImplemented":{"shape":"BooleanOptional"},
+ "discoveredAlarm":{"shape":"Alarm"},
"excludeReason":{"shape":"ExcludeRecommendationReason"},
"excluded":{"shape":"BooleanOptional"},
+ "latestDiscoveredExperiment":{"shape":"Experiment"},
"resourceId":{"shape":"String500"},
"targetAccountId":{"shape":"CustomerId"},
"targetRegion":{"shape":"AwsRegion"}
@@ -3975,6 +3992,7 @@
"type":"structure",
"required":["referenceId"],
"members":{
+ "appComponentId":{"shape":"EntityName255"},
"appComponentName":{"shape":"EntityId"},
"dependsOnAlarms":{"shape":"AlarmReferenceIdList"},
"description":{"shape":"String500"},
@@ -4181,6 +4199,7 @@
"referenceId"
],
"members":{
+ "appComponentId":{"shape":"EntityName255"},
"entryId":{"shape":"String255"},
"excludeReason":{"shape":"ExcludeRecommendationReason"},
"excluded":{"shape":"BooleanOptional"},
diff --git a/apis/resiliencehub/2020-04-30/docs-2.json b/apis/resiliencehub/2020-04-30/docs-2.json
index 9df3c25f07f..5e941d5d0d7 100644
--- a/apis/resiliencehub/2020-04-30/docs-2.json
+++ b/apis/resiliencehub/2020-04-30/docs-2.json
@@ -124,6 +124,12 @@
"AdditionalInfoMap$value": null
}
},
+ "Alarm": {
+ "base": "Indicates the Amazon CloudWatch alarm detected while running an assessment.
",
+ "refs": {
+ "RecommendationItem$discoveredAlarm": "Indicates the previously implemented Amazon CloudWatch alarm discovered by Resilience Hub.
"
+ }
+ },
"AlarmRecommendation": {
"base": "Defines a recommendation for a CloudWatch alarm.
",
"refs": {
@@ -218,7 +224,7 @@
"base": null,
"refs": {
"AlarmRecommendation$appComponentNames": "List of Application Component names for the CloudWatch alarm recommendation.
",
- "AssessmentRiskRecommendation$appComponents": "Indicates the Application Components (AppComponents) that were assessed as part of the assessnent and are associated with the identified risk and recommendation.
This property is available only in the US East (N. Virginia) Region.
",
+ "AssessmentRiskRecommendation$appComponents": "Indicates the Application Components (AppComponents) that were assessed as part of the assessment and are associated with the identified risk and recommendation.
This property is available only in the US East (N. Virginia) Region.
",
"CreateAppVersionResourceRequest$appComponents": "List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.
",
"UpdateAppVersionResourceRequest$appComponents": "List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.
"
}
@@ -288,6 +294,7 @@
"AcceptResourceGroupingRecommendationsResponse$appArn": "Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition
:resiliencehub:region
:account
:app/app-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.
",
"AddDraftAppVersionResourceMappingsRequest$appArn": "Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition
:resiliencehub:region
:account
:app/app-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.
",
"AddDraftAppVersionResourceMappingsResponse$appArn": "Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition
:resiliencehub:region
:account
:app/app-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.
",
+ "Alarm$alarmArn": "Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.
",
"App$appArn": "Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition
:resiliencehub:region
:account
:app/app-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.
",
"App$awsApplicationArn": "Amazon Resource Name (ARN) of Resource Groups group that is integrated with an AppRegistry application. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.
",
"App$policyArn": "Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition
:resiliencehub:region
:account
:resiliency-policy/policy-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.
",
@@ -1061,8 +1068,11 @@
"refs": {
"AppComponent$id": "Identifier of the Application Component.
",
"AppComponent$name": "Name of the Application Component.
",
+ "BatchUpdateRecommendationStatusSuccessfulEntry$appComponentId": "Indicates the identifier of an AppComponent.
",
"GroupingAppComponent$appComponentId": "Indicates the identifier of an AppComponent.
",
- "GroupingAppComponent$appComponentName": "Indicates the name of an AppComponent.
"
+ "GroupingAppComponent$appComponentName": "Indicates the name of an AppComponent.
",
+ "TestRecommendation$appComponentId": "Indicates the identifier of the AppComponent.
",
+ "UpdateRecommendationStatusRequestEntry$appComponentId": "Indicates the identifier of the AppComponent.
"
}
},
"EntityNameList": {
@@ -1174,6 +1184,12 @@
"UpdateRecommendationStatusRequestEntry$excludeReason": "Indicates the reason for excluding an operational recommendation.
"
}
},
+ "Experiment": {
+ "base": "Indicates the FIS experiment detected while running an assessment.
",
+ "refs": {
+ "RecommendationItem$latestDiscoveredExperiment": "Indicates the experiment created in FIS that was discovered by Resilience Hub, which matches the recommendation.
"
+ }
+ },
"FailedGroupingRecommendationEntries": {
"base": null,
"refs": {
@@ -1281,7 +1297,7 @@
"IamRoleName": {
"base": null,
"refs": {
- "PermissionModel$invokerRoleName": "Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.
-
You must have iam:passRole
permission for this role while creating or updating the application.
-
Currently, invokerRoleName
accepts only [A-Za-z0-9_+=,.@-]
characters.
"
+ "PermissionModel$invokerRoleName": "Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.
If your IAM role includes a path, you must include the path in the invokerRoleName
parameter. For example, if your IAM role's ARN is arn:aws:iam:123456789012:role/my-path/role-name
, you should pass my-path/role-name
.
-
You must have iam:passRole
permission for this role while creating or updating the application.
-
Currently, invokerRoleName
accepts only [A-Za-z0-9_+=,.@-]
characters.
"
}
},
"ImportResourcesToDraftAppVersionRequest": {
@@ -2126,6 +2142,7 @@
"base": null,
"refs": {
"AcceptGroupingRecommendationEntry$groupingRecommendationId": "Indicates the identifier of the grouping recommendation.
",
+ "Alarm$source": "Indicates the source of the Amazon CloudWatch alarm. That is, it indicates if the alarm was created using Resilience Hub recommendation (AwsResilienceHub
), or if you had created the alarm in Amazon CloudWatch (Customer
).
",
"AppComponent$type": "The type of Application Component.
",
"AppComponentNameList$member": null,
"AppInputSource$sourceName": "The name of the input source.
",
@@ -2154,6 +2171,8 @@
"DescribeResourceGroupingRecommendationTaskRequest$groupingId": "Identifier of the grouping recommendation task.
",
"DescribeResourceGroupingRecommendationTaskResponse$groupingId": "Identifier of the grouping recommendation task.
",
"EventSubscription$name": "Unique name to identify an event subscription.
",
+ "Experiment$experimentArn": "Amazon Resource Name (ARN) of the FIS experiment.
",
+ "Experiment$experimentTemplateId": "Identifier of the FIS experiment template.
",
"FailedGroupingRecommendationEntry$groupingRecommendationId": "Indicates the identifier of the grouping recommendation.
",
"Field$name": "Name of the field.
",
"GroupingAppComponent$appComponentType": "Indicates the type of an AppComponent.
",
diff --git a/apis/transfer/2018-11-05/api-2.json b/apis/transfer/2018-11-05/api-2.json
index 7197a1eb33f..8b4c36ae6d0 100644
--- a/apis/transfer/2018-11-05/api-2.json
+++ b/apis/transfer/2018-11-05/api-2.json
@@ -1147,7 +1147,8 @@
"SigningAlgorithm":{"shape":"SigningAlg"},
"MdnSigningAlgorithm":{"shape":"MdnSigningAlg"},
"MdnResponse":{"shape":"MdnResponse"},
- "BasicAuthSecretId":{"shape":"As2ConnectorSecretId"}
+ "BasicAuthSecretId":{"shape":"As2ConnectorSecretId"},
+ "PreserveContentType":{"shape":"PreserveContentType"}
}
},
"As2ConnectorSecretId":{
@@ -1337,7 +1338,9 @@
"BaseDirectory":{"shape":"HomeDirectory"},
"AccessRole":{"shape":"Role"},
"Status":{"shape":"AgreementStatusType"},
- "Tags":{"shape":"Tags"}
+ "Tags":{"shape":"Tags"},
+ "PreserveFilename":{"shape":"PreserveFilenameType"},
+ "EnforceMessageSigning":{"shape":"EnforceMessageSigningType"}
}
},
"CreateAgreementResponse":{
@@ -1879,7 +1882,9 @@
"PartnerProfileId":{"shape":"ProfileId"},
"BaseDirectory":{"shape":"HomeDirectory"},
"AccessRole":{"shape":"Role"},
- "Tags":{"shape":"Tags"}
+ "Tags":{"shape":"Tags"},
+ "PreserveFilename":{"shape":"PreserveFilenameType"},
+ "EnforceMessageSigning":{"shape":"EnforceMessageSigningType"}
}
},
"DescribedCertificate":{
@@ -2149,6 +2154,13 @@
"VPC_ENDPOINT"
]
},
+ "EnforceMessageSigningType":{
+ "type":"string",
+ "enum":[
+ "ENABLED",
+ "DISABLED"
+ ]
+ },
"ExecutionError":{
"type":"structure",
"required":[
@@ -3000,6 +3012,20 @@
"min":0,
"pattern":"[\\x09-\\x0D\\x20-\\x7E]*"
},
+ "PreserveContentType":{
+ "type":"string",
+ "enum":[
+ "ENABLED",
+ "DISABLED"
+ ]
+ },
+ "PreserveFilenameType":{
+ "type":"string",
+ "enum":[
+ "ENABLED",
+ "DISABLED"
+ ]
+ },
"PrivateKeyType":{
"type":"string",
"max":16384,
@@ -3627,7 +3653,9 @@
"LocalProfileId":{"shape":"ProfileId"},
"PartnerProfileId":{"shape":"ProfileId"},
"BaseDirectory":{"shape":"HomeDirectory"},
- "AccessRole":{"shape":"Role"}
+ "AccessRole":{"shape":"Role"},
+ "PreserveFilename":{"shape":"PreserveFilenameType"},
+ "EnforceMessageSigning":{"shape":"EnforceMessageSigningType"}
}
},
"UpdateAgreementResponse":{
diff --git a/apis/transfer/2018-11-05/docs-2.json b/apis/transfer/2018-11-05/docs-2.json
index a56c5e452af..a3f397e7631 100644
--- a/apis/transfer/2018-11-05/docs-2.json
+++ b/apis/transfer/2018-11-05/docs-2.json
@@ -247,7 +247,7 @@
"CertificateStatusType": {
"base": null,
"refs": {
- "DescribedCertificate$Status": "The certificate can be either ACTIVE
, PENDING_ROTATION
, or INACTIVE
. PENDING_ROTATION
means that this certificate will replace the current certificate when it expires.
",
+ "DescribedCertificate$Status": "Currently, the only available status is ACTIVE
: all other values are reserved for future use.
",
"ListedCertificate$Status": "The certificate can be either ACTIVE
, PENDING_ROTATION
, or INACTIVE
. PENDING_ROTATION
means that this certificate will replace the current certificate when it expires.
"
}
},
@@ -805,6 +805,14 @@
"UpdateServerRequest$EndpointType": "The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it.
After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT
in your Amazon Web Services account if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT
in your Amazon Web Services account on or before May 19, 2021, you will not be affected. After this date, use EndpointType
=VPC
.
For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
It is recommended that you use VPC
as the EndpointType
. With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with EndpointType
set to VPC_ENDPOINT
.
"
}
},
+ "EnforceMessageSigningType": {
+ "base": null,
+ "refs": {
+ "CreateAgreementRequest$EnforceMessageSigning": " Determines whether or not unsigned messages from your trading partners will be accepted.
",
+ "DescribedAgreement$EnforceMessageSigning": " Determines whether or not unsigned messages from your trading partners will be accepted.
",
+ "UpdateAgreementRequest$EnforceMessageSigning": " Determines whether or not unsigned messages from your trading partners will be accepted.
"
+ }
+ },
"ExecutionError": {
"base": "Specifies the error message and type, for an error that occurs during the execution of the workflow.
",
"refs": {
@@ -1575,6 +1583,20 @@
"UpdateServerRequest$PreAuthenticationLoginBanner": "Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system:
This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.
"
}
},
+ "PreserveContentType": {
+ "base": null,
+ "refs": {
+ "As2ConnectorConfig$PreserveContentType": "Allows you to use the Amazon S3 Content-Type
that is associated with objects in S3 instead of having the content type mapped based on the file extension. This parameter is enabled by default when you create an AS2 connector from the console, but disabled by default when you create an AS2 connector by calling the API directly.
"
+ }
+ },
+ "PreserveFilenameType": {
+ "base": null,
+ "refs": {
+ "CreateAgreementRequest$PreserveFilename": " Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload filename when saving it.
-
ENABLED
: the filename provided by your trading parter is preserved when the file is saved.
-
DISABLED
(default value): when Transfer Family saves the file, the filename is adjusted, as described in File names and locations.
",
+ "DescribedAgreement$PreserveFilename": " Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload filename when saving it.
-
ENABLED
: the filename provided by your trading parter is preserved when the file is saved.
-
DISABLED
(default value): when Transfer Family saves the file, the filename is adjusted, as described in File names and locations.
",
+ "UpdateAgreementRequest$PreserveFilename": " Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload filename when saving it.
-
ENABLED
: the filename provided by your trading parter is preserved when the file is saved.
-
DISABLED
(default value): when Transfer Family saves the file, the filename is adjusted, as described in File names and locations.
"
+ }
+ },
"PrivateKeyType": {
"base": null,
"refs": {
diff --git a/gems/aws-partitions/CHANGELOG.md b/gems/aws-partitions/CHANGELOG.md
index e2c3aaf0ee9..23dffc4a804 100644
--- a/gems/aws-partitions/CHANGELOG.md
+++ b/gems/aws-partitions/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.1025.0 (2024-12-18)
+------------------
+
+* Feature - Updated the partitions source data the determines the AWS service regions and endpoints.
+
1.1024.0 (2024-12-17)
------------------
diff --git a/gems/aws-partitions/VERSION b/gems/aws-partitions/VERSION
index 1c4921a4858..b3023b414dd 100644
--- a/gems/aws-partitions/VERSION
+++ b/gems/aws-partitions/VERSION
@@ -1 +1 @@
-1.1024.0
+1.1025.0
diff --git a/gems/aws-partitions/partitions.json b/gems/aws-partitions/partitions.json
index 1c7d34cccf3..7ea2f774a16 100644
--- a/gems/aws-partitions/partitions.json
+++ b/gems/aws-partitions/partitions.json
@@ -5780,38 +5780,150 @@
},
"datasync" : {
"endpoints" : {
- "af-south-1" : { },
- "ap-east-1" : { },
- "ap-northeast-1" : { },
- "ap-northeast-2" : { },
- "ap-northeast-3" : { },
- "ap-south-1" : { },
- "ap-south-2" : { },
- "ap-southeast-1" : { },
- "ap-southeast-2" : { },
- "ap-southeast-3" : { },
- "ap-southeast-4" : { },
- "ap-southeast-5" : { },
+ "af-south-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.af-south-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-east-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-east-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-northeast-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-northeast-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-northeast-2" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-northeast-2.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-northeast-3" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-northeast-3.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-south-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-south-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-south-2" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-south-2.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-southeast-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-southeast-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-southeast-2" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-southeast-2.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-southeast-3" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-southeast-3.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-southeast-4" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-southeast-4.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "ap-southeast-5" : {
+ "variants" : [ {
+ "hostname" : "datasync.ap-southeast-5.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
"ca-central-1" : {
"variants" : [ {
"hostname" : "datasync-fips.ca-central-1.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.ca-central-1.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.ca-central-1.api.aws",
+ "tags" : [ "dualstack" ]
} ]
},
"ca-west-1" : {
"variants" : [ {
"hostname" : "datasync-fips.ca-west-1.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.ca-west-1.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.ca-west-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-central-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-central-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-central-2" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-central-2.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-north-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-north-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-south-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-south-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-south-2" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-south-2.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-west-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-west-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-west-2" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-west-2.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "eu-west-3" : {
+ "variants" : [ {
+ "hostname" : "datasync.eu-west-3.api.aws",
+ "tags" : [ "dualstack" ]
} ]
},
- "eu-central-1" : { },
- "eu-central-2" : { },
- "eu-north-1" : { },
- "eu-south-1" : { },
- "eu-south-2" : { },
- "eu-west-1" : { },
- "eu-west-2" : { },
- "eu-west-3" : { },
"fips-ca-central-1" : {
"credentialScope" : {
"region" : "ca-central-1"
@@ -5854,32 +5966,76 @@
"deprecated" : true,
"hostname" : "datasync-fips.us-west-2.amazonaws.com"
},
- "il-central-1" : { },
- "me-central-1" : { },
- "me-south-1" : { },
- "sa-east-1" : { },
+ "il-central-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.il-central-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "me-central-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.me-central-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "me-south-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.me-south-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "sa-east-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.sa-east-1.api.aws",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
"us-east-1" : {
"variants" : [ {
"hostname" : "datasync-fips.us-east-1.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.us-east-1.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.us-east-1.api.aws",
+ "tags" : [ "dualstack" ]
} ]
},
"us-east-2" : {
"variants" : [ {
"hostname" : "datasync-fips.us-east-2.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.us-east-2.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.us-east-2.api.aws",
+ "tags" : [ "dualstack" ]
} ]
},
"us-west-1" : {
"variants" : [ {
"hostname" : "datasync-fips.us-west-1.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.us-west-1.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.us-west-1.api.aws",
+ "tags" : [ "dualstack" ]
} ]
},
"us-west-2" : {
"variants" : [ {
"hostname" : "datasync-fips.us-west-2.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.us-west-2.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.us-west-2.api.aws",
+ "tags" : [ "dualstack" ]
} ]
}
}
@@ -11619,6 +11775,7 @@
"ap-southeast-2" : { },
"ap-southeast-3" : { },
"ap-southeast-4" : { },
+ "ap-southeast-5" : { },
"ca-central-1" : {
"variants" : [ {
"hostname" : "kafka-fips.ca-central-1.amazonaws.com",
@@ -24309,8 +24466,18 @@
},
"datasync" : {
"endpoints" : {
- "cn-north-1" : { },
- "cn-northwest-1" : { }
+ "cn-north-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.cn-north-1.api.amazonwebservices.com.cn",
+ "tags" : [ "dualstack" ]
+ } ]
+ },
+ "cn-northwest-1" : {
+ "variants" : [ {
+ "hostname" : "datasync.cn-northwest-1.api.amazonwebservices.com.cn",
+ "tags" : [ "dualstack" ]
+ } ]
+ }
}
},
"datazone" : {
@@ -26830,12 +26997,24 @@
"variants" : [ {
"hostname" : "datasync-fips.us-gov-east-1.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.us-gov-east-1.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.us-gov-east-1.api.aws",
+ "tags" : [ "dualstack" ]
} ]
},
"us-gov-west-1" : {
"variants" : [ {
"hostname" : "datasync-fips.us-gov-west-1.amazonaws.com",
"tags" : [ "fips" ]
+ }, {
+ "hostname" : "datasync-fips.us-gov-west-1.api.aws",
+ "tags" : [ "dualstack", "fips" ]
+ }, {
+ "hostname" : "datasync.us-gov-west-1.api.aws",
+ "tags" : [ "dualstack" ]
} ]
}
}
diff --git a/gems/aws-sdk-amplify/CHANGELOG.md b/gems/aws-sdk-amplify/CHANGELOG.md
index 0b0fb69c93b..ed294c94117 100644
--- a/gems/aws-sdk-amplify/CHANGELOG.md
+++ b/gems/aws-sdk-amplify/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.76.0 (2024-12-18)
+------------------
+
+* Feature - Added WAF Configuration to Amplify Apps
+
1.75.0 (2024-10-18)
------------------
diff --git a/gems/aws-sdk-amplify/VERSION b/gems/aws-sdk-amplify/VERSION
index 7c7053aa238..32a6ce3c719 100644
--- a/gems/aws-sdk-amplify/VERSION
+++ b/gems/aws-sdk-amplify/VERSION
@@ -1 +1 @@
-1.75.0
+1.76.0
diff --git a/gems/aws-sdk-amplify/lib/aws-sdk-amplify.rb b/gems/aws-sdk-amplify/lib/aws-sdk-amplify.rb
index ceabaa9e43a..6b2abf0baee 100644
--- a/gems/aws-sdk-amplify/lib/aws-sdk-amplify.rb
+++ b/gems/aws-sdk-amplify/lib/aws-sdk-amplify.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-amplify/endpoint_provider'
autoload :Endpoints, 'aws-sdk-amplify/endpoints'
- GEM_VERSION = '1.75.0'
+ GEM_VERSION = '1.76.0'
end
diff --git a/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb b/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb
index 72b50beba19..35ea50a51e4 100644
--- a/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb
+++ b/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb
@@ -677,6 +677,10 @@ def initialize(*args)
# resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
# resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
# resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
+ # resp.app.webhook_create_time #=> Time
+ # resp.app.waf_configuration.web_acl_arn #=> String
+ # resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
+ # resp.app.waf_configuration.status_reason #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateApp AWS API Documentation
#
@@ -1130,6 +1134,10 @@ def create_webhook(params = {}, options = {})
# resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
# resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
# resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
+ # resp.app.webhook_create_time #=> Time
+ # resp.app.waf_configuration.web_acl_arn #=> String
+ # resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
+ # resp.app.waf_configuration.status_reason #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteApp AWS API Documentation
#
@@ -1326,7 +1334,7 @@ def delete_domain_association(params = {}, options = {})
# resp.job_summary.commit_message #=> String
# resp.job_summary.commit_time #=> Time
# resp.job_summary.start_time #=> Time
- # resp.job_summary.status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job_summary.end_time #=> Time
# resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
# resp.job_summary.source_url #=> String
@@ -1480,6 +1488,10 @@ def generate_access_logs(params = {}, options = {})
# resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
# resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
# resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
+ # resp.app.webhook_create_time #=> Time
+ # resp.app.waf_configuration.web_acl_arn #=> String
+ # resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
+ # resp.app.waf_configuration.status_reason #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetApp AWS API Documentation
#
@@ -1706,7 +1718,7 @@ def get_domain_association(params = {}, options = {})
# resp.job.summary.commit_message #=> String
# resp.job.summary.commit_time #=> Time
# resp.job.summary.start_time #=> Time
- # resp.job.summary.status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job.summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job.summary.end_time #=> Time
# resp.job.summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
# resp.job.summary.source_url #=> String
@@ -1714,7 +1726,7 @@ def get_domain_association(params = {}, options = {})
# resp.job.steps #=> Array
# resp.job.steps[0].step_name #=> String
# resp.job.steps[0].start_time #=> Time
- # resp.job.steps[0].status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job.steps[0].status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job.steps[0].end_time #=> Time
# resp.job.steps[0].log_url #=> String
# resp.job.steps[0].artifacts_url #=> String
@@ -1840,6 +1852,10 @@ def get_webhook(params = {}, options = {})
# resp.apps[0].auto_branch_creation_config.pull_request_environment_name #=> String
# resp.apps[0].repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
# resp.apps[0].cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
+ # resp.apps[0].webhook_create_time #=> Time
+ # resp.apps[0].waf_configuration.web_acl_arn #=> String
+ # resp.apps[0].waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
+ # resp.apps[0].waf_configuration.status_reason #=> String
# resp.next_token #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListApps AWS API Documentation
@@ -2132,7 +2148,7 @@ def list_domain_associations(params = {}, options = {})
# resp.job_summaries[0].commit_message #=> String
# resp.job_summaries[0].commit_time #=> Time
# resp.job_summaries[0].start_time #=> Time
- # resp.job_summaries[0].status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job_summaries[0].status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job_summaries[0].end_time #=> Time
# resp.job_summaries[0].job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
# resp.job_summaries[0].source_url #=> String
@@ -2276,7 +2292,7 @@ def list_webhooks(params = {}, options = {})
# resp.job_summary.commit_message #=> String
# resp.job_summary.commit_time #=> Time
# resp.job_summary.start_time #=> Time
- # resp.job_summary.status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job_summary.end_time #=> Time
# resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
# resp.job_summary.source_url #=> String
@@ -2348,7 +2364,7 @@ def start_deployment(params = {}, options = {})
# resp.job_summary.commit_message #=> String
# resp.job_summary.commit_time #=> Time
# resp.job_summary.start_time #=> Time
- # resp.job_summary.status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job_summary.end_time #=> Time
# resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
# resp.job_summary.source_url #=> String
@@ -2394,7 +2410,7 @@ def start_job(params = {}, options = {})
# resp.job_summary.commit_message #=> String
# resp.job_summary.commit_time #=> Time
# resp.job_summary.start_time #=> Time
- # resp.job_summary.status #=> String, one of "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
+ # resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
# resp.job_summary.end_time #=> Time
# resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
# resp.job_summary.source_url #=> String
@@ -2677,6 +2693,10 @@ def untag_resource(params = {}, options = {})
# resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
# resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
# resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
+ # resp.app.webhook_create_time #=> Time
+ # resp.app.waf_configuration.web_acl_arn #=> String
+ # resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
+ # resp.app.waf_configuration.status_reason #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateApp AWS API Documentation
#
@@ -2974,7 +2994,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-amplify'
- context[:gem_version] = '1.75.0'
+ context[:gem_version] = '1.76.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client_api.rb b/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client_api.rb
index 128790de156..03d756f9dfd 100644
--- a/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client_api.rb
+++ b/gems/aws-sdk-amplify/lib/aws-sdk-amplify/client_api.rb
@@ -229,11 +229,15 @@ module ClientApi
UpdateWebhookResult = Shapes::StructureShape.new(name: 'UpdateWebhookResult')
UploadUrl = Shapes::StringShape.new(name: 'UploadUrl')
Verified = Shapes::BooleanShape.new(name: 'Verified')
+ WafConfiguration = Shapes::StructureShape.new(name: 'WafConfiguration')
+ WafStatus = Shapes::StringShape.new(name: 'WafStatus')
+ WebAclArn = Shapes::StringShape.new(name: 'WebAclArn')
Webhook = Shapes::StructureShape.new(name: 'Webhook')
WebhookArn = Shapes::StringShape.new(name: 'WebhookArn')
WebhookId = Shapes::StringShape.new(name: 'WebhookId')
WebhookUrl = Shapes::StringShape.new(name: 'WebhookUrl')
Webhooks = Shapes::ListShape.new(name: 'Webhooks')
+ webhookCreateTime = Shapes::TimestampShape.new(name: 'webhookCreateTime')
App.add_member(:app_id, Shapes::ShapeRef.new(shape: AppId, required: true, location_name: "appId"))
App.add_member(:app_arn, Shapes::ShapeRef.new(shape: AppArn, required: true, location_name: "appArn"))
@@ -260,6 +264,8 @@ module ClientApi
App.add_member(:auto_branch_creation_config, Shapes::ShapeRef.new(shape: AutoBranchCreationConfig, location_name: "autoBranchCreationConfig"))
App.add_member(:repository_clone_method, Shapes::ShapeRef.new(shape: RepositoryCloneMethod, location_name: "repositoryCloneMethod"))
App.add_member(:cache_config, Shapes::ShapeRef.new(shape: CacheConfig, location_name: "cacheConfig"))
+ App.add_member(:webhook_create_time, Shapes::ShapeRef.new(shape: webhookCreateTime, location_name: "webhookCreateTime"))
+ App.add_member(:waf_configuration, Shapes::ShapeRef.new(shape: WafConfiguration, location_name: "wafConfiguration"))
App.struct_class = Types::App
Apps.member = Shapes::ShapeRef.new(shape: App)
@@ -831,6 +837,11 @@ module ClientApi
UpdateWebhookResult.add_member(:webhook, Shapes::ShapeRef.new(shape: Webhook, required: true, location_name: "webhook"))
UpdateWebhookResult.struct_class = Types::UpdateWebhookResult
+ WafConfiguration.add_member(:web_acl_arn, Shapes::ShapeRef.new(shape: WebAclArn, location_name: "webAclArn"))
+ WafConfiguration.add_member(:waf_status, Shapes::ShapeRef.new(shape: WafStatus, location_name: "wafStatus"))
+ WafConfiguration.add_member(:status_reason, Shapes::ShapeRef.new(shape: StatusReason, location_name: "statusReason"))
+ WafConfiguration.struct_class = Types::WafConfiguration
+
Webhook.add_member(:webhook_arn, Shapes::ShapeRef.new(shape: WebhookArn, required: true, location_name: "webhookArn"))
Webhook.add_member(:webhook_id, Shapes::ShapeRef.new(shape: WebhookId, required: true, location_name: "webhookId"))
Webhook.add_member(:webhook_url, Shapes::ShapeRef.new(shape: WebhookUrl, required: true, location_name: "webhookUrl"))
diff --git a/gems/aws-sdk-amplify/lib/aws-sdk-amplify/types.rb b/gems/aws-sdk-amplify/lib/aws-sdk-amplify/types.rb
index 06f61191f40..e7f36455f68 100644
--- a/gems/aws-sdk-amplify/lib/aws-sdk-amplify/types.rb
+++ b/gems/aws-sdk-amplify/lib/aws-sdk-amplify/types.rb
@@ -49,11 +49,11 @@ module Types
# @return [String]
#
# @!attribute [rw] create_time
- # Creates a date and time for the Amplify app.
+ # A timestamp of when Amplify created the application.
# @return [Time]
#
# @!attribute [rw] update_time
- # Updates the date and time for the Amplify app.
+ # A timestamp of when Amplify updated the application.
# @return [Time]
#
# @!attribute [rw] iam_service_role_arn
@@ -146,6 +146,17 @@ module Types
# `AMPLIFY_MANAGED` setting.
# @return [Types::CacheConfig]
#
+ # @!attribute [rw] webhook_create_time
+ # A timestamp of when Amplify created the webhook in your Git
+ # repository.
+ # @return [Time]
+ #
+ # @!attribute [rw] waf_configuration
+ # Describes the Firewall configuration for the Amplify app. Firewall
+ # support enables you to protect your hosted applications with a
+ # direct integration with WAF.
+ # @return [Types::WafConfiguration]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/App AWS API Documentation
#
class App < Struct.new(
@@ -173,7 +184,9 @@ class App < Struct.new(
:auto_branch_creation_patterns,
:auto_branch_creation_config,
:repository_clone_method,
- :cache_config)
+ :cache_config,
+ :webhook_create_time,
+ :waf_configuration)
SENSITIVE = [:basic_auth_credentials, :build_spec]
include Aws::Structure
end
@@ -372,13 +385,11 @@ class BadRequestException < Struct.new(
# @return [Boolean]
#
# @!attribute [rw] create_time
- # The creation date and time for a branch that is part of an Amplify
- # app.
+ # A timestamp of when Amplify created the branch.
# @return [Time]
#
# @!attribute [rw] update_time
- # The last updated date and time for a branch that is part of an
- # Amplify app.
+ # A timestamp for the last updated time for a branch.
# @return [Time]
#
# @!attribute [rw] environment_variables
@@ -3089,6 +3100,40 @@ class UpdateWebhookResult < Struct.new(
include Aws::Structure
end
+ # Describes the Firewall configuration for a hosted Amplify application.
+ # Firewall support enables you to protect your web applications with a
+ # direct integration with WAF. For more information about using WAF
+ # protections for an Amplify application, see [Firewall support for
+ # hosted sites][1] in the *Amplify User Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/amplify/latest/userguide/WAF-integration.html
+ #
+ # @!attribute [rw] web_acl_arn
+ # The Amazon Resource Name (ARN) for the web ACL associated with an
+ # Amplify app.
+ # @return [String]
+ #
+ # @!attribute [rw] waf_status
+ # The status of the process to associate or disassociate a web ACL to
+ # an Amplify app.
+ # @return [String]
+ #
+ # @!attribute [rw] status_reason
+ # The reason for the current status of the Firewall configuration.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/WafConfiguration AWS API Documentation
+ #
+ class WafConfiguration < Struct.new(
+ :web_acl_arn,
+ :waf_status,
+ :status_reason)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
# Describes a webhook that connects repository events to an Amplify app.
#
# @!attribute [rw] webhook_arn
@@ -3112,11 +3157,13 @@ class UpdateWebhookResult < Struct.new(
# @return [String]
#
# @!attribute [rw] create_time
- # The create date and time for a webhook.
+ # A timestamp of when Amplify created the webhook in your Git
+ # repository.
# @return [Time]
#
# @!attribute [rw] update_time
- # Updates the date and time for a webhook.
+ # A timestamp of when Amplify updated the webhook in your Git
+ # repository.
# @return [Time]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/Webhook AWS API Documentation
diff --git a/gems/aws-sdk-amplify/sig/types.rbs b/gems/aws-sdk-amplify/sig/types.rbs
index 7190a2ff5fc..7abce14fd33 100644
--- a/gems/aws-sdk-amplify/sig/types.rbs
+++ b/gems/aws-sdk-amplify/sig/types.rbs
@@ -34,6 +34,8 @@ module Aws::Amplify
attr_accessor auto_branch_creation_config: Types::AutoBranchCreationConfig
attr_accessor repository_clone_method: ("SSH" | "TOKEN" | "SIGV4")
attr_accessor cache_config: Types::CacheConfig
+ attr_accessor webhook_create_time: ::Time
+ attr_accessor waf_configuration: Types::WafConfiguration
SENSITIVE: [:basic_auth_credentials, :build_spec]
end
@@ -439,7 +441,7 @@ module Aws::Amplify
attr_accessor commit_message: ::String
attr_accessor commit_time: ::Time
attr_accessor start_time: ::Time
- attr_accessor status: ("PENDING" | "PROVISIONING" | "RUNNING" | "FAILED" | "SUCCEED" | "CANCELLING" | "CANCELLED")
+ attr_accessor status: ("CREATED" | "PENDING" | "PROVISIONING" | "RUNNING" | "FAILED" | "SUCCEED" | "CANCELLING" | "CANCELLED")
attr_accessor end_time: ::Time
attr_accessor job_type: ("RELEASE" | "RETRY" | "MANUAL" | "WEB_HOOK")
attr_accessor source_url: ::String
@@ -609,7 +611,7 @@ module Aws::Amplify
class Step
attr_accessor step_name: ::String
attr_accessor start_time: ::Time
- attr_accessor status: ("PENDING" | "PROVISIONING" | "RUNNING" | "FAILED" | "SUCCEED" | "CANCELLING" | "CANCELLED")
+ attr_accessor status: ("CREATED" | "PENDING" | "PROVISIONING" | "RUNNING" | "FAILED" | "SUCCEED" | "CANCELLING" | "CANCELLED")
attr_accessor end_time: ::Time
attr_accessor log_url: ::String
attr_accessor artifacts_url: ::String
@@ -753,6 +755,13 @@ module Aws::Amplify
SENSITIVE: []
end
+ class WafConfiguration
+ attr_accessor web_acl_arn: ::String
+ attr_accessor waf_status: ("ASSOCIATING" | "ASSOCIATION_FAILED" | "ASSOCIATION_SUCCESS" | "DISASSOCIATING" | "DISASSOCIATION_FAILED")
+ attr_accessor status_reason: ::String
+ SENSITIVE: []
+ end
+
class Webhook
attr_accessor webhook_arn: ::String
attr_accessor webhook_id: ::String
diff --git a/gems/aws-sdk-budgets/CHANGELOG.md b/gems/aws-sdk-budgets/CHANGELOG.md
index 6dfe105751a..ee154fd620b 100644
--- a/gems/aws-sdk-budgets/CHANGELOG.md
+++ b/gems/aws-sdk-budgets/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.79.0 (2024-12-18)
+------------------
+
+* Feature - Releasing minor partition endpoint updates
+
1.78.0 (2024-10-18)
------------------
diff --git a/gems/aws-sdk-budgets/VERSION b/gems/aws-sdk-budgets/VERSION
index 54227249d1f..b3a8c61e6a8 100644
--- a/gems/aws-sdk-budgets/VERSION
+++ b/gems/aws-sdk-budgets/VERSION
@@ -1 +1 @@
-1.78.0
+1.79.0
diff --git a/gems/aws-sdk-budgets/lib/aws-sdk-budgets.rb b/gems/aws-sdk-budgets/lib/aws-sdk-budgets.rb
index 33338bc3f07..e99e7e1d9dd 100644
--- a/gems/aws-sdk-budgets/lib/aws-sdk-budgets.rb
+++ b/gems/aws-sdk-budgets/lib/aws-sdk-budgets.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-budgets/endpoint_provider'
autoload :Endpoints, 'aws-sdk-budgets/endpoints'
- GEM_VERSION = '1.78.0'
+ GEM_VERSION = '1.79.0'
end
diff --git a/gems/aws-sdk-budgets/lib/aws-sdk-budgets/client.rb b/gems/aws-sdk-budgets/lib/aws-sdk-budgets/client.rb
index c054d3c33f4..35ed3dbddb1 100644
--- a/gems/aws-sdk-budgets/lib/aws-sdk-budgets/client.rb
+++ b/gems/aws-sdk-budgets/lib/aws-sdk-budgets/client.rb
@@ -2083,7 +2083,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-budgets'
- context[:gem_version] = '1.78.0'
+ context[:gem_version] = '1.79.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-budgets/lib/aws-sdk-budgets/endpoint_provider.rb b/gems/aws-sdk-budgets/lib/aws-sdk-budgets/endpoint_provider.rb
index 0fdede87a6f..12148873a52 100644
--- a/gems/aws-sdk-budgets/lib/aws-sdk-budgets/endpoint_provider.rb
+++ b/gems/aws-sdk-budgets/lib/aws-sdk-budgets/endpoint_provider.rb
@@ -31,6 +31,12 @@ def resolve_endpoint(parameters)
if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-cn") && Aws::Endpoints::Matchers.boolean_equals?(use_fips, false) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, false)
return Aws::Endpoints::Endpoint.new(url: "https://budgets.amazonaws.com.cn", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"cn-northwest-1"}]})
end
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso") && Aws::Endpoints::Matchers.boolean_equals?(use_fips, false) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, false)
+ return Aws::Endpoints::Endpoint.new(url: "https://budgets.c2s.ic.gov", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"us-iso-east-1"}]})
+ end
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso-b") && Aws::Endpoints::Matchers.boolean_equals?(use_fips, false) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, false)
+ return Aws::Endpoints::Endpoint.new(url: "https://budgets.global.sc2s.sgov.gov", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"us-isob-east-1"}]})
+ end
if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso-e") && Aws::Endpoints::Matchers.boolean_equals?(use_fips, false) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, false)
return Aws::Endpoints::Endpoint.new(url: "https://budgets.global.cloud.adc-e.uk", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"eu-isoe-west-1"}]})
end
diff --git a/gems/aws-sdk-budgets/spec/endpoint_provider_spec.rb b/gems/aws-sdk-budgets/spec/endpoint_provider_spec.rb
index 63753a092fb..25d16125ed0 100644
--- a/gems/aws-sdk-budgets/spec/endpoint_provider_spec.rb
+++ b/gems/aws-sdk-budgets/spec/endpoint_provider_spec.rb
@@ -210,6 +210,20 @@ module Aws::Budgets
end
end
+ context "For region aws-iso-global with FIPS disabled and DualStack disabled" do
+ let(:expected) do
+ {"endpoint"=>{"properties"=>{"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"us-iso-east-1"}]}, "url"=>"https://budgets.c2s.ic.gov"}}
+ end
+
+ it 'produces the expected output from the EndpointProvider' do
+ params = EndpointParameters.new(**{:region=>"aws-iso-global", :use_fips=>false, :use_dual_stack=>false})
+ endpoint = subject.resolve_endpoint(params)
+ expect(endpoint.url).to eq(expected['endpoint']['url'])
+ expect(endpoint.headers).to eq(expected['endpoint']['headers'] || {})
+ expect(endpoint.properties).to eq(expected['endpoint']['properties'] || {})
+ end
+ end
+
context "For region us-iso-east-1 with FIPS enabled and DualStack enabled" do
let(:expected) do
{"error"=>"FIPS and DualStack are enabled, but this partition does not support one or both"}
@@ -252,7 +266,7 @@ module Aws::Budgets
context "For region us-iso-east-1 with FIPS disabled and DualStack disabled" do
let(:expected) do
- {"endpoint"=>{"url"=>"https://budgets.us-iso-east-1.c2s.ic.gov"}}
+ {"endpoint"=>{"properties"=>{"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"us-iso-east-1"}]}, "url"=>"https://budgets.c2s.ic.gov"}}
end
it 'produces the expected output from the EndpointProvider' do
@@ -264,6 +278,20 @@ module Aws::Budgets
end
end
+ context "For region aws-iso-b-global with FIPS disabled and DualStack disabled" do
+ let(:expected) do
+ {"endpoint"=>{"properties"=>{"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"us-isob-east-1"}]}, "url"=>"https://budgets.global.sc2s.sgov.gov"}}
+ end
+
+ it 'produces the expected output from the EndpointProvider' do
+ params = EndpointParameters.new(**{:region=>"aws-iso-b-global", :use_fips=>false, :use_dual_stack=>false})
+ endpoint = subject.resolve_endpoint(params)
+ expect(endpoint.url).to eq(expected['endpoint']['url'])
+ expect(endpoint.headers).to eq(expected['endpoint']['headers'] || {})
+ expect(endpoint.properties).to eq(expected['endpoint']['properties'] || {})
+ end
+ end
+
context "For region us-isob-east-1 with FIPS enabled and DualStack enabled" do
let(:expected) do
{"error"=>"FIPS and DualStack are enabled, but this partition does not support one or both"}
@@ -306,7 +334,7 @@ module Aws::Budgets
context "For region us-isob-east-1 with FIPS disabled and DualStack disabled" do
let(:expected) do
- {"endpoint"=>{"url"=>"https://budgets.us-isob-east-1.sc2s.sgov.gov"}}
+ {"endpoint"=>{"properties"=>{"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"budgets", "signingRegion"=>"us-isob-east-1"}]}, "url"=>"https://budgets.global.sc2s.sgov.gov"}}
end
it 'produces the expected output from the EndpointProvider' do
diff --git a/gems/aws-sdk-connect/CHANGELOG.md b/gems/aws-sdk-connect/CHANGELOG.md
index e74eb7ae2ae..23ce5658fc5 100644
--- a/gems/aws-sdk-connect/CHANGELOG.md
+++ b/gems/aws-sdk-connect/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.191.0 (2024-12-18)
+------------------
+
+* Feature - This release adds support for the UpdateParticipantAuthentication API used for customer authentication within Amazon Connect chats.
+
1.190.0 (2024-12-12)
------------------
diff --git a/gems/aws-sdk-connect/VERSION b/gems/aws-sdk-connect/VERSION
index 8d5d795d9e2..51b0c3b6d8e 100644
--- a/gems/aws-sdk-connect/VERSION
+++ b/gems/aws-sdk-connect/VERSION
@@ -1 +1 @@
-1.190.0
+1.191.0
diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect.rb
index ae2d9022eb0..7ab7f60c58d 100644
--- a/gems/aws-sdk-connect/lib/aws-sdk-connect.rb
+++ b/gems/aws-sdk-connect/lib/aws-sdk-connect.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-connect/endpoint_provider'
autoload :Endpoints, 'aws-sdk-connect/endpoints'
- GEM_VERSION = '1.190.0'
+ GEM_VERSION = '1.191.0'
end
diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb
index 71d2d2cdad8..00830f8d32f 100644
--- a/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb
+++ b/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb
@@ -2487,7 +2487,7 @@ def create_instance(params = {}, options = {})
#
# resp = client.create_integration_association({
# instance_id: "InstanceId", # required
- # integration_type: "EVENT", # required, accepts EVENT, VOICE_ID, PINPOINT_APP, WISDOM_ASSISTANT, WISDOM_KNOWLEDGE_BASE, WISDOM_QUICK_RESPONSES, Q_MESSAGE_TEMPLATES, CASES_DOMAIN, APPLICATION, FILE_SCANNER, SES_IDENTITY, ANALYTICS_CONNECTOR, CALL_TRANSFER_CONNECTOR
+ # integration_type: "EVENT", # required, accepts EVENT, VOICE_ID, PINPOINT_APP, WISDOM_ASSISTANT, WISDOM_KNOWLEDGE_BASE, WISDOM_QUICK_RESPONSES, Q_MESSAGE_TEMPLATES, CASES_DOMAIN, APPLICATION, FILE_SCANNER, SES_IDENTITY, ANALYTICS_CONNECTOR, CALL_TRANSFER_CONNECTOR, COGNITO_USER_POOL
# integration_arn: "ARN", # required
# source_application_url: "URI",
# source_application_name: "SourceApplicationName",
@@ -2820,7 +2820,7 @@ def create_prompt(params = {}, options = {})
#
#
#
- # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/set-up-push-notifications-for-mobile-chat.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/enable-push-notifications-for-mobile-chat.html
#
# @option params [required, String] :instance_id
# The identifier of the Amazon Connect instance. You can [find the
@@ -5210,6 +5210,7 @@ def describe_authentication_profile(params = {}, options = {})
# resp.contact.scheduled_timestamp #=> Time
# resp.contact.related_contact_id #=> String
# resp.contact.wisdom_info.session_arn #=> String
+ # resp.contact.customer_id #=> String
# resp.contact.customer_endpoint.type #=> String, one of "TELEPHONE_NUMBER", "VOIP", "CONTACT_FLOW", "CONNECT_PHONENUMBER_ARN", "EMAIL_ADDRESS"
# resp.contact.customer_endpoint.address #=> String
# resp.contact.customer_endpoint.display_name #=> String
@@ -5817,12 +5818,12 @@ def describe_instance(params = {}, options = {})
#
# resp = client.describe_instance_attribute({
# instance_id: "InstanceId", # required
- # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND, ENHANCED_CONTACT_MONITORING, ENHANCED_CHAT_MONITORING
+ # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND, ENHANCED_CONTACT_MONITORING, ENHANCED_CHAT_MONITORING, MULTI_PARTY_CHAT_CONFERENCE
# })
#
# @example Response structure
#
- # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND", "ENHANCED_CONTACT_MONITORING", "ENHANCED_CHAT_MONITORING"
+ # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND", "ENHANCED_CONTACT_MONITORING", "ENHANCED_CHAT_MONITORING", "MULTI_PARTY_CHAT_CONFERENCE"
# resp.attribute.value #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeInstanceAttribute AWS API Documentation
@@ -10292,7 +10293,7 @@ def list_authentication_profiles(params = {}, options = {})
#
# For the specified version of Amazon Lex, returns a paginated list of
# all the Amazon Lex bots currently associated with the instance. Use
- # this API to returns both Amazon Lex V1 and V2 bots.
+ # this API to return both Amazon Lex V1 and V2 bots.
#
# @option params [required, String] :instance_id
# The identifier of the Amazon Connect instance. You can [find the
@@ -11060,7 +11061,7 @@ def list_hours_of_operations(params = {}, options = {})
# @example Response structure
#
# resp.attributes #=> Array
- # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND", "ENHANCED_CONTACT_MONITORING", "ENHANCED_CHAT_MONITORING"
+ # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND", "ENHANCED_CONTACT_MONITORING", "ENHANCED_CHAT_MONITORING", "MULTI_PARTY_CHAT_CONFERENCE"
# resp.attributes[0].value #=> String
# resp.next_token #=> String
#
@@ -11230,7 +11231,7 @@ def list_instances(params = {}, options = {})
#
# resp = client.list_integration_associations({
# instance_id: "InstanceId", # required
- # integration_type: "EVENT", # accepts EVENT, VOICE_ID, PINPOINT_APP, WISDOM_ASSISTANT, WISDOM_KNOWLEDGE_BASE, WISDOM_QUICK_RESPONSES, Q_MESSAGE_TEMPLATES, CASES_DOMAIN, APPLICATION, FILE_SCANNER, SES_IDENTITY, ANALYTICS_CONNECTOR, CALL_TRANSFER_CONNECTOR
+ # integration_type: "EVENT", # accepts EVENT, VOICE_ID, PINPOINT_APP, WISDOM_ASSISTANT, WISDOM_KNOWLEDGE_BASE, WISDOM_QUICK_RESPONSES, Q_MESSAGE_TEMPLATES, CASES_DOMAIN, APPLICATION, FILE_SCANNER, SES_IDENTITY, ANALYTICS_CONNECTOR, CALL_TRANSFER_CONNECTOR, COGNITO_USER_POOL
# next_token: "NextToken",
# max_results: 1,
# integration_arn: "ARN",
@@ -11242,7 +11243,7 @@ def list_instances(params = {}, options = {})
# resp.integration_association_summary_list[0].integration_association_id #=> String
# resp.integration_association_summary_list[0].integration_association_arn #=> String
# resp.integration_association_summary_list[0].instance_id #=> String
- # resp.integration_association_summary_list[0].integration_type #=> String, one of "EVENT", "VOICE_ID", "PINPOINT_APP", "WISDOM_ASSISTANT", "WISDOM_KNOWLEDGE_BASE", "WISDOM_QUICK_RESPONSES", "Q_MESSAGE_TEMPLATES", "CASES_DOMAIN", "APPLICATION", "FILE_SCANNER", "SES_IDENTITY", "ANALYTICS_CONNECTOR", "CALL_TRANSFER_CONNECTOR"
+ # resp.integration_association_summary_list[0].integration_type #=> String, one of "EVENT", "VOICE_ID", "PINPOINT_APP", "WISDOM_ASSISTANT", "WISDOM_KNOWLEDGE_BASE", "WISDOM_QUICK_RESPONSES", "Q_MESSAGE_TEMPLATES", "CASES_DOMAIN", "APPLICATION", "FILE_SCANNER", "SES_IDENTITY", "ANALYTICS_CONNECTOR", "CALL_TRANSFER_CONNECTOR", "COGNITO_USER_POOL"
# resp.integration_association_summary_list[0].integration_arn #=> String
# resp.integration_association_summary_list[0].source_application_url #=> String
# resp.integration_association_summary_list[0].source_application_name #=> String
@@ -15726,6 +15727,10 @@ def start_attached_file_upload(params = {}, options = {})
#
#
#
+ # @option params [String] :customer_id
+ # The customer's identification number. For example, the `CustomerId`
+ # may be a customer number from your CRM.
+ #
# @return [Types::StartChatContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::StartChatContactResponse#contact_id #contact_id} => String
@@ -15767,6 +15772,7 @@ def start_attached_file_upload(params = {}, options = {})
# value_integer: 1,
# },
# },
+ # customer_id: "CustomerIdNonEmpty",
# })
#
# @example Response structure
@@ -18679,7 +18685,7 @@ def update_hours_of_operation_override(params = {}, options = {})
#
# resp = client.update_instance_attribute({
# instance_id: "InstanceId", # required
- # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND, ENHANCED_CONTACT_MONITORING, ENHANCED_CHAT_MONITORING
+ # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND, ENHANCED_CONTACT_MONITORING, ENHANCED_CHAT_MONITORING, MULTI_PARTY_CHAT_CONFERENCE
# value: "InstanceAttributeValue", # required
# })
#
@@ -18761,6 +18767,70 @@ def update_instance_storage_config(params = {}, options = {})
req.send_request(options)
end
+ # Instructs Amazon Connect to resume the authentication process. The
+ # subsequent actions depend on the request body contents:
+ #
+ # * **If a code is provided**: Connect retrieves the identity
+ # information from Amazon Cognito and imports it into Connect Customer
+ # Profiles.
+ #
+ # * **If an error is provided**: The error branch of the Authenticate
+ # Customer block is executed.
+ #
+ # The API returns a success response to acknowledge the request.
+ # However, the interaction and exchange of identity information occur
+ # asynchronously after the response is returned.
+ #
+ #
+ #
+ # @option params [required, String] :state
+ # The `state` query parameter that was provided by Cognito in the
+ # `redirectUri`. This will also match the `state` parameter provided in
+ # the `AuthenticationUrl` from the [GetAuthenticationUrl][1] response.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_GetAuthenticationUrl.html
+ #
+ # @option params [required, String] :instance_id
+ # The identifier of the Amazon Connect instance. You can [find the
+ # instance ID][1] in the Amazon Resource Name (ARN) of the instance.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html
+ #
+ # @option params [String] :code
+ # The `code` query parameter provided by Cognito in the `redirectUri`.
+ #
+ # @option params [String] :error
+ # The `error` query parameter provided by Cognito in the `redirectUri`.
+ #
+ # @option params [String] :error_description
+ # The `error_description` parameter provided by Cognito in the
+ # `redirectUri`.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_participant_authentication({
+ # state: "ParticipantToken", # required
+ # instance_id: "InstanceId", # required
+ # code: "AuthorizationCode",
+ # error: "AuthenticationError",
+ # error_description: "AuthenticationErrorDescription",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateParticipantAuthentication AWS API Documentation
+ #
+ # @overload update_participant_authentication(params = {})
+ # @param [Hash] params ({})
+ def update_participant_authentication(params = {}, options = {})
+ req = build_request(:update_participant_authentication, params)
+ req.send_request(options)
+ end
+
# Updates timeouts for when human chat participants are to be considered
# idle, and when agents are automatically disconnected from a chat due
# to idleness. You can set four timers:
@@ -20500,7 +20570,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-connect'
- context[:gem_version] = '1.190.0'
+ context[:gem_version] = '1.191.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect/client_api.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect/client_api.rb
index 79a39e8c1bb..e95ac6537e1 100644
--- a/gems/aws-sdk-connect/lib/aws-sdk-connect/client_api.rb
+++ b/gems/aws-sdk-connect/lib/aws-sdk-connect/client_api.rb
@@ -118,12 +118,15 @@ module ClientApi
AudioFeatures = Shapes::StructureShape.new(name: 'AudioFeatures')
AudioQualityMetricsInfo = Shapes::StructureShape.new(name: 'AudioQualityMetricsInfo')
AudioQualityScore = Shapes::FloatShape.new(name: 'AudioQualityScore')
+ AuthenticationError = Shapes::StringShape.new(name: 'AuthenticationError')
+ AuthenticationErrorDescription = Shapes::StringShape.new(name: 'AuthenticationErrorDescription')
AuthenticationProfile = Shapes::StructureShape.new(name: 'AuthenticationProfile')
AuthenticationProfileDescription = Shapes::StringShape.new(name: 'AuthenticationProfileDescription')
AuthenticationProfileId = Shapes::StringShape.new(name: 'AuthenticationProfileId')
AuthenticationProfileName = Shapes::StringShape.new(name: 'AuthenticationProfileName')
AuthenticationProfileSummary = Shapes::StructureShape.new(name: 'AuthenticationProfileSummary')
AuthenticationProfileSummaryList = Shapes::ListShape.new(name: 'AuthenticationProfileSummaryList')
+ AuthorizationCode = Shapes::StringShape.new(name: 'AuthorizationCode')
AutoAccept = Shapes::BooleanShape.new(name: 'AutoAccept')
AvailableNumberSummary = Shapes::StructureShape.new(name: 'AvailableNumberSummary')
AvailableNumbersList = Shapes::ListShape.new(name: 'AvailableNumbersList')
@@ -309,6 +312,8 @@ module ClientApi
CurrentMetricSortCriteriaMaxOne = Shapes::ListShape.new(name: 'CurrentMetricSortCriteriaMaxOne')
CurrentMetrics = Shapes::ListShape.new(name: 'CurrentMetrics')
Customer = Shapes::StructureShape.new(name: 'Customer')
+ CustomerId = Shapes::StringShape.new(name: 'CustomerId')
+ CustomerIdNonEmpty = Shapes::StringShape.new(name: 'CustomerIdNonEmpty')
CustomerProfileAttributesSerialized = Shapes::StringShape.new(name: 'CustomerProfileAttributesSerialized')
CustomerQualityMetrics = Shapes::StructureShape.new(name: 'CustomerQualityMetrics')
CustomerVoiceActivity = Shapes::StructureShape.new(name: 'CustomerVoiceActivity')
@@ -1389,6 +1394,8 @@ module ClientApi
UpdateHoursOfOperationRequest = Shapes::StructureShape.new(name: 'UpdateHoursOfOperationRequest')
UpdateInstanceAttributeRequest = Shapes::StructureShape.new(name: 'UpdateInstanceAttributeRequest')
UpdateInstanceStorageConfigRequest = Shapes::StructureShape.new(name: 'UpdateInstanceStorageConfigRequest')
+ UpdateParticipantAuthenticationRequest = Shapes::StructureShape.new(name: 'UpdateParticipantAuthenticationRequest')
+ UpdateParticipantAuthenticationResponse = Shapes::StructureShape.new(name: 'UpdateParticipantAuthenticationResponse')
UpdateParticipantRoleConfigChannelInfo = Shapes::UnionShape.new(name: 'UpdateParticipantRoleConfigChannelInfo')
UpdateParticipantRoleConfigRequest = Shapes::StructureShape.new(name: 'UpdateParticipantRoleConfigRequest')
UpdateParticipantRoleConfigResponse = Shapes::StructureShape.new(name: 'UpdateParticipantRoleConfigResponse')
@@ -1983,6 +1990,7 @@ module ClientApi
Contact.add_member(:scheduled_timestamp, Shapes::ShapeRef.new(shape: timestamp, location_name: "ScheduledTimestamp"))
Contact.add_member(:related_contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "RelatedContactId"))
Contact.add_member(:wisdom_info, Shapes::ShapeRef.new(shape: WisdomInfo, location_name: "WisdomInfo"))
+ Contact.add_member(:customer_id, Shapes::ShapeRef.new(shape: CustomerId, location_name: "CustomerId"))
Contact.add_member(:customer_endpoint, Shapes::ShapeRef.new(shape: EndpointInfo, location_name: "CustomerEndpoint"))
Contact.add_member(:system_endpoint, Shapes::ShapeRef.new(shape: EndpointInfo, location_name: "SystemEndpoint"))
Contact.add_member(:queue_time_adjustment_seconds, Shapes::ShapeRef.new(shape: QueueTimeAdjustmentSeconds, location_name: "QueueTimeAdjustmentSeconds"))
@@ -5487,6 +5495,7 @@ module ClientApi
StartChatContactRequest.add_member(:persistent_chat, Shapes::ShapeRef.new(shape: PersistentChat, location_name: "PersistentChat"))
StartChatContactRequest.add_member(:related_contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "RelatedContactId"))
StartChatContactRequest.add_member(:segment_attributes, Shapes::ShapeRef.new(shape: SegmentAttributes, location_name: "SegmentAttributes"))
+ StartChatContactRequest.add_member(:customer_id, Shapes::ShapeRef.new(shape: CustomerIdNonEmpty, location_name: "CustomerId"))
StartChatContactRequest.struct_class = Types::StartChatContactRequest
StartChatContactResponse.add_member(:contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "ContactId"))
@@ -6029,6 +6038,15 @@ module ClientApi
UpdateInstanceStorageConfigRequest.add_member(:storage_config, Shapes::ShapeRef.new(shape: InstanceStorageConfig, required: true, location_name: "StorageConfig"))
UpdateInstanceStorageConfigRequest.struct_class = Types::UpdateInstanceStorageConfigRequest
+ UpdateParticipantAuthenticationRequest.add_member(:state, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location_name: "State"))
+ UpdateParticipantAuthenticationRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
+ UpdateParticipantAuthenticationRequest.add_member(:code, Shapes::ShapeRef.new(shape: AuthorizationCode, location_name: "Code"))
+ UpdateParticipantAuthenticationRequest.add_member(:error, Shapes::ShapeRef.new(shape: AuthenticationError, location_name: "Error"))
+ UpdateParticipantAuthenticationRequest.add_member(:error_description, Shapes::ShapeRef.new(shape: AuthenticationErrorDescription, location_name: "ErrorDescription"))
+ UpdateParticipantAuthenticationRequest.struct_class = Types::UpdateParticipantAuthenticationRequest
+
+ UpdateParticipantAuthenticationResponse.struct_class = Types::UpdateParticipantAuthenticationResponse
+
UpdateParticipantRoleConfigChannelInfo.add_member(:chat, Shapes::ShapeRef.new(shape: ChatParticipantRoleConfig, location_name: "Chat"))
UpdateParticipantRoleConfigChannelInfo.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
UpdateParticipantRoleConfigChannelInfo.add_member_subclass(:chat, Types::UpdateParticipantRoleConfigChannelInfo::Chat)
@@ -10229,6 +10247,20 @@ module ClientApi
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
end)
+ api.add_operation(:update_participant_authentication, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateParticipantAuthentication"
+ o.http_method = "POST"
+ o.http_request_uri = "/contact/update-participant-authentication"
+ o.input = Shapes::ShapeRef.new(shape: UpdateParticipantAuthenticationRequest)
+ o.output = Shapes::ShapeRef.new(shape: UpdateParticipantAuthenticationResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
+ end)
+
api.add_operation(:update_participant_role_config, Seahorse::Model::Operation.new.tap do |o|
o.name = "UpdateParticipantRoleConfig"
o.http_method = "PUT"
diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb
index ba80db2a2aa..0d8e53b3019 100644
--- a/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb
+++ b/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb
@@ -2381,6 +2381,14 @@ class ConnectionData < Struct.new(
# Information about Amazon Connect Wisdom.
# @return [Types::WisdomInfo]
#
+ # @!attribute [rw] customer_id
+ # The customer's identification number. For example, the `CustomerId`
+ # may be a customer number from your CRM. You can create a Lambda
+ # function to pull the unique customer ID of the caller from your CRM
+ # system. If you enable Amazon Connect Voice ID capability, this
+ # attribute is populated with the `CustomerSpeakerId` of the caller.
+ # @return [String]
+ #
# @!attribute [rw] customer_endpoint
# The customer or external third party participant endpoint.
# @return [Types::EndpointInfo]
@@ -2489,6 +2497,7 @@ class Contact < Struct.new(
:scheduled_timestamp,
:related_contact_id,
:wisdom_info,
+ :customer_id,
:customer_endpoint,
:system_endpoint,
:queue_time_adjustment_seconds,
@@ -21473,6 +21482,11 @@ class StartAttachedFileUploadResponse < Struct.new(
#
# @return [Hash]
#
+ # @!attribute [rw] customer_id
+ # The customer's identification number. For example, the `CustomerId`
+ # may be a customer number from your CRM.
+ # @return [String]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartChatContactRequest AWS API Documentation
#
class StartChatContactRequest < Struct.new(
@@ -21486,8 +21500,9 @@ class StartChatContactRequest < Struct.new(
:supported_messaging_content_types,
:persistent_chat,
:related_contact_id,
- :segment_attributes)
- SENSITIVE = []
+ :segment_attributes,
+ :customer_id)
+ SENSITIVE = [:customer_id]
include Aws::Structure
end
@@ -24503,6 +24518,56 @@ class UpdateInstanceStorageConfigRequest < Struct.new(
include Aws::Structure
end
+ # @!attribute [rw] state
+ # The `state` query parameter that was provided by Cognito in the
+ # `redirectUri`. This will also match the `state` parameter provided
+ # in the `AuthenticationUrl` from the [GetAuthenticationUrl][1]
+ # response.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_GetAuthenticationUrl.html
+ # @return [String]
+ #
+ # @!attribute [rw] instance_id
+ # The identifier of the Amazon Connect instance. You can [find the
+ # instance ID][1] in the Amazon Resource Name (ARN) of the instance.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html
+ # @return [String]
+ #
+ # @!attribute [rw] code
+ # The `code` query parameter provided by Cognito in the `redirectUri`.
+ # @return [String]
+ #
+ # @!attribute [rw] error
+ # The `error` query parameter provided by Cognito in the
+ # `redirectUri`.
+ # @return [String]
+ #
+ # @!attribute [rw] error_description
+ # The `error_description` parameter provided by Cognito in the
+ # `redirectUri`.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateParticipantAuthenticationRequest AWS API Documentation
+ #
+ class UpdateParticipantAuthenticationRequest < Struct.new(
+ :state,
+ :instance_id,
+ :code,
+ :error,
+ :error_description)
+ SENSITIVE = [:code, :error, :error_description]
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateParticipantAuthenticationResponse AWS API Documentation
+ #
+ class UpdateParticipantAuthenticationResponse < Aws::EmptyStructure; end
+
# Configuration information for the chat participant role.
#
# @note UpdateParticipantRoleConfigChannelInfo is a union - when making an API calls you must set exactly one of the members.
@@ -26756,6 +26821,9 @@ class VocabularySummary < Struct.new(
#
# @!attribute [rw] ivr_recording_track
# Identifies which IVR track is being recorded.
+ #
+ # One and only one of the track configurations should be presented in
+ # the request.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/VoiceRecordingConfiguration AWS API Documentation
diff --git a/gems/aws-sdk-connect/sig/client.rbs b/gems/aws-sdk-connect/sig/client.rbs
index 42e624848f0..d9d59df34c6 100644
--- a/gems/aws-sdk-connect/sig/client.rbs
+++ b/gems/aws-sdk-connect/sig/client.rbs
@@ -655,7 +655,7 @@ module Aws
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Connect/Client.html#create_integration_association-instance_method
def create_integration_association: (
instance_id: ::String,
- integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR"),
+ integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR" | "COGNITO_USER_POOL"),
integration_arn: ::String,
?source_application_url: ::String,
?source_application_name: ::String,
@@ -1491,7 +1491,7 @@ module Aws
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Connect/Client.html#describe_instance_attribute-instance_method
def describe_instance_attribute: (
instance_id: ::String,
- attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING")
+ attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING" | "MULTI_PARTY_CHAT_CONFERENCE")
) -> _DescribeInstanceAttributeResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeInstanceAttributeResponseSuccess
@@ -2348,7 +2348,7 @@ module Aws
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Connect/Client.html#list_integration_associations-instance_method
def list_integration_associations: (
instance_id: ::String,
- ?integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR"),
+ ?integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR" | "COGNITO_USER_POOL"),
?next_token: ::String,
?max_results: ::Integer,
?integration_arn: ::String
@@ -3813,7 +3813,8 @@ module Aws
value_string: ::String?,
value_map: Hash[::String, untyped]?,
value_integer: ::Integer?
- }]
+ }],
+ ?customer_id: ::String
) -> _StartChatContactResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StartChatContactResponseSuccess
@@ -4593,7 +4594,7 @@ module Aws
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Connect/Client.html#update_instance_attribute-instance_method
def update_instance_attribute: (
instance_id: ::String,
- attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING"),
+ attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING" | "MULTI_PARTY_CHAT_CONFERENCE"),
value: ::String
) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
@@ -4632,6 +4633,19 @@ module Aws
) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
+ interface _UpdateParticipantAuthenticationResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateParticipantAuthenticationResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Connect/Client.html#update_participant_authentication-instance_method
+ def update_participant_authentication: (
+ state: ::String,
+ instance_id: ::String,
+ ?code: ::String,
+ ?error: ::String,
+ ?error_description: ::String
+ ) -> _UpdateParticipantAuthenticationResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateParticipantAuthenticationResponseSuccess
+
interface _UpdateParticipantRoleConfigResponseSuccess
include ::Seahorse::Client::_ResponseSuccess[Types::UpdateParticipantRoleConfigResponse]
end
diff --git a/gems/aws-sdk-connect/sig/types.rbs b/gems/aws-sdk-connect/sig/types.rbs
index 660cfe80a55..87942f9c388 100644
--- a/gems/aws-sdk-connect/sig/types.rbs
+++ b/gems/aws-sdk-connect/sig/types.rbs
@@ -331,7 +331,7 @@ module Aws::Connect
end
class Attribute
- attr_accessor attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING")
+ attr_accessor attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING" | "MULTI_PARTY_CHAT_CONFERENCE")
attr_accessor value: ::String
SENSITIVE: []
end
@@ -577,6 +577,7 @@ module Aws::Connect
attr_accessor scheduled_timestamp: ::Time
attr_accessor related_contact_id: ::String
attr_accessor wisdom_info: Types::WisdomInfo
+ attr_accessor customer_id: ::String
attr_accessor customer_endpoint: Types::EndpointInfo
attr_accessor system_endpoint: Types::EndpointInfo
attr_accessor queue_time_adjustment_seconds: ::Integer
@@ -949,7 +950,7 @@ module Aws::Connect
class CreateIntegrationAssociationRequest
attr_accessor instance_id: ::String
- attr_accessor integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR")
+ attr_accessor integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR" | "COGNITO_USER_POOL")
attr_accessor integration_arn: ::String
attr_accessor source_application_url: ::String
attr_accessor source_application_name: ::String
@@ -1666,7 +1667,7 @@ module Aws::Connect
class DescribeInstanceAttributeRequest
attr_accessor instance_id: ::String
- attr_accessor attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING")
+ attr_accessor attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING" | "MULTI_PARTY_CHAT_CONFERENCE")
SENSITIVE: []
end
@@ -2865,7 +2866,7 @@ module Aws::Connect
attr_accessor integration_association_id: ::String
attr_accessor integration_association_arn: ::String
attr_accessor instance_id: ::String
- attr_accessor integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR")
+ attr_accessor integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR" | "COGNITO_USER_POOL")
attr_accessor integration_arn: ::String
attr_accessor source_application_url: ::String
attr_accessor source_application_name: ::String
@@ -3242,7 +3243,7 @@ module Aws::Connect
class ListIntegrationAssociationsRequest
attr_accessor instance_id: ::String
- attr_accessor integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR")
+ attr_accessor integration_type: ("EVENT" | "VOICE_ID" | "PINPOINT_APP" | "WISDOM_ASSISTANT" | "WISDOM_KNOWLEDGE_BASE" | "WISDOM_QUICK_RESPONSES" | "Q_MESSAGE_TEMPLATES" | "CASES_DOMAIN" | "APPLICATION" | "FILE_SCANNER" | "SES_IDENTITY" | "ANALYTICS_CONNECTOR" | "CALL_TRANSFER_CONNECTOR" | "COGNITO_USER_POOL")
attr_accessor next_token: ::String
attr_accessor max_results: ::Integer
attr_accessor integration_arn: ::String
@@ -5030,7 +5031,8 @@ module Aws::Connect
attr_accessor persistent_chat: Types::PersistentChat
attr_accessor related_contact_id: ::String
attr_accessor segment_attributes: ::Hash[::String, Types::SegmentAttributeValue]
- SENSITIVE: []
+ attr_accessor customer_id: ::String
+ SENSITIVE: [:customer_id]
end
class StartChatContactResponse
@@ -5704,7 +5706,7 @@ module Aws::Connect
class UpdateInstanceAttributeRequest
attr_accessor instance_id: ::String
- attr_accessor attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING")
+ attr_accessor attribute_type: ("INBOUND_CALLS" | "OUTBOUND_CALLS" | "CONTACTFLOW_LOGS" | "CONTACT_LENS" | "AUTO_RESOLVE_BEST_VOICES" | "USE_CUSTOM_TTS_VOICES" | "EARLY_MEDIA" | "MULTI_PARTY_CONFERENCE" | "HIGH_VOLUME_OUTBOUND" | "ENHANCED_CONTACT_MONITORING" | "ENHANCED_CHAT_MONITORING" | "MULTI_PARTY_CHAT_CONFERENCE")
attr_accessor value: ::String
SENSITIVE: []
end
@@ -5717,6 +5719,18 @@ module Aws::Connect
SENSITIVE: []
end
+ class UpdateParticipantAuthenticationRequest
+ attr_accessor state: ::String
+ attr_accessor instance_id: ::String
+ attr_accessor code: ::String
+ attr_accessor error: ::String
+ attr_accessor error_description: ::String
+ SENSITIVE: [:code, :error, :error_description]
+ end
+
+ class UpdateParticipantAuthenticationResponse < Aws::EmptyStructure
+ end
+
class UpdateParticipantRoleConfigChannelInfo
attr_accessor chat: Types::ChatParticipantRoleConfig
attr_accessor unknown: untyped
diff --git a/gems/aws-sdk-connectparticipant/CHANGELOG.md b/gems/aws-sdk-connectparticipant/CHANGELOG.md
index ce7cf39e777..4e463648dc9 100644
--- a/gems/aws-sdk-connectparticipant/CHANGELOG.md
+++ b/gems/aws-sdk-connectparticipant/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.58.0 (2024-12-18)
+------------------
+
+* Feature - This release adds support for the GetAuthenticationUrl and CancelParticipantAuthentication APIs used for customer authentication within Amazon Connect chats. There are also minor updates to the GetAttachment API.
+
1.57.0 (2024-11-06)
------------------
diff --git a/gems/aws-sdk-connectparticipant/VERSION b/gems/aws-sdk-connectparticipant/VERSION
index 373aea97570..79f82f6b8e0 100644
--- a/gems/aws-sdk-connectparticipant/VERSION
+++ b/gems/aws-sdk-connectparticipant/VERSION
@@ -1 +1 @@
-1.57.0
+1.58.0
diff --git a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant.rb b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant.rb
index 6e7126e6210..97adf562292 100644
--- a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant.rb
+++ b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant.rb
@@ -23,7 +23,7 @@
# structure.
#
# connect_participant = Aws::ConnectParticipant::Client.new
-# resp = connect_participant.complete_attachment_upload(params)
+# resp = connect_participant.cancel_participant_authentication(params)
#
# See {Client} for more information.
#
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-connectparticipant/endpoint_provider'
autoload :Endpoints, 'aws-sdk-connectparticipant/endpoints'
- GEM_VERSION = '1.57.0'
+ GEM_VERSION = '1.58.0'
end
diff --git a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client.rb b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client.rb
index d20edd78af4..e8dba4a3fe6 100644
--- a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client.rb
+++ b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client.rb
@@ -447,22 +447,59 @@ def initialize(*args)
# @!group API Operations
+ # Cancels the authentication session. The opted out branch of the
+ # Authenticate Customer flow block will be taken.
+ #
+ # The current supported channel is chat. This API is not supported for
+ # Apple Messages for Business, WhatsApp, or SMS chats.
+ #
+ #
+ #
+ # @option params [required, String] :session_id
+ # The `sessionId` provided in the `authenticationInitiated` event.
+ #
+ # @option params [required, String] :connection_token
+ # The authentication token associated with the participant's
+ # connection.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.cancel_participant_authentication({
+ # session_id: "SessionId", # required
+ # connection_token: "ParticipantToken", # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CancelParticipantAuthentication AWS API Documentation
+ #
+ # @overload cancel_participant_authentication(params = {})
+ # @param [Hash] params ({})
+ def cancel_participant_authentication(params = {}, options = {})
+ req = build_request(:cancel_participant_authentication, params)
+ req.send_request(options)
+ end
+
# Allows you to confirm that the attachment has been uploaded using the
# pre-signed URL provided in StartAttachmentUpload API. A conflict
# exception is thrown when an attachment with that identifier is already
# being uploaded.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
# `ConnectionToken` is used for invoking this API instead of
# `ParticipantToken`.
#
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][1].
+ # Version 4 authentication][2].
#
#
#
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [required, Array] :attachment_ids
# A list of unique identifiers for the attachments.
@@ -505,6 +542,9 @@ def complete_attachment_upload(params = {}, options = {})
# Creates the participant's connection.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
# `ParticipantToken` is used for invoking this API instead of
# `ConnectionToken`.
#
@@ -527,27 +567,28 @@ def complete_attachment_upload(params = {}, options = {})
# obtain a new websocket URL and perform the same steps as before.
#
# **Message streaming support**: This API can also be used together with
- # the [StartContactStreaming][1] API to create a participant connection
+ # the [StartContactStreaming][2] API to create a participant connection
# for chat contacts that are not using a websocket. For more information
- # about message streaming, [Enable real-time chat message streaming][2]
+ # about message streaming, [Enable real-time chat message streaming][3]
# in the *Amazon Connect Administrator Guide*.
#
# **Feature specifications**: For information about feature
# specifications, such as the allowed number of open websocket
- # connections per participant, see [Feature specifications][3] in the
+ # connections per participant, see [Feature specifications][4] in the
# *Amazon Connect Administrator Guide*.
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][4].
+ # Version 4 authentication][5].
#
#
#
#
#
- # [1]: https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html
- # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/chat-message-streaming.html
- # [3]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#feature-limits
- # [4]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [2]: https://docs.aws.amazon.com/connect/latest/APIReference/API_StartContactStreaming.html
+ # [3]: https://docs.aws.amazon.com/connect/latest/adminguide/chat-message-streaming.html
+ # [4]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#feature-limits
+ # [5]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [Array] :type
# Type of connection information required. If you need
@@ -600,6 +641,13 @@ def create_participant_connection(params = {}, options = {})
# Retrieves the view for the specified view token.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ #
# @option params [required, String] :view_token
# An encrypted token originating from the interactive message of a
# ShowView block operation. Represents the desired view.
@@ -640,17 +688,21 @@ def describe_view(params = {}, options = {})
# Disconnects a participant.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
# `ConnectionToken` is used for invoking this API instead of
# `ParticipantToken`.
#
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][1].
+ # Version 4 authentication][2].
#
#
#
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [String] :client_token
# A unique, case-sensitive identifier that you provide to ensure the
@@ -690,17 +742,21 @@ def disconnect_participant(params = {}, options = {})
# Provides a pre-signed URL for download of a completed attachment. This
# is an asynchronous API for use with active contacts.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
# `ConnectionToken` is used for invoking this API instead of
# `ParticipantToken`.
#
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][1].
+ # Version 4 authentication][2].
#
#
#
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [required, String] :attachment_id
# A unique identifier for the attachment.
@@ -709,22 +765,30 @@ def disconnect_participant(params = {}, options = {})
# The authentication token associated with the participant's
# connection.
#
+ # @option params [Integer] :url_expiry_in_seconds
+ # The expiration time of the URL in ISO timestamp. It's specified in
+ # ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example,
+ # 2019-11-08T02:41:28.172Z.
+ #
# @return [Types::GetAttachmentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::GetAttachmentResponse#url #url} => String
# * {Types::GetAttachmentResponse#url_expiry #url_expiry} => String
+ # * {Types::GetAttachmentResponse#attachment_size_in_bytes #attachment_size_in_bytes} => Integer
#
# @example Request syntax with placeholder values
#
# resp = client.get_attachment({
# attachment_id: "ArtifactId", # required
# connection_token: "ParticipantToken", # required
+ # url_expiry_in_seconds: 1,
# })
#
# @example Response structure
#
# resp.url #=> String
# resp.url_expiry #=> String
+ # resp.attachment_size_in_bytes #=> Integer
#
# @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAttachment AWS API Documentation
#
@@ -735,10 +799,67 @@ def get_attachment(params = {}, options = {})
req.send_request(options)
end
+ # Retrieves the AuthenticationUrl for the current authentication session
+ # for the AuthenticateCustomer flow block.
+ #
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
+ # * This API can only be called within one minute of receiving the
+ # authenticationInitiated event.
+ #
+ # * The current supported channel is chat. This API is not supported for
+ # Apple Messages for Business, WhatsApp, or SMS chats.
+ #
+ #
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ #
+ # @option params [required, String] :session_id
+ # The sessionId provided in the authenticationInitiated event.
+ #
+ # @option params [required, String] :redirect_uri
+ # The URL where the customer will be redirected after Amazon Cognito
+ # authorizes the user.
+ #
+ # @option params [required, String] :connection_token
+ # The authentication token associated with the participant's
+ # connection.
+ #
+ # @return [Types::GetAuthenticationUrlResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetAuthenticationUrlResponse#authentication_url #authentication_url} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_authentication_url({
+ # session_id: "SessionId", # required
+ # redirect_uri: "RedirectURI", # required
+ # connection_token: "ParticipantToken", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.authentication_url #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAuthenticationUrl AWS API Documentation
+ #
+ # @overload get_authentication_url(params = {})
+ # @param [Hash] params ({})
+ def get_authentication_url(params = {}, options = {})
+ req = build_request(:get_authentication_url, params)
+ req.send_request(options)
+ end
+
# Retrieves a transcript of the session, including details about any
# attachments. For information about accessing past chat contact
# transcripts for a persistent chat, see [Enable persistent chat][1].
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][2].
+ #
# If you have a process that consumes events in the transcript of an
# chat that has ended, note that chat transcripts contain the following
# event content types if the event has occurred during the chat session:
@@ -759,12 +880,13 @@ def get_attachment(params = {}, options = {})
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][2].
+ # Version 4 authentication][3].
#
#
#
# [1]: https://docs.aws.amazon.com/connect/latest/adminguide/chat-persistence.html
- # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [3]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [String] :contact_id
# The contactId from the current contact chain for which transcript is
@@ -863,18 +985,22 @@ def get_transcript(params = {}, options = {})
# message receipts when a supervisor is barged-in will result in a
# conflict exception.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][2].
+ #
# `ConnectionToken` is used for invoking this API instead of
# `ParticipantToken`.
#
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][2].
+ # Version 4 authentication][3].
#
#
#
# [1]: https://docs.aws.amazon.com/connect-participant/latest/APIReference/API_CreateParticipantConnection.html
- # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [3]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [required, String] :content_type
# The content type of the request. Supported types are:
@@ -943,17 +1069,21 @@ def send_event(params = {}, options = {})
# Sends a message.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
# `ConnectionToken` is used for invoking this API instead of
# `ParticipantToken`.
#
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][1].
+ # Version 4 authentication][2].
#
#
#
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [required, String] :content_type
# The type of the content. Supported types are `text/plain`,
@@ -1020,17 +1150,21 @@ def send_message(params = {}, options = {})
# Provides a pre-signed Amazon S3 URL in response for uploading the file
# directly to S3.
#
+ # For security recommendations, see [Amazon Connect Chat security best
+ # practices][1].
+ #
# `ConnectionToken` is used for invoking this API instead of
# `ParticipantToken`.
#
#
#
# The Amazon Connect Participant Service APIs do not use [Signature
- # Version 4 authentication][1].
+ # Version 4 authentication][2].
#
#
#
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/security-best-practices.html#bp-security-chat
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
#
# @option params [required, String] :content_type
# Describes the MIME file type of the attachment. For a list of
@@ -1114,7 +1248,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-connectparticipant'
- context[:gem_version] = '1.57.0'
+ context[:gem_version] = '1.58.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client_api.rb b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client_api.rb
index 8090c405aa9..27c1474e32d 100644
--- a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client_api.rb
+++ b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/client_api.rb
@@ -23,7 +23,10 @@ module ClientApi
AttachmentName = Shapes::StringShape.new(name: 'AttachmentName')
AttachmentSizeInBytes = Shapes::IntegerShape.new(name: 'AttachmentSizeInBytes')
Attachments = Shapes::ListShape.new(name: 'Attachments')
+ AuthenticationUrl = Shapes::StringShape.new(name: 'AuthenticationUrl')
Bool = Shapes::BooleanShape.new(name: 'Bool')
+ CancelParticipantAuthenticationRequest = Shapes::StructureShape.new(name: 'CancelParticipantAuthenticationRequest')
+ CancelParticipantAuthenticationResponse = Shapes::StructureShape.new(name: 'CancelParticipantAuthenticationResponse')
ChatContent = Shapes::StringShape.new(name: 'ChatContent')
ChatContentType = Shapes::StringShape.new(name: 'ChatContentType')
ChatItemId = Shapes::StringShape.new(name: 'ChatItemId')
@@ -46,6 +49,8 @@ module ClientApi
DisplayName = Shapes::StringShape.new(name: 'DisplayName')
GetAttachmentRequest = Shapes::StructureShape.new(name: 'GetAttachmentRequest')
GetAttachmentResponse = Shapes::StructureShape.new(name: 'GetAttachmentResponse')
+ GetAuthenticationUrlRequest = Shapes::StructureShape.new(name: 'GetAuthenticationUrlRequest')
+ GetAuthenticationUrlResponse = Shapes::StructureShape.new(name: 'GetAuthenticationUrlResponse')
GetTranscriptRequest = Shapes::StructureShape.new(name: 'GetTranscriptRequest')
GetTranscriptResponse = Shapes::StructureShape.new(name: 'GetTranscriptResponse')
ISO8601Datetime = Shapes::StringShape.new(name: 'ISO8601Datetime')
@@ -66,6 +71,7 @@ module ClientApi
Reason = Shapes::StringShape.new(name: 'Reason')
Receipt = Shapes::StructureShape.new(name: 'Receipt')
Receipts = Shapes::ListShape.new(name: 'Receipts')
+ RedirectURI = Shapes::StringShape.new(name: 'RedirectURI')
ResourceId = Shapes::StringShape.new(name: 'ResourceId')
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
ResourceType = Shapes::StringShape.new(name: 'ResourceType')
@@ -75,12 +81,14 @@ module ClientApi
SendMessageRequest = Shapes::StructureShape.new(name: 'SendMessageRequest')
SendMessageResponse = Shapes::StructureShape.new(name: 'SendMessageResponse')
ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
+ SessionId = Shapes::StringShape.new(name: 'SessionId')
SortKey = Shapes::StringShape.new(name: 'SortKey')
StartAttachmentUploadRequest = Shapes::StructureShape.new(name: 'StartAttachmentUploadRequest')
StartAttachmentUploadResponse = Shapes::StructureShape.new(name: 'StartAttachmentUploadResponse')
StartPosition = Shapes::StructureShape.new(name: 'StartPosition')
ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
Transcript = Shapes::ListShape.new(name: 'Transcript')
+ URLExpiryInSeconds = Shapes::IntegerShape.new(name: 'URLExpiryInSeconds')
UploadMetadata = Shapes::StructureShape.new(name: 'UploadMetadata')
UploadMetadataSignedHeaders = Shapes::MapShape.new(name: 'UploadMetadataSignedHeaders')
UploadMetadataSignedHeadersKey = Shapes::StringShape.new(name: 'UploadMetadataSignedHeadersKey')
@@ -112,6 +120,12 @@ module ClientApi
Attachments.member = Shapes::ShapeRef.new(shape: AttachmentItem)
+ CancelParticipantAuthenticationRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: SessionId, required: true, location_name: "SessionId"))
+ CancelParticipantAuthenticationRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
+ CancelParticipantAuthenticationRequest.struct_class = Types::CancelParticipantAuthenticationRequest
+
+ CancelParticipantAuthenticationResponse.struct_class = Types::CancelParticipantAuthenticationResponse
+
CompleteAttachmentUploadRequest.add_member(:attachment_ids, Shapes::ShapeRef.new(shape: AttachmentIdList, required: true, location_name: "AttachmentIds"))
CompleteAttachmentUploadRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: NonEmptyClientToken, required: true, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
CompleteAttachmentUploadRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
@@ -152,12 +166,22 @@ module ClientApi
GetAttachmentRequest.add_member(:attachment_id, Shapes::ShapeRef.new(shape: ArtifactId, required: true, location_name: "AttachmentId"))
GetAttachmentRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
+ GetAttachmentRequest.add_member(:url_expiry_in_seconds, Shapes::ShapeRef.new(shape: URLExpiryInSeconds, location_name: "UrlExpiryInSeconds"))
GetAttachmentRequest.struct_class = Types::GetAttachmentRequest
GetAttachmentResponse.add_member(:url, Shapes::ShapeRef.new(shape: PreSignedAttachmentUrl, location_name: "Url"))
GetAttachmentResponse.add_member(:url_expiry, Shapes::ShapeRef.new(shape: ISO8601Datetime, location_name: "UrlExpiry"))
+ GetAttachmentResponse.add_member(:attachment_size_in_bytes, Shapes::ShapeRef.new(shape: AttachmentSizeInBytes, required: true, location_name: "AttachmentSizeInBytes", metadata: {"box"=>true}))
GetAttachmentResponse.struct_class = Types::GetAttachmentResponse
+ GetAuthenticationUrlRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: SessionId, required: true, location_name: "SessionId"))
+ GetAuthenticationUrlRequest.add_member(:redirect_uri, Shapes::ShapeRef.new(shape: RedirectURI, required: true, location_name: "RedirectUri"))
+ GetAuthenticationUrlRequest.add_member(:connection_token, Shapes::ShapeRef.new(shape: ParticipantToken, required: true, location: "header", location_name: "X-Amz-Bearer"))
+ GetAuthenticationUrlRequest.struct_class = Types::GetAuthenticationUrlRequest
+
+ GetAuthenticationUrlResponse.add_member(:authentication_url, Shapes::ShapeRef.new(shape: AuthenticationUrl, location_name: "AuthenticationUrl"))
+ GetAuthenticationUrlResponse.struct_class = Types::GetAuthenticationUrlResponse
+
GetTranscriptRequest.add_member(:contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "ContactId"))
GetTranscriptRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults", metadata: {"box"=>true}))
GetTranscriptRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -299,6 +323,18 @@ module ClientApi
"uid" => "connectparticipant-2018-09-07",
}
+ api.add_operation(:cancel_participant_authentication, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "CancelParticipantAuthentication"
+ o.http_method = "POST"
+ o.http_request_uri = "/participant/cancel-authentication"
+ o.input = Shapes::ShapeRef.new(shape: CancelParticipantAuthenticationRequest)
+ o.output = Shapes::ShapeRef.new(shape: CancelParticipantAuthenticationResponse)
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
+ end)
+
api.add_operation(:complete_attachment_upload, Seahorse::Model::Operation.new.tap do |o|
o.name = "CompleteAttachmentUpload"
o.http_method = "POST"
@@ -362,6 +398,18 @@ module ClientApi
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
end)
+ api.add_operation(:get_authentication_url, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "GetAuthenticationUrl"
+ o.http_method = "POST"
+ o.http_request_uri = "/participant/authentication-url"
+ o.input = Shapes::ShapeRef.new(shape: GetAuthenticationUrlRequest)
+ o.output = Shapes::ShapeRef.new(shape: GetAuthenticationUrlResponse)
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
+ end)
+
api.add_operation(:get_transcript, Seahorse::Model::Operation.new.tap do |o|
o.name = "GetTranscript"
o.http_method = "POST"
diff --git a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/types.rb b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/types.rb
index 9a33054b3df..ba3525ac231 100644
--- a/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/types.rb
+++ b/gems/aws-sdk-connectparticipant/lib/aws-sdk-connectparticipant/types.rb
@@ -59,6 +59,28 @@ class AttachmentItem < Struct.new(
include Aws::Structure
end
+ # @!attribute [rw] session_id
+ # The `sessionId` provided in the `authenticationInitiated` event.
+ # @return [String]
+ #
+ # @!attribute [rw] connection_token
+ # The authentication token associated with the participant's
+ # connection.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CancelParticipantAuthenticationRequest AWS API Documentation
+ #
+ class CancelParticipantAuthenticationRequest < Struct.new(
+ :session_id,
+ :connection_token)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/CancelParticipantAuthenticationResponse AWS API Documentation
+ #
+ class CancelParticipantAuthenticationResponse < Aws::EmptyStructure; end
+
# @!attribute [rw] attachment_ids
# A list of unique identifiers for the attachments.
# @return [Array]
@@ -255,11 +277,18 @@ class DisconnectParticipantResponse < Aws::EmptyStructure; end
# connection.
# @return [String]
#
+ # @!attribute [rw] url_expiry_in_seconds
+ # The expiration time of the URL in ISO timestamp. It's specified in
+ # ISO 8601 format: yyyy-MM-ddThh:mm:ss.SSSZ. For example,
+ # 2019-11-08T02:41:28.172Z.
+ # @return [Integer]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAttachmentRequest AWS API Documentation
#
class GetAttachmentRequest < Struct.new(
:attachment_id,
- :connection_token)
+ :connection_token,
+ :url_expiry_in_seconds)
SENSITIVE = []
include Aws::Structure
end
@@ -279,11 +308,54 @@ class GetAttachmentRequest < Struct.new(
# 2019-11-08T02:41:28.172Z.
# @return [String]
#
+ # @!attribute [rw] attachment_size_in_bytes
+ # The size of the attachment in bytes.
+ # @return [Integer]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAttachmentResponse AWS API Documentation
#
class GetAttachmentResponse < Struct.new(
:url,
- :url_expiry)
+ :url_expiry,
+ :attachment_size_in_bytes)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @!attribute [rw] session_id
+ # The sessionId provided in the authenticationInitiated event.
+ # @return [String]
+ #
+ # @!attribute [rw] redirect_uri
+ # The URL where the customer will be redirected after Amazon Cognito
+ # authorizes the user.
+ # @return [String]
+ #
+ # @!attribute [rw] connection_token
+ # The authentication token associated with the participant's
+ # connection.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAuthenticationUrlRequest AWS API Documentation
+ #
+ class GetAuthenticationUrlRequest < Struct.new(
+ :session_id,
+ :redirect_uri,
+ :connection_token)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @!attribute [rw] authentication_url
+ # The URL where the customer will sign in to the identity provider.
+ # This URL contains the authorize endpoint for the Cognito UserPool
+ # used in the authentication.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/GetAuthenticationUrlResponse AWS API Documentation
+ #
+ class GetAuthenticationUrlResponse < Struct.new(
+ :authentication_url)
SENSITIVE = []
include Aws::Structure
end
@@ -731,7 +803,7 @@ class StartAttachmentUploadRequest < Struct.new(
# @return [String]
#
# @!attribute [rw] upload_metadata
- # Fields to be used while uploading the attachment.
+ # The headers to be provided while uploading the file to the URL.
# @return [Types::UploadMetadata]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/connectparticipant-2018-09-07/StartAttachmentUploadResponse AWS API Documentation
diff --git a/gems/aws-sdk-connectparticipant/sig/client.rbs b/gems/aws-sdk-connectparticipant/sig/client.rbs
index ba35a05b38f..7db0e653b0d 100644
--- a/gems/aws-sdk-connectparticipant/sig/client.rbs
+++ b/gems/aws-sdk-connectparticipant/sig/client.rbs
@@ -75,6 +75,16 @@ module Aws
| (?Hash[Symbol, untyped]) -> instance
+ interface _CancelParticipantAuthenticationResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::CancelParticipantAuthenticationResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ConnectParticipant/Client.html#cancel_participant_authentication-instance_method
+ def cancel_participant_authentication: (
+ session_id: ::String,
+ connection_token: ::String
+ ) -> _CancelParticipantAuthenticationResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CancelParticipantAuthenticationResponseSuccess
+
interface _CompleteAttachmentUploadResponseSuccess
include ::Seahorse::Client::_ResponseSuccess[Types::CompleteAttachmentUploadResponse]
end
@@ -124,14 +134,28 @@ module Aws
include ::Seahorse::Client::_ResponseSuccess[Types::GetAttachmentResponse]
def url: () -> ::String
def url_expiry: () -> ::String
+ def attachment_size_in_bytes: () -> ::Integer
end
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ConnectParticipant/Client.html#get_attachment-instance_method
def get_attachment: (
attachment_id: ::String,
- connection_token: ::String
+ connection_token: ::String,
+ ?url_expiry_in_seconds: ::Integer
) -> _GetAttachmentResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetAttachmentResponseSuccess
+ interface _GetAuthenticationUrlResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetAuthenticationUrlResponse]
+ def authentication_url: () -> ::String
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ConnectParticipant/Client.html#get_authentication_url-instance_method
+ def get_authentication_url: (
+ session_id: ::String,
+ redirect_uri: ::String,
+ connection_token: ::String
+ ) -> _GetAuthenticationUrlResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetAuthenticationUrlResponseSuccess
+
interface _GetTranscriptResponseSuccess
include ::Seahorse::Client::_ResponseSuccess[Types::GetTranscriptResponse]
def initial_contact_id: () -> ::String
diff --git a/gems/aws-sdk-connectparticipant/sig/types.rbs b/gems/aws-sdk-connectparticipant/sig/types.rbs
index 20da3f75551..ac394081250 100644
--- a/gems/aws-sdk-connectparticipant/sig/types.rbs
+++ b/gems/aws-sdk-connectparticipant/sig/types.rbs
@@ -21,6 +21,15 @@ module Aws::ConnectParticipant
SENSITIVE: []
end
+ class CancelParticipantAuthenticationRequest
+ attr_accessor session_id: ::String
+ attr_accessor connection_token: ::String
+ SENSITIVE: []
+ end
+
+ class CancelParticipantAuthenticationResponse < Aws::EmptyStructure
+ end
+
class CompleteAttachmentUploadRequest
attr_accessor attachment_ids: ::Array[::String]
attr_accessor client_token: ::String
@@ -78,12 +87,26 @@ module Aws::ConnectParticipant
class GetAttachmentRequest
attr_accessor attachment_id: ::String
attr_accessor connection_token: ::String
+ attr_accessor url_expiry_in_seconds: ::Integer
SENSITIVE: []
end
class GetAttachmentResponse
attr_accessor url: ::String
attr_accessor url_expiry: ::String
+ attr_accessor attachment_size_in_bytes: ::Integer
+ SENSITIVE: []
+ end
+
+ class GetAuthenticationUrlRequest
+ attr_accessor session_id: ::String
+ attr_accessor redirect_uri: ::String
+ attr_accessor connection_token: ::String
+ SENSITIVE: []
+ end
+
+ class GetAuthenticationUrlResponse
+ attr_accessor authentication_url: ::String
SENSITIVE: []
end
diff --git a/gems/aws-sdk-datasync/CHANGELOG.md b/gems/aws-sdk-datasync/CHANGELOG.md
index c365308b693..45b53577426 100644
--- a/gems/aws-sdk-datasync/CHANGELOG.md
+++ b/gems/aws-sdk-datasync/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.94.0 (2024-12-18)
+------------------
+
+* Feature - AWS DataSync introduces the ability to update attributes for in-cloud locations.
+
1.93.0 (2024-11-18)
------------------
diff --git a/gems/aws-sdk-datasync/VERSION b/gems/aws-sdk-datasync/VERSION
index 95784efddbc..8db4a57b3d0 100644
--- a/gems/aws-sdk-datasync/VERSION
+++ b/gems/aws-sdk-datasync/VERSION
@@ -1 +1 @@
-1.93.0
+1.94.0
diff --git a/gems/aws-sdk-datasync/lib/aws-sdk-datasync.rb b/gems/aws-sdk-datasync/lib/aws-sdk-datasync.rb
index e595eca5508..c28d03eed5d 100644
--- a/gems/aws-sdk-datasync/lib/aws-sdk-datasync.rb
+++ b/gems/aws-sdk-datasync/lib/aws-sdk-datasync.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-datasync/endpoint_provider'
autoload :Endpoints, 'aws-sdk-datasync/endpoints'
- GEM_VERSION = '1.93.0'
+ GEM_VERSION = '1.94.0'
end
diff --git a/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client.rb b/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client.rb
index 68a276a6a18..9e00efd485c 100644
--- a/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client.rb
+++ b/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client.rb
@@ -771,8 +771,8 @@ def create_location_azure_blob(params = {}, options = {})
#
# @option params [String] :subdirectory
# Specifies a mount path for your Amazon EFS file system. This is where
- # DataSync reads or writes data (depending on if this is a source or
- # destination location) on your file system.
+ # DataSync reads or writes data on your file system (depending on if
+ # this is a source or destination location).
#
# By default, DataSync uses the root directory (or [access point][1] if
# you provide one by using `AccessPointArn`). You can also include
@@ -878,22 +878,35 @@ def create_location_efs(params = {}, options = {})
# [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-lustre-location.html#create-lustre-location-access
#
# @option params [required, String] :fsx_filesystem_arn
- # The Amazon Resource Name (ARN) for the FSx for Lustre file system.
+ # Specifies the Amazon Resource Name (ARN) of the FSx for Lustre file
+ # system.
#
# @option params [required, Array] :security_group_arns
- # The Amazon Resource Names (ARNs) of the security groups that are used
- # to configure the FSx for Lustre file system.
+ # Specifies the Amazon Resource Names (ARNs) of up to five security
+ # groups that provide access to your FSx for Lustre file system.
+ #
+ # The security groups must be able to access the file system's ports.
+ # The file system must also allow access from the security groups. For
+ # information about file system access, see the [ *Amazon FSx for Lustre
+ # User Guide* ][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/fsx/latest/LustreGuide/limit-access-security-groups.html
#
# @option params [String] :subdirectory
- # A subdirectory in the location's path. This subdirectory in the FSx
- # for Lustre file system is used to read data from the FSx for Lustre
- # source location or write data to the FSx for Lustre destination.
+ # Specifies a mount path for your FSx for Lustre file system. The path
+ # can include subdirectories.
+ #
+ # When the location is used as a source, DataSync reads data from the
+ # mount path. When the location is used as a destination, DataSync
+ # writes data to the mount path. If you don't include this parameter,
+ # DataSync uses the file system's root directory (`/`).
#
# @option params [Array] :tags
- # The key-value pair that represents a tag that you want to add to the
- # resource. The value can be an empty string. This value helps you
- # manage, filter, and search for your resources. We recommend that you
- # create a name tag for your location.
+ # Specifies labels that help you categorize, filter, and search for your
+ # Amazon Web Services resources. We recommend creating at least a name
+ # tag for your location.
#
# @return [Types::CreateLocationFsxLustreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
@@ -960,8 +973,8 @@ def create_location_fsx_lustre(params = {}, options = {})
# system where you want to copy data to or from.
#
# @option params [String] :subdirectory
- # Specifies a path to the file share in the SVM where you'll copy your
- # data.
+ # Specifies a path to the file share in the SVM where you want to
+ # transfer data to or from.
#
# You can specify a junction path (also known as a mount point), qtree
# path (for NFS file shares), or share name (for SMB file shares). For
@@ -1175,8 +1188,8 @@ def create_location_fsx_open_zfs(params = {}, options = {})
# [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions
#
# @option params [String] :domain
- # Specifies the name of the Microsoft Active Directory domain that the
- # FSx for Windows File Server file system belongs to.
+ # Specifies the name of the Windows domain that the FSx for Windows File
+ # Server file system belongs to.
#
# If you have multiple Active Directory domains in your environment,
# configuring this parameter makes sure that DataSync connects to the
@@ -1372,16 +1385,9 @@ def create_location_hdfs(params = {}, options = {})
# Before you begin, make sure that you understand how DataSync [accesses
# NFS file servers][1].
#
- # If you're copying data to or from an Snowcone device, you can also
- # use `CreateLocationNfs` to create your transfer location. For more
- # information, see [Configuring transfers with Snowcone][2].
- #
- #
- #
#
#
# [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#accessing-nfs
- # [2]: https://docs.aws.amazon.com/datasync/latest/userguide/nfs-on-snowcone.html
#
# @option params [required, String] :subdirectory
# Specifies the export path in your NFS file server that you want
@@ -1635,7 +1641,8 @@ def create_location_object_storage(params = {}, options = {})
# Specifies the Amazon Resource Name (ARN) of the Identity and Access
# Management (IAM) role that DataSync uses to access your S3 bucket.
#
- # For more information, see [Accessing S3 buckets][1].
+ # For more information, see [Providing DataSync access to S3
+ # buckets][1].
#
#
#
@@ -4040,8 +4047,15 @@ def update_discovery_job(params = {}, options = {})
req.send_request(options)
end
- # Modifies some configurations of the Microsoft Azure Blob Storage
- # transfer location that you're using with DataSync.
+ # Modifies the following configurations of the Microsoft Azure Blob
+ # Storage transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with Azure
+ # Blob Storage][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/creating-azure-blob-location.html
#
# @option params [required, String] :location_arn
# Specifies the ARN of the Azure Blob Storage transfer location that
@@ -4116,8 +4130,335 @@ def update_location_azure_blob(params = {}, options = {})
req.send_request(options)
end
- # Updates some parameters of a previously created location for a Hadoop
- # Distributed File System cluster.
+ # Modifies the following configuration parameters of the Amazon EFS
+ # transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with Amazon
+ # EFS][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html
+ #
+ # @option params [required, String] :location_arn
+ # Specifies the Amazon Resource Name (ARN) of the Amazon EFS transfer
+ # location that you're updating.
+ #
+ # @option params [String] :subdirectory
+ # Specifies a mount path for your Amazon EFS file system. This is where
+ # DataSync reads or writes data on your file system (depending on if
+ # this is a source or destination location).
+ #
+ # By default, DataSync uses the root directory (or [access point][1] if
+ # you provide one by using `AccessPointArn`). You can also include
+ # subdirectories using forward slashes (for example, `/path/to/folder`).
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html
+ #
+ # @option params [String] :access_point_arn
+ # Specifies the Amazon Resource Name (ARN) of the access point that
+ # DataSync uses to mount your Amazon EFS file system.
+ #
+ # For more information, see [Accessing restricted Amazon EFS file
+ # systems][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html#create-efs-location-iam
+ #
+ # @option params [String] :file_system_access_role_arn
+ # Specifies an Identity and Access Management (IAM) role that allows
+ # DataSync to access your Amazon EFS file system.
+ #
+ # For information on creating this role, see [Creating a DataSync IAM
+ # role for Amazon EFS file system access][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html#create-efs-location-iam-role
+ #
+ # @option params [String] :in_transit_encryption
+ # Specifies whether you want DataSync to use Transport Layer Security
+ # (TLS) 1.2 encryption when it transfers data to or from your Amazon EFS
+ # file system.
+ #
+ # If you specify an access point using `AccessPointArn` or an IAM role
+ # using `FileSystemAccessRoleArn`, you must set this parameter to
+ # `TLS1_2`.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_location_efs({
+ # location_arn: "LocationArn", # required
+ # subdirectory: "EfsSubdirectory",
+ # access_point_arn: "UpdatedEfsAccessPointArn",
+ # file_system_access_role_arn: "UpdatedEfsIamRoleArn",
+ # in_transit_encryption: "NONE", # accepts NONE, TLS1_2
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationEfs AWS API Documentation
+ #
+ # @overload update_location_efs(params = {})
+ # @param [Hash] params ({})
+ def update_location_efs(params = {}, options = {})
+ req = build_request(:update_location_efs, params)
+ req.send_request(options)
+ end
+
+ # Modifies the following configuration parameters of the Amazon FSx for
+ # Lustre transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with FSx for
+ # Lustre][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-lustre-location.html
+ #
+ # @option params [required, String] :location_arn
+ # Specifies the Amazon Resource Name (ARN) of the FSx for Lustre
+ # transfer location that you're updating.
+ #
+ # @option params [String] :subdirectory
+ # Specifies a mount path for your FSx for Lustre file system. The path
+ # can include subdirectories.
+ #
+ # When the location is used as a source, DataSync reads data from the
+ # mount path. When the location is used as a destination, DataSync
+ # writes data to the mount path. If you don't include this parameter,
+ # DataSync uses the file system's root directory (`/`).
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_location_fsx_lustre({
+ # location_arn: "LocationArn", # required
+ # subdirectory: "SmbSubdirectory",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxLustre AWS API Documentation
+ #
+ # @overload update_location_fsx_lustre(params = {})
+ # @param [Hash] params ({})
+ def update_location_fsx_lustre(params = {}, options = {})
+ req = build_request(:update_location_fsx_lustre, params)
+ req.send_request(options)
+ end
+
+ # Modifies the following configuration parameters of the Amazon FSx for
+ # NetApp ONTAP transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with FSx for
+ # ONTAP][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html
+ #
+ # @option params [required, String] :location_arn
+ # Specifies the Amazon Resource Name (ARN) of the FSx for ONTAP transfer
+ # location that you're updating.
+ #
+ # @option params [Types::FsxUpdateProtocol] :protocol
+ # Specifies the data transfer protocol that DataSync uses to access your
+ # Amazon FSx file system.
+ #
+ # @option params [String] :subdirectory
+ # Specifies a path to the file share in the storage virtual machine
+ # (SVM) where you want to transfer data to or from.
+ #
+ # You can specify a junction path (also known as a mount point), qtree
+ # path (for NFS file shares), or share name (for SMB file shares). For
+ # example, your mount path might be `/vol1`, `/vol1/tree1`, or
+ # `/share1`.
+ #
+ # Don't specify a junction path in the SVM's root volume. For more
+ # information, see [Managing FSx for ONTAP storage virtual machines][1]
+ # in the *Amazon FSx for NetApp ONTAP User Guide*.
+ #
+ #
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_location_fsx_ontap({
+ # location_arn: "LocationArn", # required
+ # protocol: {
+ # nfs: {
+ # mount_options: {
+ # version: "AUTOMATIC", # accepts AUTOMATIC, NFS3, NFS4_0, NFS4_1
+ # },
+ # },
+ # smb: {
+ # domain: "FsxUpdateSmbDomain",
+ # mount_options: {
+ # version: "AUTOMATIC", # accepts AUTOMATIC, SMB2, SMB3, SMB1, SMB2_0
+ # },
+ # password: "SmbPassword",
+ # user: "SmbUser",
+ # },
+ # },
+ # subdirectory: "FsxOntapSubdirectory",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxOntap AWS API Documentation
+ #
+ # @overload update_location_fsx_ontap(params = {})
+ # @param [Hash] params ({})
+ def update_location_fsx_ontap(params = {}, options = {})
+ req = build_request(:update_location_fsx_ontap, params)
+ req.send_request(options)
+ end
+
+ # Modifies the following configuration parameters of the Amazon FSx for
+ # OpenZFS transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with FSx for
+ # OpenZFS][1].
+ #
+ # Request parameters related to `SMB` aren't supported with the
+ # `UpdateLocationFsxOpenZfs` operation.
+ #
+ #
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-openzfs-location.html
+ #
+ # @option params [required, String] :location_arn
+ # Specifies the Amazon Resource Name (ARN) of the FSx for OpenZFS
+ # transfer location that you're updating.
+ #
+ # @option params [Types::FsxProtocol] :protocol
+ # Specifies the data transfer protocol that DataSync uses to access your
+ # Amazon FSx file system.
+ #
+ # @option params [String] :subdirectory
+ # Specifies a subdirectory in the location's path that must begin with
+ # `/fsx`. DataSync uses this subdirectory to read or write data
+ # (depending on whether the file system is a source or destination
+ # location).
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_location_fsx_open_zfs({
+ # location_arn: "LocationArn", # required
+ # protocol: {
+ # nfs: {
+ # mount_options: {
+ # version: "AUTOMATIC", # accepts AUTOMATIC, NFS3, NFS4_0, NFS4_1
+ # },
+ # },
+ # smb: {
+ # domain: "SmbDomain",
+ # mount_options: {
+ # version: "AUTOMATIC", # accepts AUTOMATIC, SMB2, SMB3, SMB1, SMB2_0
+ # },
+ # password: "SmbPassword", # required
+ # user: "SmbUser", # required
+ # },
+ # },
+ # subdirectory: "SmbSubdirectory",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxOpenZfs AWS API Documentation
+ #
+ # @overload update_location_fsx_open_zfs(params = {})
+ # @param [Hash] params ({})
+ def update_location_fsx_open_zfs(params = {}, options = {})
+ req = build_request(:update_location_fsx_open_zfs, params)
+ req.send_request(options)
+ end
+
+ # Modifies the following configuration parameters of the Amazon FSx for
+ # Windows File Server transfer location that you're using with
+ # DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with FSx for
+ # Windows File Server][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html
+ #
+ # @option params [required, String] :location_arn
+ # Specifies the ARN of the FSx for Windows File Server transfer location
+ # that you're updating.
+ #
+ # @option params [String] :subdirectory
+ # Specifies a mount path for your file system using forward slashes.
+ # DataSync uses this subdirectory to read or write data (depending on
+ # whether the file system is a source or destination location).
+ #
+ # @option params [String] :domain
+ # Specifies the name of the Windows domain that your FSx for Windows
+ # File Server file system belongs to.
+ #
+ # If you have multiple Active Directory domains in your environment,
+ # configuring this parameter makes sure that DataSync connects to the
+ # right file system.
+ #
+ # @option params [String] :user
+ # Specifies the user with the permissions to mount and access the files,
+ # folders, and file metadata in your FSx for Windows File Server file
+ # system.
+ #
+ # For information about choosing a user with the right level of access
+ # for your transfer, see [required permissions][1] for FSx for Windows
+ # File Server locations.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions
+ #
+ # @option params [String] :password
+ # Specifies the password of the user with the permissions to mount and
+ # access the files, folders, and file metadata in your FSx for Windows
+ # File Server file system.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_location_fsx_windows({
+ # location_arn: "LocationArn", # required
+ # subdirectory: "FsxWindowsSubdirectory",
+ # domain: "FsxUpdateSmbDomain",
+ # user: "SmbUser",
+ # password: "SmbPassword",
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxWindows AWS API Documentation
+ #
+ # @overload update_location_fsx_windows(params = {})
+ # @param [Hash] params ({})
+ def update_location_fsx_windows(params = {}, options = {})
+ req = build_request(:update_location_fsx_windows, params)
+ req.send_request(options)
+ end
+
+ # Modifies the following configuration parameters of the Hadoop
+ # Distributed File System (HDFS) transfer location that you're using
+ # with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with an HDFS
+ # cluster][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-hdfs-location.html
#
# @option params [required, String] :location_arn
# The Amazon Resource Name (ARN) of the source HDFS cluster location.
@@ -4212,11 +4553,11 @@ def update_location_hdfs(params = {}, options = {})
req.send_request(options)
end
- # Modifies some configurations of the Network File System (NFS) transfer
- # location that you're using with DataSync.
+ # Modifies the following configuration parameters of the Network File
+ # System (NFS) transfer location that you're using with DataSync.
#
- # For more information, see [Configuring transfers to or from an NFS
- # file server][1].
+ # For more information, see [Configuring transfers with an NFS file
+ # server][1].
#
#
#
@@ -4269,8 +4610,15 @@ def update_location_nfs(params = {}, options = {})
req.send_request(options)
end
- # Updates some parameters of an existing DataSync location for an object
- # storage system.
+ # Modifies the following configuration parameters of the object storage
+ # transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with an
+ # object storage system][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-object-location.html
#
# @option params [required, String] :location_arn
# Specifies the ARN of the object storage system location that you're
@@ -4354,8 +4702,99 @@ def update_location_object_storage(params = {}, options = {})
req.send_request(options)
end
- # Updates some of the parameters of a Server Message Block (SMB) file
- # server location that you can use for DataSync transfers.
+ # Modifies the following configuration parameters of the Amazon S3
+ # transfer location that you're using with DataSync.
+ #
+ # Before you begin, make sure that you read the following topics:
+ #
+ # * [Storage class considerations with Amazon S3 locations][1]
+ #
+ # * [Evaluating S3 request costs when using DataSync][2]
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html#using-storage-classes
+ # [2]: https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html#create-s3-location-s3-requests
+ #
+ # @option params [required, String] :location_arn
+ # Specifies the Amazon Resource Name (ARN) of the Amazon S3 transfer
+ # location that you're updating.
+ #
+ # @option params [String] :subdirectory
+ # Specifies a prefix in the S3 bucket that DataSync reads from or writes
+ # to (depending on whether the bucket is a source or destination
+ # location).
+ #
+ # DataSync can't transfer objects with a prefix that begins with a
+ # slash (`/`) or includes `//`, `/./`, or `/../` patterns. For example:
+ #
+ # * `/photos`
+ #
+ # * `photos//2006/January`
+ #
+ # * `photos/./2006/February`
+ #
+ # * `photos/../2006/March`
+ #
+ #
+ #
+ # @option params [String] :s3_storage_class
+ # Specifies the storage class that you want your objects to use when
+ # Amazon S3 is a transfer destination.
+ #
+ # For buckets in Amazon Web Services Regions, the storage class defaults
+ # to `STANDARD`. For buckets on Outposts, the storage class defaults to
+ # `OUTPOSTS`.
+ #
+ # For more information, see [Storage class considerations with Amazon S3
+ # transfers][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html#using-storage-classes
+ #
+ # @option params [Types::S3Config] :s3_config
+ # Specifies the Amazon Resource Name (ARN) of the Identity and Access
+ # Management (IAM) role that DataSync uses to access your S3 bucket.
+ #
+ # For more information, see [Providing DataSync access to S3
+ # buckets][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html#create-s3-location-access
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_location_s3({
+ # location_arn: "LocationArn", # required
+ # subdirectory: "S3Subdirectory",
+ # s3_storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_INSTANT_RETRIEVAL
+ # s3_config: {
+ # bucket_access_role_arn: "IamRoleArn", # required
+ # },
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationS3 AWS API Documentation
+ #
+ # @overload update_location_s3(params = {})
+ # @param [Hash] params ({})
+ def update_location_s3(params = {}, options = {})
+ req = build_request(:update_location_s3, params)
+ req.send_request(options)
+ end
+
+ # Modifies the following configuration parameters of the Server Message
+ # Block (SMB) transfer location that you're using with DataSync.
+ #
+ # For more information, see [Configuring DataSync transfers with an SMB
+ # file server][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-smb-location.html
#
# @option params [required, String] :location_arn
# Specifies the ARN of the SMB location that you want to update.
@@ -4774,7 +5213,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-datasync'
- context[:gem_version] = '1.93.0'
+ context[:gem_version] = '1.94.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client_api.rb b/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client_api.rb
index 300552c20c5..688d86cc421 100644
--- a/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client_api.rb
+++ b/gems/aws-sdk-datasync/lib/aws-sdk-datasync/client_api.rb
@@ -147,6 +147,9 @@ module ClientApi
FsxProtocol = Shapes::StructureShape.new(name: 'FsxProtocol')
FsxProtocolNfs = Shapes::StructureShape.new(name: 'FsxProtocolNfs')
FsxProtocolSmb = Shapes::StructureShape.new(name: 'FsxProtocolSmb')
+ FsxUpdateProtocol = Shapes::StructureShape.new(name: 'FsxUpdateProtocol')
+ FsxUpdateProtocolSmb = Shapes::StructureShape.new(name: 'FsxUpdateProtocolSmb')
+ FsxUpdateSmbDomain = Shapes::StringShape.new(name: 'FsxUpdateSmbDomain')
FsxWindowsSubdirectory = Shapes::StringShape.new(name: 'FsxWindowsSubdirectory')
GenerateRecommendationsRequest = Shapes::StructureShape.new(name: 'GenerateRecommendationsRequest')
GenerateRecommendationsResponse = Shapes::StructureShape.new(name: 'GenerateRecommendationsResponse')
@@ -333,12 +336,24 @@ module ClientApi
UpdateDiscoveryJobResponse = Shapes::StructureShape.new(name: 'UpdateDiscoveryJobResponse')
UpdateLocationAzureBlobRequest = Shapes::StructureShape.new(name: 'UpdateLocationAzureBlobRequest')
UpdateLocationAzureBlobResponse = Shapes::StructureShape.new(name: 'UpdateLocationAzureBlobResponse')
+ UpdateLocationEfsRequest = Shapes::StructureShape.new(name: 'UpdateLocationEfsRequest')
+ UpdateLocationEfsResponse = Shapes::StructureShape.new(name: 'UpdateLocationEfsResponse')
+ UpdateLocationFsxLustreRequest = Shapes::StructureShape.new(name: 'UpdateLocationFsxLustreRequest')
+ UpdateLocationFsxLustreResponse = Shapes::StructureShape.new(name: 'UpdateLocationFsxLustreResponse')
+ UpdateLocationFsxOntapRequest = Shapes::StructureShape.new(name: 'UpdateLocationFsxOntapRequest')
+ UpdateLocationFsxOntapResponse = Shapes::StructureShape.new(name: 'UpdateLocationFsxOntapResponse')
+ UpdateLocationFsxOpenZfsRequest = Shapes::StructureShape.new(name: 'UpdateLocationFsxOpenZfsRequest')
+ UpdateLocationFsxOpenZfsResponse = Shapes::StructureShape.new(name: 'UpdateLocationFsxOpenZfsResponse')
+ UpdateLocationFsxWindowsRequest = Shapes::StructureShape.new(name: 'UpdateLocationFsxWindowsRequest')
+ UpdateLocationFsxWindowsResponse = Shapes::StructureShape.new(name: 'UpdateLocationFsxWindowsResponse')
UpdateLocationHdfsRequest = Shapes::StructureShape.new(name: 'UpdateLocationHdfsRequest')
UpdateLocationHdfsResponse = Shapes::StructureShape.new(name: 'UpdateLocationHdfsResponse')
UpdateLocationNfsRequest = Shapes::StructureShape.new(name: 'UpdateLocationNfsRequest')
UpdateLocationNfsResponse = Shapes::StructureShape.new(name: 'UpdateLocationNfsResponse')
UpdateLocationObjectStorageRequest = Shapes::StructureShape.new(name: 'UpdateLocationObjectStorageRequest')
UpdateLocationObjectStorageResponse = Shapes::StructureShape.new(name: 'UpdateLocationObjectStorageResponse')
+ UpdateLocationS3Request = Shapes::StructureShape.new(name: 'UpdateLocationS3Request')
+ UpdateLocationS3Response = Shapes::StructureShape.new(name: 'UpdateLocationS3Response')
UpdateLocationSmbRequest = Shapes::StructureShape.new(name: 'UpdateLocationSmbRequest')
UpdateLocationSmbResponse = Shapes::StructureShape.new(name: 'UpdateLocationSmbResponse')
UpdateStorageSystemRequest = Shapes::StructureShape.new(name: 'UpdateStorageSystemRequest')
@@ -347,6 +362,8 @@ module ClientApi
UpdateTaskExecutionResponse = Shapes::StructureShape.new(name: 'UpdateTaskExecutionResponse')
UpdateTaskRequest = Shapes::StructureShape.new(name: 'UpdateTaskRequest')
UpdateTaskResponse = Shapes::StructureShape.new(name: 'UpdateTaskResponse')
+ UpdatedEfsAccessPointArn = Shapes::StringShape.new(name: 'UpdatedEfsAccessPointArn')
+ UpdatedEfsIamRoleArn = Shapes::StringShape.new(name: 'UpdatedEfsIamRoleArn')
VerifyMode = Shapes::StringShape.new(name: 'VerifyMode')
VpcEndpointId = Shapes::StringShape.new(name: 'VpcEndpointId')
long = Shapes::IntegerShape.new(name: 'long')
@@ -861,6 +878,16 @@ module ClientApi
FsxProtocolSmb.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, required: true, location_name: "User"))
FsxProtocolSmb.struct_class = Types::FsxProtocolSmb
+ FsxUpdateProtocol.add_member(:nfs, Shapes::ShapeRef.new(shape: FsxProtocolNfs, location_name: "NFS"))
+ FsxUpdateProtocol.add_member(:smb, Shapes::ShapeRef.new(shape: FsxUpdateProtocolSmb, location_name: "SMB"))
+ FsxUpdateProtocol.struct_class = Types::FsxUpdateProtocol
+
+ FsxUpdateProtocolSmb.add_member(:domain, Shapes::ShapeRef.new(shape: FsxUpdateSmbDomain, location_name: "Domain"))
+ FsxUpdateProtocolSmb.add_member(:mount_options, Shapes::ShapeRef.new(shape: SmbMountOptions, location_name: "MountOptions"))
+ FsxUpdateProtocolSmb.add_member(:password, Shapes::ShapeRef.new(shape: SmbPassword, location_name: "Password"))
+ FsxUpdateProtocolSmb.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, location_name: "User"))
+ FsxUpdateProtocolSmb.struct_class = Types::FsxUpdateProtocolSmb
+
GenerateRecommendationsRequest.add_member(:discovery_job_arn, Shapes::ShapeRef.new(shape: DiscoveryJobArn, required: true, location_name: "DiscoveryJobArn"))
GenerateRecommendationsRequest.add_member(:resource_ids, Shapes::ShapeRef.new(shape: ResourceIds, required: true, location_name: "ResourceIds"))
GenerateRecommendationsRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: DiscoveryResourceType, required: true, location_name: "ResourceType"))
@@ -1299,6 +1326,44 @@ module ClientApi
UpdateLocationAzureBlobResponse.struct_class = Types::UpdateLocationAzureBlobResponse
+ UpdateLocationEfsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
+ UpdateLocationEfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: EfsSubdirectory, location_name: "Subdirectory"))
+ UpdateLocationEfsRequest.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: UpdatedEfsAccessPointArn, location_name: "AccessPointArn"))
+ UpdateLocationEfsRequest.add_member(:file_system_access_role_arn, Shapes::ShapeRef.new(shape: UpdatedEfsIamRoleArn, location_name: "FileSystemAccessRoleArn"))
+ UpdateLocationEfsRequest.add_member(:in_transit_encryption, Shapes::ShapeRef.new(shape: EfsInTransitEncryption, location_name: "InTransitEncryption"))
+ UpdateLocationEfsRequest.struct_class = Types::UpdateLocationEfsRequest
+
+ UpdateLocationEfsResponse.struct_class = Types::UpdateLocationEfsResponse
+
+ UpdateLocationFsxLustreRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
+ UpdateLocationFsxLustreRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: SmbSubdirectory, location_name: "Subdirectory"))
+ UpdateLocationFsxLustreRequest.struct_class = Types::UpdateLocationFsxLustreRequest
+
+ UpdateLocationFsxLustreResponse.struct_class = Types::UpdateLocationFsxLustreResponse
+
+ UpdateLocationFsxOntapRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
+ UpdateLocationFsxOntapRequest.add_member(:protocol, Shapes::ShapeRef.new(shape: FsxUpdateProtocol, location_name: "Protocol"))
+ UpdateLocationFsxOntapRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: FsxOntapSubdirectory, location_name: "Subdirectory"))
+ UpdateLocationFsxOntapRequest.struct_class = Types::UpdateLocationFsxOntapRequest
+
+ UpdateLocationFsxOntapResponse.struct_class = Types::UpdateLocationFsxOntapResponse
+
+ UpdateLocationFsxOpenZfsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
+ UpdateLocationFsxOpenZfsRequest.add_member(:protocol, Shapes::ShapeRef.new(shape: FsxProtocol, location_name: "Protocol"))
+ UpdateLocationFsxOpenZfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: SmbSubdirectory, location_name: "Subdirectory"))
+ UpdateLocationFsxOpenZfsRequest.struct_class = Types::UpdateLocationFsxOpenZfsRequest
+
+ UpdateLocationFsxOpenZfsResponse.struct_class = Types::UpdateLocationFsxOpenZfsResponse
+
+ UpdateLocationFsxWindowsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
+ UpdateLocationFsxWindowsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: FsxWindowsSubdirectory, location_name: "Subdirectory"))
+ UpdateLocationFsxWindowsRequest.add_member(:domain, Shapes::ShapeRef.new(shape: FsxUpdateSmbDomain, location_name: "Domain"))
+ UpdateLocationFsxWindowsRequest.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, location_name: "User"))
+ UpdateLocationFsxWindowsRequest.add_member(:password, Shapes::ShapeRef.new(shape: SmbPassword, location_name: "Password"))
+ UpdateLocationFsxWindowsRequest.struct_class = Types::UpdateLocationFsxWindowsRequest
+
+ UpdateLocationFsxWindowsResponse.struct_class = Types::UpdateLocationFsxWindowsResponse
+
UpdateLocationHdfsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
UpdateLocationHdfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: HdfsSubdirectory, location_name: "Subdirectory"))
UpdateLocationHdfsRequest.add_member(:name_nodes, Shapes::ShapeRef.new(shape: HdfsNameNodeList, location_name: "NameNodes"))
@@ -1336,6 +1401,14 @@ module ClientApi
UpdateLocationObjectStorageResponse.struct_class = Types::UpdateLocationObjectStorageResponse
+ UpdateLocationS3Request.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
+ UpdateLocationS3Request.add_member(:subdirectory, Shapes::ShapeRef.new(shape: S3Subdirectory, location_name: "Subdirectory"))
+ UpdateLocationS3Request.add_member(:s3_storage_class, Shapes::ShapeRef.new(shape: S3StorageClass, location_name: "S3StorageClass"))
+ UpdateLocationS3Request.add_member(:s3_config, Shapes::ShapeRef.new(shape: S3Config, location_name: "S3Config"))
+ UpdateLocationS3Request.struct_class = Types::UpdateLocationS3Request
+
+ UpdateLocationS3Response.struct_class = Types::UpdateLocationS3Response
+
UpdateLocationSmbRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
UpdateLocationSmbRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: SmbSubdirectory, location_name: "Subdirectory"))
UpdateLocationSmbRequest.add_member(:user, Shapes::ShapeRef.new(shape: SmbUser, location_name: "User"))
@@ -2018,6 +2091,56 @@ module ClientApi
o.errors << Shapes::ShapeRef.new(shape: InternalException)
end)
+ api.add_operation(:update_location_efs, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateLocationEfs"
+ o.http_method = "POST"
+ o.http_request_uri = "/"
+ o.input = Shapes::ShapeRef.new(shape: UpdateLocationEfsRequest)
+ o.output = Shapes::ShapeRef.new(shape: UpdateLocationEfsResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
+ end)
+
+ api.add_operation(:update_location_fsx_lustre, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateLocationFsxLustre"
+ o.http_method = "POST"
+ o.http_request_uri = "/"
+ o.input = Shapes::ShapeRef.new(shape: UpdateLocationFsxLustreRequest)
+ o.output = Shapes::ShapeRef.new(shape: UpdateLocationFsxLustreResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
+ end)
+
+ api.add_operation(:update_location_fsx_ontap, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateLocationFsxOntap"
+ o.http_method = "POST"
+ o.http_request_uri = "/"
+ o.input = Shapes::ShapeRef.new(shape: UpdateLocationFsxOntapRequest)
+ o.output = Shapes::ShapeRef.new(shape: UpdateLocationFsxOntapResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
+ end)
+
+ api.add_operation(:update_location_fsx_open_zfs, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateLocationFsxOpenZfs"
+ o.http_method = "POST"
+ o.http_request_uri = "/"
+ o.input = Shapes::ShapeRef.new(shape: UpdateLocationFsxOpenZfsRequest)
+ o.output = Shapes::ShapeRef.new(shape: UpdateLocationFsxOpenZfsResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
+ end)
+
+ api.add_operation(:update_location_fsx_windows, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateLocationFsxWindows"
+ o.http_method = "POST"
+ o.http_request_uri = "/"
+ o.input = Shapes::ShapeRef.new(shape: UpdateLocationFsxWindowsRequest)
+ o.output = Shapes::ShapeRef.new(shape: UpdateLocationFsxWindowsResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
+ end)
+
api.add_operation(:update_location_hdfs, Seahorse::Model::Operation.new.tap do |o|
o.name = "UpdateLocationHdfs"
o.http_method = "POST"
@@ -2048,6 +2171,16 @@ module ClientApi
o.errors << Shapes::ShapeRef.new(shape: InternalException)
end)
+ api.add_operation(:update_location_s3, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "UpdateLocationS3"
+ o.http_method = "POST"
+ o.http_request_uri = "/"
+ o.input = Shapes::ShapeRef.new(shape: UpdateLocationS3Request)
+ o.output = Shapes::ShapeRef.new(shape: UpdateLocationS3Response)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
+ end)
+
api.add_operation(:update_location_smb, Seahorse::Model::Operation.new.tap do |o|
o.name = "UpdateLocationSmb"
o.http_method = "POST"
diff --git a/gems/aws-sdk-datasync/lib/aws-sdk-datasync/types.rb b/gems/aws-sdk-datasync/lib/aws-sdk-datasync/types.rb
index d34761eaea5..0148d418949 100644
--- a/gems/aws-sdk-datasync/lib/aws-sdk-datasync/types.rb
+++ b/gems/aws-sdk-datasync/lib/aws-sdk-datasync/types.rb
@@ -385,8 +385,8 @@ class CreateLocationAzureBlobResponse < Struct.new(
#
# @!attribute [rw] subdirectory
# Specifies a mount path for your Amazon EFS file system. This is
- # where DataSync reads or writes data (depending on if this is a
- # source or destination location) on your file system.
+ # where DataSync reads or writes data on your file system (depending
+ # on if this is a source or destination location).
#
# By default, DataSync uses the root directory (or [access point][1]
# if you provide one by using `AccessPointArn`). You can also include
@@ -481,25 +481,38 @@ class CreateLocationEfsResponse < Struct.new(
end
# @!attribute [rw] fsx_filesystem_arn
- # The Amazon Resource Name (ARN) for the FSx for Lustre file system.
+ # Specifies the Amazon Resource Name (ARN) of the FSx for Lustre file
+ # system.
# @return [String]
#
# @!attribute [rw] security_group_arns
- # The Amazon Resource Names (ARNs) of the security groups that are
- # used to configure the FSx for Lustre file system.
+ # Specifies the Amazon Resource Names (ARNs) of up to five security
+ # groups that provide access to your FSx for Lustre file system.
+ #
+ # The security groups must be able to access the file system's ports.
+ # The file system must also allow access from the security groups. For
+ # information about file system access, see the [ *Amazon FSx for
+ # Lustre User Guide* ][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/fsx/latest/LustreGuide/limit-access-security-groups.html
# @return [Array]
#
# @!attribute [rw] subdirectory
- # A subdirectory in the location's path. This subdirectory in the FSx
- # for Lustre file system is used to read data from the FSx for Lustre
- # source location or write data to the FSx for Lustre destination.
+ # Specifies a mount path for your FSx for Lustre file system. The path
+ # can include subdirectories.
+ #
+ # When the location is used as a source, DataSync reads data from the
+ # mount path. When the location is used as a destination, DataSync
+ # writes data to the mount path. If you don't include this parameter,
+ # DataSync uses the file system's root directory (`/`).
# @return [String]
#
# @!attribute [rw] tags
- # The key-value pair that represents a tag that you want to add to the
- # resource. The value can be an empty string. This value helps you
- # manage, filter, and search for your resources. We recommend that you
- # create a name tag for your location.
+ # Specifies labels that help you categorize, filter, and search for
+ # your Amazon Web Services resources. We recommend creating at least a
+ # name tag for your location.
# @return [Array]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxLustreRequest AWS API Documentation
@@ -515,7 +528,7 @@ class CreateLocationFsxLustreRequest < Struct.new(
# @!attribute [rw] location_arn
# The Amazon Resource Name (ARN) of the FSx for Lustre file system
- # location that's created.
+ # location that you created.
# @return [String]
#
# @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxLustreResponse AWS API Documentation
@@ -552,8 +565,8 @@ class CreateLocationFsxLustreResponse < Struct.new(
# @return [String]
#
# @!attribute [rw] subdirectory
- # Specifies a path to the file share in the SVM where you'll copy
- # your data.
+ # Specifies a path to the file share in the SVM where you want to
+ # transfer data to or from.
#
# You can specify a junction path (also known as a mount point), qtree
# path (for NFS file shares), or share name (for SMB file shares). For
@@ -710,8 +723,8 @@ class CreateLocationFsxOpenZfsResponse < Struct.new(
# @return [String]
#
# @!attribute [rw] domain
- # Specifies the name of the Microsoft Active Directory domain that the
- # FSx for Windows File Server file system belongs to.
+ # Specifies the name of the Windows domain that the FSx for Windows
+ # File Server file system belongs to.
#
# If you have multiple Active Directory domains in your environment,
# configuring this parameter makes sure that DataSync connects to the
@@ -1119,7 +1132,8 @@ class CreateLocationObjectStorageResponse < Struct.new(
# Specifies the Amazon Resource Name (ARN) of the Identity and Access
# Management (IAM) role that DataSync uses to access your S3 bucket.
#
- # For more information, see [Accessing S3 buckets][1].
+ # For more information, see [Providing DataSync access to S3
+ # buckets][1].
#
#
#
@@ -2290,7 +2304,8 @@ class DescribeLocationS3Request < Struct.new(
# Specifies the Amazon Resource Name (ARN) of the Identity and Access
# Management (IAM) role that DataSync uses to access your S3 bucket.
#
- # For more information, see [Accessing S3 buckets][1].
+ # For more information, see [Providing DataSync access to S3
+ # buckets][1].
#
#
#
@@ -3270,8 +3285,8 @@ class FsxProtocol < Struct.new(
end
# Specifies the Network File System (NFS) protocol configuration that
- # DataSync uses to access your Amazon FSx for OpenZFS or Amazon FSx for
- # NetApp ONTAP file system.
+ # DataSync uses to access your FSx for OpenZFS file system or FSx for
+ # ONTAP file system's storage virtual machine (SVM).
#
# @!attribute [rw] mount_options
# Specifies how DataSync can access a location using the NFS protocol.
@@ -3286,19 +3301,24 @@ class FsxProtocolNfs < Struct.new(
end
# Specifies the Server Message Block (SMB) protocol configuration that
- # DataSync uses to access your Amazon FSx for NetApp ONTAP file system.
- # For more information, see [Accessing FSx for ONTAP file systems][1].
+ # DataSync uses to access your Amazon FSx for NetApp ONTAP file
+ # system's storage virtual machine (SVM). For more information, see
+ # [Providing DataSync access to FSx for ONTAP file systems][1].
#
#
#
# [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html#create-ontap-location-access
#
# @!attribute [rw] domain
- # Specifies the fully qualified domain name (FQDN) of the Microsoft
- # Active Directory that your storage virtual machine (SVM) belongs to.
+ # Specifies the name of the Windows domain that your storage virtual
+ # machine (SVM) belongs to.
#
# If you have multiple domains in your environment, configuring this
# setting makes sure that DataSync connects to the right SVM.
+ #
+ # If you have multiple Active Directory domains in your environment,
+ # configuring this parameter makes sure that DataSync connects to the
+ # right SVM.
# @return [String]
#
# @!attribute [rw] mount_options
@@ -3334,6 +3354,87 @@ class FsxProtocolSmb < Struct.new(
include Aws::Structure
end
+ # Specifies the data transfer protocol that DataSync uses to access your
+ # Amazon FSx file system.
+ #
+ # You can't update the Network File System (NFS) protocol configuration
+ # for FSx for ONTAP locations. DataSync currently only supports NFS
+ # version 3 with this location type.
+ #
+ #
+ #
+ # @!attribute [rw] nfs
+ # Specifies the Network File System (NFS) protocol configuration that
+ # DataSync uses to access your FSx for OpenZFS file system or FSx for
+ # ONTAP file system's storage virtual machine (SVM).
+ # @return [Types::FsxProtocolNfs]
+ #
+ # @!attribute [rw] smb
+ # Specifies the Server Message Block (SMB) protocol configuration that
+ # DataSync uses to access your FSx for ONTAP file system's storage
+ # virtual machine (SVM).
+ # @return [Types::FsxUpdateProtocolSmb]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/FsxUpdateProtocol AWS API Documentation
+ #
+ class FsxUpdateProtocol < Struct.new(
+ :nfs,
+ :smb)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # Specifies the Server Message Block (SMB) protocol configuration that
+ # DataSync uses to access your Amazon FSx for NetApp ONTAP file
+ # system's storage virtual machine (SVM). For more information, see
+ # [Providing DataSync access to FSx for ONTAP file systems][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html#create-ontap-location-access
+ #
+ # @!attribute [rw] domain
+ # Specifies the name of the Windows domain that your storage virtual
+ # machine (SVM) belongs to.
+ #
+ # If you have multiple Active Directory domains in your environment,
+ # configuring this parameter makes sure that DataSync connects to the
+ # right SVM.
+ # @return [String]
+ #
+ # @!attribute [rw] mount_options
+ # Specifies the version of the Server Message Block (SMB) protocol
+ # that DataSync uses to access an SMB file server.
+ # @return [Types::SmbMountOptions]
+ #
+ # @!attribute [rw] password
+ # Specifies the password of a user who has permission to access your
+ # SVM.
+ # @return [String]
+ #
+ # @!attribute [rw] user
+ # Specifies a user that can mount and access the files, folders, and
+ # metadata in your SVM.
+ #
+ # For information about choosing a user with the right level of access
+ # for your transfer, see [Using the SMB protocol][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html#create-ontap-location-smb
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/FsxUpdateProtocolSmb AWS API Documentation
+ #
+ class FsxUpdateProtocolSmb < Struct.new(
+ :domain,
+ :mount_options,
+ :password,
+ :user)
+ SENSITIVE = [:password]
+ include Aws::Structure
+ end
+
# @!attribute [rw] discovery_job_arn
# Specifies the Amazon Resource Name (ARN) of the discovery job that
# collects information about your on-premises storage system.
@@ -5099,7 +5200,8 @@ class ResourceMetrics < Struct.new(
# Specifies the Amazon Resource Name (ARN) of the Identity and Access
# Management (IAM) role that DataSync uses to access your S3 bucket.
#
- # For more information, see [Accessing S3 buckets][1].
+ # For more information, see [Providing DataSync access to S3
+ # buckets][1].
#
#
#
@@ -6160,6 +6262,235 @@ class UpdateLocationAzureBlobRequest < Struct.new(
#
class UpdateLocationAzureBlobResponse < Aws::EmptyStructure; end
+ # @!attribute [rw] location_arn
+ # Specifies the Amazon Resource Name (ARN) of the Amazon EFS transfer
+ # location that you're updating.
+ # @return [String]
+ #
+ # @!attribute [rw] subdirectory
+ # Specifies a mount path for your Amazon EFS file system. This is
+ # where DataSync reads or writes data on your file system (depending
+ # on if this is a source or destination location).
+ #
+ # By default, DataSync uses the root directory (or [access point][1]
+ # if you provide one by using `AccessPointArn`). You can also include
+ # subdirectories using forward slashes (for example,
+ # `/path/to/folder`).
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html
+ # @return [String]
+ #
+ # @!attribute [rw] access_point_arn
+ # Specifies the Amazon Resource Name (ARN) of the access point that
+ # DataSync uses to mount your Amazon EFS file system.
+ #
+ # For more information, see [Accessing restricted Amazon EFS file
+ # systems][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html#create-efs-location-iam
+ # @return [String]
+ #
+ # @!attribute [rw] file_system_access_role_arn
+ # Specifies an Identity and Access Management (IAM) role that allows
+ # DataSync to access your Amazon EFS file system.
+ #
+ # For information on creating this role, see [Creating a DataSync IAM
+ # role for Amazon EFS file system access][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html#create-efs-location-iam-role
+ # @return [String]
+ #
+ # @!attribute [rw] in_transit_encryption
+ # Specifies whether you want DataSync to use Transport Layer Security
+ # (TLS) 1.2 encryption when it transfers data to or from your Amazon
+ # EFS file system.
+ #
+ # If you specify an access point using `AccessPointArn` or an IAM role
+ # using `FileSystemAccessRoleArn`, you must set this parameter to
+ # `TLS1_2`.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationEfsRequest AWS API Documentation
+ #
+ class UpdateLocationEfsRequest < Struct.new(
+ :location_arn,
+ :subdirectory,
+ :access_point_arn,
+ :file_system_access_role_arn,
+ :in_transit_encryption)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationEfsResponse AWS API Documentation
+ #
+ class UpdateLocationEfsResponse < Aws::EmptyStructure; end
+
+ # @!attribute [rw] location_arn
+ # Specifies the Amazon Resource Name (ARN) of the FSx for Lustre
+ # transfer location that you're updating.
+ # @return [String]
+ #
+ # @!attribute [rw] subdirectory
+ # Specifies a mount path for your FSx for Lustre file system. The path
+ # can include subdirectories.
+ #
+ # When the location is used as a source, DataSync reads data from the
+ # mount path. When the location is used as a destination, DataSync
+ # writes data to the mount path. If you don't include this parameter,
+ # DataSync uses the file system's root directory (`/`).
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxLustreRequest AWS API Documentation
+ #
+ class UpdateLocationFsxLustreRequest < Struct.new(
+ :location_arn,
+ :subdirectory)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxLustreResponse AWS API Documentation
+ #
+ class UpdateLocationFsxLustreResponse < Aws::EmptyStructure; end
+
+ # @!attribute [rw] location_arn
+ # Specifies the Amazon Resource Name (ARN) of the FSx for ONTAP
+ # transfer location that you're updating.
+ # @return [String]
+ #
+ # @!attribute [rw] protocol
+ # Specifies the data transfer protocol that DataSync uses to access
+ # your Amazon FSx file system.
+ # @return [Types::FsxUpdateProtocol]
+ #
+ # @!attribute [rw] subdirectory
+ # Specifies a path to the file share in the storage virtual machine
+ # (SVM) where you want to transfer data to or from.
+ #
+ # You can specify a junction path (also known as a mount point), qtree
+ # path (for NFS file shares), or share name (for SMB file shares). For
+ # example, your mount path might be `/vol1`, `/vol1/tree1`, or
+ # `/share1`.
+ #
+ # Don't specify a junction path in the SVM's root volume. For more
+ # information, see [Managing FSx for ONTAP storage virtual
+ # machines][1] in the *Amazon FSx for NetApp ONTAP User Guide*.
+ #
+ #
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxOntapRequest AWS API Documentation
+ #
+ class UpdateLocationFsxOntapRequest < Struct.new(
+ :location_arn,
+ :protocol,
+ :subdirectory)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxOntapResponse AWS API Documentation
+ #
+ class UpdateLocationFsxOntapResponse < Aws::EmptyStructure; end
+
+ # @!attribute [rw] location_arn
+ # Specifies the Amazon Resource Name (ARN) of the FSx for OpenZFS
+ # transfer location that you're updating.
+ # @return [String]
+ #
+ # @!attribute [rw] protocol
+ # Specifies the data transfer protocol that DataSync uses to access
+ # your Amazon FSx file system.
+ # @return [Types::FsxProtocol]
+ #
+ # @!attribute [rw] subdirectory
+ # Specifies a subdirectory in the location's path that must begin
+ # with `/fsx`. DataSync uses this subdirectory to read or write data
+ # (depending on whether the file system is a source or destination
+ # location).
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxOpenZfsRequest AWS API Documentation
+ #
+ class UpdateLocationFsxOpenZfsRequest < Struct.new(
+ :location_arn,
+ :protocol,
+ :subdirectory)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxOpenZfsResponse AWS API Documentation
+ #
+ class UpdateLocationFsxOpenZfsResponse < Aws::EmptyStructure; end
+
+ # @!attribute [rw] location_arn
+ # Specifies the ARN of the FSx for Windows File Server transfer
+ # location that you're updating.
+ # @return [String]
+ #
+ # @!attribute [rw] subdirectory
+ # Specifies a mount path for your file system using forward slashes.
+ # DataSync uses this subdirectory to read or write data (depending on
+ # whether the file system is a source or destination location).
+ # @return [String]
+ #
+ # @!attribute [rw] domain
+ # Specifies the name of the Windows domain that your FSx for Windows
+ # File Server file system belongs to.
+ #
+ # If you have multiple Active Directory domains in your environment,
+ # configuring this parameter makes sure that DataSync connects to the
+ # right file system.
+ # @return [String]
+ #
+ # @!attribute [rw] user
+ # Specifies the user with the permissions to mount and access the
+ # files, folders, and file metadata in your FSx for Windows File
+ # Server file system.
+ #
+ # For information about choosing a user with the right level of access
+ # for your transfer, see [required permissions][1] for FSx for Windows
+ # File Server locations.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-fsx-location.html#create-fsx-windows-location-permissions
+ # @return [String]
+ #
+ # @!attribute [rw] password
+ # Specifies the password of the user with the permissions to mount and
+ # access the files, folders, and file metadata in your FSx for Windows
+ # File Server file system.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxWindowsRequest AWS API Documentation
+ #
+ class UpdateLocationFsxWindowsRequest < Struct.new(
+ :location_arn,
+ :subdirectory,
+ :domain,
+ :user,
+ :password)
+ SENSITIVE = [:password]
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationFsxWindowsResponse AWS API Documentation
+ #
+ class UpdateLocationFsxWindowsResponse < Aws::EmptyStructure; end
+
# @!attribute [rw] location_arn
# The Amazon Resource Name (ARN) of the source HDFS cluster location.
# @return [String]
@@ -6381,6 +6712,74 @@ class UpdateLocationObjectStorageRequest < Struct.new(
#
class UpdateLocationObjectStorageResponse < Aws::EmptyStructure; end
+ # @!attribute [rw] location_arn
+ # Specifies the Amazon Resource Name (ARN) of the Amazon S3 transfer
+ # location that you're updating.
+ # @return [String]
+ #
+ # @!attribute [rw] subdirectory
+ # Specifies a prefix in the S3 bucket that DataSync reads from or
+ # writes to (depending on whether the bucket is a source or
+ # destination location).
+ #
+ # DataSync can't transfer objects with a prefix that begins with a
+ # slash (`/`) or includes `//`, `/./`, or `/../` patterns. For
+ # example:
+ #
+ # * `/photos`
+ #
+ # * `photos//2006/January`
+ #
+ # * `photos/./2006/February`
+ #
+ # * `photos/../2006/March`
+ #
+ #
+ # @return [String]
+ #
+ # @!attribute [rw] s3_storage_class
+ # Specifies the storage class that you want your objects to use when
+ # Amazon S3 is a transfer destination.
+ #
+ # For buckets in Amazon Web Services Regions, the storage class
+ # defaults to `STANDARD`. For buckets on Outposts, the storage class
+ # defaults to `OUTPOSTS`.
+ #
+ # For more information, see [Storage class considerations with Amazon
+ # S3 transfers][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html#using-storage-classes
+ # @return [String]
+ #
+ # @!attribute [rw] s3_config
+ # Specifies the Amazon Resource Name (ARN) of the Identity and Access
+ # Management (IAM) role that DataSync uses to access your S3 bucket.
+ #
+ # For more information, see [Providing DataSync access to S3
+ # buckets][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-s3-location.html#create-s3-location-access
+ # @return [Types::S3Config]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationS3Request AWS API Documentation
+ #
+ class UpdateLocationS3Request < Struct.new(
+ :location_arn,
+ :subdirectory,
+ :s3_storage_class,
+ :s3_config)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateLocationS3Response AWS API Documentation
+ #
+ class UpdateLocationS3Response < Aws::EmptyStructure; end
+
# @!attribute [rw] location_arn
# Specifies the ARN of the SMB location that you want to update.
# @return [String]
diff --git a/gems/aws-sdk-datasync/sig/client.rbs b/gems/aws-sdk-datasync/sig/client.rbs
index 223b3498068..e6d49a3c18f 100644
--- a/gems/aws-sdk-datasync/sig/client.rbs
+++ b/gems/aws-sdk-datasync/sig/client.rbs
@@ -1144,6 +1144,92 @@ module Aws
) -> _UpdateLocationAzureBlobResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationAzureBlobResponseSuccess
+ interface _UpdateLocationEfsResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationEfsResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#update_location_efs-instance_method
+ def update_location_efs: (
+ location_arn: ::String,
+ ?subdirectory: ::String,
+ ?access_point_arn: ::String,
+ ?file_system_access_role_arn: ::String,
+ ?in_transit_encryption: ("NONE" | "TLS1_2")
+ ) -> _UpdateLocationEfsResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationEfsResponseSuccess
+
+ interface _UpdateLocationFsxLustreResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationFsxLustreResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#update_location_fsx_lustre-instance_method
+ def update_location_fsx_lustre: (
+ location_arn: ::String,
+ ?subdirectory: ::String
+ ) -> _UpdateLocationFsxLustreResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationFsxLustreResponseSuccess
+
+ interface _UpdateLocationFsxOntapResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationFsxOntapResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#update_location_fsx_ontap-instance_method
+ def update_location_fsx_ontap: (
+ location_arn: ::String,
+ ?protocol: {
+ nfs: {
+ mount_options: {
+ version: ("AUTOMATIC" | "NFS3" | "NFS4_0" | "NFS4_1")?
+ }?
+ }?,
+ smb: {
+ domain: ::String?,
+ mount_options: {
+ version: ("AUTOMATIC" | "SMB2" | "SMB3" | "SMB1" | "SMB2_0")?
+ }?,
+ password: ::String?,
+ user: ::String?
+ }?
+ },
+ ?subdirectory: ::String
+ ) -> _UpdateLocationFsxOntapResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationFsxOntapResponseSuccess
+
+ interface _UpdateLocationFsxOpenZfsResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationFsxOpenZfsResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#update_location_fsx_open_zfs-instance_method
+ def update_location_fsx_open_zfs: (
+ location_arn: ::String,
+ ?protocol: {
+ nfs: {
+ mount_options: {
+ version: ("AUTOMATIC" | "NFS3" | "NFS4_0" | "NFS4_1")?
+ }?
+ }?,
+ smb: {
+ domain: ::String?,
+ mount_options: {
+ version: ("AUTOMATIC" | "SMB2" | "SMB3" | "SMB1" | "SMB2_0")?
+ }?,
+ password: ::String,
+ user: ::String
+ }?
+ },
+ ?subdirectory: ::String
+ ) -> _UpdateLocationFsxOpenZfsResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationFsxOpenZfsResponseSuccess
+
+ interface _UpdateLocationFsxWindowsResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationFsxWindowsResponse]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#update_location_fsx_windows-instance_method
+ def update_location_fsx_windows: (
+ location_arn: ::String,
+ ?subdirectory: ::String,
+ ?domain: ::String,
+ ?user: ::String,
+ ?password: ::String
+ ) -> _UpdateLocationFsxWindowsResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationFsxWindowsResponseSuccess
+
interface _UpdateLocationHdfsResponseSuccess
include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationHdfsResponse]
end
@@ -1205,6 +1291,20 @@ module Aws
) -> _UpdateLocationObjectStorageResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationObjectStorageResponseSuccess
+ interface _UpdateLocationS3ResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationS3Response]
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#update_location_s3-instance_method
+ def update_location_s3: (
+ location_arn: ::String,
+ ?subdirectory: ::String,
+ ?s3_storage_class: ("STANDARD" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_INSTANT_RETRIEVAL"),
+ ?s3_config: {
+ bucket_access_role_arn: ::String
+ }
+ ) -> _UpdateLocationS3ResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateLocationS3ResponseSuccess
+
interface _UpdateLocationSmbResponseSuccess
include ::Seahorse::Client::_ResponseSuccess[Types::UpdateLocationSmbResponse]
end
diff --git a/gems/aws-sdk-datasync/sig/types.rbs b/gems/aws-sdk-datasync/sig/types.rbs
index 09d44127baf..37994fb65d2 100644
--- a/gems/aws-sdk-datasync/sig/types.rbs
+++ b/gems/aws-sdk-datasync/sig/types.rbs
@@ -659,6 +659,20 @@ module Aws::DataSync
SENSITIVE: [:password]
end
+ class FsxUpdateProtocol
+ attr_accessor nfs: Types::FsxProtocolNfs
+ attr_accessor smb: Types::FsxUpdateProtocolSmb
+ SENSITIVE: []
+ end
+
+ class FsxUpdateProtocolSmb
+ attr_accessor domain: ::String
+ attr_accessor mount_options: Types::SmbMountOptions
+ attr_accessor password: ::String
+ attr_accessor user: ::String
+ SENSITIVE: [:password]
+ end
+
class GenerateRecommendationsRequest
attr_accessor discovery_job_arn: ::String
attr_accessor resource_ids: ::Array[::String]
@@ -1199,6 +1213,59 @@ module Aws::DataSync
class UpdateLocationAzureBlobResponse < Aws::EmptyStructure
end
+ class UpdateLocationEfsRequest
+ attr_accessor location_arn: ::String
+ attr_accessor subdirectory: ::String
+ attr_accessor access_point_arn: ::String
+ attr_accessor file_system_access_role_arn: ::String
+ attr_accessor in_transit_encryption: ("NONE" | "TLS1_2")
+ SENSITIVE: []
+ end
+
+ class UpdateLocationEfsResponse < Aws::EmptyStructure
+ end
+
+ class UpdateLocationFsxLustreRequest
+ attr_accessor location_arn: ::String
+ attr_accessor subdirectory: ::String
+ SENSITIVE: []
+ end
+
+ class UpdateLocationFsxLustreResponse < Aws::EmptyStructure
+ end
+
+ class UpdateLocationFsxOntapRequest
+ attr_accessor location_arn: ::String
+ attr_accessor protocol: Types::FsxUpdateProtocol
+ attr_accessor subdirectory: ::String
+ SENSITIVE: []
+ end
+
+ class UpdateLocationFsxOntapResponse < Aws::EmptyStructure
+ end
+
+ class UpdateLocationFsxOpenZfsRequest
+ attr_accessor location_arn: ::String
+ attr_accessor protocol: Types::FsxProtocol
+ attr_accessor subdirectory: ::String
+ SENSITIVE: []
+ end
+
+ class UpdateLocationFsxOpenZfsResponse < Aws::EmptyStructure
+ end
+
+ class UpdateLocationFsxWindowsRequest
+ attr_accessor location_arn: ::String
+ attr_accessor subdirectory: ::String
+ attr_accessor domain: ::String
+ attr_accessor user: ::String
+ attr_accessor password: ::String
+ SENSITIVE: [:password]
+ end
+
+ class UpdateLocationFsxWindowsResponse < Aws::EmptyStructure
+ end
+
class UpdateLocationHdfsRequest
attr_accessor location_arn: ::String
attr_accessor subdirectory: ::String
@@ -1245,6 +1312,17 @@ module Aws::DataSync
class UpdateLocationObjectStorageResponse < Aws::EmptyStructure
end
+ class UpdateLocationS3Request
+ attr_accessor location_arn: ::String
+ attr_accessor subdirectory: ::String
+ attr_accessor s3_storage_class: ("STANDARD" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_INSTANT_RETRIEVAL")
+ attr_accessor s3_config: Types::S3Config
+ SENSITIVE: []
+ end
+
+ class UpdateLocationS3Response < Aws::EmptyStructure
+ end
+
class UpdateLocationSmbRequest
attr_accessor location_arn: ::String
attr_accessor subdirectory: ::String
diff --git a/gems/aws-sdk-iot/CHANGELOG.md b/gems/aws-sdk-iot/CHANGELOG.md
index d5092f53948..ea5ed11393f 100644
--- a/gems/aws-sdk-iot/CHANGELOG.md
+++ b/gems/aws-sdk-iot/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.141.0 (2024-12-18)
+------------------
+
+* Feature - Release connectivity status query API which is a dedicated high throughput(TPS) API to query a specific device's most recent connectivity state and metadata.
+
1.140.0 (2024-11-21)
------------------
diff --git a/gems/aws-sdk-iot/VERSION b/gems/aws-sdk-iot/VERSION
index c69675f250b..642c6da52ce 100644
--- a/gems/aws-sdk-iot/VERSION
+++ b/gems/aws-sdk-iot/VERSION
@@ -1 +1 @@
-1.140.0
+1.141.0
diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot.rb
index a87aacf2187..d67709c8945 100644
--- a/gems/aws-sdk-iot/lib/aws-sdk-iot.rb
+++ b/gems/aws-sdk-iot/lib/aws-sdk-iot.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-iot/endpoint_provider'
autoload :Endpoints, 'aws-sdk-iot/endpoints'
- GEM_VERSION = '1.140.0'
+ GEM_VERSION = '1.141.0'
end
diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb
index 3b88546709f..5019abd2546 100644
--- a/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb
+++ b/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb
@@ -1575,7 +1575,11 @@ def create_certificate_provider(params = {}, options = {})
# when running the command using the `StartCommandExecution` API.
#
# @option params [String] :role_arn
- # The IAM role that allows access to create the command.
+ # The IAM role that you must provide when using the `AWS-IoT-FleetWise`
+ # namespace. The role grants IoT Device Management the permission to
+ # access IoT FleetWise resources for generating the payload for the
+ # command. This field is not required when you use the `AWS-IoT`
+ # namespace.
#
# @option params [Array] :tags
# Name-value pairs that are used as metadata to manage a command.
@@ -8491,6 +8495,38 @@ def get_statistics(params = {}, options = {})
req.send_request(options)
end
+ # Retrieves the live connectivity status per device.
+ #
+ # @option params [required, String] :thing_name
+ # The name of your IoT thing.
+ #
+ # @return [Types::GetThingConnectivityDataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetThingConnectivityDataResponse#thing_name #thing_name} => String
+ # * {Types::GetThingConnectivityDataResponse#connected #connected} => Boolean
+ # * {Types::GetThingConnectivityDataResponse#timestamp #timestamp} => Time
+ # * {Types::GetThingConnectivityDataResponse#disconnect_reason #disconnect_reason} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_thing_connectivity_data({
+ # thing_name: "ConnectivityApiThingName", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.thing_name #=> String
+ # resp.connected #=> Boolean
+ # resp.timestamp #=> Time
+ # resp.disconnect_reason #=> String, one of "AUTH_ERROR", "CLIENT_INITIATED_DISCONNECT", "CLIENT_ERROR", "CONNECTION_LOST", "DUPLICATE_CLIENTID", "FORBIDDEN_ACCESS", "MQTT_KEEP_ALIVE_TIMEOUT", "SERVER_ERROR", "SERVER_INITIATED_DISCONNECT", "THROTTLED", "WEBSOCKET_TTL_EXPIRATION", "CUSTOMAUTH_TTL_EXPIRATION", "UNKNOWN", "NONE"
+ #
+ # @overload get_thing_connectivity_data(params = {})
+ # @param [Hash] params ({})
+ def get_thing_connectivity_data(params = {}, options = {})
+ req = build_request(:get_thing_connectivity_data, params)
+ req.send_request(options)
+ end
+
# Gets information about the rule.
#
# Requires permission to access the [GetTopicRule][1] action.
@@ -9742,10 +9778,22 @@ def list_certificates_by_ca(params = {}, options = {})
# List all command executions.
#
- # You must provide only the `startedTimeFilter` or the
- # `completedTimeFilter` information. If you provide both time filters,
- # the API will generate an error. You can use this information to find
- # command executions that started within a specific timeframe.
+ # * You must provide only the `startedTimeFilter` or the
+ # `completedTimeFilter` information. If you provide both time filters,
+ # the API will generate an error. You can use this information to
+ # retrieve a list of command executions within a specific timeframe.
+ #
+ # * You must provide only the `commandArn` or the `thingArn` information
+ # depending on whether you want to list executions for a specific
+ # command or an IoT thing. If you provide both fields, the API will
+ # generate an error.
+ #
+ # For more information about considerations for using this API, see
+ # [List command executions in your account (CLI)][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-remote-command-execution-start-monitor.html#iot-remote-command-execution-list-cli
#
# @option params [Integer] :max_results
# The maximum number of results to return in this operation.
@@ -16336,7 +16384,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-iot'
- context[:gem_version] = '1.140.0'
+ context[:gem_version] = '1.141.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb
index c2bf6e214a6..f48446d8555 100644
--- a/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb
+++ b/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb
@@ -273,6 +273,7 @@ module ClientApi
ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
ConflictingResourceUpdateException = Shapes::StructureShape.new(name: 'ConflictingResourceUpdateException')
ConnectionAttributeName = Shapes::StringShape.new(name: 'ConnectionAttributeName')
+ ConnectivityApiThingName = Shapes::StringShape.new(name: 'ConnectivityApiThingName')
ConnectivityTimestamp = Shapes::IntegerShape.new(name: 'ConnectivityTimestamp')
ConsecutiveDatapointsToAlarm = Shapes::IntegerShape.new(name: 'ConsecutiveDatapointsToAlarm')
ConsecutiveDatapointsToClear = Shapes::IntegerShape.new(name: 'ConsecutiveDatapointsToClear')
@@ -536,6 +537,7 @@ module ClientApi
DisassociateSbomFromPackageVersionRequest = Shapes::StructureShape.new(name: 'DisassociateSbomFromPackageVersionRequest')
DisassociateSbomFromPackageVersionResponse = Shapes::StructureShape.new(name: 'DisassociateSbomFromPackageVersionResponse')
DisconnectReason = Shapes::StringShape.new(name: 'DisconnectReason')
+ DisconnectReasonValue = Shapes::StringShape.new(name: 'DisconnectReasonValue')
DisplayName = Shapes::StringShape.new(name: 'DisplayName')
DocumentParameter = Shapes::StructureShape.new(name: 'DocumentParameter')
DocumentParameters = Shapes::ListShape.new(name: 'DocumentParameters')
@@ -654,6 +656,8 @@ module ClientApi
GetRegistrationCodeResponse = Shapes::StructureShape.new(name: 'GetRegistrationCodeResponse')
GetStatisticsRequest = Shapes::StructureShape.new(name: 'GetStatisticsRequest')
GetStatisticsResponse = Shapes::StructureShape.new(name: 'GetStatisticsResponse')
+ GetThingConnectivityDataRequest = Shapes::StructureShape.new(name: 'GetThingConnectivityDataRequest')
+ GetThingConnectivityDataResponse = Shapes::StructureShape.new(name: 'GetThingConnectivityDataResponse')
GetTopicRuleDestinationRequest = Shapes::StructureShape.new(name: 'GetTopicRuleDestinationRequest')
GetTopicRuleDestinationResponse = Shapes::StructureShape.new(name: 'GetTopicRuleDestinationResponse')
GetTopicRuleRequest = Shapes::StructureShape.new(name: 'GetTopicRuleRequest')
@@ -3396,6 +3400,15 @@ module ClientApi
GetStatisticsResponse.add_member(:statistics, Shapes::ShapeRef.new(shape: Statistics, location_name: "statistics"))
GetStatisticsResponse.struct_class = Types::GetStatisticsResponse
+ GetThingConnectivityDataRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ConnectivityApiThingName, required: true, location: "uri", location_name: "thingName"))
+ GetThingConnectivityDataRequest.struct_class = Types::GetThingConnectivityDataRequest
+
+ GetThingConnectivityDataResponse.add_member(:thing_name, Shapes::ShapeRef.new(shape: ConnectivityApiThingName, location_name: "thingName"))
+ GetThingConnectivityDataResponse.add_member(:connected, Shapes::ShapeRef.new(shape: Boolean, location_name: "connected"))
+ GetThingConnectivityDataResponse.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "timestamp"))
+ GetThingConnectivityDataResponse.add_member(:disconnect_reason, Shapes::ShapeRef.new(shape: DisconnectReasonValue, location_name: "disconnectReason"))
+ GetThingConnectivityDataResponse.struct_class = Types::GetThingConnectivityDataResponse
+
GetTopicRuleDestinationRequest.add_member(:arn, Shapes::ShapeRef.new(shape: AwsArn, required: true, location: "uri", location_name: "arn"))
GetTopicRuleDestinationRequest.struct_class = Types::GetTopicRuleDestinationRequest
@@ -7609,6 +7622,21 @@ module ClientApi
o.errors << Shapes::ShapeRef.new(shape: IndexNotReadyException)
end)
+ api.add_operation(:get_thing_connectivity_data, Seahorse::Model::Operation.new.tap do |o|
+ o.name = "GetThingConnectivityData"
+ o.http_method = "POST"
+ o.http_request_uri = "/things/{thingName}/connectivity-data"
+ o.input = Shapes::ShapeRef.new(shape: GetThingConnectivityDataRequest)
+ o.output = Shapes::ShapeRef.new(shape: GetThingConnectivityDataResponse)
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
+ o.errors << Shapes::ShapeRef.new(shape: IndexNotReadyException)
+ end)
+
api.add_operation(:get_topic_rule, Seahorse::Model::Operation.new.tap do |o|
o.name = "GetTopicRule"
o.http_method = "GET"
diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb
index 54f03597235..25f387cddef 100644
--- a/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb
+++ b/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb
@@ -2795,7 +2795,11 @@ class CreateCertificateProviderResponse < Struct.new(
# @return [Array]
#
# @!attribute [rw] role_arn
- # The IAM role that allows access to create the command.
+ # The IAM role that you must provide when using the
+ # `AWS-IoT-FleetWise` namespace. The role grants IoT Device Management
+ # the permission to access IoT FleetWise resources for generating the
+ # payload for the command. This field is not required when you use the
+ # `AWS-IoT` namespace.
# @return [String]
#
# @!attribute [rw] tags
@@ -8084,7 +8088,9 @@ class GetCommandExecutionRequest < Struct.new(
# @return [Time]
#
# @!attribute [rw] time_to_live
- # The time to live (TTL) parameter for the `GetCommandExecution` API.
+ # The time to live (TTL) parameter that indicates the duration for
+ # which executions will be retained in your account. The default value
+ # is six months.
# @return [Time]
#
class GetCommandExecutionResponse < Struct.new(
@@ -8146,8 +8152,8 @@ class GetCommandRequest < Struct.new(
# @return [Types::CommandPayload]
#
# @!attribute [rw] role_arn
- # The IAM role that allows access to retrieve information about the
- # command.
+ # The IAM role that you provided when creating the command with
+ # `AWS-IoT-FleetWise` as the namespace.
# @return [String]
#
# @!attribute [rw] created_at
@@ -8672,6 +8678,41 @@ class GetStatisticsResponse < Struct.new(
include Aws::Structure
end
+ # @!attribute [rw] thing_name
+ # The name of your IoT thing.
+ # @return [String]
+ #
+ class GetThingConnectivityDataRequest < Struct.new(
+ :thing_name)
+ SENSITIVE = [:thing_name]
+ include Aws::Structure
+ end
+
+ # @!attribute [rw] thing_name
+ # The name of your IoT thing.
+ # @return [String]
+ #
+ # @!attribute [rw] connected
+ # A Boolean that indicates the connectivity status.
+ # @return [Boolean]
+ #
+ # @!attribute [rw] timestamp
+ # The timestamp of when the event occurred.
+ # @return [Time]
+ #
+ # @!attribute [rw] disconnect_reason
+ # The reason why the client is disconnecting.
+ # @return [String]
+ #
+ class GetThingConnectivityDataResponse < Struct.new(
+ :thing_name,
+ :connected,
+ :timestamp,
+ :disconnect_reason)
+ SENSITIVE = [:thing_name]
+ include Aws::Structure
+ end
+
# @!attribute [rw] arn
# The ARN of the topic rule destination.
# @return [String]
diff --git a/gems/aws-sdk-iot/sig/client.rbs b/gems/aws-sdk-iot/sig/client.rbs
index e5cf81fd900..012370fd53d 100644
--- a/gems/aws-sdk-iot/sig/client.rbs
+++ b/gems/aws-sdk-iot/sig/client.rbs
@@ -2809,6 +2809,19 @@ module Aws
) -> _GetStatisticsResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetStatisticsResponseSuccess
+ interface _GetThingConnectivityDataResponseSuccess
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetThingConnectivityDataResponse]
+ def thing_name: () -> ::String
+ def connected: () -> bool
+ def timestamp: () -> ::Time
+ def disconnect_reason: () -> ("AUTH_ERROR" | "CLIENT_INITIATED_DISCONNECT" | "CLIENT_ERROR" | "CONNECTION_LOST" | "DUPLICATE_CLIENTID" | "FORBIDDEN_ACCESS" | "MQTT_KEEP_ALIVE_TIMEOUT" | "SERVER_ERROR" | "SERVER_INITIATED_DISCONNECT" | "THROTTLED" | "WEBSOCKET_TTL_EXPIRATION" | "CUSTOMAUTH_TTL_EXPIRATION" | "UNKNOWN" | "NONE")
+ end
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IoT/Client.html#get_thing_connectivity_data-instance_method
+ def get_thing_connectivity_data: (
+ thing_name: ::String
+ ) -> _GetThingConnectivityDataResponseSuccess
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetThingConnectivityDataResponseSuccess
+
interface _GetTopicRuleResponseSuccess
include ::Seahorse::Client::_ResponseSuccess[Types::GetTopicRuleResponse]
def rule_arn: () -> ::String
diff --git a/gems/aws-sdk-iot/sig/types.rbs b/gems/aws-sdk-iot/sig/types.rbs
index 25b3e6961db..d88b9aa5ff7 100644
--- a/gems/aws-sdk-iot/sig/types.rbs
+++ b/gems/aws-sdk-iot/sig/types.rbs
@@ -2469,6 +2469,19 @@ module Aws::IoT
SENSITIVE: []
end
+ class GetThingConnectivityDataRequest
+ attr_accessor thing_name: ::String
+ SENSITIVE: [:thing_name]
+ end
+
+ class GetThingConnectivityDataResponse
+ attr_accessor thing_name: ::String
+ attr_accessor connected: bool
+ attr_accessor timestamp: ::Time
+ attr_accessor disconnect_reason: ("AUTH_ERROR" | "CLIENT_INITIATED_DISCONNECT" | "CLIENT_ERROR" | "CONNECTION_LOST" | "DUPLICATE_CLIENTID" | "FORBIDDEN_ACCESS" | "MQTT_KEEP_ALIVE_TIMEOUT" | "SERVER_ERROR" | "SERVER_INITIATED_DISCONNECT" | "THROTTLED" | "WEBSOCKET_TTL_EXPIRATION" | "CUSTOMAUTH_TTL_EXPIRATION" | "UNKNOWN" | "NONE")
+ SENSITIVE: [:thing_name]
+ end
+
class GetTopicRuleDestinationRequest
attr_accessor arn: ::String
SENSITIVE: []
diff --git a/gems/aws-sdk-mwaa/CHANGELOG.md b/gems/aws-sdk-mwaa/CHANGELOG.md
index 1679ca6cf19..90810b7c8f4 100644
--- a/gems/aws-sdk-mwaa/CHANGELOG.md
+++ b/gems/aws-sdk-mwaa/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.52.0 (2024-12-18)
+------------------
+
+* Feature - Added support for Apache Airflow version 2.10.3 to MWAA.
+
1.51.0 (2024-11-19)
------------------
diff --git a/gems/aws-sdk-mwaa/VERSION b/gems/aws-sdk-mwaa/VERSION
index ba0a719118c..a63cb35e6f0 100644
--- a/gems/aws-sdk-mwaa/VERSION
+++ b/gems/aws-sdk-mwaa/VERSION
@@ -1 +1 @@
-1.51.0
+1.52.0
diff --git a/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa.rb b/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa.rb
index ceca2f4898a..922956c9e54 100644
--- a/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa.rb
+++ b/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-mwaa/endpoint_provider'
autoload :Endpoints, 'aws-sdk-mwaa/endpoints'
- GEM_VERSION = '1.51.0'
+ GEM_VERSION = '1.52.0'
end
diff --git a/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/client.rb b/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/client.rb
index c8950f6c552..e2772a8c093 100644
--- a/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/client.rb
+++ b/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/client.rb
@@ -643,7 +643,7 @@ def create_cli_token(params = {}, options = {})
# Airflow (Amazon MWAA)][1].
#
# Valid values: `1.10.12`, `2.0.2`, `2.2.2`, `2.4.3`, `2.5.1`, `2.6.3`,
- # `2.7.2`, `2.8.1`, `2.9.2`, and `2.10.1`.
+ # `2.7.2`, `2.8.1`, `2.9.2`, `2.10.1`, and `2.10.3`.
#
#
#
@@ -1258,7 +1258,7 @@ def untag_resource(params = {}, options = {})
# environment][1].
#
# Valid values: `1.10.12`, `2.0.2`, `2.2.2`, `2.4.3`, `2.5.1`, `2.6.3`,
- # `2.7.2`, `2.8.1`, `2.9.2`, and `2.10.1`.
+ # `2.7.2`, `2.8.1`, `2.9.2`, `2.10.1`, and `2.10.3`.
#
#
#
@@ -1535,7 +1535,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-mwaa'
- context[:gem_version] = '1.51.0'
+ context[:gem_version] = '1.52.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/types.rb b/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/types.rb
index 8e340e35832..b48befcad26 100644
--- a/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/types.rb
+++ b/gems/aws-sdk-mwaa/lib/aws-sdk-mwaa/types.rb
@@ -242,7 +242,7 @@ class CreateCliTokenResponse < Struct.new(
# Airflow (Amazon MWAA)][1].
#
# Valid values: `1.10.12`, `2.0.2`, `2.2.2`, `2.4.3`, `2.5.1`,
- # `2.6.3`, `2.7.2`, `2.8.1`, `2.9.2`, and `2.10.1`.
+ # `2.6.3`, `2.7.2`, `2.8.1`, `2.9.2`, `2.10.1`, and `2.10.3`.
#
#
#
@@ -596,7 +596,7 @@ class Dimension < Struct.new(
# The Apache Airflow version on your environment.
#
# Valid values: `1.10.12`, `2.0.2`, `2.2.2`, `2.4.3`, `2.5.1`,
- # `2.6.3`, `2.7.2`, `2.8.1`, `2.9.2`, and `2.10.1`.
+ # `2.6.3`, `2.7.2`, `2.8.1`, `2.9.2`, `2.10.1`, and `2.10.3`.
# @return [String]
#
# @!attribute [rw] source_bucket_arn
@@ -1491,7 +1491,7 @@ class UntagResourceOutput < Aws::EmptyStructure; end
# environment][1].
#
# Valid values: `1.10.12`, `2.0.2`, `2.2.2`, `2.4.3`, `2.5.1`,
- # `2.6.3`, `2.7.2`, `2.8.1`, `2.9.2`, and `2.10.1`.
+ # `2.6.3`, `2.7.2`, `2.8.1`, `2.9.2`, `2.10.1`, and `2.10.3`.
#
#
#
diff --git a/gems/aws-sdk-quicksight/CHANGELOG.md b/gems/aws-sdk-quicksight/CHANGELOG.md
index c46acf89c71..d08128d1e56 100644
--- a/gems/aws-sdk-quicksight/CHANGELOG.md
+++ b/gems/aws-sdk-quicksight/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.140.0 (2024-12-18)
+------------------
+
+* Feature - Add support for PerformanceConfiguration attribute to Dataset entity. Allow PerformanceConfiguration specification in CreateDataset and UpdateDataset APIs.
+
1.139.0 (2024-12-03)
------------------
diff --git a/gems/aws-sdk-quicksight/VERSION b/gems/aws-sdk-quicksight/VERSION
index 53d195fd9b0..c69675f250b 100644
--- a/gems/aws-sdk-quicksight/VERSION
+++ b/gems/aws-sdk-quicksight/VERSION
@@ -1 +1 @@
-1.139.0
+1.140.0
diff --git a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight.rb b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight.rb
index e8848571bc2..51c74303c49 100644
--- a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight.rb
+++ b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-quicksight/endpoint_provider'
autoload :Endpoints, 'aws-sdk-quicksight/endpoints'
- GEM_VERSION = '1.139.0'
+ GEM_VERSION = '1.140.0'
end
diff --git a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client.rb b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client.rb
index 79658ba650e..b7a5211836d 100644
--- a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client.rb
+++ b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client.rb
@@ -2252,6 +2252,10 @@ def create_dashboard(params = {}, options = {})
# When you create the dataset, Amazon QuickSight adds the dataset to
# these folders.
#
+ # @option params [Types::PerformanceConfiguration] :performance_configuration
+ # The configuration for the performance optimization of the dataset that
+ # contains a `UniqueKey` configuration.
+ #
# @return [Types::CreateDataSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::CreateDataSetResponse#arn #arn} => String
@@ -2485,6 +2489,13 @@ def create_dashboard(params = {}, options = {})
# },
# ],
# folder_arns: ["Arn"],
+ # performance_configuration: {
+ # unique_keys: [
+ # {
+ # column_names: ["ColumnName"], # required
+ # },
+ # ],
+ # },
# })
#
# @example Response structure
@@ -7124,6 +7135,9 @@ def describe_dashboards_qa_configuration(params = {}, options = {})
# resp.data_set.dataset_parameters[0].date_time_dataset_parameter.time_granularity #=> String, one of "YEAR", "QUARTER", "MONTH", "WEEK", "DAY", "HOUR", "MINUTE", "SECOND", "MILLISECOND"
# resp.data_set.dataset_parameters[0].date_time_dataset_parameter.default_values.static_values #=> Array
# resp.data_set.dataset_parameters[0].date_time_dataset_parameter.default_values.static_values[0] #=> Time
+ # resp.data_set.performance_configuration.unique_keys #=> Array
+ # resp.data_set.performance_configuration.unique_keys[0].column_names #=> Array
+ # resp.data_set.performance_configuration.unique_keys[0].column_names[0] #=> String
# resp.request_id #=> String
# resp.status #=> Integer
#
@@ -14935,6 +14949,10 @@ def update_dashboards_qa_configuration(params = {}, options = {})
# @option params [Array] :dataset_parameters
# The parameter declarations of the dataset.
#
+ # @option params [Types::PerformanceConfiguration] :performance_configuration
+ # The configuration for the performance optimization of the dataset that
+ # contains a `UniqueKey` configuration.
+ #
# @return [Types::UpdateDataSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::UpdateDataSetResponse#arn #arn} => String
@@ -15155,6 +15173,13 @@ def update_dashboards_qa_configuration(params = {}, options = {})
# },
# },
# ],
+ # performance_configuration: {
+ # unique_keys: [
+ # {
+ # column_names: ["ColumnName"], # required
+ # },
+ # ],
+ # },
# })
#
# @example Response structure
@@ -17490,7 +17515,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-quicksight'
- context[:gem_version] = '1.139.0'
+ context[:gem_version] = '1.140.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client_api.rb b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client_api.rb
index 0474cc11438..9510c3bf6aa 100644
--- a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client_api.rb
+++ b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/client_api.rb
@@ -1356,6 +1356,7 @@ module ClientApi
PercentageDisplayFormatConfiguration = Shapes::StructureShape.new(name: 'PercentageDisplayFormatConfiguration')
PercentileAggregation = Shapes::StructureShape.new(name: 'PercentileAggregation')
PercentileValue = Shapes::FloatShape.new(name: 'PercentileValue')
+ PerformanceConfiguration = Shapes::StructureShape.new(name: 'PerformanceConfiguration')
PeriodOverPeriodComputation = Shapes::StructureShape.new(name: 'PeriodOverPeriodComputation')
PeriodToDateComputation = Shapes::StructureShape.new(name: 'PeriodToDateComputation')
PeriodsBackward = Shapes::IntegerShape.new(name: 'PeriodsBackward')
@@ -1955,6 +1956,9 @@ module ClientApi
UnaggregatedFieldList = Shapes::ListShape.new(name: 'UnaggregatedFieldList')
UndefinedSpecifiedValueType = Shapes::StringShape.new(name: 'UndefinedSpecifiedValueType')
UnicodeIcon = Shapes::StringShape.new(name: 'UnicodeIcon')
+ UniqueKey = Shapes::StructureShape.new(name: 'UniqueKey')
+ UniqueKeyColumnNameList = Shapes::ListShape.new(name: 'UniqueKeyColumnNameList')
+ UniqueKeyList = Shapes::ListShape.new(name: 'UniqueKeyList')
UniqueValuesComputation = Shapes::StructureShape.new(name: 'UniqueValuesComputation')
UnlimitedPixelLength = Shapes::StringShape.new(name: 'UnlimitedPixelLength')
UnsupportedPricingPlanException = Shapes::StructureShape.new(name: 'UnsupportedPricingPlanException')
@@ -3423,6 +3427,7 @@ module ClientApi
CreateDataSetRequest.add_member(:data_set_usage_configuration, Shapes::ShapeRef.new(shape: DataSetUsageConfiguration, location_name: "DataSetUsageConfiguration"))
CreateDataSetRequest.add_member(:dataset_parameters, Shapes::ShapeRef.new(shape: DatasetParameterList, location_name: "DatasetParameters"))
CreateDataSetRequest.add_member(:folder_arns, Shapes::ShapeRef.new(shape: FolderArnList, location_name: "FolderArns"))
+ CreateDataSetRequest.add_member(:performance_configuration, Shapes::ShapeRef.new(shape: PerformanceConfiguration, location_name: "PerformanceConfiguration"))
CreateDataSetRequest.struct_class = Types::CreateDataSetRequest
CreateDataSetResponse.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "Arn"))
@@ -3982,6 +3987,7 @@ module ClientApi
DataSet.add_member(:column_level_permission_rules, Shapes::ShapeRef.new(shape: ColumnLevelPermissionRuleList, location_name: "ColumnLevelPermissionRules"))
DataSet.add_member(:data_set_usage_configuration, Shapes::ShapeRef.new(shape: DataSetUsageConfiguration, location_name: "DataSetUsageConfiguration"))
DataSet.add_member(:dataset_parameters, Shapes::ShapeRef.new(shape: DatasetParameterList, location_name: "DatasetParameters"))
+ DataSet.add_member(:performance_configuration, Shapes::ShapeRef.new(shape: PerformanceConfiguration, location_name: "PerformanceConfiguration"))
DataSet.struct_class = Types::DataSet
DataSetArnsList.member = Shapes::ShapeRef.new(shape: Arn)
@@ -7334,6 +7340,9 @@ module ClientApi
PercentileAggregation.add_member(:percentile_value, Shapes::ShapeRef.new(shape: PercentileValue, location_name: "PercentileValue"))
PercentileAggregation.struct_class = Types::PercentileAggregation
+ PerformanceConfiguration.add_member(:unique_keys, Shapes::ShapeRef.new(shape: UniqueKeyList, location_name: "UniqueKeys"))
+ PerformanceConfiguration.struct_class = Types::PerformanceConfiguration
+
PeriodOverPeriodComputation.add_member(:computation_id, Shapes::ShapeRef.new(shape: ShortRestrictiveResourceId, required: true, location_name: "ComputationId"))
PeriodOverPeriodComputation.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
PeriodOverPeriodComputation.add_member(:time, Shapes::ShapeRef.new(shape: DimensionField, location_name: "Time"))
@@ -9371,6 +9380,13 @@ module ClientApi
UnaggregatedFieldList.member = Shapes::ShapeRef.new(shape: UnaggregatedField)
+ UniqueKey.add_member(:column_names, Shapes::ShapeRef.new(shape: UniqueKeyColumnNameList, required: true, location_name: "ColumnNames"))
+ UniqueKey.struct_class = Types::UniqueKey
+
+ UniqueKeyColumnNameList.member = Shapes::ShapeRef.new(shape: ColumnName)
+
+ UniqueKeyList.member = Shapes::ShapeRef.new(shape: UniqueKey)
+
UniqueValuesComputation.add_member(:computation_id, Shapes::ShapeRef.new(shape: ShortRestrictiveResourceId, required: true, location_name: "ComputationId"))
UniqueValuesComputation.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
UniqueValuesComputation.add_member(:category, Shapes::ShapeRef.new(shape: DimensionField, location_name: "Category"))
@@ -9586,6 +9602,7 @@ module ClientApi
UpdateDataSetRequest.add_member(:column_level_permission_rules, Shapes::ShapeRef.new(shape: ColumnLevelPermissionRuleList, location_name: "ColumnLevelPermissionRules"))
UpdateDataSetRequest.add_member(:data_set_usage_configuration, Shapes::ShapeRef.new(shape: DataSetUsageConfiguration, location_name: "DataSetUsageConfiguration"))
UpdateDataSetRequest.add_member(:dataset_parameters, Shapes::ShapeRef.new(shape: DatasetParameterList, location_name: "DatasetParameters"))
+ UpdateDataSetRequest.add_member(:performance_configuration, Shapes::ShapeRef.new(shape: PerformanceConfiguration, location_name: "PerformanceConfiguration"))
UpdateDataSetRequest.struct_class = Types::UpdateDataSetRequest
UpdateDataSetResponse.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "Arn"))
diff --git a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb
index acd726f537a..2dbb9e7386a 100644
--- a/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb
+++ b/gems/aws-sdk-quicksight/lib/aws-sdk-quicksight/types.rb
@@ -6079,6 +6079,11 @@ class CreateDashboardResponse < Struct.new(
# these folders.
# @return [Array]
#
+ # @!attribute [rw] performance_configuration
+ # The configuration for the performance optimization of the dataset
+ # that contains a `UniqueKey` configuration.
+ # @return [Types::PerformanceConfiguration]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/CreateDataSetRequest AWS API Documentation
#
class CreateDataSetRequest < Struct.new(
@@ -6097,7 +6102,8 @@ class CreateDataSetRequest < Struct.new(
:tags,
:data_set_usage_configuration,
:dataset_parameters,
- :folder_arns)
+ :folder_arns,
+ :performance_configuration)
SENSITIVE = []
include Aws::Structure
end
@@ -8953,6 +8959,10 @@ class DataPointTooltipOption < Struct.new(
# The parameters that are declared in a dataset.
# @return [Array]
#
+ # @!attribute [rw] performance_configuration
+ # The performance optimization configuration of a dataset.
+ # @return [Types::PerformanceConfiguration]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/DataSet AWS API Documentation
#
class DataSet < Struct.new(
@@ -8972,7 +8982,8 @@ class DataSet < Struct.new(
:row_level_permission_tag_configuration,
:column_level_permission_rules,
:data_set_usage_configuration,
- :dataset_parameters)
+ :dataset_parameters,
+ :performance_configuration)
SENSITIVE = []
include Aws::Structure
end
@@ -25202,6 +25213,21 @@ class PercentileAggregation < Struct.new(
include Aws::Structure
end
+ # The configuration for the performance optimization of the dataset that
+ # contains a `UniqueKey` configuration.
+ #
+ # @!attribute [rw] unique_keys
+ # A `UniqueKey` configuration.
+ # @return [Array]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/PerformanceConfiguration AWS API Documentation
+ #
+ class PerformanceConfiguration < Struct.new(
+ :unique_keys)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
# The period over period computation configuration.
#
# @!attribute [rw] computation_id
@@ -35117,6 +35143,21 @@ class UnaggregatedField < Struct.new(
include Aws::Structure
end
+ # A `UniqueKey` configuration that references a dataset column.
+ #
+ # @!attribute [rw] column_names
+ # The name of the column that is referenced in the `UniqueKey`
+ # configuration.
+ # @return [Array]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UniqueKey AWS API Documentation
+ #
+ class UniqueKey < Struct.new(
+ :column_names)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
# The unique values computation configuration.
#
# @!attribute [rw] computation_id
@@ -36191,6 +36232,11 @@ class UpdateDataSetPermissionsResponse < Struct.new(
# The parameter declarations of the dataset.
# @return [Array]
#
+ # @!attribute [rw] performance_configuration
+ # The configuration for the performance optimization of the dataset
+ # that contains a `UniqueKey` configuration.
+ # @return [Types::PerformanceConfiguration]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/UpdateDataSetRequest AWS API Documentation
#
class UpdateDataSetRequest < Struct.new(
@@ -36206,7 +36252,8 @@ class UpdateDataSetRequest < Struct.new(
:row_level_permission_tag_configuration,
:column_level_permission_rules,
:data_set_usage_configuration,
- :dataset_parameters)
+ :dataset_parameters,
+ :performance_configuration)
SENSITIVE = []
include Aws::Structure
end
diff --git a/gems/aws-sdk-quicksight/sig/client.rbs b/gems/aws-sdk-quicksight/sig/client.rbs
index 30c27d1491a..f0a72594c43 100644
--- a/gems/aws-sdk-quicksight/sig/client.rbs
+++ b/gems/aws-sdk-quicksight/sig/client.rbs
@@ -73938,7 +73938,14 @@ module Aws
}?
},
],
- ?folder_arns: Array[::String]
+ ?folder_arns: Array[::String],
+ ?performance_configuration: {
+ unique_keys: Array[
+ {
+ column_names: Array[::String]
+ },
+ ]?
+ }
) -> _CreateDataSetResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateDataSetResponseSuccess
@@ -187047,7 +187054,14 @@ module Aws
}?
}?
},
- ]
+ ],
+ ?performance_configuration: {
+ unique_keys: Array[
+ {
+ column_names: Array[::String]
+ },
+ ]?
+ }
) -> _UpdateDataSetResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateDataSetResponseSuccess
diff --git a/gems/aws-sdk-quicksight/sig/types.rbs b/gems/aws-sdk-quicksight/sig/types.rbs
index a444b2eb245..ddb1d7cd7c6 100644
--- a/gems/aws-sdk-quicksight/sig/types.rbs
+++ b/gems/aws-sdk-quicksight/sig/types.rbs
@@ -1521,6 +1521,7 @@ module Aws::QuickSight
attr_accessor data_set_usage_configuration: Types::DataSetUsageConfiguration
attr_accessor dataset_parameters: ::Array[Types::DatasetParameter]
attr_accessor folder_arns: ::Array[::String]
+ attr_accessor performance_configuration: Types::PerformanceConfiguration
SENSITIVE: []
end
@@ -2222,6 +2223,7 @@ module Aws::QuickSight
attr_accessor column_level_permission_rules: ::Array[Types::ColumnLevelPermissionRule]
attr_accessor data_set_usage_configuration: Types::DataSetUsageConfiguration
attr_accessor dataset_parameters: ::Array[Types::DatasetParameter]
+ attr_accessor performance_configuration: Types::PerformanceConfiguration
SENSITIVE: []
end
@@ -6549,6 +6551,11 @@ module Aws::QuickSight
SENSITIVE: []
end
+ class PerformanceConfiguration
+ attr_accessor unique_keys: ::Array[Types::UniqueKey]
+ SENSITIVE: []
+ end
+
class PeriodOverPeriodComputation
attr_accessor computation_id: ::String
attr_accessor name: ::String
@@ -9052,6 +9059,11 @@ module Aws::QuickSight
SENSITIVE: []
end
+ class UniqueKey
+ attr_accessor column_names: ::Array[::String]
+ SENSITIVE: []
+ end
+
class UniqueValuesComputation
attr_accessor computation_id: ::String
attr_accessor name: ::String
@@ -9340,6 +9352,7 @@ module Aws::QuickSight
attr_accessor column_level_permission_rules: ::Array[Types::ColumnLevelPermissionRule]
attr_accessor data_set_usage_configuration: Types::DataSetUsageConfiguration
attr_accessor dataset_parameters: ::Array[Types::DatasetParameter]
+ attr_accessor performance_configuration: Types::PerformanceConfiguration
SENSITIVE: []
end
diff --git a/gems/aws-sdk-resiliencehub/CHANGELOG.md b/gems/aws-sdk-resiliencehub/CHANGELOG.md
index 743ecab99b4..063b91ae78b 100644
--- a/gems/aws-sdk-resiliencehub/CHANGELOG.md
+++ b/gems/aws-sdk-resiliencehub/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.45.0 (2024-12-18)
+------------------
+
+* Feature - AWS Resilience Hub now automatically detects already configured CloudWatch alarms and FIS experiments as part of the assessment process and returns the discovered resources in the corresponding list API responses. It also allows you to include or exclude test recommendations for an AppComponent.
+
1.44.0 (2024-11-21)
------------------
diff --git a/gems/aws-sdk-resiliencehub/VERSION b/gems/aws-sdk-resiliencehub/VERSION
index 372cf402c73..50aceaa7b71 100644
--- a/gems/aws-sdk-resiliencehub/VERSION
+++ b/gems/aws-sdk-resiliencehub/VERSION
@@ -1 +1 @@
-1.44.0
+1.45.0
diff --git a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub.rb b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub.rb
index 6f378bc4c8f..9473d95e190 100644
--- a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub.rb
+++ b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub.rb
@@ -54,7 +54,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-resiliencehub/endpoint_provider'
autoload :Endpoints, 'aws-sdk-resiliencehub/endpoints'
- GEM_VERSION = '1.44.0'
+ GEM_VERSION = '1.45.0'
end
diff --git a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb
index c5d18fbfb37..5b1308bf9c4 100644
--- a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb
+++ b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb
@@ -613,6 +613,7 @@ def add_draft_app_version_resource_mappings(params = {}, options = {})
# app_arn: "Arn", # required
# request_entries: [ # required
# {
+ # app_component_id: "EntityName255",
# entry_id: "String255", # required
# exclude_reason: "AlreadyImplemented", # accepts AlreadyImplemented, NotRelevant, ComplexityOfImplementation
# excluded: false, # required
@@ -633,6 +634,7 @@ def add_draft_app_version_resource_mappings(params = {}, options = {})
# resp.failed_entries[0].entry_id #=> String
# resp.failed_entries[0].error_message #=> String
# resp.successful_entries #=> Array
+ # resp.successful_entries[0].app_component_id #=> String
# resp.successful_entries[0].entry_id #=> String
# resp.successful_entries[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
# resp.successful_entries[0].excluded #=> Boolean
@@ -2424,8 +2426,12 @@ def import_resources_to_draft_app_version(params = {}, options = {})
# resp.alarm_recommendations[0].description #=> String
# resp.alarm_recommendations[0].items #=> Array
# resp.alarm_recommendations[0].items[0].already_implemented #=> Boolean
+ # resp.alarm_recommendations[0].items[0].discovered_alarm.alarm_arn #=> String
+ # resp.alarm_recommendations[0].items[0].discovered_alarm.source #=> String
# resp.alarm_recommendations[0].items[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
# resp.alarm_recommendations[0].items[0].excluded #=> Boolean
+ # resp.alarm_recommendations[0].items[0].latest_discovered_experiment.experiment_arn #=> String
+ # resp.alarm_recommendations[0].items[0].latest_discovered_experiment.experiment_template_id #=> String
# resp.alarm_recommendations[0].items[0].resource_id #=> String
# resp.alarm_recommendations[0].items[0].target_account_id #=> String
# resp.alarm_recommendations[0].items[0].target_region #=> String
@@ -3630,8 +3636,12 @@ def list_resource_grouping_recommendations(params = {}, options = {})
# resp.sop_recommendations[0].description #=> String
# resp.sop_recommendations[0].items #=> Array
# resp.sop_recommendations[0].items[0].already_implemented #=> Boolean
+ # resp.sop_recommendations[0].items[0].discovered_alarm.alarm_arn #=> String
+ # resp.sop_recommendations[0].items[0].discovered_alarm.source #=> String
# resp.sop_recommendations[0].items[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
# resp.sop_recommendations[0].items[0].excluded #=> Boolean
+ # resp.sop_recommendations[0].items[0].latest_discovered_experiment.experiment_arn #=> String
+ # resp.sop_recommendations[0].items[0].latest_discovered_experiment.experiment_template_id #=> String
# resp.sop_recommendations[0].items[0].resource_id #=> String
# resp.sop_recommendations[0].items[0].target_account_id #=> String
# resp.sop_recommendations[0].items[0].target_region #=> String
@@ -3774,6 +3784,7 @@ def list_tags_for_resource(params = {}, options = {})
#
# resp.next_token #=> String
# resp.test_recommendations #=> Array
+ # resp.test_recommendations[0].app_component_id #=> String
# resp.test_recommendations[0].app_component_name #=> String
# resp.test_recommendations[0].depends_on_alarms #=> Array
# resp.test_recommendations[0].depends_on_alarms[0] #=> String
@@ -3781,8 +3792,12 @@ def list_tags_for_resource(params = {}, options = {})
# resp.test_recommendations[0].intent #=> String
# resp.test_recommendations[0].items #=> Array
# resp.test_recommendations[0].items[0].already_implemented #=> Boolean
+ # resp.test_recommendations[0].items[0].discovered_alarm.alarm_arn #=> String
+ # resp.test_recommendations[0].items[0].discovered_alarm.source #=> String
# resp.test_recommendations[0].items[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
# resp.test_recommendations[0].items[0].excluded #=> Boolean
+ # resp.test_recommendations[0].items[0].latest_discovered_experiment.experiment_arn #=> String
+ # resp.test_recommendations[0].items[0].latest_discovered_experiment.experiment_template_id #=> String
# resp.test_recommendations[0].items[0].resource_id #=> String
# resp.test_recommendations[0].items[0].target_account_id #=> String
# resp.test_recommendations[0].items[0].target_region #=> String
@@ -5104,7 +5119,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-resiliencehub'
- context[:gem_version] = '1.44.0'
+ context[:gem_version] = '1.45.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client_api.rb b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client_api.rb
index c54314f7a69..96f9ac55d46 100644
--- a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client_api.rb
+++ b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client_api.rb
@@ -23,6 +23,7 @@ module ClientApi
AddDraftAppVersionResourceMappingsResponse = Shapes::StructureShape.new(name: 'AddDraftAppVersionResourceMappingsResponse')
AdditionalInfoMap = Shapes::MapShape.new(name: 'AdditionalInfoMap')
AdditionalInfoValueList = Shapes::ListShape.new(name: 'AdditionalInfoValueList')
+ Alarm = Shapes::StructureShape.new(name: 'Alarm')
AlarmRecommendation = Shapes::StructureShape.new(name: 'AlarmRecommendation')
AlarmRecommendationList = Shapes::ListShape.new(name: 'AlarmRecommendationList')
AlarmReferenceIdList = Shapes::ListShape.new(name: 'AlarmReferenceIdList')
@@ -156,6 +157,7 @@ module ClientApi
EventSubscriptionList = Shapes::ListShape.new(name: 'EventSubscriptionList')
EventType = Shapes::StringShape.new(name: 'EventType')
ExcludeRecommendationReason = Shapes::StringShape.new(name: 'ExcludeRecommendationReason')
+ Experiment = Shapes::StructureShape.new(name: 'Experiment')
FailedGroupingRecommendationEntries = Shapes::ListShape.new(name: 'FailedGroupingRecommendationEntries')
FailedGroupingRecommendationEntry = Shapes::StructureShape.new(name: 'FailedGroupingRecommendationEntry')
FailurePolicy = Shapes::StructureShape.new(name: 'FailurePolicy')
@@ -373,6 +375,10 @@ module ClientApi
AdditionalInfoValueList.member = Shapes::ShapeRef.new(shape: String1024)
+ Alarm.add_member(:alarm_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "alarmArn"))
+ Alarm.add_member(:source, Shapes::ShapeRef.new(shape: String255, location_name: "source"))
+ Alarm.struct_class = Types::Alarm
+
AlarmRecommendation.add_member(:app_component_name, Shapes::ShapeRef.new(shape: EntityId, deprecated: true, location_name: "appComponentName", metadata: {"deprecatedMessage"=>"An alarm recommendation can be attached to multiple Application Components, hence this property will be replaced by the new property 'appComponentNames'."}))
AlarmRecommendation.add_member(:app_component_names, Shapes::ShapeRef.new(shape: AppComponentNameList, location_name: "appComponentNames"))
AlarmRecommendation.add_member(:description, Shapes::ShapeRef.new(shape: EntityDescription, location_name: "description"))
@@ -537,6 +543,7 @@ module ClientApi
BatchUpdateRecommendationStatusSuccessfulEntries.member = Shapes::ShapeRef.new(shape: BatchUpdateRecommendationStatusSuccessfulEntry)
+ BatchUpdateRecommendationStatusSuccessfulEntry.add_member(:app_component_id, Shapes::ShapeRef.new(shape: EntityName255, location_name: "appComponentId"))
BatchUpdateRecommendationStatusSuccessfulEntry.add_member(:entry_id, Shapes::ShapeRef.new(shape: String255, required: true, location_name: "entryId"))
BatchUpdateRecommendationStatusSuccessfulEntry.add_member(:exclude_reason, Shapes::ShapeRef.new(shape: ExcludeRecommendationReason, location_name: "excludeReason"))
BatchUpdateRecommendationStatusSuccessfulEntry.add_member(:excluded, Shapes::ShapeRef.new(shape: BooleanOptional, required: true, location_name: "excluded"))
@@ -878,6 +885,10 @@ module ClientApi
EventSubscriptionList.member = Shapes::ShapeRef.new(shape: EventSubscription)
+ Experiment.add_member(:experiment_arn, Shapes::ShapeRef.new(shape: String255, location_name: "experimentArn"))
+ Experiment.add_member(:experiment_template_id, Shapes::ShapeRef.new(shape: String255, location_name: "experimentTemplateId"))
+ Experiment.struct_class = Types::Experiment
+
FailedGroupingRecommendationEntries.member = Shapes::ShapeRef.new(shape: FailedGroupingRecommendationEntry)
FailedGroupingRecommendationEntry.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "errorMessage"))
@@ -1218,8 +1229,10 @@ module ClientApi
RecommendationIdList.member = Shapes::ShapeRef.new(shape: Uuid)
RecommendationItem.add_member(:already_implemented, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "alreadyImplemented"))
+ RecommendationItem.add_member(:discovered_alarm, Shapes::ShapeRef.new(shape: Alarm, location_name: "discoveredAlarm"))
RecommendationItem.add_member(:exclude_reason, Shapes::ShapeRef.new(shape: ExcludeRecommendationReason, location_name: "excludeReason"))
RecommendationItem.add_member(:excluded, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "excluded"))
+ RecommendationItem.add_member(:latest_discovered_experiment, Shapes::ShapeRef.new(shape: Experiment, location_name: "latestDiscoveredExperiment"))
RecommendationItem.add_member(:resource_id, Shapes::ShapeRef.new(shape: String500, location_name: "resourceId"))
RecommendationItem.add_member(:target_account_id, Shapes::ShapeRef.new(shape: CustomerId, location_name: "targetAccountId"))
RecommendationItem.add_member(:target_region, Shapes::ShapeRef.new(shape: AwsRegion, location_name: "targetRegion"))
@@ -1431,6 +1444,7 @@ module ClientApi
TerraformSourceList.member = Shapes::ShapeRef.new(shape: TerraformSource)
+ TestRecommendation.add_member(:app_component_id, Shapes::ShapeRef.new(shape: EntityName255, location_name: "appComponentId"))
TestRecommendation.add_member(:app_component_name, Shapes::ShapeRef.new(shape: EntityId, location_name: "appComponentName"))
TestRecommendation.add_member(:depends_on_alarms, Shapes::ShapeRef.new(shape: AlarmReferenceIdList, location_name: "dependsOnAlarms"))
TestRecommendation.add_member(:description, Shapes::ShapeRef.new(shape: String500, location_name: "description"))
@@ -1522,6 +1536,7 @@ module ClientApi
UpdateRecommendationStatusRequestEntries.member = Shapes::ShapeRef.new(shape: UpdateRecommendationStatusRequestEntry)
+ UpdateRecommendationStatusRequestEntry.add_member(:app_component_id, Shapes::ShapeRef.new(shape: EntityName255, location_name: "appComponentId"))
UpdateRecommendationStatusRequestEntry.add_member(:entry_id, Shapes::ShapeRef.new(shape: String255, required: true, location_name: "entryId"))
UpdateRecommendationStatusRequestEntry.add_member(:exclude_reason, Shapes::ShapeRef.new(shape: ExcludeRecommendationReason, location_name: "excludeReason"))
UpdateRecommendationStatusRequestEntry.add_member(:excluded, Shapes::ShapeRef.new(shape: BooleanOptional, required: true, location_name: "excluded"))
diff --git a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/types.rb b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/types.rb
index 8209640b339..0a5524fd17d 100644
--- a/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/types.rb
+++ b/gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/types.rb
@@ -155,6 +155,29 @@ class AddDraftAppVersionResourceMappingsResponse < Struct.new(
include Aws::Structure
end
+ # Indicates the Amazon CloudWatch alarm detected while running an
+ # assessment.
+ #
+ # @!attribute [rw] alarm_arn
+ # Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.
+ # @return [String]
+ #
+ # @!attribute [rw] source
+ # Indicates the source of the Amazon CloudWatch alarm. That is, it
+ # indicates if the alarm was created using Resilience Hub
+ # recommendation (`AwsResilienceHub`), or if you had created the alarm
+ # in Amazon CloudWatch (`Customer`).
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resiliencehub-2020-04-30/Alarm AWS API Documentation
+ #
+ class Alarm < Struct.new(
+ :alarm_arn,
+ :source)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
# Defines a recommendation for a CloudWatch alarm.
#
# @!attribute [rw] app_component_name
@@ -846,7 +869,7 @@ class AppVersionSummary < Struct.new(
#
# @!attribute [rw] app_components
# Indicates the Application Components (AppComponents) that were
- # assessed as part of the assessnent and are associated with the
+ # assessed as part of the assessment and are associated with the
# identified risk and recommendation.
#
# This property is available only in the US East (N. Virginia) Region.
@@ -1005,6 +1028,10 @@ class BatchUpdateRecommendationStatusResponse < Struct.new(
# List of operational recommendations that were successfully included or
# excluded.
#
+ # @!attribute [rw] app_component_id
+ # Indicates the identifier of an AppComponent.
+ # @return [String]
+ #
# @!attribute [rw] entry_id
# An identifier for an entry in this batch that is used to communicate
# the result.
@@ -1035,6 +1062,7 @@ class BatchUpdateRecommendationStatusResponse < Struct.new(
# @see http://docs.aws.amazon.com/goto/WebAPI/resiliencehub-2020-04-30/BatchUpdateRecommendationStatusSuccessfulEntry AWS API Documentation
#
class BatchUpdateRecommendationStatusSuccessfulEntry < Struct.new(
+ :app_component_id,
:entry_id,
:exclude_reason,
:excluded,
@@ -3149,6 +3177,25 @@ class EventSubscription < Struct.new(
include Aws::Structure
end
+ # Indicates the FIS experiment detected while running an assessment.
+ #
+ # @!attribute [rw] experiment_arn
+ # Amazon Resource Name (ARN) of the FIS experiment.
+ # @return [String]
+ #
+ # @!attribute [rw] experiment_template_id
+ # Identifier of the FIS experiment template.
+ # @return [String]
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/resiliencehub-2020-04-30/Experiment AWS API Documentation
+ #
+ class Experiment < Struct.new(
+ :experiment_arn,
+ :experiment_template_id)
+ SENSITIVE = []
+ include Aws::Structure
+ end
+
# Indicates the accepted grouping recommendation whose implementation
# failed.
#
@@ -4724,6 +4771,11 @@ class LogicalResourceId < Struct.new(
# Principle to obtain a read-only access to your application resources
# while running an assessment.
#
+ # If your IAM role includes a path, you must include the path in the
+ # `invokerRoleName` parameter. For example, if your IAM role's ARN is
+ # `arn:aws:iam:123456789012:role/my-path/role-name`, you should pass
+ # `my-path/role-name`.
+ #
# * You must have `iam:passRole` permission for this role while
# creating or updating the application.
#
@@ -5298,6 +5350,11 @@ class RecommendationDisruptionCompliance < Struct.new(
# Specifies if the recommendation has already been implemented.
# @return [Boolean]
#
+ # @!attribute [rw] discovered_alarm
+ # Indicates the previously implemented Amazon CloudWatch alarm
+ # discovered by Resilience Hub.
+ # @return [Types::Alarm]
+ #
# @!attribute [rw] exclude_reason
# Indicates the reason for excluding an operational recommendation.
# @return [String]
@@ -5306,6 +5363,11 @@ class RecommendationDisruptionCompliance < Struct.new(
# Indicates if an operational recommendation item is excluded.
# @return [Boolean]
#
+ # @!attribute [rw] latest_discovered_experiment
+ # Indicates the experiment created in FIS that was discovered by
+ # Resilience Hub, which matches the recommendation.
+ # @return [Types::Experiment]
+ #
# @!attribute [rw] resource_id
# Identifier of the resource.
# @return [String]
@@ -5322,8 +5384,10 @@ class RecommendationDisruptionCompliance < Struct.new(
#
class RecommendationItem < Struct.new(
:already_implemented,
+ :discovered_alarm,
:exclude_reason,
:excluded,
+ :latest_discovered_experiment,
:resource_id,
:target_account_id,
:target_region)
@@ -6317,6 +6381,10 @@ class TerraformSource < Struct.new(
# Defines a test recommendation.
#
+ # @!attribute [rw] app_component_id
+ # Indicates the identifier of the AppComponent.
+ # @return [String]
+ #
# @!attribute [rw] app_component_name
# Name of the Application Component.
# @return [String]
@@ -6369,6 +6437,7 @@ class TerraformSource < Struct.new(
# @see http://docs.aws.amazon.com/goto/WebAPI/resiliencehub-2020-04-30/TestRecommendation AWS API Documentation
#
class TestRecommendation < Struct.new(
+ :app_component_id,
:app_component_name,
:depends_on_alarms,
:description,
@@ -6824,6 +6893,10 @@ class UpdateRecommendationStatusItem < Struct.new(
# Defines the operational recommendation item that is to be included or
# excluded.
#
+ # @!attribute [rw] app_component_id
+ # Indicates the identifier of the AppComponent.
+ # @return [String]
+ #
# @!attribute [rw] entry_id
# An identifier for an entry in this batch that is used to communicate
# the result.
@@ -6854,6 +6927,7 @@ class UpdateRecommendationStatusItem < Struct.new(
# @see http://docs.aws.amazon.com/goto/WebAPI/resiliencehub-2020-04-30/UpdateRecommendationStatusRequestEntry AWS API Documentation
#
class UpdateRecommendationStatusRequestEntry < Struct.new(
+ :app_component_id,
:entry_id,
:exclude_reason,
:excluded,
diff --git a/gems/aws-sdk-resiliencehub/sig/client.rbs b/gems/aws-sdk-resiliencehub/sig/client.rbs
index 124afe9ad17..7cf4c905221 100644
--- a/gems/aws-sdk-resiliencehub/sig/client.rbs
+++ b/gems/aws-sdk-resiliencehub/sig/client.rbs
@@ -131,6 +131,7 @@ module Aws
app_arn: ::String,
request_entries: Array[
{
+ app_component_id: ::String?,
entry_id: ::String,
exclude_reason: ("AlreadyImplemented" | "NotRelevant" | "ComplexityOfImplementation")?,
excluded: bool,
diff --git a/gems/aws-sdk-resiliencehub/sig/types.rbs b/gems/aws-sdk-resiliencehub/sig/types.rbs
index f2b7713a7db..9fb91f55cde 100644
--- a/gems/aws-sdk-resiliencehub/sig/types.rbs
+++ b/gems/aws-sdk-resiliencehub/sig/types.rbs
@@ -43,6 +43,12 @@ module Aws::ResilienceHub
SENSITIVE: []
end
+ class Alarm
+ attr_accessor alarm_arn: ::String
+ attr_accessor source: ::String
+ SENSITIVE: []
+ end
+
class AlarmRecommendation
attr_accessor app_component_name: ::String
attr_accessor app_component_names: ::Array[::String]
@@ -207,6 +213,7 @@ module Aws::ResilienceHub
end
class BatchUpdateRecommendationStatusSuccessfulEntry
+ attr_accessor app_component_id: ::String
attr_accessor entry_id: ::String
attr_accessor exclude_reason: ("AlreadyImplemented" | "NotRelevant" | "ComplexityOfImplementation")
attr_accessor excluded: bool
@@ -637,6 +644,12 @@ module Aws::ResilienceHub
SENSITIVE: []
end
+ class Experiment
+ attr_accessor experiment_arn: ::String
+ attr_accessor experiment_template_id: ::String
+ SENSITIVE: []
+ end
+
class FailedGroupingRecommendationEntry
attr_accessor error_message: ::String
attr_accessor grouping_recommendation_id: ::String
@@ -1081,8 +1094,10 @@ module Aws::ResilienceHub
class RecommendationItem
attr_accessor already_implemented: bool
+ attr_accessor discovered_alarm: Types::Alarm
attr_accessor exclude_reason: ("AlreadyImplemented" | "NotRelevant" | "ComplexityOfImplementation")
attr_accessor excluded: bool
+ attr_accessor latest_discovered_experiment: Types::Experiment
attr_accessor resource_id: ::String
attr_accessor target_account_id: ::String
attr_accessor target_region: ::String
@@ -1315,6 +1330,7 @@ module Aws::ResilienceHub
end
class TestRecommendation
+ attr_accessor app_component_id: ::String
attr_accessor app_component_name: ::String
attr_accessor depends_on_alarms: ::Array[::String]
attr_accessor description: ::String
@@ -1427,6 +1443,7 @@ module Aws::ResilienceHub
end
class UpdateRecommendationStatusRequestEntry
+ attr_accessor app_component_id: ::String
attr_accessor entry_id: ::String
attr_accessor exclude_reason: ("AlreadyImplemented" | "NotRelevant" | "ComplexityOfImplementation")
attr_accessor excluded: bool
diff --git a/gems/aws-sdk-transfer/CHANGELOG.md b/gems/aws-sdk-transfer/CHANGELOG.md
index 681fb9d1be6..a9da5c61d1b 100644
--- a/gems/aws-sdk-transfer/CHANGELOG.md
+++ b/gems/aws-sdk-transfer/CHANGELOG.md
@@ -1,6 +1,11 @@
Unreleased Changes
------------------
+1.109.0 (2024-12-18)
+------------------
+
+* Feature - Added AS2 agreement configurations to control filename preservation and message signing enforcement. Added AS2 connector configuration to preserve content type from S3 objects.
+
1.108.0 (2024-12-02)
------------------
diff --git a/gems/aws-sdk-transfer/VERSION b/gems/aws-sdk-transfer/VERSION
index 83033d17f98..938d55c5464 100644
--- a/gems/aws-sdk-transfer/VERSION
+++ b/gems/aws-sdk-transfer/VERSION
@@ -1 +1 @@
-1.108.0
+1.109.0
diff --git a/gems/aws-sdk-transfer/lib/aws-sdk-transfer.rb b/gems/aws-sdk-transfer/lib/aws-sdk-transfer.rb
index 5fff461eb8e..3b6a9be9496 100644
--- a/gems/aws-sdk-transfer/lib/aws-sdk-transfer.rb
+++ b/gems/aws-sdk-transfer/lib/aws-sdk-transfer.rb
@@ -55,7 +55,7 @@ module Plugins
autoload :EndpointProvider, 'aws-sdk-transfer/endpoint_provider'
autoload :Endpoints, 'aws-sdk-transfer/endpoints'
- GEM_VERSION = '1.108.0'
+ GEM_VERSION = '1.109.0'
end
diff --git a/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client.rb b/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client.rb
index f6c67e1bfbd..fc7605d6c6f 100644
--- a/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client.rb
+++ b/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client.rb
@@ -694,6 +694,31 @@ def create_access(params = {}, options = {})
# @option params [Array] :tags
# Key-value pairs that can be used to group and search for agreements.
#
+ # @option params [String] :preserve_filename
+ # Determines whether or not Transfer Family appends a unique string of
+ # characters to the end of the AS2 message payload filename when saving
+ # it.
+ #
+ # * `ENABLED`: the filename provided by your trading parter is preserved
+ # when the file is saved.
+ #
+ # * `DISABLED` (default value): when Transfer Family saves the file, the
+ # filename is adjusted, as described in [File names and locations][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/send-as2-messages.html#file-names-as2
+ #
+ # @option params [String] :enforce_message_signing
+ # Determines whether or not unsigned messages from your trading partners
+ # will be accepted.
+ #
+ # * `ENABLED`: Transfer Family rejects unsigned messages from your
+ # trading partner.
+ #
+ # * `DISABLED` (default value): Transfer Family accepts unsigned
+ # messages from your trading partner.
+ #
# @return [Types::CreateAgreementResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::CreateAgreementResponse#agreement_id #agreement_id} => String
@@ -714,6 +739,8 @@ def create_access(params = {}, options = {})
# value: "TagValue", # required
# },
# ],
+ # preserve_filename: "ENABLED", # accepts ENABLED, DISABLED
+ # enforce_message_signing: "ENABLED", # accepts ENABLED, DISABLED
# })
#
# @example Response structure
@@ -821,6 +848,7 @@ def create_agreement(params = {}, options = {})
# mdn_signing_algorithm: "SHA256", # accepts SHA256, SHA384, SHA512, SHA1, NONE, DEFAULT
# mdn_response: "SYNC", # accepts SYNC, NONE
# basic_auth_secret_id: "As2ConnectorSecretId",
+ # preserve_content_type: "ENABLED", # accepts ENABLED, DISABLED
# },
# access_role: "Role", # required
# logging_role: "Role",
@@ -2139,6 +2167,8 @@ def describe_access(params = {}, options = {})
# resp.agreement.tags #=> Array
# resp.agreement.tags[0].key #=> String
# resp.agreement.tags[0].value #=> String
+ # resp.agreement.preserve_filename #=> String, one of "ENABLED", "DISABLED"
+ # resp.agreement.enforce_message_signing #=> String, one of "ENABLED", "DISABLED"
#
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeAgreement AWS API Documentation
#
@@ -2222,6 +2252,7 @@ def describe_certificate(params = {}, options = {})
# resp.connector.as_2_config.mdn_signing_algorithm #=> String, one of "SHA256", "SHA384", "SHA512", "SHA1", "NONE", "DEFAULT"
# resp.connector.as_2_config.mdn_response #=> String, one of "SYNC", "NONE"
# resp.connector.as_2_config.basic_auth_secret_id #=> String
+ # resp.connector.as_2_config.preserve_content_type #=> String, one of "ENABLED", "DISABLED"
# resp.connector.access_role #=> String
# resp.connector.logging_role #=> String
# resp.connector.tags #=> Array
@@ -4369,6 +4400,31 @@ def update_access(params = {}, options = {})
# provides `secretsmanager:GetSecretValue` permission to Secrets
# Manager.
#
+ # @option params [String] :preserve_filename
+ # Determines whether or not Transfer Family appends a unique string of
+ # characters to the end of the AS2 message payload filename when saving
+ # it.
+ #
+ # * `ENABLED`: the filename provided by your trading parter is preserved
+ # when the file is saved.
+ #
+ # * `DISABLED` (default value): when Transfer Family saves the file, the
+ # filename is adjusted, as described in [File names and locations][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/send-as2-messages.html#file-names-as2
+ #
+ # @option params [String] :enforce_message_signing
+ # Determines whether or not unsigned messages from your trading partners
+ # will be accepted.
+ #
+ # * `ENABLED`: Transfer Family rejects unsigned messages from your
+ # trading partner.
+ #
+ # * `DISABLED` (default value): Transfer Family accepts unsigned
+ # messages from your trading partner.
+ #
# @return [Types::UpdateAgreementResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::UpdateAgreementResponse#agreement_id #agreement_id} => String
@@ -4384,6 +4440,8 @@ def update_access(params = {}, options = {})
# partner_profile_id: "ProfileId",
# base_directory: "HomeDirectory",
# access_role: "Role",
+ # preserve_filename: "ENABLED", # accepts ENABLED, DISABLED
+ # enforce_message_signing: "ENABLED", # accepts ENABLED, DISABLED
# })
#
# @example Response structure
@@ -4517,6 +4575,7 @@ def update_certificate(params = {}, options = {})
# mdn_signing_algorithm: "SHA256", # accepts SHA256, SHA384, SHA512, SHA1, NONE, DEFAULT
# mdn_response: "SYNC", # accepts SYNC, NONE
# basic_auth_secret_id: "As2ConnectorSecretId",
+ # preserve_content_type: "ENABLED", # accepts ENABLED, DISABLED
# },
# access_role: "Role",
# logging_role: "Role",
@@ -5229,7 +5288,7 @@ def build_request(operation_name, params = {})
tracer: tracer
)
context[:gem_name] = 'aws-sdk-transfer'
- context[:gem_version] = '1.108.0'
+ context[:gem_version] = '1.109.0'
Seahorse::Client::Request.new(handlers, context)
end
diff --git a/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client_api.rb b/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client_api.rb
index 568c842b59d..0c229eed3db 100644
--- a/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client_api.rb
+++ b/gems/aws-sdk-transfer/lib/aws-sdk-transfer/client_api.rb
@@ -130,6 +130,7 @@ module ClientApi
EncryptionType = Shapes::StringShape.new(name: 'EncryptionType')
EndpointDetails = Shapes::StructureShape.new(name: 'EndpointDetails')
EndpointType = Shapes::StringShape.new(name: 'EndpointType')
+ EnforceMessageSigningType = Shapes::StringShape.new(name: 'EnforceMessageSigningType')
ExecutionError = Shapes::StructureShape.new(name: 'ExecutionError')
ExecutionErrorMessage = Shapes::StringShape.new(name: 'ExecutionErrorMessage')
ExecutionErrorType = Shapes::StringShape.new(name: 'ExecutionErrorType')
@@ -243,6 +244,8 @@ module ClientApi
PosixProfile = Shapes::StructureShape.new(name: 'PosixProfile')
PostAuthenticationLoginBanner = Shapes::StringShape.new(name: 'PostAuthenticationLoginBanner')
PreAuthenticationLoginBanner = Shapes::StringShape.new(name: 'PreAuthenticationLoginBanner')
+ PreserveContentType = Shapes::StringShape.new(name: 'PreserveContentType')
+ PreserveFilenameType = Shapes::StringShape.new(name: 'PreserveFilenameType')
PrivateKeyType = Shapes::StringShape.new(name: 'PrivateKeyType')
ProfileId = Shapes::StringShape.new(name: 'ProfileId')
ProfileType = Shapes::StringShape.new(name: 'ProfileType')
@@ -390,6 +393,7 @@ module ClientApi
As2ConnectorConfig.add_member(:mdn_signing_algorithm, Shapes::ShapeRef.new(shape: MdnSigningAlg, location_name: "MdnSigningAlgorithm"))
As2ConnectorConfig.add_member(:mdn_response, Shapes::ShapeRef.new(shape: MdnResponse, location_name: "MdnResponse"))
As2ConnectorConfig.add_member(:basic_auth_secret_id, Shapes::ShapeRef.new(shape: As2ConnectorSecretId, location_name: "BasicAuthSecretId"))
+ As2ConnectorConfig.add_member(:preserve_content_type, Shapes::ShapeRef.new(shape: PreserveContentType, location_name: "PreserveContentType"))
As2ConnectorConfig.struct_class = Types::As2ConnectorConfig
As2Transports.member = Shapes::ShapeRef.new(shape: As2Transport)
@@ -435,6 +439,8 @@ module ClientApi
CreateAgreementRequest.add_member(:access_role, Shapes::ShapeRef.new(shape: Role, required: true, location_name: "AccessRole"))
CreateAgreementRequest.add_member(:status, Shapes::ShapeRef.new(shape: AgreementStatusType, location_name: "Status"))
CreateAgreementRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
+ CreateAgreementRequest.add_member(:preserve_filename, Shapes::ShapeRef.new(shape: PreserveFilenameType, location_name: "PreserveFilename"))
+ CreateAgreementRequest.add_member(:enforce_message_signing, Shapes::ShapeRef.new(shape: EnforceMessageSigningType, location_name: "EnforceMessageSigning"))
CreateAgreementRequest.struct_class = Types::CreateAgreementRequest
CreateAgreementResponse.add_member(:agreement_id, Shapes::ShapeRef.new(shape: AgreementId, required: true, location_name: "AgreementId"))
@@ -681,6 +687,8 @@ module ClientApi
DescribedAgreement.add_member(:base_directory, Shapes::ShapeRef.new(shape: HomeDirectory, location_name: "BaseDirectory"))
DescribedAgreement.add_member(:access_role, Shapes::ShapeRef.new(shape: Role, location_name: "AccessRole"))
DescribedAgreement.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
+ DescribedAgreement.add_member(:preserve_filename, Shapes::ShapeRef.new(shape: PreserveFilenameType, location_name: "PreserveFilename"))
+ DescribedAgreement.add_member(:enforce_message_signing, Shapes::ShapeRef.new(shape: EnforceMessageSigningType, location_name: "EnforceMessageSigning"))
DescribedAgreement.struct_class = Types::DescribedAgreement
DescribedCertificate.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "Arn"))
@@ -1329,6 +1337,8 @@ module ClientApi
UpdateAgreementRequest.add_member(:partner_profile_id, Shapes::ShapeRef.new(shape: ProfileId, location_name: "PartnerProfileId"))
UpdateAgreementRequest.add_member(:base_directory, Shapes::ShapeRef.new(shape: HomeDirectory, location_name: "BaseDirectory"))
UpdateAgreementRequest.add_member(:access_role, Shapes::ShapeRef.new(shape: Role, location_name: "AccessRole"))
+ UpdateAgreementRequest.add_member(:preserve_filename, Shapes::ShapeRef.new(shape: PreserveFilenameType, location_name: "PreserveFilename"))
+ UpdateAgreementRequest.add_member(:enforce_message_signing, Shapes::ShapeRef.new(shape: EnforceMessageSigningType, location_name: "EnforceMessageSigning"))
UpdateAgreementRequest.struct_class = Types::UpdateAgreementRequest
UpdateAgreementResponse.add_member(:agreement_id, Shapes::ShapeRef.new(shape: AgreementId, required: true, location_name: "AgreementId"))
diff --git a/gems/aws-sdk-transfer/lib/aws-sdk-transfer/types.rb b/gems/aws-sdk-transfer/lib/aws-sdk-transfer/types.rb
index a2c04c3cae9..63c69064b1b 100644
--- a/gems/aws-sdk-transfer/lib/aws-sdk-transfer/types.rb
+++ b/gems/aws-sdk-transfer/lib/aws-sdk-transfer/types.rb
@@ -119,6 +119,14 @@ class AccessDeniedException < Struct.new(
# 'BasicAuthSecretId=""'`
# @return [String]
#
+ # @!attribute [rw] preserve_content_type
+ # Allows you to use the Amazon S3 `Content-Type` that is associated
+ # with objects in S3 instead of having the content type mapped based
+ # on the file extension. This parameter is enabled by default when you
+ # create an AS2 connector from the console, but disabled by default
+ # when you create an AS2 connector by calling the API directly.
+ # @return [String]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/As2ConnectorConfig AWS API Documentation
#
class As2ConnectorConfig < Struct.new(
@@ -130,7 +138,8 @@ class As2ConnectorConfig < Struct.new(
:signing_algorithm,
:mdn_signing_algorithm,
:mdn_response,
- :basic_auth_secret_id)
+ :basic_auth_secret_id,
+ :preserve_content_type)
SENSITIVE = []
include Aws::Structure
end
@@ -480,6 +489,34 @@ class CreateAccessResponse < Struct.new(
# Key-value pairs that can be used to group and search for agreements.
# @return [Array]
#
+ # @!attribute [rw] preserve_filename
+ # Determines whether or not Transfer Family appends a unique string of
+ # characters to the end of the AS2 message payload filename when
+ # saving it.
+ #
+ # * `ENABLED`: the filename provided by your trading parter is
+ # preserved when the file is saved.
+ #
+ # * `DISABLED` (default value): when Transfer Family saves the file,
+ # the filename is adjusted, as described in [File names and
+ # locations][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/send-as2-messages.html#file-names-as2
+ # @return [String]
+ #
+ # @!attribute [rw] enforce_message_signing
+ # Determines whether or not unsigned messages from your trading
+ # partners will be accepted.
+ #
+ # * `ENABLED`: Transfer Family rejects unsigned messages from your
+ # trading partner.
+ #
+ # * `DISABLED` (default value): Transfer Family accepts unsigned
+ # messages from your trading partner.
+ # @return [String]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateAgreementRequest AWS API Documentation
#
class CreateAgreementRequest < Struct.new(
@@ -490,7 +527,9 @@ class CreateAgreementRequest < Struct.new(
:base_directory,
:access_role,
:status,
- :tags)
+ :tags,
+ :preserve_filename,
+ :enforce_message_signing)
SENSITIVE = []
include Aws::Structure
end
@@ -2193,6 +2232,34 @@ class DescribedAccess < Struct.new(
# Key-value pairs that can be used to group and search for agreements.
# @return [Array]
#
+ # @!attribute [rw] preserve_filename
+ # Determines whether or not Transfer Family appends a unique string of
+ # characters to the end of the AS2 message payload filename when
+ # saving it.
+ #
+ # * `ENABLED`: the filename provided by your trading parter is
+ # preserved when the file is saved.
+ #
+ # * `DISABLED` (default value): when Transfer Family saves the file,
+ # the filename is adjusted, as described in [File names and
+ # locations][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/send-as2-messages.html#file-names-as2
+ # @return [String]
+ #
+ # @!attribute [rw] enforce_message_signing
+ # Determines whether or not unsigned messages from your trading
+ # partners will be accepted.
+ #
+ # * `ENABLED`: Transfer Family rejects unsigned messages from your
+ # trading partner.
+ #
+ # * `DISABLED` (default value): Transfer Family accepts unsigned
+ # messages from your trading partner.
+ # @return [String]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedAgreement AWS API Documentation
#
class DescribedAgreement < Struct.new(
@@ -2205,7 +2272,9 @@ class DescribedAgreement < Struct.new(
:partner_profile_id,
:base_directory,
:access_role,
- :tags)
+ :tags,
+ :preserve_filename,
+ :enforce_message_signing)
SENSITIVE = []
include Aws::Structure
end
@@ -2233,9 +2302,8 @@ class DescribedAgreement < Struct.new(
# @return [String]
#
# @!attribute [rw] status
- # The certificate can be either `ACTIVE`, `PENDING_ROTATION`, or
- # `INACTIVE`. `PENDING_ROTATION` means that this certificate will
- # replace the current certificate when it expires.
+ # Currently, the only available status is `ACTIVE`: all other values
+ # are reserved for future use.
# @return [String]
#
# @!attribute [rw] certificate
@@ -6187,6 +6255,34 @@ class UpdateAccessResponse < Struct.new(
# Manager.
# @return [String]
#
+ # @!attribute [rw] preserve_filename
+ # Determines whether or not Transfer Family appends a unique string of
+ # characters to the end of the AS2 message payload filename when
+ # saving it.
+ #
+ # * `ENABLED`: the filename provided by your trading parter is
+ # preserved when the file is saved.
+ #
+ # * `DISABLED` (default value): when Transfer Family saves the file,
+ # the filename is adjusted, as described in [File names and
+ # locations][1].
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/send-as2-messages.html#file-names-as2
+ # @return [String]
+ #
+ # @!attribute [rw] enforce_message_signing
+ # Determines whether or not unsigned messages from your trading
+ # partners will be accepted.
+ #
+ # * `ENABLED`: Transfer Family rejects unsigned messages from your
+ # trading partner.
+ #
+ # * `DISABLED` (default value): Transfer Family accepts unsigned
+ # messages from your trading partner.
+ # @return [String]
+ #
# @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAgreementRequest AWS API Documentation
#
class UpdateAgreementRequest < Struct.new(
@@ -6197,7 +6293,9 @@ class UpdateAgreementRequest < Struct.new(
:local_profile_id,
:partner_profile_id,
:base_directory,
- :access_role)
+ :access_role,
+ :preserve_filename,
+ :enforce_message_signing)
SENSITIVE = []
include Aws::Structure
end
diff --git a/gems/aws-sdk-transfer/sig/client.rbs b/gems/aws-sdk-transfer/sig/client.rbs
index f5e5eecb143..93b4556bb02 100644
--- a/gems/aws-sdk-transfer/sig/client.rbs
+++ b/gems/aws-sdk-transfer/sig/client.rbs
@@ -122,7 +122,9 @@ module Aws
key: ::String,
value: ::String
},
- ]
+ ],
+ ?preserve_filename: ("ENABLED" | "DISABLED"),
+ ?enforce_message_signing: ("ENABLED" | "DISABLED")
) -> _CreateAgreementResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateAgreementResponseSuccess
@@ -142,7 +144,8 @@ module Aws
signing_algorithm: ("SHA256" | "SHA384" | "SHA512" | "SHA1" | "NONE")?,
mdn_signing_algorithm: ("SHA256" | "SHA384" | "SHA512" | "SHA1" | "NONE" | "DEFAULT")?,
mdn_response: ("SYNC" | "NONE")?,
- basic_auth_secret_id: ::String?
+ basic_auth_secret_id: ::String?,
+ preserve_content_type: ("ENABLED" | "DISABLED")?
},
access_role: ::String,
?logging_role: ::String,
@@ -1023,7 +1026,9 @@ module Aws
?local_profile_id: ::String,
?partner_profile_id: ::String,
?base_directory: ::String,
- ?access_role: ::String
+ ?access_role: ::String,
+ ?preserve_filename: ("ENABLED" | "DISABLED"),
+ ?enforce_message_signing: ("ENABLED" | "DISABLED")
) -> _UpdateAgreementResponseSuccess
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateAgreementResponseSuccess
@@ -1057,7 +1062,8 @@ module Aws
signing_algorithm: ("SHA256" | "SHA384" | "SHA512" | "SHA1" | "NONE")?,
mdn_signing_algorithm: ("SHA256" | "SHA384" | "SHA512" | "SHA1" | "NONE" | "DEFAULT")?,
mdn_response: ("SYNC" | "NONE")?,
- basic_auth_secret_id: ::String?
+ basic_auth_secret_id: ::String?,
+ preserve_content_type: ("ENABLED" | "DISABLED")?
},
?access_role: ::String,
?logging_role: ::String,
diff --git a/gems/aws-sdk-transfer/sig/types.rbs b/gems/aws-sdk-transfer/sig/types.rbs
index 21e8931ce3f..67a9afb011a 100644
--- a/gems/aws-sdk-transfer/sig/types.rbs
+++ b/gems/aws-sdk-transfer/sig/types.rbs
@@ -23,6 +23,7 @@ module Aws::Transfer
attr_accessor mdn_signing_algorithm: ("SHA256" | "SHA384" | "SHA512" | "SHA1" | "NONE" | "DEFAULT")
attr_accessor mdn_response: ("SYNC" | "NONE")
attr_accessor basic_auth_secret_id: ::String
+ attr_accessor preserve_content_type: ("ENABLED" | "DISABLED")
SENSITIVE: []
end
@@ -74,6 +75,8 @@ module Aws::Transfer
attr_accessor access_role: ::String
attr_accessor status: ("ACTIVE" | "INACTIVE")
attr_accessor tags: ::Array[Types::Tag]
+ attr_accessor preserve_filename: ("ENABLED" | "DISABLED")
+ attr_accessor enforce_message_signing: ("ENABLED" | "DISABLED")
SENSITIVE: []
end
@@ -432,6 +435,8 @@ module Aws::Transfer
attr_accessor base_directory: ::String
attr_accessor access_role: ::String
attr_accessor tags: ::Array[Types::Tag]
+ attr_accessor preserve_filename: ("ENABLED" | "DISABLED")
+ attr_accessor enforce_message_signing: ("ENABLED" | "DISABLED")
SENSITIVE: []
end
@@ -1230,6 +1235,8 @@ module Aws::Transfer
attr_accessor partner_profile_id: ::String
attr_accessor base_directory: ::String
attr_accessor access_role: ::String
+ attr_accessor preserve_filename: ("ENABLED" | "DISABLED")
+ attr_accessor enforce_message_signing: ("ENABLED" | "DISABLED")
SENSITIVE: []
end