Core resources
Assistants
An assistant (agent) is the voice AI persona: its prompt, model, voice, language, tools and knowledge. Edits create new versions; calls always run the published version.
/agents agents:readList assistants
List all assistants in the workspace.
Query parameters
| limit | number | Page size (default 20). |
| offset | number | Offset for pagination. |
Example request
curl https://api.bolchoai.in/v1/agents -H "Authorization: Bearer $VOXA_API_KEY"/agents/{id} agents:readGet assistant
Retrieve a single assistant with its current config and versions.
Path parameters
| id* | uuid | Assistant id. |
Example request
curl https://api.bolchoai.in/v1/agents/$ID \
-H "Authorization: Bearer $VOXA_API_KEY"/agents agents:writeCreate assistant
Create a new assistant with an initial config version.
Body
| name* | string | Display name. |
| config | object | Initial config — see fields below. |
| config.systemPrompt | string | The assistant's instructions / persona. |
| config.firstMessage | string | Spoken greeting at call start. |
| config.llmProvider | enum | openai | anthropic | google | sarvam | openai_compatible. |
| config.llmModel | string | Model id, e.g. gpt-4o-mini, sarvam-30b. |
| config.sttProvider | enum | deepgram | sarvam. |
| config.ttsProvider | enum | azure | cartesia | elevenlabs | sarvam. |
| config.ttsVoiceId | string | Voice id for the TTS provider. |
| config.language | string | BCP-47 language, e.g. en, hi-IN. |
| config.backgroundSound | enum | off | office | cafe | restaurant. |
| config.noiseCancellation | enum | off | noise | bvc | telephony. |
Example request
curl -X POST https://api.bolchoai.in/v1/agents -H "Authorization: Bearer $VOXA_API_KEY" -H "Content-Type: application/json" \
-d '{ "name": "Support Bot", "config": { "systemPrompt": "You are helpful.", "llmProvider": "openai", "llmModel": "gpt-4o-mini", "ttsProvider": "azure", "ttsVoiceId": "en-US-AvaMultilingualNeural" } }'Response
{ "id": "a1b2…", "name": "Support Bot", "status": "draft", "publishedVersionId": null }/agents/{id} agents:writeUpdate assistant
Update name/metadata. Pass a config to create a new draft version.
Path parameters
| id* | uuid | Assistant id. |
Example request
curl -X PATCH https://api.bolchoai.in/v1/agents/$ID \
-H "Authorization: Bearer $VOXA_API_KEY"/agents/{id}/versions agents:writeCreate a version
Save a new config version (the full config snapshot). Becomes the latest draft.
Path parameters
| id* | uuid | Assistant id. |
Example request
curl -X POST https://api.bolchoai.in/v1/agents/$ID/versions \
-H "Authorization: Bearer $VOXA_API_KEY"/agents/{id}/publish agents:writePublish assistant
Promote the latest version to published — calls run this version.
Path parameters
| id* | uuid | Assistant id. |
Example request
curl -X POST https://api.bolchoai.in/v1/agents/$AGENT_ID/publish -H "Authorization: Bearer $VOXA_API_KEY"/agents/{id}/tools agents:writeAttach tools
Set the tools (function-calling) available to the assistant.
Path parameters
| id* | uuid | Assistant id. |
Body
| toolIds* | string[] | Tool ids to enable. |
Example request
curl -X PUT https://api.bolchoai.in/v1/agents/$ID/tools \
-H "Authorization: Bearer $VOXA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"toolIds": [
"..."
]
}'/agents/{id}/knowledge agents:writeAttach knowledge
Link knowledge bases the assistant can search at call time.
Path parameters
| id* | uuid | Assistant id. |
Body
| knowledgeBaseIds* | string[] | Knowledge base ids. |
Example request
curl -X PUT https://api.bolchoai.in/v1/agents/$ID/knowledge \
-H "Authorization: Bearer $VOXA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"knowledgeBaseIds": [
"..."
]
}'/agents/{id} agents:writeDelete assistant
Permanently delete an assistant.
Path parameters
| id* | uuid | Assistant id. |
Example request
curl -X DELETE https://api.bolchoai.in/v1/agents/$ID \
-H "Authorization: Bearer $VOXA_API_KEY"