StartChatContact - Amazon Connect

StartChatContact

Initiates a flow to start a new chat for the customer. Response of this API provides a token required to obtain credentials from the CreateParticipantConnection API in the Amazon Connect Participant Service.

When a new chat contact is successfully created, clients must subscribe to the participant’s connection for the created chat within 5 minutes. This is achieved by invoking CreateParticipantConnection with WEBSOCKET and CONNECTION_CREDENTIALS.

A 429 error occurs in the following situations:

  • API rate limit is exceeded. API TPS throttling returns a TooManyRequests exception.

  • The quota for concurrent active chats is exceeded. Active chat throttling returns a LimitExceededException.

If you use the ChatDurationInMinutes parameter and receive a 400 error, your account may not support the ability to configure custom chat durations. For more information, contact AWS Support.

For more information about chat, see Chat in the Amazon Connect Administrator Guide.

Request Syntax

PUT /contact/chat HTTP/1.1 Content-type: application/json { "Attributes": { "string" : "string" }, "ChatDurationInMinutes": number, "ClientToken": "string", "ContactFlowId": "string", "InitialMessage": { "Content": "string", "ContentType": "string" }, "InstanceId": "string", "ParticipantDetails": { "DisplayName": "string" }, "PersistentChat": { "RehydrationType": "string", "SourceContactId": "string" }, "RelatedContactId": "string", "SegmentAttributes": { "string" : { "ValueString": "string" } }, "SupportedMessagingContentTypes": [ "string" ] }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

Attributes

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

Type: String to string map

Key Length Constraints: Minimum length of 1. Maximum length of 32767.

Value Length Constraints: Minimum length of 0. Maximum length of 32767.

Required: No

ChatDurationInMinutes

The total duration of the newly started chat session. If not specified, the chat session duration defaults to 25 hour. The minimum configurable time is 60 minutes. The maximum configurable time is 10,080 minutes (7 days).

Type: Integer

Valid Range: Minimum value of 60. Maximum value of 10080.

Required: No

ClientToken

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

Type: String

Length Constraints: Maximum length of 500.

Required: No

ContactFlowId

The identifier of the flow for initiating the chat. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

Type: String

Length Constraints: Maximum length of 500.

Required: Yes

InitialMessage

The initial message to be sent to the newly created chat. If you have a Lex bot in your flow, the initial message is not delivered to the Lex bot.

Type: ChatMessage object

Required: No

InstanceId

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 100.

Required: Yes

ParticipantDetails

Information identifying the participant.

Type: ParticipantDetails object

Required: Yes

PersistentChat

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.

Type: PersistentChat object

Required: No

RelatedContactId

The unique identifier for an Amazon Connect contact. This identifier is related to the chat starting.

Note

You cannot provide data for both RelatedContactId and PersistentChat.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Required: No

SegmentAttributes

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.

Note

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" }}.

Type: String to SegmentAttributeValue object map

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Required: No

SupportedMessagingContentTypes

The supported chat message content types. Supported types are text/plain, text/markdown, application/json, application/vnd.amazonaws.connect.message.interactive, and application/vnd.amazonaws.connect.message.interactive.response.

Content types must always contain text/plain. You can then put any other supported type in the list. For example, all the following lists are valid because they contain text/plain: [text/plain, text/markdown, application/json], [text/markdown, text/plain], [text/plain, application/json, application/vnd.amazonaws.connect.message.interactive.response].

Note

The type application/vnd.amazonaws.connect.message.interactive is required to use the Show view flow block.

Type: Array of strings

Length Constraints: Minimum length of 1. Maximum length of 100.

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "ContactId": "string", "ContinuedFromContactId": "string", "ParticipantId": "string", "ParticipantToken": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

ContactId

The identifier of this contact within the Amazon Connect instance.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

ContinuedFromContactId

The contactId from which a persistent chat session is started. This field is populated only for persistent chats.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

ParticipantId

The identifier for a chat participant. The participantId for a chat participant is the same throughout the chat lifecycle.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

ParticipantToken

The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat participant.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1000.

Errors

For information about the errors that are common to all actions, see Common Errors.

InternalServiceException

Request processing failed because of an error or failure with the service.

HTTP Status Code: 500

InvalidParameterException

One or more of the specified parameters are not valid.

HTTP Status Code: 400

InvalidRequestException

The request is not valid.

HTTP Status Code: 400

LimitExceededException

The allowed limit for the resource has been exceeded.

HTTP Status Code: 429

ResourceNotFoundException

The specified resource was not found.

HTTP Status Code: 404

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: