Getting started
Speech Understanding
Extract structured insight from your audio: summaries, sentiment, chapters, entities, speakers, and free-form questions.
Speech Understanding turns a finished transcript into insight you can act on: meeting summaries, sentiment reads, chapter breakdowns, named entities, and answers to any question you want to ask about the recording.
All requests use the base URL https://api.realtimevoicekit.com and authenticate with an API key sent as Authorization: Bearer rtvk_your_api_key. See Single Sign-On for where keys are created and managed.
Two ways to understand audio
The API gives you two complementary tools. Use the analysis flags when you know up front what processing a recording needs, and the prompt endpoint when you want to interrogate a finished transcript on demand.
| Approach | How it works | When to reach for it |
|---|---|---|
Analysis flags on POST /v2/transcripts | Boolean options on the transcript request. Each requested pass returns its results as a dedicated field on the completed transcript response. | You know at submission time that the recording needs speaker turns, a summary, sentiment, chapters, or entities. |
Prompt endpoint POST /v2/speech-understanding | Send any question or instruction about a completed transcript and get a grounded answer back. | Custom formats, action items, or any ad hoc question, decided after the transcript exists. |
Analysis options at transcript creation
/v2/transcriptsCreate a transcript with analysis optionsFive boolean flags on the transcript request enable understanding features. All default to false, and each one returns its results on the completed transcript response.
| Flag | What it enables | Result field on the transcript |
|---|---|---|
speaker_labels | Separates the audio into speaker turns. | utterances: array where each entry carries the speaker, its text, and millisecond timing. |
summarization | Summarizes the recording while the audio is processed. | summary: a generated summary string. |
sentiment_analysis | Analyzes sentiment across the spoken content. | sentiment_results: array of per-segment sentiment results. |
auto_chapters | Segments the recording into chapters. | chapters: array of auto-detected chapters. |
entity_detection | Detects entities such as people, organizations, and locations. | entities: array of detected entities. |
Each result field is null unless its flag was requested, and a requested pass that found nothing also reads as null, so null-versus-value is all your code needs to branch on.
curl -X POST https://api.realtimevoicekit.com/v2/transcripts \
-H "Authorization: Bearer rtvk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/meeting.mp3",
"speaker_labels": true,
"summarization": true,
"sentiment_analysis": true,
"auto_chapters": true,
"entity_detection": true
}'The transcript processes asynchronously. Poll GET /v2/transcripts/{transcript_id} until status is completed, or pass a publicly reachable webhook_url on the create request and the API will POST a JSON notification to it when the transcript reaches completed or error. The completed transcript then carries the core fields (text, words, utterances, confidence, audio_duration_sec) plus the result field for every flag you requested.
{
"event": "transcript.completed",
"transcript_id": "tr_abc123",
"status": "completed"
}Ask questions over a transcript
/v2/speech-understandingAsk a question about a completed transcriptSend a transcript_id and a prompt, and the API answers using only the transcript content. The transcript must have been created through POST /v2/transcripts on the same account and must be completed.
curl -X POST https://api.realtimevoicekit.com/v2/speech-understanding \
-H "Authorization: Bearer rtvk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"transcript_id": "tr_abc123",
"prompt": "List every decision made in this meeting and who owns the follow-up for each."
}'{
"id": "su_9f2c31ab",
"transcript_id": "tr_abc123",
"model": "default",
"response": "Three decisions were made. 1) Ship the beta on Friday (owner: Dana). 2) Move the retro to Tuesdays (owner: Sam). 3) Pause the ads experiment (owner: Priya).",
"created_at": "2026-07-22T14:03:11Z"
}Explore the features
Summarization
Turn long recordings into abstracts, bullet lists, and action items.
Sentiment Analysis
Read the emotional tone of a call and find where it shifts.
Chapters and Entities
Segment recordings into chapters and detect people, places, and organizations.
Prompting guide
The prompt endpoint in depth: request fields, response shape, JSON output, and errors.