# Soniox parameters needed from kalimera side
## Parameters needed from Kalimera UI Side/config :
- **api_key**
- APi key from soniox dashboard.
- Field type : *string*
- It is required field
- **model_id**
- Soniox model name.(for example. "stt-rt-preview-v2"). [See model list here](https://soniox.com/docs/stt/models)
- Field type : *string*
- It is required field
- **url**
- Soniox websocket url (wss://stt-rt.soniox.com/transcribe-websocket).
- Field type : *string*
- It is required field
- **language_hints**
- List of language codes
- Field type : *array of strings*
- Not required. Default value is empty array([])
- **context**
- **Maximum 8,000 tokens (~10,000 characters)**
- You provide context through the context object that can include up to four sections, each improving accuracy in different ways:
| **Section** | **Type** | **Description**
|----------------|-----------|---------------
| `general` | array of JSON objects | Structured key-value information (domain, topic, intent, etc.) |
| `text` | string | Longer free-form background text or related document
| `terms` | array of strings | Domain-specific or uncommon words
| `translation_terms` | array of JSON objects | Custom translations for ambiguous terms
### **Example**
```json
{
"api_key": "<YOUR_API_KEY>",
"model": "stt-rt-v3",
"language_hints": ["en", "es"],
"context": {
"general": [
{"key": "domain", "value": "Healthcare"},
{"key": "topic", "value": "Patient consultation"},
{"key": "participants", "value": "Doctor, Patient"}
],
"text": "This is a long background text describing the conversation context, medical notes, and relevant details to assist transcription accuracy.",
"terms": ["Celebrex", "Zyrtec", "Ibuprofen", "Hypertension"],
"translation_terms": [
{"source": "Mr. Smith", "target": "Sr. Smith"},
{"source": "prescription", "target": "receta"}
]
}
}
```
Apart from this, we also use our own custom retry mechanism (not specific to Soniox), which requires the following parameters to be included from UI:
- **MaxRetryAttempts**
- Maximum number of connection retry attempts
- Field type : *integer*
- Min value : 1, Max value : 5
- Not required. Default value is 3
- **InitialRetryDelaySeconds**
- Initial delay in seconds before the first retry
- Field type : *integer*
- Min value : 1, Max value : 5
- Not required. Default value is 1
## Nice to have features for future :
**Language identification** :
- When enabled, each token includes a language field alongside the text.
**Speaker diarization** :
- Speaker diarization answers the question : **Who spoke when?**
- When enabled, Soniox automatically detects speaker changes and assigns each spoken segment to a speaker label (e.g., Speaker 1, Speaker 2). This lets you structure transcripts into clear, speaker-attributed sections.
**Real-time translation** :
- When enabled, translates speech to a specified language. Soniox translates mid-sentence—as words are spoken
- It provides two translation modes: translate all speech into a single target language, or enable seamless two-way conversations between languages.