Skip to main content
WhisperAI
Powered byOpenAI
FeaturesUse casesPricingFAQDocs
Developer API · REST + WebSocket

Speech to Text API for audio and video

The WhisperAI speech-to-text API turns audio and video into text through one REST endpoint. Send a file up to 5 GB or a public URL, and get JSON back with the transcript, speaker labels and word-level timestamps, in 100+ languages, for $0.01 a minute.

Get your API key Read the docs
$0.01 / minute·No commitment·Realtime in 18 languages
transcribe.sh
Code language
curl https://api.whisperai.com/v1/transcript \
  -H "Authorization: wai_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "audio_url": "https://example.com/interview.mp4",
    "speaker_labels": true,
    "webhook_url": "https://your-app.com/hooks/stt"
  }'
200 OK job queued→ webhook fires when the transcript is ready
Capabilities

One transcript request, everything your app needs

Turn features on with a parameter. Results arrive on the same transcript, so there is no second service to call.

Transcribe

Accurate text from files, URLs or a live stream.

  • 100+ languages, detected automaticallylanguage_code
  • Speaker labels (diarization)speaker_labels
  • Names and jargon spelled rightkeyterms_prompt
  • Realtime streaming in 18 languages/v1/realtime/ws

Understand

Structure on top of the words, in the same job.

  • Sentiment per sentencesentiment_analysis
  • Names, places and organizationsentity_detection
  • Topicsiab_categories
  • Key phrasesauto_highlights

Protect

Keep personal and sensitive data out of your app.

  • Redact personal data in the textredact_pii
  • Redacted copy of the audioredact_pii_audio
  • Flag sensitive contentcontent_safety
  • Mask profanityfilter_profanity

Deliver

The output format your product needs.

  • Word-level timestampswords
  • SRT and VTT subtitles/{id}/srt
  • Sentences and paragraphs/{id}/sentences
  • Translation into 86 languages/{id}/translate

Some intelligence features run in a subset of languages. See the API docs for the full parameter list.

Use cases

What developers build with a speech-to-text API

Six common products, and the parts of the API each one leans on.

Meeting notes and assistants

Transcribe hour-long recordings in one request and attribute every line to a speaker.

speaker_labels5 GB fileswebhooks

Captions and subtitles

Generate timed caption files for a video library, then translate them for other markets.

SRT / VTTchars_per_captiontranslate

Call and sales analytics

Score calls by sentiment and pull out the names, products and topics customers mention.

sentiment_analysisentity_detectionredact_pii

Podcasts and media

Make an archive of episodes searchable down to the word and surface the key moments.

word timestampsauto_highlightsword-search

Research and interviews

Turn interviews in many languages into speaker-labelled transcripts ready for coding.

language detectionspeaker_labelsparagraphs

Voice input in your app

Stream microphone audio and show the words on screen while the user talks.

realtime WebSocket18 languageskeyterms_prompt
How it works

How the speech-to-text API works

Three steps from an audio file to structured JSON your app can use.

  1. 1

    Send the audio

    POST /v1/transcript

    Pass a public audio_url, or upload a file of up to 5 GB to /v1/upload first. Add the features you want as parameters. The job is queued at once.

  2. 2

    Get notified when it's done

    webhook_url or GET /v1/transcript/{id}

    The status moves from queued to processing to completed. Set a webhook_url to be called back, or poll the transcript.

  3. 3

    Use the JSON

    /sentences /paragraphs /srt /vtt

    Read the text, speaker utterances and per-word timestamps from one response, or fetch sentences, paragraphs and subtitle files.

GET/v1/transcript/tr_8fK2…200 OK
{
"id": "tr_8fK2…",
"status": "completed",// when done
"language_code": "en",// auto-detected
"audio_duration": 1834,// seconds
"text": "Thanks for joining. Let's start…",
"utterances": [// who spoke when
{ "speaker": "A", "start": 240, "end": 4180,
"text": "Thanks for joining. Let's start…" },
{ "speaker": "B", "start": 4420, "end": 9050, … }
],
"words": [// times in ms
{ "text": "Thanks", "start": 240, "end": 520, "confidence": 0.98 },
…
]
}
A completed transcript with speaker_labels on. Enabled features such as sentiment or entities add their own fields to the same response.

