Skip to main content

GET Speech to Text

The Messages API returns a list of all the messages in a conversation. You can use this for providing Speech to Text data (also known as transcription sometimes) for video conference, meeting or telephone call.

Here message refer to a continuous sentence spoken by a speaker.

Sentiment Analysis in messages BETA#

Here you can enable sentiment analysis over each message which is being spoken in the conversation.

All you need to do is pass sentiment=true as a query parameter. Read more about it.

HTTP Request#

GET https://api.symbl.ai/v1/conversations/{conversationId}/messages

Example API call#

curl "https://api.symbl.ai/v1/conversations/$CONVERSATION_ID/messages" \
-H "Authorization: Bearer $AUTH_TOKEN"

Query Params#

ParameterRequiredValueDescription
verboseNotrueGives you word level timestamps of each sentence.
sentimentNotrueGive you Sentiment Analysis on each message.

Response#

{
"messages": [
{
"id": "6412283618000896",
"text": "Best package for you is $69.99 per month.",
"from": {
"name": "Roger",
"email": "Roger@example.com"
},
"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
},
"suggested": "positive"
},
"words": [
{
"word": "Best",
"startTime": "2020-08-18T11:10:14.536Z",
"endTime": "2020-08-18T11:10:15.536Z",
},
{
"word": "package",
"startTime": "2020-08-18T11:10:16.536Z",
"endTime": "2020-08-18T11:10:17.536Z",
},
{
"word": "for",
"startTime": "2020-08-18T11:10:18.536Z",
"endTime": "2020-08-18T11:10:19.536Z",
},
{
"word": "you",
"startTime": "2020-08-18T11:10:20.536Z",
"endTime": "2020-08-18T11:10:22.536Z",
},
{
"word": "is",
"startTime": "2020-08-18T11:10:22.536Z",
"endTime": "2020-08-18T11:10:25.536Z",
},
{
"word": "$69.99",
"startTime": "2020-08-18T11:10:25.536Z",
"endTime": "2020-08-18T11:10:27.536Z",
},
{
"word": "per",
"startTime": "2020-08-18T11:10:27.536Z",
"endTime": "2020-08-18T11:10:29.536Z",
},
{
"word": "month.",
"startTime": "2020-08-18T11:10:30.536Z",
"endTime": "2020-08-18T11:10:32.536Z",
}]
},
{
"id": "5661493169225728",
"text": "Okay, Where is the file?",
"from": {
"name": "John",
"email": "John@example.com"
}
"startTime": "2020-08-18T11:11:14.536Z",
"endTime": "2020-08-18T11:11:18.536Z",
"conversationId": "5139780136337408",
"phrases": [],
"sentiment": {
"polarity": {
"score": 0.2
},
"suggested": "neutral"
},
"words": [
{
"word": "Okay,",
"startTime": "2020-08-18T11:11:14.536Z",
"endTime": "2020-08-18T11:11:14.936Z"
},
{
"word": "Where",
"startTime": "2020-08-18T11:11:14.936Z",
"endTime": "2020-08-18T11:11:15.436Z"
},
{
"word": "is",
"startTime": "2020-08-18T11:11:16.236Z",
"endTime": "2020-08-18T11:11:16.536Z"
},
{
"word": "the",
"startTime": "2020-08-18T11:11:16.536Z",
"endTime": "2020-08-18T11:11:16.936Z"
},
{
"word": "file?",
"startTime": "2020-08-18T11:11:16.936Z",
"endTime": "2020-08-18T11:11:17.236Z"
}
]
}

Response Object#

FieldDescription
idUnique message identifier.
textMessage text.
fromUser object with name and email.
startTimeDateTime value.
endTimeDateTime value.
conversationIdUnique conversation identifier.
wordsWords object with properties word, startTime and endTime.
phrasesIt shows the most important action phrases in each sentence. It's enabled when you pass detectPhrases=true during submiting the request in Async and Websocket API.
sentimentShows the sentiment polarity(intensity of negativity or positivity of a sentence) and suggested sentiment type (positive, negative and neutral).