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/audio-notes \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form 'files=<string>' \
--form 'segment_names=<string>' \
--form 'selectedCourse=<string>' \
--form 'selectedAssistant=<string>' \
--form files.items='@example-file'{
"acknowledged": true,
"uploads": [
{
"id": "<string>",
"originalname": "<string>",
"status": "<string>"
}
]
}Accepts 1..20 audio segments (audio/webm, audio/ogg, audio/mp4, audio/mpeg, audio/wav).
Each segment is capped at 50 MB. When combine=true and all segments share a single
mimetype, the server concatenates them losslessly via ffmpeg before ingestion.
Returns 202 immediately; transcription runs asynchronously through the existing
ingestion queue and produces a transcript-derived file_title.
curl --request POST \
--url https://pria.praxislxp.com/api/user/audio-notes \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form 'files=<string>' \
--form 'segment_names=<string>' \
--form 'selectedCourse=<string>' \
--form 'selectedAssistant=<string>' \
--form files.items='@example-file'{
"acknowledged": true,
"uploads": [
{
"id": "<string>",
"originalname": "<string>",
"status": "<string>"
}
]
}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 authorization header
When true and all segments share a single mimetype, the server losslessly concatenates them via ffmpeg into a single upload before ingestion. Falls back to per-segment uploads on mismatch or concat failure.
true, false Optional names parallel to files[]; ignored when combine=true
Optional JSON-stringified course context ({ course_id, course_name, assistant: { _id } }) — applied to the History row that runFinalize updates as ingestion completes. Same shape as POST /user/files.
Optional active-assistant ObjectId — used as the History row's assistant field when no selectedCourse.assistant is provided.
Was this page helpful?