Every field is documented in the speech-to-text API reference.

Buyer's checklist

How to choose a speech-to-text API

Eight questions worth asking any provider, with WhisperAI's answers.

What to askWhisperAI API

File size

Can a full meeting or lecture go through as one request?

Up to 5 GB per file, or pass a public URL. No compressing or splitting.

Languages

Does it detect the language and cover your users?

100+ languages with auto-detection for recordings, 18 for realtime, translation into 86.

Speakers

Is diarization part of the same call, or a separate model?

Same request: set speaker_labels to true.

Vocabulary

Can you teach it product names and jargon?

keyterms_prompt takes up to 1,000 words in six major languages, 200 in the rest.

Privacy

Can you redact personal data and delete results?

PII redaction for text and audio; DELETE /v1/transcript/{id} removes a transcript.

Workflow

Do you have to poll, or does it call you back?

Either: poll the transcript, or pass webhook_url and get notified.

Scale

How many files can run at once?

Up to 250 concurrent requests on both plans.

Pricing

Per minute, per hour, or a commitment?

$0.01 a minute with no commitment, or $99 a month for 10,000 minutes.

Comparing providers? See WhisperAI vs Deepgram and how it compares with OpenAI's Whisper API.

Pricing

Simple, usage-based pricing

Start pay as you go or choose Developer for included pre-recorded minutes. Realtime and translation are metered separately on both plans.

WhisperAI Developer API pricing and feature comparison
Pay as you goDeveloper
Pre-Recorded Audio
Price$0.01 / minute$99 / month
Included Minutes-10,000 / month
Additional Usage$0.01 / minute$0.006 / minute
REST APIIncludedIncluded
Concurrency limitUp to 250 concurrent requestsUp to 250 concurrent requests
Languages100+100+
Speaker LabelsIncludedIncluded
TimestampsIncludedIncluded
File size limit5GB / 10 hours5GB / 10 hours
Realtime Speech-to-Text
Price$0.0067 / minute$0.0067 / minute
Streaming APIIncludedIncluded
Realtime ResultsIncludedIncluded
Languages1818
Speaker LabelsIncludedIncluded
Translation
Price$0.001 / minute / language$0.0005 / minute / language
AvailabilityIncludedIncluded
Target Languages8686
Speaker Labels PreservedIncluded when speaker labels are enabled on the source transcriptIncluded when speaker labels are enabled on the source transcript
Multiple Languages Per RequestIncludedIncluded
Create accountChoose Developer

Translation is billed separately from transcription. Speaker labels are preserved in translated utterances when they were enabled on the source transcript.

Security & privacy

Built for production, secure by default

Protect customer data with encrypted transport and storage, private account access, and revocable API keys.

Encrypted in transit and at rest

API traffic is TLS-secured, and stored audio, transcripts, and metadata are encrypted at rest.

Your data stays yours

Uploaded files remain private to your API account, and transcripts can be deleted through the API.

Secure API access

Create and revoke API keys from the Developer Portal, and keep secret keys on your server.

FAQ

Speech-to-text API FAQ

Pricing, languages, limits and privacy.

Add speech to text to your app today.

Create an account, get a key in the Developer Portal, and send your first file in minutes.

Get your API keyRead the docs
WhisperAI
Powered byOpenAI

Speech intelligence for developers. Transcription is billed by the minute; translation is billed by minute and target language.

Product

Whisper APISpeech to Text APIPricingPlaygroundChangelog

Developers

DocumentationAPI referenceExamplesStatus

Company

BlogHelp CenterSecurityContact
© 2026 WhisperAI, Inc.Developer API · v1