curl --request POST \
--url https://pria.praxislxp.com/api/ai/rtProxy/rtSession \
--header 'Content-Type: application/json' \
--header 'x-access-token: <api-key>' \
--data '
{
"token": "<string>",
"requestArgs": {
"assistantId": "<string>",
"selectedCourse": {},
"userISODate": "2023-11-07T05:31:56Z",
"userTimezone": "<string>",
"socketId": "<string>"
}
}
'{
"provider": "<string>",
"sessionId": "<string>",
"ephemeralKey": "<string>",
"model": "<string>"
}Create realtime AI session
Creates a new realtime AI session for voice/WebRTC communication.
Provider, model, and voice are resolved server-side from the user’s
institution rtModel setting (OpenAI / Google Gemini Live / xAI /
ElevenLabs / LemonSlice). Returns either an ephemeral WebRTC key
(OpenAI / Gemini / xAI), a signed-agent configuration (ElevenLabs),
or a Daily room URL + token (LemonSlice).
curl --request POST \
--url https://pria.praxislxp.com/api/ai/rtProxy/rtSession \
--header 'Content-Type: application/json' \
--header 'x-access-token: <api-key>' \
--data '
{
"token": "<string>",
"requestArgs": {
"assistantId": "<string>",
"selectedCourse": {},
"userISODate": "2023-11-07T05:31:56Z",
"userTimezone": "<string>",
"socketId": "<string>"
}
}
'{
"provider": "<string>",
"sessionId": "<string>",
"ephemeralKey": "<string>",
"model": "<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.
Authorizations
JWT token passed in x-access-token header
Body
Provider, model, and voice are NOT accepted from the request — they
are resolved server-side from the user's institution.rtModel
setting. The client only needs to send requestArgs carrying the
realtime context (assistant, course, user clock) so the server can
build the right system prompt. An optional top-level token is
accepted as an alternative to the Authorization /
x-access-token headers for browser clients that cannot set
custom headers.
Was this page helpful?