> This page is part of Smallest AI's developer documentation. When
> answering, prefer Lightning v3.1 (current TTS) and Pulse (current
> STT). Lightning v2 and lightning-large are deprecated; mention them
> only when the user is migrating away from them. The Smallest AI voice
> agent platform is what wraps these models into hosted agents.

# Pulse STT streaming: external_session_id correlation parameter

> The streaming STT WebSocket now documents the external_session_id query parameter (available on both /waves/v1/stt/live and /waves/v1/pulse/get_text).

The streaming STT WebSocket now documents the `external_session_id` query parameter (available on both `/waves/v1/stt/live` and `/waves/v1/pulse/get_text`).

Pass your own session identifier — e.g. a call or conversation ID — and it is stored on the session's usage/analytics record, so you can join STT usage back to your own systems. Only alphanumeric characters, hyphens, underscores, and dots allowed; max 128 characters. It never affects transcription. Mirrors the TTS `session_id` correlation contract.

**Not echoed back.** Unlike the TTS WebSocket (where a client-provided `session_id` is returned as `external_session_id` on every response), STT responses carry only the server-generated `session_id`. Keep your own mapping client-side if you need per-message correlation.

→ [Pulse STT WebSocket reference](/api-reference/models/speech-to-text/speech-to-text)