Skip to main content

POST Markdown Formatted Transcript

This API returns you a formatted transcript in Markdown format. You can use this markdown payload "as is" in any of your markdown compatible UI components or simply store it in your database. The API can break down the transcript into paragraphs, highlight key phrases and attach speaker identities in the transcript.

For example:#

Raw Markdown payload

Speaker 1: Good morning Mr. Lewis. <br/><br/>Speaker 1: It's good to see you
again.<br/><br/>Speaker 2: Thanks a lot.<br/><br/>Speaker 1: Start Let us
<mark>talk about the pricing of your accounting software</mark>.<br/><br/>
Speaker 1: How much does it cost to the customer?<br/><br/>Speaker 2: The
software is sold as a yearly subscription the full cost to the customer is
two thousand five hundred dollars per.<br/><br/>Speaker 1: Okay.<br/><br/>

Markdown format looks like


Speaker 1: Good morning Mr. Lewis.

Speaker 1: It's good to see you again.

Speaker 2: Thanks a lot.

Speaker 1: Start Let us talk about the pricing of your accounting software.

Speaker 1: How much does it cost to the customer?

Speaker 2: The software is sold as a yearly subscription the full cost to the customer is two thousand five hundred dollars per.

Speaker 1: Okay.

HTTP Request#

POST https://api.symbl.ai/v1/conversations/{conversationId}/transcript

Example API call#

curl --location --request POST "https://api.symbl.ai/v1/conversations/$CONVERSATION_ID/transcript" \
--header "Authorization: Bearer $AUTH_TOKEN" \
--header 'Content-Type: application/json' \
--data-raw '{
"contentType": "text/markdown",
"createParagraphs": true,
"phrases": {
"highlightOnlyInsightKeyPhrases": true,
"highlightAllKeyPhrases": true
},
"showSpeakerSeparation": false
}'

Response#

When showSpeakerSeparation is false

{
"transcript": {
"payload": "Good morning.<br/><br/>Mr. Lewis.<br/><br/>It's good to see
you again.<br/><br/>Please take a seat.<br/><br/>Hello again.<br/><br/>
Mrs. Jones.<br/><br/>Thanks a lot.<br/><br/>So tell me.<br/><br/>How was
your first evening in New York?<br/><br/>I started with the walk in
Central Park and then I had a fantastic meal in a Mexican restaurant
that I had read about my guidebook.<br/><br/>I wanted to go for another
walk after the meal, but I was exhausted, so I had an early night.<br/>
<br/>Oh, and of course, you're probably suffering from jet lag.<br/>
<br/>Are you feeling better this morning?<br/><br/>Yes, I slept like a
log, so I feel much better today.<br/><br/>Well, that's good because we
have quite a few things we need to discuss, so we get down to business.
<br/><br/>Absolutely.<br/><br/>Well, would you like to start?<br/><br/>
Let us <mark>talk about the pricing of your accounting software</mark>.
<br/><br/>How much does it cost to the customer?<br/><br/>The software
is sold as a yearly subscription the full cost to the customer is two
thousand five hundred dollars per year.Goodbye.",
"contentType": "text/markdown"
}
}

showSpeakerSeparation is true

{
"transcript": {
"payload": "Speaker 1: Good morning.<br/><br/>Speaker 1: Mr. Lewis.<br/>
<br/>Speaker 1: It's good to see you again.<br/><br/>Speaker 1: Please
take a seat.<br/><br/>Speaker 2: Hello again.<br/><br/>Speaker 2: Mrs.
Jones.<br/><br/>Speaker 2: Thanks a lot.<br/><br/>Speaker 1: So tell me.
<br/><br/>Speaker 1: How was your first evening in New York?<br/><br/>
Speaker 1: I started with the.<br/><br/>Speaker 2: Walk in Central Park
and then I had a fantastic meal in a Mexican restaurant that I had read
about my guidebook.<br/><br/>Speaker 2: I wanted to go for another walk
after the meal, but I was exhausted, so I had an early.<br/><br/>Speaker
1: Night.<br/><br/>Speaker 1: oh and of course you're probably suffering
from jet lag are you feeling better this morning?<br/><br/>Speaker 2:
Yes I slept like a log, so I feel much better.<br/><br/>Speaker 1: Today
well that's good because we have quite a few things we need to discuss,
so we get down to business.<br/><br/>Speaker 2: Absolutely well would
you like to?<br/><br/>Speaker 1: Start Let us <mark>talk about the
pricing of your accounting software</mark>.<br/><br/>Speaker 1: How
much does it cost to the customer?<br/><br/>Speaker 2: The software is
sold as a yearly subscription the full cost to the customer is two
thousand five hundred dollars per.<br/><br/>Speaker 1: Year.<br/><br/>",
"contentType": "text/markdown"
}
}

Request Header#

NameREQUIREDDescription
AuthorizationYesBearer <token> The token you get from our authentication process.
Content-TypeYesAccepted value application/json
x-api-keyNoDEPRECATED. The JWT token you get from our authentication process.

Request Body#

NameREQUIREDDescription
contentTypeYesContent Type of response.
createParagraphsNoThis boolean parameter specifies whether or not the transcription for the Conversation should be broken down into logical paragraphs.
phrasesNoThis is a JSON field which accepts two values highlightOnlyInsightKeyPhrases and highlightAllKeyPhrases. Both variables accepts boolean format.
showSpeakerSeparationNoWhen set to true, response will generate the transcript with each sentence separated by Speaker who spoke that sentence. If set to false it will not have any impact on the generated transcript.

contentType member#

NameSupported
text/markdownYes

createParagraphs member#

If the value is true the paragraphs will be generated on the basis of existing Messages and references to these messages (through messageIds).

If the value is false then the content will be returned as is without any line breaks.

phrases member#

This object specifies highlighting related to phrases detected for different entities by the backend. It mainly contains two properties:

  1. highlightOnlyInsightKeyPhrases - Will generate highlighting syntax according to the contentType only for the key phrases detected for Insights if passed as true

  2. highlightAllKeyPhrases - Will generate highlighting syntax according to the contentType only for the key phrases detected for all the entities (both Insights and Messages) if passed as true. For messages key phrases to be detected and highlighting please pass detectPhrases to true in Async APIs.

info

The highlighted text is present in the response structure with <mark> tags.

showSpeakerSeparation member#

showSpeakerSeparation only works when speaker information must be passed while sending the conversation information.

In Async API - Diarization must be turned on.

In Telephony API, Streaming API and Javascript SDK - Speaker events must be pushed.

Response Object#

NameDescription
transcriptThis json field contain two fields payload and contentType.

Transcript object#

NameDescription
payloadThe transcription content formatted according to the contentType and other request attributes passed in the request.
contentTypeThe content type passed in the request body of the transcription.