Example Usage
import { STTRequest } from "@openrouter/sdk/models";
let value: STTRequest = {
inputAudio: {
data: "UklGRiQA...",
format: "wav",
},
model: "openai/whisper-large-v3",
};
Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
inputAudio | models.STTInputAudio | :heavy_check_mark: | Base64-encoded audio to transcribe | { “data”: “UklGRiQA…”, “format”: “wav” } |
language | string | :heavy_minus_sign: | ISO-639-1 language code (e.g., “en”, “ja”). Auto-detected if omitted. | en |
model | string | :heavy_check_mark: | STT model identifier | openai/whisper-large-v3 |
provider | models.STTRequestProvider | :heavy_minus_sign: | Provider-specific passthrough configuration | |
responseFormat | models.STTRequestResponseFormat | :heavy_minus_sign: | Output format. “json” (default) returns { text, usage }. “verbose_json” additionally returns task, language, duration, and segment-level timestamps; only supported by OpenAI-compatible providers. | json |
temperature | number | :heavy_minus_sign: | Sampling temperature for transcription | 0 |
timestampGranularities | models.STTTimestampGranularity[] | :heavy_minus_sign: | Timestamp detail levels to include when response_format is “verbose_json”. “segment” returns segment-level timestamps; “word” additionally returns word-level timestamps in the words array. Ignored unless response_format is “verbose_json”. | [ “segment” ] |