Configuration
apps/api/app/routers/configuration.py, prefix /api/v1/configuration. The self-describing provider catalogue. Everything here is generated from the registry at runtime, so a newly added provider appears without a code change here. See Provider registry.
languages is a comma-separated list of canonical language ids and acts as an AND filter: ?languages=en,hi returns only providers supporting both.
Every list and setting response includes authenticated: true when the caller’s organisation has stored credentials for that provider (same source as GET /auth/configured), otherwise false. List entries stay identity-only otherwise (provider, name, provider_type, authenticated).
The setting routes return the field catalogue for that provider — enough to render a configuration form and to know which keys config.models.{stt,tts,llm}_config will accept. An unknown provider returns 404; a malformed request returns 400.
STT / TTS setting payload
GET /configuration/{stt|tts}/setting/{provider} includes a top-level capabilities map (secrets stay on auth routes, not here):
languagesandsettingskeys are canonical ids fromapps/providers/languages.py(hi,en,multi, …) — not vendor-only codes likehi-INas map keys.languagesvalues are the vendor wire codes (for translating agent config back to the provider API).- With
?languages=,capabilitieskeeps only models that support all selected ids — the same set asfields.model.examples. If no model matches,capabilitiesis{}. - List routes (
GET /configuration/sttetc.) stay identity-only (provider,name,provider_type,authenticated); they do not includecapabilities.
Languages
apps/api/app/routers/languages.py.
GET /languages
Bearer. Returns the canonical language id → label map that the agent builder’s picker uses:
config.language.primary accepts. Which of them a given provider actually supports is a separate question — filter with GET /configuration/stt?languages=.
Related
- Endpoints cheatsheet — every route on one page
- Authentication — tokens, headers, and roles
- Errors — status codes and error shapes