Call Commands
Start AI Assistant
Start an AI assistant on the call.
Expected Webhooks:
- call.conversation.ended
- call.conversation_insights.generated
post/calls/{call_control_id}/actions/ai_assistant_start
Path parameters
call_control_idstring required
Unique identifier and token for controlling the call
Request body
Example request
{
"assistant": {
"dynamic_variables": {
"account_id": "ACC-12345",
"customer_name": "John"
},
"instructions": "You are a friendly voice assistant.",
"llm_api_key_ref": "my_llm_api_key",
"model": "gpt-4o",
"openai_api_key_ref": "my_openai_api_key",
"tools": [
{
"book_appointment": {
"api_key_ref": "my_calcom_api_key"
}
}
]
},
"client_state": "aGF2ZSBhIG5pY2UgZGF5ID1d",
"command_id": "891510ac-f3e4-11e8-af5b-de00688a4901",
"greeting": "Hello, can you tell me your age and where you live?",
"message_history": [
{
"content": "Hello, I would like some help.",
"role": "user"
}
],
"participants": [
{
"id": "v3:abc123def456",
"name": "John Doe",
"on_hangup": "continue_conversation",
"role": "user"
}
],
"transcription": {
"language": "auto",
"model": "distil-whisper/distil-large-v2"
}
}Response
Successful response upon making a call control command that includes conversation_id.
Example response
{
"data": {
"conversation_id": "d7e9c1d4-8b2a-4b8f-b3a7-9a671c9e9b0a",
"result": "ok"
}
}