diff --git a/Cargo.toml b/Cargo.toml
index 37d005bcb631..bb5a6fe2097c 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -2,9 +2,9 @@
resolver = "2"
exclude = [
"examples/lambda",
- "examples/cross_service",
"examples/examples",
"examples/webassembly",
+ "examples/cross_service",
"examples/test-utils",
"tests/no-default-features",
"tests/webassembly"
diff --git a/aws-models/amplify.json b/aws-models/amplify.json
index 45ba331ec0ab..61be8fba947b 100644
--- a/aws-models/amplify.json
+++ b/aws-models/amplify.json
@@ -1100,14 +1100,14 @@
"createTime": {
"target": "com.amazonaws.amplify#CreateTime",
"traits": {
- "smithy.api#documentation": "
Creates a date and time for the Amplify app.
",
+ "smithy.api#documentation": "A timestamp of when Amplify created the application.
",
"smithy.api#required": {}
}
},
"updateTime": {
"target": "com.amazonaws.amplify#UpdateTime",
"traits": {
- "smithy.api#documentation": "Updates the date and time for the Amplify app.
",
+ "smithy.api#documentation": "A timestamp of when Amplify updated the application.
",
"smithy.api#required": {}
}
},
@@ -1210,6 +1210,18 @@
"traits": {
"smithy.api#documentation": "The cache configuration for the Amplify app. If you don't specify the\n cache configuration type
, Amplify uses the default\n AMPLIFY_MANAGED
setting.
"
}
+ },
+ "webhookCreateTime": {
+ "target": "com.amazonaws.amplify#webhookCreateTime",
+ "traits": {
+ "smithy.api#documentation": "A timestamp of when Amplify created the webhook in your Git repository.
"
+ }
+ },
+ "wafConfiguration": {
+ "target": "com.amazonaws.amplify#WafConfiguration",
+ "traits": {
+ "smithy.api#documentation": "Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration\n with WAF.
"
+ }
}
},
"traits": {
@@ -1587,14 +1599,14 @@
"createTime": {
"target": "com.amazonaws.amplify#CreateTime",
"traits": {
- "smithy.api#documentation": " The creation date and time for a branch that is part of an Amplify app.
",
+ "smithy.api#documentation": "A timestamp of when Amplify created the branch.
",
"smithy.api#required": {}
}
},
"updateTime": {
"target": "com.amazonaws.amplify#UpdateTime",
"traits": {
- "smithy.api#documentation": " The last updated date and time for a branch that is part of an Amplify app.
",
+ "smithy.api#documentation": "A timestamp for the last updated time for a branch.
",
"smithy.api#required": {}
}
},
@@ -4169,6 +4181,12 @@
"com.amazonaws.amplify#JobStatus": {
"type": "enum",
"members": {
+ "CREATED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "CREATED"
+ }
+ },
"PENDING": {
"target": "smithy.api#Unit",
"traits": {
@@ -4253,7 +4271,7 @@
"commitTime": {
"target": "com.amazonaws.amplify#CommitTime",
"traits": {
- "smithy.api#documentation": " The commit date and time for the job.
",
+ "smithy.api#documentation": "The commit date and time for the job.
",
"smithy.api#required": {}
}
},
@@ -6686,6 +6704,77 @@
"com.amazonaws.amplify#Verified": {
"type": "boolean"
},
+ "com.amazonaws.amplify#WafConfiguration": {
+ "type": "structure",
+ "members": {
+ "webAclArn": {
+ "target": "com.amazonaws.amplify#WebAclArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
"
+ }
+ },
+ "wafStatus": {
+ "target": "com.amazonaws.amplify#WafStatus",
+ "traits": {
+ "smithy.api#documentation": "The status of the process to associate or disassociate a web ACL to an Amplify app.
"
+ }
+ },
+ "statusReason": {
+ "target": "com.amazonaws.amplify#StatusReason",
+ "traits": {
+ "smithy.api#documentation": "The reason for the current status of the Firewall configuration.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Describes the Firewall configuration for a hosted Amplify application.\n Firewall support enables you to protect your web applications with a direct integration\n with WAF. For more information about using WAF protections for an Amplify application, see\n Firewall support for hosted sites in the Amplify\n User Guide .
"
+ }
+ },
+ "com.amazonaws.amplify#WafStatus": {
+ "type": "enum",
+ "members": {
+ "ASSOCIATING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ASSOCIATING"
+ }
+ },
+ "ASSOCIATION_FAILED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ASSOCIATION_FAILED"
+ }
+ },
+ "ASSOCIATION_SUCCESS": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ASSOCIATION_SUCCESS"
+ }
+ },
+ "DISASSOCIATING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DISASSOCIATING"
+ }
+ },
+ "DISASSOCIATION_FAILED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DISASSOCIATION_FAILED"
+ }
+ }
+ }
+ },
+ "com.amazonaws.amplify#WebAclArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 512
+ },
+ "smithy.api#pattern": "^arn:aws:wafv2:"
+ }
+ },
"com.amazonaws.amplify#Webhook": {
"type": "structure",
"members": {
@@ -6727,14 +6816,14 @@
"createTime": {
"target": "com.amazonaws.amplify#CreateTime",
"traits": {
- "smithy.api#documentation": "The create date and time for a webhook.
",
+ "smithy.api#documentation": "A timestamp of when Amplify created the webhook in your Git repository.
",
"smithy.api#required": {}
}
},
"updateTime": {
"target": "com.amazonaws.amplify#UpdateTime",
"traits": {
- "smithy.api#documentation": "Updates the date and time for a webhook.
",
+ "smithy.api#documentation": "A timestamp of when Amplify updated the webhook in your Git repository.
",
"smithy.api#required": {}
}
}
@@ -6776,6 +6865,9 @@
"member": {
"target": "com.amazonaws.amplify#Webhook"
}
+ },
+ "com.amazonaws.amplify#webhookCreateTime": {
+ "type": "timestamp"
}
}
}
diff --git a/aws-models/budgets.json b/aws-models/budgets.json
index 0fea2c0505ab..abf52523d086 100644
--- a/aws-models/budgets.json
+++ b/aws-models/budgets.json
@@ -340,6 +340,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": [
{
@@ -864,6 +966,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": {
@@ -903,7 +1027,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": {
@@ -912,6 +1045,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": {
@@ -951,7 +1106,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/aws-models/connect.json b/aws-models/connect.json
index b7d3ffc65e44..2c95f39ef6da 100644
--- a/aws-models/connect.json
+++ b/aws-models/connect.json
@@ -1630,6 +1630,9 @@
{
"target": "com.amazonaws.connect#UpdateInstanceStorageConfig"
},
+ {
+ "target": "com.amazonaws.connect#UpdateParticipantAuthentication"
+ },
{
"target": "com.amazonaws.connect#UpdateParticipantRoleConfig"
},
@@ -4224,6 +4227,28 @@
"smithy.api#default": 0
}
},
+ "com.amazonaws.connect#AuthenticationError": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 2048
+ },
+ "smithy.api#pattern": "^[\\x20-\\x21\\x23-\\x5B\\x5D-\\x7E]*$",
+ "smithy.api#sensitive": {}
+ }
+ },
+ "com.amazonaws.connect#AuthenticationErrorDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 2048
+ },
+ "smithy.api#pattern": "^[\\x20-\\x21\\x23-\\x5B\\x5D-\\x7E]*$",
+ "smithy.api#sensitive": {}
+ }
+ },
"com.amazonaws.connect#AuthenticationProfile": {
"type": "structure",
"members": {
@@ -4383,6 +4408,16 @@
"target": "com.amazonaws.connect#AuthenticationProfileSummary"
}
},
+ "com.amazonaws.connect#AuthorizationCode": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 2048
+ },
+ "smithy.api#sensitive": {}
+ }
+ },
"com.amazonaws.connect#AutoAccept": {
"type": "boolean",
"traits": {
@@ -5656,6 +5691,12 @@
"smithy.api#documentation": "Information about Amazon Connect Wisdom.
"
}
},
+ "CustomerId": {
+ "target": "com.amazonaws.connect#CustomerId",
+ "traits": {
+ "smithy.api#documentation": "The customer's identification number. For example, the CustomerId
may be a\n customer number from your CRM. You can create a Lambda function to pull the unique customer ID of\n the caller from your CRM system. If you enable Amazon Connect Voice ID capability, this\n attribute is populated with the CustomerSpeakerId
of the caller.
"
+ }
+ },
"CustomerEndpoint": {
"target": "com.amazonaws.connect#EndpointInfo",
"traits": {
@@ -8640,7 +8681,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates registration for a device token and a chat contact to receive real-time push\n notifications. For more information about push notifications, see Set up push\n notifications in Amazon Connect for mobile chat in the Amazon Connect\n Administrator Guide .
",
+ "smithy.api#documentation": "Creates registration for a device token and a chat contact to receive real-time push\n notifications. For more information about push notifications, see Set up push\n notifications in Amazon Connect for mobile chat in the Amazon Connect\n Administrator Guide .
",
"smithy.api#http": {
"method": "PUT",
"uri": "/push-notification/{InstanceId}/registrations",
@@ -10489,6 +10530,25 @@
"smithy.api#documentation": "Information about the Customer on the contact.
"
}
},
+ "com.amazonaws.connect#CustomerId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 128
+ }
+ }
+ },
+ "com.amazonaws.connect#CustomerIdNonEmpty": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 128
+ },
+ "smithy.api#sensitive": {}
+ }
+ },
"com.amazonaws.connect#CustomerProfileAttributesSerialized": {
"type": "string"
},
@@ -10594,7 +10654,7 @@
"ComparisonType": {
"target": "com.amazonaws.connect#DateComparisonType",
"traits": {
- "smithy.api#documentation": "An object to specify the hours of operation override date condition\n comparisonType
.
"
+ "smithy.api#documentation": "An object to specify the hours of operation override date condition\n comparisonType
.
"
}
}
},
@@ -20957,6 +21017,12 @@
"traits": {
"smithy.api#enumValue": "ENHANCED_CHAT_MONITORING"
}
+ },
+ "MULTI_PARTY_CHAT_CONFERENCE": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "MULTI_PARTY_CHAT_CONFERENCE"
+ }
}
}
},
@@ -21439,6 +21505,12 @@
"traits": {
"smithy.api#enumValue": "CALL_TRANSFER_CONNECTOR"
}
+ },
+ "COGNITO_USER_POOL": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "COGNITO_USER_POOL"
+ }
}
}
},
@@ -22331,7 +22403,7 @@
}
],
"traits": {
- "smithy.api#documentation": "This API is in preview release for Amazon Connect and is subject to change.
\n 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.
",
+ "smithy.api#documentation": "This API is in preview release for Amazon Connect and is subject to change.
\n 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.
",
"smithy.api#http": {
"method": "GET",
"uri": "/instance/{InstanceId}/bots",
@@ -36923,6 +36995,12 @@
"traits": {
"smithy.api#documentation": "A set of system defined key-value pairs stored on individual contact segments using an\n attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in\n flows.
\n Attribute keys can include only alphanumeric, -, and _.
\n This field can be used to show channel subtype, such as connect:Guide
.
\n \n The types application/vnd.amazonaws.connect.message.interactive
and\n application/vnd.amazonaws.connect.message.interactive.response
must be present in\n the SupportedMessagingContentTypes field of this API in order to set\n SegmentAttributes
as { \"connect:Subtype\": {\"valueString\" : \"connect:Guide\"\n }}
.
\n "
}
+ },
+ "CustomerId": {
+ "target": "com.amazonaws.connect#CustomerIdNonEmpty",
+ "traits": {
+ "smithy.api#documentation": "The customer's identification number. For example, the CustomerId
may be a\n customer number from your CRM.
"
+ }
}
},
"traits": {
@@ -41814,6 +41892,90 @@
"smithy.api#input": {}
}
},
+ "com.amazonaws.connect#UpdateParticipantAuthentication": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.connect#UpdateParticipantAuthenticationRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.connect#UpdateParticipantAuthenticationResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.connect#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.connect#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.connect#InternalServiceException"
+ },
+ {
+ "target": "com.amazonaws.connect#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.connect#InvalidRequestException"
+ },
+ {
+ "target": "com.amazonaws.connect#ThrottlingException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Instructs Amazon Connect to resume the authentication process. The subsequent actions\n depend on the request body contents:
\n \n \n \n If a code is provided : Connect retrieves the identity\n information from Amazon Cognito and imports it into Connect Customer Profiles.
\n \n \n \n If an error is provided : The error branch of the\n Authenticate Customer block is executed.
\n \n \n \n The API returns a success response to acknowledge the request. However, the interaction and\n exchange of identity information occur asynchronously after the response is returned.
\n ",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/contact/update-participant-authentication",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.connect#UpdateParticipantAuthenticationRequest": {
+ "type": "structure",
+ "members": {
+ "State": {
+ "target": "com.amazonaws.connect#ParticipantToken",
+ "traits": {
+ "smithy.api#documentation": "The state
query parameter that was provided by Cognito in the\n redirectUri
. This will also match the state
parameter provided in the\n AuthenticationUrl
from the GetAuthenticationUrl \n response.
",
+ "smithy.api#required": {}
+ }
+ },
+ "InstanceId": {
+ "target": "com.amazonaws.connect#InstanceId",
+ "traits": {
+ "smithy.api#documentation": "The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Code": {
+ "target": "com.amazonaws.connect#AuthorizationCode",
+ "traits": {
+ "smithy.api#documentation": "The code
query parameter provided by Cognito in the\n redirectUri
.
"
+ }
+ },
+ "Error": {
+ "target": "com.amazonaws.connect#AuthenticationError",
+ "traits": {
+ "smithy.api#documentation": "The error
query parameter provided by Cognito in the\n redirectUri
.
"
+ }
+ },
+ "ErrorDescription": {
+ "target": "com.amazonaws.connect#AuthenticationErrorDescription",
+ "traits": {
+ "smithy.api#documentation": "The error_description
parameter provided by Cognito in the\n redirectUri
.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.connect#UpdateParticipantAuthenticationResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.connect#UpdateParticipantRoleConfig": {
"type": "operation",
"input": {
@@ -45890,7 +46052,7 @@
"IvrRecordingTrack": {
"target": "com.amazonaws.connect#IvrRecordingTrack",
"traits": {
- "smithy.api#documentation": "Identifies which IVR track is being recorded.
"
+ "smithy.api#documentation": "Identifies which IVR track is being recorded.
\n One and only one of the track configurations should be presented in the request.
"
}
}
},
diff --git a/aws-models/connectparticipant.json b/aws-models/connectparticipant.json
index 2992b78527b5..809c6b5ce862 100644
--- a/aws-models/connectparticipant.json
+++ b/aws-models/connectparticipant.json
@@ -52,6 +52,9 @@
"type": "service",
"version": "2018-09-07",
"operations": [
+ {
+ "target": "com.amazonaws.connectparticipant#CancelParticipantAuthentication"
+ },
{
"target": "com.amazonaws.connectparticipant#CompleteAttachmentUpload"
},
@@ -67,6 +70,9 @@
{
"target": "com.amazonaws.connectparticipant#GetAttachment"
},
+ {
+ "target": "com.amazonaws.connectparticipant#GetAuthenticationUrl"
+ },
{
"target": "com.amazonaws.connectparticipant#GetTranscript"
},
@@ -92,7 +98,7 @@
"name": "execute-api"
},
"aws.protocols#restJson1": {},
- "smithy.api#documentation": "Amazon Connect is an easy-to-use omnichannel cloud contact center service that\n enables companies of any size to deliver superior customer service at a lower cost.\n Amazon Connect communications capabilities make it easy for companies to deliver\n personalized interactions across communication channels, including chat.
\n Use the Amazon Connect Participant Service to manage participants (for example,\n agents, customers, and managers listening in), and to send messages and events within a\n chat contact. The APIs in the service enable the following: sending chat messages,\n attachment sharing, managing a participant's connection state and message events, and\n retrieving chat transcripts.
",
+ "smithy.api#documentation": "\n Amazon Connect is an easy-to-use omnichannel cloud contact center service that\n enables companies of any size to deliver superior customer service at a lower cost.\n Amazon Connect communications capabilities make it easy for companies to deliver\n personalized interactions across communication channels, including chat.
\n Use the Amazon Connect Participant Service to manage participants (for example,\n agents, customers, and managers listening in), and to send messages and events within a\n chat contact. The APIs in the service enable the following: sending chat messages,\n attachment sharing, managing a participant's connection state and message events, and\n retrieving chat transcripts.
",
"smithy.api#title": "Amazon Connect Participant Service",
"smithy.rules#endpointRuleSet": {
"version": "1.0",
@@ -875,9 +881,79 @@
"target": "com.amazonaws.connectparticipant#AttachmentItem"
}
},
+ "com.amazonaws.connectparticipant#AuthenticationUrl": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 2083
+ }
+ }
+ },
"com.amazonaws.connectparticipant#Bool": {
"type": "boolean"
},
+ "com.amazonaws.connectparticipant#CancelParticipantAuthentication": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.connectparticipant#CancelParticipantAuthenticationRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.connectparticipant#CancelParticipantAuthenticationResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.connectparticipant#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.connectparticipant#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.connectparticipant#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.connectparticipant#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Cancels the authentication session. The opted out branch of the Authenticate Customer\n flow block will be taken.
\n \n The current supported channel is chat. This API is not supported for Apple\n Messages for Business, WhatsApp, or SMS chats.
\n ",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/participant/cancel-authentication",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.connectparticipant#CancelParticipantAuthenticationRequest": {
+ "type": "structure",
+ "members": {
+ "SessionId": {
+ "target": "com.amazonaws.connectparticipant#SessionId",
+ "traits": {
+ "smithy.api#documentation": "The sessionId
provided in the authenticationInitiated
\n event.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ConnectionToken": {
+ "target": "com.amazonaws.connectparticipant#ParticipantToken",
+ "traits": {
+ "smithy.api#documentation": "The authentication token associated with the participant's connection.
",
+ "smithy.api#httpHeader": "X-Amz-Bearer",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.connectparticipant#CancelParticipantAuthenticationResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.connectparticipant#ChatContent": {
"type": "string",
"traits": {
@@ -1020,7 +1096,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Allows you to confirm that the attachment has been uploaded using the pre-signed URL\n provided in StartAttachmentUpload API. A conflict exception is thrown when an attachment\n with that identifier is already being uploaded.
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "Allows you to confirm that the attachment has been uploaded using the pre-signed URL\n provided in StartAttachmentUpload API. A conflict exception is thrown when an attachment\n with that identifier is already being uploaded.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/complete-attachment-upload",
@@ -1077,7 +1153,7 @@
}
},
"traits": {
- "smithy.api#documentation": "The requested operation conflicts with the current state of a service\n resource associated with the request.
",
+ "smithy.api#documentation": "The requested operation conflicts with the current state of a service resource\n associated with the request.
",
"smithy.api#error": "client",
"smithy.api#httpError": 409
}
@@ -1171,7 +1247,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates the participant's connection.
\n \n \n ParticipantToken
is used for invoking this API instead of\n ConnectionToken
.
\n \n The participant token is valid for the lifetime of the participant – until they are\n part of a contact.
\n The response URL for WEBSOCKET
Type has a connect expiry timeout of 100s.\n Clients must manually connect to the returned websocket URL and subscribe to the desired\n topic.
\n For chat, you need to publish the following on the established websocket\n connection:
\n \n {\"topic\":\"aws/subscribe\",\"content\":{\"topics\":[\"aws/chat\"]}}
\n
\n Upon websocket URL expiry, as specified in the response ConnectionExpiry parameter,\n clients need to call this API again to obtain a new websocket URL and perform the same\n steps as before.
\n \n Message streaming support : This API can also be used\n together with the StartContactStreaming API to create a participant connection for chat\n contacts that are not using a websocket. For more information about message streaming,\n Enable real-time chat\n message streaming in the Amazon Connect Administrator\n Guide .
\n \n Feature specifications : For information about feature\n specifications, such as the allowed number of open websocket connections per\n participant, see Feature specifications in the Amazon Connect Administrator\n Guide .
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
\n ",
+ "smithy.api#documentation": "Creates the participant's connection.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ParticipantToken
is used for invoking this API instead of\n ConnectionToken
.
\n \n The participant token is valid for the lifetime of the participant – until they are\n part of a contact.
\n The response URL for WEBSOCKET
Type has a connect expiry timeout of 100s.\n Clients must manually connect to the returned websocket URL and subscribe to the desired\n topic.
\n For chat, you need to publish the following on the established websocket\n connection:
\n \n {\"topic\":\"aws/subscribe\",\"content\":{\"topics\":[\"aws/chat\"]}}
\n
\n Upon websocket URL expiry, as specified in the response ConnectionExpiry parameter,\n clients need to call this API again to obtain a new websocket URL and perform the same\n steps as before.
\n \n Message streaming support : This API can also be used\n together with the StartContactStreaming API to create a participant connection for chat\n contacts that are not using a websocket. For more information about message streaming,\n Enable real-time chat\n message streaming in the Amazon Connect Administrator\n Guide .
\n \n Feature specifications : For information about feature\n specifications, such as the allowed number of open websocket connections per\n participant, see Feature specifications in the Amazon Connect Administrator\n Guide .
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
\n ",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/connection",
@@ -1253,7 +1329,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the view for the specified view token.
",
+ "smithy.api#documentation": "Retrieves the view for the specified view token.
\n For security recommendations, see Amazon Connect Chat security best practices .
",
"smithy.api#http": {
"method": "GET",
"uri": "/participant/views/{ViewToken}",
@@ -1322,7 +1398,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Disconnects a participant.
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "Disconnects a participant.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/disconnect",
@@ -1392,7 +1468,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Provides a pre-signed URL for download of a completed attachment. This is an\n asynchronous API for use with active contacts.
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "Provides a pre-signed URL for download of a completed attachment. This is an\n asynchronous API for use with active contacts.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/attachment",
@@ -1417,6 +1493,12 @@
"smithy.api#httpHeader": "X-Amz-Bearer",
"smithy.api#required": {}
}
+ },
+ "UrlExpiryInSeconds": {
+ "target": "com.amazonaws.connectparticipant#URLExpiryInSeconds",
+ "traits": {
+ "smithy.api#documentation": "The expiration time of the URL in ISO timestamp. It's specified in ISO 8601 format:\n yyyy-MM-ddThh:mm:ss.SSSZ. For example, 2019-11-08T02:41:28.172Z.
"
+ }
}
},
"traits": {
@@ -1437,6 +1519,89 @@
"traits": {
"smithy.api#documentation": "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.
"
}
+ },
+ "AttachmentSizeInBytes": {
+ "target": "com.amazonaws.connectparticipant#AttachmentSizeInBytes",
+ "traits": {
+ "smithy.api#default": null,
+ "smithy.api#documentation": "The size of the attachment in bytes.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
+ "com.amazonaws.connectparticipant#GetAuthenticationUrl": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.connectparticipant#GetAuthenticationUrlRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.connectparticipant#GetAuthenticationUrlResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.connectparticipant#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.connectparticipant#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.connectparticipant#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.connectparticipant#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the AuthenticationUrl for the current authentication session for the\n AuthenticateCustomer flow block.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n \n This API can only be called within one minute of receiving the\n authenticationInitiated event.
\n \n \n The current supported channel is chat. This API is not supported for Apple\n Messages for Business, WhatsApp, or SMS chats.
\n \n \n ",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/participant/authentication-url",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.connectparticipant#GetAuthenticationUrlRequest": {
+ "type": "structure",
+ "members": {
+ "SessionId": {
+ "target": "com.amazonaws.connectparticipant#SessionId",
+ "traits": {
+ "smithy.api#documentation": "The sessionId provided in the authenticationInitiated event.
",
+ "smithy.api#required": {}
+ }
+ },
+ "RedirectUri": {
+ "target": "com.amazonaws.connectparticipant#RedirectURI",
+ "traits": {
+ "smithy.api#documentation": "The URL where the customer will be redirected after Amazon Cognito authorizes the\n user.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ConnectionToken": {
+ "target": "com.amazonaws.connectparticipant#ParticipantToken",
+ "traits": {
+ "smithy.api#documentation": "The authentication token associated with the participant's connection.
",
+ "smithy.api#httpHeader": "X-Amz-Bearer",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.connectparticipant#GetAuthenticationUrlResponse": {
+ "type": "structure",
+ "members": {
+ "AuthenticationUrl": {
+ "target": "com.amazonaws.connectparticipant#AuthenticationUrl",
+ "traits": {
+ "smithy.api#documentation": "The URL where the customer will sign in to the identity provider. This URL contains\n the authorize endpoint for the Cognito UserPool used in the authentication.
"
+ }
}
},
"traits": {
@@ -1466,7 +1631,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves a transcript of the session, including details about any attachments. For\n information about accessing past chat contact transcripts for a persistent chat, see\n Enable persistent chat .
\n If you have a process that consumes events in the transcript of an chat that has ended, note that chat\n transcripts contain the following event content types if the event has occurred\n during the chat session:
\n \n \n \n application/vnd.amazonaws.connect.event.participant.left
\n
\n \n \n \n application/vnd.amazonaws.connect.event.participant.joined
\n
\n \n \n \n application/vnd.amazonaws.connect.event.chat.ended
\n
\n \n \n \n application/vnd.amazonaws.connect.event.transfer.succeeded
\n
\n \n \n \n application/vnd.amazonaws.connect.event.transfer.failed
\n
\n \n \n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "Retrieves a transcript of the session, including details about any attachments. For\n information about accessing past chat contact transcripts for a persistent chat, see\n Enable persistent chat .
\n For security recommendations, see Amazon Connect Chat security best practices .
\n If you have a process that consumes events in the transcript of an chat that has\n ended, note that chat transcripts contain the following event content types if the event\n has occurred during the chat session:
\n \n \n \n application/vnd.amazonaws.connect.event.participant.left
\n
\n \n \n \n application/vnd.amazonaws.connect.event.participant.joined
\n
\n \n \n \n application/vnd.amazonaws.connect.event.chat.ended
\n
\n \n \n \n application/vnd.amazonaws.connect.event.transfer.succeeded
\n
\n \n \n \n application/vnd.amazonaws.connect.event.transfer.failed
\n
\n \n \n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/transcript",
@@ -1839,6 +2004,15 @@
"target": "com.amazonaws.connectparticipant#Receipt"
}
},
+ "com.amazonaws.connectparticipant#RedirectURI": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 1024
+ }
+ }
+ },
"com.amazonaws.connectparticipant#ResourceId": {
"type": "string"
},
@@ -1963,7 +2137,7 @@
}
],
"traits": {
- "smithy.api#documentation": "\n The application/vnd.amazonaws.connect.event.connection.acknowledged
\n ContentType will no longer be supported starting December 31, 2024. This event has\n been migrated to the CreateParticipantConnection API using the\n ConnectParticipant
field.
\n \n Sends an event. Message receipts are not supported when there are more than two active\n participants in the chat. Using the SendEvent API for message receipts when a supervisor\n is barged-in will result in a conflict exception.
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "\n The application/vnd.amazonaws.connect.event.connection.acknowledged
\n ContentType will no longer be supported starting December 31, 2024. This event has\n been migrated to the CreateParticipantConnection API using the\n ConnectParticipant
field.
\n \n Sends an event. Message receipts are not supported when there are more than two active\n participants in the chat. Using the SendEvent API for message receipts when a supervisor\n is barged-in will result in a conflict exception.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/event",
@@ -2050,7 +2224,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sends a message.
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "Sends a message.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/message",
@@ -2131,6 +2305,15 @@
"smithy.api#httpError": 402
}
},
+ "com.amazonaws.connectparticipant#SessionId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 36,
+ "max": 36
+ }
+ }
+ },
"com.amazonaws.connectparticipant#SortKey": {
"type": "enum",
"members": {
@@ -2174,7 +2357,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Provides a pre-signed Amazon S3 URL in response for uploading the file directly to\n S3.
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
+ "smithy.api#documentation": "Provides a pre-signed Amazon S3 URL in response for uploading the file directly to\n S3.
\n For security recommendations, see Amazon Connect Chat security best practices .
\n \n \n ConnectionToken
is used for invoking this API instead of\n ParticipantToken
.
\n \n The Amazon Connect Participant Service APIs do not use Signature Version 4\n authentication .
",
"smithy.api#http": {
"method": "POST",
"uri": "/participant/start-attachment-upload",
@@ -2240,7 +2423,7 @@
"UploadMetadata": {
"target": "com.amazonaws.connectparticipant#UploadMetadata",
"traits": {
- "smithy.api#documentation": "Fields to be used while uploading the attachment.
"
+ "smithy.api#documentation": "The headers to be provided while uploading the file to the URL.
"
}
}
},
@@ -2297,6 +2480,15 @@
"target": "com.amazonaws.connectparticipant#Item"
}
},
+ "com.amazonaws.connectparticipant#URLExpiryInSeconds": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 5,
+ "max": 300
+ }
+ }
+ },
"com.amazonaws.connectparticipant#UploadMetadata": {
"type": "structure",
"members": {
diff --git a/aws-models/datasync.json b/aws-models/datasync.json
index 4f914e333728..a789c1262839 100644
--- a/aws-models/datasync.json
+++ b/aws-models/datasync.json
@@ -626,7 +626,7 @@
"Subdirectory": {
"target": "com.amazonaws.datasync#EfsSubdirectory",
"traits": {
- "smithy.api#documentation": "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)\n on your file system.
\n By default, DataSync uses the root directory (or access point if you provide one by using\n AccessPointArn
). You can also include subdirectories using forward slashes (for\n example, /path/to/folder
).
"
+ "smithy.api#documentation": "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).
\n By default, DataSync uses the root directory (or access point if you provide one by using\n AccessPointArn
). You can also include subdirectories using forward slashes (for\n example, /path/to/folder
).
"
}
},
"EfsFilesystemArn": {
@@ -714,27 +714,27 @@
"FsxFilesystemArn": {
"target": "com.amazonaws.datasync#FsxFilesystemArn",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) for the FSx for Lustre file system.
",
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the FSx for Lustre file system.
",
"smithy.api#required": {}
}
},
"SecurityGroupArns": {
"target": "com.amazonaws.datasync#Ec2SecurityGroupArnList",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Names (ARNs) of the security groups that are used to configure the\n FSx for Lustre file system.
",
+ "smithy.api#documentation": "Specifies the Amazon Resource Names (ARNs) of up to five security groups that provide access to your\n FSx for Lustre file system.
\n The security groups must be able to access the file system's ports. The file system must\n also allow access from the security groups. For information about file system access, see the\n \n Amazon FSx for Lustre User Guide \n .
",
"smithy.api#required": {}
}
},
"Subdirectory": {
"target": "com.amazonaws.datasync#FsxLustreSubdirectory",
"traits": {
- "smithy.api#documentation": "A subdirectory in the location's path. This subdirectory in the FSx for Lustre\n file system is used to read data from the FSx for Lustre source location or write\n data to the FSx for Lustre destination.
"
+ "smithy.api#documentation": "Specifies a mount path for your FSx for Lustre file system. The path can include subdirectories.
\n 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 (/
).
"
}
},
"Tags": {
"target": "com.amazonaws.datasync#InputTagList",
"traits": {
- "smithy.api#documentation": "The key-value pair that represents a tag that you want to add to the resource. The value\n can be an empty string. This value helps you manage, filter, and search for your resources. We\n recommend that you create a name tag for your location.
"
+ "smithy.api#documentation": "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.
"
}
}
},
@@ -748,7 +748,7 @@
"LocationArn": {
"target": "com.amazonaws.datasync#LocationArn",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the FSx for Lustre file system location that's\n created.
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the FSx for Lustre file system location that\n you created.
"
}
}
},
@@ -802,7 +802,7 @@
"Subdirectory": {
"target": "com.amazonaws.datasync#FsxOntapSubdirectory",
"traits": {
- "smithy.api#documentation": "Specifies a path to the file share in the SVM where you'll copy your data.
\n You can specify a junction path (also known as a mount point), qtree path (for NFS file\n shares), or share name (for SMB file shares). For example, your mount path might be\n /vol1
, /vol1/tree1
, or /share1
.
\n \n 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 .
\n "
+ "smithy.api#documentation": "Specifies a path to the file share in the SVM where you want to transfer data to or from.
\n You can specify a junction path (also known as a mount point), qtree path (for NFS file\n shares), or share name (for SMB file shares). For example, your mount path might be\n /vol1
, /vol1/tree1
, or /share1
.
\n \n 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 .
\n "
}
},
"Tags": {
@@ -964,7 +964,7 @@
"Domain": {
"target": "com.amazonaws.datasync#SmbDomain",
"traits": {
- "smithy.api#documentation": "Specifies the name of the Microsoft Active Directory domain that the FSx for Windows File Server file system belongs to.
\n If you have multiple Active Directory domains in your environment, configuring this\n parameter makes sure that DataSync connects to the right file system.
"
+ "smithy.api#documentation": "Specifies the name of the Windows domain that the FSx for Windows File Server file system belongs to.
\n If you have multiple Active Directory domains in your environment, configuring this\n parameter makes sure that DataSync connects to the right file system.
"
}
},
"Password": {
@@ -1133,7 +1133,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a transfer location for a Network File System (NFS) file\n server. DataSync can use this location as a source or destination for\n transferring data.
\n Before you begin, make sure that you understand how DataSync\n accesses\n NFS file servers .
\n \n If you're copying data to or from an Snowcone device, you can also use\n CreateLocationNfs
to create your transfer location. For more information, see\n Configuring transfers with Snowcone .
\n "
+ "smithy.api#documentation": "Creates a transfer location for a Network File System (NFS) file\n server. DataSync can use this location as a source or destination for\n transferring data.
\n Before you begin, make sure that you understand how DataSync\n accesses\n NFS file servers .
"
}
},
"com.amazonaws.datasync#CreateLocationNfsRequest": {
@@ -4112,6 +4112,21 @@
{
"target": "com.amazonaws.datasync#UpdateLocationAzureBlob"
},
+ {
+ "target": "com.amazonaws.datasync#UpdateLocationEfs"
+ },
+ {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxLustre"
+ },
+ {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxOntap"
+ },
+ {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxOpenZfs"
+ },
+ {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxWindows"
+ },
{
"target": "com.amazonaws.datasync#UpdateLocationHdfs"
},
@@ -4121,6 +4136,9 @@
{
"target": "com.amazonaws.datasync#UpdateLocationObjectStorage"
},
+ {
+ "target": "com.amazonaws.datasync#UpdateLocationS3"
+ },
{
"target": "com.amazonaws.datasync#UpdateLocationSmb"
},
@@ -5197,7 +5215,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Specifies the Network File System (NFS) protocol configuration that DataSync\n uses to access your Amazon FSx for OpenZFS or Amazon FSx for NetApp ONTAP file\n system.
"
+ "smithy.api#documentation": "Specifies the Network File System (NFS) protocol configuration that DataSync\n uses to access your FSx for OpenZFS file system or FSx for ONTAP file\n system's storage virtual machine (SVM).
"
}
},
"com.amazonaws.datasync#FsxProtocolSmb": {
@@ -5206,7 +5224,7 @@
"Domain": {
"target": "com.amazonaws.datasync#SmbDomain",
"traits": {
- "smithy.api#documentation": "Specifies the fully qualified domain name (FQDN) of the Microsoft Active Directory that\n your storage virtual machine (SVM) belongs to.
\n If you have multiple domains in your environment, configuring this setting makes sure that\n DataSync connects to the right SVM.
"
+ "smithy.api#documentation": "Specifies the name of the Windows domain that your storage virtual machine (SVM) belongs to.
\n If you have multiple domains in your environment, configuring this setting makes sure that\n DataSync connects to the right SVM.
\n If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right SVM.
"
}
},
"MountOptions": {
@@ -5228,7 +5246,63 @@
}
},
"traits": {
- "smithy.api#documentation": "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\n Accessing FSx for ONTAP file systems .
"
+ "smithy.api#documentation": "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\n Providing DataSync access to FSx for ONTAP file systems .
"
+ }
+ },
+ "com.amazonaws.datasync#FsxUpdateProtocol": {
+ "type": "structure",
+ "members": {
+ "NFS": {
+ "target": "com.amazonaws.datasync#FsxProtocolNfs"
+ },
+ "SMB": {
+ "target": "com.amazonaws.datasync#FsxUpdateProtocolSmb",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Server Message Block (SMB) protocol configuration that DataSync\n uses to access your FSx for ONTAP file system's storage virtual machine (SVM).
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Specifies the data transfer protocol that DataSync uses to access your\n Amazon FSx file system.
\n \n 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.
\n "
+ }
+ },
+ "com.amazonaws.datasync#FsxUpdateProtocolSmb": {
+ "type": "structure",
+ "members": {
+ "Domain": {
+ "target": "com.amazonaws.datasync#FsxUpdateSmbDomain",
+ "traits": {
+ "smithy.api#documentation": "Specifies the name of the Windows domain that your storage virtual machine (SVM) belongs to.
\n If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right SVM.
"
+ }
+ },
+ "MountOptions": {
+ "target": "com.amazonaws.datasync#SmbMountOptions"
+ },
+ "Password": {
+ "target": "com.amazonaws.datasync#SmbPassword",
+ "traits": {
+ "smithy.api#documentation": "Specifies the password of a user who has permission to access your SVM.
"
+ }
+ },
+ "User": {
+ "target": "com.amazonaws.datasync#SmbUser",
+ "traits": {
+ "smithy.api#documentation": "Specifies a user that can mount and access the files, folders, and metadata in your SVM.
\n For information about choosing a user with the right level of access for your transfer, see Using\n the SMB protocol .
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "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\n Providing DataSync access to FSx for ONTAP file systems .
"
+ }
+ },
+ "com.amazonaws.datasync#FsxUpdateSmbDomain": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 253
+ },
+ "smithy.api#pattern": "^([A-Za-z0-9]((\\.|-+)?[A-Za-z0-9]){0,252})?$"
}
},
"com.amazonaws.datasync#FsxWindowsSubdirectory": {
@@ -7750,7 +7824,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that DataSync uses to access your S3 bucket.
\n For more information, see Accessing\n S3 buckets .
"
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that DataSync uses to access your S3 bucket.
\n For more information, see Providing DataSync access to S3 buckets .
"
}
},
"com.amazonaws.datasync#S3ManifestConfig": {
@@ -9174,7 +9248,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Modifies some configurations of the Microsoft Azure Blob Storage transfer location that you're using with DataSync.
"
+ "smithy.api#documentation": "Modifies the following configurations of the Microsoft Azure Blob Storage transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with Azure Blob Storage .
"
}
},
"com.amazonaws.datasync#UpdateLocationAzureBlobRequest": {
@@ -9235,6 +9309,291 @@
"smithy.api#output": {}
}
},
+ "com.amazonaws.datasync#UpdateLocationEfs": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.datasync#UpdateLocationEfsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.datasync#UpdateLocationEfsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.datasync#InternalException"
+ },
+ {
+ "target": "com.amazonaws.datasync#InvalidRequestException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Amazon EFS transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with Amazon EFS .
"
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationEfsRequest": {
+ "type": "structure",
+ "members": {
+ "LocationArn": {
+ "target": "com.amazonaws.datasync#LocationArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the Amazon EFS transfer location that you're updating.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Subdirectory": {
+ "target": "com.amazonaws.datasync#EfsSubdirectory",
+ "traits": {
+ "smithy.api#documentation": "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).
\n By default, DataSync uses the root directory (or access point if you provide one by using\n AccessPointArn
). You can also include subdirectories using forward slashes (for\n example, /path/to/folder
).
"
+ }
+ },
+ "AccessPointArn": {
+ "target": "com.amazonaws.datasync#UpdatedEfsAccessPointArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the access point that DataSync uses\n to mount your Amazon EFS file system.
\n For more information, see Accessing restricted Amazon EFS file systems .
"
+ }
+ },
+ "FileSystemAccessRoleArn": {
+ "target": "com.amazonaws.datasync#UpdatedEfsIamRoleArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies an Identity and Access Management (IAM) role that allows DataSync to access your Amazon EFS file system.
\n For information on creating this role, see Creating a DataSync IAM role for Amazon EFS file system access .
"
+ }
+ },
+ "InTransitEncryption": {
+ "target": "com.amazonaws.datasync#EfsInTransitEncryption",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether you want DataSync to use Transport Layer Security (TLS) 1.2\n encryption when it transfers data to or from your Amazon EFS file system.
\n If you specify an access point using AccessPointArn
or an IAM\n role using FileSystemAccessRoleArn
, you must set this parameter to\n TLS1_2
.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationEfsResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxLustre": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxLustreRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxLustreResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.datasync#InternalException"
+ },
+ {
+ "target": "com.amazonaws.datasync#InvalidRequestException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Amazon FSx for Lustre transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with FSx for Lustre .
"
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxLustreRequest": {
+ "type": "structure",
+ "members": {
+ "LocationArn": {
+ "target": "com.amazonaws.datasync#LocationArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the FSx for Lustre transfer location that you're updating.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Subdirectory": {
+ "target": "com.amazonaws.datasync#SmbSubdirectory",
+ "traits": {
+ "smithy.api#documentation": "Specifies a mount path for your FSx for Lustre file system. The path can include subdirectories.
\n 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 (/
).
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxLustreResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxOntap": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxOntapRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxOntapResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.datasync#InternalException"
+ },
+ {
+ "target": "com.amazonaws.datasync#InvalidRequestException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Amazon FSx for NetApp ONTAP transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with FSx for ONTAP .
"
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxOntapRequest": {
+ "type": "structure",
+ "members": {
+ "LocationArn": {
+ "target": "com.amazonaws.datasync#LocationArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the FSx for ONTAP transfer location that you're updating.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Protocol": {
+ "target": "com.amazonaws.datasync#FsxUpdateProtocol",
+ "traits": {
+ "smithy.api#documentation": "Specifies the data transfer protocol that DataSync uses to access your Amazon FSx file system.
"
+ }
+ },
+ "Subdirectory": {
+ "target": "com.amazonaws.datasync#FsxOntapSubdirectory",
+ "traits": {
+ "smithy.api#documentation": "Specifies a path to the file share in the storage virtual machine (SVM) where you want to transfer data to or from.
\n You can specify a junction path (also known as a mount point), qtree path (for NFS file\n shares), or share name (for SMB file shares). For example, your mount path might be\n /vol1
, /vol1/tree1
, or /share1
.
\n \n 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 .
\n "
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxOntapResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxOpenZfs": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxOpenZfsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxOpenZfsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.datasync#InternalException"
+ },
+ {
+ "target": "com.amazonaws.datasync#InvalidRequestException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Amazon FSx for OpenZFS transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with FSx for OpenZFS .
\n \n Request parameters related to SMB
aren't supported with the\n UpdateLocationFsxOpenZfs
operation.
\n "
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxOpenZfsRequest": {
+ "type": "structure",
+ "members": {
+ "LocationArn": {
+ "target": "com.amazonaws.datasync#LocationArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the FSx for OpenZFS transfer location that you're updating.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Protocol": {
+ "target": "com.amazonaws.datasync#FsxProtocol"
+ },
+ "Subdirectory": {
+ "target": "com.amazonaws.datasync#SmbSubdirectory",
+ "traits": {
+ "smithy.api#documentation": "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\n system is a source or destination location).
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxOpenZfsResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxWindows": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxWindowsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.datasync#UpdateLocationFsxWindowsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.datasync#InternalException"
+ },
+ {
+ "target": "com.amazonaws.datasync#InvalidRequestException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Amazon FSx for Windows File Server transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with FSx for Windows File Server .
"
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxWindowsRequest": {
+ "type": "structure",
+ "members": {
+ "LocationArn": {
+ "target": "com.amazonaws.datasync#LocationArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the ARN of the FSx for Windows File Server transfer location that you're updating.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Subdirectory": {
+ "target": "com.amazonaws.datasync#FsxWindowsSubdirectory",
+ "traits": {
+ "smithy.api#documentation": "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\n system is a source or destination location).
"
+ }
+ },
+ "Domain": {
+ "target": "com.amazonaws.datasync#FsxUpdateSmbDomain",
+ "traits": {
+ "smithy.api#documentation": "Specifies the name of the Windows domain that your FSx for Windows File Server file system belongs to.
\n If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right file system.
"
+ }
+ },
+ "User": {
+ "target": "com.amazonaws.datasync#SmbUser",
+ "traits": {
+ "smithy.api#documentation": "Specifies the user with the permissions to mount and access the files, folders, and file\n metadata in your FSx for Windows File Server file system.
\n 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.
"
+ }
+ },
+ "Password": {
+ "target": "com.amazonaws.datasync#SmbPassword",
+ "traits": {
+ "smithy.api#documentation": "Specifies the password of the user with the permissions to mount and access the files,\n folders, and file metadata in your FSx for Windows File Server file system.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationFsxWindowsResponse": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.datasync#UpdateLocationHdfs": {
"type": "operation",
"input": {
@@ -9252,7 +9611,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates some parameters of a previously created location for a Hadoop Distributed File\n System cluster.
"
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Hadoop Distributed File\n System (HDFS) transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with an HDFS cluster .
"
}
},
"com.amazonaws.datasync#UpdateLocationHdfsRequest": {
@@ -9366,7 +9725,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Modifies some configurations of the Network File System (NFS) transfer location that\n you're using with DataSync.
\n For more information, see Configuring transfers to or from an\n NFS file server .
"
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Network File System (NFS) transfer location that you're using with DataSync.
\n For more information, see Configuring transfers with an\n NFS file server .
"
}
},
"com.amazonaws.datasync#UpdateLocationNfsRequest": {
@@ -9420,7 +9779,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates some parameters of an existing DataSync location for an object\n storage system.
"
+ "smithy.api#documentation": "Modifies the following configuration parameters of the object storage transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with an object storage system .
"
}
},
"com.amazonaws.datasync#UpdateLocationObjectStorageRequest": {
@@ -9487,6 +9846,63 @@
"smithy.api#output": {}
}
},
+ "com.amazonaws.datasync#UpdateLocationS3": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.datasync#UpdateLocationS3Request"
+ },
+ "output": {
+ "target": "com.amazonaws.datasync#UpdateLocationS3Response"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.datasync#InternalException"
+ },
+ {
+ "target": "com.amazonaws.datasync#InvalidRequestException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Amazon S3 transfer location that you're using with DataSync.
\n \n Before you begin, make sure that you read the following topics:
\n \n "
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationS3Request": {
+ "type": "structure",
+ "members": {
+ "LocationArn": {
+ "target": "com.amazonaws.datasync#LocationArn",
+ "traits": {
+ "smithy.api#documentation": "Specifies the Amazon Resource Name (ARN) of the Amazon S3 transfer location that you're updating.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Subdirectory": {
+ "target": "com.amazonaws.datasync#S3Subdirectory",
+ "traits": {
+ "smithy.api#documentation": "Specifies a prefix in the S3 bucket that DataSync reads from or writes to\n (depending on whether the bucket is a source or destination location).
\n \n DataSync can't transfer objects with a prefix that begins with a slash\n (/
) or includes //
, /./
, or\n /../
patterns. For example:
\n \n \n \n /photos
\n
\n \n \n \n photos//2006/January
\n
\n \n \n \n photos/./2006/February
\n
\n \n \n \n photos/../2006/March
\n
\n \n \n "
+ }
+ },
+ "S3StorageClass": {
+ "target": "com.amazonaws.datasync#S3StorageClass",
+ "traits": {
+ "smithy.api#documentation": "Specifies the storage class that you want your objects to use when Amazon S3 is a\n transfer destination.
\n For buckets in Amazon Web Services Regions, the storage class defaults to\n STANDARD
. For buckets on Outposts, the storage class defaults to\n OUTPOSTS
.
\n For more information, see Storage class\n considerations with Amazon S3 transfers .
"
+ }
+ },
+ "S3Config": {
+ "target": "com.amazonaws.datasync#S3Config"
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.datasync#UpdateLocationS3Response": {
+ "type": "structure",
+ "members": {},
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.datasync#UpdateLocationSmb": {
"type": "operation",
"input": {
@@ -9504,7 +9920,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates some of the parameters of a Server Message Block\n (SMB) file server location that you can use for DataSync transfers.
"
+ "smithy.api#documentation": "Modifies the following configuration parameters of the Server Message Block\n (SMB) transfer location that you're using with DataSync.
\n For more information, see Configuring DataSync transfers with an SMB file server .
"
}
},
"com.amazonaws.datasync#UpdateLocationSmbRequest": {
@@ -9773,6 +10189,26 @@
"smithy.api#output": {}
}
},
+ "com.amazonaws.datasync#UpdatedEfsAccessPointArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 128
+ },
+ "smithy.api#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}$)|(^$)$"
+ }
+ },
+ "com.amazonaws.datasync#UpdatedEfsIamRoleArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 2048
+ },
+ "smithy.api#pattern": "^(^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):iam::[0-9]{12}:role/.*$)|(^$)$"
+ }
+ },
"com.amazonaws.datasync#VerifyMode": {
"type": "enum",
"members": {
diff --git a/aws-models/iot.json b/aws-models/iot.json
index 5c6749349046..a9c2ad09c8bf 100644
--- a/aws-models/iot.json
+++ b/aws-models/iot.json
@@ -468,6 +468,9 @@
{
"target": "com.amazonaws.iot#GetStatistics"
},
+ {
+ "target": "com.amazonaws.iot#GetThingConnectivityData"
+ },
{
"target": "com.amazonaws.iot#GetTopicRule"
},
@@ -6890,6 +6893,17 @@
"smithy.api#pattern": "^[a-zA-Z0-9:.]+$"
}
},
+ "com.amazonaws.iot#ConnectivityApiThingName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 128
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9:_-]+$",
+ "smithy.api#sensitive": {}
+ }
+ },
"com.amazonaws.iot#ConnectivityTimestamp": {
"type": "long"
},
@@ -7492,7 +7506,7 @@
"roleArn": {
"target": "com.amazonaws.iot#RoleArn",
"traits": {
- "smithy.api#documentation": "The IAM role that allows access to create the command.
"
+ "smithy.api#documentation": "The IAM role that you must provide when using the AWS-IoT-FleetWise
namespace.\n The role grants IoT Device Management the permission to access IoT FleetWise resources \n for generating the payload for the command. This field is not required when you use the\n AWS-IoT
namespace.
"
}
},
"tags": {
@@ -16802,6 +16816,95 @@
"com.amazonaws.iot#DisconnectReason": {
"type": "string"
},
+ "com.amazonaws.iot#DisconnectReasonValue": {
+ "type": "enum",
+ "members": {
+ "AUTH_ERROR": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "AUTH_ERROR"
+ }
+ },
+ "CLIENT_INITIATED_DISCONNECT": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "CLIENT_INITIATED_DISCONNECT"
+ }
+ },
+ "CLIENT_ERROR": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "CLIENT_ERROR"
+ }
+ },
+ "CONNECTION_LOST": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "CONNECTION_LOST"
+ }
+ },
+ "DUPLICATE_CLIENTID": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DUPLICATE_CLIENTID"
+ }
+ },
+ "FORBIDDEN_ACCESS": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "FORBIDDEN_ACCESS"
+ }
+ },
+ "MQTT_KEEP_ALIVE_TIMEOUT": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "MQTT_KEEP_ALIVE_TIMEOUT"
+ }
+ },
+ "SERVER_ERROR": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "SERVER_ERROR"
+ }
+ },
+ "SERVER_INITIATED_DISCONNECT": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "SERVER_INITIATED_DISCONNECT"
+ }
+ },
+ "THROTTLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "THROTTLED"
+ }
+ },
+ "WEBSOCKET_TTL_EXPIRATION": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "WEBSOCKET_TTL_EXPIRATION"
+ }
+ },
+ "CUSTOMAUTH_TTL_EXPIRATION": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "CUSTOMAUTH_TTL_EXPIRATION"
+ }
+ },
+ "UNKNOWN": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "UNKNOWN"
+ }
+ },
+ "NONE": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "NONE"
+ }
+ }
+ }
+ },
"com.amazonaws.iot#DisplayName": {
"type": "string",
"traits": {
@@ -18414,7 +18517,7 @@
"timeToLive": {
"target": "com.amazonaws.iot#DateType",
"traits": {
- "smithy.api#documentation": "The time to live (TTL) parameter for the GetCommandExecution
API.
"
+ "smithy.api#documentation": "The time to live (TTL) parameter that indicates the duration for which executions will\n be retained in your account. The default value is six months.
"
}
}
},
@@ -18486,7 +18589,7 @@
"roleArn": {
"target": "com.amazonaws.iot#RoleArn",
"traits": {
- "smithy.api#documentation": "The IAM role that allows access to retrieve information about the command.
"
+ "smithy.api#documentation": "The IAM role that you provided when creating the command with AWS-IoT-FleetWise
\n as the namespace.
"
}
},
"createdAt": {
@@ -19605,6 +19708,94 @@
"smithy.api#output": {}
}
},
+ "com.amazonaws.iot#GetThingConnectivityData": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.iot#GetThingConnectivityDataRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.iot#GetThingConnectivityDataResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.iot#IndexNotReadyException"
+ },
+ {
+ "target": "com.amazonaws.iot#InternalFailureException"
+ },
+ {
+ "target": "com.amazonaws.iot#InvalidRequestException"
+ },
+ {
+ "target": "com.amazonaws.iot#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.iot#ServiceUnavailableException"
+ },
+ {
+ "target": "com.amazonaws.iot#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.iot#UnauthorizedException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the live connectivity status per device.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/things/{thingName}/connectivity-data",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.iot#GetThingConnectivityDataRequest": {
+ "type": "structure",
+ "members": {
+ "thingName": {
+ "target": "com.amazonaws.iot#ConnectivityApiThingName",
+ "traits": {
+ "smithy.api#documentation": "The name of your IoT thing.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.iot#GetThingConnectivityDataResponse": {
+ "type": "structure",
+ "members": {
+ "thingName": {
+ "target": "com.amazonaws.iot#ConnectivityApiThingName",
+ "traits": {
+ "smithy.api#documentation": "The name of your IoT thing.
"
+ }
+ },
+ "connected": {
+ "target": "com.amazonaws.iot#Boolean",
+ "traits": {
+ "smithy.api#documentation": "A Boolean that indicates the connectivity status.
"
+ }
+ },
+ "timestamp": {
+ "target": "com.amazonaws.iot#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp of when the event occurred.
"
+ }
+ },
+ "disconnectReason": {
+ "target": "com.amazonaws.iot#DisconnectReasonValue",
+ "traits": {
+ "smithy.api#documentation": "The reason why the client is disconnecting.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.iot#GetTopicRule": {
"type": "operation",
"input": {
@@ -22712,7 +22903,7 @@
}
],
"traits": {
- "smithy.api#documentation": "List all command executions.
\n \n You must provide only the\n startedTimeFilter
or the completedTimeFilter
information. If you \n provide both time filters, the API will generate an error.\n You can use this information to find command executions that started within\n a specific timeframe.
\n ",
+ "smithy.api#documentation": "List all command executions.
\n \n \n \n You must provide only the startedTimeFilter
or \n the completedTimeFilter
information. If you provide \n both time filters, the API will generate an error. You can use \n this information to retrieve a list of command executions \n within a specific timeframe.
\n \n \n You must provide only the commandArn
or \n the thingArn
information depending on whether you want\n to list executions for a specific command or an IoT thing. If you provide \n both fields, the API will generate an error.
\n \n \n For more information about considerations for using this API, see\n List\n command executions in your account (CLI) .
\n ",
"smithy.api#http": {
"method": "POST",
"uri": "/command-executions",
diff --git a/aws-models/mwaa.json b/aws-models/mwaa.json
index 161364d6708a..99d50643a87a 100644
--- a/aws-models/mwaa.json
+++ b/aws-models/mwaa.json
@@ -1136,7 +1136,7 @@
"AirflowVersion": {
"target": "com.amazonaws.mwaa#AirflowVersion",
"traits": {
- "smithy.api#documentation": "The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version.\n For more information, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (Amazon MWAA) .
\n Valid values: 1.10.12
, 2.0.2
, 2.2.2
,\n 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
,\n 2.8.1
, 2.9.2
, and 2.10.1
.
"
+ "smithy.api#documentation": "The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version.\n For more information, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (Amazon MWAA) .
\n Valid values: 1.10.12
, 2.0.2
, 2.2.2
,\n 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
,\n 2.8.1
, 2.9.2
, 2.10.1
, and 2.10.3
.
"
}
},
"LoggingConfiguration": {
@@ -1443,7 +1443,7 @@
"AirflowVersion": {
"target": "com.amazonaws.mwaa#AirflowVersion",
"traits": {
- "smithy.api#documentation": "The Apache Airflow version on your environment.
\n Valid values: 1.10.12
, 2.0.2
, 2.2.2
,\n 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
,\n 2.8.1
, 2.9.2
, and 2.10.1
.
"
+ "smithy.api#documentation": "The Apache Airflow version on your environment.
\n Valid values: 1.10.12
, 2.0.2
, 2.2.2
,\n 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
,\n 2.8.1
, 2.9.2
, 2.10.1
, and 2.10.3
.
"
}
},
"SourceBucketArn": {
@@ -2989,7 +2989,7 @@
"AirflowVersion": {
"target": "com.amazonaws.mwaa#AirflowVersion",
"traits": {
- "smithy.api#documentation": "The Apache Airflow version for your environment. To upgrade your environment, specify a newer version of Apache Airflow supported by Amazon MWAA.
\n 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\n your resources, see Upgrading an Amazon MWAA environment .
\n Valid values: 1.10.12
, 2.0.2
, 2.2.2
,\n 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
,\n 2.8.1
, 2.9.2
, and 2.10.1
.
"
+ "smithy.api#documentation": "The Apache Airflow version for your environment. To upgrade your environment, specify a newer version of Apache Airflow supported by Amazon MWAA.
\n 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\n your resources, see Upgrading an Amazon MWAA environment .
\n Valid values: 1.10.12
, 2.0.2
, 2.2.2
,\n 2.4.3
, 2.5.1
, 2.6.3
, 2.7.2
,\n 2.8.1
, 2.9.2
, 2.10.1
, and 2.10.3
.
"
}
},
"SourceBucketArn": {
diff --git a/aws-models/quicksight.json b/aws-models/quicksight.json
index c949cbe8c3c8..8f68cab4baaf 100644
--- a/aws-models/quicksight.json
+++ b/aws-models/quicksight.json
@@ -9141,6 +9141,12 @@
"traits": {
"smithy.api#documentation": "When you create the dataset, Amazon QuickSight adds the dataset to these folders.
"
}
+ },
+ "PerformanceConfiguration": {
+ "target": "com.amazonaws.quicksight#PerformanceConfiguration",
+ "traits": {
+ "smithy.api#documentation": "The configuration for the performance optimization of the dataset that contains a UniqueKey
configuration.
"
+ }
}
},
"traits": {
@@ -13418,6 +13424,12 @@
"traits": {
"smithy.api#documentation": "The parameters that are declared in a dataset.
"
}
+ },
+ "PerformanceConfiguration": {
+ "target": "com.amazonaws.quicksight#PerformanceConfiguration",
+ "traits": {
+ "smithy.api#documentation": "The performance optimization configuration of a dataset.
"
+ }
}
},
"traits": {
@@ -40442,6 +40454,20 @@
}
}
},
+ "com.amazonaws.quicksight#PerformanceConfiguration": {
+ "type": "structure",
+ "members": {
+ "UniqueKeys": {
+ "target": "com.amazonaws.quicksight#UniqueKeyList",
+ "traits": {
+ "smithy.api#documentation": "A UniqueKey
configuration.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The configuration for the performance optimization of the dataset that contains a UniqueKey
configuration.
"
+ }
+ },
"com.amazonaws.quicksight#PeriodOverPeriodComputation": {
"type": "structure",
"members": {
@@ -56274,6 +56300,45 @@
"smithy.api#pattern": "^[^\\u0000-\\u00FF]$"
}
},
+ "com.amazonaws.quicksight#UniqueKey": {
+ "type": "structure",
+ "members": {
+ "ColumnNames": {
+ "target": "com.amazonaws.quicksight#UniqueKeyColumnNameList",
+ "traits": {
+ "smithy.api#documentation": "The name of the column that is referenced in the UniqueKey
configuration.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A UniqueKey
configuration that references a dataset column.
"
+ }
+ },
+ "com.amazonaws.quicksight#UniqueKeyColumnNameList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.quicksight#ColumnName"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 1
+ }
+ }
+ },
+ "com.amazonaws.quicksight#UniqueKeyList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.quicksight#UniqueKey"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 1
+ }
+ }
+ },
"com.amazonaws.quicksight#UniqueValuesComputation": {
"type": "structure",
"members": {
@@ -58187,6 +58252,12 @@
"traits": {
"smithy.api#documentation": "The parameter declarations of the dataset.
"
}
+ },
+ "PerformanceConfiguration": {
+ "target": "com.amazonaws.quicksight#PerformanceConfiguration",
+ "traits": {
+ "smithy.api#documentation": "The configuration for the performance optimization of the dataset that contains a UniqueKey
configuration.
"
+ }
}
},
"traits": {
diff --git a/aws-models/resiliencehub.json b/aws-models/resiliencehub.json
index e2fc7be8969e..18f132ed97a2 100644
--- a/aws-models/resiliencehub.json
+++ b/aws-models/resiliencehub.json
@@ -225,6 +225,26 @@
}
}
},
+ "com.amazonaws.resiliencehub#Alarm": {
+ "type": "structure",
+ "members": {
+ "alarmArn": {
+ "target": "com.amazonaws.resiliencehub#Arn",
+ "traits": {
+ "smithy.api#documentation": "Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.
"
+ }
+ },
+ "source": {
+ "target": "com.amazonaws.resiliencehub#String255",
+ "traits": {
+ "smithy.api#documentation": "Indicates the source of the Amazon CloudWatch alarm. That is, it indicates if the\n alarm was created using Resilience Hub recommendation (AwsResilienceHub
),\n or if you had created the alarm in Amazon CloudWatch (Customer
).
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Indicates the Amazon CloudWatch alarm detected while running an assessment.
"
+ }
+ },
"com.amazonaws.resiliencehub#AlarmRecommendation": {
"type": "structure",
"members": {
@@ -683,7 +703,7 @@
"complianceStatus": {
"target": "com.amazonaws.resiliencehub#ComplianceStatus",
"traits": {
- "smithy.api#documentation": "Current\n status of compliance for the resiliency policy.
"
+ "smithy.api#documentation": "Current status of compliance for the resiliency policy.
"
}
},
"cost": {
@@ -1146,7 +1166,7 @@
"appComponents": {
"target": "com.amazonaws.resiliencehub#AppComponentNameList",
"traits": {
- "smithy.api#documentation": "Indicates the Application Components (AppComponents) that were assessed as part of the\n assessnent and are associated with the identified risk and recommendation.
\n \n This property is available only in the US East (N. Virginia) Region.
\n "
+ "smithy.api#documentation": "Indicates the Application Components (AppComponents) that were assessed as part of the\n assessment and are associated with the identified risk and recommendation.
\n \n This property is available only in the US East (N. Virginia) Region.
\n "
}
}
},
@@ -2465,6 +2485,12 @@
"smithy.api#required": {}
}
},
+ "appComponentId": {
+ "target": "com.amazonaws.resiliencehub#EntityName255",
+ "traits": {
+ "smithy.api#documentation": "Indicates the identifier of an AppComponent.
"
+ }
+ },
"excludeReason": {
"target": "com.amazonaws.resiliencehub#ExcludeRecommendationReason",
"traits": {
@@ -2549,7 +2575,7 @@
"diffType": {
"target": "com.amazonaws.resiliencehub#DifferenceType",
"traits": {
- "smithy.api#documentation": "Difference type between actual and expected recovery point objective (RPO) and recovery\n time objective (RTO) values. Currently, Resilience Hub supports only\n NotEqual
difference type.
"
+ "smithy.api#documentation": "Difference type between actual and expected recovery point objective (RPO) and recovery\n time objective (RTO) values. Currently, Resilience Hub supports only\n NotEqual
difference type.
"
}
}
},
@@ -5422,6 +5448,26 @@
}
}
},
+ "com.amazonaws.resiliencehub#Experiment": {
+ "type": "structure",
+ "members": {
+ "experimentArn": {
+ "target": "com.amazonaws.resiliencehub#String255",
+ "traits": {
+ "smithy.api#documentation": "Amazon Resource Name (ARN) of the FIS experiment.
"
+ }
+ },
+ "experimentTemplateId": {
+ "target": "com.amazonaws.resiliencehub#String255",
+ "traits": {
+ "smithy.api#documentation": "Identifier of the FIS experiment template.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Indicates the FIS experiment detected while running an assessment.
"
+ }
+ },
"com.amazonaws.resiliencehub#FailedGroupingRecommendationEntries": {
"type": "list",
"member": {
@@ -7987,7 +8033,7 @@
"invokerRoleName": {
"target": "com.amazonaws.resiliencehub#IamRoleName",
"traits": {
- "smithy.api#documentation": "Existing Amazon Web Services\n IAM role name in the primary Amazon Web Services account that will be assumed by\n Resilience Hub Service Principle to obtain a read-only access to your application\n resources while running an assessment.
\n \n \n \n You must have iam:passRole
permission for this role while creating or\n updating the application.
\n \n \n Currently, invokerRoleName
accepts only [A-Za-z0-9_+=,.@-]
\n characters.
\n \n \n "
+ "smithy.api#documentation": "Existing Amazon Web Services\n IAM role name in the primary Amazon Web Services account that will be assumed by\n Resilience Hub Service Principle to obtain a read-only access to your application\n resources while running an assessment.
\n If your IAM role includes a path, you must include the path in the invokerRoleName
parameter. \n 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
.\n
\n \n \n \n You must have iam:passRole
permission for this role while creating or\n updating the application.
\n \n \n Currently, invokerRoleName
accepts only [A-Za-z0-9_+=,.@-]
\n characters.
\n \n \n "
}
},
"crossAccountRoleArns": {
@@ -8427,6 +8473,18 @@
"traits": {
"smithy.api#documentation": "Indicates the reason for excluding an operational recommendation.
"
}
+ },
+ "latestDiscoveredExperiment": {
+ "target": "com.amazonaws.resiliencehub#Experiment",
+ "traits": {
+ "smithy.api#documentation": "Indicates the experiment created in FIS that was discovered by Resilience Hub, which matches the recommendation.
"
+ }
+ },
+ "discoveredAlarm": {
+ "target": "com.amazonaws.resiliencehub#Alarm",
+ "traits": {
+ "smithy.api#documentation": "Indicates the previously implemented Amazon CloudWatch alarm discovered by Resilience Hub.
"
+ }
}
},
"traits": {
@@ -9205,7 +9263,7 @@
"hasMoreErrors": {
"target": "com.amazonaws.resiliencehub#BooleanOptional",
"traits": {
- "smithy.api#documentation": " This indicates if there are more errors not listed in the\n resourceErrors
\n list.
"
+ "smithy.api#documentation": " This indicates if there are more errors not listed in the resourceErrors
\n list.
"
}
}
},
@@ -10204,6 +10262,12 @@
"smithy.api#required": {}
}
},
+ "appComponentId": {
+ "target": "com.amazonaws.resiliencehub#EntityName255",
+ "traits": {
+ "smithy.api#documentation": "Indicates the identifier of the AppComponent.
"
+ }
+ },
"appComponentName": {
"target": "com.amazonaws.resiliencehub#EntityId",
"traits": {
@@ -10924,6 +10988,12 @@
"smithy.api#required": {}
}
},
+ "appComponentId": {
+ "target": "com.amazonaws.resiliencehub#EntityName255",
+ "traits": {
+ "smithy.api#documentation": "Indicates the identifier of the AppComponent.
"
+ }
+ },
"excludeReason": {
"target": "com.amazonaws.resiliencehub#ExcludeRecommendationReason",
"traits": {
diff --git a/aws-models/sdk-endpoints.json b/aws-models/sdk-endpoints.json
index 1c7d34cccf30..7ea2f774a16b 100644
--- a/aws-models/sdk-endpoints.json
+++ b/aws-models/sdk-endpoints.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/aws-models/transfer.json b/aws-models/transfer.json
index fec686b645b5..9ed633734e36 100644
--- a/aws-models/transfer.json
+++ b/aws-models/transfer.json
@@ -180,6 +180,12 @@
"traits": {
"smithy.api#documentation": "Provides Basic authentication support to the AS2 Connectors API. To use Basic authentication,\n you must provide the name or Amazon Resource Name (ARN) of a secret in Secrets Manager.
\n The default value for this parameter is null
, which indicates that Basic authentication is not enabled for the connector.
\n If the connector should use Basic authentication, the secret needs to be in the following format:
\n \n {\n \"Username\": \"user-name\",\n \"Password\": \"user-password\"\n }
\n
\n Replace user-name
and user-password
with the credentials for the actual user that is being authenticated.
\n Note the following:
\n \n \n You are storing these credentials in Secrets Manager, not passing them directly into this API.
\n \n \n If you are using the API, SDKs, or CloudFormation to configure your connector, then you must create the secret before you can enable Basic authentication.\n However, if you are using the Amazon Web Services management console, you can have the system create the secret for you.
\n \n \n If you have previously enabled Basic authentication for a connector, you can disable it by using the UpdateConnector
API call. For example, if you are using the CLI, you can run the following command to remove Basic authentication:
\n \n update-connector --connector-id my-connector-id --as2-config 'BasicAuthSecretId=\"\"'
\n
"
}
+ },
+ "PreserveContentType": {
+ "target": "com.amazonaws.transfer#PreserveContentType",
+ "traits": {
+ "smithy.api#documentation": "Allows you to use the Amazon S3 Content-Type
that is associated with objects in S3 instead of\n having the content type mapped based on the file extension. This parameter is enabled by default when you create an AS2 connector\n from the console, but disabled by default when you create an AS2 connector by calling the API directly.
"
+ }
}
},
"traits": {
@@ -766,6 +772,18 @@
"traits": {
"smithy.api#documentation": "Key-value pairs that can be used to group and search for agreements.
"
}
+ },
+ "PreserveFilename": {
+ "target": "com.amazonaws.transfer#PreserveFilenameType",
+ "traits": {
+ "smithy.api#documentation": "\n Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload\n filename when saving it.\n
\n \n \n \n ENABLED
: the filename provided by your trading parter is preserved when the file is saved.
\n \n \n \n DISABLED
(default value): when Transfer Family saves the file, the filename is adjusted, as\n described in File names and locations .
\n \n "
+ }
+ },
+ "EnforceMessageSigning": {
+ "target": "com.amazonaws.transfer#EnforceMessageSigningType",
+ "traits": {
+ "smithy.api#documentation": "\n Determines whether or not unsigned messages from your trading partners will be accepted.\n
\n "
+ }
}
},
"traits": {
@@ -3218,6 +3236,18 @@
"traits": {
"smithy.api#documentation": "Key-value pairs that can be used to group and search for agreements.
"
}
+ },
+ "PreserveFilename": {
+ "target": "com.amazonaws.transfer#PreserveFilenameType",
+ "traits": {
+ "smithy.api#documentation": "\n Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload\n filename when saving it.\n
\n \n \n \n ENABLED
: the filename provided by your trading parter is preserved when the file is saved.
\n \n \n \n DISABLED
(default value): when Transfer Family saves the file, the filename is adjusted, as\n described in File names and locations .
\n \n "
+ }
+ },
+ "EnforceMessageSigning": {
+ "target": "com.amazonaws.transfer#EnforceMessageSigningType",
+ "traits": {
+ "smithy.api#documentation": "\n Determines whether or not unsigned messages from your trading partners will be accepted.\n
\n "
+ }
}
},
"traits": {
@@ -3250,7 +3280,7 @@
"Status": {
"target": "com.amazonaws.transfer#CertificateStatusType",
"traits": {
- "smithy.api#documentation": "The certificate can be either ACTIVE
, PENDING_ROTATION
, or\n INACTIVE
. PENDING_ROTATION
means that this certificate will\n replace the current certificate when it expires.
"
+ "smithy.api#documentation": "Currently, the only available status is ACTIVE
: all other values are reserved for future use.
"
}
},
"Certificate": {
@@ -4227,6 +4257,23 @@
}
}
},
+ "com.amazonaws.transfer#EnforceMessageSigningType": {
+ "type": "enum",
+ "members": {
+ "ENABLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ENABLED"
+ }
+ },
+ "DISABLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DISABLED"
+ }
+ }
+ }
+ },
"com.amazonaws.transfer#ExecutionError": {
"type": "structure",
"members": {
@@ -7017,6 +7064,40 @@
"smithy.api#pattern": "^[\\x09-\\x0D\\x20-\\x7E]*$"
}
},
+ "com.amazonaws.transfer#PreserveContentType": {
+ "type": "enum",
+ "members": {
+ "ENABLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ENABLED"
+ }
+ },
+ "DISABLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DISABLED"
+ }
+ }
+ }
+ },
+ "com.amazonaws.transfer#PreserveFilenameType": {
+ "type": "enum",
+ "members": {
+ "ENABLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ENABLED"
+ }
+ },
+ "DISABLED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DISABLED"
+ }
+ }
+ }
+ },
"com.amazonaws.transfer#PrivateKeyType": {
"type": "string",
"traits": {
@@ -9988,6 +10069,18 @@
"traits": {
"smithy.api#documentation": "Connectors are used to send files using either the AS2 or SFTP protocol. For the access role,\n provide the Amazon Resource Name (ARN) of the Identity and Access Management role to use.
\n \n For AS2 connectors \n
\n With AS2, you can send files by calling StartFileTransfer
and specifying the\n file paths in the request parameter, SendFilePaths
. We use the file’s parent\n directory (for example, for --send-file-paths /bucket/dir/file.txt
, parent\n directory is /bucket/dir/
) to temporarily store a processed AS2 message file,\n store the MDN when we receive them from the partner, and write a final JSON file containing\n relevant metadata of the transmission. So, the AccessRole
needs to provide read\n and write access to the parent directory of the file location used in the\n StartFileTransfer
request. Additionally, you need to provide read and write\n access to the parent directory of the files that you intend to send with\n StartFileTransfer
.
\n If you are using Basic authentication for your AS2 connector, the access role requires the\n secretsmanager:GetSecretValue
permission for the secret. If the secret is encrypted using\n a customer-managed key instead of the Amazon Web Services managed key in Secrets Manager, then the role also\n needs the kms:Decrypt
permission for that key.
\n \n For SFTP connectors \n
\n Make sure that the access role provides\n read and write access to the parent directory of the file location\n that's used in the StartFileTransfer
request.\n Additionally, make sure that the role provides\n secretsmanager:GetSecretValue
permission to Secrets Manager.
"
}
+ },
+ "PreserveFilename": {
+ "target": "com.amazonaws.transfer#PreserveFilenameType",
+ "traits": {
+ "smithy.api#documentation": "\n Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload\n filename when saving it.\n
\n \n \n \n ENABLED
: the filename provided by your trading parter is preserved when the file is saved.
\n \n \n \n DISABLED
(default value): when Transfer Family saves the file, the filename is adjusted, as\n described in File names and locations .
\n \n "
+ }
+ },
+ "EnforceMessageSigning": {
+ "target": "com.amazonaws.transfer#EnforceMessageSigningType",
+ "traits": {
+ "smithy.api#documentation": "\n Determines whether or not unsigned messages from your trading partners will be accepted.\n
\n "
+ }
}
},
"traits": {
diff --git a/examples/examples/iot/Cargo.toml b/examples/examples/iot/Cargo.toml
index 2622052de3d3..99ce5228c5de 100644
--- a/examples/examples/iot/Cargo.toml
+++ b/examples/examples/iot/Cargo.toml
@@ -8,7 +8,7 @@ publish = false
[dependencies]
aws-config= { version = "1.5.11", path = "../../../sdk/aws-config", features = ["behavior-version-latest"] }
-aws-sdk-iot= { version = "1.58.0", path = "../../../sdk/iot" }
+aws-sdk-iot= { version = "1.59.0", path = "../../../sdk/iot" }
aws-types= { version = "1.3.3", path = "../../../sdk/aws-types" }
[dependencies.tokio]
diff --git a/sdk/amplify/Cargo.toml b/sdk/amplify/Cargo.toml
index 19572e0be147..fd8877e12d3f 100644
--- a/sdk/amplify/Cargo.toml
+++ b/sdk/amplify/Cargo.toml
@@ -1,7 +1,7 @@
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
[package]
name = "aws-sdk-amplify"
-version = "1.55.0"
+version = "1.56.0"
authors = ["AWS Rust SDK Team ", "Russell Cohen "]
description = "AWS SDK for AWS Amplify"
edition = "2021"
diff --git a/sdk/amplify/README.md b/sdk/amplify/README.md
index 14d7050bda41..b2d287d5e6d4 100644
--- a/sdk/amplify/README.md
+++ b/sdk/amplify/README.md
@@ -14,7 +14,7 @@ your project, add the following to your **Cargo.toml** file:
```toml
[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-aws-sdk-amplify = "1.55.0"
+aws-sdk-amplify = "1.56.0"
tokio = { version = "1", features = ["full"] }
```
diff --git a/sdk/amplify/src/lib.rs b/sdk/amplify/src/lib.rs
index 08aff4d2108c..981fa592981f 100644
--- a/sdk/amplify/src/lib.rs
+++ b/sdk/amplify/src/lib.rs
@@ -31,7 +31,7 @@
//! ```toml
//! [dependencies]
//! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-//! aws-sdk-amplify = "1.55.0"
+//! aws-sdk-amplify = "1.56.0"
//! tokio = { version = "1", features = ["full"] }
//! ```
//!
diff --git a/sdk/amplify/src/protocol_serde.rs b/sdk/amplify/src/protocol_serde.rs
index 73d099ac3964..4ff4ce8421f6 100644
--- a/sdk/amplify/src/protocol_serde.rs
+++ b/sdk/amplify/src/protocol_serde.rs
@@ -213,6 +213,8 @@ pub(crate) mod shape_steps;
pub(crate) mod shape_sub_domains;
+pub(crate) mod shape_waf_configuration;
+
pub(crate) mod shape_step;
pub(crate) mod shape_sub_domain;
diff --git a/sdk/amplify/src/protocol_serde/shape_app.rs b/sdk/amplify/src/protocol_serde/shape_app.rs
index 650b825b287a..3eac058c719e 100644
--- a/sdk/amplify/src/protocol_serde/shape_app.rs
+++ b/sdk/amplify/src/protocol_serde/shape_app.rs
@@ -151,6 +151,15 @@ where
"cacheConfig" => {
builder = builder.set_cache_config(crate::protocol_serde::shape_cache_config::de_cache_config(tokens)?);
}
+ "webhookCreateTime" => {
+ builder = builder.set_webhook_create_time(::aws_smithy_json::deserialize::token::expect_timestamp_or_null(
+ tokens.next(),
+ ::aws_smithy_types::date_time::Format::EpochSeconds,
+ )?);
+ }
+ "wafConfiguration" => {
+ builder = builder.set_waf_configuration(crate::protocol_serde::shape_waf_configuration::de_waf_configuration(tokens)?);
+ }
_ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
},
other => {
diff --git a/sdk/amplify/src/protocol_serde/shape_waf_configuration.rs b/sdk/amplify/src/protocol_serde/shape_waf_configuration.rs
new file mode 100644
index 000000000000..50f9ea8b8ab7
--- /dev/null
+++ b/sdk/amplify/src/protocol_serde/shape_waf_configuration.rs
@@ -0,0 +1,54 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+pub(crate) fn de_waf_configuration<'a, I>(
+ tokens: &mut ::std::iter::Peekable,
+) -> Result, ::aws_smithy_json::deserialize::error::DeserializeError>
+where
+ I: Iterator- , ::aws_smithy_json::deserialize::error::DeserializeError>>,
+{
+ match tokens.next().transpose()? {
+ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
+ Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
+ #[allow(unused_mut)]
+ let mut builder = crate::types::builders::WafConfigurationBuilder::default();
+ loop {
+ match tokens.next().transpose()? {
+ Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
+ Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
+ "webAclArn" => {
+ builder = builder.set_web_acl_arn(
+ ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
+ .map(|s| s.to_unescaped().map(|u| u.into_owned()))
+ .transpose()?,
+ );
+ }
+ "wafStatus" => {
+ builder = builder.set_waf_status(
+ ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
+ .map(|s| s.to_unescaped().map(|u| crate::types::WafStatus::from(u.as_ref())))
+ .transpose()?,
+ );
+ }
+ "statusReason" => {
+ builder = builder.set_status_reason(
+ ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
+ .map(|s| s.to_unescaped().map(|u| u.into_owned()))
+ .transpose()?,
+ );
+ }
+ _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
+ },
+ other => {
+ return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
+ "expected object key or end object, found: {:?}",
+ other
+ )))
+ }
+ }
+ }
+ Ok(Some(builder.build()))
+ }
+ _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
+ "expected start object or null",
+ )),
+ }
+}
diff --git a/sdk/amplify/src/types.rs b/sdk/amplify/src/types.rs
index bdbef60b31be..4d854933fd7a 100644
--- a/sdk/amplify/src/types.rs
+++ b/sdk/amplify/src/types.rs
@@ -25,6 +25,10 @@ pub use crate::types::_stage::Stage;
pub use crate::types::_app::App;
+pub use crate::types::_waf_configuration::WafConfiguration;
+
+pub use crate::types::_waf_status::WafStatus;
+
pub use crate::types::_cache_config::CacheConfig;
pub use crate::types::_cache_config_type::CacheConfigType;
@@ -109,6 +113,10 @@ mod _sub_domain_setting;
mod _update_status;
+mod _waf_configuration;
+
+mod _waf_status;
+
mod _webhook;
/// Builders
diff --git a/sdk/amplify/src/types/_app.rs b/sdk/amplify/src/types/_app.rs
index c527334977f7..57625e92c8d1 100644
--- a/sdk/amplify/src/types/_app.rs
+++ b/sdk/amplify/src/types/_app.rs
@@ -19,9 +19,9 @@ pub struct App {
///
The platform for the Amplify app. For a static app, set the platform type to WEB
. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE
. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC
.
/// If you are deploying an SSG only app with Next.js 14 or later, you must use the platform type WEB_COMPUTE
.
pub platform: crate::types::Platform,
- /// Creates a date and time for the Amplify app.
+ /// A timestamp of when Amplify created the application.
pub create_time: ::aws_smithy_types::DateTime,
- /// Updates the date and time for the Amplify app.
+ /// A timestamp of when Amplify updated the application.
pub update_time: ::aws_smithy_types::DateTime,
/// The AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) of the Amplify app.
pub iam_service_role_arn: ::std::option::Option<::std::string::String>,
@@ -59,6 +59,10 @@ pub struct App {
pub repository_clone_method: ::std::option::Option,
/// The cache configuration for the Amplify app. If you don't specify the cache configuration type
, Amplify uses the default AMPLIFY_MANAGED
setting.
pub cache_config: ::std::option::Option,
+ /// A timestamp of when Amplify created the webhook in your Git repository.
+ pub webhook_create_time: ::std::option::Option<::aws_smithy_types::DateTime>,
+ /// Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF.
+ pub waf_configuration: ::std::option::Option,
}
impl App {
/// The unique ID of the Amplify app.
@@ -95,11 +99,11 @@ impl App {
pub fn platform(&self) -> &crate::types::Platform {
&self.platform
}
- /// Creates a date and time for the Amplify app.
+ /// A timestamp of when Amplify created the application.
pub fn create_time(&self) -> &::aws_smithy_types::DateTime {
&self.create_time
}
- /// Updates the date and time for the Amplify app.
+ /// A timestamp of when Amplify updated the application.
pub fn update_time(&self) -> &::aws_smithy_types::DateTime {
&self.update_time
}
@@ -176,6 +180,14 @@ impl App {
pub fn cache_config(&self) -> ::std::option::Option<&crate::types::CacheConfig> {
self.cache_config.as_ref()
}
+ /// A timestamp of when Amplify created the webhook in your Git repository.
+ pub fn webhook_create_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
+ self.webhook_create_time.as_ref()
+ }
+ /// Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF.
+ pub fn waf_configuration(&self) -> ::std::option::Option<&crate::types::WafConfiguration> {
+ self.waf_configuration.as_ref()
+ }
}
impl ::std::fmt::Debug for App {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
@@ -205,6 +217,8 @@ impl ::std::fmt::Debug for App {
formatter.field("auto_branch_creation_config", &self.auto_branch_creation_config);
formatter.field("repository_clone_method", &self.repository_clone_method);
formatter.field("cache_config", &self.cache_config);
+ formatter.field("webhook_create_time", &self.webhook_create_time);
+ formatter.field("waf_configuration", &self.waf_configuration);
formatter.finish()
}
}
@@ -244,6 +258,8 @@ pub struct AppBuilder {
pub(crate) auto_branch_creation_config: ::std::option::Option,
pub(crate) repository_clone_method: ::std::option::Option,
pub(crate) cache_config: ::std::option::Option,
+ pub(crate) webhook_create_time: ::std::option::Option<::aws_smithy_types::DateTime>,
+ pub(crate) waf_configuration: ::std::option::Option,
}
impl AppBuilder {
/// The unique ID of the Amplify app.
@@ -359,33 +375,33 @@ impl AppBuilder {
pub fn get_platform(&self) -> &::std::option::Option {
&self.platform
}
- /// Creates a date and time for the Amplify app.
+ /// A timestamp of when Amplify created the application.
/// This field is required.
pub fn create_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.create_time = ::std::option::Option::Some(input);
self
}
- /// Creates a date and time for the Amplify app.
+ /// A timestamp of when Amplify created the application.
pub fn set_create_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.create_time = input;
self
}
- /// Creates a date and time for the Amplify app.
+ /// A timestamp of when Amplify created the application.
pub fn get_create_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.create_time
}
- /// Updates the date and time for the Amplify app.
+ /// A timestamp of when Amplify updated the application.
/// This field is required.
pub fn update_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.update_time = ::std::option::Option::Some(input);
self
}
- /// Updates the date and time for the Amplify app.
+ /// A timestamp of when Amplify updated the application.
pub fn set_update_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.update_time = input;
self
}
- /// Updates the date and time for the Amplify app.
+ /// A timestamp of when Amplify updated the application.
pub fn get_update_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.update_time
}
@@ -653,6 +669,34 @@ impl AppBuilder {
pub fn get_cache_config(&self) -> &::std::option::Option {
&self.cache_config
}
+ /// A timestamp of when Amplify created the webhook in your Git repository.
+ pub fn webhook_create_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
+ self.webhook_create_time = ::std::option::Option::Some(input);
+ self
+ }
+ /// A timestamp of when Amplify created the webhook in your Git repository.
+ pub fn set_webhook_create_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
+ self.webhook_create_time = input;
+ self
+ }
+ /// A timestamp of when Amplify created the webhook in your Git repository.
+ pub fn get_webhook_create_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
+ &self.webhook_create_time
+ }
+ /// Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF.
+ pub fn waf_configuration(mut self, input: crate::types::WafConfiguration) -> Self {
+ self.waf_configuration = ::std::option::Option::Some(input);
+ self
+ }
+ /// Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF.
+ pub fn set_waf_configuration(mut self, input: ::std::option::Option) -> Self {
+ self.waf_configuration = input;
+ self
+ }
+ /// Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF.
+ pub fn get_waf_configuration(&self) -> &::std::option::Option {
+ &self.waf_configuration
+ }
/// Consumes the builder and constructs a [`App`](crate::types::App).
/// This method will fail if any of the following fields are not set:
/// - [`app_id`](crate::types::builders::AppBuilder::app_id)
@@ -751,6 +795,8 @@ impl AppBuilder {
auto_branch_creation_config: self.auto_branch_creation_config,
repository_clone_method: self.repository_clone_method,
cache_config: self.cache_config,
+ webhook_create_time: self.webhook_create_time,
+ waf_configuration: self.waf_configuration,
})
}
}
@@ -782,6 +828,8 @@ impl ::std::fmt::Debug for AppBuilder {
formatter.field("auto_branch_creation_config", &self.auto_branch_creation_config);
formatter.field("repository_clone_method", &self.repository_clone_method);
formatter.field("cache_config", &self.cache_config);
+ formatter.field("webhook_create_time", &self.webhook_create_time);
+ formatter.field("waf_configuration", &self.waf_configuration);
formatter.finish()
}
}
diff --git a/sdk/amplify/src/types/_branch.rs b/sdk/amplify/src/types/_branch.rs
index aaf4ffeef38f..e77c51d1d6c6 100644
--- a/sdk/amplify/src/types/_branch.rs
+++ b/sdk/amplify/src/types/_branch.rs
@@ -18,9 +18,9 @@ pub struct Branch {
pub display_name: ::std::string::String,
/// Enables notifications for a branch that is part of an Amplify app.
pub enable_notification: bool,
- /// The creation date and time for a branch that is part of an Amplify app.
+ /// A timestamp of when Amplify created the branch.
pub create_time: ::aws_smithy_types::DateTime,
- /// 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.
pub update_time: ::aws_smithy_types::DateTime,
/// The environment variables specific to a branch of an Amplify app.
pub environment_variables: ::std::collections::HashMap<::std::string::String, ::std::string::String>,
@@ -97,11 +97,11 @@ impl Branch {
pub fn enable_notification(&self) -> bool {
self.enable_notification
}
- /// The creation date and time for a branch that is part of an Amplify app.
+ /// A timestamp of when Amplify created the branch.
pub fn create_time(&self) -> &::aws_smithy_types::DateTime {
&self.create_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.
pub fn update_time(&self) -> &::aws_smithy_types::DateTime {
&self.update_time
}
@@ -377,33 +377,33 @@ impl BranchBuilder {
pub fn get_enable_notification(&self) -> &::std::option::Option {
&self.enable_notification
}
- /// The creation date and time for a branch that is part of an Amplify app.
+ /// A timestamp of when Amplify created the branch.
/// This field is required.
pub fn create_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.create_time = ::std::option::Option::Some(input);
self
}
- /// The creation date and time for a branch that is part of an Amplify app.
+ /// A timestamp of when Amplify created the branch.
pub fn set_create_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.create_time = input;
self
}
- /// The creation date and time for a branch that is part of an Amplify app.
+ /// A timestamp of when Amplify created the branch.
pub fn get_create_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.create_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.
/// This field is required.
pub fn update_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.update_time = ::std::option::Option::Some(input);
self
}
- /// 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.
pub fn set_update_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.update_time = input;
self
}
- /// 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.
pub fn get_update_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.update_time
}
diff --git a/sdk/amplify/src/types/_job_status.rs b/sdk/amplify/src/types/_job_status.rs
index 5fa1fdc90805..88af60b27aa2 100644
--- a/sdk/amplify/src/types/_job_status.rs
+++ b/sdk/amplify/src/types/_job_status.rs
@@ -14,6 +14,7 @@
/// match jobstatus {
/// JobStatus::Cancelled => { /* ... */ },
/// JobStatus::Cancelling => { /* ... */ },
+/// JobStatus::Created => { /* ... */ },
/// JobStatus::Failed => { /* ... */ },
/// JobStatus::Pending => { /* ... */ },
/// JobStatus::Provisioning => { /* ... */ },
@@ -52,6 +53,8 @@ pub enum JobStatus {
#[allow(missing_docs)] // documentation missing in model
Cancelling,
#[allow(missing_docs)] // documentation missing in model
+ Created,
+ #[allow(missing_docs)] // documentation missing in model
Failed,
#[allow(missing_docs)] // documentation missing in model
Pending,
@@ -70,6 +73,7 @@ impl ::std::convert::From<&str> for JobStatus {
match s {
"CANCELLED" => JobStatus::Cancelled,
"CANCELLING" => JobStatus::Cancelling,
+ "CREATED" => JobStatus::Created,
"FAILED" => JobStatus::Failed,
"PENDING" => JobStatus::Pending,
"PROVISIONING" => JobStatus::Provisioning,
@@ -92,6 +96,7 @@ impl JobStatus {
match self {
JobStatus::Cancelled => "CANCELLED",
JobStatus::Cancelling => "CANCELLING",
+ JobStatus::Created => "CREATED",
JobStatus::Failed => "FAILED",
JobStatus::Pending => "PENDING",
JobStatus::Provisioning => "PROVISIONING",
@@ -102,7 +107,16 @@ impl JobStatus {
}
/// Returns all the `&str` representations of the enum members.
pub const fn values() -> &'static [&'static str] {
- &["CANCELLED", "CANCELLING", "FAILED", "PENDING", "PROVISIONING", "RUNNING", "SUCCEED"]
+ &[
+ "CANCELLED",
+ "CANCELLING",
+ "CREATED",
+ "FAILED",
+ "PENDING",
+ "PROVISIONING",
+ "RUNNING",
+ "SUCCEED",
+ ]
}
}
impl ::std::convert::AsRef for JobStatus {
@@ -127,6 +141,7 @@ impl ::std::fmt::Display for JobStatus {
match self {
JobStatus::Cancelled => write!(f, "CANCELLED"),
JobStatus::Cancelling => write!(f, "CANCELLING"),
+ JobStatus::Created => write!(f, "CREATED"),
JobStatus::Failed => write!(f, "FAILED"),
JobStatus::Pending => write!(f, "PENDING"),
JobStatus::Provisioning => write!(f, "PROVISIONING"),
diff --git a/sdk/amplify/src/types/_waf_configuration.rs b/sdk/amplify/src/types/_waf_configuration.rs
new file mode 100644
index 000000000000..295f45111152
--- /dev/null
+++ b/sdk/amplify/src/types/_waf_configuration.rs
@@ -0,0 +1,94 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+
+/// 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 .
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+pub struct WafConfiguration {
+ /// The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
+ pub web_acl_arn: ::std::option::Option<::std::string::String>,
+ /// The status of the process to associate or disassociate a web ACL to an Amplify app.
+ pub waf_status: ::std::option::Option,
+ /// The reason for the current status of the Firewall configuration.
+ pub status_reason: ::std::option::Option<::std::string::String>,
+}
+impl WafConfiguration {
+ /// The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
+ pub fn web_acl_arn(&self) -> ::std::option::Option<&str> {
+ self.web_acl_arn.as_deref()
+ }
+ /// The status of the process to associate or disassociate a web ACL to an Amplify app.
+ pub fn waf_status(&self) -> ::std::option::Option<&crate::types::WafStatus> {
+ self.waf_status.as_ref()
+ }
+ /// The reason for the current status of the Firewall configuration.
+ pub fn status_reason(&self) -> ::std::option::Option<&str> {
+ self.status_reason.as_deref()
+ }
+}
+impl WafConfiguration {
+ /// Creates a new builder-style object to manufacture [`WafConfiguration`](crate::types::WafConfiguration).
+ pub fn builder() -> crate::types::builders::WafConfigurationBuilder {
+ crate::types::builders::WafConfigurationBuilder::default()
+ }
+}
+
+/// A builder for [`WafConfiguration`](crate::types::WafConfiguration).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct WafConfigurationBuilder {
+ pub(crate) web_acl_arn: ::std::option::Option<::std::string::String>,
+ pub(crate) waf_status: ::std::option::Option,
+ pub(crate) status_reason: ::std::option::Option<::std::string::String>,
+}
+impl WafConfigurationBuilder {
+ /// The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
+ pub fn web_acl_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.web_acl_arn = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
+ pub fn set_web_acl_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.web_acl_arn = input;
+ self
+ }
+ /// The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
+ pub fn get_web_acl_arn(&self) -> &::std::option::Option<::std::string::String> {
+ &self.web_acl_arn
+ }
+ /// The status of the process to associate or disassociate a web ACL to an Amplify app.
+ pub fn waf_status(mut self, input: crate::types::WafStatus) -> Self {
+ self.waf_status = ::std::option::Option::Some(input);
+ self
+ }
+ /// The status of the process to associate or disassociate a web ACL to an Amplify app.
+ pub fn set_waf_status(mut self, input: ::std::option::Option) -> Self {
+ self.waf_status = input;
+ self
+ }
+ /// The status of the process to associate or disassociate a web ACL to an Amplify app.
+ pub fn get_waf_status(&self) -> &::std::option::Option {
+ &self.waf_status
+ }
+ /// The reason for the current status of the Firewall configuration.
+ pub fn status_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.status_reason = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The reason for the current status of the Firewall configuration.
+ pub fn set_status_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.status_reason = input;
+ self
+ }
+ /// The reason for the current status of the Firewall configuration.
+ pub fn get_status_reason(&self) -> &::std::option::Option<::std::string::String> {
+ &self.status_reason
+ }
+ /// Consumes the builder and constructs a [`WafConfiguration`](crate::types::WafConfiguration).
+ pub fn build(self) -> crate::types::WafConfiguration {
+ crate::types::WafConfiguration {
+ web_acl_arn: self.web_acl_arn,
+ waf_status: self.waf_status,
+ status_reason: self.status_reason,
+ }
+ }
+}
diff --git a/sdk/amplify/src/types/_waf_status.rs b/sdk/amplify/src/types/_waf_status.rs
new file mode 100644
index 000000000000..da620ddb279b
--- /dev/null
+++ b/sdk/amplify/src/types/_waf_status.rs
@@ -0,0 +1,132 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+
+/// When writing a match expression against `WafStatus`, it is important to ensure
+/// your code is forward-compatible. That is, if a match arm handles a case for a
+/// feature that is supported by the service but has not been represented as an enum
+/// variant in a current version of SDK, your code should continue to work when you
+/// upgrade SDK to a future version in which the enum does include a variant for that
+/// feature.
+///
+/// Here is an example of how you can make a match expression forward-compatible:
+///
+/// ```text
+/// # let wafstatus = unimplemented!();
+/// match wafstatus {
+/// WafStatus::Associating => { /* ... */ },
+/// WafStatus::AssociationFailed => { /* ... */ },
+/// WafStatus::AssociationSuccess => { /* ... */ },
+/// WafStatus::Disassociating => { /* ... */ },
+/// WafStatus::DisassociationFailed => { /* ... */ },
+/// other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
+/// _ => { /* ... */ },
+/// }
+/// ```
+/// The above code demonstrates that when `wafstatus` represents
+/// `NewFeature`, the execution path will lead to the second last match arm,
+/// even though the enum does not contain a variant `WafStatus::NewFeature`
+/// in the current version of SDK. The reason is that the variable `other`,
+/// created by the `@` operator, is bound to
+/// `WafStatus::Unknown(UnknownVariantValue("NewFeature".to_owned()))`
+/// and calling `as_str` on it yields `"NewFeature"`.
+/// This match expression is forward-compatible when executed with a newer
+/// version of SDK where the variant `WafStatus::NewFeature` is defined.
+/// Specifically, when `wafstatus` represents `NewFeature`,
+/// the execution path will hit the second last match arm as before by virtue of
+/// calling `as_str` on `WafStatus::NewFeature` also yielding `"NewFeature"`.
+///
+/// Explicitly matching on the `Unknown` variant should
+/// be avoided for two reasons:
+/// - The inner data `UnknownVariantValue` is opaque, and no further information can be extracted.
+/// - It might inadvertently shadow other intended match arms.
+///
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(
+ ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
+)]
+pub enum WafStatus {
+ #[allow(missing_docs)] // documentation missing in model
+ Associating,
+ #[allow(missing_docs)] // documentation missing in model
+ AssociationFailed,
+ #[allow(missing_docs)] // documentation missing in model
+ AssociationSuccess,
+ #[allow(missing_docs)] // documentation missing in model
+ Disassociating,
+ #[allow(missing_docs)] // documentation missing in model
+ DisassociationFailed,
+ /// `Unknown` contains new variants that have been added since this code was generated.
+ #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
+ Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
+}
+impl ::std::convert::From<&str> for WafStatus {
+ fn from(s: &str) -> Self {
+ match s {
+ "ASSOCIATING" => WafStatus::Associating,
+ "ASSOCIATION_FAILED" => WafStatus::AssociationFailed,
+ "ASSOCIATION_SUCCESS" => WafStatus::AssociationSuccess,
+ "DISASSOCIATING" => WafStatus::Disassociating,
+ "DISASSOCIATION_FAILED" => WafStatus::DisassociationFailed,
+ other => WafStatus::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
+ }
+ }
+}
+impl ::std::str::FromStr for WafStatus {
+ type Err = ::std::convert::Infallible;
+
+ fn from_str(s: &str) -> ::std::result::Result::Err> {
+ ::std::result::Result::Ok(WafStatus::from(s))
+ }
+}
+impl WafStatus {
+ /// Returns the `&str` value of the enum member.
+ pub fn as_str(&self) -> &str {
+ match self {
+ WafStatus::Associating => "ASSOCIATING",
+ WafStatus::AssociationFailed => "ASSOCIATION_FAILED",
+ WafStatus::AssociationSuccess => "ASSOCIATION_SUCCESS",
+ WafStatus::Disassociating => "DISASSOCIATING",
+ WafStatus::DisassociationFailed => "DISASSOCIATION_FAILED",
+ WafStatus::Unknown(value) => value.as_str(),
+ }
+ }
+ /// Returns all the `&str` representations of the enum members.
+ pub const fn values() -> &'static [&'static str] {
+ &[
+ "ASSOCIATING",
+ "ASSOCIATION_FAILED",
+ "ASSOCIATION_SUCCESS",
+ "DISASSOCIATING",
+ "DISASSOCIATION_FAILED",
+ ]
+ }
+}
+impl ::std::convert::AsRef for WafStatus {
+ fn as_ref(&self) -> &str {
+ self.as_str()
+ }
+}
+impl WafStatus {
+ /// Parses the enum value while disallowing unknown variants.
+ ///
+ /// Unknown variants will result in an error.
+ pub fn try_parse(value: &str) -> ::std::result::Result {
+ match Self::from(value) {
+ #[allow(deprecated)]
+ Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
+ known => Ok(known),
+ }
+ }
+}
+impl ::std::fmt::Display for WafStatus {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+ match self {
+ WafStatus::Associating => write!(f, "ASSOCIATING"),
+ WafStatus::AssociationFailed => write!(f, "ASSOCIATION_FAILED"),
+ WafStatus::AssociationSuccess => write!(f, "ASSOCIATION_SUCCESS"),
+ WafStatus::Disassociating => write!(f, "DISASSOCIATING"),
+ WafStatus::DisassociationFailed => write!(f, "DISASSOCIATION_FAILED"),
+ WafStatus::Unknown(value) => write!(f, "{}", value),
+ }
+ }
+}
diff --git a/sdk/amplify/src/types/_webhook.rs b/sdk/amplify/src/types/_webhook.rs
index 46a21ee8f153..8ebee83c5a5b 100644
--- a/sdk/amplify/src/types/_webhook.rs
+++ b/sdk/amplify/src/types/_webhook.rs
@@ -14,9 +14,9 @@ pub struct Webhook {
pub branch_name: ::std::string::String,
/// The description for a webhook.
pub description: ::std::string::String,
- /// The create date and time for a webhook.
+ /// A timestamp of when Amplify created the webhook in your Git repository.
pub create_time: ::aws_smithy_types::DateTime,
- /// Updates the date and time for a webhook.
+ /// A timestamp of when Amplify updated the webhook in your Git repository.
pub update_time: ::aws_smithy_types::DateTime,
}
impl Webhook {
@@ -45,11 +45,11 @@ impl Webhook {
use std::ops::Deref;
self.description.deref()
}
- /// The create date and time for a webhook.
+ /// A timestamp of when Amplify created the webhook in your Git repository.
pub fn create_time(&self) -> &::aws_smithy_types::DateTime {
&self.create_time
}
- /// Updates the date and time for a webhook.
+ /// A timestamp of when Amplify updated the webhook in your Git repository.
pub fn update_time(&self) -> &::aws_smithy_types::DateTime {
&self.update_time
}
@@ -149,33 +149,33 @@ impl WebhookBuilder {
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
- /// The create date and time for a webhook.
+ /// A timestamp of when Amplify created the webhook in your Git repository.
/// This field is required.
pub fn create_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.create_time = ::std::option::Option::Some(input);
self
}
- /// The create date and time for a webhook.
+ /// A timestamp of when Amplify created the webhook in your Git repository.
pub fn set_create_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.create_time = input;
self
}
- /// The create date and time for a webhook.
+ /// A timestamp of when Amplify created the webhook in your Git repository.
pub fn get_create_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.create_time
}
- /// Updates the date and time for a webhook.
+ /// A timestamp of when Amplify updated the webhook in your Git repository.
/// This field is required.
pub fn update_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.update_time = ::std::option::Option::Some(input);
self
}
- /// Updates the date and time for a webhook.
+ /// A timestamp of when Amplify updated the webhook in your Git repository.
pub fn set_update_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.update_time = input;
self
}
- /// Updates the date and time for a webhook.
+ /// A timestamp of when Amplify updated the webhook in your Git repository.
pub fn get_update_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.update_time
}
diff --git a/sdk/amplify/src/types/builders.rs b/sdk/amplify/src/types/builders.rs
index 0c7947e2ee8e..9b6295bb3ec0 100644
--- a/sdk/amplify/src/types/builders.rs
+++ b/sdk/amplify/src/types/builders.rs
@@ -17,6 +17,8 @@ pub use crate::types::_backend::BackendBuilder;
pub use crate::types::_app::AppBuilder;
+pub use crate::types::_waf_configuration::WafConfigurationBuilder;
+
pub use crate::types::_cache_config::CacheConfigBuilder;
pub use crate::types::_auto_branch_creation_config::AutoBranchCreationConfigBuilder;
diff --git a/sdk/budgets/Cargo.toml b/sdk/budgets/Cargo.toml
index d30066ccd7fb..3383531ef8c4 100644
--- a/sdk/budgets/Cargo.toml
+++ b/sdk/budgets/Cargo.toml
@@ -1,7 +1,7 @@
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
[package]
name = "aws-sdk-budgets"
-version = "1.52.0"
+version = "1.53.0"
authors = ["AWS Rust SDK Team ", "Russell Cohen "]
description = "AWS SDK for AWS Budgets"
edition = "2021"
diff --git a/sdk/budgets/README.md b/sdk/budgets/README.md
index 2fc10c306102..8e390b2b6b61 100644
--- a/sdk/budgets/README.md
+++ b/sdk/budgets/README.md
@@ -33,7 +33,7 @@ your project, add the following to your **Cargo.toml** file:
```toml
[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-aws-sdk-budgets = "1.52.0"
+aws-sdk-budgets = "1.53.0"
tokio = { version = "1", features = ["full"] }
```
diff --git a/sdk/budgets/src/config/endpoint.rs b/sdk/budgets/src/config/endpoint.rs
index 31ffb4982481..26d6c975c5ba 100644
--- a/sdk/budgets/src/config/endpoint.rs
+++ b/sdk/budgets/src/config/endpoint.rs
@@ -326,9 +326,39 @@ mod test {
);
}
- /// For region us-iso-east-1 with FIPS enabled and DualStack enabled
+ /// For region aws-iso-global with FIPS disabled and DualStack disabled
#[test]
fn test_15() {
+ let params = crate::config::endpoint::Params::builder()
+ .region("aws-iso-global".to_string())
+ .use_fips(false)
+ .use_dual_stack(false)
+ .build()
+ .expect("invalid params");
+ let resolver = crate::config::endpoint::DefaultResolver::new();
+ let endpoint = resolver.resolve_endpoint(¶ms);
+ let endpoint = endpoint.expect("Expected valid endpoint: https://budgets.c2s.ic.gov");
+ assert_eq!(
+ endpoint,
+ ::aws_smithy_types::endpoint::Endpoint::builder()
+ .url("https://budgets.c2s.ic.gov")
+ .property(
+ "authSchemes",
+ vec![::aws_smithy_types::Document::from({
+ let mut out = ::std::collections::HashMap::::new();
+ out.insert("name".to_string(), "sigv4".to_string().into());
+ out.insert("signingName".to_string(), "budgets".to_string().into());
+ out.insert("signingRegion".to_string(), "us-iso-east-1".to_string().into());
+ out
+ })]
+ )
+ .build()
+ );
+ }
+
+ /// For region us-iso-east-1 with FIPS enabled and DualStack enabled
+ #[test]
+ fn test_16() {
let params = crate::config::endpoint::Params::builder()
.region("us-iso-east-1".to_string())
.use_fips(true)
@@ -346,7 +376,7 @@ mod test {
/// For region us-iso-east-1 with FIPS enabled and DualStack disabled
#[test]
- fn test_16() {
+ fn test_17() {
let params = crate::config::endpoint::Params::builder()
.region("us-iso-east-1".to_string())
.use_fips(true)
@@ -366,7 +396,7 @@ mod test {
/// For region us-iso-east-1 with FIPS disabled and DualStack enabled
#[test]
- fn test_17() {
+ fn test_18() {
let params = crate::config::endpoint::Params::builder()
.region("us-iso-east-1".to_string())
.use_fips(false)
@@ -381,7 +411,7 @@ mod test {
/// For region us-iso-east-1 with FIPS disabled and DualStack disabled
#[test]
- fn test_18() {
+ fn test_19() {
let params = crate::config::endpoint::Params::builder()
.region("us-iso-east-1".to_string())
.use_fips(false)
@@ -390,18 +420,58 @@ mod test {
.expect("invalid params");
let resolver = crate::config::endpoint::DefaultResolver::new();
let endpoint = resolver.resolve_endpoint(¶ms);
- let endpoint = endpoint.expect("Expected valid endpoint: https://budgets.us-iso-east-1.c2s.ic.gov");
+ let endpoint = endpoint.expect("Expected valid endpoint: https://budgets.c2s.ic.gov");
+ assert_eq!(
+ endpoint,
+ ::aws_smithy_types::endpoint::Endpoint::builder()
+ .url("https://budgets.c2s.ic.gov")
+ .property(
+ "authSchemes",
+ vec![::aws_smithy_types::Document::from({
+ let mut out = ::std::collections::HashMap::::new();
+ out.insert("name".to_string(), "sigv4".to_string().into());
+ out.insert("signingName".to_string(), "budgets".to_string().into());
+ out.insert("signingRegion".to_string(), "us-iso-east-1".to_string().into());
+ out
+ })]
+ )
+ .build()
+ );
+ }
+
+ /// For region aws-iso-b-global with FIPS disabled and DualStack disabled
+ #[test]
+ fn test_20() {
+ let params = crate::config::endpoint::Params::builder()
+ .region("aws-iso-b-global".to_string())
+ .use_fips(false)
+ .use_dual_stack(false)
+ .build()
+ .expect("invalid params");
+ let resolver = crate::config::endpoint::DefaultResolver::new();
+ let endpoint = resolver.resolve_endpoint(¶ms);
+ let endpoint = endpoint.expect("Expected valid endpoint: https://budgets.global.sc2s.sgov.gov");
assert_eq!(
endpoint,
::aws_smithy_types::endpoint::Endpoint::builder()
- .url("https://budgets.us-iso-east-1.c2s.ic.gov")
+ .url("https://budgets.global.sc2s.sgov.gov")
+ .property(
+ "authSchemes",
+ vec![::aws_smithy_types::Document::from({
+ let mut out = ::std::collections::HashMap::::new();
+ out.insert("name".to_string(), "sigv4".to_string().into());
+ out.insert("signingName".to_string(), "budgets".to_string().into());
+ out.insert("signingRegion".to_string(), "us-isob-east-1".to_string().into());
+ out
+ })]
+ )
.build()
);
}
/// For region us-isob-east-1 with FIPS enabled and DualStack enabled
#[test]
- fn test_19() {
+ fn test_21() {
let params = crate::config::endpoint::Params::builder()
.region("us-isob-east-1".to_string())
.use_fips(true)
@@ -419,7 +489,7 @@ mod test {
/// For region us-isob-east-1 with FIPS enabled and DualStack disabled
#[test]
- fn test_20() {
+ fn test_22() {
let params = crate::config::endpoint::Params::builder()
.region("us-isob-east-1".to_string())
.use_fips(true)
@@ -439,7 +509,7 @@ mod test {
/// For region us-isob-east-1 with FIPS disabled and DualStack enabled
#[test]
- fn test_21() {
+ fn test_23() {
let params = crate::config::endpoint::Params::builder()
.region("us-isob-east-1".to_string())
.use_fips(false)
@@ -454,7 +524,7 @@ mod test {
/// For region us-isob-east-1 with FIPS disabled and DualStack disabled
#[test]
- fn test_22() {
+ fn test_24() {
let params = crate::config::endpoint::Params::builder()
.region("us-isob-east-1".to_string())
.use_fips(false)
@@ -463,18 +533,28 @@ mod test {
.expect("invalid params");
let resolver = crate::config::endpoint::DefaultResolver::new();
let endpoint = resolver.resolve_endpoint(¶ms);
- let endpoint = endpoint.expect("Expected valid endpoint: https://budgets.us-isob-east-1.sc2s.sgov.gov");
+ let endpoint = endpoint.expect("Expected valid endpoint: https://budgets.global.sc2s.sgov.gov");
assert_eq!(
endpoint,
::aws_smithy_types::endpoint::Endpoint::builder()
- .url("https://budgets.us-isob-east-1.sc2s.sgov.gov")
+ .url("https://budgets.global.sc2s.sgov.gov")
+ .property(
+ "authSchemes",
+ vec![::aws_smithy_types::Document::from({
+ let mut out = ::std::collections::HashMap::::new();
+ out.insert("name".to_string(), "sigv4".to_string().into());
+ out.insert("signingName".to_string(), "budgets".to_string().into());
+ out.insert("signingRegion".to_string(), "us-isob-east-1".to_string().into());
+ out
+ })]
+ )
.build()
);
}
/// For region eu-isoe-west-1 with FIPS disabled and DualStack disabled
#[test]
- fn test_23() {
+ fn test_25() {
let params = crate::config::endpoint::Params::builder()
.region("eu-isoe-west-1".to_string())
.use_fips(false)
@@ -504,7 +584,7 @@ mod test {
/// For region us-isof-south-1 with FIPS disabled and DualStack disabled
#[test]
- fn test_24() {
+ fn test_26() {
let params = crate::config::endpoint::Params::builder()
.region("us-isof-south-1".to_string())
.use_fips(false)
@@ -534,7 +614,7 @@ mod test {
/// For custom endpoint with region set and fips disabled and dualstack disabled
#[test]
- fn test_25() {
+ fn test_27() {
let params = crate::config::endpoint::Params::builder()
.region("us-east-1".to_string())
.use_fips(false)
@@ -553,7 +633,7 @@ mod test {
/// For custom endpoint with region not set and fips disabled and dualstack disabled
#[test]
- fn test_26() {
+ fn test_28() {
let params = crate::config::endpoint::Params::builder()
.use_fips(false)
.use_dual_stack(false)
@@ -571,7 +651,7 @@ mod test {
/// For custom endpoint with fips enabled and dualstack disabled
#[test]
- fn test_27() {
+ fn test_29() {
let params = crate::config::endpoint::Params::builder()
.region("us-east-1".to_string())
.use_fips(true)
@@ -587,7 +667,7 @@ mod test {
/// For custom endpoint with fips disabled and dualstack enabled
#[test]
- fn test_28() {
+ fn test_30() {
let params = crate::config::endpoint::Params::builder()
.region("us-east-1".to_string())
.use_fips(false)
@@ -606,7 +686,7 @@ mod test {
/// Missing region
#[test]
- fn test_29() {
+ fn test_31() {
let params = crate::config::endpoint::Params::builder().build().expect("invalid params");
let resolver = crate::config::endpoint::DefaultResolver::new();
let endpoint = resolver.resolve_endpoint(¶ms);
diff --git a/sdk/budgets/src/config/endpoint/internals.rs b/sdk/budgets/src/config/endpoint/internals.rs
index fbcf767d35cf..c756731e11ef 100644
--- a/sdk/budgets/src/config/endpoint/internals.rs
+++ b/sdk/budgets/src/config/endpoint/internals.rs
@@ -75,6 +75,44 @@ pub(super) fn resolve_endpoint(
}
}
}
+ if (partition_result.name()) == ("aws-iso") {
+ if (*use_fips) == (false) {
+ if (*use_dual_stack) == (false) {
+ return Ok(::aws_smithy_types::endpoint::Endpoint::builder()
+ .url("https://budgets.c2s.ic.gov".to_string())
+ .property(
+ "authSchemes",
+ vec![::aws_smithy_types::Document::from({
+ let mut out = ::std::collections::HashMap::::new();
+ out.insert("name".to_string(), "sigv4".to_string().into());
+ out.insert("signingName".to_string(), "budgets".to_string().into());
+ out.insert("signingRegion".to_string(), "us-iso-east-1".to_string().into());
+ out
+ })],
+ )
+ .build());
+ }
+ }
+ }
+ if (partition_result.name()) == ("aws-iso-b") {
+ if (*use_fips) == (false) {
+ if (*use_dual_stack) == (false) {
+ return Ok(::aws_smithy_types::endpoint::Endpoint::builder()
+ .url("https://budgets.global.sc2s.sgov.gov".to_string())
+ .property(
+ "authSchemes",
+ vec![::aws_smithy_types::Document::from({
+ let mut out = ::std::collections::HashMap::::new();
+ out.insert("name".to_string(), "sigv4".to_string().into());
+ out.insert("signingName".to_string(), "budgets".to_string().into());
+ out.insert("signingRegion".to_string(), "us-isob-east-1".to_string().into());
+ out
+ })],
+ )
+ .build());
+ }
+ }
+ }
if (partition_result.name()) == ("aws-iso-e") {
if (*use_fips) == (false) {
if (*use_dual_stack) == (false) {
diff --git a/sdk/budgets/src/lib.rs b/sdk/budgets/src/lib.rs
index 3583b0f76dfe..29bcd57ef0a6 100644
--- a/sdk/budgets/src/lib.rs
+++ b/sdk/budgets/src/lib.rs
@@ -50,7 +50,7 @@
//! ```toml
//! [dependencies]
//! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-//! aws-sdk-budgets = "1.52.0"
+//! aws-sdk-budgets = "1.53.0"
//! tokio = { version = "1", features = ["full"] }
//! ```
//!
diff --git a/sdk/connect/Cargo.toml b/sdk/connect/Cargo.toml
index ae4031f5c1d7..5116e95535e1 100644
--- a/sdk/connect/Cargo.toml
+++ b/sdk/connect/Cargo.toml
@@ -1,7 +1,7 @@
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
[package]
name = "aws-sdk-connect"
-version = "1.81.0"
+version = "1.82.0"
authors = ["AWS Rust SDK Team ", "Russell Cohen "]
description = "AWS SDK for Amazon Connect Service"
edition = "2021"
diff --git a/sdk/connect/README.md b/sdk/connect/README.md
index be092790a79e..8d9ca538a1f5 100644
--- a/sdk/connect/README.md
+++ b/sdk/connect/README.md
@@ -23,7 +23,7 @@ your project, add the following to your **Cargo.toml** file:
```toml
[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-aws-sdk-connect = "1.81.0"
+aws-sdk-connect = "1.82.0"
tokio = { version = "1", features = ["full"] }
```
diff --git a/sdk/connect/src/client.rs b/sdk/connect/src/client.rs
index 084698c8b7dd..1c13dabb2d43 100644
--- a/sdk/connect/src/client.rs
+++ b/sdk/connect/src/client.rs
@@ -657,6 +657,8 @@ mod update_instance_attribute;
mod update_instance_storage_config;
+mod update_participant_authentication;
+
mod update_participant_role_config;
mod update_phone_number;
diff --git a/sdk/connect/src/client/start_chat_contact.rs b/sdk/connect/src/client/start_chat_contact.rs
index 2ee2ff0909d6..ca61ad8481a5 100644
--- a/sdk/connect/src/client/start_chat_contact.rs
+++ b/sdk/connect/src/client/start_chat_contact.rs
@@ -14,6 +14,7 @@ impl super::Client {
/// - [`persistent_chat(PersistentChat)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::persistent_chat) / [`set_persistent_chat(Option)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::set_persistent_chat): required: **false**Enable persistent chats. For more information about enabling persistent chat, and for example use cases and how to configure for them, see Enable persistent chat .
/// - [`related_contact_id(impl Into)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::related_contact_id) / [`set_related_contact_id(Option)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::set_related_contact_id): required: **false**The unique identifier for an Amazon Connect contact. This identifier is related to the chat starting.
You cannot provide data for both RelatedContactId and PersistentChat.
/// - [`segment_attributes(impl Into, SegmentAttributeValue)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::segment_attributes) / [`set_segment_attributes(Option>)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::set_segment_attributes): required: **false**A set of system defined key-value pairs stored on individual contact segments using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows.
Attribute keys can include only alphanumeric, -, and _.
This field can be used to show channel subtype, such as connect:Guide
.
The types application/vnd.amazonaws.connect.message.interactive
and application/vnd.amazonaws.connect.message.interactive.response
must be present in the SupportedMessagingContentTypes field of this API in order to set SegmentAttributes
as { "connect:Subtype": {"valueString" : "connect:Guide" }}
.
+ /// - [`customer_id(impl Into)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::customer_id) / [`set_customer_id(Option)`](crate::operation::start_chat_contact::builders::StartChatContactFluentBuilder::set_customer_id): required: **false**The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
/// - On success, responds with [`StartChatContactOutput`](crate::operation::start_chat_contact::StartChatContactOutput) with field(s):
/// - [`contact_id(Option)`](crate::operation::start_chat_contact::StartChatContactOutput::contact_id): The identifier of this contact within the Amazon Connect instance.
/// - [`participant_id(Option)`](crate::operation::start_chat_contact::StartChatContactOutput::participant_id): The identifier for a chat participant. The participantId for a chat participant is the same throughout the chat lifecycle.
diff --git a/sdk/connect/src/client/update_participant_authentication.rs b/sdk/connect/src/client/update_participant_authentication.rs
new file mode 100644
index 000000000000..c334939f39f3
--- /dev/null
+++ b/sdk/connect/src/client/update_participant_authentication.rs
@@ -0,0 +1,18 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+impl super::Client {
+ /// Constructs a fluent builder for the [`UpdateParticipantAuthentication`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder) operation.
+ ///
+ /// - The fluent builder is configurable:
+ /// - [`state(impl Into)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::state) / [`set_state(Option)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::set_state): required: **true**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.
+ /// - [`instance_id(impl Into)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::instance_id) / [`set_instance_id(Option)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::set_instance_id): required: **true**The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ /// - [`code(impl Into)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::code) / [`set_code(Option)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::set_code): required: **false**The code
query parameter provided by Cognito in the redirectUri
.
+ /// - [`error(impl Into)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::error) / [`set_error(Option)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::set_error): required: **false**The error
query parameter provided by Cognito in the redirectUri
.
+ /// - [`error_description(impl Into)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::error_description) / [`set_error_description(Option)`](crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::set_error_description): required: **false**The error_description
parameter provided by Cognito in the redirectUri
.
+ /// - On success, responds with [`UpdateParticipantAuthenticationOutput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput)
+ /// - On failure, responds with [`SdkError`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError)
+ pub fn update_participant_authentication(
+ &self,
+ ) -> crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder {
+ crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationFluentBuilder::new(self.handle.clone())
+ }
+}
diff --git a/sdk/connect/src/error_meta.rs b/sdk/connect/src/error_meta.rs
index 4e6df29d7560..0793568a85aa 100644
--- a/sdk/connect/src/error_meta.rs
+++ b/sdk/connect/src/error_meta.rs
@@ -9014,6 +9014,56 @@ impl From
+ From<
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ R,
+ >,
+ > for Error
+where
+ R: Send + Sync + std::fmt::Debug + 'static,
+{
+ fn from(
+ err: ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ R,
+ >,
+ ) -> Self {
+ match err {
+ ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
+ _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
+ source: err.into(),
+ }),
+ }
+ }
+}
+impl From for Error {
+ fn from(err: crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError) -> Self {
+ match err {
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::AccessDeniedException(inner) => {
+ Error::AccessDeniedException(inner)
+ }
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::ConflictException(inner) => {
+ Error::ConflictException(inner)
+ }
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::InternalServiceException(inner) => {
+ Error::InternalServiceException(inner)
+ }
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::InvalidParameterException(inner) => {
+ Error::InvalidParameterException(inner)
+ }
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::InvalidRequestException(inner) => {
+ Error::InvalidRequestException(inner)
+ }
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::ThrottlingException(inner) => {
+ Error::ThrottlingException(inner)
+ }
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::Unhandled(inner) => Error::Unhandled(inner),
+ }
+ }
+}
impl
From<::aws_smithy_runtime_api::client::result::SdkError>
for Error
diff --git a/sdk/connect/src/lib.rs b/sdk/connect/src/lib.rs
index d7d2d62afab8..298e3fe8a02a 100644
--- a/sdk/connect/src/lib.rs
+++ b/sdk/connect/src/lib.rs
@@ -40,7 +40,7 @@
//! ```toml
//! [dependencies]
//! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-//! aws-sdk-connect = "1.81.0"
+//! aws-sdk-connect = "1.82.0"
//! tokio = { version = "1", features = ["full"] }
//! ```
//!
diff --git a/sdk/connect/src/operation.rs b/sdk/connect/src/operation.rs
index f2ee1ea52092..6e4b098d67e8 100644
--- a/sdk/connect/src/operation.rs
+++ b/sdk/connect/src/operation.rs
@@ -742,6 +742,9 @@ pub mod update_instance_attribute;
/// Types for the `UpdateInstanceStorageConfig` operation.
pub mod update_instance_storage_config;
+/// Types for the `UpdateParticipantAuthentication` operation.
+pub mod update_participant_authentication;
+
/// Types for the `UpdateParticipantRoleConfig` operation.
pub mod update_participant_role_config;
diff --git a/sdk/connect/src/operation/create_push_notification_registration/builders.rs b/sdk/connect/src/operation/create_push_notification_registration/builders.rs
index 04319a6ec239..734b421ef838 100644
--- a/sdk/connect/src/operation/create_push_notification_registration/builders.rs
+++ b/sdk/connect/src/operation/create_push_notification_registration/builders.rs
@@ -22,7 +22,7 @@ impl crate::operation::create_push_notification_registration::builders::CreatePu
}
/// Fluent builder constructing a request to `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 .
+/// 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 .
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct CreatePushNotificationRegistrationFluentBuilder {
handle: ::std::sync::Arc,
diff --git a/sdk/connect/src/operation/list_bots/builders.rs b/sdk/connect/src/operation/list_bots/builders.rs
index cebd87b80ea3..2b15e2ec850d 100644
--- a/sdk/connect/src/operation/list_bots/builders.rs
+++ b/sdk/connect/src/operation/list_bots/builders.rs
@@ -23,7 +23,7 @@ impl crate::operation::list_bots::builders::ListBotsInputBuilder {
/// Fluent builder constructing a request to `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.
+/// 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.
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct ListBotsFluentBuilder {
handle: ::std::sync::Arc,
diff --git a/sdk/connect/src/operation/start_chat_contact/_start_chat_contact_input.rs b/sdk/connect/src/operation/start_chat_contact/_start_chat_contact_input.rs
index da340df87bc8..c94979d9da5f 100644
--- a/sdk/connect/src/operation/start_chat_contact/_start_chat_contact_input.rs
+++ b/sdk/connect/src/operation/start_chat_contact/_start_chat_contact_input.rs
@@ -1,7 +1,7 @@
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
-#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
pub struct StartChatContactInput {
/// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
pub instance_id: ::std::option::Option<::std::string::String>,
@@ -36,6 +36,8 @@ pub struct StartChatContactInput {
/// The types application/vnd.amazonaws.connect.message.interactive
and application/vnd.amazonaws.connect.message.interactive.response
must be present in the SupportedMessagingContentTypes field of this API in order to set SegmentAttributes
as { "connect:Subtype": {"valueString" : "connect:Guide" }}
.
///
pub segment_attributes: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::SegmentAttributeValue>>,
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub customer_id: ::std::option::Option<::std::string::String>,
}
impl StartChatContactInput {
/// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
@@ -97,6 +99,28 @@ impl StartChatContactInput {
) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, crate::types::SegmentAttributeValue>> {
self.segment_attributes.as_ref()
}
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn customer_id(&self) -> ::std::option::Option<&str> {
+ self.customer_id.as_deref()
+ }
+}
+impl ::std::fmt::Debug for StartChatContactInput {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ let mut formatter = f.debug_struct("StartChatContactInput");
+ formatter.field("instance_id", &self.instance_id);
+ formatter.field("contact_flow_id", &self.contact_flow_id);
+ formatter.field("attributes", &self.attributes);
+ formatter.field("participant_details", &self.participant_details);
+ formatter.field("initial_message", &self.initial_message);
+ formatter.field("client_token", &self.client_token);
+ formatter.field("chat_duration_in_minutes", &self.chat_duration_in_minutes);
+ formatter.field("supported_messaging_content_types", &self.supported_messaging_content_types);
+ formatter.field("persistent_chat", &self.persistent_chat);
+ formatter.field("related_contact_id", &self.related_contact_id);
+ formatter.field("segment_attributes", &self.segment_attributes);
+ formatter.field("customer_id", &"*** Sensitive Data Redacted ***");
+ formatter.finish()
+ }
}
impl StartChatContactInput {
/// Creates a new builder-style object to manufacture [`StartChatContactInput`](crate::operation::start_chat_contact::StartChatContactInput).
@@ -106,7 +130,7 @@ impl StartChatContactInput {
}
/// A builder for [`StartChatContactInput`](crate::operation::start_chat_contact::StartChatContactInput).
-#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
#[non_exhaustive]
pub struct StartChatContactInputBuilder {
pub(crate) instance_id: ::std::option::Option<::std::string::String>,
@@ -120,6 +144,7 @@ pub struct StartChatContactInputBuilder {
pub(crate) persistent_chat: ::std::option::Option,
pub(crate) related_contact_id: ::std::option::Option<::std::string::String>,
pub(crate) segment_attributes: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::SegmentAttributeValue>>,
+ pub(crate) customer_id: ::std::option::Option<::std::string::String>,
}
impl StartChatContactInputBuilder {
/// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
@@ -335,6 +360,20 @@ impl StartChatContactInputBuilder {
) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::SegmentAttributeValue>> {
&self.segment_attributes
}
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn customer_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.customer_id = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn set_customer_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.customer_id = input;
+ self
+ }
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn get_customer_id(&self) -> &::std::option::Option<::std::string::String> {
+ &self.customer_id
+ }
/// Consumes the builder and constructs a [`StartChatContactInput`](crate::operation::start_chat_contact::StartChatContactInput).
pub fn build(
self,
@@ -351,6 +390,25 @@ impl StartChatContactInputBuilder {
persistent_chat: self.persistent_chat,
related_contact_id: self.related_contact_id,
segment_attributes: self.segment_attributes,
+ customer_id: self.customer_id,
})
}
}
+impl ::std::fmt::Debug for StartChatContactInputBuilder {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ let mut formatter = f.debug_struct("StartChatContactInputBuilder");
+ formatter.field("instance_id", &self.instance_id);
+ formatter.field("contact_flow_id", &self.contact_flow_id);
+ formatter.field("attributes", &self.attributes);
+ formatter.field("participant_details", &self.participant_details);
+ formatter.field("initial_message", &self.initial_message);
+ formatter.field("client_token", &self.client_token);
+ formatter.field("chat_duration_in_minutes", &self.chat_duration_in_minutes);
+ formatter.field("supported_messaging_content_types", &self.supported_messaging_content_types);
+ formatter.field("persistent_chat", &self.persistent_chat);
+ formatter.field("related_contact_id", &self.related_contact_id);
+ formatter.field("segment_attributes", &self.segment_attributes);
+ formatter.field("customer_id", &"*** Sensitive Data Redacted ***");
+ formatter.finish()
+ }
+}
diff --git a/sdk/connect/src/operation/start_chat_contact/builders.rs b/sdk/connect/src/operation/start_chat_contact/builders.rs
index af15048b6612..1985e5f15221 100644
--- a/sdk/connect/src/operation/start_chat_contact/builders.rs
+++ b/sdk/connect/src/operation/start_chat_contact/builders.rs
@@ -331,4 +331,18 @@ impl StartChatContactFluentBuilder {
) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::SegmentAttributeValue>> {
self.inner.get_segment_attributes()
}
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn customer_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.customer_id(input.into());
+ self
+ }
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn set_customer_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_customer_id(input);
+ self
+ }
+ /// The customer's identification number. For example, the CustomerId
may be a customer number from your CRM.
+ pub fn get_customer_id(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_customer_id()
+ }
}
diff --git a/sdk/connect/src/operation/update_participant_authentication.rs b/sdk/connect/src/operation/update_participant_authentication.rs
new file mode 100644
index 000000000000..c598d17a0309
--- /dev/null
+++ b/sdk/connect/src/operation/update_participant_authentication.rs
@@ -0,0 +1,412 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+/// Orchestration and serialization glue logic for `UpdateParticipantAuthentication`.
+#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct UpdateParticipantAuthentication;
+impl UpdateParticipantAuthentication {
+ /// Creates a new `UpdateParticipantAuthentication`
+ pub fn new() -> Self {
+ Self
+ }
+ pub(crate) async fn orchestrate(
+ runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ input: crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+ ) -> ::std::result::Result<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError<
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >| {
+ err.map_service_error(|err| {
+ err.downcast::()
+ .expect("correct error type")
+ })
+ };
+ let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None)
+ .await
+ .map_err(map_err)?;
+ let output = context.finalize().map_err(map_err)?;
+ ::std::result::Result::Ok(
+ output
+ .downcast::()
+ .expect("correct output type"),
+ )
+ }
+
+ pub(crate) async fn orchestrate_with_stop_point(
+ runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ input: crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+ stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint,
+ ) -> ::std::result::Result<
+ ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input);
+ ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point(
+ "connect",
+ "UpdateParticipantAuthentication",
+ input,
+ runtime_plugins,
+ stop_point,
+ )
+ .await
+ }
+
+ pub(crate) fn operation_runtime_plugins(
+ client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ client_config: &crate::config::Config,
+ config_override: ::std::option::Option,
+ ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins {
+ let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new());
+ runtime_plugins = runtime_plugins.with_client_plugin(crate::auth_plugin::DefaultAuthOptionsPlugin::new(vec![
+ ::aws_runtime::auth::sigv4::SCHEME_ID,
+ ]));
+ if let ::std::option::Option::Some(config_override) = config_override {
+ for plugin in config_override.runtime_plugins.iter().cloned() {
+ runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
+ }
+ runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
+ config_override,
+ client_config.config.clone(),
+ &client_config.runtime_components,
+ ));
+ }
+ runtime_plugins
+ }
+}
+impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for UpdateParticipantAuthentication {
+ fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
+ let mut cfg = ::aws_smithy_types::config_bag::Layer::new("UpdateParticipantAuthentication");
+
+ cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
+ UpdateParticipantAuthenticationRequestSerializer,
+ ));
+ cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
+ UpdateParticipantAuthenticationResponseDeserializer,
+ ));
+
+ cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
+ ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
+ ));
+
+ cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
+ "UpdateParticipantAuthentication",
+ "connect",
+ ));
+ let mut signing_options = ::aws_runtime::auth::SigningOptions::default();
+ signing_options.double_uri_encode = true;
+ signing_options.content_sha256_header = false;
+ signing_options.normalize_uri_path = true;
+ signing_options.payload_override = None;
+
+ cfg.store_put(::aws_runtime::auth::SigV4OperationSigningConfig {
+ signing_options,
+ ..::std::default::Default::default()
+ });
+
+ ::std::option::Option::Some(cfg.freeze())
+ }
+
+ fn runtime_components(
+ &self,
+ _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
+ ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
+ #[allow(unused_mut)]
+ let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("UpdateParticipantAuthentication")
+ .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
+ .with_interceptor(UpdateParticipantAuthenticationEndpointParamsInterceptor)
+ .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ >::new())
+ .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ >::new())
+ .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ >::new());
+
+ ::std::borrow::Cow::Owned(rcb)
+ }
+}
+
+#[derive(Debug)]
+struct UpdateParticipantAuthenticationResponseDeserializer;
+impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for UpdateParticipantAuthenticationResponseDeserializer {
+ fn deserialize_nonstreaming(
+ &self,
+ response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
+ let (success, status) = (response.status().is_success(), response.status().as_u16());
+ let headers = response.headers();
+ let body = response.body().bytes().expect("body loaded");
+ #[allow(unused_mut)]
+ let mut force_error = false;
+ ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
+ let parse_result = if !success && status != 200 || force_error {
+ crate::protocol_serde::shape_update_participant_authentication::de_update_participant_authentication_http_error(status, headers, body)
+ } else {
+ crate::protocol_serde::shape_update_participant_authentication::de_update_participant_authentication_http_response(status, headers, body)
+ };
+ crate::protocol_serde::type_erase_result(parse_result)
+ }
+}
+#[derive(Debug)]
+struct UpdateParticipantAuthenticationRequestSerializer;
+impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for UpdateParticipantAuthenticationRequestSerializer {
+ #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
+ fn serialize_input(
+ &self,
+ input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
+ _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
+ ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
+ let input = input
+ .downcast::()
+ .expect("correct type");
+ let _header_serialization_settings = _cfg
+ .load::()
+ .cloned()
+ .unwrap_or_default();
+ let mut request_builder = {
+ fn uri_base(
+ _input: &crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+ output: &mut ::std::string::String,
+ ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
+ use ::std::fmt::Write as _;
+ ::std::write!(output, "/contact/update-participant-authentication").expect("formatting should succeed");
+ ::std::result::Result::Ok(())
+ }
+ #[allow(clippy::unnecessary_wraps)]
+ fn update_http_builder(
+ input: &crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+ builder: ::http::request::Builder,
+ ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
+ let mut uri = ::std::string::String::new();
+ uri_base(input, &mut uri)?;
+ ::std::result::Result::Ok(builder.method("POST").uri(uri))
+ }
+ let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
+ builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/json");
+ builder
+ };
+ let body = ::aws_smithy_types::body::SdkBody::from(
+ crate::protocol_serde::shape_update_participant_authentication::ser_update_participant_authentication_input(&input)?,
+ );
+ if let Some(content_length) = body.content_length() {
+ let content_length = content_length.to_string();
+ request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length);
+ }
+ ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
+ }
+}
+#[derive(Debug)]
+struct UpdateParticipantAuthenticationEndpointParamsInterceptor;
+
+impl ::aws_smithy_runtime_api::client::interceptors::Intercept for UpdateParticipantAuthenticationEndpointParamsInterceptor {
+ fn name(&self) -> &'static str {
+ "UpdateParticipantAuthenticationEndpointParamsInterceptor"
+ }
+
+ fn read_before_execution(
+ &self,
+ context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
+ '_,
+ ::aws_smithy_runtime_api::client::interceptors::context::Input,
+ ::aws_smithy_runtime_api::client::interceptors::context::Output,
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ >,
+ cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
+ ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
+ let _input = context
+ .input()
+ .downcast_ref::()
+ .ok_or("failed to downcast to UpdateParticipantAuthenticationInput")?;
+
+ let params = crate::config::endpoint::Params::builder()
+ .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
+ .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0))
+ .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
+ .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
+ .build()
+ .map_err(|err| {
+ ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
+ })?;
+ cfg.interceptor_state()
+ .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
+ ::std::result::Result::Ok(())
+ }
+}
+
+// The get_* functions below are generated from JMESPath expressions in the
+// operationContextParams trait. They target the operation's input shape.
+
+/// Error type for the `UpdateParticipantAuthenticationError` operation.
+#[non_exhaustive]
+#[derive(::std::fmt::Debug)]
+pub enum UpdateParticipantAuthenticationError {
+ /// You do not have sufficient permissions to perform this action.
+ AccessDeniedException(crate::types::error::AccessDeniedException),
+ /// Operation cannot be performed at this time as there is a conflict with another operation or contact state.
+ ConflictException(crate::types::error::ConflictException),
+ /// Request processing failed because of an error or failure with the service.
+ InternalServiceException(crate::types::error::InternalServiceException),
+ /// One or more of the specified parameters are not valid.
+ InvalidParameterException(crate::types::error::InvalidParameterException),
+ /// The request is not valid.
+ InvalidRequestException(crate::types::error::InvalidRequestException),
+ /// The throttling limit has been exceeded.
+ ThrottlingException(crate::types::error::ThrottlingException),
+ /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
+ #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
+ variable wildcard pattern and check `.code()`:
+ \
+ `err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
+ \
+ See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-UpdateParticipantAuthenticationError) for what information is available for the error.")]
+ Unhandled(crate::error::sealed_unhandled::Unhandled),
+}
+impl UpdateParticipantAuthenticationError {
+ /// Creates the `UpdateParticipantAuthenticationError::Unhandled` variant from any error type.
+ pub fn unhandled(
+ err: impl ::std::convert::Into<::std::boxed::Box>,
+ ) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source: err.into(),
+ meta: ::std::default::Default::default(),
+ })
+ }
+
+ /// Creates the `UpdateParticipantAuthenticationError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
+ pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source: err.clone().into(),
+ meta: err,
+ })
+ }
+ ///
+ /// Returns error metadata, which includes the error code, message,
+ /// request ID, and potentially additional information.
+ ///
+ pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
+ match self {
+ Self::AccessDeniedException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::ConflictException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::InternalServiceException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::InvalidParameterException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::InvalidRequestException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::ThrottlingException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::Unhandled(e) => &e.meta,
+ }
+ }
+ /// Returns `true` if the error kind is `UpdateParticipantAuthenticationError::AccessDeniedException`.
+ pub fn is_access_denied_exception(&self) -> bool {
+ matches!(self, Self::AccessDeniedException(_))
+ }
+ /// Returns `true` if the error kind is `UpdateParticipantAuthenticationError::ConflictException`.
+ pub fn is_conflict_exception(&self) -> bool {
+ matches!(self, Self::ConflictException(_))
+ }
+ /// Returns `true` if the error kind is `UpdateParticipantAuthenticationError::InternalServiceException`.
+ pub fn is_internal_service_exception(&self) -> bool {
+ matches!(self, Self::InternalServiceException(_))
+ }
+ /// Returns `true` if the error kind is `UpdateParticipantAuthenticationError::InvalidParameterException`.
+ pub fn is_invalid_parameter_exception(&self) -> bool {
+ matches!(self, Self::InvalidParameterException(_))
+ }
+ /// Returns `true` if the error kind is `UpdateParticipantAuthenticationError::InvalidRequestException`.
+ pub fn is_invalid_request_exception(&self) -> bool {
+ matches!(self, Self::InvalidRequestException(_))
+ }
+ /// Returns `true` if the error kind is `UpdateParticipantAuthenticationError::ThrottlingException`.
+ pub fn is_throttling_exception(&self) -> bool {
+ matches!(self, Self::ThrottlingException(_))
+ }
+}
+impl ::std::error::Error for UpdateParticipantAuthenticationError {
+ fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
+ match self {
+ Self::AccessDeniedException(_inner) => ::std::option::Option::Some(_inner),
+ Self::ConflictException(_inner) => ::std::option::Option::Some(_inner),
+ Self::InternalServiceException(_inner) => ::std::option::Option::Some(_inner),
+ Self::InvalidParameterException(_inner) => ::std::option::Option::Some(_inner),
+ Self::InvalidRequestException(_inner) => ::std::option::Option::Some(_inner),
+ Self::ThrottlingException(_inner) => ::std::option::Option::Some(_inner),
+ Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
+ }
+ }
+}
+impl ::std::fmt::Display for UpdateParticipantAuthenticationError {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ match self {
+ Self::AccessDeniedException(_inner) => _inner.fmt(f),
+ Self::ConflictException(_inner) => _inner.fmt(f),
+ Self::InternalServiceException(_inner) => _inner.fmt(f),
+ Self::InvalidParameterException(_inner) => _inner.fmt(f),
+ Self::InvalidRequestException(_inner) => _inner.fmt(f),
+ Self::ThrottlingException(_inner) => _inner.fmt(f),
+ Self::Unhandled(_inner) => {
+ if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
+ write!(f, "unhandled error ({code})")
+ } else {
+ f.write_str("unhandled error")
+ }
+ }
+ }
+ }
+}
+impl ::aws_smithy_types::retry::ProvideErrorKind for UpdateParticipantAuthenticationError {
+ fn code(&self) -> ::std::option::Option<&str> {
+ ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
+ }
+ fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
+ ::std::option::Option::None
+ }
+}
+impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for UpdateParticipantAuthenticationError {
+ fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
+ match self {
+ Self::AccessDeniedException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::ConflictException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::InternalServiceException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::InvalidParameterException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::InvalidRequestException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::ThrottlingException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::Unhandled(_inner) => &_inner.meta,
+ }
+ }
+}
+impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for UpdateParticipantAuthenticationError {
+ fn create_unhandled_error(
+ source: ::std::boxed::Box,
+ meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
+ ) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source,
+ meta: meta.unwrap_or_default(),
+ })
+ }
+}
+impl ::aws_types::request_id::RequestId for crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError {
+ fn request_id(&self) -> Option<&str> {
+ self.meta().request_id()
+ }
+}
+
+pub use crate::operation::update_participant_authentication::_update_participant_authentication_output::UpdateParticipantAuthenticationOutput;
+
+pub use crate::operation::update_participant_authentication::_update_participant_authentication_input::UpdateParticipantAuthenticationInput;
+
+mod _update_participant_authentication_input;
+
+mod _update_participant_authentication_output;
+
+/// Builders
+pub mod builders;
diff --git a/sdk/connect/src/operation/update_participant_authentication/_update_participant_authentication_input.rs b/sdk/connect/src/operation/update_participant_authentication/_update_participant_authentication_input.rs
new file mode 100644
index 000000000000..a744024d8463
--- /dev/null
+++ b/sdk/connect/src/operation/update_participant_authentication/_update_participant_authentication_input.rs
@@ -0,0 +1,168 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
+pub struct UpdateParticipantAuthenticationInput {
+ /// 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.
+ pub state: ::std::option::Option<::std::string::String>,
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub instance_id: ::std::option::Option<::std::string::String>,
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub code: ::std::option::Option<::std::string::String>,
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub error: ::std::option::Option<::std::string::String>,
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub error_description: ::std::option::Option<::std::string::String>,
+}
+impl UpdateParticipantAuthenticationInput {
+ /// 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.
+ pub fn state(&self) -> ::std::option::Option<&str> {
+ self.state.as_deref()
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub fn instance_id(&self) -> ::std::option::Option<&str> {
+ self.instance_id.as_deref()
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn code(&self) -> ::std::option::Option<&str> {
+ self.code.as_deref()
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn error(&self) -> ::std::option::Option<&str> {
+ self.error.as_deref()
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn error_description(&self) -> ::std::option::Option<&str> {
+ self.error_description.as_deref()
+ }
+}
+impl ::std::fmt::Debug for UpdateParticipantAuthenticationInput {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ let mut formatter = f.debug_struct("UpdateParticipantAuthenticationInput");
+ formatter.field("state", &self.state);
+ formatter.field("instance_id", &self.instance_id);
+ formatter.field("code", &"*** Sensitive Data Redacted ***");
+ formatter.field("error", &"*** Sensitive Data Redacted ***");
+ formatter.field("error_description", &"*** Sensitive Data Redacted ***");
+ formatter.finish()
+ }
+}
+impl UpdateParticipantAuthenticationInput {
+ /// Creates a new builder-style object to manufacture [`UpdateParticipantAuthenticationInput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput).
+ pub fn builder() -> crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationInputBuilder {
+ crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationInputBuilder::default()
+ }
+}
+
+/// A builder for [`UpdateParticipantAuthenticationInput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
+#[non_exhaustive]
+pub struct UpdateParticipantAuthenticationInputBuilder {
+ pub(crate) state: ::std::option::Option<::std::string::String>,
+ pub(crate) instance_id: ::std::option::Option<::std::string::String>,
+ pub(crate) code: ::std::option::Option<::std::string::String>,
+ pub(crate) error: ::std::option::Option<::std::string::String>,
+ pub(crate) error_description: ::std::option::Option<::std::string::String>,
+}
+impl UpdateParticipantAuthenticationInputBuilder {
+ /// 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.
+ /// This field is required.
+ pub fn state(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.state = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// 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.
+ pub fn set_state(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.state = input;
+ self
+ }
+ /// 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.
+ pub fn get_state(&self) -> &::std::option::Option<::std::string::String> {
+ &self.state
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ /// This field is required.
+ pub fn instance_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.instance_id = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub fn set_instance_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.instance_id = input;
+ self
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub fn get_instance_id(&self) -> &::std::option::Option<::std::string::String> {
+ &self.instance_id
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn code(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.code = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn set_code(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.code = input;
+ self
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn get_code(&self) -> &::std::option::Option<::std::string::String> {
+ &self.code
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn error(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.error = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn set_error(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.error = input;
+ self
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn get_error(&self) -> &::std::option::Option<::std::string::String> {
+ &self.error
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn error_description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.error_description = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn set_error_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.error_description = input;
+ self
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn get_error_description(&self) -> &::std::option::Option<::std::string::String> {
+ &self.error_description
+ }
+ /// Consumes the builder and constructs a [`UpdateParticipantAuthenticationInput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput).
+ pub fn build(
+ self,
+ ) -> ::std::result::Result<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+ ::aws_smithy_types::error::operation::BuildError,
+ > {
+ ::std::result::Result::Ok(
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput {
+ state: self.state,
+ instance_id: self.instance_id,
+ code: self.code,
+ error: self.error,
+ error_description: self.error_description,
+ },
+ )
+ }
+}
+impl ::std::fmt::Debug for UpdateParticipantAuthenticationInputBuilder {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ let mut formatter = f.debug_struct("UpdateParticipantAuthenticationInputBuilder");
+ formatter.field("state", &self.state);
+ formatter.field("instance_id", &self.instance_id);
+ formatter.field("code", &"*** Sensitive Data Redacted ***");
+ formatter.field("error", &"*** Sensitive Data Redacted ***");
+ formatter.field("error_description", &"*** Sensitive Data Redacted ***");
+ formatter.finish()
+ }
+}
diff --git a/sdk/connect/src/operation/update_participant_authentication/_update_participant_authentication_output.rs b/sdk/connect/src/operation/update_participant_authentication/_update_participant_authentication_output.rs
new file mode 100644
index 000000000000..a1bdc18df8c2
--- /dev/null
+++ b/sdk/connect/src/operation/update_participant_authentication/_update_participant_authentication_output.rs
@@ -0,0 +1,42 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+pub struct UpdateParticipantAuthenticationOutput {
+ _request_id: Option,
+}
+impl ::aws_types::request_id::RequestId for UpdateParticipantAuthenticationOutput {
+ fn request_id(&self) -> Option<&str> {
+ self._request_id.as_deref()
+ }
+}
+impl UpdateParticipantAuthenticationOutput {
+ /// Creates a new builder-style object to manufacture [`UpdateParticipantAuthenticationOutput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput).
+ pub fn builder() -> crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationOutputBuilder {
+ crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationOutputBuilder::default()
+ }
+}
+
+/// A builder for [`UpdateParticipantAuthenticationOutput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct UpdateParticipantAuthenticationOutputBuilder {
+ _request_id: Option,
+}
+impl UpdateParticipantAuthenticationOutputBuilder {
+ pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self {
+ self._request_id = Some(request_id.into());
+ self
+ }
+
+ pub(crate) fn _set_request_id(&mut self, request_id: Option) -> &mut Self {
+ self._request_id = request_id;
+ self
+ }
+ /// Consumes the builder and constructs a [`UpdateParticipantAuthenticationOutput`](crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput).
+ pub fn build(self) -> crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput {
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput {
+ _request_id: self._request_id,
+ }
+ }
+}
diff --git a/sdk/connect/src/operation/update_participant_authentication/builders.rs b/sdk/connect/src/operation/update_participant_authentication/builders.rs
new file mode 100644
index 000000000000..ed32054e3bab
--- /dev/null
+++ b/sdk/connect/src/operation/update_participant_authentication/builders.rs
@@ -0,0 +1,189 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+pub use crate::operation::update_participant_authentication::_update_participant_authentication_output::UpdateParticipantAuthenticationOutputBuilder;
+
+pub use crate::operation::update_participant_authentication::_update_participant_authentication_input::UpdateParticipantAuthenticationInputBuilder;
+
+impl crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationInputBuilder {
+ /// Sends a request with this input using the given client.
+ pub async fn send_with(
+ self,
+ client: &crate::Client,
+ ) -> ::std::result::Result<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let mut fluent_builder = client.update_participant_authentication();
+ fluent_builder.inner = self;
+ fluent_builder.send().await
+ }
+}
+/// Fluent builder constructing a request to `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.
+///
+#[derive(::std::clone::Clone, ::std::fmt::Debug)]
+pub struct UpdateParticipantAuthenticationFluentBuilder {
+ handle: ::std::sync::Arc,
+ inner: crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationInputBuilder,
+ config_override: ::std::option::Option,
+}
+impl
+ crate::client::customize::internal::CustomizableSend<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ > for UpdateParticipantAuthenticationFluentBuilder
+{
+ fn send(
+ self,
+ config_override: crate::config::Builder,
+ ) -> crate::client::customize::internal::BoxFuture<
+ crate::client::customize::internal::SendResult<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ >,
+ > {
+ ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
+ }
+}
+impl UpdateParticipantAuthenticationFluentBuilder {
+ /// Creates a new `UpdateParticipantAuthenticationFluentBuilder`.
+ pub(crate) fn new(handle: ::std::sync::Arc) -> Self {
+ Self {
+ handle,
+ inner: ::std::default::Default::default(),
+ config_override: ::std::option::Option::None,
+ }
+ }
+ /// Access the UpdateParticipantAuthentication as a reference.
+ pub fn as_input(&self) -> &crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationInputBuilder {
+ &self.inner
+ }
+ /// Sends the request and returns the response.
+ ///
+ /// If an error occurs, an `SdkError` will be returned with additional details that
+ /// can be matched against.
+ ///
+ /// By default, any retryable failures will be retried twice. Retry behavior
+ /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
+ /// set when configuring the client.
+ pub async fn send(
+ self,
+ ) -> ::std::result::Result<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let input = self
+ .inner
+ .build()
+ .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
+ let runtime_plugins = crate::operation::update_participant_authentication::UpdateParticipantAuthentication::operation_runtime_plugins(
+ self.handle.runtime_plugins.clone(),
+ &self.handle.conf,
+ self.config_override,
+ );
+ crate::operation::update_participant_authentication::UpdateParticipantAuthentication::orchestrate(&runtime_plugins, input).await
+ }
+
+ /// Consumes this builder, creating a customizable operation that can be modified before being sent.
+ pub fn customize(
+ self,
+ ) -> crate::client::customize::CustomizableOperation<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+ Self,
+ > {
+ crate::client::customize::CustomizableOperation::new(self)
+ }
+ pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into) -> Self {
+ self.set_config_override(::std::option::Option::Some(config_override.into()));
+ self
+ }
+
+ pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option) -> &mut Self {
+ self.config_override = config_override;
+ self
+ }
+ /// 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.
+ pub fn state(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.state(input.into());
+ self
+ }
+ /// 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.
+ pub fn set_state(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_state(input);
+ self
+ }
+ /// 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.
+ pub fn get_state(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_state()
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub fn instance_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.instance_id(input.into());
+ self
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub fn set_instance_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_instance_id(input);
+ self
+ }
+ /// The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
+ pub fn get_instance_id(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_instance_id()
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn code(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.code(input.into());
+ self
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn set_code(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_code(input);
+ self
+ }
+ /// The code
query parameter provided by Cognito in the redirectUri
.
+ pub fn get_code(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_code()
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn error(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.error(input.into());
+ self
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn set_error(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_error(input);
+ self
+ }
+ /// The error
query parameter provided by Cognito in the redirectUri
.
+ pub fn get_error(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_error()
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn error_description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.error_description(input.into());
+ self
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn set_error_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_error_description(input);
+ self
+ }
+ /// The error_description
parameter provided by Cognito in the redirectUri
.
+ pub fn get_error_description(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_error_description()
+ }
+}
diff --git a/sdk/connect/src/protocol_serde.rs b/sdk/connect/src/protocol_serde.rs
index 6e3d968cc8e8..b6c1e6016dee 100644
--- a/sdk/connect/src/protocol_serde.rs
+++ b/sdk/connect/src/protocol_serde.rs
@@ -517,6 +517,8 @@ pub(crate) mod shape_update_instance_attribute;
pub(crate) mod shape_update_instance_storage_config;
+pub(crate) mod shape_update_participant_authentication;
+
pub(crate) mod shape_update_participant_role_config;
pub(crate) mod shape_update_phone_number;
@@ -897,6 +899,8 @@ pub(crate) mod shape_update_instance_attribute_input;
pub(crate) mod shape_update_instance_storage_config_input;
+pub(crate) mod shape_update_participant_authentication_input;
+
pub(crate) mod shape_update_participant_role_config_input;
pub(crate) mod shape_update_phone_number_input;
diff --git a/sdk/connect/src/protocol_serde/shape_contact.rs b/sdk/connect/src/protocol_serde/shape_contact.rs
index 8b5709939009..df916401c97d 100644
--- a/sdk/connect/src/protocol_serde/shape_contact.rs
+++ b/sdk/connect/src/protocol_serde/shape_contact.rs
@@ -143,6 +143,13 @@ where
"WisdomInfo" => {
builder = builder.set_wisdom_info(crate::protocol_serde::shape_wisdom_info::de_wisdom_info(tokens)?);
}
+ "CustomerId" => {
+ builder = builder.set_customer_id(
+ ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
+ .map(|s| s.to_unescaped().map(|u| u.into_owned()))
+ .transpose()?,
+ );
+ }
"CustomerEndpoint" => {
builder = builder.set_customer_endpoint(crate::protocol_serde::shape_endpoint_info::de_endpoint_info(tokens)?);
}
diff --git a/sdk/connect/src/protocol_serde/shape_start_chat_contact_input.rs b/sdk/connect/src/protocol_serde/shape_start_chat_contact_input.rs
index 6ea5fc442ec2..e2dff1d19476 100644
--- a/sdk/connect/src/protocol_serde/shape_start_chat_contact_input.rs
+++ b/sdk/connect/src/protocol_serde/shape_start_chat_contact_input.rs
@@ -25,51 +25,54 @@ pub fn ser_start_chat_contact_input_input(
if let Some(var_7) = &input.contact_flow_id {
object.key("ContactFlowId").string(var_7.as_str());
}
- if let Some(var_8) = &input.initial_message {
+ if let Some(var_8) = &input.customer_id {
+ object.key("CustomerId").string(var_8.as_str());
+ }
+ if let Some(var_9) = &input.initial_message {
#[allow(unused_mut)]
- let mut object_9 = object.key("InitialMessage").start_object();
- crate::protocol_serde::shape_chat_message::ser_chat_message(&mut object_9, var_8)?;
- object_9.finish();
+ let mut object_10 = object.key("InitialMessage").start_object();
+ crate::protocol_serde::shape_chat_message::ser_chat_message(&mut object_10, var_9)?;
+ object_10.finish();
}
- if let Some(var_10) = &input.instance_id {
- object.key("InstanceId").string(var_10.as_str());
+ if let Some(var_11) = &input.instance_id {
+ object.key("InstanceId").string(var_11.as_str());
}
- if let Some(var_11) = &input.participant_details {
+ if let Some(var_12) = &input.participant_details {
#[allow(unused_mut)]
- let mut object_12 = object.key("ParticipantDetails").start_object();
- crate::protocol_serde::shape_participant_details::ser_participant_details(&mut object_12, var_11)?;
- object_12.finish();
+ let mut object_13 = object.key("ParticipantDetails").start_object();
+ crate::protocol_serde::shape_participant_details::ser_participant_details(&mut object_13, var_12)?;
+ object_13.finish();
}
- if let Some(var_13) = &input.persistent_chat {
+ if let Some(var_14) = &input.persistent_chat {
#[allow(unused_mut)]
- let mut object_14 = object.key("PersistentChat").start_object();
- crate::protocol_serde::shape_persistent_chat::ser_persistent_chat(&mut object_14, var_13)?;
- object_14.finish();
+ let mut object_15 = object.key("PersistentChat").start_object();
+ crate::protocol_serde::shape_persistent_chat::ser_persistent_chat(&mut object_15, var_14)?;
+ object_15.finish();
}
- if let Some(var_15) = &input.related_contact_id {
- object.key("RelatedContactId").string(var_15.as_str());
+ if let Some(var_16) = &input.related_contact_id {
+ object.key("RelatedContactId").string(var_16.as_str());
}
- if let Some(var_16) = &input.segment_attributes {
+ if let Some(var_17) = &input.segment_attributes {
#[allow(unused_mut)]
- let mut object_17 = object.key("SegmentAttributes").start_object();
- for (key_18, value_19) in var_16 {
+ let mut object_18 = object.key("SegmentAttributes").start_object();
+ for (key_19, value_20) in var_17 {
{
#[allow(unused_mut)]
- let mut object_20 = object_17.key(key_18.as_str()).start_object();
- crate::protocol_serde::shape_segment_attribute_value::ser_segment_attribute_value(&mut object_20, value_19)?;
- object_20.finish();
+ let mut object_21 = object_18.key(key_19.as_str()).start_object();
+ crate::protocol_serde::shape_segment_attribute_value::ser_segment_attribute_value(&mut object_21, value_20)?;
+ object_21.finish();
}
}
- object_17.finish();
+ object_18.finish();
}
- if let Some(var_21) = &input.supported_messaging_content_types {
- let mut array_22 = object.key("SupportedMessagingContentTypes").start_array();
- for item_23 in var_21 {
+ if let Some(var_22) = &input.supported_messaging_content_types {
+ let mut array_23 = object.key("SupportedMessagingContentTypes").start_array();
+ for item_24 in var_22 {
{
- array_22.value().string(item_23.as_str());
+ array_23.value().string(item_24.as_str());
}
}
- array_22.finish();
+ array_23.finish();
}
Ok(())
}
diff --git a/sdk/connect/src/protocol_serde/shape_update_participant_authentication.rs b/sdk/connect/src/protocol_serde/shape_update_participant_authentication.rs
new file mode 100644
index 000000000000..e282501ff65e
--- /dev/null
+++ b/sdk/connect/src/protocol_serde/shape_update_participant_authentication.rs
@@ -0,0 +1,151 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(clippy::unnecessary_wraps)]
+pub fn de_update_participant_authentication_http_error(
+ _response_status: u16,
+ _response_headers: &::aws_smithy_runtime_api::http::Headers,
+ _response_body: &[u8],
+) -> std::result::Result<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+> {
+ #[allow(unused_mut)]
+ let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers);
+ let generic = generic_builder.build();
+ let error_code = match generic.code() {
+ Some(code) => code,
+ None => return Err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled(generic)),
+ };
+
+ let _error_message = generic.message().map(|msg| msg.to_owned());
+ Err(match error_code {
+ "AccessDeniedException" => {
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::AccessDeniedException({
+ #[allow(unused_mut)]
+ let mut tmp = {
+ #[allow(unused_mut)]
+ let mut output = crate::types::error::builders::AccessDeniedExceptionBuilder::default();
+ output = crate::protocol_serde::shape_access_denied_exception::de_access_denied_exception_json_err(_response_body, output)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ let output = output.meta(generic);
+ output.build()
+ };
+ if tmp.message.is_none() {
+ tmp.message = _error_message;
+ }
+ tmp
+ })
+ }
+ "ConflictException" => crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::ConflictException({
+ #[allow(unused_mut)]
+ let mut tmp = {
+ #[allow(unused_mut)]
+ let mut output = crate::types::error::builders::ConflictExceptionBuilder::default();
+ output = crate::protocol_serde::shape_conflict_exception::de_conflict_exception_json_err(_response_body, output)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ let output = output.meta(generic);
+ output.build()
+ };
+ if tmp.message.is_none() {
+ tmp.message = _error_message;
+ }
+ tmp
+ }),
+ "InternalServiceException" => {
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::InternalServiceException({
+ #[allow(unused_mut)]
+ let mut tmp = {
+ #[allow(unused_mut)]
+ let mut output = crate::types::error::builders::InternalServiceExceptionBuilder::default();
+ output = crate::protocol_serde::shape_internal_service_exception::de_internal_service_exception_json_err(_response_body, output)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ let output = output.meta(generic);
+ output.build()
+ };
+ if tmp.message.is_none() {
+ tmp.message = _error_message;
+ }
+ tmp
+ })
+ }
+ "InvalidParameterException" => {
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::InvalidParameterException({
+ #[allow(unused_mut)]
+ let mut tmp = {
+ #[allow(unused_mut)]
+ let mut output = crate::types::error::builders::InvalidParameterExceptionBuilder::default();
+ output =
+ crate::protocol_serde::shape_invalid_parameter_exception::de_invalid_parameter_exception_json_err(_response_body, output)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ let output = output.meta(generic);
+ output.build()
+ };
+ if tmp.message.is_none() {
+ tmp.message = _error_message;
+ }
+ tmp
+ })
+ }
+ "InvalidRequestException" => {
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::InvalidRequestException({
+ #[allow(unused_mut)]
+ let mut tmp = {
+ #[allow(unused_mut)]
+ let mut output = crate::types::error::builders::InvalidRequestExceptionBuilder::default();
+ output = crate::protocol_serde::shape_invalid_request_exception::de_invalid_request_exception_json_err(_response_body, output)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ let output = output.meta(generic);
+ output.build()
+ };
+ if tmp.message.is_none() {
+ tmp.message = _error_message;
+ }
+ tmp
+ })
+ }
+ "ThrottlingException" => crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::ThrottlingException({
+ #[allow(unused_mut)]
+ let mut tmp = {
+ #[allow(unused_mut)]
+ let mut output = crate::types::error::builders::ThrottlingExceptionBuilder::default();
+ output = crate::protocol_serde::shape_throttling_exception::de_throttling_exception_json_err(_response_body, output)
+ .map_err(crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::unhandled)?;
+ let output = output.meta(generic);
+ output.build()
+ };
+ if tmp.message.is_none() {
+ tmp.message = _error_message;
+ }
+ tmp
+ }),
+ _ => crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError::generic(generic),
+ })
+}
+
+#[allow(clippy::unnecessary_wraps)]
+pub fn de_update_participant_authentication_http_response(
+ _response_status: u16,
+ _response_headers: &::aws_smithy_runtime_api::http::Headers,
+ _response_body: &[u8],
+) -> std::result::Result<
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationOutput,
+ crate::operation::update_participant_authentication::UpdateParticipantAuthenticationError,
+> {
+ Ok({
+ #[allow(unused_mut)]
+ let mut output = crate::operation::update_participant_authentication::builders::UpdateParticipantAuthenticationOutputBuilder::default();
+ output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
+ output.build()
+ })
+}
+
+pub fn ser_update_participant_authentication_input(
+ input: &crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+) -> Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
+ let mut out = String::new();
+ let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
+ crate::protocol_serde::shape_update_participant_authentication_input::ser_update_participant_authentication_input_input(&mut object, input)?;
+ object.finish();
+ Ok(::aws_smithy_types::body::SdkBody::from(out))
+}
diff --git a/sdk/connect/src/protocol_serde/shape_update_participant_authentication_input.rs b/sdk/connect/src/protocol_serde/shape_update_participant_authentication_input.rs
new file mode 100644
index 000000000000..7cba91615620
--- /dev/null
+++ b/sdk/connect/src/protocol_serde/shape_update_participant_authentication_input.rs
@@ -0,0 +1,22 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+pub fn ser_update_participant_authentication_input_input(
+ object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
+ input: &crate::operation::update_participant_authentication::UpdateParticipantAuthenticationInput,
+) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> {
+ if let Some(var_1) = &input.code {
+ object.key("Code").string(var_1.as_str());
+ }
+ if let Some(var_2) = &input.error {
+ object.key("Error").string(var_2.as_str());
+ }
+ if let Some(var_3) = &input.error_description {
+ object.key("ErrorDescription").string(var_3.as_str());
+ }
+ if let Some(var_4) = &input.instance_id {
+ object.key("InstanceId").string(var_4.as_str());
+ }
+ if let Some(var_5) = &input.state {
+ object.key("State").string(var_5.as_str());
+ }
+ Ok(())
+}
diff --git a/sdk/connect/src/types/_contact.rs b/sdk/connect/src/types/_contact.rs
index 7ef21ab9a2b4..f9028ec2557b 100644
--- a/sdk/connect/src/types/_contact.rs
+++ b/sdk/connect/src/types/_contact.rs
@@ -46,6 +46,8 @@ pub struct Contact {
pub related_contact_id: ::std::option::Option<::std::string::String>,
/// Information about Amazon Connect Wisdom.
pub wisdom_info: ::std::option::Option,
+ /// 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.
+ pub customer_id: ::std::option::Option<::std::string::String>,
/// The customer or external third party participant endpoint.
pub customer_endpoint: ::std::option::Option,
/// The system endpoint. For INBOUND
, this is the phone number or email address that the customer dialed. For OUTBOUND
and EXTERNAL_OUTBOUND
, this is the outbound caller ID number assigned to the outbound queue that is used to dial the customer. For callback, this shows up as Softphone for calls handled by agents with softphone.
@@ -162,6 +164,10 @@ impl Contact {
pub fn wisdom_info(&self) -> ::std::option::Option<&crate::types::WisdomInfo> {
self.wisdom_info.as_ref()
}
+ /// 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.
+ pub fn customer_id(&self) -> ::std::option::Option<&str> {
+ self.customer_id.as_deref()
+ }
/// The customer or external third party participant endpoint.
pub fn customer_endpoint(&self) -> ::std::option::Option<&crate::types::EndpointInfo> {
self.customer_endpoint.as_ref()
@@ -249,6 +255,7 @@ impl ::std::fmt::Debug for Contact {
formatter.field("scheduled_timestamp", &self.scheduled_timestamp);
formatter.field("related_contact_id", &self.related_contact_id);
formatter.field("wisdom_info", &self.wisdom_info);
+ formatter.field("customer_id", &self.customer_id);
formatter.field("customer_endpoint", &self.customer_endpoint);
formatter.field("system_endpoint", &self.system_endpoint);
formatter.field("queue_time_adjustment_seconds", &self.queue_time_adjustment_seconds);
@@ -299,6 +306,7 @@ pub struct ContactBuilder {
pub(crate) scheduled_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) related_contact_id: ::std::option::Option<::std::string::String>,
pub(crate) wisdom_info: ::std::option::Option,
+ pub(crate) customer_id: ::std::option::Option<::std::string::String>,
pub(crate) customer_endpoint: ::std::option::Option,
pub(crate) system_endpoint: ::std::option::Option,
pub(crate) queue_time_adjustment_seconds: ::std::option::Option,
@@ -610,6 +618,20 @@ impl ContactBuilder {
pub fn get_wisdom_info(&self) -> &::std::option::Option {
&self.wisdom_info
}
+ /// 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.
+ pub fn customer_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.customer_id = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// 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.
+ pub fn set_customer_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.customer_id = input;
+ self
+ }
+ /// 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.
+ pub fn get_customer_id(&self) -> &::std::option::Option<::std::string::String> {
+ &self.customer_id
+ }
/// The customer or external third party participant endpoint.
pub fn customer_endpoint(mut self, input: crate::types::EndpointInfo) -> Self {
self.customer_endpoint = ::std::option::Option::Some(input);
@@ -861,6 +883,7 @@ impl ContactBuilder {
scheduled_timestamp: self.scheduled_timestamp,
related_contact_id: self.related_contact_id,
wisdom_info: self.wisdom_info,
+ customer_id: self.customer_id,
customer_endpoint: self.customer_endpoint,
system_endpoint: self.system_endpoint,
queue_time_adjustment_seconds: self.queue_time_adjustment_seconds,
@@ -903,6 +926,7 @@ impl ::std::fmt::Debug for ContactBuilder {
formatter.field("scheduled_timestamp", &self.scheduled_timestamp);
formatter.field("related_contact_id", &self.related_contact_id);
formatter.field("wisdom_info", &self.wisdom_info);
+ formatter.field("customer_id", &self.customer_id);
formatter.field("customer_endpoint", &self.customer_endpoint);
formatter.field("system_endpoint", &self.system_endpoint);
formatter.field("queue_time_adjustment_seconds", &self.queue_time_adjustment_seconds);
diff --git a/sdk/connect/src/types/_instance_attribute_type.rs b/sdk/connect/src/types/_instance_attribute_type.rs
index e84cbb7eb638..f56de2d71522 100644
--- a/sdk/connect/src/types/_instance_attribute_type.rs
+++ b/sdk/connect/src/types/_instance_attribute_type.rs
@@ -20,6 +20,7 @@
/// InstanceAttributeType::EnhancedContactMonitoring => { /* ... */ },
/// InstanceAttributeType::HighVolumeOutbound => { /* ... */ },
/// InstanceAttributeType::InboundCalls => { /* ... */ },
+/// InstanceAttributeType::MultiPartyChatConference => { /* ... */ },
/// InstanceAttributeType::MultiPartyConference => { /* ... */ },
/// InstanceAttributeType::OutboundCalls => { /* ... */ },
/// InstanceAttributeType::UseCustomTtsVoices => { /* ... */ },
@@ -68,6 +69,8 @@ pub enum InstanceAttributeType {
#[allow(missing_docs)] // documentation missing in model
InboundCalls,
#[allow(missing_docs)] // documentation missing in model
+ MultiPartyChatConference,
+ #[allow(missing_docs)] // documentation missing in model
MultiPartyConference,
#[allow(missing_docs)] // documentation missing in model
OutboundCalls,
@@ -88,6 +91,7 @@ impl ::std::convert::From<&str> for InstanceAttributeType {
"ENHANCED_CONTACT_MONITORING" => InstanceAttributeType::EnhancedContactMonitoring,
"HIGH_VOLUME_OUTBOUND" => InstanceAttributeType::HighVolumeOutbound,
"INBOUND_CALLS" => InstanceAttributeType::InboundCalls,
+ "MULTI_PARTY_CHAT_CONFERENCE" => InstanceAttributeType::MultiPartyChatConference,
"MULTI_PARTY_CONFERENCE" => InstanceAttributeType::MultiPartyConference,
"OUTBOUND_CALLS" => InstanceAttributeType::OutboundCalls,
"USE_CUSTOM_TTS_VOICES" => InstanceAttributeType::UseCustomTtsVoices,
@@ -114,6 +118,7 @@ impl InstanceAttributeType {
InstanceAttributeType::EnhancedContactMonitoring => "ENHANCED_CONTACT_MONITORING",
InstanceAttributeType::HighVolumeOutbound => "HIGH_VOLUME_OUTBOUND",
InstanceAttributeType::InboundCalls => "INBOUND_CALLS",
+ InstanceAttributeType::MultiPartyChatConference => "MULTI_PARTY_CHAT_CONFERENCE",
InstanceAttributeType::MultiPartyConference => "MULTI_PARTY_CONFERENCE",
InstanceAttributeType::OutboundCalls => "OUTBOUND_CALLS",
InstanceAttributeType::UseCustomTtsVoices => "USE_CUSTOM_TTS_VOICES",
@@ -131,6 +136,7 @@ impl InstanceAttributeType {
"ENHANCED_CONTACT_MONITORING",
"HIGH_VOLUME_OUTBOUND",
"INBOUND_CALLS",
+ "MULTI_PARTY_CHAT_CONFERENCE",
"MULTI_PARTY_CONFERENCE",
"OUTBOUND_CALLS",
"USE_CUSTOM_TTS_VOICES",
@@ -165,6 +171,7 @@ impl ::std::fmt::Display for InstanceAttributeType {
InstanceAttributeType::EnhancedContactMonitoring => write!(f, "ENHANCED_CONTACT_MONITORING"),
InstanceAttributeType::HighVolumeOutbound => write!(f, "HIGH_VOLUME_OUTBOUND"),
InstanceAttributeType::InboundCalls => write!(f, "INBOUND_CALLS"),
+ InstanceAttributeType::MultiPartyChatConference => write!(f, "MULTI_PARTY_CHAT_CONFERENCE"),
InstanceAttributeType::MultiPartyConference => write!(f, "MULTI_PARTY_CONFERENCE"),
InstanceAttributeType::OutboundCalls => write!(f, "OUTBOUND_CALLS"),
InstanceAttributeType::UseCustomTtsVoices => write!(f, "USE_CUSTOM_TTS_VOICES"),
diff --git a/sdk/connect/src/types/_integration_type.rs b/sdk/connect/src/types/_integration_type.rs
index e9aec988c7e8..b779c7ca9ff0 100644
--- a/sdk/connect/src/types/_integration_type.rs
+++ b/sdk/connect/src/types/_integration_type.rs
@@ -16,6 +16,7 @@
/// IntegrationType::Application => { /* ... */ },
/// IntegrationType::CallTransferConnector => { /* ... */ },
/// IntegrationType::CasesDomain => { /* ... */ },
+/// IntegrationType::CognitoUserPool => { /* ... */ },
/// IntegrationType::Event => { /* ... */ },
/// IntegrationType::FileScanner => { /* ... */ },
/// IntegrationType::PinpointApp => { /* ... */ },
@@ -62,6 +63,8 @@ pub enum IntegrationType {
#[allow(missing_docs)] // documentation missing in model
CasesDomain,
#[allow(missing_docs)] // documentation missing in model
+ CognitoUserPool,
+ #[allow(missing_docs)] // documentation missing in model
Event,
#[allow(missing_docs)] // documentation missing in model
FileScanner,
@@ -90,6 +93,7 @@ impl ::std::convert::From<&str> for IntegrationType {
"APPLICATION" => IntegrationType::Application,
"CALL_TRANSFER_CONNECTOR" => IntegrationType::CallTransferConnector,
"CASES_DOMAIN" => IntegrationType::CasesDomain,
+ "COGNITO_USER_POOL" => IntegrationType::CognitoUserPool,
"EVENT" => IntegrationType::Event,
"FILE_SCANNER" => IntegrationType::FileScanner,
"PINPOINT_APP" => IntegrationType::PinpointApp,
@@ -118,6 +122,7 @@ impl IntegrationType {
IntegrationType::Application => "APPLICATION",
IntegrationType::CallTransferConnector => "CALL_TRANSFER_CONNECTOR",
IntegrationType::CasesDomain => "CASES_DOMAIN",
+ IntegrationType::CognitoUserPool => "COGNITO_USER_POOL",
IntegrationType::Event => "EVENT",
IntegrationType::FileScanner => "FILE_SCANNER",
IntegrationType::PinpointApp => "PINPOINT_APP",
@@ -137,6 +142,7 @@ impl IntegrationType {
"APPLICATION",
"CALL_TRANSFER_CONNECTOR",
"CASES_DOMAIN",
+ "COGNITO_USER_POOL",
"EVENT",
"FILE_SCANNER",
"PINPOINT_APP",
@@ -173,6 +179,7 @@ impl ::std::fmt::Display for IntegrationType {
IntegrationType::Application => write!(f, "APPLICATION"),
IntegrationType::CallTransferConnector => write!(f, "CALL_TRANSFER_CONNECTOR"),
IntegrationType::CasesDomain => write!(f, "CASES_DOMAIN"),
+ IntegrationType::CognitoUserPool => write!(f, "COGNITO_USER_POOL"),
IntegrationType::Event => write!(f, "EVENT"),
IntegrationType::FileScanner => write!(f, "FILE_SCANNER"),
IntegrationType::PinpointApp => write!(f, "PINPOINT_APP"),
diff --git a/sdk/connect/src/types/_voice_recording_configuration.rs b/sdk/connect/src/types/_voice_recording_configuration.rs
index bc6e17866831..58f8e9d3b04d 100644
--- a/sdk/connect/src/types/_voice_recording_configuration.rs
+++ b/sdk/connect/src/types/_voice_recording_configuration.rs
@@ -7,6 +7,7 @@ pub struct VoiceRecordingConfiguration {
/// Identifies which track is being recorded.
pub voice_recording_track: ::std::option::Option,
/// Identifies which IVR track is being recorded.
+ /// One and only one of the track configurations should be presented in the request.
pub ivr_recording_track: ::std::option::Option,
}
impl VoiceRecordingConfiguration {
@@ -15,6 +16,7 @@ impl VoiceRecordingConfiguration {
self.voice_recording_track.as_ref()
}
/// Identifies which IVR track is being recorded.
+ /// One and only one of the track configurations should be presented in the request.
pub fn ivr_recording_track(&self) -> ::std::option::Option<&crate::types::IvrRecordingTrack> {
self.ivr_recording_track.as_ref()
}
@@ -49,16 +51,19 @@ impl VoiceRecordingConfigurationBuilder {
&self.voice_recording_track
}
/// Identifies which IVR track is being recorded.
+ /// One and only one of the track configurations should be presented in the request.
pub fn ivr_recording_track(mut self, input: crate::types::IvrRecordingTrack) -> Self {
self.ivr_recording_track = ::std::option::Option::Some(input);
self
}
/// Identifies which IVR track is being recorded.
+ /// One and only one of the track configurations should be presented in the request.
pub fn set_ivr_recording_track(mut self, input: ::std::option::Option) -> Self {
self.ivr_recording_track = input;
self
}
/// Identifies which IVR track is being recorded.
+ /// One and only one of the track configurations should be presented in the request.
pub fn get_ivr_recording_track(&self) -> &::std::option::Option {
&self.ivr_recording_track
}
diff --git a/sdk/connect/src/types/error.rs b/sdk/connect/src/types/error.rs
index ad327edbed34..14cf72d17bd7 100644
--- a/sdk/connect/src/types/error.rs
+++ b/sdk/connect/src/types/error.rs
@@ -27,14 +27,14 @@ pub use crate::types::error::_conditional_operation_failed_exception::Conditiona
pub use crate::types::error::_idempotency_exception::IdempotencyException;
+pub use crate::types::error::_conflict_exception::ConflictException;
+
pub use crate::types::error::_limit_exceeded_exception::LimitExceededException;
pub use crate::types::error::_invalid_contact_flow_module_exception::InvalidContactFlowModuleException;
pub use crate::types::error::_invalid_contact_flow_exception::InvalidContactFlowException;
-pub use crate::types::error::_conflict_exception::ConflictException;
-
pub use crate::types::error::_contact_not_found_exception::ContactNotFoundException;
pub use crate::types::error::_outbound_contact_not_permitted_exception::OutboundContactNotPermittedException;
diff --git a/sdk/connect/src/types/error/builders.rs b/sdk/connect/src/types/error/builders.rs
index 3436d1e0695f..8eebe26d149a 100644
--- a/sdk/connect/src/types/error/builders.rs
+++ b/sdk/connect/src/types/error/builders.rs
@@ -27,14 +27,14 @@ pub use crate::types::error::_conditional_operation_failed_exception::Conditiona
pub use crate::types::error::_idempotency_exception::IdempotencyExceptionBuilder;
+pub use crate::types::error::_conflict_exception::ConflictExceptionBuilder;
+
pub use crate::types::error::_limit_exceeded_exception::LimitExceededExceptionBuilder;
pub use crate::types::error::_invalid_contact_flow_module_exception::InvalidContactFlowModuleExceptionBuilder;
pub use crate::types::error::_invalid_contact_flow_exception::InvalidContactFlowExceptionBuilder;
-pub use crate::types::error::_conflict_exception::ConflictExceptionBuilder;
-
pub use crate::types::error::_contact_not_found_exception::ContactNotFoundExceptionBuilder;
pub use crate::types::error::_outbound_contact_not_permitted_exception::OutboundContactNotPermittedExceptionBuilder;
diff --git a/sdk/connectparticipant/Cargo.toml b/sdk/connectparticipant/Cargo.toml
index 4c4a0cc85051..ad3ff9575375 100644
--- a/sdk/connectparticipant/Cargo.toml
+++ b/sdk/connectparticipant/Cargo.toml
@@ -1,7 +1,7 @@
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
[package]
name = "aws-sdk-connectparticipant"
-version = "1.52.0"
+version = "1.53.0"
authors = ["AWS Rust SDK Team ", "Russell Cohen "]
description = "AWS SDK for Amazon Connect Participant Service"
edition = "2021"
diff --git a/sdk/connectparticipant/README.md b/sdk/connectparticipant/README.md
index c9e3cf257234..670d2d12432f 100644
--- a/sdk/connectparticipant/README.md
+++ b/sdk/connectparticipant/README.md
@@ -1,5 +1,8 @@
# aws-sdk-connectparticipant
+ - [Participant Service actions](https://docs.aws.amazon.com/connect/latest/APIReference/API_Operations_Amazon_Connect_Participant_Service.html)
+ - [Participant Service data types](https://docs.aws.amazon.com/connect/latest/APIReference/API_Types_Amazon_Connect_Participant_Service.html)
+
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.
@@ -16,7 +19,7 @@ your project, add the following to your **Cargo.toml** file:
```toml
[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-aws-sdk-connectparticipant = "1.52.0"
+aws-sdk-connectparticipant = "1.53.0"
tokio = { version = "1", features = ["full"] }
```
diff --git a/sdk/connectparticipant/src/client.rs b/sdk/connectparticipant/src/client.rs
index c31657890f32..2abf12ea5206 100644
--- a/sdk/connectparticipant/src/client.rs
+++ b/sdk/connectparticipant/src/client.rs
@@ -59,14 +59,14 @@ pub(crate) struct Handle {
/// # Using the `Client`
///
/// A client has a function for every operation that can be performed by the service.
-/// For example, the [`CompleteAttachmentUpload`](crate::operation::complete_attachment_upload) operation has
-/// a [`Client::complete_attachment_upload`], function which returns a builder for that operation.
+/// For example, the [`CancelParticipantAuthentication`](crate::operation::cancel_participant_authentication) operation has
+/// a [`Client::cancel_participant_authentication`], function which returns a builder for that operation.
/// The fluent builder ultimately has a `send()` function that returns an async future that
/// returns a result, as illustrated below:
///
/// ```rust,ignore
-/// let result = client.complete_attachment_upload()
-/// .client_token("example")
+/// let result = client.cancel_participant_authentication()
+/// .session_id("example")
/// .send()
/// .await;
/// ```
@@ -136,6 +136,8 @@ impl Client {
}
}
+mod cancel_participant_authentication;
+
mod complete_attachment_upload;
mod create_participant_connection;
@@ -151,7 +153,7 @@ mod create_participant_connection;
/// # let client: aws_sdk_connectparticipant::Client = unimplemented!();
/// use ::http::header::{HeaderName, HeaderValue};
///
-/// let result = client.complete_attachment_upload()
+/// let result = client.cancel_participant_authentication()
/// .customize()
/// .mutate_request(|req| {
/// // Add `x-example-header` with value
@@ -173,6 +175,8 @@ mod disconnect_participant;
mod get_attachment;
+mod get_authentication_url;
+
mod get_transcript;
mod send_event;
diff --git a/sdk/connectparticipant/src/client/cancel_participant_authentication.rs b/sdk/connectparticipant/src/client/cancel_participant_authentication.rs
new file mode 100644
index 000000000000..79fd990c537f
--- /dev/null
+++ b/sdk/connectparticipant/src/client/cancel_participant_authentication.rs
@@ -0,0 +1,15 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+impl super::Client {
+ /// Constructs a fluent builder for the [`CancelParticipantAuthentication`](crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder) operation.
+ ///
+ /// - The fluent builder is configurable:
+ /// - [`session_id(impl Into)`](crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder::session_id) / [`set_session_id(Option)`](crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder::set_session_id): required: **true**The sessionId
provided in the authenticationInitiated
event.
+ /// - [`connection_token(impl Into)`](crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder::connection_token) / [`set_connection_token(Option)`](crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder::set_connection_token): required: **true**The authentication token associated with the participant's connection.
+ /// - On success, responds with [`CancelParticipantAuthenticationOutput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput)
+ /// - On failure, responds with [`SdkError`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError)
+ pub fn cancel_participant_authentication(
+ &self,
+ ) -> crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder {
+ crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationFluentBuilder::new(self.handle.clone())
+ }
+}
diff --git a/sdk/connectparticipant/src/client/get_attachment.rs b/sdk/connectparticipant/src/client/get_attachment.rs
index df4b122bc898..5ea6f747c214 100644
--- a/sdk/connectparticipant/src/client/get_attachment.rs
+++ b/sdk/connectparticipant/src/client/get_attachment.rs
@@ -5,9 +5,11 @@ impl super::Client {
/// - The fluent builder is configurable:
/// - [`attachment_id(impl Into)`](crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::attachment_id) / [`set_attachment_id(Option)`](crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::set_attachment_id): required: **true**A unique identifier for the attachment.
/// - [`connection_token(impl Into)`](crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::connection_token) / [`set_connection_token(Option)`](crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::set_connection_token): required: **true**The authentication token associated with the participant's connection.
+ /// - [`url_expiry_in_seconds(i32)`](crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::url_expiry_in_seconds) / [`set_url_expiry_in_seconds(Option)`](crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::set_url_expiry_in_seconds): required: **false**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.
/// - On success, responds with [`GetAttachmentOutput`](crate::operation::get_attachment::GetAttachmentOutput) with field(s):
/// - [`url(Option)`](crate::operation::get_attachment::GetAttachmentOutput::url): This is the pre-signed URL that can be used for uploading the file to Amazon S3 when used in response to StartAttachmentUpload .
/// - [`url_expiry(Option)`](crate::operation::get_attachment::GetAttachmentOutput::url_expiry): 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.
+ /// - [`attachment_size_in_bytes(i64)`](crate::operation::get_attachment::GetAttachmentOutput::attachment_size_in_bytes): The size of the attachment in bytes.
/// - On failure, responds with [`SdkError`](crate::operation::get_attachment::GetAttachmentError)
pub fn get_attachment(&self) -> crate::operation::get_attachment::builders::GetAttachmentFluentBuilder {
crate::operation::get_attachment::builders::GetAttachmentFluentBuilder::new(self.handle.clone())
diff --git a/sdk/connectparticipant/src/client/get_authentication_url.rs b/sdk/connectparticipant/src/client/get_authentication_url.rs
new file mode 100644
index 000000000000..17aa77322c8c
--- /dev/null
+++ b/sdk/connectparticipant/src/client/get_authentication_url.rs
@@ -0,0 +1,15 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+impl super::Client {
+ /// Constructs a fluent builder for the [`GetAuthenticationUrl`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder) operation.
+ ///
+ /// - The fluent builder is configurable:
+ /// - [`session_id(impl Into)`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::session_id) / [`set_session_id(Option)`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::set_session_id): required: **true**The sessionId provided in the authenticationInitiated event.
+ /// - [`redirect_uri(impl Into)`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::redirect_uri) / [`set_redirect_uri(Option)`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::set_redirect_uri): required: **true**The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ /// - [`connection_token(impl Into)`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::connection_token) / [`set_connection_token(Option)`](crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::set_connection_token): required: **true**The authentication token associated with the participant's connection.
+ /// - On success, responds with [`GetAuthenticationUrlOutput`](crate::operation::get_authentication_url::GetAuthenticationUrlOutput) with field(s):
+ /// - [`authentication_url(Option)`](crate::operation::get_authentication_url::GetAuthenticationUrlOutput::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.
+ /// - On failure, responds with [`SdkError`](crate::operation::get_authentication_url::GetAuthenticationUrlError)
+ pub fn get_authentication_url(&self) -> crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder {
+ crate::operation::get_authentication_url::builders::GetAuthenticationUrlFluentBuilder::new(self.handle.clone())
+ }
+}
diff --git a/sdk/connectparticipant/src/client/start_attachment_upload.rs b/sdk/connectparticipant/src/client/start_attachment_upload.rs
index b371ada4ac97..677834452a44 100644
--- a/sdk/connectparticipant/src/client/start_attachment_upload.rs
+++ b/sdk/connectparticipant/src/client/start_attachment_upload.rs
@@ -10,7 +10,7 @@ impl super::Client {
/// - [`connection_token(impl Into)`](crate::operation::start_attachment_upload::builders::StartAttachmentUploadFluentBuilder::connection_token) / [`set_connection_token(Option)`](crate::operation::start_attachment_upload::builders::StartAttachmentUploadFluentBuilder::set_connection_token): required: **true**The authentication token associated with the participant's connection.
/// - On success, responds with [`StartAttachmentUploadOutput`](crate::operation::start_attachment_upload::StartAttachmentUploadOutput) with field(s):
/// - [`attachment_id(Option)`](crate::operation::start_attachment_upload::StartAttachmentUploadOutput::attachment_id): A unique identifier for the attachment.
- /// - [`upload_metadata(Option)`](crate::operation::start_attachment_upload::StartAttachmentUploadOutput::upload_metadata): Fields to be used while uploading the attachment.
+ /// - [`upload_metadata(Option)`](crate::operation::start_attachment_upload::StartAttachmentUploadOutput::upload_metadata): The headers to be provided while uploading the file to the URL.
/// - On failure, responds with [`SdkError`](crate::operation::start_attachment_upload::StartAttachmentUploadError)
pub fn start_attachment_upload(&self) -> crate::operation::start_attachment_upload::builders::StartAttachmentUploadFluentBuilder {
crate::operation::start_attachment_upload::builders::StartAttachmentUploadFluentBuilder::new(self.handle.clone())
diff --git a/sdk/connectparticipant/src/error_meta.rs b/sdk/connectparticipant/src/error_meta.rs
index d1b13a81ff7a..4f4bd465b918 100644
--- a/sdk/connectparticipant/src/error_meta.rs
+++ b/sdk/connectparticipant/src/error_meta.rs
@@ -68,6 +68,50 @@ impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for Error {
}
}
}
+impl
+ From<
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ R,
+ >,
+ > for Error
+where
+ R: Send + Sync + std::fmt::Debug + 'static,
+{
+ fn from(
+ err: ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ R,
+ >,
+ ) -> Self {
+ match err {
+ ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
+ _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
+ source: err.into(),
+ }),
+ }
+ }
+}
+impl From for Error {
+ fn from(err: crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError) -> Self {
+ match err {
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError::AccessDeniedException(inner) => {
+ Error::AccessDeniedException(inner)
+ }
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError::InternalServerException(inner) => {
+ Error::InternalServerException(inner)
+ }
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError::ThrottlingException(inner) => {
+ Error::ThrottlingException(inner)
+ }
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError::ValidationException(inner) => {
+ Error::ValidationException(inner)
+ }
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError::Unhandled(inner) => Error::Unhandled(inner),
+ }
+ }
+}
impl From<::aws_smithy_runtime_api::client::result::SdkError>
for Error
where
@@ -224,6 +268,33 @@ impl From for Error {
}
}
}
+impl From<::aws_smithy_runtime_api::client::result::SdkError> for Error
+where
+ R: Send + Sync + std::fmt::Debug + 'static,
+{
+ fn from(err: ::aws_smithy_runtime_api::client::result::SdkError) -> Self {
+ match err {
+ ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
+ _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
+ source: err.into(),
+ }),
+ }
+ }
+}
+impl From for Error {
+ fn from(err: crate::operation::get_authentication_url::GetAuthenticationUrlError) -> Self {
+ match err {
+ crate::operation::get_authentication_url::GetAuthenticationUrlError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
+ crate::operation::get_authentication_url::GetAuthenticationUrlError::InternalServerException(inner) => {
+ Error::InternalServerException(inner)
+ }
+ crate::operation::get_authentication_url::GetAuthenticationUrlError::ThrottlingException(inner) => Error::ThrottlingException(inner),
+ crate::operation::get_authentication_url::GetAuthenticationUrlError::ValidationException(inner) => Error::ValidationException(inner),
+ crate::operation::get_authentication_url::GetAuthenticationUrlError::Unhandled(inner) => Error::Unhandled(inner),
+ }
+ }
+}
impl From<::aws_smithy_runtime_api::client::result::SdkError> for Error
where
R: Send + Sync + std::fmt::Debug + 'static,
diff --git a/sdk/connectparticipant/src/lib.rs b/sdk/connectparticipant/src/lib.rs
index 8d2cc1aba3ed..5a5f33879bb9 100644
--- a/sdk/connectparticipant/src/lib.rs
+++ b/sdk/connectparticipant/src/lib.rs
@@ -17,6 +17,9 @@
#![forbid(unsafe_code)]
#![warn(missing_docs)]
#![cfg_attr(docsrs, feature(doc_auto_cfg))]
+//! - [Participant Service actions](https://docs.aws.amazon.com/connect/latest/APIReference/API_Operations_Amazon_Connect_Participant_Service.html)
+//! - [Participant Service data types](https://docs.aws.amazon.com/connect/latest/APIReference/API_Types_Amazon_Connect_Participant_Service.html)
+//!
//! 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.
@@ -33,7 +36,7 @@
//! ```toml
//! [dependencies]
//! aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
-//! aws-sdk-connectparticipant = "1.52.0"
+//! aws-sdk-connectparticipant = "1.53.0"
//! tokio = { version = "1", features = ["full"] }
//! ```
//!
@@ -150,14 +153,14 @@ pub use config::Config;
/// # Using the `Client`
///
/// A client has a function for every operation that can be performed by the service.
-/// For example, the [`CompleteAttachmentUpload`](crate::operation::complete_attachment_upload) operation has
-/// a [`Client::complete_attachment_upload`], function which returns a builder for that operation.
+/// For example, the [`CancelParticipantAuthentication`](crate::operation::cancel_participant_authentication) operation has
+/// a [`Client::cancel_participant_authentication`], function which returns a builder for that operation.
/// The fluent builder ultimately has a `send()` function that returns an async future that
/// returns a result, as illustrated below:
///
/// ```rust,ignore
-/// let result = client.complete_attachment_upload()
-/// .client_token("example")
+/// let result = client.cancel_participant_authentication()
+/// .session_id("example")
/// .send()
/// .await;
/// ```
diff --git a/sdk/connectparticipant/src/operation.rs b/sdk/connectparticipant/src/operation.rs
index f59c86515a73..f5df3dc4d6a0 100644
--- a/sdk/connectparticipant/src/operation.rs
+++ b/sdk/connectparticipant/src/operation.rs
@@ -1,6 +1,9 @@
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use ::aws_types::request_id::RequestId;
+/// Types for the `CancelParticipantAuthentication` operation.
+pub mod cancel_participant_authentication;
+
/// Types for the `CompleteAttachmentUpload` operation.
pub mod complete_attachment_upload;
@@ -16,6 +19,9 @@ pub mod disconnect_participant;
/// Types for the `GetAttachment` operation.
pub mod get_attachment;
+/// Types for the `GetAuthenticationUrl` operation.
+pub mod get_authentication_url;
+
/// Types for the `GetTranscript` operation.
pub mod get_transcript;
diff --git a/sdk/connectparticipant/src/operation/cancel_participant_authentication.rs b/sdk/connectparticipant/src/operation/cancel_participant_authentication.rs
new file mode 100644
index 000000000000..f39525185e1a
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/cancel_participant_authentication.rs
@@ -0,0 +1,394 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+/// Orchestration and serialization glue logic for `CancelParticipantAuthentication`.
+#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct CancelParticipantAuthentication;
+impl CancelParticipantAuthentication {
+ /// Creates a new `CancelParticipantAuthentication`
+ pub fn new() -> Self {
+ Self
+ }
+ pub(crate) async fn orchestrate(
+ runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ input: crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput,
+ ) -> ::std::result::Result<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError<
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >| {
+ err.map_service_error(|err| {
+ err.downcast::()
+ .expect("correct error type")
+ })
+ };
+ let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None)
+ .await
+ .map_err(map_err)?;
+ let output = context.finalize().map_err(map_err)?;
+ ::std::result::Result::Ok(
+ output
+ .downcast::()
+ .expect("correct output type"),
+ )
+ }
+
+ pub(crate) async fn orchestrate_with_stop_point(
+ runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ input: crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput,
+ stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint,
+ ) -> ::std::result::Result<
+ ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input);
+ ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point(
+ "connectparticipant",
+ "CancelParticipantAuthentication",
+ input,
+ runtime_plugins,
+ stop_point,
+ )
+ .await
+ }
+
+ pub(crate) fn operation_runtime_plugins(
+ client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ client_config: &crate::config::Config,
+ config_override: ::std::option::Option,
+ ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins {
+ let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new());
+ runtime_plugins = runtime_plugins.with_client_plugin(crate::auth_plugin::DefaultAuthOptionsPlugin::new(vec![
+ ::aws_runtime::auth::sigv4::SCHEME_ID,
+ ]));
+ if let ::std::option::Option::Some(config_override) = config_override {
+ for plugin in config_override.runtime_plugins.iter().cloned() {
+ runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
+ }
+ runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
+ config_override,
+ client_config.config.clone(),
+ &client_config.runtime_components,
+ ));
+ }
+ runtime_plugins
+ }
+}
+impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for CancelParticipantAuthentication {
+ fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
+ let mut cfg = ::aws_smithy_types::config_bag::Layer::new("CancelParticipantAuthentication");
+
+ cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
+ CancelParticipantAuthenticationRequestSerializer,
+ ));
+ cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
+ CancelParticipantAuthenticationResponseDeserializer,
+ ));
+
+ cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
+ ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
+ ));
+
+ cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
+ "CancelParticipantAuthentication",
+ "connectparticipant",
+ ));
+ let mut signing_options = ::aws_runtime::auth::SigningOptions::default();
+ signing_options.double_uri_encode = true;
+ signing_options.content_sha256_header = false;
+ signing_options.normalize_uri_path = true;
+ signing_options.payload_override = None;
+
+ cfg.store_put(::aws_runtime::auth::SigV4OperationSigningConfig {
+ signing_options,
+ ..::std::default::Default::default()
+ });
+
+ ::std::option::Option::Some(cfg.freeze())
+ }
+
+ fn runtime_components(
+ &self,
+ _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
+ ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
+ #[allow(unused_mut)]
+ let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("CancelParticipantAuthentication")
+ .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
+ .with_interceptor(CancelParticipantAuthenticationEndpointParamsInterceptor)
+ .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ >::new())
+ .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ >::new())
+ .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ >::new());
+
+ ::std::borrow::Cow::Owned(rcb)
+ }
+}
+
+#[derive(Debug)]
+struct CancelParticipantAuthenticationResponseDeserializer;
+impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for CancelParticipantAuthenticationResponseDeserializer {
+ fn deserialize_nonstreaming(
+ &self,
+ response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
+ let (success, status) = (response.status().is_success(), response.status().as_u16());
+ let headers = response.headers();
+ let body = response.body().bytes().expect("body loaded");
+ #[allow(unused_mut)]
+ let mut force_error = false;
+ ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
+ let parse_result = if !success && status != 200 || force_error {
+ crate::protocol_serde::shape_cancel_participant_authentication::de_cancel_participant_authentication_http_error(status, headers, body)
+ } else {
+ crate::protocol_serde::shape_cancel_participant_authentication::de_cancel_participant_authentication_http_response(status, headers, body)
+ };
+ crate::protocol_serde::type_erase_result(parse_result)
+ }
+}
+#[derive(Debug)]
+struct CancelParticipantAuthenticationRequestSerializer;
+impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for CancelParticipantAuthenticationRequestSerializer {
+ #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
+ fn serialize_input(
+ &self,
+ input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
+ _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
+ ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
+ let input = input
+ .downcast::()
+ .expect("correct type");
+ let _header_serialization_settings = _cfg
+ .load::()
+ .cloned()
+ .unwrap_or_default();
+ let mut request_builder = {
+ fn uri_base(
+ _input: &crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput,
+ output: &mut ::std::string::String,
+ ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
+ use ::std::fmt::Write as _;
+ ::std::write!(output, "/participant/cancel-authentication").expect("formatting should succeed");
+ ::std::result::Result::Ok(())
+ }
+ #[allow(clippy::unnecessary_wraps)]
+ fn update_http_builder(
+ input: &crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput,
+ builder: ::http::request::Builder,
+ ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
+ let mut uri = ::std::string::String::new();
+ uri_base(input, &mut uri)?;
+ let builder =
+ crate::protocol_serde::shape_cancel_participant_authentication::ser_cancel_participant_authentication_headers(input, builder)?;
+ ::std::result::Result::Ok(builder.method("POST").uri(uri))
+ }
+ let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
+ builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/json");
+ builder
+ };
+ let body = ::aws_smithy_types::body::SdkBody::from(
+ crate::protocol_serde::shape_cancel_participant_authentication::ser_cancel_participant_authentication_input(&input)?,
+ );
+ if let Some(content_length) = body.content_length() {
+ let content_length = content_length.to_string();
+ request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length);
+ }
+ ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
+ }
+}
+#[derive(Debug)]
+struct CancelParticipantAuthenticationEndpointParamsInterceptor;
+
+impl ::aws_smithy_runtime_api::client::interceptors::Intercept for CancelParticipantAuthenticationEndpointParamsInterceptor {
+ fn name(&self) -> &'static str {
+ "CancelParticipantAuthenticationEndpointParamsInterceptor"
+ }
+
+ fn read_before_execution(
+ &self,
+ context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
+ '_,
+ ::aws_smithy_runtime_api::client::interceptors::context::Input,
+ ::aws_smithy_runtime_api::client::interceptors::context::Output,
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ >,
+ cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
+ ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
+ let _input = context
+ .input()
+ .downcast_ref::()
+ .ok_or("failed to downcast to CancelParticipantAuthenticationInput")?;
+
+ let params = crate::config::endpoint::Params::builder()
+ .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
+ .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0))
+ .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
+ .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
+ .build()
+ .map_err(|err| {
+ ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
+ })?;
+ cfg.interceptor_state()
+ .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
+ ::std::result::Result::Ok(())
+ }
+}
+
+// The get_* functions below are generated from JMESPath expressions in the
+// operationContextParams trait. They target the operation's input shape.
+
+/// Error type for the `CancelParticipantAuthenticationError` operation.
+#[non_exhaustive]
+#[derive(::std::fmt::Debug)]
+pub enum CancelParticipantAuthenticationError {
+ /// You do not have sufficient access to perform this action.
+ AccessDeniedException(crate::types::error::AccessDeniedException),
+ /// This exception occurs when there is an internal failure in the Amazon Connect service.
+ InternalServerException(crate::types::error::InternalServerException),
+ /// The request was denied due to request throttling.
+ ThrottlingException(crate::types::error::ThrottlingException),
+ /// The input fails to satisfy the constraints specified by Amazon Connect.
+ ValidationException(crate::types::error::ValidationException),
+ /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
+ #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
+ variable wildcard pattern and check `.code()`:
+ \
+ `err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
+ \
+ See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-CancelParticipantAuthenticationError) for what information is available for the error.")]
+ Unhandled(crate::error::sealed_unhandled::Unhandled),
+}
+impl CancelParticipantAuthenticationError {
+ /// Creates the `CancelParticipantAuthenticationError::Unhandled` variant from any error type.
+ pub fn unhandled(
+ err: impl ::std::convert::Into<::std::boxed::Box>,
+ ) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source: err.into(),
+ meta: ::std::default::Default::default(),
+ })
+ }
+
+ /// Creates the `CancelParticipantAuthenticationError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
+ pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source: err.clone().into(),
+ meta: err,
+ })
+ }
+ ///
+ /// Returns error metadata, which includes the error code, message,
+ /// request ID, and potentially additional information.
+ ///
+ pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
+ match self {
+ Self::AccessDeniedException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::InternalServerException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::ThrottlingException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::ValidationException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::Unhandled(e) => &e.meta,
+ }
+ }
+ /// Returns `true` if the error kind is `CancelParticipantAuthenticationError::AccessDeniedException`.
+ pub fn is_access_denied_exception(&self) -> bool {
+ matches!(self, Self::AccessDeniedException(_))
+ }
+ /// Returns `true` if the error kind is `CancelParticipantAuthenticationError::InternalServerException`.
+ pub fn is_internal_server_exception(&self) -> bool {
+ matches!(self, Self::InternalServerException(_))
+ }
+ /// Returns `true` if the error kind is `CancelParticipantAuthenticationError::ThrottlingException`.
+ pub fn is_throttling_exception(&self) -> bool {
+ matches!(self, Self::ThrottlingException(_))
+ }
+ /// Returns `true` if the error kind is `CancelParticipantAuthenticationError::ValidationException`.
+ pub fn is_validation_exception(&self) -> bool {
+ matches!(self, Self::ValidationException(_))
+ }
+}
+impl ::std::error::Error for CancelParticipantAuthenticationError {
+ fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
+ match self {
+ Self::AccessDeniedException(_inner) => ::std::option::Option::Some(_inner),
+ Self::InternalServerException(_inner) => ::std::option::Option::Some(_inner),
+ Self::ThrottlingException(_inner) => ::std::option::Option::Some(_inner),
+ Self::ValidationException(_inner) => ::std::option::Option::Some(_inner),
+ Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
+ }
+ }
+}
+impl ::std::fmt::Display for CancelParticipantAuthenticationError {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ match self {
+ Self::AccessDeniedException(_inner) => _inner.fmt(f),
+ Self::InternalServerException(_inner) => _inner.fmt(f),
+ Self::ThrottlingException(_inner) => _inner.fmt(f),
+ Self::ValidationException(_inner) => _inner.fmt(f),
+ Self::Unhandled(_inner) => {
+ if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
+ write!(f, "unhandled error ({code})")
+ } else {
+ f.write_str("unhandled error")
+ }
+ }
+ }
+ }
+}
+impl ::aws_smithy_types::retry::ProvideErrorKind for CancelParticipantAuthenticationError {
+ fn code(&self) -> ::std::option::Option<&str> {
+ ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
+ }
+ fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
+ ::std::option::Option::None
+ }
+}
+impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for CancelParticipantAuthenticationError {
+ fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
+ match self {
+ Self::AccessDeniedException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::InternalServerException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::ThrottlingException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::ValidationException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::Unhandled(_inner) => &_inner.meta,
+ }
+ }
+}
+impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for CancelParticipantAuthenticationError {
+ fn create_unhandled_error(
+ source: ::std::boxed::Box,
+ meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
+ ) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source,
+ meta: meta.unwrap_or_default(),
+ })
+ }
+}
+impl ::aws_types::request_id::RequestId for crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError {
+ fn request_id(&self) -> Option<&str> {
+ self.meta().request_id()
+ }
+}
+
+pub use crate::operation::cancel_participant_authentication::_cancel_participant_authentication_output::CancelParticipantAuthenticationOutput;
+
+pub use crate::operation::cancel_participant_authentication::_cancel_participant_authentication_input::CancelParticipantAuthenticationInput;
+
+mod _cancel_participant_authentication_input;
+
+mod _cancel_participant_authentication_output;
+
+/// Builders
+pub mod builders;
diff --git a/sdk/connectparticipant/src/operation/cancel_participant_authentication/_cancel_participant_authentication_input.rs b/sdk/connectparticipant/src/operation/cancel_participant_authentication/_cancel_participant_authentication_input.rs
new file mode 100644
index 000000000000..d76cf3d42443
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/cancel_participant_authentication/_cancel_participant_authentication_input.rs
@@ -0,0 +1,80 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+pub struct CancelParticipantAuthenticationInput {
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub session_id: ::std::option::Option<::std::string::String>,
+ /// The authentication token associated with the participant's connection.
+ pub connection_token: ::std::option::Option<::std::string::String>,
+}
+impl CancelParticipantAuthenticationInput {
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub fn session_id(&self) -> ::std::option::Option<&str> {
+ self.session_id.as_deref()
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn connection_token(&self) -> ::std::option::Option<&str> {
+ self.connection_token.as_deref()
+ }
+}
+impl CancelParticipantAuthenticationInput {
+ /// Creates a new builder-style object to manufacture [`CancelParticipantAuthenticationInput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput).
+ pub fn builder() -> crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationInputBuilder {
+ crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationInputBuilder::default()
+ }
+}
+
+/// A builder for [`CancelParticipantAuthenticationInput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct CancelParticipantAuthenticationInputBuilder {
+ pub(crate) session_id: ::std::option::Option<::std::string::String>,
+ pub(crate) connection_token: ::std::option::Option<::std::string::String>,
+}
+impl CancelParticipantAuthenticationInputBuilder {
+ /// The sessionId
provided in the authenticationInitiated
event.
+ /// This field is required.
+ pub fn session_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.session_id = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub fn set_session_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.session_id = input;
+ self
+ }
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub fn get_session_id(&self) -> &::std::option::Option<::std::string::String> {
+ &self.session_id
+ }
+ /// The authentication token associated with the participant's connection.
+ /// This field is required.
+ pub fn connection_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.connection_token = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn set_connection_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.connection_token = input;
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn get_connection_token(&self) -> &::std::option::Option<::std::string::String> {
+ &self.connection_token
+ }
+ /// Consumes the builder and constructs a [`CancelParticipantAuthenticationInput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput).
+ pub fn build(
+ self,
+ ) -> ::std::result::Result<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput,
+ ::aws_smithy_types::error::operation::BuildError,
+ > {
+ ::std::result::Result::Ok(
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationInput {
+ session_id: self.session_id,
+ connection_token: self.connection_token,
+ },
+ )
+ }
+}
diff --git a/sdk/connectparticipant/src/operation/cancel_participant_authentication/_cancel_participant_authentication_output.rs b/sdk/connectparticipant/src/operation/cancel_participant_authentication/_cancel_participant_authentication_output.rs
new file mode 100644
index 000000000000..262e7bb987fe
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/cancel_participant_authentication/_cancel_participant_authentication_output.rs
@@ -0,0 +1,42 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+pub struct CancelParticipantAuthenticationOutput {
+ _request_id: Option,
+}
+impl ::aws_types::request_id::RequestId for CancelParticipantAuthenticationOutput {
+ fn request_id(&self) -> Option<&str> {
+ self._request_id.as_deref()
+ }
+}
+impl CancelParticipantAuthenticationOutput {
+ /// Creates a new builder-style object to manufacture [`CancelParticipantAuthenticationOutput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput).
+ pub fn builder() -> crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationOutputBuilder {
+ crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationOutputBuilder::default()
+ }
+}
+
+/// A builder for [`CancelParticipantAuthenticationOutput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct CancelParticipantAuthenticationOutputBuilder {
+ _request_id: Option,
+}
+impl CancelParticipantAuthenticationOutputBuilder {
+ pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self {
+ self._request_id = Some(request_id.into());
+ self
+ }
+
+ pub(crate) fn _set_request_id(&mut self, request_id: Option) -> &mut Self {
+ self._request_id = request_id;
+ self
+ }
+ /// Consumes the builder and constructs a [`CancelParticipantAuthenticationOutput`](crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput).
+ pub fn build(self) -> crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput {
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput {
+ _request_id: self._request_id,
+ }
+ }
+}
diff --git a/sdk/connectparticipant/src/operation/cancel_participant_authentication/builders.rs b/sdk/connectparticipant/src/operation/cancel_participant_authentication/builders.rs
new file mode 100644
index 000000000000..ee762994d035
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/cancel_participant_authentication/builders.rs
@@ -0,0 +1,141 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+pub use crate::operation::cancel_participant_authentication::_cancel_participant_authentication_output::CancelParticipantAuthenticationOutputBuilder;
+
+pub use crate::operation::cancel_participant_authentication::_cancel_participant_authentication_input::CancelParticipantAuthenticationInputBuilder;
+
+impl crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationInputBuilder {
+ /// Sends a request with this input using the given client.
+ pub async fn send_with(
+ self,
+ client: &crate::Client,
+ ) -> ::std::result::Result<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let mut fluent_builder = client.cancel_participant_authentication();
+ fluent_builder.inner = self;
+ fluent_builder.send().await
+ }
+}
+/// Fluent builder constructing a request to `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.
+///
+#[derive(::std::clone::Clone, ::std::fmt::Debug)]
+pub struct CancelParticipantAuthenticationFluentBuilder {
+ handle: ::std::sync::Arc,
+ inner: crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationInputBuilder,
+ config_override: ::std::option::Option,
+}
+impl
+ crate::client::customize::internal::CustomizableSend<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput,
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ > for CancelParticipantAuthenticationFluentBuilder
+{
+ fn send(
+ self,
+ config_override: crate::config::Builder,
+ ) -> crate::client::customize::internal::BoxFuture<
+ crate::client::customize::internal::SendResult<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput,
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ >,
+ > {
+ ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
+ }
+}
+impl CancelParticipantAuthenticationFluentBuilder {
+ /// Creates a new `CancelParticipantAuthenticationFluentBuilder`.
+ pub(crate) fn new(handle: ::std::sync::Arc) -> Self {
+ Self {
+ handle,
+ inner: ::std::default::Default::default(),
+ config_override: ::std::option::Option::None,
+ }
+ }
+ /// Access the CancelParticipantAuthentication as a reference.
+ pub fn as_input(&self) -> &crate::operation::cancel_participant_authentication::builders::CancelParticipantAuthenticationInputBuilder {
+ &self.inner
+ }
+ /// Sends the request and returns the response.
+ ///
+ /// If an error occurs, an `SdkError` will be returned with additional details that
+ /// can be matched against.
+ ///
+ /// By default, any retryable failures will be retried twice. Retry behavior
+ /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
+ /// set when configuring the client.
+ pub async fn send(
+ self,
+ ) -> ::std::result::Result<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let input = self
+ .inner
+ .build()
+ .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
+ let runtime_plugins = crate::operation::cancel_participant_authentication::CancelParticipantAuthentication::operation_runtime_plugins(
+ self.handle.runtime_plugins.clone(),
+ &self.handle.conf,
+ self.config_override,
+ );
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthentication::orchestrate(&runtime_plugins, input).await
+ }
+
+ /// Consumes this builder, creating a customizable operation that can be modified before being sent.
+ pub fn customize(
+ self,
+ ) -> crate::client::customize::CustomizableOperation<
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationOutput,
+ crate::operation::cancel_participant_authentication::CancelParticipantAuthenticationError,
+ Self,
+ > {
+ crate::client::customize::CustomizableOperation::new(self)
+ }
+ pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into) -> Self {
+ self.set_config_override(::std::option::Option::Some(config_override.into()));
+ self
+ }
+
+ pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option) -> &mut Self {
+ self.config_override = config_override;
+ self
+ }
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub fn session_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.session_id(input.into());
+ self
+ }
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub fn set_session_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_session_id(input);
+ self
+ }
+ /// The sessionId
provided in the authenticationInitiated
event.
+ pub fn get_session_id(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_session_id()
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn connection_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.connection_token(input.into());
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn set_connection_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_connection_token(input);
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn get_connection_token(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_connection_token()
+ }
+}
diff --git a/sdk/connectparticipant/src/operation/complete_attachment_upload/builders.rs b/sdk/connectparticipant/src/operation/complete_attachment_upload/builders.rs
index 130b3554d6ef..ca609c35f013 100644
--- a/sdk/connectparticipant/src/operation/complete_attachment_upload/builders.rs
+++ b/sdk/connectparticipant/src/operation/complete_attachment_upload/builders.rs
@@ -22,7 +22,8 @@ impl crate::operation::complete_attachment_upload::builders::CompleteAttachmentU
}
/// Fluent builder constructing a request to `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.
+/// 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 .
diff --git a/sdk/connectparticipant/src/operation/create_participant_connection/builders.rs b/sdk/connectparticipant/src/operation/create_participant_connection/builders.rs
index cde71f913fae..d1d06f5c19dd 100644
--- a/sdk/connectparticipant/src/operation/create_participant_connection/builders.rs
+++ b/sdk/connectparticipant/src/operation/create_participant_connection/builders.rs
@@ -22,7 +22,8 @@ impl crate::operation::create_participant_connection::builders::CreateParticipan
}
/// Fluent builder constructing a request to `CreateParticipantConnection`.
///
-/// Creates the participant's connection.
+/// 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.
diff --git a/sdk/connectparticipant/src/operation/describe_view/builders.rs b/sdk/connectparticipant/src/operation/describe_view/builders.rs
index c04337ba1303..f2e4d61bf285 100644
--- a/sdk/connectparticipant/src/operation/describe_view/builders.rs
+++ b/sdk/connectparticipant/src/operation/describe_view/builders.rs
@@ -23,6 +23,7 @@ impl crate::operation::describe_view::builders::DescribeViewInputBuilder {
/// Fluent builder constructing a request to `DescribeView`.
///
/// Retrieves the view for the specified view token.
+/// For security recommendations, see Amazon Connect Chat security best practices .
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct DescribeViewFluentBuilder {
handle: ::std::sync::Arc,
diff --git a/sdk/connectparticipant/src/operation/disconnect_participant/builders.rs b/sdk/connectparticipant/src/operation/disconnect_participant/builders.rs
index e31b8f5ba2b3..391eb9ea96e9 100644
--- a/sdk/connectparticipant/src/operation/disconnect_participant/builders.rs
+++ b/sdk/connectparticipant/src/operation/disconnect_participant/builders.rs
@@ -22,7 +22,8 @@ impl crate::operation::disconnect_participant::builders::DisconnectParticipantIn
}
/// Fluent builder constructing a request to `DisconnectParticipant`.
///
-/// Disconnects a participant.
+/// 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 .
diff --git a/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_input.rs b/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_input.rs
index 5188ca75cb3e..a786486129c5 100644
--- a/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_input.rs
+++ b/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_input.rs
@@ -7,6 +7,8 @@ pub struct GetAttachmentInput {
pub attachment_id: ::std::option::Option<::std::string::String>,
/// The authentication token associated with the participant's connection.
pub connection_token: ::std::option::Option<::std::string::String>,
+ /// 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.
+ pub url_expiry_in_seconds: ::std::option::Option,
}
impl GetAttachmentInput {
/// A unique identifier for the attachment.
@@ -17,6 +19,10 @@ impl GetAttachmentInput {
pub fn connection_token(&self) -> ::std::option::Option<&str> {
self.connection_token.as_deref()
}
+ /// 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.
+ pub fn url_expiry_in_seconds(&self) -> ::std::option::Option {
+ self.url_expiry_in_seconds
+ }
}
impl GetAttachmentInput {
/// Creates a new builder-style object to manufacture [`GetAttachmentInput`](crate::operation::get_attachment::GetAttachmentInput).
@@ -31,6 +37,7 @@ impl GetAttachmentInput {
pub struct GetAttachmentInputBuilder {
pub(crate) attachment_id: ::std::option::Option<::std::string::String>,
pub(crate) connection_token: ::std::option::Option<::std::string::String>,
+ pub(crate) url_expiry_in_seconds: ::std::option::Option,
}
impl GetAttachmentInputBuilder {
/// A unique identifier for the attachment.
@@ -63,6 +70,20 @@ impl GetAttachmentInputBuilder {
pub fn get_connection_token(&self) -> &::std::option::Option<::std::string::String> {
&self.connection_token
}
+ /// 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.
+ pub fn url_expiry_in_seconds(mut self, input: i32) -> Self {
+ self.url_expiry_in_seconds = ::std::option::Option::Some(input);
+ self
+ }
+ /// 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.
+ pub fn set_url_expiry_in_seconds(mut self, input: ::std::option::Option) -> Self {
+ self.url_expiry_in_seconds = input;
+ self
+ }
+ /// 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.
+ pub fn get_url_expiry_in_seconds(&self) -> &::std::option::Option {
+ &self.url_expiry_in_seconds
+ }
/// Consumes the builder and constructs a [`GetAttachmentInput`](crate::operation::get_attachment::GetAttachmentInput).
pub fn build(
self,
@@ -70,6 +91,7 @@ impl GetAttachmentInputBuilder {
::std::result::Result::Ok(crate::operation::get_attachment::GetAttachmentInput {
attachment_id: self.attachment_id,
connection_token: self.connection_token,
+ url_expiry_in_seconds: self.url_expiry_in_seconds,
})
}
}
diff --git a/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_output.rs b/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_output.rs
index 2231111ad886..dc4b3ba7f1db 100644
--- a/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_output.rs
+++ b/sdk/connectparticipant/src/operation/get_attachment/_get_attachment_output.rs
@@ -7,6 +7,8 @@ pub struct GetAttachmentOutput {
pub url: ::std::option::Option<::std::string::String>,
/// 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.
pub url_expiry: ::std::option::Option<::std::string::String>,
+ /// The size of the attachment in bytes.
+ pub attachment_size_in_bytes: i64,
_request_id: Option,
}
impl GetAttachmentOutput {
@@ -18,6 +20,10 @@ impl GetAttachmentOutput {
pub fn url_expiry(&self) -> ::std::option::Option<&str> {
self.url_expiry.as_deref()
}
+ /// The size of the attachment in bytes.
+ pub fn attachment_size_in_bytes(&self) -> i64 {
+ self.attachment_size_in_bytes
+ }
}
impl ::aws_types::request_id::RequestId for GetAttachmentOutput {
fn request_id(&self) -> Option<&str> {
@@ -37,6 +43,7 @@ impl GetAttachmentOutput {
pub struct GetAttachmentOutputBuilder {
pub(crate) url: ::std::option::Option<::std::string::String>,
pub(crate) url_expiry: ::std::option::Option<::std::string::String>,
+ pub(crate) attachment_size_in_bytes: ::std::option::Option,
_request_id: Option,
}
impl GetAttachmentOutputBuilder {
@@ -68,6 +75,21 @@ impl GetAttachmentOutputBuilder {
pub fn get_url_expiry(&self) -> &::std::option::Option<::std::string::String> {
&self.url_expiry
}
+ /// The size of the attachment in bytes.
+ /// This field is required.
+ pub fn attachment_size_in_bytes(mut self, input: i64) -> Self {
+ self.attachment_size_in_bytes = ::std::option::Option::Some(input);
+ self
+ }
+ /// The size of the attachment in bytes.
+ pub fn set_attachment_size_in_bytes(mut self, input: ::std::option::Option) -> Self {
+ self.attachment_size_in_bytes = input;
+ self
+ }
+ /// The size of the attachment in bytes.
+ pub fn get_attachment_size_in_bytes(&self) -> &::std::option::Option {
+ &self.attachment_size_in_bytes
+ }
pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self {
self._request_id = Some(request_id.into());
self
@@ -78,11 +100,21 @@ impl GetAttachmentOutputBuilder {
self
}
/// Consumes the builder and constructs a [`GetAttachmentOutput`](crate::operation::get_attachment::GetAttachmentOutput).
- pub fn build(self) -> crate::operation::get_attachment::GetAttachmentOutput {
- crate::operation::get_attachment::GetAttachmentOutput {
+ /// This method will fail if any of the following fields are not set:
+ /// - [`attachment_size_in_bytes`](crate::operation::get_attachment::builders::GetAttachmentOutputBuilder::attachment_size_in_bytes)
+ pub fn build(
+ self,
+ ) -> ::std::result::Result {
+ ::std::result::Result::Ok(crate::operation::get_attachment::GetAttachmentOutput {
url: self.url,
url_expiry: self.url_expiry,
+ attachment_size_in_bytes: self.attachment_size_in_bytes.ok_or_else(|| {
+ ::aws_smithy_types::error::operation::BuildError::missing_field(
+ "attachment_size_in_bytes",
+ "attachment_size_in_bytes was not specified but it is required when building GetAttachmentOutput",
+ )
+ })?,
_request_id: self._request_id,
- }
+ })
}
}
diff --git a/sdk/connectparticipant/src/operation/get_attachment/builders.rs b/sdk/connectparticipant/src/operation/get_attachment/builders.rs
index 4bc461d79622..245a8b53d6bd 100644
--- a/sdk/connectparticipant/src/operation/get_attachment/builders.rs
+++ b/sdk/connectparticipant/src/operation/get_attachment/builders.rs
@@ -22,7 +22,8 @@ impl crate::operation::get_attachment::builders::GetAttachmentInputBuilder {
}
/// Fluent builder constructing a request to `GetAttachment`.
///
-/// Provides a pre-signed URL for download of a completed attachment. This is an asynchronous API for use with active contacts.
+/// 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 .
@@ -139,4 +140,18 @@ impl GetAttachmentFluentBuilder {
pub fn get_connection_token(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_connection_token()
}
+ /// 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.
+ pub fn url_expiry_in_seconds(mut self, input: i32) -> Self {
+ self.inner = self.inner.url_expiry_in_seconds(input);
+ self
+ }
+ /// 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.
+ pub fn set_url_expiry_in_seconds(mut self, input: ::std::option::Option) -> Self {
+ self.inner = self.inner.set_url_expiry_in_seconds(input);
+ self
+ }
+ /// 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.
+ pub fn get_url_expiry_in_seconds(&self) -> &::std::option::Option {
+ self.inner.get_url_expiry_in_seconds()
+ }
}
diff --git a/sdk/connectparticipant/src/operation/get_authentication_url.rs b/sdk/connectparticipant/src/operation/get_authentication_url.rs
new file mode 100644
index 000000000000..dcbadbdb6efc
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/get_authentication_url.rs
@@ -0,0 +1,393 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+/// Orchestration and serialization glue logic for `GetAuthenticationUrl`.
+#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct GetAuthenticationUrl;
+impl GetAuthenticationUrl {
+ /// Creates a new `GetAuthenticationUrl`
+ pub fn new() -> Self {
+ Self
+ }
+ pub(crate) async fn orchestrate(
+ runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ input: crate::operation::get_authentication_url::GetAuthenticationUrlInput,
+ ) -> ::std::result::Result<
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError<
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >| {
+ err.map_service_error(|err| {
+ err.downcast::()
+ .expect("correct error type")
+ })
+ };
+ let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None)
+ .await
+ .map_err(map_err)?;
+ let output = context.finalize().map_err(map_err)?;
+ ::std::result::Result::Ok(
+ output
+ .downcast::()
+ .expect("correct output type"),
+ )
+ }
+
+ pub(crate) async fn orchestrate_with_stop_point(
+ runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ input: crate::operation::get_authentication_url::GetAuthenticationUrlInput,
+ stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint,
+ ) -> ::std::result::Result<
+ ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input);
+ ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point(
+ "connectparticipant",
+ "GetAuthenticationUrl",
+ input,
+ runtime_plugins,
+ stop_point,
+ )
+ .await
+ }
+
+ pub(crate) fn operation_runtime_plugins(
+ client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
+ client_config: &crate::config::Config,
+ config_override: ::std::option::Option,
+ ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins {
+ let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new());
+ runtime_plugins = runtime_plugins.with_client_plugin(crate::auth_plugin::DefaultAuthOptionsPlugin::new(vec![
+ ::aws_runtime::auth::sigv4::SCHEME_ID,
+ ]));
+ if let ::std::option::Option::Some(config_override) = config_override {
+ for plugin in config_override.runtime_plugins.iter().cloned() {
+ runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
+ }
+ runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
+ config_override,
+ client_config.config.clone(),
+ &client_config.runtime_components,
+ ));
+ }
+ runtime_plugins
+ }
+}
+impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for GetAuthenticationUrl {
+ fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
+ let mut cfg = ::aws_smithy_types::config_bag::Layer::new("GetAuthenticationUrl");
+
+ cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
+ GetAuthenticationUrlRequestSerializer,
+ ));
+ cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
+ GetAuthenticationUrlResponseDeserializer,
+ ));
+
+ cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
+ ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
+ ));
+
+ cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
+ "GetAuthenticationUrl",
+ "connectparticipant",
+ ));
+ let mut signing_options = ::aws_runtime::auth::SigningOptions::default();
+ signing_options.double_uri_encode = true;
+ signing_options.content_sha256_header = false;
+ signing_options.normalize_uri_path = true;
+ signing_options.payload_override = None;
+
+ cfg.store_put(::aws_runtime::auth::SigV4OperationSigningConfig {
+ signing_options,
+ ..::std::default::Default::default()
+ });
+
+ ::std::option::Option::Some(cfg.freeze())
+ }
+
+ fn runtime_components(
+ &self,
+ _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
+ ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
+ #[allow(unused_mut)]
+ let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("GetAuthenticationUrl")
+ .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
+ .with_interceptor(GetAuthenticationUrlEndpointParamsInterceptor)
+ .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ >::new())
+ .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ >::new())
+ .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::<
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ >::new());
+
+ ::std::borrow::Cow::Owned(rcb)
+ }
+}
+
+#[derive(Debug)]
+struct GetAuthenticationUrlResponseDeserializer;
+impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for GetAuthenticationUrlResponseDeserializer {
+ fn deserialize_nonstreaming(
+ &self,
+ response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
+ let (success, status) = (response.status().is_success(), response.status().as_u16());
+ let headers = response.headers();
+ let body = response.body().bytes().expect("body loaded");
+ #[allow(unused_mut)]
+ let mut force_error = false;
+ ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
+ let parse_result = if !success && status != 200 || force_error {
+ crate::protocol_serde::shape_get_authentication_url::de_get_authentication_url_http_error(status, headers, body)
+ } else {
+ crate::protocol_serde::shape_get_authentication_url::de_get_authentication_url_http_response(status, headers, body)
+ };
+ crate::protocol_serde::type_erase_result(parse_result)
+ }
+}
+#[derive(Debug)]
+struct GetAuthenticationUrlRequestSerializer;
+impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for GetAuthenticationUrlRequestSerializer {
+ #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
+ fn serialize_input(
+ &self,
+ input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
+ _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
+ ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
+ let input = input
+ .downcast::()
+ .expect("correct type");
+ let _header_serialization_settings = _cfg
+ .load::()
+ .cloned()
+ .unwrap_or_default();
+ let mut request_builder = {
+ fn uri_base(
+ _input: &crate::operation::get_authentication_url::GetAuthenticationUrlInput,
+ output: &mut ::std::string::String,
+ ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
+ use ::std::fmt::Write as _;
+ ::std::write!(output, "/participant/authentication-url").expect("formatting should succeed");
+ ::std::result::Result::Ok(())
+ }
+ #[allow(clippy::unnecessary_wraps)]
+ fn update_http_builder(
+ input: &crate::operation::get_authentication_url::GetAuthenticationUrlInput,
+ builder: ::http::request::Builder,
+ ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
+ let mut uri = ::std::string::String::new();
+ uri_base(input, &mut uri)?;
+ let builder = crate::protocol_serde::shape_get_authentication_url::ser_get_authentication_url_headers(input, builder)?;
+ ::std::result::Result::Ok(builder.method("POST").uri(uri))
+ }
+ let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
+ builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/json");
+ builder
+ };
+ let body = ::aws_smithy_types::body::SdkBody::from(crate::protocol_serde::shape_get_authentication_url::ser_get_authentication_url_input(
+ &input,
+ )?);
+ if let Some(content_length) = body.content_length() {
+ let content_length = content_length.to_string();
+ request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length);
+ }
+ ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
+ }
+}
+#[derive(Debug)]
+struct GetAuthenticationUrlEndpointParamsInterceptor;
+
+impl ::aws_smithy_runtime_api::client::interceptors::Intercept for GetAuthenticationUrlEndpointParamsInterceptor {
+ fn name(&self) -> &'static str {
+ "GetAuthenticationUrlEndpointParamsInterceptor"
+ }
+
+ fn read_before_execution(
+ &self,
+ context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
+ '_,
+ ::aws_smithy_runtime_api::client::interceptors::context::Input,
+ ::aws_smithy_runtime_api::client::interceptors::context::Output,
+ ::aws_smithy_runtime_api::client::interceptors::context::Error,
+ >,
+ cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
+ ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
+ let _input = context
+ .input()
+ .downcast_ref::()
+ .ok_or("failed to downcast to GetAuthenticationUrlInput")?;
+
+ let params = crate::config::endpoint::Params::builder()
+ .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
+ .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0))
+ .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
+ .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
+ .build()
+ .map_err(|err| {
+ ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
+ })?;
+ cfg.interceptor_state()
+ .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
+ ::std::result::Result::Ok(())
+ }
+}
+
+// The get_* functions below are generated from JMESPath expressions in the
+// operationContextParams trait. They target the operation's input shape.
+
+/// Error type for the `GetAuthenticationUrlError` operation.
+#[non_exhaustive]
+#[derive(::std::fmt::Debug)]
+pub enum GetAuthenticationUrlError {
+ /// You do not have sufficient access to perform this action.
+ AccessDeniedException(crate::types::error::AccessDeniedException),
+ /// This exception occurs when there is an internal failure in the Amazon Connect service.
+ InternalServerException(crate::types::error::InternalServerException),
+ /// The request was denied due to request throttling.
+ ThrottlingException(crate::types::error::ThrottlingException),
+ /// The input fails to satisfy the constraints specified by Amazon Connect.
+ ValidationException(crate::types::error::ValidationException),
+ /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
+ #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
+ variable wildcard pattern and check `.code()`:
+ \
+ `err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
+ \
+ See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-GetAuthenticationUrlError) for what information is available for the error.")]
+ Unhandled(crate::error::sealed_unhandled::Unhandled),
+}
+impl GetAuthenticationUrlError {
+ /// Creates the `GetAuthenticationUrlError::Unhandled` variant from any error type.
+ pub fn unhandled(
+ err: impl ::std::convert::Into<::std::boxed::Box>,
+ ) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source: err.into(),
+ meta: ::std::default::Default::default(),
+ })
+ }
+
+ /// Creates the `GetAuthenticationUrlError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
+ pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source: err.clone().into(),
+ meta: err,
+ })
+ }
+ ///
+ /// Returns error metadata, which includes the error code, message,
+ /// request ID, and potentially additional information.
+ ///
+ pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
+ match self {
+ Self::AccessDeniedException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::InternalServerException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::ThrottlingException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::ValidationException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
+ Self::Unhandled(e) => &e.meta,
+ }
+ }
+ /// Returns `true` if the error kind is `GetAuthenticationUrlError::AccessDeniedException`.
+ pub fn is_access_denied_exception(&self) -> bool {
+ matches!(self, Self::AccessDeniedException(_))
+ }
+ /// Returns `true` if the error kind is `GetAuthenticationUrlError::InternalServerException`.
+ pub fn is_internal_server_exception(&self) -> bool {
+ matches!(self, Self::InternalServerException(_))
+ }
+ /// Returns `true` if the error kind is `GetAuthenticationUrlError::ThrottlingException`.
+ pub fn is_throttling_exception(&self) -> bool {
+ matches!(self, Self::ThrottlingException(_))
+ }
+ /// Returns `true` if the error kind is `GetAuthenticationUrlError::ValidationException`.
+ pub fn is_validation_exception(&self) -> bool {
+ matches!(self, Self::ValidationException(_))
+ }
+}
+impl ::std::error::Error for GetAuthenticationUrlError {
+ fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
+ match self {
+ Self::AccessDeniedException(_inner) => ::std::option::Option::Some(_inner),
+ Self::InternalServerException(_inner) => ::std::option::Option::Some(_inner),
+ Self::ThrottlingException(_inner) => ::std::option::Option::Some(_inner),
+ Self::ValidationException(_inner) => ::std::option::Option::Some(_inner),
+ Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
+ }
+ }
+}
+impl ::std::fmt::Display for GetAuthenticationUrlError {
+ fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
+ match self {
+ Self::AccessDeniedException(_inner) => _inner.fmt(f),
+ Self::InternalServerException(_inner) => _inner.fmt(f),
+ Self::ThrottlingException(_inner) => _inner.fmt(f),
+ Self::ValidationException(_inner) => _inner.fmt(f),
+ Self::Unhandled(_inner) => {
+ if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
+ write!(f, "unhandled error ({code})")
+ } else {
+ f.write_str("unhandled error")
+ }
+ }
+ }
+ }
+}
+impl ::aws_smithy_types::retry::ProvideErrorKind for GetAuthenticationUrlError {
+ fn code(&self) -> ::std::option::Option<&str> {
+ ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
+ }
+ fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
+ ::std::option::Option::None
+ }
+}
+impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for GetAuthenticationUrlError {
+ fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
+ match self {
+ Self::AccessDeniedException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::InternalServerException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::ThrottlingException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::ValidationException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
+ Self::Unhandled(_inner) => &_inner.meta,
+ }
+ }
+}
+impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for GetAuthenticationUrlError {
+ fn create_unhandled_error(
+ source: ::std::boxed::Box,
+ meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
+ ) -> Self {
+ Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
+ source,
+ meta: meta.unwrap_or_default(),
+ })
+ }
+}
+impl ::aws_types::request_id::RequestId for crate::operation::get_authentication_url::GetAuthenticationUrlError {
+ fn request_id(&self) -> Option<&str> {
+ self.meta().request_id()
+ }
+}
+
+pub use crate::operation::get_authentication_url::_get_authentication_url_output::GetAuthenticationUrlOutput;
+
+pub use crate::operation::get_authentication_url::_get_authentication_url_input::GetAuthenticationUrlInput;
+
+mod _get_authentication_url_input;
+
+mod _get_authentication_url_output;
+
+/// Builders
+pub mod builders;
diff --git a/sdk/connectparticipant/src/operation/get_authentication_url/_get_authentication_url_input.rs b/sdk/connectparticipant/src/operation/get_authentication_url/_get_authentication_url_input.rs
new file mode 100644
index 000000000000..99e7f9e401a8
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/get_authentication_url/_get_authentication_url_input.rs
@@ -0,0 +1,99 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+pub struct GetAuthenticationUrlInput {
+ /// The sessionId provided in the authenticationInitiated event.
+ pub session_id: ::std::option::Option<::std::string::String>,
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub redirect_uri: ::std::option::Option<::std::string::String>,
+ /// The authentication token associated with the participant's connection.
+ pub connection_token: ::std::option::Option<::std::string::String>,
+}
+impl GetAuthenticationUrlInput {
+ /// The sessionId provided in the authenticationInitiated event.
+ pub fn session_id(&self) -> ::std::option::Option<&str> {
+ self.session_id.as_deref()
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub fn redirect_uri(&self) -> ::std::option::Option<&str> {
+ self.redirect_uri.as_deref()
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn connection_token(&self) -> ::std::option::Option<&str> {
+ self.connection_token.as_deref()
+ }
+}
+impl GetAuthenticationUrlInput {
+ /// Creates a new builder-style object to manufacture [`GetAuthenticationUrlInput`](crate::operation::get_authentication_url::GetAuthenticationUrlInput).
+ pub fn builder() -> crate::operation::get_authentication_url::builders::GetAuthenticationUrlInputBuilder {
+ crate::operation::get_authentication_url::builders::GetAuthenticationUrlInputBuilder::default()
+ }
+}
+
+/// A builder for [`GetAuthenticationUrlInput`](crate::operation::get_authentication_url::GetAuthenticationUrlInput).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct GetAuthenticationUrlInputBuilder {
+ pub(crate) session_id: ::std::option::Option<::std::string::String>,
+ pub(crate) redirect_uri: ::std::option::Option<::std::string::String>,
+ pub(crate) connection_token: ::std::option::Option<::std::string::String>,
+}
+impl GetAuthenticationUrlInputBuilder {
+ /// The sessionId provided in the authenticationInitiated event.
+ /// This field is required.
+ pub fn session_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.session_id = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The sessionId provided in the authenticationInitiated event.
+ pub fn set_session_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.session_id = input;
+ self
+ }
+ /// The sessionId provided in the authenticationInitiated event.
+ pub fn get_session_id(&self) -> &::std::option::Option<::std::string::String> {
+ &self.session_id
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ /// This field is required.
+ pub fn redirect_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.redirect_uri = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub fn set_redirect_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.redirect_uri = input;
+ self
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub fn get_redirect_uri(&self) -> &::std::option::Option<::std::string::String> {
+ &self.redirect_uri
+ }
+ /// The authentication token associated with the participant's connection.
+ /// This field is required.
+ pub fn connection_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.connection_token = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn set_connection_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.connection_token = input;
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn get_connection_token(&self) -> &::std::option::Option<::std::string::String> {
+ &self.connection_token
+ }
+ /// Consumes the builder and constructs a [`GetAuthenticationUrlInput`](crate::operation::get_authentication_url::GetAuthenticationUrlInput).
+ pub fn build(
+ self,
+ ) -> ::std::result::Result
+ {
+ ::std::result::Result::Ok(crate::operation::get_authentication_url::GetAuthenticationUrlInput {
+ session_id: self.session_id,
+ redirect_uri: self.redirect_uri,
+ connection_token: self.connection_token,
+ })
+ }
+}
diff --git a/sdk/connectparticipant/src/operation/get_authentication_url/_get_authentication_url_output.rs b/sdk/connectparticipant/src/operation/get_authentication_url/_get_authentication_url_output.rs
new file mode 100644
index 000000000000..f9b76842d487
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/get_authentication_url/_get_authentication_url_output.rs
@@ -0,0 +1,66 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+#[allow(missing_docs)] // documentation missing in model
+#[non_exhaustive]
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
+pub struct GetAuthenticationUrlOutput {
+ /// 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.
+ pub authentication_url: ::std::option::Option<::std::string::String>,
+ _request_id: Option,
+}
+impl GetAuthenticationUrlOutput {
+ /// 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.
+ pub fn authentication_url(&self) -> ::std::option::Option<&str> {
+ self.authentication_url.as_deref()
+ }
+}
+impl ::aws_types::request_id::RequestId for GetAuthenticationUrlOutput {
+ fn request_id(&self) -> Option<&str> {
+ self._request_id.as_deref()
+ }
+}
+impl GetAuthenticationUrlOutput {
+ /// Creates a new builder-style object to manufacture [`GetAuthenticationUrlOutput`](crate::operation::get_authentication_url::GetAuthenticationUrlOutput).
+ pub fn builder() -> crate::operation::get_authentication_url::builders::GetAuthenticationUrlOutputBuilder {
+ crate::operation::get_authentication_url::builders::GetAuthenticationUrlOutputBuilder::default()
+ }
+}
+
+/// A builder for [`GetAuthenticationUrlOutput`](crate::operation::get_authentication_url::GetAuthenticationUrlOutput).
+#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
+#[non_exhaustive]
+pub struct GetAuthenticationUrlOutputBuilder {
+ pub(crate) authentication_url: ::std::option::Option<::std::string::String>,
+ _request_id: Option,
+}
+impl GetAuthenticationUrlOutputBuilder {
+ /// 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.
+ pub fn authentication_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.authentication_url = ::std::option::Option::Some(input.into());
+ self
+ }
+ /// 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.
+ pub fn set_authentication_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.authentication_url = input;
+ self
+ }
+ /// 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.
+ pub fn get_authentication_url(&self) -> &::std::option::Option<::std::string::String> {
+ &self.authentication_url
+ }
+ pub(crate) fn _request_id(mut self, request_id: impl Into) -> Self {
+ self._request_id = Some(request_id.into());
+ self
+ }
+
+ pub(crate) fn _set_request_id(&mut self, request_id: Option) -> &mut Self {
+ self._request_id = request_id;
+ self
+ }
+ /// Consumes the builder and constructs a [`GetAuthenticationUrlOutput`](crate::operation::get_authentication_url::GetAuthenticationUrlOutput).
+ pub fn build(self) -> crate::operation::get_authentication_url::GetAuthenticationUrlOutput {
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput {
+ authentication_url: self.authentication_url,
+ _request_id: self._request_id,
+ }
+ }
+}
diff --git a/sdk/connectparticipant/src/operation/get_authentication_url/builders.rs b/sdk/connectparticipant/src/operation/get_authentication_url/builders.rs
new file mode 100644
index 000000000000..24322aa6d50e
--- /dev/null
+++ b/sdk/connectparticipant/src/operation/get_authentication_url/builders.rs
@@ -0,0 +1,161 @@
+// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
+pub use crate::operation::get_authentication_url::_get_authentication_url_output::GetAuthenticationUrlOutputBuilder;
+
+pub use crate::operation::get_authentication_url::_get_authentication_url_input::GetAuthenticationUrlInputBuilder;
+
+impl crate::operation::get_authentication_url::builders::GetAuthenticationUrlInputBuilder {
+ /// Sends a request with this input using the given client.
+ pub async fn send_with(
+ self,
+ client: &crate::Client,
+ ) -> ::std::result::Result<
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let mut fluent_builder = client.get_authentication_url();
+ fluent_builder.inner = self;
+ fluent_builder.send().await
+ }
+}
+/// Fluent builder constructing a request to `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.
+///
+///
+#[derive(::std::clone::Clone, ::std::fmt::Debug)]
+pub struct GetAuthenticationUrlFluentBuilder {
+ handle: ::std::sync::Arc,
+ inner: crate::operation::get_authentication_url::builders::GetAuthenticationUrlInputBuilder,
+ config_override: ::std::option::Option,
+}
+impl
+ crate::client::customize::internal::CustomizableSend<
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput,
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ > for GetAuthenticationUrlFluentBuilder
+{
+ fn send(
+ self,
+ config_override: crate::config::Builder,
+ ) -> crate::client::customize::internal::BoxFuture<
+ crate::client::customize::internal::SendResult<
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput,
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ >,
+ > {
+ ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
+ }
+}
+impl GetAuthenticationUrlFluentBuilder {
+ /// Creates a new `GetAuthenticationUrlFluentBuilder`.
+ pub(crate) fn new(handle: ::std::sync::Arc) -> Self {
+ Self {
+ handle,
+ inner: ::std::default::Default::default(),
+ config_override: ::std::option::Option::None,
+ }
+ }
+ /// Access the GetAuthenticationUrl as a reference.
+ pub fn as_input(&self) -> &crate::operation::get_authentication_url::builders::GetAuthenticationUrlInputBuilder {
+ &self.inner
+ }
+ /// Sends the request and returns the response.
+ ///
+ /// If an error occurs, an `SdkError` will be returned with additional details that
+ /// can be matched against.
+ ///
+ /// By default, any retryable failures will be retried twice. Retry behavior
+ /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
+ /// set when configuring the client.
+ pub async fn send(
+ self,
+ ) -> ::std::result::Result<
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput,
+ ::aws_smithy_runtime_api::client::result::SdkError<
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
+ >,
+ > {
+ let input = self
+ .inner
+ .build()
+ .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
+ let runtime_plugins = crate::operation::get_authentication_url::GetAuthenticationUrl::operation_runtime_plugins(
+ self.handle.runtime_plugins.clone(),
+ &self.handle.conf,
+ self.config_override,
+ );
+ crate::operation::get_authentication_url::GetAuthenticationUrl::orchestrate(&runtime_plugins, input).await
+ }
+
+ /// Consumes this builder, creating a customizable operation that can be modified before being sent.
+ pub fn customize(
+ self,
+ ) -> crate::client::customize::CustomizableOperation<
+ crate::operation::get_authentication_url::GetAuthenticationUrlOutput,
+ crate::operation::get_authentication_url::GetAuthenticationUrlError,
+ Self,
+ > {
+ crate::client::customize::CustomizableOperation::new(self)
+ }
+ pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into) -> Self {
+ self.set_config_override(::std::option::Option::Some(config_override.into()));
+ self
+ }
+
+ pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option) -> &mut Self {
+ self.config_override = config_override;
+ self
+ }
+ /// The sessionId provided in the authenticationInitiated event.
+ pub fn session_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.session_id(input.into());
+ self
+ }
+ /// The sessionId provided in the authenticationInitiated event.
+ pub fn set_session_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_session_id(input);
+ self
+ }
+ /// The sessionId provided in the authenticationInitiated event.
+ pub fn get_session_id(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_session_id()
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub fn redirect_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.redirect_uri(input.into());
+ self
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub fn set_redirect_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_redirect_uri(input);
+ self
+ }
+ /// The URL where the customer will be redirected after Amazon Cognito authorizes the user.
+ pub fn get_redirect_uri(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_redirect_uri()
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn connection_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
+ self.inner = self.inner.connection_token(input.into());
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn set_connection_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
+ self.inner = self.inner.set_connection_token(input);
+ self
+ }
+ /// The authentication token associated with the participant's connection.
+ pub fn get_connection_token(&self) -> &::std::option::Option<::std::string::String> {
+ self.inner.get_connection_token()
+ }
+}
diff --git a/sdk/connectparticipant/src/operation/get_transcript/builders.rs b/sdk/connectparticipant/src/operation/get_transcript/builders.rs
index 4ebd36af1692..27d2fd9bc422 100644
--- a/sdk/connectparticipant/src/operation/get_transcript/builders.rs
+++ b/sdk/connectparticipant/src/operation/get_transcript/builders.rs
@@ -23,6 +23,7 @@ impl crate::operation::get_transcript::builders::GetTranscriptInputBuilder {
/// Fluent builder constructing a request to `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:
///