Creates a new agent associated with the specified organization
"Hello! Thank you for calling Acme Corp. How can I help you today?""You are a helpful customer support agent for Acme Corp. Be friendly, professional, and concise. If you don't know an answer, offer to transfer the call to a human agent."simple - Basic agent with standard configurationadvanced - Agent with additional features enabledcustom - Fully customizable agent configurationappointment_scheduler - Agent optimized for scheduling appointmentsreceptionist - Receptionist agent for call routing and transfersmessage_taker - Agent that takes messages and routes to directory extensionsgpt-4.1 - OpenAI GPT-4.1 (default, recommended)gpt-4.1-mini - OpenAI GPT-4.1 Mini (faster, more cost-effective)gpt-4o - OpenAI GPT-4ogpt-4o-mini - OpenAI GPT-4o Minideepgram - Deepgram STTv2 with flux-general-en model (recommended)cartesia - Cartesia TTS (high quality, supports custom voices)minimax - MiniMax TTS (multilingual support)ttsModel:For Cartesia (ttsModel: "cartesia"):ttsModel: "minimax"):| Property | Type | Default | Description |
|---|---|---|---|
min_endpointing_delay | number | 0.1 | Seconds to wait after the caller stops speaking before the agent responds. Lower values feel more responsive; higher values reduce false interruptions. |
max_endpointing_delay | number | 2.0 | Maximum seconds to wait when the caller pauses mid-sentence. Prevents the agent from cutting in during natural speech pauses. |
vad_min_silence_duration | number | (system default) | Minimum silence duration in seconds for Voice Activity Detection to consider speech ended. Omit to use the system default. |
sip:extension@hostnametel:+1XXXXXXXXXX"Transfer to +15551234567 if the caller asks for billing support. Transfer to +15559876543 for technical issues."["[email protected]", "[email protected]"]null, the account’s default email server is used.Use the List Email Servers endpoint to retrieve available IDs.en-US - English (US)es-US - Spanish (US)multi - Multilingual (English, Spanish, French, German, Hindi, Russian, Portuguese, Japanese, Italian, Dutch)"America/New_York", "Europe/London", "Asia/Tokyo"["https://example.com/faq", "https://example.com/pricing"]word — The word or name (1–100 characters)phonemes — The IPA phoneme string (e.g., <<ˈ|dʒ|eɪ|k|ə|b|s|ə|n>>)| Property | Type | Description |
|---|---|---|
enable_recording | boolean | Enable call recording (saved to S3) |
user_timezone | string | IANA timezone for calendar operations (e.g., America/New_York) |
inactivity_timeout | number | Seconds before “Are you still there?” prompt (default: 15) |
ambient_type | string | Type of ambient background audio |
ambient_volume | number | Volume level for ambient audio |
thinking_sounds_enabled | boolean | Enable thinking/processing sounds during pauses |
thinking_volume | number | Volume level for thinking sounds |
thinking_clip_id | string | Sound clip to play while the agent is thinking. KEYBOARD_TYPING (default) or KEYBOARD_TYPING2 |
background_audio_enabled | boolean | Enable background audio during calls |
summary_context | string | Additional instructions for the AI-generated call summary. Use this to tell the summary what to focus on or what data to extract (e.g., "Focus on customer complaints. Extract any mentioned order numbers."). |
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be "webhook" |
name | string | Yes | Unique identifier (e.g., Create_Ticket) |
friendlyName | string | Yes | Human-readable display name |
description | string | Yes | What the webhook does - helps AI understand when to use it |
condition | string | Yes | When to trigger: before_call, during_call, or after_call |
method | string | Yes | HTTP method: GET, POST, PUT, PATCH, or DELETE |
url | string | Yes | Endpoint URL to call |
headers | array | No | Array of {key, value} objects for HTTP headers |
parameters | array | No | Array of {key, value} objects - AI extracts values from conversation |
before_call - Execute before the agent answers (pre-fetch caller info)during_call - Execute while call is active (create tickets, real-time lookups)after_call - Execute after call ends (log to CRM, send summaries)value empty for fields you want the AI to extract from the conversation. Provide default values for fallbacks.integrations field may appear in GET responses but cannot be set via POST/PUT requests.| Function | Description |
|---|---|
transfer_call(phone_number) | Transfer call to a SIP extension or US phone number (requires transferEnabled: true) |
end_call() | End the current call gracefully |
get_date_details(date_string) | Parse and get details about a date/time |
extensions field.