Sentiment Analysis (Beta)


In Beta

This feature is in Beta. If you have questions or comments, email [email protected].

Analyze Sentiment to view a speaker's expressed feeling or enthusiasm about a specific Topic.

To analyze Sentiment, combines the Conversation API's Speech-to-Text messages (usually sentences) with Topics. For a given conversation, the Topics algorithm analyzes each Message and provides a sentiment intensity / polarity score (-1.0 to +1.0) and suggested type (positive, neutral, negative).


Before using this API, you must generate your authentication token (AUTH_TOKEN) as described in Authenticate.

Conversation API Speech-to-Text and Topics requests

Start by processing a conversation using APIs and Conversations. Then Retrieve Members from Conversations. In the response you'll receive a Conversation ID which you need to pass in the Retrieve Topics by conversation ID. All you need to do is pass the conversationId and query parameter sentiment=true.

For Topics level analysis, the sentiment algorithm analyzes the messages and factors in the sentiment for each Topic.

API Responses

    "messages": [
             "id": "6412283618000896",
             "text": "Best package for you is $69.99 per month.",
             "from": {
                 "name": "Roger",
                 "email": "[email protected]"
             "startTime": "2020-07-10T11:16:21.024Z",
             "endTime": "2020-07-10T11:16:26.724Z",
             "conversationId": "6749556955938816",
             "phrases": [
                    "type": "action_phrase",
                    "text": "$69.99 per month"
             "sentiment": {
                "polarity": {
                    "score": 0.6
        }       ]
    "topics": [
            "id": "5907389282779136",
            "text": "interns",
            "type": "topic",
            "score": 0.7178597920690242,
            "messageIds": [
            "sentiment": {
                "polarity": {
                    "score": 0.389
                "suggested": "positive"
            "parentRefs": []
        }     ]


polarityThe intensity of the sentiment. Intensity ranges from -1.0 to 1.0, where -1.0 is the most negative sentiment and 1.0 is the most positive sentiment.
suggestedDisplay the suggested sentiment type of negative, neutral, or positive.

Suggested Sentiment

The Sentiment polarity ranges and suggested Sentiment types cover a wide range of conversations.
Polarity may vary for your use case. Define a threshold that works for your environment. Then adjust the threshold after testing and verifying results.

PolaritySuggested Sentiment
-1.0 => x < -0.3negative
-0.3 => x <= 0.3neutral
0.3 > x <= 1.0positive

Did this page help you?