curl --request POST \
--url https://api.upliftai.org/v1/realtime-assistants/{realtimeAssistantId}/publish \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"version": "draft",
"message": "Fee schedule for the October intake"
}
'{
"realtimeAssistantId": "0f4a91d3-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "Edversity admissions follow-up",
"description": "Calls warm leads about the cybersecurity programme",
"aliases": {
"draft": {
"version": 14,
"updatedAt": "2026-08-18T10:02:47.883Z",
"updatedBy": "d9164fbd-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},
"prod": {
"version": 14,
"updatedAt": "2026-08-18T10:05:12.406Z",
"updatedBy": "d9164fbd-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
}Assistants
Publish an assistant version
Choose the version calls run. version: "draft" publishes your saved edits. A number points calls back at a version you published before, which is how you roll back. Neither touches the draft. Until the first publish every save goes live at once. After it, saves change the draft only, so publish again to put them on calls. Publishing what prod already runs changes nothing and still returns 200. See Versions.
POST
/
realtime-assistants
/
{realtimeAssistantId}
/
publish
curl --request POST \
--url https://api.upliftai.org/v1/realtime-assistants/{realtimeAssistantId}/publish \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"version": "draft",
"message": "Fee schedule for the October intake"
}
'{
"realtimeAssistantId": "0f4a91d3-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "Edversity admissions follow-up",
"description": "Calls warm leads about the cybersecurity programme",
"aliases": {
"draft": {
"version": 14,
"updatedAt": "2026-08-18T10:02:47.883Z",
"updatedBy": "d9164fbd-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},
"prod": {
"version": 14,
"updatedAt": "2026-08-18T10:05:12.406Z",
"updatedBy": "d9164fbd-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
}Authorizations
Project API key (sk_api_…).
Path Parameters
Body
application/json
draft publishes the saved draft under its current version number. A number rolls back to a version published before. Send it as a JSON number, not a string. prod is a 400.
Allowed value:
"draft"A note for the versions list, like a commit message. Kept once, when the version is first published. A rollback's message is not stored.
Maximum string length:
280