SpeechRelay
SpeechRelay is a streaming speech-to-text API: you send audio over a WebSocket connection and transcript events come back on it.
Try the playground #
The free playground is the way to try SpeechRelay today. It runs mt_asr with up to eight speakers per session, four at a time, and has limited availability. You sign in with Google or GitHub; each account has a limited amount of free use, and signing in again does not add more.
Integrate with the API #
API access is not open yet. It is opening gradually; join the waitlist. These pages document the protocol for callers who already have an API key; start with the Quickstart. ts_asr is documented here but is not available in the playground.
Terms used on these pages #
- Session — one transcription, from the
session.createmessage to its final event. Each session has its own WebSocket connection. mt_asr— multi-talker mode. It transcribes a conversation between several people and labels each speaker.ts_asr— target-speaker mode. It follows one person, whose voice you send first as a short enrollment clip.dicon.v1— the WebSocket subprotocol name. Every stream connection offers it.- Partial and final — a
transcript.partialadds words while someone is talking; atranscript.finalcarries that speaker's complete text. Streaming explains how to read them.
In this documentation #
- Quickstart — stream a WAV file and print its transcript.
- Authentication — send your key, and tell a rejected key from one without permission.
- Streaming — every message on the stream, and how a stream ends.
- Resume — reattach after a dropped connection, where the service enables it.
- Batch — send a whole WAV file in one request.
- Ordering, bounds and errors — the error format, every code, and what to retry.
- Limits — session bounds and quotas.
- Service endpoints — health and readiness probes.
- Pricing and quotas — the planned API price and the playground.
- Data retention — what is kept, for how long, and what is not stored.