Typing Started Indicator Interaction

Sends a TypingStartedIndicator interaction event from the client side to Salesforce when an end user is typing a message.

This API applies to the following products:

  • Bring Your Own Channel for Contact Center as a Service
  • Bring Your Own Channel for Messaging

This API is available in version 61.0 and later.

The TypingStartedIndicator interaction is displayed as a typing icon in the messaging session of the Service Console, indicating to the rep that the end user is typing. As soon as the user starts typing, the “typing started indicator” event is sent to Salesforce, which in turn displays a typing icon in the messaging session.

The BYO demo connector sample implementation in GitHub is configured to check for the “typing started indicator” event when the user starts typing, and then check every five seconds after that. At each check, if the user is still typing, Salesforce displays the typing icon in the messaging session. The sample implementation is also configured to dismiss the typing icon two seconds after it appears. Use the sample implementation to customize the frequency of the checks. You can also customize when the typing icon is dismissed using the TypingStoppedIndicator interaction.

Salesforce doesn’t perform any other actions related to this interaction.

URI

v1/interactions

HTTP Method

POST

Headers

Authorization (User-Level Authentication)

Format: Bearer <Salesforce Access Token>
String. Standard header. Used to authenticate the user, where <Salesforce Access Token> is the Salesforce access token used as the bearer token to make requests to the Interaction Service APIs. Required.

Content-Type

Format: multipart/form-data
String. Standard header. Format of the request payload. Required for any request that includes a body.

OrgId

Format: <Salesforce Org ID>
String. Custom header. The Salesforce org. <Salesforce Org ID> is the 15-character Org ID of the Salesforce org. Required.

RequestId

Format: <UUID>
String. Custom header. Universally Unique Identifier (<UUID>) that references and tracks this request. Required.

AuthorizationContext

Format: <AuthorizationContext>
String. Custom header. Additional information for the request authorization used to authenticate and validate requests against the connected app scopes.

  • For Bring Your Own Channel for CCaaS, set <AuthorizationContext> to the developer name of the ConversationChannelDefinition record. For example, Partner1_ChannelDefinition1. Required.
  • For Bring Your Own Channel for Messaging, set <AuthorizationContext> to the developer name of the ConversationChannelDefinition record. For example, Partner1_ChannelDefinition1. Required.

Sample Header

-H $'Authorization: Bearer 00DSG000009SWby!...LN8XxeRIxGe' \
-H "content-type: multipart/form-data" \
-H "OrgId: 00DSG000009SWby" \
-H "AuthorizationContext: Partner1_ChannelDefinition1" \
-H "RequestId: a1b23c45-c06a-4784-c96c-cb95d3321bda" \

Parameters

Property Name Type Description Required
to string The channel address identifier. This is the globally unique ID for the conversation channel (MessagingChannel.ChannelAddressIdentifier). Yes
from string The end user client identifier. This value comes from the partner system and can be up to 240 characters long. Yes
interactions array A list of interactions that are initiated by a messaging or voice rep or end user. Yes
interactions.timestamp boolean The date and time when the interaction was received by the Salesforce server. Yes
interactions.interactionType string The type of interaction. Possible values include: <br>- EntryInteraction to represent the type of interaction, such as an inbound message, a message sent failure, or a typing start or stop indicator. <br>- AttachmentInteraction to represent a file attachment that comes within the inbound messaging request. Yes
interactions.payload array The interaction payload. Yes
interactions.payload.id string The unique ID for the interaction. Yes
interaction.payload.entryType string The conversation entry type. Set this value to TypingStartedIndicator. Yes
interaction.payload.timestamp boolean The date and time when the conversation participant started typing. Yes

Example

Request

{
  "to": "a12bc345-1303-44c2-866c-f30d546b58de",
  "from": "end-user-0001",
  "interactions": [{
    "timestamp": 2542004100250,
    "interactionType": "EntryInteraction",
    "payload": {
      "id": "8432240c-81c7-492c-baf4-2e4cf0995610",
      "entryType": "TypingStartedIndicator",
      "timestamp": 2542004100220
    }
  }]
}

See Also