POST
/
user
/
assistant
Create assistant
curl --request POST \
  --url https://app.autocalls.ai/api/user/assistant \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "assistant_name": "<string>",
  "voice_id": 123,
  "language": "<string>",
  "llm_model": "<string>",
  "calls_direction": "<string>",
  "engine_type": "<string>",
  "timezone": "<string>",
  "initial_message": "<string>",
  "system_prompt": "<string>",
  "phone_number_id": 123,
  "endpoint_type": "<string>",
  "endpoint_sensitivity": 123,
  "interrupt_sensitivity": 123,
  "ambient_sound_volume": 123,
  "post_call_evaluation": true,
  "send_webhook_only_on_completed": true,
  "include_recording_in_webhook": true,
  "is_webhook_active": true,
  "webhook_url": "<string>",
  "use_min_interrupt_words": true,
  "min_interrupt_words": 123,
  "variables": {},
  "post_call_schema": [
    {
      "post_call_schema[].name": "<string>",
      "post_call_schema[].type": "<string>",
      "post_call_schema[].description": "<string>"
    }
  ],
  "end_call_tool.description": "<string>",
  "llm_temperature": 123,
  "voice_stability": 123,
  "voice_similarity": 123,
  "speech_speed": 123,
  "allow_interruptions": true,
  "filler_audios": true,
  "re_engagement_interval": 123,
  "max_call_duration": 123,
  "max_silence_duration": 123,
  "end_call_on_voicemail": true,
  "noise_cancellation": true,
  "record_call": true,
  "who_speaks_first": "<string>"
}'
{
  "message": "Assistant created successfully",
  "data": {
    "id": 789,
    "name": "Sales Assistant",
    "status": "active",
    "type": "outbound",
    "mode": "pipeline"
  }
}
This endpoint allows you to create a new AI assistant with comprehensive configuration options.

Request Body

Core Required Fields

assistant_name
string
required
The name of the assistant (max 255 characters)
voice_id
integer
required
The voice ID to use for the assistant (must exist in available voices)
language
string
required
The language name for the assistant (max 100 characters)
llm_model
string
required
The LLM model name to use (max 100 characters)
calls_direction
string
required
The call direction type. Options: receive, make
engine_type
string
required
The engine type to use. Options: pipeline, multimodal
timezone
string
required
The timezone for the assistant (e.g., “America/New_York”)
initial_message
string
required
The initial message the assistant will speak when the call starts
system_prompt
string
required
The system prompt that defines the assistant’s behavior and personality

Optional Configuration

phone_number_id
integer
The ID of a phone number to assign to the assistant (must exist in user’s phone numbers)
endpoint_type
string
Voice activity detection type. Options: vad, ai
endpoint_sensitivity
number
Endpoint sensitivity level (0-5)
interrupt_sensitivity
number
Interrupt sensitivity level (0-5)
ambient_sound_volume
number
Ambient sound volume level (0-1)
post_call_evaluation
boolean
Whether to enable post-call evaluation
send_webhook_only_on_completed
boolean
Whether to send webhooks only on completed calls
include_recording_in_webhook
boolean
Whether to include recording URL in webhook payload

Webhook Configuration

is_webhook_active
boolean
Whether webhook notifications are enabled
webhook_url
string
The webhook URL for post-call notifications (required if is_webhook_active is true)

Interruption Settings

use_min_interrupt_words
boolean
Whether to use minimum interrupt words setting
min_interrupt_words
integer
Minimum number of words before interruption is allowed (0-10)

Variables and Schema

variables
object
Key-value pairs of custom variables for the assistant
post_call_schema
array
Schema definition for post-call data extraction

End Call Tool

end_call_tool.description
string
Description for the end call tool functionality (max 500 characters)

Voice and Speech Settings

llm_temperature
number
LLM temperature setting (0-1)
voice_stability
number
Voice stability setting (0-1)
voice_similarity
number
Voice similarity setting (0-1)
speech_speed
number
Speech speed multiplier (0.7-1.2)

Call Behavior Settings

allow_interruptions
boolean
Whether to allow caller interruptions
filler_audios
boolean
Whether to use filler audio during processing
re_engagement_interval
integer
Re-engagement interval in seconds (7-600)
max_call_duration
integer
Maximum call duration in seconds (20-1200)
max_silence_duration
integer
Maximum silence duration in seconds (1-120)
end_call_on_voicemail
boolean
Whether to end call when voicemail is detected
noise_cancellation
boolean
Whether to enable noise cancellation
record_call
boolean
Whether to record the call
who_speaks_first
string
Who speaks first in the call. Options: AI assistant, Customer

Response

message
string
Success message confirming assistant creation
data
object

Error Responses

422 Validation Error
500 Internal Server Error
{
  "message": "Assistant created successfully",
  "data": {
    "id": 789,
    "name": "Sales Assistant",
    "status": "active",
    "type": "outbound",
    "mode": "pipeline"
  }
}

Notes

  • All required fields must be provided for successful assistant creation
  • The assistant will be created with default settings for any optional fields not specified
  • Phone number assignment is optional but the phone number must belong to the authenticated user
  • Webhook URL is required only when is_webhook_active is set to true
  • Voice and language identifiers must correspond to available options in the system