diff --git a/.changes/next-release/feature-AmazonConnectParticipantService-04743c5.json b/.changes/next-release/feature-AmazonConnectParticipantService-04743c5.json new file mode 100644 index 000000000000..0afe63586893 --- /dev/null +++ b/.changes/next-release/feature-AmazonConnectParticipantService-04743c5.json @@ -0,0 +1,6 @@ +{ + "type": "feature", + "category": "Amazon Connect Participant Service", + "contributor": "", + "description": "Amazon Connect Chat introduces the Message Receipts feature. This feature allows agents and customers to receive message delivered and read receipts after they send a chat message." +} diff --git a/services/connectparticipant/src/main/resources/codegen-resources/service-2.json b/services/connectparticipant/src/main/resources/codegen-resources/service-2.json index c62f17a96035..29864453ab00 100644 --- a/services/connectparticipant/src/main/resources/codegen-resources/service-2.json +++ b/services/connectparticipant/src/main/resources/codegen-resources/service-2.json @@ -29,7 +29,7 @@ {"shape":"ServiceQuotaExceededException"}, {"shape":"ConflictException"} ], - "documentation":"

Allows you to confirm that the attachment has been uploaded using the pre-signed URL provided in StartAttachmentUpload API.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Allows you to confirm that the attachment has been uploaded using the pre-signed URL provided in StartAttachmentUpload API.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "CreateParticipantConnection":{ "name":"CreateParticipantConnection", @@ -45,7 +45,7 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"} ], - "documentation":"

Creates the participant's connection. Note that ParticipantToken is used for invoking this API instead of ConnectionToken.

The participant token is valid for the lifetime of the participant – until they are part of a contact.

The response URL for WEBSOCKET Type has a connect expiry timeout of 100s. Clients must manually connect to the returned websocket URL and subscribe to the desired topic.

For chat, you need to publish the following on the established websocket connection:

{\"topic\":\"aws/subscribe\",\"content\":{\"topics\":[\"aws/chat\"]}}

Upon websocket URL expiry, as specified in the response ConnectionExpiry parameter, clients need to call this API again to obtain a new websocket URL and perform the same steps as before.

Message streaming support: This API can also be used together with the StartContactStreaming API to create a participant connection for chat contacts that are not using a websocket. For more information about message streaming, Enable real-time chat message streaming in the Amazon Connect Administrator Guide.

Feature specifications: For information about feature specifications, such as the allowed number of open websocket connections per participant, see Feature specifications in the Amazon Connect Administrator Guide.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Creates the participant's connection.

ParticipantToken is used for invoking this API instead of ConnectionToken.

The participant token is valid for the lifetime of the participant – until they are part of a contact.

The response URL for WEBSOCKET Type has a connect expiry timeout of 100s. Clients must manually connect to the returned websocket URL and subscribe to the desired topic.

For chat, you need to publish the following on the established websocket connection:

{\"topic\":\"aws/subscribe\",\"content\":{\"topics\":[\"aws/chat\"]}}

Upon websocket URL expiry, as specified in the response ConnectionExpiry parameter, clients need to call this API again to obtain a new websocket URL and perform the same steps as before.

Message streaming support: This API can also be used together with the StartContactStreaming API to create a participant connection for chat contacts that are not using a websocket. For more information about message streaming, Enable real-time chat message streaming in the Amazon Connect Administrator Guide.

Feature specifications: For information about feature specifications, such as the allowed number of open websocket connections per participant, see Feature specifications in the Amazon Connect Administrator Guide.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "DisconnectParticipant":{ "name":"DisconnectParticipant", @@ -61,7 +61,7 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"} ], - "documentation":"

Disconnects a participant. Note that ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Disconnects a participant.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "GetAttachment":{ "name":"GetAttachment", @@ -77,7 +77,7 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"} ], - "documentation":"

Provides a pre-signed URL for download of a completed attachment. This is an asynchronous API for use with active contacts.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Provides a pre-signed URL for download of a completed attachment. This is an asynchronous API for use with active contacts.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "GetTranscript":{ "name":"GetTranscript", @@ -93,7 +93,7 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"} ], - "documentation":"

Retrieves a transcript of the session, including details about any attachments. Note that ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Retrieves a transcript of the session, including details about any attachments.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "SendEvent":{ "name":"SendEvent", @@ -109,7 +109,7 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"} ], - "documentation":"

Sends an event. Note that ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Sends an event.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "SendMessage":{ "name":"SendMessage", @@ -125,7 +125,7 @@ {"shape":"ThrottlingException"}, {"shape":"ValidationException"} ], - "documentation":"

Sends a message. Note that ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Sends a message.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" }, "StartAttachmentUpload":{ "name":"StartAttachmentUpload", @@ -142,7 +142,7 @@ {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"} ], - "documentation":"

Provides a pre-signed Amazon S3 URL in response for uploading the file directly to S3.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" + "documentation":"

Provides a pre-signed Amazon S3 URL in response for uploading the file directly to S3.

ConnectionToken is used for invoking this API instead of ParticipantToken.

The Amazon Connect Participant Service APIs do not use Signature Version 4 authentication.

" } }, "shapes":{ @@ -180,7 +180,7 @@ "members":{ "ContentType":{ "shape":"ContentType", - "documentation":"

Describes the MIME file type of the attachment. For a list of supported file types, see Feature specifications in the Amazon Connect Administrator Guide.

" + "documentation":"

Describes the MIME file type of the attachment. For a list of supported file types, see Feature specifications in the Amazon Connect Administrator Guide.

" }, "AttachmentId":{ "shape":"ArtifactId", @@ -238,7 +238,9 @@ "MESSAGE", "EVENT", "ATTACHMENT", - "CONNECTION_ACK" + "CONNECTION_ACK", + "MESSAGE_DELIVERED", + "MESSAGE_READ" ] }, "ClientToken":{ @@ -259,7 +261,7 @@ }, "ClientToken":{ "shape":"NonEmptyClientToken", - "documentation":"

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

", + "documentation":"

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

", "idempotencyToken":true }, "ConnectionToken":{ @@ -323,14 +325,11 @@ }, "CreateParticipantConnectionRequest":{ "type":"structure", - "required":[ - "Type", - "ParticipantToken" - ], + "required":["ParticipantToken"], "members":{ "Type":{ "shape":"ConnectionTypeList", - "documentation":"

Type of connection information required.

" + "documentation":"

Type of connection information required. This can be omitted if ConnectParticipant is true.

" }, "ParticipantToken":{ "shape":"ParticipantToken", @@ -363,7 +362,7 @@ "members":{ "ClientToken":{ "shape":"ClientToken", - "documentation":"

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

", + "documentation":"

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

", "idempotencyToken":true }, "ConnectionToken":{ @@ -525,6 +524,10 @@ "Attachments":{ "shape":"Attachments", "documentation":"

Provides information about the attachments.

" + }, + "MessageMetadata":{ + "shape":"MessageMetadata", + "documentation":"

The metadata related to the message. Currently this supports only information related to message receipts.

" } }, "documentation":"

An item - message or event - that has been sent.

" @@ -535,6 +538,20 @@ "min":0 }, "Message":{"type":"string"}, + "MessageMetadata":{ + "type":"structure", + "members":{ + "MessageId":{ + "shape":"ChatItemId", + "documentation":"

The identifier of the message that contains the metadata information.

" + }, + "Receipts":{ + "shape":"Receipts", + "documentation":"

The list of receipt information for a message for different recipients.

" + } + }, + "documentation":"

Contains metadata related to a message.

" + }, "MostRecent":{ "type":"integer", "max":100, @@ -583,6 +600,28 @@ "max":2000, "min":1 }, + "Receipt":{ + "type":"structure", + "members":{ + "DeliveredTimestamp":{ + "shape":"Instant", + "documentation":"

The time when the message was delivered to the recipient.

" + }, + "ReadTimestamp":{ + "shape":"Instant", + "documentation":"

The time when the message was read by the recipient.

" + }, + "RecipientParticipantId":{ + "shape":"ParticipantId", + "documentation":"

The identifier of the recipient of the message.

" + } + }, + "documentation":"

The receipt for the message delivered to the recipient.

" + }, + "Receipts":{ + "type":"list", + "member":{"shape":"Receipt"} + }, "ScanDirection":{ "type":"string", "enum":[ @@ -599,15 +638,15 @@ "members":{ "ContentType":{ "shape":"ChatContentType", - "documentation":"

The content type of the request. Supported types are:

" + "documentation":"

The content type of the request. Supported types are:

" }, "Content":{ "shape":"ChatContent", - "documentation":"

The content of the event to be sent (for example, message text). This is not yet supported.

" + "documentation":"

The content of the event to be sent (for example, message text). For content related to message receipts, this is supported in the form of a JSON string.

Sample Content: \"{\\\"messageId\\\":\\\"11111111-aaaa-bbbb-cccc-EXAMPLE01234\\\"}\"

" }, "ClientToken":{ "shape":"ClientToken", - "documentation":"

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

", + "documentation":"

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

", "idempotencyToken":true }, "ConnectionToken":{ @@ -641,15 +680,15 @@ "members":{ "ContentType":{ "shape":"ChatContentType", - "documentation":"

The type of the content. Supported types are text/plain.

" + "documentation":"

The type of the content. Supported types are text/plain, text/markdown, and application/json.

" }, "Content":{ "shape":"ChatContent", - "documentation":"

The content of the message.

" + "documentation":"

The content of the message.

" }, "ClientToken":{ "shape":"ClientToken", - "documentation":"

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

", + "documentation":"

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

", "idempotencyToken":true }, "ConnectionToken":{ @@ -702,7 +741,7 @@ "members":{ "ContentType":{ "shape":"ContentType", - "documentation":"

Describes the MIME file type of the attachment. For a list of supported file types, see Feature specifications in the Amazon Connect Administrator Guide.

" + "documentation":"

Describes the MIME file type of the attachment. For a list of supported file types, see Feature specifications in the Amazon Connect Administrator Guide.

" }, "AttachmentSizeInBytes":{ "shape":"AttachmentSizeInBytes", @@ -714,7 +753,7 @@ }, "ClientToken":{ "shape":"NonEmptyClientToken", - "documentation":"

A unique case sensitive identifier to support idempotency of request.

", + "documentation":"

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

", "idempotencyToken":true }, "ConnectionToken":{ @@ -833,5 +872,5 @@ "documentation":"

The websocket for the participant's connection.

" } }, - "documentation":"

Amazon Connect is a cloud-based contact center solution that makes it easy to set up and manage a customer contact center and provide reliable customer engagement at any scale.

Amazon Connect enables customer contacts through voice or chat.

The APIs described here are used by chat participants, such as agents and customers.

" + "documentation":"

Amazon Connect is a cloud-based contact center solution that makes it easy to set up and manage a customer contact center. Amazon Connect enables customer contacts through voice or chat. Use the Amazon Connect Participant Service to manage chat participants, such as agents and customers.

" }