Security enhancements to IP Vault and new Gemini 3.1 Flash Live STS model for Convo mode
curl --request POST \
--url https://pria.praxislxp.com/api/user/transcribe \
--header 'Content-Type: multipart/form-data' \
--header 'x-access-token: <api-key>' \
--form audio='@example-file' \
--form 'language=<string>'{
"success": true,
"transcript": "<string>",
"provider": "<string>",
"durationMs": 123
}Accepts a single audio blob, dispatches it to the user’s institution-
configured STT provider via getProviderForModel(user, 'audioAnalysisModel'),
and returns the transcript. Suitable for in-place dictation (e.g. the
chat textarea mic icon) — explicitly does NOT persist Upload,
History, or embedding rows.
Rate-limited 30 req / 60s / user (per-process token bucket). The
gate also enforces the same checkAudioNotesAllowed predicate the
/audio-notes route uses (guest mode + institutional opt-out).
Accepted mimetypes: audio/webm, audio/ogg, audio/mp4,
audio/mpeg, audio/wav. 25 MB ceiling covers ~120s of opus at
128 kbps with headroom.
curl --request POST \
--url https://pria.praxislxp.com/api/user/transcribe \
--header 'Content-Type: multipart/form-data' \
--header 'x-access-token: <api-key>' \
--form audio='@example-file' \
--form 'language=<string>'{
"success": true,
"transcript": "<string>",
"provider": "<string>",
"durationMs": 123
}Documentation Index
Fetch the complete documentation index at: https://docs.praxis-ai.com/llms.txt
Use this file to discover all available pages before exploring further.
JWT token passed in x-access-token header
Transcript returned.
true
The recognised text. Empty string on silent input.
Resolved STT provider id (one of mistral_cli, openai_cli, bedrock_cli, anthropic_cli, google_genai_cli, xai_cli).
Audio duration in milliseconds when the provider returns it (openai). Null when not reported (mistral).
Was this page helpful?