Com tecnologia deChatGPTClaudeGoogle Gemini
Funciona comGoogle DriveDropboxOneDrive

FAQ

Frequently asked questions

Quick answers about formats, limits, languages, speed, billing, privacy, and support.

Quick answers to the questions developers ask most. If yours is not here, email support@realtimevoicekit.com and a human will get back to you.

Files and formats

What audio and video formats are supported?

Nearly every common container works. Any file whose content type is audio/* or video/* is accepted, and files with a recognized media extension are accepted even when the reported content type is generic (for example application/octet-stream from a cloud provider).

  • Audio: MP3, WAV, FLAC, AAC, M4A, M4B, OGG, Opus, WMA, AIFF, AMR, AU, ALAC, AC3, CAF, and more.
  • Video: MP4, MOV, MKV, WebM, AVI, MPEG, WMV, FLV, M4V, 3GP, and MPEG transport streams (TS, MTS, M2TS). The audio track is extracted and transcribed.

Unsupported files are rejected with 400 and the error code unsupported_media_type.

Are there file size or duration limits?

Uploads through POST /v2/uploads/sign accept files up to 5 GB. There is no fixed duration cap on pre-recorded audio: cost, not length, is the practical limit, and you can pass estimated_duration_sec so a job that would exceed your remaining credit is rejected up front instead of failing midway.

Realtime and voice agent WebSocket sessions each run up to 55 minutes per connection; the API sends a reconnect event so long-running clients can open a fresh session and continue seamlessly. Signed upload URLs are valid for 1 hour.

Transcription

Which languages are supported?

More than 95 languages and locale variants, from English, Spanish, French, German, Italian, and Portuguese through Japanese, Korean, Chinese, Arabic, Hindi, and many long-tail languages. Set language_code when you know the language, pass language_codes for mixed-language audio, or omit both and the API detects the language automatically. Medical Mode is available in English, Spanish, German, and French.

How fast is transcription?

Pre-recorded jobs are asynchronous and typically complete in a small fraction of the audio's runtime; short recordings usually finish well within a minute. Processing time scales with file length, model choice, and enabled features. Realtime sessions return partial transcripts as words are spoken, with finalized segments following moments later.

Does the API return speaker labels?

Yes. Set speaker_labels: true when creating a transcript and the response's utterances array segments the conversation by speaker, each utterance carrying its speaker tag, text, timestamps, and confidence. Word-level timestamps and confidence scores are always included, with or without speaker labels.

How do I know when a transcript is ready?

Two patterns work. Webhooks: pass a public webhook_url when creating the transcript and the API POSTs a JSON notification to it as soon as the job reaches a terminal status; fetch the full result with GET /v2/transcripts/{id} when the notification arrives. Polling: call GET /v2/transcripts/{id} every few seconds until the status settles. Transcripts move through queued, processing, and finally completed or error. A job that fails still returns 200 with status set to error and an error field explaining why, and failed jobs are never billed.

How do webhook notifications behave?

The webhook_url must be a public http or https URL; private, loopback, and internal addresses are rejected at create time with 400 and the error code invalid_webhook_url. When the transcript reaches completed or error, a notification like this is POSTed to your URL:

Webhook notification body
{
  "event": "transcript.completed",
  "transcript_id": "tr_abc123",
  "status": "completed"
}

The event is transcript.error when the job fails. Delivery does not follow redirects and times out after 10 seconds, so respond with a 2xx quickly and do heavy work afterwards. On a 5xx response or a network failure the same notification is retried, so treat deliveries as idempotent; a 4xx response is treated as final and is not retried. The notification intentionally carries no transcript content: fetch the transcript by id after receiving it.

Billing

How does billing work?

Billing is purely usage-based with no base fee. Each request meters the model it used: pre-recorded models bill per second of audio, realtime and agent models bill per second of session time, all at the hourly rates on the Billing and pricing page. Every account starts with $10 in free credit, which is consumed first; only usage beyond it is charged to your payment method. Track everything with GET /v2/credits and GET /v2/usage.

What happens when my free credit runs out?

If no payment method is on file, new metered requests are rejected with 402 Payment Required and the error code v2_billing_required. Nothing is deleted: existing transcripts stay readable and your keys keep working for read endpoints. Call POST /v2/billing/checkout (or use the API dashboard) to add a payment method, and metered requests resume immediately.

Privacy and support

How is my data handled?

Uploads go directly to private cloud storage over HTTPS using short-lived signed URLs, and transcripts are only readable with your API key. API keys themselves are stored as salted hashes, never in plain text. You stay in control of retention: DELETE /v2/transcripts/{id} permanently removes a transcript, including the processing copy. For the full picture see the security overview and the sub-processor list.

How do I get support?

Email support@realtimevoicekit.com. Including your account email, the transcript or session id, and a rough timestamp gets you a useful answer fastest. For billing questions, the output of GET /v2/credits and GET /v2/usage usually contains everything we need to help.

4.2de 21 avaliações