Documentation Index
Fetch the complete documentation index at: https://docs.slng.ai/llms.txt
Use this file to discover all available pages before exploring further.
The SLNG Unified API accepts a common set of parameters across all providers. Some parameters are universal, others depend on the model. Provider-specific values (like voice identifiers or language codes) are passed through the same fields — the gateway forwards them to the underlying provider.
TTS parameters
| Parameter | Type | Required | Description |
|---|
text | string | Yes | Text to synthesize |
voice | string | No | Voice identifier — accepted values depend on the provider and model |
config.sample_rate | integer | No | Output sample rate in Hz |
config.encoding | string | No | Output encoding format |
config.language | string | No | Language code — accepted values depend on the provider |
config.speed | number | No | Speech speed multiplier |
TTS provider support
The matrix below covers the most commonly used SLNG-hosted models. Providers not listed here (Cartesia Sonic 3, Murf Falcon, Kugel, Soniox TTS v1) accept the same text and voice fields. Check each model’s API reference for the exact list of supported config.* fields.
| Parameter | Rime Arcana | Deepgram Aura 2 | Sarvam Bulbul |
|---|
voice | Yes | Yes | Yes |
config.sample_rate | Yes | Yes | Yes |
config.encoding | Yes | Yes | Yes |
config.language | Yes | Yes | Yes |
config.speed | — | Yes | — |
Provider-specific values
The voice and config.language fields accept provider-specific values. For example:
- Rime Arcana voices:
luna, orion, astra, nova
- Deepgram Aura 2 voices:
aura-2-thalia-en, aura-2-asteria-en, aura-2-celeste-es (set the voice field explicitly)
- Rime Arcana language codes:
en, fr, es, hi, ar, de
- Cartesia Sonic 3, Murf Falcon, Kugel, Soniox TTS v1: see the voice catalog for each provider’s
voice_id values
The gateway passes these values directly to the provider. If you send a voice identifier that the selected model does not support, the provider returns an error through the standard error response format.
Supported sample rates and encodings
Sample-rate and encoding support varies by model and protocol. The Unified API uses a common request shape, but the selected model still controls which audio formats are valid.
| Model or endpoint family | Common sample rates | Encoding support | Notes |
|---|
| Unified TTS bridge | 8000-48000 Hz, model-dependent | linear16, mp3, opus, mulaw, alaw | Accepted by the bridge schema; the selected model may still reject unsupported values |
| Deepgram Aura 2, proxied | See endpoint reference | linear16, mp3, opus | Use the direct Aura 2 reference for provider-specific behavior |
| Deepgram Aura 2, SLNG-hosted | See endpoint reference | linear16, mulaw, alaw | Optimized for real-time and telephony-style output |
| Sarvam Bulbul | See endpoint reference | mp3, linear16, mulaw, alaw, opus | Indian-language TTS provider |
| Cartesia Sonic 3 | See endpoint reference | linear16, mulaw, alaw | Streaming TTS over WebSocket |
For exact allowed values, use the model-specific API reference page as the source of truth.
STT parameters
| Parameter | Type | Required | Description |
|---|
audio | file | Yes | Audio file to transcribe |
language | string | No | Language code — accepted values depend on the provider |
sample_rate | integer | No | Audio sample rate in Hz |
encoding | string | No | Audio encoding format |
enable_vad | boolean | No | Enable voice activity detection |
enable_partials | boolean | No | Enable partial transcription results |
STT provider support
| Parameter | Deepgram Nova 3 | Deepgram Nova 2 | Soniox Speech AI v4 |
|---|
language | Yes | Yes | Auto-detect |
sample_rate | Yes | Yes | Yes |
encoding | Yes | Yes | Yes |
enable_vad | Yes | Yes | Yes |
enable_partials | Yes | Yes | Yes |
Supported STT encodings
linear16, mp3, opus.
How provider-specific parameters work
The Unified API uses a schema-driven approach. All parameters are defined in the request schema — there is no generic passthrough or arbitrary key-value mechanism. The voice, language, and config fields accept provider-specific values as strings, and the gateway forwards them to the underlying provider without transformation.
This means:
- You use the same field names regardless of provider
- Provider-specific values (voice names, language codes) go into the same fields
- Validation happens at the provider level — if a value is not supported, you get a standard error response with the provider’s error message
Model identifiers
Models follow the pattern provider/model:variant for third-party and slng/provider/model:variant for SLNG-hosted. For example:
deepgram/aura:2 — third-party, proxied to Deepgram
slng/deepgram/aura:2-en — SLNG-hosted Deepgram Aura 2 (English)
slng/rime/arcana:3-en — SLNG-hosted Rime Arcana v3 (English)
For the full list of model identifiers, see Supported models.