> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.
# STTRequest
Speech-to-text request input. Accepts a JSON body with input\_audio containing base64-encoded audio.
## Example Usage
```typescript theme={null}
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](../models/sttinputaudio.mdx) | :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](../models/sttrequestprovider.mdx) | :heavy\_minus\_sign: | Provider-specific passthrough configuration | |
| `responseFormat` | [models.STTRequestResponseFormat](../models/sttrequestresponseformat.mdx) | :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](../models/stttimestampgranularity.mdx)\[] | :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"
] |