openapi: 3.2.0 info: title: PLATFORM Assistants API version: 1.0.0 servers: - url: https://api.synthflow.ai/v2 description: Global - url: https://api.us.synthflow.ai/v2 description: United States - url: https://api.eu.synthflow.ai/v2 description: European Union tags: - name: Assistants paths: /assistants: post: operationId: create-assistant summary: Create an agent description: '' tags: - Assistants parameters: - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/create-assistant_Response_200' '400': description: '400' content: application/json: schema: $ref: '#/components/schemas/Create-assistantRequestBadRequestError' requestBody: content: application/json: schema: type: object properties: end_call_reasons: type: array items: type: string description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format).' description: type: string description: Agent description. phone_number: type: string description: The phone number attached to the agent. external_webhook_url: type: string description: URL of the webhook that should receive data after the call, such as the transcript. is_recording: type: boolean description: Whether the conversation should be recorded. max_duration: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaMaxDuration' voicemail_message: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessage' description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. type: $ref: '#/components/schemas/type' name: $ref: '#/components/schemas/name' agent: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgent' inbound_call_webhook_url: type: string description: 'The URL for your inbound webhook. For more details on inbound webhooks, see Inbound webhook. ' required: - type - name - agent /assistants/{model_id}: put: operationId: update-assistant summary: Update an agent description: 'Use this endpoint to update an agent''s name, phone number, or other parameters. Only the provided parameters will be updated, and others won''t be removed or changed.' tags: - Assistants parameters: - name: model_id in: path required: true schema: $ref: '#/components/schemas/model_id' - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/update-assistant_Response_200' '400': description: '400' content: application/json: schema: $ref: '#/components/schemas/Update-assistantRequestBadRequestError' requestBody: content: application/json: schema: type: object properties: end_call_reasons: type: array items: type: string description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format).' description: type: string description: Agent description. phone_number: type: string description: The phone number attached to the agent. external_webhook_url: type: string description: URL of the webhook that should receive data after the call, such as the transcript. is_recording: type: boolean description: Whether the conversation should be recorded. max_duration: $ref: '#/components/schemas/AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaMaxDuration' voicemail_message: $ref: '#/components/schemas/AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessage' description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. name: $ref: '#/components/schemas/name' agent: $ref: '#/components/schemas/Agent' delete: operationId: delete-assistant summary: Delete an agent description: Use this endpoint to delete an agent. tags: - Assistants parameters: - name: model_id in: path required: true schema: $ref: '#/components/schemas/model_id' - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/delete-assistant_Response_200' '400': description: '400' content: application/json: schema: $ref: '#/components/schemas/Delete-assistantRequestBadRequestError' get: operationId: get-assistant summary: Get an agent description: '' tags: - Assistants parameters: - name: model_id in: path required: true schema: $ref: '#/components/schemas/model_id' - name: include_actions in: query description: Include action IDs and `input_variables` (each with the action's `trigger_condition`) grouped by `action_id`. required: false schema: type: boolean default: false - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/get-assistant_Response_200' '400': description: '400' content: application/json: schema: $ref: '#/components/schemas/Get-assistantRequestBadRequestError' /assistants/: get: operationId: list-assistant summary: List agents description: Lists all agents you have in your account. tags: - Assistants parameters: - name: limit in: query description: Agents displayed per page. required: false schema: type: integer default: 20 - name: offset in: query description: Index of the first agent to be returned. required: false schema: type: integer default: 0 - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/list-assistant_Response_200' '400': description: '400' content: application/json: schema: $ref: '#/components/schemas/List-assistantRequestBadRequestError' /assistants/{model_id}/phone_numbers: put: operationId: attach-phone-numbers-to-assistant summary: Attach phone numbers to an outbound agent description: Attach multiple outbound phone numbers to an agent by phone numbers or by slugs. tags: - Assistants parameters: - name: model_id in: path required: true schema: $ref: '#/components/schemas/model_id' - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/attach-phone-numbers-to-assistant_Response_200' '404': description: '404' content: application/json: schema: $ref: '#/components/schemas/Attach-phone-numbers-to-assistantRequestNotFoundError' requestBody: content: application/json: schema: $ref: '#/components/schemas/attach-phone-numbers-to-assistant_Request' /assistants/{model_id}/phone_numbers/{phone_number_slug}: delete: operationId: detach-phone-number-from-assistant summary: Detach phone number from an outbound agent description: Remove one attached outbound phone number from an agent. tags: - Assistants parameters: - name: model_id in: path required: true schema: $ref: '#/components/schemas/model_id' - name: phone_number_slug in: path description: Phone number slug to remove from the agent. required: true schema: type: string - name: Authorization in: header description: Bearer authentication required: true schema: type: string responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/detach-phone-number-from-assistant_Response_200' '400': description: '400' content: application/json: schema: $ref: '#/components/schemas/Detach-phone-number-from-assistantRequestBadRequestError' '404': description: '404' content: application/json: schema: $ref: '#/components/schemas/Detach-phone-number-from-assistantRequestNotFoundError' components: schemas: transcriber_speech_recognition: type: string enum: - faster - high_accuracy description: Speech recognition mode for transcription speed vs quality. title: transcriber_speech_recognition AgentEndCallReasonsV2Items: type: object properties: reason: type: string description: The condition that triggers call termination. closing_message_mode: $ref: '#/components/schemas/AgentEndCallReasonsV2ItemsClosingMessageMode' description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.' closing_message: type: string description: The closing message content. Interpretation depends on closing_message_mode. required: - reason title: AgentEndCallReasonsV2Items AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail: type: object properties: status: type: string description: type: string request_id: type: string category: type: string required: - status - description - request_id - category title: AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail AgentNoiseCancellation: type: string enum: - standard - advanced description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand. title: AgentNoiseCancellation AssistantsModelIdDeleteResponsesContentApplicationJsonSchemaResponse: type: object properties: answer: type: string title: AssistantsModelIdDeleteResponsesContentApplicationJsonSchemaResponse voice_use_speaker_boost: type: boolean description: Amplifies the voice’s likeness to the original speaker, which can slightly slow down the response time. title: voice_use_speaker_boost AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage: type: object properties: enabled: type: boolean description: Whether voicemail message leaving is enabled. mode: $ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode' description: The mode used to generate the voicemail message. exact_message: type: string description: The exact message to leave on the voicemail. Used when mode is `exact_message`. prompt: type: string description: A prompt used to generate the voicemail message. Used when mode is `prompt`. description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage get-assistant_Response_200: type: object properties: status: $ref: '#/components/schemas/status' response: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse' title: get-assistant_Response_200 AssistantsPostRequestBodyContentApplicationJsonSchemaAgentMinWordsToInterrupt: type: string enum: - '0' - '1' - '2' - '3' - '4' - '5' description: You can set how many words the human must speak before the AI will stop speaking and listening. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentMinWordsToInterrupt voice_style: type: integer description: Range 0 to 1. Enhances the distinct characteristics of the original voice, but may slow down processing and make the voice less stable. title: voice_style AgentFallbackProvider: type: string enum: - elevenlabs - deepgram - synthflow description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow). title: AgentFallbackProvider AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessageMode: type: string enum: - exact_message - prompt description: The mode used to generate the voicemail message. title: AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessageMode AttachPhoneNumbersToAssistantRequest1: type: object properties: phone_number_slugs: type: array items: type: string description: Phone number slugs. required: - phone_number_slugs title: AttachPhoneNumbersToAssistantRequest1 AssistantsPostRequestBodyContentApplicationJsonSchemaAgentNoiseCancellation: type: string enum: - standard - advanced description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentNoiseCancellation timezone: type: string enum: - Africa/Accra - Africa/Addis_Ababa - Africa/Algiers - Africa/Asmara - Africa/Bamako - Africa/Bangui - Africa/Banjul - Africa/Bissau - Africa/Blantyre - Africa/Brazzaville - Africa/Bujumbura - Africa/Cairo - Africa/Casablanca - Africa/Ceuta - Africa/Conakry - Africa/Dakar - Africa/Dar_es_Salaam - Africa/Djibouti - Africa/Douala - Africa/El_Aaiun - Africa/Freetown - Africa/Gaborone - Africa/Harare - Africa/Johannesburg - Africa/Juba - Africa/Kampala - Africa/Khartoum - Africa/Kigali - Africa/Kinshasa - Africa/Lagos - Africa/Libreville - Africa/Lome - Africa/Luanda - Africa/Lubumbashi - Africa/Lusaka - Africa/Malabo - Africa/Maputo - Africa/Maseru - Africa/Mbabane - Africa/Mogadishu - Africa/Monrovia - Africa/Nairobi - Africa/Ndjamena - Africa/Niamey - Africa/Nouakchott - Africa/Ouagadougou - Africa/Porto-Novo - Africa/Sao_Tome - Africa/Tripoli - Africa/Tunis - Africa/Windhoek - America/Adak - America/Anchorage - America/Anguilla - America/Antigua - America/Araguaina - America/Argentina/Buenos_Aires - America/Argentina/Catamarca - America/Argentina/Cordoba - America/Argentina/Jujuy - America/Argentina/La_Rioja - America/Argentina/Mendoza - America/Argentina/Rio_Gallegos - America/Argentina/Salta - America/Argentina/San_Juan - America/Argentina/San_Luis - America/Argentina/Tucuman - America/Argentina/Ushuaia - America/Aruba - America/Asuncion - America/Atikokan - America/Bahia - America/Bahia_Banderas - America/Barbados - America/Belem - America/Belize - America/Blanc-Sablon - America/Boa_Vista - America/Bogota - America/Boise - America/Cambridge_Bay - America/Campo_Grande - America/Cancun - America/Caracas - America/Cayenne - America/Cayman - America/Chicago - America/Chihuahua - America/Ciudad_Juarez - America/Costa_Rica - America/Creston - America/Cuiaba - America/Curacao - America/Danmarkshavn - America/Dawson - America/Dawson_Creek - America/Denver - America/Detroit - America/Dominica - America/Edmonton - America/Eirunepe - America/El_Salvador - America/Fort_Nelson - America/Fortaleza - America/Glace_Bay - America/Goose_Bay - America/Grand_Turk - America/Grenada - America/Guadeloupe - America/Guatemala - America/Guayaquil - America/Guyana - America/Halifax - America/Havana - America/Hermosillo - America/Indiana/Indianapolis - America/Indiana/Knox - America/Indiana/Marengo - America/Indiana/Petersburg - America/Indiana/Tell_City - America/Indiana/Vevay - America/Indiana/Vincennes - America/Indiana/Winamac - America/Inuvik - America/Iqaluit - America/Jamaica - America/Juneau - America/Kentucky/Louisville - America/Kentucky/Monticello - America/Kralendijk - America/La_Paz - America/Lima - America/Los_Angeles - America/Lower_Princes - America/Maceio - America/Managua - America/Manaus - America/Marigot - America/Martinique - America/Matamoros - America/Mazatlan - America/Menominee - America/Merida - America/Metlakatla - America/Mexico_City - America/Miquelon - America/Moncton - America/Monterrey - America/Montevideo - America/Montserrat - America/Nassau - America/New_York - America/Nome - America/Noronha - America/North_Dakota/Beulah - America/North_Dakota/Center - America/North_Dakota/New_Salem - America/Nuuk - America/Ojinaga - America/Panama - America/Paramaribo - America/Phoenix - America/Port_of_Spain - America/Port-au-Prince - America/Porto_Velho - America/Puerto_Rico - America/Punta_Arenas - America/Rankin_Inlet - America/Recife - America/Regina - America/Resolute - America/Rio_Branco - America/Santarem - America/Santiago - America/Santo_Domingo - America/Sao_Paulo - America/Scoresbysund - America/Sitka - America/St_Barthelemy - America/St_Johns - America/St_Kitts - America/St_Lucia - America/St_Thomas - America/St_Vincent - America/Swift_Current - America/Tegucigalpa - America/Thule - America/Tijuana - America/Toronto - America/Tortola - America/Vancouver - America/Whitehorse - America/Winnipeg - America/Yakutat - Antarctica/Casey - Antarctica/Davis - Antarctica/DumontDUrville - Antarctica/Macquarie - Antarctica/Mawson - Antarctica/McMurdo - Antarctica/Palmer - Antarctica/Rothera - Antarctica/Syowa - Antarctica/Troll - Antarctica/Vostok - Arctic/Longyearbyen - Asia/Aden - Asia/Almaty - Asia/Amman - Asia/Anadyr - Asia/Aqtau - Asia/Aqtobe - Asia/Ashgabat - Asia/Atyrau - Asia/Baghdad - Asia/Bahrain - Asia/Baku - Asia/Bangkok - Asia/Barnaul - Asia/Beirut - Asia/Bishkek - Asia/Brunei - Asia/Chita - Asia/Choibalsan - Asia/Colombo - Asia/Damascus - Asia/Dhaka - Asia/Dili - Asia/Dubai - Asia/Dushanbe - Asia/Famagusta - Asia/Gaza - Asia/Hebron - Asia/Ho_Chi_Minh - Asia/Hong_Kong - Asia/Hovd - Asia/Irkutsk - Asia/Jakarta - Asia/Jayapura - Asia/Jerusalem - Asia/Kabul - Asia/Kamchatka - Asia/Karachi - Asia/Kathmandu - Asia/Khandyga - Asia/Kolkata - Asia/Krasnoyarsk - Asia/Kuala_Lumpur - Asia/Kuching - Asia/Kuwait - Asia/Macau - Asia/Magadan - Asia/Makassar - Asia/Manila - Asia/Muscat - Asia/Nicosia - Asia/Novokuznetsk - Asia/Novosibirsk - Asia/Omsk - Asia/Oral - Asia/Phnom_Penh - Asia/Pontianak - Asia/Pyongyang - Asia/Qatar - Asia/Qostanay - Asia/Qyzylorda - Asia/Riyadh - Asia/Sakhalin - Asia/Samarkand - Asia/Seoul - Asia/Shanghai - Asia/Singapore - Asia/Srednekolymsk - Asia/Taipei - Asia/Tashkent - Asia/Tbilisi - Asia/Tehran - Asia/Thimphu - Asia/Tokyo - Asia/Tomsk - Asia/Ulaanbaatar - Asia/Urumqi - Asia/Ust-Nera - Asia/Vientiane - Asia/Vladivostok - Asia/Yakutsk - Asia/Yangon - Asia/Yekaterinburg - Asia/Yerevan - Atlantic/Azores - Atlantic/Bermuda - Atlantic/Canary - Atlantic/Cape_Verde - Atlantic/Faroe - Atlantic/Madeira - Atlantic/Reykjavik - Atlantic/South_Georgia - Atlantic/St_Helena - Atlantic/Stanley - Australia/Adelaide - Australia/Brisbane - Australia/Broken_Hill - Australia/Darwin - Australia/Eucla - Australia/Hobart - Australia/Lindeman - Australia/Lord_Howe - Australia/Melbourne - Australia/Perth - Australia/Sydney - Europe/Amsterdam - Europe/Andorra - Europe/Astrakhan - Europe/Athens - Europe/Belgrade - Europe/Berlin - Europe/Bratislava - Europe/Brussels - Europe/Bucharest - Europe/Budapest - Europe/Busingen - Europe/Chisinau - Europe/Copenhagen - Europe/Dublin - Europe/Gibraltar - Europe/Guernsey - Europe/Helsinki - Europe/Isle_of_Man - Europe/Istanbul - Europe/Jersey - Europe/Kaliningrad - Europe/Kirov - Europe/Kyiv - Europe/Lisbon - Europe/Ljubljana - Europe/London - Europe/Luxembourg - Europe/Madrid - Europe/Malta - Europe/Mariehamn - Europe/Minsk - Europe/Monaco - Europe/Moscow - Europe/Oslo - Europe/Paris - Europe/Podgorica - Europe/Prague - Europe/Riga - Europe/Rome - Europe/Samara - Europe/San_Marino - Europe/Sarajevo - Europe/Saratov - Europe/Simferopol - Europe/Skopje - Europe/Sofia - Europe/Stockholm - Europe/Tallinn - Europe/Tirane - Europe/Ulyanovsk - Europe/Vaduz - Europe/Vatican - Europe/Vienna - Europe/Vilnius - Europe/Volgograd - Europe/Warsaw - Europe/Zagreb - Europe/Zurich - Indian/Antananarivo - Indian/Chagos - Indian/Christmas - Indian/Cocos - Indian/Comoro - Indian/Kerguelen - Indian/Mahe - Indian/Maldives - Indian/Mauritius - Indian/Mayotte - Indian/Reunion - Pacific/Apia - Pacific/Auckland - Pacific/Bougainville - Pacific/Chatham - Pacific/Chuuk - Pacific/Easter - Pacific/Efate - Pacific/Fakaofo - Pacific/Fiji - Pacific/Funafuti - Pacific/Galapagos - Pacific/Gambier - Pacific/Guadalcanal - Pacific/Guam - Pacific/Honolulu - Pacific/Kanton - Pacific/Kiritimati - Pacific/Kosrae - Pacific/Kwajalein - Pacific/Majuro - Pacific/Marquesas - Pacific/Midway - Pacific/Nauru - Pacific/Niue - Pacific/Norfolk - Pacific/Noumea - Pacific/Pago_Pago - Pacific/Palau - Pacific/Pitcairn - Pacific/Pohnpei - Pacific/Port_Moresby - Pacific/Rarotonga - Pacific/Saipan - Pacific/Tahiti - Pacific/Tarawa - Pacific/Tongatapu - Pacific/Wake - Pacific/Wallis - US/Alaska - US/Central - US/Eastern - US/Hawaii - US/Mountain - US/Pacific default: Europe/Berlin description: The agent's timezone. title: timezone AssistantsPostRequestBodyContentApplicationJsonSchemaAgent: type: object properties: timezone: $ref: '#/components/schemas/timezone' default: Europe/Berlin voice_prompt: $ref: '#/components/schemas/voice_prompt' voice_stability: $ref: '#/components/schemas/voice_stability' voice_similarity_boost: $ref: '#/components/schemas/voice_similarity_boost' voice_optimise_streaming_latency: $ref: '#/components/schemas/voice_optimise_streaming_latency' voice_style: $ref: '#/components/schemas/voice_style' voice_use_speaker_boost: $ref: '#/components/schemas/voice_use_speaker_boost' allowed_idle_time_seconds: $ref: '#/components/schemas/allowed_idle_time_seconds' initial_pause_seconds: $ref: '#/components/schemas/initial_pause_seconds' transcriber_keywords: $ref: '#/components/schemas/transcriber_keywords' ring_pause_seconds: $ref: '#/components/schemas/ring_pause_seconds' transcriber_provider: $ref: '#/components/schemas/transcriber_provider' transcriber_speech_recognition: $ref: '#/components/schemas/transcriber_speech_recognition' background_noise: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoise' description: Add background noise to make the call more natural. noise_cancellation: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentNoiseCancellation' description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand. realistic_filler_words: type: boolean description: If enabled, the agent will be using realistic filler words (for example, "um"). is_transcript_disabled: type: boolean description: If set to true, conversations will not be transcribed. redact_pii: type: boolean description: Whether to redact personally identifiable information (PII) from transcripts, post-call webhooks, and internal logs. Redacted data includes credit card numbers, CVVs, expiration dates, social security numbers, names, email addresses, phone numbers, and physical addresses. synthesizer_filter_words: type: array items: type: string description: Words or characters that the agent should not say. end_call_reasons: type: array items: type: string description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format). Works with both simple prompt and Flow Designer agents.' end_call_reasons_v2: type: array items: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2Items' description: Custom conditions that trigger automatic call termination with per-reason closing message control. When both end_call_reasons and end_call_reasons_v2 are present, v2 takes precedence. voice_synthesizer: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentVoiceSynthesizer' description: The engine used to synthesize voice. global_audio_tags: type: string description: Free-form audio tags that apply to every utterance for the duration of a call. Tags are wrapped in square brackets and set a persistent voice character such as an accent or base mood. Only supported when voice_synthesizer is eleven_v3. suppression_level: type: number format: double description: Setting this value will enable voice isolation in addition to background noise detection, the value assigned the term is the strength with a higher value stronger voice isolation. interruption_fade_out: type: integer description: Each frame is 20 ms. When you interrupt the bot, the volume slowly goes down to 0 over that many frames. For example, 5 translates to a 100 ms fadeout. voice_speed: type: number format: double description: Adjust how fast or slow your agent will talk on the call. voice_volume: type: number format: double description: Adjust how loud or quite your agent will talk on the call. min_words_to_interrupt: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentMinWordsToInterrupt' description: You can set how many words the human must speak before the AI will stop speaking and listening. prompt: $ref: '#/components/schemas/prompt' greeting_message: $ref: '#/components/schemas/greeting_message' greeting_message_mode: $ref: '#/components/schemas/greeting_message_mode' greeting_message_human_talk_timeout: $ref: '#/components/schemas/greeting_message_human_talk_timeout' llm: $ref: '#/components/schemas/llm' language: $ref: '#/components/schemas/language' voice_id: $ref: '#/components/schemas/voice_id' patience_level: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentPatienceLevel' description: Patience level of the agent. send_user_idle_reminders: type: boolean default: false description: Enables or disables idle reminders. reminder_after_idle_time_seconds: type: integer description: Time in seconds before sending an idle reminder. reminder_after_idle_message: type: string description: The idle reminder message. fallback_voice_id: $ref: '#/components/schemas/voice_id' fallback_provider: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentFallbackProvider' description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow). fallback_model: type: string description: The model to be used by the fallback provider. consent_message: type: string description: The message the agent will say to ask the customer for their consent to have the call recorded. is_consent_enabled: type: boolean description: Whether the agent should ask for consent to record the call. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgent List-assistantRequestBadRequestError: type: object properties: {} title: List-assistantRequestBadRequestError detach-phone-number-from-assistant_Response_200: type: object properties: status: type: string title: detach-phone-number-from-assistant_Response_200 AgentVoiceSynthesizer: type: string enum: - eleven_multilingual_v2 - eleven_turbo_v2 - eleven_turbo_v2_5 - eleven_flash_v2 - eleven_flash_v2_5 - eleven_v3 description: The engine used to synthesize voice. title: AgentVoiceSynthesizer status: type: string description: Whether the request was successful. title: status voice_similarity_boost: type: integer description: Range 0 to 1. Determines how closely the AI matches the original voice. Higher settings potentially including unwanted noise from the original recording. title: voice_similarity_boost AssistantsPostRequestBodyContentApplicationJsonSchemaAgentFallbackProvider: type: string enum: - elevenlabs - deepgram - synthflow description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow). title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentFallbackProvider AgentMinWordsToInterrupt: type: string enum: - '0' - '1' - '2' - '3' - '4' - '5' description: You can set how many words the human must speak before the AI will stop speaking and listening. title: AgentMinWordsToInterrupt AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration: type: object properties: duration_seconds: type: integer description: Maximum length of the call in seconds. is_enabled: type: boolean description: Whether there's a limit on call length. title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetails: type: object properties: phone: type: string description: The phone number attached to the agent. voice: type: string description: The agent's voice. title: AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetails update-assistant_Response_200: type: object properties: status: $ref: '#/components/schemas/status' response: $ref: '#/components/schemas/AssistantsModelIdPutResponsesContentApplicationJsonSchemaResponse' details: $ref: '#/components/schemas/AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetails' title: update-assistant_Response_200 attach-phone-numbers-to-assistant_Request: oneOf: - $ref: '#/components/schemas/AttachPhoneNumbersToAssistantRequest0' - $ref: '#/components/schemas/AttachPhoneNumbersToAssistantRequest1' title: attach-phone-numbers-to-assistant_Request greeting_message: type: string description: The greeting message the agent will open the conversation with. You can add variables in curly brackets (for example, {your-variable}). title: greeting_message attach-phone-numbers-to-assistant_Response_200: type: object properties: status: type: string title: attach-phone-numbers-to-assistant_Response_200 voice_stability: type: integer description: Range is 0 to 1. Lower settings may make the voice sound more expressive but less predictable, while higher settings make it sound steadier but less emotional. title: voice_stability AssistantsPostResponsesContentApplicationJsonSchemaDetail: type: object properties: status: type: string description: type: string request_id: type: string category: type: string required: - status - description - request_id - category title: AssistantsPostResponsesContentApplicationJsonSchemaDetail AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsMaxDuration: type: object properties: duration_seconds: type: integer description: Maximum length of the call in seconds. is_enabled: type: boolean description: Whether there's a limit on call length. title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsMaxDuration delete-assistant_Response_200: type: object properties: status: $ref: '#/components/schemas/status' response: $ref: '#/components/schemas/AssistantsModelIdDeleteResponsesContentApplicationJsonSchemaResponse' title: delete-assistant_Response_200 Delete-assistantRequestBadRequestError: type: object properties: {} title: Delete-assistantRequestBadRequestError pagination: type: object properties: total_records: type: integer limit: type: integer offset: type: integer title: pagination AssistantsPostRequestBodyContentApplicationJsonSchemaAgentVoiceSynthesizer: type: string enum: - eleven_multilingual_v2 - eleven_turbo_v2 - eleven_turbo_v2_5 - eleven_flash_v2 - eleven_flash_v2_5 - eleven_v3 description: The engine used to synthesize voice. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentVoiceSynthesizer AssistantsPostResponsesContentApplicationJsonSchemaDetails: type: object properties: phone: type: string description: The phone number attached to this agent. voice: type: string description: This agent's voice. title: AssistantsPostResponsesContentApplicationJsonSchemaDetails AssistantsPostResponsesContentApplicationJsonSchemaResponse: type: object properties: model_id: $ref: '#/components/schemas/model_id' title: AssistantsPostResponsesContentApplicationJsonSchemaResponse language: type: string enum: - multi - en-US - bg - cs - de-DE - el - fi - fr-FR - es-ES - hu - it - fr - pt-BR - nl-NL - hi - zh-CN - 'no' - sv-SE - da - da-DK - id - ja - ko - ms - ro - ru - sk - tr - uk - vi - th - pl description: This agent's language. For the list of available languages, see Supported languages title: language Detach-phone-number-from-assistantRequestNotFoundError: type: object properties: detail: $ref: '#/components/schemas/AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail' title: Detach-phone-number-from-assistantRequestNotFoundError greeting_message_human_talk_timeout: type: integer description: 'The maximum number of seconds the agent waits for the human to speak first when `greeting_message_mode` is set to `human`. If the human does not speak within this time, the agent will start the conversation automatically. ' title: greeting_message_human_talk_timeout AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsInputVariablesItemsValuesItems: type: object properties: name: type: string type: type: string description: type: - string - 'null' example: type: - string - 'null' required: type: - boolean - 'null' required: - name - type title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsInputVariablesItemsValuesItems AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessage: type: object properties: enabled: type: boolean description: Whether voicemail message leaving is enabled. mode: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessageMode' description: The mode used to generate the voicemail message. exact_message: type: string description: The exact message to leave on the voicemail. Used when mode is `exact_message`. prompt: type: string description: A prompt used to generate the voicemail message. Used when mode is `prompt`. description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. title: AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessage AssistantsPostRequestBodyContentApplicationJsonSchemaMaxDuration: type: object properties: duration_seconds: type: integer description: Maximum length of the call in seconds. is_enabled: type: boolean description: Whether there's a limit on call length. title: AssistantsPostRequestBodyContentApplicationJsonSchemaMaxDuration model_id: type: string description: Agent ID. You can find it on the agent’s page in your dashboard. title: model_id Update-assistantRequestBadRequestError: type: object properties: detail: $ref: '#/components/schemas/AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetail' title: Update-assistantRequestBadRequestError AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2Items: type: object properties: reason: type: string description: The condition that triggers call termination. closing_message_mode: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2ItemsClosingMessageMode' description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.' closing_message: type: string description: The closing message content. Interpretation depends on closing_message_mode. required: - reason title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2Items AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessage: type: object properties: enabled: type: boolean description: Whether voicemail message leaving is enabled. mode: $ref: '#/components/schemas/AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessageMode' description: The mode used to generate the voicemail message. exact_message: type: string description: The exact message to leave on the voicemail. Used when mode is `exact_message`. prompt: type: string description: A prompt used to generate the voicemail message. Used when mode is `prompt`. description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. title: AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessage initial_pause_seconds: type: integer description: Duration before the agent starts speaking. title: initial_pause_seconds allowed_idle_time_seconds: type: integer description: The agent will disconnect after this period. title: allowed_idle_time_seconds AgentEndCallReasonsV2ItemsClosingMessageMode: type: string enum: - static - prompt - none description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.' title: AgentEndCallReasonsV2ItemsClosingMessageMode AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsInputVariablesItems: type: object properties: action_id: type: string description: Action ID the variables belong to. values: type: array items: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsInputVariablesItemsValuesItems' description: Input variable definitions for this action. trigger_condition: type: - string - 'null' description: Per-assistant 'When to use this Action' condition for this action, or null when not set. required: - action_id - values title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsInputVariablesItems voice_prompt: type: string description: Slightly alters the agent's intonation, talking speed or sentiment for a subtle yet noticeable effect. title: voice_prompt AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse: type: object properties: pagination: $ref: '#/components/schemas/pagination' assistants: type: array items: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItems' title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistants: type: object properties: end_call_reasons: type: array items: type: string description: Optional. Some GET responses include `end_call_reasons` at the top level of each assistant object (in addition to `agent.end_call_reasons`). To configure end-call reasons, set **`agent.end_call_reasons`** on create or update requests; a top-level `end_call_reasons` on those requests is ignored. description: type: string description: Agent description. phone_number: type: string description: The phone number attached to the agent. external_webhook_url: type: string description: URL of the webhook that should receive data after the call, such as the transcript. is_recording: type: boolean description: Whether the conversation should be recorded. max_duration: $ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration' voicemail_message: $ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage' description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. type: $ref: '#/components/schemas/type' name: $ref: '#/components/schemas/name' agent: $ref: '#/components/schemas/Agent' model_id: type: string description: The ID of the agent. title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistants llm: type: string enum: - gpt-4.1 - gpt-4.1-nano - gpt-4.1-mini - gpt-5-mini - gpt-5-nano - gpt-5.1 - gpt-5.2 - gpt-5.4 - gpt-5.4-mini - gpt-5.4-nano - synthflow description: The LLM powering this agent. title: llm AssistantsPostRequestBodyContentApplicationJsonSchemaAgentPatienceLevel: type: string enum: - low - medium - high description: Patience level of the agent. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentPatienceLevel AssistantsModelIdPhoneNumbersPutResponsesContentApplicationJsonSchemaDetail: type: object properties: status: type: string description: type: string request_id: type: string category: type: string required: - status - description - request_id - category title: AssistantsModelIdPhoneNumbersPutResponsesContentApplicationJsonSchemaDetail transcriber_keywords: type: array items: type: string description: Add business terms to improve accuracy and recognition. title: transcriber_keywords AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoiseType: type: string enum: - cafe - office description: What kind of background noise should be present. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoiseType AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessageMode: type: string enum: - exact_message - prompt description: The mode used to generate the voicemail message. title: AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessageMode create-assistant_Response_200: type: object properties: status: $ref: '#/components/schemas/status' response: $ref: '#/components/schemas/AssistantsPostResponsesContentApplicationJsonSchemaResponse' details: $ref: '#/components/schemas/AssistantsPostResponsesContentApplicationJsonSchemaDetails' title: create-assistant_Response_200 AssistantsGetResponsesContentApplicationJsonSchemaResponse: type: object properties: pagination: $ref: '#/components/schemas/pagination' assistants: $ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistants' title: AssistantsGetResponsesContentApplicationJsonSchemaResponse AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoise: type: object properties: enabled: type: boolean description: If enabled, the agent will add background noise. type: $ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoiseType' description: What kind of background noise should be present. volume: type: integer description: How loud the background noise should be. description: Add background noise to make the call more natural. title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoise AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2ItemsClosingMessageMode: type: string enum: - static - prompt - none description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.' title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2ItemsClosingMessageMode AgentPatienceLevel: type: string enum: - low - medium - high description: Patience level of the agent. title: AgentPatienceLevel AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetail: type: object properties: status: type: string description: type: string request_id: type: string category: type: string required: - status - description - request_id - category title: AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetail type: type: string enum: - outbound - inbound - widget description: Agent type. title: type voice_id: type: string description: Voice ID for this agent. To retrieve voice IDs, use the Get voices endpoint. title: voice_id list-assistant_Response_200: type: object properties: status: $ref: '#/components/schemas/status' response: $ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponse' title: list-assistant_Response_200 AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsVoicemailMessage: type: object properties: enabled: type: boolean description: Whether voicemail message leaving is enabled. mode: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsVoicemailMessageMode' description: The mode used to generate the voicemail message. exact_message: type: string description: The exact message to leave on the voicemail. Used when mode is `exact_message`. prompt: type: string description: A prompt used to generate the voicemail message. Used when mode is `prompt`. description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsVoicemailMessage AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode: type: string enum: - exact_message - prompt description: The mode used to generate the voicemail message. title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode AgentBackgroundNoiseType: type: string enum: - cafe - office description: What kind of background noise should be present. title: AgentBackgroundNoiseType AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsVoicemailMessageMode: type: string enum: - exact_message - prompt description: The mode used to generate the voicemail message. title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsVoicemailMessageMode AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaMaxDuration: type: object properties: duration_seconds: type: integer description: Maximum length of the call in seconds. is_enabled: type: boolean description: Whether there's a limit on call length. title: AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaMaxDuration AttachPhoneNumbersToAssistantRequest0: type: object properties: phone_numbers: type: array items: type: string description: Phone numbers array. required: - phone_numbers title: AttachPhoneNumbersToAssistantRequest0 greeting_message_mode: type: string enum: - human - agent_static - agent_dynamic description: 'Controls how the agent delivers the initial greeting. `human`: the agent waits for the human to speak first. `agent_static`: the agent speaks `greeting_message` once the call is established. `agent_dynamic`: the agent generates a greeting from the prompt and speaks it once the call is established. Note: `voicemail_message` requires this to be set to `human`. Changing away from `human` while `voicemail_message` is enabled will fail. ' title: greeting_message_mode Detach-phone-number-from-assistantRequestBadRequestError: type: object properties: detail: $ref: '#/components/schemas/AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail' title: Detach-phone-number-from-assistantRequestBadRequestError Create-assistantRequestBadRequestError: type: object properties: detail: $ref: '#/components/schemas/AssistantsPostResponsesContentApplicationJsonSchemaDetail' title: Create-assistantRequestBadRequestError prompt: type: string description: Add variables in curly brackets. For example, {your-variable}. title: prompt AgentBackgroundNoise: type: object properties: enabled: type: boolean description: If enabled, the agent will add background noise. type: $ref: '#/components/schemas/AgentBackgroundNoiseType' description: What kind of background noise should be present. volume: type: integer description: How loud the background noise should be. description: Add background noise to make the call more natural. title: AgentBackgroundNoise ring_pause_seconds: type: integer description: Ring time before the agent answers the call. title: ring_pause_seconds name: type: string description: Agent name. title: name Get-assistantRequestBadRequestError: type: object properties: {} title: Get-assistantRequestBadRequestError transcriber_provider: type: string enum: - deepgram - deepgram-nova-3 - synthflow-stt description: Speech-to-text provider used for transcription. title: transcriber_provider Agent: type: object properties: timezone: $ref: '#/components/schemas/timezone' default: Europe/Berlin voice_prompt: $ref: '#/components/schemas/voice_prompt' voice_stability: $ref: '#/components/schemas/voice_stability' voice_similarity_boost: $ref: '#/components/schemas/voice_similarity_boost' voice_optimise_streaming_latency: $ref: '#/components/schemas/voice_optimise_streaming_latency' voice_style: $ref: '#/components/schemas/voice_style' voice_use_speaker_boost: $ref: '#/components/schemas/voice_use_speaker_boost' allowed_idle_time_seconds: $ref: '#/components/schemas/allowed_idle_time_seconds' initial_pause_seconds: $ref: '#/components/schemas/initial_pause_seconds' transcriber_keywords: $ref: '#/components/schemas/transcriber_keywords' ring_pause_seconds: $ref: '#/components/schemas/ring_pause_seconds' transcriber_provider: $ref: '#/components/schemas/transcriber_provider' transcriber_speech_recognition: $ref: '#/components/schemas/transcriber_speech_recognition' background_noise: $ref: '#/components/schemas/AgentBackgroundNoise' description: Add background noise to make the call more natural. noise_cancellation: $ref: '#/components/schemas/AgentNoiseCancellation' description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand. realistic_filler_words: type: boolean description: If enabled, the agent will be using realistic filler words (for example, "um"). is_transcript_disabled: type: boolean description: If set to true, conversations will not be transcribed. redact_pii: type: boolean description: Whether to redact personally identifiable information (PII) from transcripts, post-call webhooks, and internal logs. Redacted data includes credit card numbers, CVVs, expiration dates, social security numbers, names, email addresses, phone numbers, and physical addresses. synthesizer_filter_words: type: array items: description: Any type description: Words or characters that the agent should not say. end_call_reasons: type: array items: type: string description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format). Works with both simple prompt and Flow Designer agents.' end_call_reasons_v2: type: array items: $ref: '#/components/schemas/AgentEndCallReasonsV2Items' description: Custom conditions that trigger automatic call termination with per-reason closing message control. When both end_call_reasons and end_call_reasons_v2 are present, v2 takes precedence. voice_synthesizer: $ref: '#/components/schemas/AgentVoiceSynthesizer' description: The engine used to synthesize voice. global_audio_tags: type: string description: Free-form audio tags that apply to every utterance for the duration of a call. Tags are wrapped in square brackets and set a persistent voice character such as an accent or base mood. Only supported when voice_synthesizer is eleven_v3. suppression_level: type: number format: double description: Setting this value will enable voice isolation in addition to background noise detection, the value assigned the term is the strength with a higher value stronger voice isolation. interruption_fade_out: type: integer description: Each frame is 20 ms. When you interrupt the bot, the volume slowly goes down to 0 over that many frames. For example, 5 translates to a 100 ms fadeout. voice_speed: type: number format: double description: Adjust how fast or slow your agent will talk on the call. voice_volume: type: number format: double description: Adjust how loud or quite your agent will talk on the call. min_words_to_interrupt: $ref: '#/components/schemas/AgentMinWordsToInterrupt' description: You can set how many words the human must speak before the AI will stop speaking and listening. prompt: $ref: '#/components/schemas/prompt' greeting_message: $ref: '#/components/schemas/greeting_message' greeting_message_mode: $ref: '#/components/schemas/greeting_message_mode' greeting_message_human_talk_timeout: $ref: '#/components/schemas/greeting_message_human_talk_timeout' llm: $ref: '#/components/schemas/llm' language: $ref: '#/components/schemas/language' voice_id: $ref: '#/components/schemas/voice_id' patience_level: $ref: '#/components/schemas/AgentPatienceLevel' description: Patience level of the agent. send_user_idle_reminders: type: boolean default: false description: Enables or disables idle reminders. reminder_after_idle_time_seconds: type: integer description: Time in seconds before sending an idle reminder. reminder_after_idle_message: type: string description: The idle reminder message. fallback_voice_id: $ref: '#/components/schemas/voice_id' fallback_provider: $ref: '#/components/schemas/AgentFallbackProvider' description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow). fallback_model: type: string description: The model to be used by the fallback provider. title: Agent AssistantsModelIdPutResponsesContentApplicationJsonSchemaResponse: type: object properties: model_id: $ref: '#/components/schemas/model_id' title: AssistantsModelIdPutResponsesContentApplicationJsonSchemaResponse AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItems: type: object properties: end_call_reasons: type: array items: type: string description: Optional. Some GET responses include `end_call_reasons` at the top level of each assistant object (in addition to `agent.end_call_reasons`). To configure end-call reasons, set **`agent.end_call_reasons`** on create or update requests; a top-level `end_call_reasons` on those requests is ignored. description: type: string description: Agent description. phone_number: type: string description: The phone number attached to the agent. external_webhook_url: type: string description: URL of the webhook that should receive data after the call, such as the transcript. is_recording: type: boolean description: Whether the conversation should be recorded. max_duration: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsMaxDuration' voicemail_message: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsVoicemailMessage' description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`. type: $ref: '#/components/schemas/type' name: $ref: '#/components/schemas/name' agent: $ref: '#/components/schemas/Agent' model_id: type: string description: The ID of the agent. attached_phone_numbers: type: array items: $ref: '#/components/schemas/AttachedPhoneNumber' description: Attached phone numbers available for outbound calls from this agent. actions: type: array items: type: string description: Action IDs attached to this assistant. Returns an empty array when `include_actions=false`. input_variables: type: array items: $ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItemsInputVariablesItems' description: Action input variables grouped by action ID. Returns an empty array when `include_actions=false`. title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsItems AttachedPhoneNumber: type: object properties: number: type: string description: Phone number to attach to an outbound agent. sid: type: - string - 'null' description: Twilio phone number SID. slug: type: string description: Internal phone number slug. required: - number - sid - slug title: AttachedPhoneNumber voice_optimise_streaming_latency: type: integer description: Range 0 to 4. Optimises streaming latency title: voice_optimise_streaming_latency Attach-phone-numbers-to-assistantRequestNotFoundError: type: object properties: detail: $ref: '#/components/schemas/AssistantsModelIdPhoneNumbersPutResponsesContentApplicationJsonSchemaDetail' title: Attach-phone-numbers-to-assistantRequestNotFoundError securitySchemes: sec0: type: http scheme: bearer