---
title: "Dictate: speech in, words back, live"
method: GET
path: "/v1/speech/stream"
tags: ["Speech"]
---

# Dictate: speech in, words back, live

`GET /v1/speech/stream`

## Request

- Base URL: `https://api.uxduck.com`
- URL: `https://api.uxduck.com/v1/speech/stream`
- Auth: none declared

A WebSocket. Send 16 kHz mono 16-bit PCM as binary frames, then `finalize` and `close` as text. Answers JSON: `partial` (the words being said), `final` (words that will not change), `flushed`, `limit`, `error` and `done`. Up to 5 minutes, from a shared allowance. A refusal is the socket opened, one `error` with its `code`, and closed.

## Other responses

- `101`: The socket
- `426`: Not a WebSocket request

---

[API](https://skmtc.dev/uxduck/apis/uxduck-api.md) - [All operations](https://skmtc.dev/uxduck/apis/uxduck-api/llms.txt) - [OpenAPI document](https://skmtc.dev/uxduck/apis/uxduck-api/revisions/d594d81b2806?raw)
