openapi: 3.2.0 info: title: ElevenLabs API Documentation Agents Platform API description: This is the documentation for the ElevenLabs API. You can use this API to use our service programmatically, this is done by using your API key. You can find your API key in the dashboard at https://elevenlabs.io/app/settings/api-keys. version: '1.0' tags: - name: Agents Platform description: Build, configure and manage Conversational AI agents, knowledge bases, tools, and conversations. paths: /v1/convai/conversation/get-signed-url: get: tags: - Agents Platform summary: Get Signed Url description: Get a signed url to start a conversation with an agent with an agent that requires authorization operationId: get_conversation_signed_link parameters: - name: agent_id in: query required: true schema: type: string description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: include_conversation_id in: query required: false schema: type: boolean description: Whether to include a conversation_id with the response. If included, the conversation_signature cannot be used again. default: false title: Include Conversation Id description: Whether to include a conversation_id with the response. If included, the conversation_signature cannot be used again. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the branch to use title: Branch Id description: The ID of the branch to use - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the version to use title: Version Id description: The ID of the version to use - name: environment in: query required: false schema: anyOf: - type: string - type: 'null' description: The environment to use for resolving environment variables (e.g. 'production', 'staging'). Defaults to 'production'. title: Environment description: The environment to use for resolving environment variables (e.g. 'production', 'staging'). Defaults to 'production'. - name: debug_events_request in: query required: false schema: type: boolean description: Whether to enable debug events. Only available for users with editor access to the agent. default: false title: Debug Events Request description: Whether to enable debug events. Only available for users with editor access to the agent. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConversationSignedUrlResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: get_signed_url /v1/convai/conversation/get_signed_url: get: tags: - Agents Platform summary: Get Signed Url description: Get a signed url to start a conversation with an agent with an agent that requires authorization operationId: get_signed_url_deprecated deprecated: true parameters: - name: agent_id in: query required: true schema: type: string description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: include_conversation_id in: query required: false schema: type: boolean description: Whether to include a conversation_id with the response. If included, the conversation_signature cannot be used again. default: false title: Include Conversation Id description: Whether to include a conversation_id with the response. If included, the conversation_signature cannot be used again. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the branch to use title: Branch Id description: The ID of the branch to use - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the version to use title: Version Id description: The ID of the version to use - name: environment in: query required: false schema: anyOf: - type: string - type: 'null' description: The environment to use for resolving environment variables (e.g. 'production', 'staging'). Defaults to 'production'. title: Environment description: The environment to use for resolving environment variables (e.g. 'production', 'staging'). Defaults to 'production'. - name: debug_events_request in: query required: false schema: type: boolean description: Whether to enable debug events. Only available for users with editor access to the agent. default: false title: Debug Events Request description: Whether to enable debug events. Only available for users with editor access to the agent. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConversationSignedUrlResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-skip-spec: true /v1/convai/conversation/token: get: tags: - Agents Platform summary: Get Webrtc Token description: Get a WebRTC session token for real-time communication. operationId: get_livekit_token parameters: - name: agent_id in: query required: true schema: type: string description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: participant_name in: query required: false schema: anyOf: - type: string - type: 'null' description: Optional custom participant name. If not provided, user ID will be used title: Participant Name description: Optional custom participant name. If not provided, user ID will be used - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the branch to use title: Branch Id description: The ID of the branch to use - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the version to use title: Version Id description: The ID of the version to use - name: environment in: query required: false schema: anyOf: - type: string - type: 'null' description: The environment to use for resolving environment variables (e.g. 'production', 'staging'). Defaults to 'production'. title: Environment description: The environment to use for resolving environment variables (e.g. 'production', 'staging'). Defaults to 'production'. - name: debug_events_request in: query required: false schema: type: boolean description: Whether to enable debug events. Only available for users with editor access to the agent. default: false title: Debug Events Request description: Whether to enable debug events. Only available for users with editor access to the agent. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/TokenResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: get_webrtc_token /v1/convai/twilio/outbound-call: post: tags: - Agents Platform summary: Handle An Outbound Call Via Twilio description: Handle an outbound call via Twilio operationId: handle_twilio_outbound_call parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Handle_an_outbound_call_via_Twilio_v1_convai_twilio_outbound_call_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/TwilioOutboundCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - twilio x-fern-sdk-method-name: outbound_call /v1/convai/twilio/register-call: post: tags: - Agents Platform summary: Register A Twilio Call And Return Twiml description: Register a Twilio call and return TwiML to connect the call operationId: register_twilio_call parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Register_a_Twilio_call_and_return_TwiML_v1_convai_twilio_register_call_post' responses: '200': description: Successful Response content: text/html: schema: type: string '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - twilio x-fern-sdk-method-name: register_call /v1/convai/exotel/outbound-call: post: tags: - Agents Platform summary: Handle An Outbound Call Via Exotel description: Handle an outbound call via Exotel Connect API operationId: handle_exotel_outbound_call parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Handle_an_outbound_call_via_Exotel_v1_convai_exotel_outbound_call_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ExotelOutboundCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - exotel x-fern-sdk-method-name: outbound_call /v1/convai/whatsapp/outbound-call: post: tags: - Agents Platform summary: Make An Outbound Call Via Whatsapp description: Make an outbound call via WhatsApp operationId: whatsapp_outbound_call parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Make_an_outbound_call_via_WhatsApp_v1_convai_whatsapp_outbound_call_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/WhatsAppOutboundCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - whatsapp x-fern-sdk-method-name: outbound_call /v1/convai/whatsapp/outbound-message: post: tags: - Agents Platform summary: Send An Outbound Message Via Whatsapp description: Send an outbound message via WhatsApp operationId: whatsapp_outbound_message parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Send_an_outbound_message_via_WhatsApp_v1_convai_whatsapp_outbound_message_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/WhatsAppOutboundMessageResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - whatsapp x-fern-sdk-method-name: outbound_message /v1/convai/agents/create: post: tags: - Agents Platform summary: Create Agent description: Create an agent from a config object operationId: create_agent_route parameters: - name: enable_versioning in: query required: false schema: type: boolean description: 'Deprecated: all agents are versioned. This parameter is ignored.' deprecated: true default: true title: Enable Versioning description: 'Deprecated: all agents are versioned. This parameter is ignored.' deprecated: true - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_Agent_v1_convai_agents_create_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateAgentResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: create /v1/convai/agents/summaries: get: tags: - Agents Platform summary: Get Agent Summaries description: Returns summaries for the specified agents. operationId: get_agent_summaries_route parameters: - name: agent_ids in: query required: true schema: type: array items: type: string description: List of agent IDs to fetch summaries for examples: - J3Pbu5gP6NNKBscdCdwB - K4Qcu6hQ7OOLCtdeDeXC max_items: 100 title: Agent Ids description: List of agent IDs to fetch summaries for - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: type: object additionalProperties: oneOf: - $ref: '#/components/schemas/AgentSummaryBatchSuccessfulResponseModel' - $ref: '#/components/schemas/BatchFailureResponseModel' discriminator: propertyName: status mapping: success: '#/components/schemas/AgentSummaryBatchSuccessfulResponseModel' failure: '#/components/schemas/BatchFailureResponseModel' title: Response Get Agent Summaries V1 Convai Agents Summaries Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - summaries x-fern-sdk-method-name: get /v1/convai/agents/{agent_id}: get: tags: - Agents Platform summary: Get Agent description: Retrieve config for an agent operationId: get_agent_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the agent version to use examples: - agtvrsn_8901k4t9z5defmb8vh3e9361y7nj title: Version Id description: The ID of the agent version to use - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the branch to use examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: The ID of the branch to use - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Patches An Agent Settings description: Patches an Agent settings operationId: patch_agent_settings_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: enable_versioning_if_not_enabled in: query required: false schema: type: boolean description: 'Deprecated: all agents are versioned. This parameter is ignored.' deprecated: true default: true title: Enable Versioning If Not Enabled description: 'Deprecated: all agents are versioned. This parameter is ignored.' deprecated: true - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the branch to use examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: The ID of the branch to use - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: application/json: schema: $ref: '#/components/schemas/Body_Patches_an_Agent_settings_v1_convai_agents__agent_id__patch' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Agent description: Delete an agent operationId: delete_agent_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response '204': description: Agent successfully deleted '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: delete /v1/convai/agents/{agent_id}/widget: get: tags: - Agents Platform summary: Get Agent Widget Config description: Retrieve the widget configuration for an agent operationId: get_agent_widget_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: conversation_signature in: query required: false schema: anyOf: - type: string - type: 'null' description: An expiring token that enables a websocket conversation to start. These can be generated for an agent using the /v1/convai/conversation/get_signed_url endpoint title: Conversation Signature description: An expiring token that enables a websocket conversation to start. These can be generated for an agent using the /v1/convai/conversation/get_signed_url endpoint - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentEmbedResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - widget x-fern-sdk-method-name: get /v1/convai/agents/{agent_id}/link: get: tags: - Agents Platform summary: Get Shareable Agent Link description: Get the current link used to share the agent with others operationId: get_agent_link_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentLinkResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - link x-fern-sdk-method-name: get /v1/convai/agents/{agent_id}/avatar: post: tags: - Agents Platform summary: Post Agent Avatar description: Sets the avatar for an agent displayed in the widget operationId: post_agent_avatar_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_Post_Agent_avatar_v1_convai_agents__agent_id__avatar_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PostAgentAvatarResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - widget - avatar x-fern-sdk-method-name: create /v1/convai/agents/{agent_id}/hold-audio: post: tags: - Agents Platform summary: Post Agent Hold Audio description: Sets the custom hold audio played on loop to callers waiting in the agent's concurrency wait queue. Replaces any previously uploaded clip. operationId: post_agent_hold_audio_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_Post_Agent_hold_audio_v1_convai_agents__agent_id__hold_audio_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PostAgentHoldAudioResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - hold_audio x-fern-sdk-method-name: create delete: tags: - Agents Platform summary: Delete Agent Hold Audio description: Removes the agent's custom hold audio; queued callers hear the default hold tone again. operationId: delete_agent_hold_audio_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/DeleteAgentHoldAudioResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - hold_audio x-fern-sdk-method-name: delete /v1/convai/agents: get: tags: - Agents Platform summary: List Agents description: Returns a list of your agents and their metadata. operationId: get_agents_route parameters: - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many Agents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many Agents to return at maximum. Can not exceed 100, defaults to 30. - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: Search by agents name. title: Search description: Search by agents name. - name: archived in: query required: false schema: anyOf: - type: boolean - type: 'null' description: Filter agents by archived status examples: - false default: false title: Archived description: Filter agents by archived status - name: show_only_owned_agents in: query required: false schema: type: boolean description: 'If set to true, the endpoint will omit any agents that were shared with you by someone else and include only the ones you own. Deprecated: use created_by_user_id instead.' deprecated: true default: false title: Show Only Owned Agents description: 'If set to true, the endpoint will omit any agents that were shared with you by someone else and include only the ones you own. Deprecated: use created_by_user_id instead.' deprecated: true - name: created_by_user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter agents by creator user ID. When set, only agents created by this user are returned. Takes precedence over show_only_owned_agents. Use '@me' to refer to the authenticated user. title: Created By User Id description: Filter agents by creator user ID. When set, only agents created by this user are returned. Takes precedence over show_only_owned_agents. Use '@me' to refer to the authenticated user. - name: tags in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter agents by tag. Repeat the parameter to match any of several tags. examples: - - Customer Support title: Tags description: Filter agents by tag. Repeat the parameter to match any of several tags. - name: sort_direction in: query required: false schema: $ref: '#/components/schemas/SortDirection' description: The direction to sort the results default: desc description: The direction to sort the results - name: sort_by in: query required: false schema: anyOf: - $ref: '#/components/schemas/AgentSortBy' - type: 'null' description: The field to sort the results by title: Sort By description: The field to sort the results by - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentsPageResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: list /v1/convai/agent/{agent_id}/knowledge-base/size: get: tags: - Agents Platform summary: Returns The Size Of The Agent'S Knowledge Base description: Returns the number of pages in the agent's knowledge base. operationId: get_agent_knowledge_base_size parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentKnowledgebaseSizeResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - knowledge_base x-fern-sdk-method-name: size /v1/convai/agent/{agent_id}/llm-usage/calculate: post: tags: - Agents Platform summary: Calculate Expected Llm Usage For An Agent description: Calculates expected number of LLM tokens needed for the specified agent. operationId: get_agent_llm_expected_cost_calculation parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/LLMUsageCalculatorRequestModel' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LLMUsageCalculatorResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - llm_usage x-fern-sdk-method-name: calculate /v1/convai/agents/{agent_id}/duplicate: post: tags: - Agents Platform summary: Duplicate Agent description: Create a new agent by duplicating an existing one operationId: duplicate_agent_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: application/json: schema: $ref: '#/components/schemas/Body_Duplicate_Agent_v1_convai_agents__agent_id__duplicate_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateAgentResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: duplicate /v1/convai/agents/{agent_id}/simulate-conversation: post: tags: - Agents Platform summary: Simulates A Conversation description: Deprecated. Use the `/v1/convai/agent-testing/create` and `/v1/convai/agents/:agent_id/run-tests` endpoints to create and run simulations. Run a conversation between the agent and a simulated user. operationId: run_conversation_simulation_route deprecated: true parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Simulates_a_conversation_v1_convai_agents__agent_id__simulate_conversation_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AgentSimulatedChatTestResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: simulate_conversation /v1/convai/agents/{agent_id}/simulate-conversation/stream: post: tags: - Agents Platform summary: Simulates A Conversation (Stream) description: Deprecated. Use the `/v1/convai/agent-testing/create` and `/v1/convai/agents/:agent_id/run-tests` endpoints to create and run simulations. Run a conversation between the agent and a simulated user and stream back the response. Response is streamed back as partial lists of messages that should be concatenated and once the conversation has complete a single final message with the conversation analysis will be sent. operationId: run_conversation_simulation_route_stream deprecated: true parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Simulates_a_conversation__Stream__v1_convai_agents__agent_id__simulate_conversation_stream_post' responses: '200': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents x-fern-sdk-method-name: simulate_conversation_stream /v1/convai/agent-testing/folders: post: tags: - Agents Platform summary: Create Agent Test Folder description: Creates a folder for organizing agent tests. operationId: create_agent_test_folder_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_agent_test_folder_v1_convai_agent_testing_folders_post' responses: '200': description: Folder successfully created content: application/json: schema: $ref: '#/components/schemas/CreateAgentTestFolderResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tests - folders x-fern-sdk-method-name: create /v1/convai/agent-testing/folders/{folder_id}: get: tags: - Agents Platform summary: Get Agent Test Folder By Id description: Gets an agent test folder by ID, including its folder path. operationId: get_agent_test_folder_route parameters: - name: folder_id in: path required: true schema: type: string description: The folder ID. examples: - tfld_7301khxdkycse5f88fzjdtrterzm title: Folder Id description: The folder ID. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Folder details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/GetAgentTestFolderResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tests - folders x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Agent Test Folder description: Updates an agent test folder. Currently only supports updating the folder name. operationId: update_agent_test_folder_route parameters: - name: folder_id in: path required: true schema: type: string description: The folder ID. examples: - tfld_7301khxdkycse5f88fzjdtrterzm title: Folder Id description: The folder ID. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Update_agent_test_folder_v1_convai_agent_testing_folders__folder_id__patch' responses: '200': description: Folder successfully updated content: application/json: schema: $ref: '#/components/schemas/GetAgentTestFolderResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tests - folders x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Agent Test Folder description: Deletes an agent test folder by ID. Use force=true to delete a non-empty folder and all its contents. operationId: delete_agent_test_folder_route parameters: - name: folder_id in: path required: true schema: type: string description: The folder ID. examples: - tfld_7301khxdkycse5f88fzjdtrterzm title: Folder Id description: The folder ID. - name: force in: query required: false schema: type: boolean description: Force delete. Required for deleting non-empty folders. default: false title: Force description: Force delete. Required for deleting non-empty folders. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '204': description: Folder successfully deleted '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tests - folders x-fern-sdk-method-name: delete /v1/convai/agent-testing/bulk-move: post: tags: - Agents Platform summary: Bulk Move Tests To Folder description: Moves multiple tests or folders from one folder to another. operationId: agent_testing_bulk_move_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Bulk_move_tests_to_folder_v1_convai_agent_testing_bulk_move_post' responses: '200': description: Tests or folders successfully moved to another folder content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tests x-fern-sdk-method-name: move /v1/convai/conversations: get: tags: - Agents Platform summary: Get Conversations description: Get all conversations of agents that user owns. With option to restrict to a specific agent. operationId: get_conversation_histories_route parameters: - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: visited_agent_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 50 - type: 'null' description: Filter conversations where any of these agents participated. Can not exceed 50 values. title: Visited Agent Ids description: Filter conversations where any of these agents participated. Can not exceed 50 values. - name: visited_agent_branch_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 50 - type: 'null' description: Filter conversations where any of these agent branches participated. Can not exceed 50 values. title: Visited Agent Branch Ids description: Filter conversations where any of these agent branches participated. Can not exceed 50 values. - name: triggered_procedure_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 50 - type: 'null' description: Filter conversations where any of these procedures were triggered. Can not exceed 50 values. title: Triggered Procedure Ids description: Filter conversations where any of these procedures were triggered. Can not exceed 50 values. - name: call_successful in: query required: false schema: anyOf: - $ref: '#/components/schemas/EvaluationResultFilter' - type: 'null' description: The result of the success evaluation examples: - success title: Call Successful description: The result of the success evaluation - name: call_start_before_unix in: query required: false schema: anyOf: - type: integer - type: 'null' description: Unix timestamp (in seconds) to filter conversations up to this start date. title: Call Start Before Unix description: Unix timestamp (in seconds) to filter conversations up to this start date. - name: call_start_after_unix in: query required: false schema: anyOf: - type: integer - type: 'null' description: Unix timestamp (in seconds) to filter conversations after to this start date. title: Call Start After Unix description: Unix timestamp (in seconds) to filter conversations after to this start date. - name: call_duration_min_secs in: query required: false schema: anyOf: - type: integer - type: 'null' description: Minimum call duration in seconds. title: Call Duration Min Secs description: Minimum call duration in seconds. - name: call_duration_max_secs in: query required: false schema: anyOf: - type: integer - type: 'null' description: Maximum call duration in seconds. title: Call Duration Max Secs description: Maximum call duration in seconds. - name: rating_max in: query required: false schema: anyOf: - type: integer maximum: 5 minimum: 1 - type: 'null' description: Maximum overall rating (1-5). title: Rating Max description: Maximum overall rating (1-5). - name: rating_min in: query required: false schema: anyOf: - type: integer maximum: 5 minimum: 1 - type: 'null' description: Minimum overall rating (1-5). title: Rating Min description: Minimum overall rating (1-5). - name: has_feedback_comment in: query required: false schema: anyOf: - type: boolean - type: 'null' description: Filter conversations with user feedback comments. title: Has Feedback Comment description: Filter conversations with user feedback comments. - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by the user ID who initiated them. title: User Id description: Filter conversations by the user ID who initiated them. - name: evaluation_params in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: 'Evaluation filters. Repeat param. Format: criteria_id:result. Example: eval=value_framing:success' title: Evaluation Params description: 'Evaluation filters. Repeat param. Format: criteria_id:result. Example: eval=value_framing:success' - name: data_collection_params in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: 'Data collection filters. Repeat param. Format: id:op:value where op is one of eq|gt|gte|lt|lte. An empty value matches conversations where the field was not collected.' title: Data Collection Params description: 'Data collection filters. Repeat param. Format: id:op:value where op is one of eq|gt|gte|lt|lte. An empty value matches conversations where the field was not collected.' - name: dynamic_variable_params in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: 'Dynamic variable filters. Repeat param. Format: name:op:value where op is one of eq|gt|gte|lt|lte. Comparison operators require a numeric value. An empty value matches conversations where the variable was not set. Names containing '':'' cannot be expressed.' title: Dynamic Variable Params description: 'Dynamic variable filters. Repeat param. Format: name:op:value where op is one of eq|gt|gte|lt|lte. Comparison operators require a numeric value. An empty value matches conversations where the variable was not set. Names containing '':'' cannot be expressed.' - name: data_collection_ids in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Data collection field IDs to include in each conversation summary. Repeat param. When omitted, data_collection_results is not returned. title: Data Collection Ids description: Data collection field IDs to include in each conversation summary. Repeat param. When omitted, data_collection_results is not returned. - name: evaluation_criteria_ids in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Evaluation criteria IDs to include in each conversation summary. Repeat param. When omitted, evaluation_criteria_results is not returned. title: Evaluation Criteria Ids description: Evaluation criteria IDs to include in each conversation summary. Repeat param. When omitted, evaluation_criteria_results is not returned. - name: tool_names in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by tool names used during the call. title: Tool Names description: Filter conversations by tool names used during the call. - name: tool_names_successful in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by tool names that had successful calls. title: Tool Names Successful description: Filter conversations by tool names that had successful calls. - name: tool_names_errored in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by tool names that had errored calls. title: Tool Names Errored description: Filter conversations by tool names that had errored calls. - name: include_invalid_tool_calls in: query required: false schema: type: boolean description: Also match tool calls that never ran. default: false title: Include Invalid Tool Calls description: Also match tool calls that never ran. - name: main_languages in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by detected main language (language code). title: Main Languages description: Filter conversations by detected main language (language code). - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many conversations to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many conversations to return at maximum. Can not exceed 100, defaults to 30. - name: summary_mode in: query required: false schema: enum: - exclude - include type: string description: Whether to include transcript summaries in the response. default: exclude title: Summary Mode description: Whether to include transcript summaries in the response. - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: Full-text or fuzzy search over transcript messages deprecated: true title: Search description: Full-text or fuzzy search over transcript messages deprecated: true - name: conversation_initiation_source in: query required: false schema: anyOf: - $ref: '#/components/schemas/ConversationInitiationSource' - type: 'null' title: Conversation Initiation Source - name: text_only in: query required: false schema: anyOf: - type: boolean - type: 'null' title: Text Only - name: conversation_product_type in: query required: false schema: anyOf: - $ref: '#/components/schemas/ConversationProduct' - type: 'null' description: Restrict results to a single conversation product surface. title: Conversation Product Type description: Restrict results to a single conversation product surface. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by branch ID. title: Branch Id description: Filter conversations by branch ID. - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by version ID. title: Version Id description: Filter conversations by version ID. - name: parent_conversation_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by parent conversation ID for subagent conversations. title: Parent Conversation Id description: Filter conversations by parent conversation ID for subagent conversations. - name: topic_ids in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by topic IDs assigned during topic discovery. title: Topic Ids description: Filter conversations by topic IDs assigned during topic discovery. - name: exclude_statuses in: query required: false schema: anyOf: - type: array items: enum: - initiated - in-progress - processing - done - failed type: string - type: 'null' description: Exclude conversations with the given statuses. Useful for hiding in-progress / processing conversations from list views. title: Exclude Statuses description: Exclude conversations with the given statuses. Useful for hiding in-progress / processing conversations from list views. - name: tag_ids in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by conversation tag IDs assigned via the conversation-tags endpoints. title: Tag Ids description: Filter conversations by conversation tag IDs assigned via the conversation-tags endpoints. - name: workflow_node_entered_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations to only those that entered the given node. title: Workflow Node Entered Id description: Filter conversations to only those that entered the given node. - name: termination_reasons in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by their stored termination_reason (metadata.termination_reason). Repeat param to match any of several. title: Termination Reasons description: Filter conversations by their stored termination_reason (metadata.termination_reason). Repeat param to match any of several. - name: guardrail_types in: query required: false schema: anyOf: - type: array items: $ref: '#/components/schemas/GuardrailType' - type: 'null' description: Filter to conversations where a guardrail of any of these types triggered (metadata.triggered_guardrails.guardrail_type). Repeat param to match any of several. title: Guardrail Types description: Filter to conversations where a guardrail of any of these types triggered (metadata.triggered_guardrails.guardrail_type). Repeat param to match any of several. - name: custom_guardrail_names in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter to conversations where a custom guardrail with any of these names triggered (metadata.triggered_guardrails.guardrail_name). Only custom guardrails carry a name. Repeat param to match any of several. title: Custom Guardrail Names description: Filter to conversations where a custom guardrail with any of these names triggered (metadata.triggered_guardrails.guardrail_name). Only custom guardrails carry a name. Repeat param to match any of several. - name: sort_direction in: query required: false schema: $ref: '#/components/schemas/SortDirection' description: The direction to sort conversations by call start time. Defaults to descending (newest first). default: desc description: The direction to sort conversations by call start time. Defaults to descending (newest first). - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConversationsPageResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: list /v1/convai/users: get: tags: - Agents Platform summary: Get Conversation Users description: Get distinct users from conversations with pagination. operationId: get_conversation_users_route parameters: - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by branch ID. title: Branch Id description: Filter conversations by branch ID. - name: call_start_before_unix in: query required: false schema: anyOf: - type: integer - type: 'null' description: Unix timestamp (in seconds) to filter conversations up to this start date. title: Call Start Before Unix description: Unix timestamp (in seconds) to filter conversations up to this start date. - name: call_start_after_unix in: query required: false schema: anyOf: - type: integer - type: 'null' description: Unix timestamp (in seconds) to filter conversations after to this start date. title: Call Start After Unix description: Unix timestamp (in seconds) to filter conversations after to this start date. - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: Search/filter by user ID (exact match). title: Search description: Search/filter by user ID (exact match). - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many users to return at maximum. Defaults to 30. default: 30 title: Page Size description: How many users to return at maximum. Defaults to 30. - name: sort_by in: query required: false schema: $ref: '#/components/schemas/UsersSortBy' description: The field to sort the results by. Defaults to last_contact_unix_secs. default: last_contact_unix_secs description: The field to sort the results by. Defaults to last_contact_unix_secs. - name: sort_direction in: query required: false schema: $ref: '#/components/schemas/SortDirection' description: The direction to sort the results default: desc description: The direction to sort the results - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConversationUsersPageResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - users x-fern-sdk-method-name: list /v1/convai/conversations/resolve: get: tags: - Agents Platform summary: Resolve Conversation Reference description: Resolve a conversation URL (a Slack message URL or a Zendesk ticket URL) to the deterministic conversation ID for the given agent, then confirm the conversation exists. operationId: resolve_conversation_reference_route parameters: - name: agent_id in: query required: true schema: type: string description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: reference in: query required: true schema: type: string description: A Slack message URL or a Zendesk ticket URL. examples: - https://your-domain.zendesk.com/agent/tickets/12345 - https://your-team.slack.com/archives/C0123ABCD/p1700000000123456 title: Reference description: A Slack message URL or a Zendesk ticket URL. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConversationResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: resolve /v1/convai/conversations/{conversation_id}: get: tags: - Agents Platform summary: Get Conversation Details description: Get the details of a particular conversation operationId: get_conversation_history_route parameters: - name: conversation_id in: path required: true schema: type: string description: The id of the conversation you're taking the action on. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Conversation Id description: The id of the conversation you're taking the action on. - name: format in: query required: false schema: enum: - json - opentelemetry type: string description: Response format. Defaults to 'json'. Set to 'opentelemetry' for an OTLP-compatible trace payload using the same structure as the post-call webhook. default: json title: Format description: Response format. Defaults to 'json'. Set to 'opentelemetry' for an OTLP-compatible trace payload using the same structure as the post-call webhook. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConversationResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: get delete: tags: - Agents Platform summary: Delete Conversation description: Delete a particular conversation operationId: delete_conversation_route parameters: - name: conversation_id in: path required: true schema: type: string description: The id of the conversation you're taking the action on. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Conversation Id description: The id of the conversation you're taking the action on. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: delete /v1/convai/conversations/{conversation_id}/summary: get: tags: - Agents Platform summary: Get Conversation Summary description: 'Get a lightweight summary of a conversation: its title, the generated transcript summary, whether the call was successful, and — only when the conversation is short — the plain chat messages. Tool calls, tool results, and contextual updates are omitted so the response stays small. Use this instead of the full conversation endpoint when you only need the gist (e.g. an agent reading many conversations); use GET /v1/convai/conversations/{conversation_id} when you need the full transcript with tool calls and contextual updates.' operationId: get_conversation_summary_route parameters: - name: conversation_id in: path required: true schema: type: string description: The id of the conversation you're taking the action on. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Conversation Id description: The id of the conversation you're taking the action on. - name: max_messages in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Maximum number of chat message turns to include inline. When the conversation has more than this, the messages are omitted and messages_omitted is set. default: 40 title: Max Messages description: Maximum number of chat message turns to include inline. When the conversation has more than this, the messages are omitted and messages_omitted is set. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConversationSummaryResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: get_summary /v1/convai/conversations/{conversation_id}/sip-messages: get: tags: - Agents Platform summary: Get Sip Messages For A Conversation description: Get SIP messages associated with a conversation's phone call operationId: get_conversation_sip_messages parameters: - name: conversation_id in: path required: true schema: type: string description: The id of the conversation you're taking the action on. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Conversation Id description: The id of the conversation you're taking the action on. - name: page_size in: query required: false schema: type: integer maximum: 20 minimum: 1 default: 20 title: Page Size - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetSIPLogMessagesResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations x-fern-sdk-method-name: get_sip_messages /v1/convai/conversations/{conversation_id}/audio: get: tags: - Agents Platform summary: Get Conversation Audio description: Get the audio recording of a particular conversation operationId: get_conversation_audio_route parameters: - name: conversation_id in: path required: true schema: type: string description: The id of the conversation you're taking the action on. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Conversation Id description: The id of the conversation you're taking the action on. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: audio/mpeg: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - audio x-fern-sdk-method-name: get x-fern-streaming: true /v1/convai/conversations/{conversation_id}/feedback: post: tags: - Agents Platform summary: Send Conversation Feedback description: Send the feedback for the given conversation operationId: post_conversation_feedback_route parameters: - name: conversation_id in: path required: true schema: type: string description: The id of the conversation you're taking the action on. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Conversation Id description: The id of the conversation you're taking the action on. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ConversationFeedbackRequestModel' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - feedback x-fern-sdk-method-name: create /v1/convai/conversations/messages/text-search: get: tags: - Agents Platform summary: Text Search Conversation Messages description: Search through conversation transcript messages by full-text and fuzzy search operationId: text_search_conversation_messages_route parameters: - name: text_query in: query required: true schema: type: string description: The search query text for full-text and fuzzy matching title: Text Query description: The search query text for full-text and fuzzy matching examples: default: summary: Keyword-style query value: refund policy - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: visited_agent_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 50 - type: 'null' description: Filter conversations where any of these agents participated. Can not exceed 50 values. title: Visited Agent Ids description: Filter conversations where any of these agents participated. Can not exceed 50 values. - name: visited_agent_branch_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 50 - type: 'null' description: Filter conversations where any of these agent branches participated. Can not exceed 50 values. title: Visited Agent Branch Ids description: Filter conversations where any of these agent branches participated. Can not exceed 50 values. - name: triggered_procedure_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 50 - type: 'null' description: Filter conversations where any of these procedures were triggered. Can not exceed 50 values. title: Triggered Procedure Ids description: Filter conversations where any of these procedures were triggered. Can not exceed 50 values. - name: call_successful in: query required: false schema: anyOf: - $ref: '#/components/schemas/EvaluationResultFilter' - type: 'null' description: The result of the success evaluation examples: - success title: Call Successful description: The result of the success evaluation - name: call_start_before_unix in: query required: false schema: anyOf: - type: integer - type: 'null' description: Unix timestamp (in seconds) to filter conversations up to this start date. title: Call Start Before Unix description: Unix timestamp (in seconds) to filter conversations up to this start date. - name: call_start_after_unix in: query required: false schema: anyOf: - type: integer - type: 'null' description: Unix timestamp (in seconds) to filter conversations after to this start date. title: Call Start After Unix description: Unix timestamp (in seconds) to filter conversations after to this start date. - name: call_duration_min_secs in: query required: false schema: anyOf: - type: integer - type: 'null' description: Minimum call duration in seconds. title: Call Duration Min Secs description: Minimum call duration in seconds. - name: call_duration_max_secs in: query required: false schema: anyOf: - type: integer - type: 'null' description: Maximum call duration in seconds. title: Call Duration Max Secs description: Maximum call duration in seconds. - name: rating_max in: query required: false schema: anyOf: - type: integer maximum: 5 minimum: 1 - type: 'null' description: Maximum overall rating (1-5). title: Rating Max description: Maximum overall rating (1-5). - name: rating_min in: query required: false schema: anyOf: - type: integer maximum: 5 minimum: 1 - type: 'null' description: Minimum overall rating (1-5). title: Rating Min description: Minimum overall rating (1-5). - name: has_feedback_comment in: query required: false schema: anyOf: - type: boolean - type: 'null' description: Filter conversations with user feedback comments. title: Has Feedback Comment description: Filter conversations with user feedback comments. - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by the user ID who initiated them. title: User Id description: Filter conversations by the user ID who initiated them. - name: evaluation_params in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: 'Evaluation filters. Repeat param. Format: criteria_id:result. Example: eval=value_framing:success' title: Evaluation Params description: 'Evaluation filters. Repeat param. Format: criteria_id:result. Example: eval=value_framing:success' - name: data_collection_params in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: 'Data collection filters. Repeat param. Format: id:op:value where op is one of eq|gt|gte|lt|lte. An empty value matches conversations where the field was not collected.' title: Data Collection Params description: 'Data collection filters. Repeat param. Format: id:op:value where op is one of eq|gt|gte|lt|lte. An empty value matches conversations where the field was not collected.' - name: dynamic_variable_params in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: 'Dynamic variable filters. Repeat param. Format: name:op:value where op is one of eq|gt|gte|lt|lte. Comparison operators require a numeric value. An empty value matches conversations where the variable was not set. Names containing '':'' cannot be expressed.' title: Dynamic Variable Params description: 'Dynamic variable filters. Repeat param. Format: name:op:value where op is one of eq|gt|gte|lt|lte. Comparison operators require a numeric value. An empty value matches conversations where the variable was not set. Names containing '':'' cannot be expressed.' - name: tool_names in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by tool names used during the call. title: Tool Names description: Filter conversations by tool names used during the call. - name: tool_names_successful in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by tool names that had successful calls. title: Tool Names Successful description: Filter conversations by tool names that had successful calls. - name: tool_names_errored in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by tool names that had errored calls. title: Tool Names Errored description: Filter conversations by tool names that had errored calls. - name: include_invalid_tool_calls in: query required: false schema: type: boolean description: Also match tool calls that never ran. default: false title: Include Invalid Tool Calls description: Also match tool calls that never ran. - name: main_languages in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by detected main language (language code). title: Main Languages description: Filter conversations by detected main language (language code). - name: exclude_statuses in: query required: false schema: anyOf: - type: array items: enum: - initiated - in-progress - processing - done - failed type: string - type: 'null' description: Exclude conversations with the given statuses. Useful for hiding in-progress / processing conversations from list views. title: Exclude Statuses description: Exclude conversations with the given statuses. Useful for hiding in-progress / processing conversations from list views. - name: termination_reasons in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by their stored termination_reason (metadata.termination_reason). Repeat param to match any of several. title: Termination Reasons description: Filter conversations by their stored termination_reason (metadata.termination_reason). Repeat param to match any of several. - name: page_size in: query required: false schema: type: integer maximum: 50 minimum: 1 description: Number of results per page. Max 50. default: 20 title: Page Size description: Number of results per page. Max 50. - name: summary_mode in: query required: false schema: enum: - exclude - include type: string description: Whether to include transcript summaries in the response. default: exclude title: Summary Mode description: Whether to include transcript summaries in the response. - name: conversation_initiation_source in: query required: false schema: anyOf: - $ref: '#/components/schemas/ConversationInitiationSource' - type: 'null' title: Conversation Initiation Source - name: text_only in: query required: false schema: anyOf: - type: boolean - type: 'null' title: Text Only - name: conversation_product_type in: query required: false schema: anyOf: - $ref: '#/components/schemas/ConversationProduct' - type: 'null' description: Restrict results to a single conversation product surface. title: Conversation Product Type description: Restrict results to a single conversation product surface. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by branch ID. title: Branch Id description: Filter conversations by branch ID. - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter conversations by version ID. title: Version Id description: Filter conversations by version ID. - name: topic_ids in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Filter conversations by topic IDs assigned during topic discovery. title: Topic Ids description: Filter conversations by topic IDs assigned during topic discovery. - name: sort_by in: query required: false schema: $ref: '#/components/schemas/MessageSearchSortBy' description: Sort order for search results. 'search_score' sorts by search score, 'created_at' sorts by conversation start time. default: search_score description: Sort order for search results. 'search_score' sorts by search score, 'created_at' sorts by conversation start time. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MessagesSearchResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - messages x-fern-sdk-method-name: text_search /v1/convai/conversations/messages/smart-search: get: tags: - Agents Platform summary: Smart Search Conversation Messages description: Search conversation transcripts by semantic similarity to surface relevant messages based on meaning and intent, rather than exact keyword matches operationId: smart_search_conversation_messages_route parameters: - name: text_query in: query required: true schema: type: string description: The search query text for semantic similarity matching title: Text Query description: The search query text for semantic similarity matching examples: default: summary: Intent-style query value: Customer asking to cancel and get money back - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz - seng_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent id (agent_…) or speech engine external id (seng_), resolved to the same underlying resource. - name: page_size in: query required: false schema: type: integer maximum: 50 minimum: 1 description: Number of results per page. Max 50. default: 20 title: Page Size description: Number of results per page. Max 50. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MessagesSearchResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - messages x-fern-sdk-method-name: search /v1/convai/conversations/{conversation_id}/tags: post: tags: - Agents Platform summary: Assign Conversation Tags description: Assign one or more conversation tags to a conversation. Tags that are already assigned are ignored. Tags must belong to the same workspace. operationId: assign_conversation_tags_route parameters: - name: conversation_id in: path required: true schema: type: string title: Conversation Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AssignConversationTagsRequestModel' description: Tag ids to assign to the conversation. responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: assign /v1/convai/conversations/{conversation_id}/tags/{tag_id}: delete: tags: - Agents Platform summary: Unassign Conversation Tag description: Remove a single conversation tag from a conversation. operationId: unassign_conversation_tag_route parameters: - name: conversation_id in: path required: true schema: type: string title: Conversation Id - name: tag_id in: path required: true schema: type: string title: Tag Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: unassign /v1/convai/tags: get: tags: - Agents Platform summary: List Conversation Tags description: List conversation tags for the workspace, ordered by most recently created first. operationId: list_conversation_tags_route parameters: - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many conversation tags to return. Can not exceed 100. default: 100 title: Page Size description: How many conversation tags to return. Can not exceed 100. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConversationTagsPageResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: list post: tags: - Agents Platform summary: Create Conversation Tag description: Create a new conversation tag for the workspace. operationId: create_conversation_tag_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateConversationTagRequestModel' description: Conversation tag to create. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConversationTagResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: create /v1/convai/tags/{tag_id}: get: tags: - Agents Platform summary: Get Conversation Tag description: Get a conversation tag by ID. operationId: get_conversation_tag_route parameters: - name: tag_id in: path required: true schema: type: string title: Tag Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConversationTagResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Conversation Tag description: Update a conversation tag's title and/or description. Restricted to the tag owner or a workspace admin. operationId: update_conversation_tag_route parameters: - name: tag_id in: path required: true schema: type: string title: Tag Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchConversationTagRequestModel' description: Fields to update. Omit a field to leave it unchanged. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConversationTagResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Conversation Tag description: Delete a conversation tag. Restricted to the tag owner or a workspace admin. operationId: delete_conversation_tag_route parameters: - name: tag_id in: path required: true schema: type: string title: Tag Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - tags x-fern-sdk-method-name: delete /v1/convai/phone-numbers: post: tags: - Agents Platform summary: Import Phone Number description: Import Phone Number from provider configuration (Twilio, Exotel, or SIP trunk) operationId: create_phone_number_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: anyOf: - $ref: '#/components/schemas/CreateTwilioPhoneNumberRequest' - $ref: '#/components/schemas/CreateExotelPhoneNumberRequest' - $ref: '#/components/schemas/CreateSIPTrunkPhoneNumberRequestV2' description: Create Phone Request Information title: Phone Request responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreatePhoneNumberResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - phone_numbers x-fern-sdk-method-name: create get: tags: - Agents Platform summary: List Phone Numbers description: Retrieve all Phone Numbers operationId: list_phone_numbers_route parameters: - name: provider in: query required: false schema: anyOf: - $ref: '#/components/schemas/TelephonyProvider' - type: 'null' description: Filter by telephony provider title: Provider description: Filter by telephony provider - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by assigned agent ID title: Agent Id description: Filter by assigned agent ID - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by assigned branch ID title: Branch Id description: Filter by assigned branch ID - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: type: array items: oneOf: - $ref: '#/components/schemas/GetPhoneNumberTwilioResponseModel' - $ref: '#/components/schemas/GetPhoneNumberExotelResponseModel' - $ref: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' discriminator: propertyName: provider mapping: twilio: '#/components/schemas/GetPhoneNumberTwilioResponseModel' exotel: '#/components/schemas/GetPhoneNumberExotelResponseModel' sip_trunk: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' title: Response List Phone Numbers V1 Convai Phone Numbers Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - phone_numbers x-fern-sdk-method-name: list /v1/convai/phone-numbers/{phone_number_id}: get: tags: - Agents Platform summary: Get Phone Number description: Retrieve Phone Number details by ID operationId: get_phone_number_route parameters: - name: phone_number_id in: path required: true schema: type: string description: The phone number ID. This is returned when a phone number is imported. examples: - TeaqRRdTcIfIu2i7BYfT embed: true title: Phone Number Id description: The phone number ID. This is returned when a phone number is imported. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/GetPhoneNumberTwilioResponseModel' - $ref: '#/components/schemas/GetPhoneNumberExotelResponseModel' - $ref: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' discriminator: propertyName: provider mapping: twilio: '#/components/schemas/GetPhoneNumberTwilioResponseModel' exotel: '#/components/schemas/GetPhoneNumberExotelResponseModel' sip_trunk: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' title: Response Get Phone Number V1 Convai Phone Numbers Phone Number Id Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - phone_numbers x-fern-sdk-method-name: get delete: tags: - Agents Platform summary: Delete Phone Number description: Delete Phone Number by ID operationId: delete_phone_number_route parameters: - name: phone_number_id in: path required: true schema: type: string description: The phone number ID. This is returned when a phone number is imported. examples: - TeaqRRdTcIfIu2i7BYfT embed: true title: Phone Number Id description: The phone number ID. This is returned when a phone number is imported. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - phone_numbers x-fern-sdk-method-name: delete patch: tags: - Agents Platform summary: Update Phone Number description: Update assigned agent of a phone number operationId: update_phone_number_route parameters: - name: phone_number_id in: path required: true schema: type: string description: The phone number ID. This is returned when a phone number is imported. examples: - TeaqRRdTcIfIu2i7BYfT embed: true title: Phone Number Id description: The phone number ID. This is returned when a phone number is imported. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePhoneNumberRequest' description: Patch Phone Request Information responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/GetPhoneNumberTwilioResponseModel' - $ref: '#/components/schemas/GetPhoneNumberExotelResponseModel' - $ref: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' discriminator: propertyName: provider mapping: twilio: '#/components/schemas/GetPhoneNumberTwilioResponseModel' exotel: '#/components/schemas/GetPhoneNumberExotelResponseModel' sip_trunk: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' title: Response Update Phone Number V1 Convai Phone Numbers Phone Number Id Patch '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - phone_numbers x-fern-sdk-method-name: update /v1/convai/phone-numbers/{phone_number_id}/sip-messages: get: tags: - Agents Platform summary: Get Sip Messages For A Phone Number description: Get SIP messages for a phone number operationId: list_sip_messages parameters: - name: phone_number_id in: path required: true schema: type: string description: The phone number ID. This is returned when a phone number is imported. examples: - TeaqRRdTcIfIu2i7BYfT embed: true title: Phone Number Id description: The phone number ID. This is returned when a phone number is imported. - name: page_size in: query required: false schema: type: integer maximum: 20 minimum: 1 default: 20 title: Page Size - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetSIPLogMessagesResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - phone_numbers x-fern-sdk-method-name: get_sip_messages /v1/convai/llm-usage/calculate: post: tags: - Agents Platform summary: Calculate Expected Llm Usage description: Returns a list of LLM models and the expected cost for using them based on the provided values. operationId: get_public_llm_expected_cost_calculation requestBody: content: application/json: schema: $ref: '#/components/schemas/LLMUsageCalculatorPublicRequestModel' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LLMUsageCalculatorResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - llm_usage x-fern-sdk-method-name: calculate /v1/convai/llm/list: get: tags: - Agents Platform summary: List Available Llms description: Returns a list of available LLM models that can be used with agents, including their capabilities and any deprecation status. The response is filtered based on the data residency of the deployment and any compliance requirements (e.g. HIPAA) of the workspace subscription. operationId: list_available_llms parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/LLMListResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - llm x-fern-sdk-method-name: list /v1/convai/conversations/{conversation_id}/files: post: tags: - Agents Platform summary: Upload File description: Upload an image or PDF file for a conversation. Returns a unique file ID that can be used to reference the file in the conversation. operationId: upload_file_route parameters: - name: conversation_id in: path required: true schema: type: string title: Conversation Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_Upload_file_v1_convai_conversations__conversation_id__files_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConvAIFileUploadResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - files x-fern-sdk-method-name: create /v1/convai/conversations/{conversation_id}/files/{file_id}: delete: tags: - Agents Platform summary: Delete File Upload description: Remove a file upload from a conversation. Only possible if the file hasn't already been used in the conversation. operationId: cancel_file_upload_route parameters: - name: file_id in: path required: true schema: type: string title: File Id - name: conversation_id in: path required: true schema: type: string title: Conversation Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConvAIFileUploadResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - files x-fern-sdk-method-name: delete /v1/convai/analytics/live-count: get: tags: - Agents Platform summary: Get Live Count description: Get the live count of the ongoing conversations. operationId: get_live_count parameters: - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The id of an agent to restrict the analytics to. examples: - 21m00Tcm4TlvDq8ikWAM title: Agent Id description: The id of an agent to restrict the analytics to. - name: agent_ids in: query required: false schema: anyOf: - type: array items: type: string maxItems: 25 - type: 'null' description: Restrict analytics to the union of the given agents. Takes precedence over `agent_id` when both are supplied. examples: - - 21m00Tcm4TlvDq8ikWAM title: Agent Ids description: Restrict analytics to the union of the given agents. Takes precedence over `agent_id` when both are supplied. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetLiveCountResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - analytics - live_count x-fern-sdk-method-name: get /v1/convai/knowledge-base/summaries: get: tags: - Agents Platform summary: Get Knowledge Base Summaries By Ids description: Gets multiple knowledge base document summaries by their IDs. operationId: get_agent_knowledge_base_summaries_route parameters: - name: document_ids in: query required: true schema: type: array items: type: string minItems: 1 maxItems: 100 description: The ids of knowledge base documents. examples: - - 21m00Tcm4TlvDq8ikWAM - 31n11Udm5UmwEr9jkXBN title: Document Ids description: The ids of knowledge base documents. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: type: object additionalProperties: oneOf: - $ref: '#/components/schemas/KnowledgeBaseSummaryBatchSuccessfulResponseModel' - $ref: '#/components/schemas/BatchFailureResponseModel' discriminator: propertyName: status mapping: success: '#/components/schemas/KnowledgeBaseSummaryBatchSuccessfulResponseModel' failure: '#/components/schemas/BatchFailureResponseModel' title: Response Get Knowledge Base Summaries By Ids V1 Convai Knowledge Base Summaries Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents - summaries x-fern-sdk-method-name: get /v1/convai/knowledge-base: post: tags: - Agents Platform summary: Add To Knowledge Base description: Uploads a file or reference a webpage to use as part of the shared knowledge base operationId: add_documentation_to_knowledge_base deprecated: true parameters: - name: agent_id in: query required: false schema: type: string default: '' title: Agent Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/Body_Add_to_knowledge_base_v1_convai_knowledge_base_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AddKnowledgeBaseResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: conversational_ai x-fern-sdk-method-name: add_to_knowledge_base get: tags: - Agents Platform summary: Get Knowledge Base List description: Get a list of available knowledge base documents operationId: get_knowledge_base_list_route parameters: - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: If specified, the endpoint returns only such knowledge base documents whose names start with this string. title: Search description: If specified, the endpoint returns only such knowledge base documents whose names start with this string. - name: show_only_owned_documents in: query required: false schema: type: boolean description: 'If set to true, the endpoint will return only documents owned by you (and not shared from somebody else). Deprecated: use created_by_user_id instead.' deprecated: true default: false title: Show Only Owned Documents description: 'If set to true, the endpoint will return only documents owned by you (and not shared from somebody else). Deprecated: use created_by_user_id instead.' deprecated: true - name: created_by_user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter documents by creator user ID. When set, only documents created by this user are returned. Takes precedence over show_only_owned_documents. Use '@me' to refer to the authenticated user. title: Created By User Id description: Filter documents by creator user ID. When set, only documents created by this user are returned. Takes precedence over show_only_owned_documents. Use '@me' to refer to the authenticated user. - name: types in: query required: false schema: anyOf: - type: array items: $ref: '#/components/schemas/KnowledgeBaseDocumentType' - type: 'null' description: If present, the endpoint will return only documents of the given types. title: Types description: If present, the endpoint will return only documents of the given types. - name: parent_folder_id in: query required: false schema: anyOf: - type: string - type: 'null' description: If set, the endpoint will return only documents that are direct children of the given folder. title: Parent Folder Id description: If set, the endpoint will return only documents that are direct children of the given folder. - name: ancestor_folder_id in: query required: false schema: anyOf: - type: string - type: 'null' description: If set, the endpoint will return only documents that are descendants of the given folder. title: Ancestor Folder Id description: If set, the endpoint will return only documents that are descendants of the given folder. - name: folders_first in: query required: false schema: type: boolean description: Whether folders should be returned first in the list of documents. default: false title: Folders First description: Whether folders should be returned first in the list of documents. - name: sort_direction in: query required: false schema: $ref: '#/components/schemas/SortDirection' description: The direction to sort the results default: desc description: The direction to sort the results - name: sort_by in: query required: false schema: anyOf: - $ref: '#/components/schemas/KnowledgeBaseSortBy' - type: 'null' description: The field to sort the results by title: Sort By description: The field to sort the results by - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetKnowledgeBaseListResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base x-fern-sdk-method-name: list /v1/convai/knowledge-base/url: post: tags: - Agents Platform summary: Create Url Document description: Create a knowledge base document generated by scraping the given webpage. operationId: create_url_document_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_URL_document_v1_convai_knowledge_base_url_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AddKnowledgeBaseResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: create_from_url /v1/convai/knowledge-base/file: post: tags: - Agents Platform summary: Create File Document description: Create a knowledge base document generated form the uploaded file. operationId: create_file_document_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_Create_file_document_v1_convai_knowledge_base_file_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AddKnowledgeBaseResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: create_from_file /v1/convai/knowledge-base/text: post: tags: - Agents Platform summary: Create Text Document description: Create a knowledge base document containing the provided text. operationId: create_text_document_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_text_document_v1_convai_knowledge_base_text_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AddKnowledgeBaseResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: create_from_text /v1/convai/knowledge-base/{documentation_id}: patch: tags: - Agents Platform summary: Update Document description: Update the name and/or content of a document. operationId: update_document_route parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: application/json: schema: $ref: '#/components/schemas/Body_Update_document_v1_convai_knowledge_base__documentation_id__patch' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' discriminator: propertyName: type mapping: url: '#/components/schemas/GetKnowledgeBaseURLResponseModel' file: '#/components/schemas/GetKnowledgeBaseFileResponseModel' text: '#/components/schemas/GetKnowledgeBaseTextResponseModel' folder: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' title: Response Update Document V1 Convai Knowledge Base Documentation Id Patch '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: update get: tags: - Agents Platform summary: Get Documentation From Knowledge Base description: Get details about a specific documentation making up the agent's knowledge base operationId: get_documentation_from_knowledge_base parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: agent_id in: query required: false schema: type: string default: '' title: Agent Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' discriminator: propertyName: type mapping: url: '#/components/schemas/GetKnowledgeBaseURLResponseModel' file: '#/components/schemas/GetKnowledgeBaseFileResponseModel' text: '#/components/schemas/GetKnowledgeBaseTextResponseModel' folder: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' title: Response Get Documentation From Knowledge Base V1 Convai Knowledge Base Documentation Id Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: get delete: tags: - Agents Platform summary: Delete Knowledge Base Document Or Folder description: Delete a document or folder from the knowledge base. operationId: delete_knowledge_base_document parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: force in: query required: false schema: type: boolean description: If set to true, the document or folder will be deleted regardless of whether it is used by any agents and it will be removed from the dependent agents. For non-empty folders, this will also delete all child documents and folders. default: false title: Force description: If set to true, the document or folder will be deleted regardless of whether it is used by any agents and it will be removed from the dependent agents. For non-empty folders, this will also delete all child documents and folders. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: delete /v1/convai/knowledge-base/{documentation_id}/update-file: patch: tags: - Agents Platform summary: Update File Document description: Update the source file of a file document. The document name, content, and metadata are updated to reflect the new file. Any manual content edits will be overwritten. operationId: update_file_document_route parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_Update_file_document_v1_convai_knowledge_base__documentation_id__update_file_patch' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' discriminator: propertyName: type mapping: url: '#/components/schemas/GetKnowledgeBaseURLResponseModel' file: '#/components/schemas/GetKnowledgeBaseFileResponseModel' text: '#/components/schemas/GetKnowledgeBaseTextResponseModel' folder: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' title: Response Update File Document V1 Convai Knowledge Base Documentation Id Update File Patch '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - document x-fern-sdk-method-name: update_file /v1/convai/knowledge-base/rag-index: post: tags: - Agents Platform summary: Compute Rag Indexes In Batch description: Retrieves and/or creates RAG indexes for multiple knowledge base documents in a single request. Maximum 100 items per request. operationId: get_or_create_rag_indexes parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Compute_RAG_indexes_in_batch_v1_convai_knowledge_base_rag_index_post' responses: '200': description: Successful Response content: application/json: schema: type: object additionalProperties: oneOf: - $ref: '#/components/schemas/RAGIndexBatchSuccessfulResponseModel' - $ref: '#/components/schemas/BatchFailureResponseModel' discriminator: propertyName: status mapping: success: '#/components/schemas/RAGIndexBatchSuccessfulResponseModel' failure: '#/components/schemas/BatchFailureResponseModel' title: Response Compute Rag Indexes In Batch V1 Convai Knowledge Base Rag Index Post '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base x-fern-sdk-method-name: get_or_create_rag_indexes get: tags: - Agents Platform summary: Get Rag Index Overview description: Provides total size and other information of RAG indexes used by knowledgebase documents operationId: get_rag_index_overview parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RAGIndexOverviewResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: conversational_ai x-fern-sdk-method-name: rag_index_overview /v1/convai/knowledge-base/{documentation_id}/refresh: post: tags: - Agents Platform summary: Refresh Url Document Content description: Manually refresh a URL document by re-fetching its content from the source URL. operationId: refresh_url_document_route parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' discriminator: propertyName: type mapping: url: '#/components/schemas/GetKnowledgeBaseURLResponseModel' file: '#/components/schemas/GetKnowledgeBaseFileResponseModel' text: '#/components/schemas/GetKnowledgeBaseTextResponseModel' folder: '#/components/schemas/GetKnowledgeBaseFolderResponseModel' title: Response Refresh Url Document Content V1 Convai Knowledge Base Documentation Id Refresh Post '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - document x-fern-sdk-method-name: refresh /v1/convai/knowledge-base/{documentation_id}/rag-index: post: tags: - Agents Platform summary: Compute Rag Index description: In case the document is not RAG indexed, it triggers rag indexing task, otherwise it just returns the current status. operationId: rag_index_status parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RAGIndexRequestModel' description: Payload for RAG index status endpoint. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RAGDocumentIndexResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - document x-fern-sdk-method-name: compute_rag_index get: tags: - Agents Platform summary: Get Rag Indexes Of The Specified Knowledgebase Document description: Provides information about all RAG indexes of the specified knowledgebase document. operationId: get_rag_indexes parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RAGDocumentIndexesResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: conversational_ai x-fern-sdk-method-name: get_document_rag_indexes /v1/convai/knowledge-base/{documentation_id}/rag-index/{rag_index_id}: delete: tags: - Agents Platform summary: Delete Rag Index description: Delete RAG index for the knowledgebase document. operationId: delete_rag_index parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: rag_index_id in: path required: true schema: type: string description: The id of RAG index of document from the knowledge base. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Rag Index Id description: The id of RAG index of document from the knowledge base. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RAGDocumentIndexResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: conversational_ai x-fern-sdk-method-name: delete_document_rag_index /v1/convai/knowledge-base/search: get: tags: - Agents Platform summary: Search Knowledge Base Content description: Fuzzy text search over knowledge base document content operationId: search_knowledge_base_content_route parameters: - name: query in: query required: true schema: type: string description: The search query text title: Query description: The search query text - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: types in: query required: false schema: anyOf: - type: array items: $ref: '#/components/schemas/KnowledgeBaseDocumentType' - type: 'null' description: If present, the endpoint will return only documents of the given types. title: Types description: If present, the endpoint will return only documents of the given types. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/KnowledgeBaseContentSearchResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base x-fern-sdk-method-name: search /v1/convai/agents/{agent_id}/knowledge-base/rag-query: post: tags: - Agents Platform summary: Query Agent Knowledge Base Rag description: 'Run the agent''s exact RAG retrieval for an ad-hoc query and return the ranked chunks the agent would retrieve. Read-only: no conversation is created. The response reflects current retrieval internals and may evolve.' operationId: query_agent_knowledge_base_rag_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the branch to use examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: The ID of the branch to use - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AgentKnowledgeBaseRagQueryRequestModel' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AgentKnowledgeBaseRagQueryResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-ignore: true /v1/convai/knowledge-base/{documentation_id}/dependent-agents: get: tags: - Agents Platform summary: Get Dependent Agents List description: Get a list of agents depending on this knowledge base document operationId: get_knowledge_base_dependent_agents parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: dependent_type in: query required: false schema: $ref: '#/components/schemas/KnowledgeBaseDependentType' description: Type of dependent agents to return. default: all description: Type of dependent agents to return. - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetKnowledgeBaseDependentAgentsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: get_agents /v1/convai/knowledge-base/dependent-agents: post: tags: - Agents Platform summary: Get Dependent Agents For Multiple Documents description: Get a list of agents depending on any of the given knowledge base documents. operationId: get_knowledge_base_bulk_dependent_agents_route parameters: - name: dependent_type in: query required: false schema: $ref: '#/components/schemas/KnowledgeBaseDependentType' description: Type of dependent agents to return. default: all description: Type of dependent agents to return. - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Get_dependent_agents_for_multiple_documents_v1_convai_knowledge_base_dependent_agents_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetKnowledgeBaseDependentAgentsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: get_bulk_agents /v1/convai/knowledge-base/{documentation_id}/content: get: tags: - Agents Platform summary: Get Document Content description: Get the entire content of a document from the knowledge base operationId: get_knowledge_base_content parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Streaming document content content: text/html: schema: type: string '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: get_content x-fern-sdk-streaming: true /v1/convai/knowledge-base/{documentation_id}/source-file-url: get: tags: - Agents Platform summary: Get Document Source File Url description: Get a signed URL to download the original source file of a file-type document from the knowledge base operationId: get_knowledge_base_source_file_url parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/KnowledgeBaseSourceFileUrlResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: get_source_file_url /v1/convai/knowledge-base/{documentation_id}/chunk/{chunk_id}: get: tags: - Agents Platform summary: Get Documentation Chunk From Knowledge Base description: Get details about a specific documentation part used by RAG. operationId: get_documentation_chunk_from_knowledge_base parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: chunk_id in: path required: true schema: type: string description: The id of a document RAG chunk from the knowledge base. examples: - 1 embed: true title: Chunk Id description: The id of a document RAG chunk from the knowledge base. - name: embedding_model in: query required: false schema: anyOf: - $ref: '#/components/schemas/EmbeddingModelEnum' - type: 'null' description: The embedding model used to retrieve the chunk. examples: - e5_mistral_7b_instruct - multilingual_e5_large_instruct title: Embedding Model description: The embedding model used to retrieve the chunk. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/KnowledgeBaseDocumentChunkResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents - chunk x-fern-sdk-method-name: get /v1/convai/knowledge-base/{documentation_id}/chunks: get: tags: - Agents Platform summary: Get All Rag Chunks For A Document description: Get all RAG chunks for a specific knowledge base document. operationId: get_documentation_chunks_from_knowledge_base parameters: - name: documentation_id in: path required: true schema: type: string description: The id of a document from the knowledge base. This is returned on document addition. examples: - 21m00Tcm4TlvDq8ikWAM embed: true title: Documentation Id description: The id of a document from the knowledge base. This is returned on document addition. - name: embedding_model in: query required: true schema: $ref: '#/components/schemas/EmbeddingModelEnum' description: The embedding model used to retrieve the chunk. examples: - e5_mistral_7b_instruct - multilingual_e5_large_instruct description: The embedding model used to retrieve the chunk. - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/KnowledgeBaseDocumentChunksResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents - chunks x-fern-sdk-method-name: list /v1/convai/knowledge-base/bulk-delete: post: tags: - Agents Platform summary: Bulk Delete Knowledge Base Documents description: Delete multiple documents or folders from the knowledge base. Each id succeeds or fails independently. operationId: post_knowledge_base_bulk_delete_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Bulk_delete_knowledge_base_documents_v1_convai_knowledge_base_bulk_delete_post' responses: '200': description: Successful Response content: application/json: schema: type: object additionalProperties: oneOf: - $ref: '#/components/schemas/KnowledgeBaseBulkDeleteSuccessfulResponseModel' - $ref: '#/components/schemas/BatchFailureResponseModel' discriminator: propertyName: status mapping: success: '#/components/schemas/KnowledgeBaseBulkDeleteSuccessfulResponseModel' failure: '#/components/schemas/BatchFailureResponseModel' title: Response Bulk Delete Knowledge Base Documents V1 Convai Knowledge Base Bulk Delete Post '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - knowledge_base - documents x-fern-sdk-method-name: bulk_delete /v1/convai/agents/{agent_id}/topics: get: tags: - Agents Platform summary: Get Agent Conversation Topics description: Returns the latest topic discovery run results for a given agent. operationId: get_agent_topics_route parameters: - name: agent_id in: path required: true schema: type: string description: ID of the agent title: Agent Id description: ID of the agent - name: page_size in: query required: false schema: anyOf: - type: integer maximum: 100 minimum: 1 - type: 'null' description: Number of top-level topic groups to return. title: Page Size description: Number of top-level topic groups to return. - name: sort_by in: query required: false schema: $ref: '#/components/schemas/TopicSortBy' description: Column to rank topics by. Use conversations for volume, sentiment with sort_direction=asc for the most negative topics, and frustration with sort_direction=desc for the most frustrated ones. Topics with no score are always ranked last. default: conversations description: Column to rank topics by. Use conversations for volume, sentiment with sort_direction=asc for the most negative topics, and frustration with sort_direction=desc for the most frustrated ones. Topics with no score are always ranked last. - name: sort_direction in: query required: false schema: $ref: '#/components/schemas/SortDirection' description: Direction to sort topics. default: desc description: Direction to sort topics. - name: from_unix_secs in: query required: false schema: anyOf: - type: integer - type: 'null' description: Start of the window to view topics for. When set with to_unix_secs, the completed daily topic-discovery runs in the range are aggregated together, so the window scopes the metrics as well as the topic set. Floored to the start of its UTC day because runs cover whole UTC days; aggregated_run_count reports how many runs were summed. Omit both bounds to get the single latest run. title: From Unix Secs description: Start of the window to view topics for. When set with to_unix_secs, the completed daily topic-discovery runs in the range are aggregated together, so the window scopes the metrics as well as the topic set. Floored to the start of its UTC day because runs cover whole UTC days; aggregated_run_count reports how many runs were summed. Omit both bounds to get the single latest run. - name: to_unix_secs in: query required: false schema: anyOf: - type: integer - type: 'null' description: End of the window to view topics for. title: To Unix Secs description: End of the window to view topics for. - name: include_evaluation_criteria in: query required: false schema: type: boolean description: 'Include the per-criteria evaluation breakdown on each topic''s metrics. Pass false to drop it: it dominates the payload and the weighted success_rate is returned either way.' default: true title: Include Evaluation Criteria description: 'Include the per-criteria evaluation breakdown on each topic''s metrics. Pass false to drop it: it dominates the payload and the weighted success_rate is returned either way.' - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetAgentTopicsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - conversations - topics x-fern-sdk-method-name: get /v1/convai/tools: post: tags: - Agents Platform summary: Add Tool description: Add a new tool to the available tools in the workspace. operationId: add_tool_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ToolRequestModel' description: A tool that an agent can provide to LLM. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ToolResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools x-fern-sdk-method-name: create get: tags: - Agents Platform summary: Get Tools description: Get all available tools in the workspace. operationId: get_tools_route parameters: - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: If specified, the endpoint returns only tools whose names start with this string. title: Search description: If specified, the endpoint returns only tools whose names start with this string. - name: page_size in: query required: false schema: anyOf: - type: integer maximum: 100 minimum: 1 - type: 'null' description: How many documents to return at maximum. Can not exceed 100, defaults to 30. title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: show_only_owned_documents in: query required: false schema: type: boolean description: 'If set to true, the endpoint will return only tools owned by you (and not shared from somebody else). Deprecated: use created_by_user_id instead.' deprecated: true default: false title: Show Only Owned Documents description: 'If set to true, the endpoint will return only tools owned by you (and not shared from somebody else). Deprecated: use created_by_user_id instead.' deprecated: true - name: created_by_user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter tools by creator user ID. When set, only tools created by this user are returned. Takes precedence over show_only_owned_documents. Use '@me' to refer to the authenticated user. title: Created By User Id description: Filter tools by creator user ID. When set, only tools created by this user are returned. Takes precedence over show_only_owned_documents. Use '@me' to refer to the authenticated user. - name: types in: query required: false schema: anyOf: - type: array items: $ref: '#/components/schemas/ToolTypeFilter' - type: 'null' description: If present, the endpoint will return only tools of the given types. title: Types description: If present, the endpoint will return only tools of the given types. - name: sort_direction in: query required: false schema: $ref: '#/components/schemas/SortDirection' description: The direction to sort the results default: desc description: The direction to sort the results - name: sort_by in: query required: false schema: anyOf: - $ref: '#/components/schemas/ToolSortBy' - type: 'null' description: The field to sort the results by title: Sort By description: The field to sort the results by - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ToolsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools x-fern-sdk-method-name: list /v1/convai/tools/{tool_id}: get: tags: - Agents Platform summary: Get Tool description: Get tool that is available in the workspace. operationId: get_tool_route parameters: - name: tool_id in: path required: true schema: type: string description: ID of the requested tool. title: Tool Id description: ID of the requested tool. - name: environment in: query required: false schema: type: string description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. default: production title: Environment description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ToolResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Tool description: Update tool that is available in the workspace. operationId: update_tool_route parameters: - name: tool_id in: path required: true schema: type: string description: ID of the requested tool. title: Tool Id description: ID of the requested tool. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ToolRequestModel' description: A tool that an agent can provide to LLM. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ToolResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Tool description: Delete tool from the workspace. operationId: delete_tool_route parameters: - name: tool_id in: path required: true schema: type: string description: ID of the requested tool. title: Tool Id description: ID of the requested tool. - name: force in: query required: false schema: type: boolean description: If set to true, the tool will be deleted regardless of whether it is used by any agents and it will be removed from the dependent agents and branches. default: false title: Force description: If set to true, the tool will be deleted regardless of whether it is used by any agents and it will be removed from the dependent agents and branches. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools x-fern-sdk-method-name: delete /v1/convai/tools/{tool_id}/dependent-agents: get: tags: - Agents Platform summary: Get Dependent Agents List description: Get a list of agents depending on this tool operationId: get_tool_dependent_agents_route parameters: - name: tool_id in: path required: true schema: type: string description: ID of the requested tool. title: Tool Id description: ID of the requested tool. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetToolDependentAgentsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools x-fern-sdk-method-name: get_dependent_agents /v1/convai/tools/{tool_id}/executions: get: tags: - Agents Platform summary: Get Tool Executions description: Get paginated list of tool executions for a specific tool. operationId: get_tool_executions_route parameters: - name: tool_id in: path required: true schema: type: string description: ID of the requested tool. title: Tool Id description: ID of the requested tool. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many documents to return at maximum. Can not exceed 100, defaults to 30. default: 30 title: Page Size description: How many documents to return at maximum. Can not exceed 100, defaults to 30. - name: is_error in: query required: false schema: anyOf: - type: boolean - type: 'null' description: Filter by error status. If not provided, returns all executions. title: Is Error description: Filter by error status. If not provided, returns all executions. - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by agent ID. title: Agent Id description: Filter by agent ID. - name: branch_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by agent branch ID. title: Branch Id description: Filter by agent branch ID. - name: start_time in: query required: false schema: anyOf: - type: number - type: 'null' description: Filter executions from this Unix timestamp (inclusive). title: Start Time description: Filter executions from this Unix timestamp (inclusive). - name: end_time in: query required: false schema: anyOf: - type: number - type: 'null' description: Filter executions until this Unix timestamp (inclusive). title: End Time description: Filter executions until this Unix timestamp (inclusive). - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetToolExecutionsPageResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - tools - executions x-fern-sdk-method-name: get /v1/convai/settings: get: tags: - Agents Platform summary: Get Convai Settings description: Retrieve Convai settings for the workspace operationId: get_settings_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConvAISettingsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - settings x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Convai Settings description: Update Convai settings for the workspace operationId: update_settings_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchConvAISettingsRequest' description: Convai settings to update responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConvAISettingsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - settings x-fern-sdk-method-name: update /v1/convai/settings/dashboard: get: tags: - Agents Platform summary: Get Convai Dashboard Settings description: Retrieve Convai dashboard settings for the workspace operationId: get_dashboard_settings_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConvAIDashboardSettingsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - dashboard - settings x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Convai Dashboard Settings description: Update Convai dashboard settings for the workspace operationId: update_dashboard_settings_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchConvAIDashboardSettingsRequest' description: Convai dashboard settings to update responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetConvAIDashboardSettingsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - dashboard - settings x-fern-sdk-method-name: update /v1/convai/secrets: post: tags: - Agents Platform summary: Create Convai Workspace Secret description: Create a new secret for the workspace operationId: create_secret_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostWorkspaceSecretRequest' description: Secret to create responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PostWorkspaceSecretResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - secrets x-fern-sdk-method-name: create get: tags: - Agents Platform summary: Get Convai Workspace Secrets description: Get all workspace secrets for the user operationId: get_secrets_route parameters: - name: page_size in: query required: false schema: anyOf: - type: integer maximum: 100 minimum: 1 - type: 'null' description: How many documents to return at maximum. Can not exceed 100. If not provided, returns all secrets. title: Page Size description: How many documents to return at maximum. Can not exceed 100. If not provided, returns all secrets. - name: dependency_limit in: query required: false schema: anyOf: - type: integer maximum: 100 minimum: 1 - type: 'null' description: Maximum number of dependent resources (tools, agents, phone numbers) to return per secret. Can not exceed 100. title: Dependency Limit description: Maximum number of dependent resources (tools, agents, phone numbers) to return per secret. Can not exceed 100. - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: If specified, returns only secrets whose names start with this string. title: Search description: If specified, returns only secrets whose names start with this string. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetWorkspaceSecretsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - secrets x-fern-sdk-method-name: list /v1/convai/secrets/{secret_id}: get: tags: - Agents Platform summary: Get Convai Workspace Secret description: Get a workspace secret by ID operationId: get_secret_route parameters: - name: secret_id in: path required: true schema: type: string title: Secret Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ConvAIWorkspaceStoredSecretConfig' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - secrets x-fern-sdk-method-name: get delete: tags: - Agents Platform summary: Delete Convai Workspace Secret description: Delete a workspace secret if it's not in use operationId: delete_secret_route parameters: - name: secret_id in: path required: true schema: type: string title: Secret Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - secrets x-fern-sdk-method-name: delete patch: tags: - Agents Platform summary: Update Convai Workspace Secret description: Update an existing secret for the workspace operationId: update_secret_route parameters: - name: secret_id in: path required: true schema: type: string title: Secret Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchWorkspaceSecretRequest' description: Secret data to update responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PostWorkspaceSecretResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - secrets x-fern-sdk-method-name: update /v1/convai/secrets/{secret_id}/dependencies/{resource_type}: get: tags: - Agents Platform summary: Get Secret Dependencies By Type description: Get paginated list of resources that depend on a specific secret, filtered by resource type. operationId: get_secret_dependencies_route parameters: - name: secret_id in: path required: true schema: type: string title: Secret Id - name: resource_type in: path required: true schema: $ref: '#/components/schemas/SecretDependencyResourceType' - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: How many dependency items to return per page. default: 20 title: Page Size description: How many dependency items to return per page. - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Used for fetching next page. Cursor is returned in the response. title: Cursor description: Used for fetching next page. Cursor is returned in the response. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetSecretDependenciesResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - secrets x-fern-sdk-method-name: get_dependencies /v1/convai/batch-calling/submit: post: tags: - Agents Platform summary: Submit A Batch Call Request description: Submit a batch call request to schedule calls for multiple recipients. operationId: create_batch_call parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Submit_a_batch_call_request__v1_convai_batch_calling_submit_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/BatchCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: create /v1/convai/batch-calling/workspace: get: tags: - Agents Platform summary: Get All Batch Calls For A Workspace description: Get all batch calls for the current workspace. operationId: get_workspace_batch_calls parameters: - name: limit in: query required: false schema: type: integer default: 100 title: Limit - name: last_doc in: query required: false schema: anyOf: - type: string - type: 'null' title: Last Doc - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter batch calls to a single agent. title: Agent Id description: Filter batch calls to a single agent. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/WorkspaceBatchCallsResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: list /v1/convai/batch-calling/{batch_id}: get: tags: - Agents Platform summary: Get A Batch Call By Id description: Get detailed information about a batch call including all recipients. operationId: get_batch_call parameters: - name: batch_id in: path required: true schema: type: string title: Batch Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/BatchCallDetailedResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: get delete: tags: - Agents Platform summary: Delete A Batch Call description: Permanently delete a batch call and all recipient records. Conversations remain in history. operationId: delete_batch_call parameters: - name: batch_id in: path required: true schema: type: string title: Batch Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: delete /v1/convai/batch-calling/{batch_id}/cancel: post: tags: - Agents Platform summary: Cancel A Batch Call description: Cancel a running batch call and set all recipients to cancelled status. operationId: cancel_batch_call parameters: - name: batch_id in: path required: true schema: type: string title: Batch Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/BatchCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: cancel /v1/convai/batch-calling/{batch_id}/retry: post: tags: - Agents Platform summary: Retry A Batch Call description: Retry a batch call, calling failed and no-response recipients again. operationId: retry_batch_call parameters: - name: batch_id in: path required: true schema: type: string title: Batch Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/BatchCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: retry /v1/convai/batch-calling/{batch_id}/export: get: tags: - Agents Platform summary: Export Batch Call Results description: Download all recipients and conversation results for a terminal batch call as CSV. operationId: export_batch_call parameters: - name: batch_id in: path required: true schema: type: string title: Batch Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Batch call results CSV. content: text/csv: schema: type: string format: binary '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - batch_calls x-fern-sdk-method-name: export /v1/convai/sip-trunk/outbound-call: post: tags: - Agents Platform summary: Handle An Outbound Call Via Sip Trunk description: Handle an outbound call via SIP trunk operationId: handle_sip_trunk_outbound_call parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Handle_an_outbound_call_via_SIP_trunk_v1_convai_sip_trunk_outbound_call_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SIPTrunkOutboundCallResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - sip_trunk x-fern-sdk-method-name: outbound_call /v1/convai/mcp-servers: post: tags: - Agents Platform summary: Create Mcp Server description: Create a new MCP server configuration in the workspace. operationId: create_mcp_server_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MCPServerRequestModel' description: Configuration for an MCP Server. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers x-fern-sdk-method-name: create get: tags: - Agents Platform summary: List Mcp Servers description: Retrieve all MCP server configurations available in the workspace. operationId: list_mcp_servers_route parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServersResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers x-fern-sdk-method-name: list /v1/convai/mcp-servers/{mcp_server_id}: get: tags: - Agents Platform summary: Get Mcp Server description: Retrieve a specific MCP server configuration from the workspace. operationId: get_mcp_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers x-fern-sdk-method-name: get delete: tags: - Agents Platform summary: Delete Mcp Server description: Delete a specific MCP server configuration from the workspace. operationId: delete_mcp_server_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers x-fern-sdk-method-name: delete patch: tags: - Agents Platform summary: Update Mcp Server Configuration description: Update the configuration settings for an MCP server. operationId: update_mcp_server_config_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MCPServerConfigUpdateRequestModel' description: Configuration updates for an MCP Server. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers x-fern-sdk-method-name: update /v1/convai/mcp-servers/{mcp_server_id}/tools: get: tags: - Agents Platform summary: List Mcp Server Tools description: Retrieve all tools available for a specific MCP server configuration. operationId: list_mcp_server_tools_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: environment in: query required: false schema: type: string description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. default: production title: Environment description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ListMCPToolsResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tools x-fern-sdk-method-name: list /v1/convai/mcp-servers/{mcp_server_id}/approval-policy: patch: tags: - Agents Platform summary: Update Mcp Server Approval Policy description: 'Update the approval policy configuration for an MCP server. DEPRECATED: Use PATCH /mcp-servers/{id} endpoint instead.' operationId: update_mcp_server_approval_policy_route deprecated: true parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MCPApprovalPolicyUpdateRequestModel' description: Approval policy update for an MCP Server. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - approval_policy x-fern-sdk-method-name: update /v1/convai/mcp-servers/{mcp_server_id}/tool-approvals: post: tags: - Agents Platform summary: Create Mcp Server Tool Approval description: Add approval for a specific MCP tool when using per-tool approval mode. operationId: add_mcp_server_tool_approval_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MCPToolAddApprovalRequestModel' description: Tool approval details to add for an MCP Server. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tool_approvals x-fern-sdk-method-name: create /v1/convai/mcp-servers/{mcp_server_id}/tool-approvals/{tool_name}: delete: tags: - Agents Platform summary: Delete Mcp Server Tool Approval description: Remove approval for a specific MCP tool when using per-tool approval mode. operationId: remove_mcp_server_tool_approval_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: tool_name in: path required: true schema: type: string description: Name of the MCP tool to remove approval for. title: Tool Name description: Name of the MCP tool to remove approval for. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tool_approvals x-fern-sdk-method-name: delete /v1/convai/mcp-servers/{mcp_server_id}/tool-configs: post: tags: - Agents Platform summary: Create Mcp Tool Configuration Override description: Create configuration overrides for a specific MCP tool. operationId: add_mcp_tool_config_override_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: environment in: query required: false schema: type: string description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. default: production title: Environment description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MCPToolConfigOverrideCreateRequestModel' description: Tool configuration override details to create. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '409': description: Tool config override already exists '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tool_configs x-fern-sdk-method-name: create /v1/convai/mcp-servers/{mcp_server_id}/tool-configs/{tool_name}: get: tags: - Agents Platform summary: Get Mcp Tool Configuration Override description: Retrieve configuration overrides for a specific MCP tool. operationId: get_mcp_tool_config_override_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: tool_name in: path required: true schema: type: string description: Name of the MCP tool to retrieve config overrides for. title: Tool Name description: Name of the MCP tool to retrieve config overrides for. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPToolConfigOverride-Output' '404': description: Tool config override not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tool_configs x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Mcp Tool Configuration Override description: Update configuration overrides for a specific MCP tool. operationId: update_mcp_tool_config_override_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: tool_name in: path required: true schema: type: string description: Name of the MCP tool to update config overrides for. title: Tool Name description: Name of the MCP tool to update config overrides for. - name: environment in: query required: false schema: type: string description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. default: production title: Environment description: Environment whose values are used when the MCP server URL, headers, or auth connection reference environment variables. Mirrors the environment a conversation would run in; defaults to production. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MCPToolConfigOverrideUpdateRequestModel' description: Tool configuration override details to update. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '404': description: Tool config override not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tool_configs x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Mcp Tool Configuration Override description: Remove configuration overrides for a specific MCP tool. operationId: remove_mcp_tool_config_override_route parameters: - name: mcp_server_id in: path required: true schema: type: string description: ID of the MCP Server. title: Mcp Server Id description: ID of the MCP Server. - name: tool_name in: path required: true schema: type: string description: Name of the MCP tool to remove config overrides for. title: Tool Name description: Name of the MCP tool to remove config overrides for. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MCPServerResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - mcp_servers - tool_configs x-fern-sdk-method-name: delete /v1/convai/whatsapp-accounts/{phone_number_id}: get: tags: - Agents Platform summary: Get Whatsapp Account description: Get a WhatsApp account operationId: get_whatsapp_account parameters: - name: phone_number_id in: path required: true schema: type: string title: Phone Number Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GetWhatsAppAccountResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - whatsapp_accounts x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Whatsapp Account description: Update a WhatsApp account operationId: update_whatsapp_account parameters: - name: phone_number_id in: path required: true schema: type: string title: Phone Number Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateWhatsAppAccountRequest' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - whatsapp_accounts x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Whatsapp Account description: Delete a WhatsApp account operationId: delete_whatsapp_account parameters: - name: phone_number_id in: path required: true schema: type: string title: Phone Number Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - whatsapp_accounts x-fern-sdk-method-name: delete /v1/convai/whatsapp-accounts: get: tags: - Agents Platform summary: List Whatsapp Accounts description: List all WhatsApp accounts operationId: list_whatsapp_accounts parameters: - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by assigned agent ID title: Agent Id description: Filter by assigned agent ID - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ListWhatsAppAccountsResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - whatsapp_accounts x-fern-sdk-method-name: list /v1/convai/agents/{agent_id}/branches: post: tags: - Agents Platform summary: Create A New Branch description: Create a new branch from a given version of any branch operationId: create_branch_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_a_new_branch_v1_convai_agents__agent_id__branches_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateAgentBranchResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: create get: tags: - Agents Platform summary: List Agent Branches description: Returns a list of branches an agent has operationId: get_branches_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: include_archived in: query required: false schema: type: boolean description: Whether archived branches should be included default: false title: Include Archived description: Whether archived branches should be included - name: limit in: query required: false schema: type: integer maximum: 100 exclusiveMinimum: 1 description: How many results at most should be returned default: 100 title: Limit description: How many results at most should be returned - name: include_commit_status in: query required: false schema: type: boolean description: Whether to compute how far each branch has diverged from main (commits_ahead/commits_behind). This walks the version DAG of every branch, so it is slow on agents with long histories and is off by default, leaving those fields null. default: false title: Include Commit Status description: Whether to compute how far each branch has diverged from main (commits_ahead/commits_behind). This walks the version DAG of every branch, so it is slow on agents with long histories and is off by default, leaving those fields null. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ListResponse_AgentBranchSummary_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: list /v1/convai/agents/{agent_id}/branches/{branch_id}: get: tags: - Agents Platform summary: Get Agent Branch description: Get information about a single agent branch operationId: get_branch_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: path required: true schema: type: string description: Unique identifier for the branch. examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Unique identifier for the branch. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AgentBranchResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Agent Branch description: Update agent branch properties such as archiving status and protection level operationId: update_branch_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: path required: true schema: type: string description: Unique identifier for the branch. examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Unique identifier for the branch. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: application/json: schema: $ref: '#/components/schemas/Body_Update_agent_branch_v1_convai_agents__agent_id__branches__branch_id__patch' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AgentBranchResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: update /v1/convai/agents/{agent_id}/versions/{version_id}: get: tags: - Agents Platform summary: Get Agent Version Metadata description: Get metadata for a specific agent version operationId: get_version_metadata_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: version_id in: path required: true schema: type: string description: Unique identifier for the version. examples: - agtvrsn_0901k4aafjxxfxt93gd841r7tv5t title: Version Id description: Unique identifier for the version. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AgentVersionMetadata' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - versions x-fern-sdk-method-name: get /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview: get: tags: - Agents Platform summary: Preview Merged Configuration description: Returns the result of merging the source branch into the target branch without performing the merge. Useful for showing an accurate diff before confirming. operationId: merge_preview_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: source_branch_id in: path required: true schema: type: string description: Unique identifier for the source branch to merge from. examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Source Branch Id description: Unique identifier for the source branch to merge from. - name: target_branch_id in: query required: true schema: type: string description: The ID of the target branch to merge into. examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Target Branch Id description: The ID of the target branch to merge into. - name: force in: query required: false schema: type: boolean description: When true, source branch changes always win conflicts regardless of timestamps default: false title: Force description: When true, source branch changes always win conflicts regardless of timestamps - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MergePreviewResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: preview_merge /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge: post: tags: - Agents Platform summary: Merge A Branch Into A Target Branch description: Merge a branch into a target branch operationId: merge_branch_into_target parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: source_branch_id in: path required: true schema: type: string description: Unique identifier for the source branch to merge from. examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Source Branch Id description: Unique identifier for the source branch to merge from. - name: target_branch_id in: query required: true schema: type: string description: The ID of the target branch to merge into. examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Target Branch Id description: The ID of the target branch to merge into. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: application/json: schema: $ref: '#/components/schemas/Body_Merge_a_branch_into_a_target_branch_v1_convai_agents__agent_id__branches__source_branch_id__merge_post' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: merge /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview: get: tags: - Agents Platform summary: Preview Rebased Configuration description: Returns the result of rebasing the branch onto main without performing the rebase. Useful for showing an accurate diff before confirming. operationId: rebase_preview_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: path required: true schema: type: string description: Unique identifier for the source branch to merge from. examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Branch Id description: Unique identifier for the source branch to merge from. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MergePreviewResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: preview_rebase /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase: post: tags: - Agents Platform summary: Rebase A Branch Onto Main description: Rebase a branch onto the latest main branch, incorporating main's changes while preserving the branch's own changes. operationId: rebase_branch_onto_main parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: path required: true schema: type: string description: Unique identifier for the source branch to merge from. examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Branch Id description: Unique identifier for the source branch to merge from. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - branches x-fern-sdk-method-name: rebase /v1/convai/agents/{agent_id}/deployments: post: tags: - Agents Platform summary: Create Or Update Deployments description: Create a new deployment for an agent operationId: create_agent_deployment_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_or_update_deployments_v1_convai_agents__agent_id__deployments_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AgentDeploymentResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - deployments x-fern-sdk-method-name: create /v1/convai/agents/{agent_id}/drafts: post: tags: - Agents Platform summary: Create Agent Draft description: Create a new draft for an agent operationId: create_agent_draft_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: query required: true schema: type: string description: The ID of the agent branch to use examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Branch Id description: The ID of the agent branch to use - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_Create_agent_draft_v1_convai_agents__agent_id__drafts_post' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - drafts x-fern-sdk-method-name: create delete: tags: - Agents Platform summary: Delete Agent Draft description: Delete a draft for an agent operationId: delete_agent_draft_route parameters: - name: agent_id in: path required: true schema: type: string description: The id of an agent. This is returned on agent creation. examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz embed: true title: Agent Id description: The id of an agent. This is returned on agent creation. - name: branch_id in: query required: true schema: type: string description: The ID of the agent branch to use examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj embed: true title: Branch Id description: The ID of the agent branch to use - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - drafts x-fern-sdk-method-name: delete /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures: post: tags: - Agents Platform summary: Create Procedure description: Create a new procedure for the agent on a branch. operationId: create_procedure_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: content: application/json: schema: anyOf: - $ref: '#/components/schemas/CreateProcedureRequestModel' - type: 'null' title: Request responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateProcedureResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures x-fern-sdk-method-name: create get: tags: - Agents Platform summary: List Procedures description: List the procedures attached to this agent branch. By default, unpublished drafts take precedence over the latest committed version. Pass agent_version_id to list a published snapshot instead. has_draft is true when a procedure has unpublished draft changes on this branch. Procedure content is not included; use Get Procedure to read a procedure's body. operationId: list_procedures_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: agent_version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The agent version ID to retrieve the procedure for. examples: - agtvrsn_8901k4t9z5defmb8vh3e9361y7nj title: Agent Version Id description: The agent version ID to retrieve the procedure for. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ListProceduresResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures x-fern-sdk-method-name: list /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/compile: post: tags: - Agents Platform summary: Compile Procedures description: Compile procedure drafts into a workflow. operationId: compile_procedures_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CompileProceduresResponseModel' '400': description: Structured procedure validation failed. content: application/json: schema: $ref: '#/components/schemas/CompileProceduresValidationErrorResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures x-fern-sdk-method-name: compile /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}: delete: tags: - Agents Platform summary: Remove Procedure description: Remove a procedure from the agent's draft working set. Removing a folder cascades to its entire subtree, rejected if any procedure outside the subtree hands off into it. operationId: remove_procedure_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: procedure_id in: path required: true schema: type: string description: The procedure ID examples: - agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 title: Procedure Id description: The procedure ID - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures x-fern-sdk-method-name: remove get: tags: - Agents Platform summary: Get Procedure description: Retrieve a procedure at a specific version or the current branch HEAD. operationId: get_procedure_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: procedure_id in: path required: true schema: type: string description: The procedure ID examples: - agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 title: Procedure Id description: The procedure ID - name: version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The version ID to retrieve. If omitted, returns the version at branch HEAD. examples: - agtprcv_7rbqxer9o12cyxi55ckw6sgz1dl4 title: Version Id description: The version ID to retrieve. If omitted, returns the version at branch HEAD. - name: agent_version_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The agent version ID to retrieve the procedure for. examples: - agtvrsn_8901k4t9z5defmb8vh3e9361y7nj title: Agent Version Id description: The agent version ID to retrieve the procedure for. - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ProcedureAtVersionResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures x-fern-sdk-method-name: get /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft: get: tags: - Agents Platform summary: Get Procedure Draft description: Get user's draft for a procedure operationId: get_procedure_draft_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: procedure_id in: path required: true schema: type: string description: The procedure ID examples: - agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 title: Procedure Id description: The procedure ID - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ProcedureDraftResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures - drafts x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Procedure Draft description: Create or update user's draft for a procedure operationId: update_procedure_draft_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: procedure_id in: path required: true schema: type: string description: The procedure ID examples: - agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 title: Procedure Id description: The procedure ID - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateProcedureDraftRequestModel' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ProcedureDraftResponseModel' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures - drafts x-fern-sdk-method-name: update delete: tags: - Agents Platform summary: Delete Procedure Draft description: Delete user's draft for a procedure, resetting to the committed version operationId: delete_procedure_draft_route parameters: - name: agent_id in: path required: true schema: type: string description: Agent ID to get the procedure draft from examples: - agent_3701k3ttaq12ewp8b7qv5rfyszkz title: Agent Id description: Agent ID to get the procedure draft from - name: branch_id in: path required: true schema: type: string description: Branch ID to get the procedure draft from examples: - agtbranch_0901k4aafjxxfxt93gd841r7tv5t title: Branch Id description: Branch ID to get the procedure draft from - name: procedure_id in: path required: true schema: type: string description: The procedure ID examples: - agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 title: Procedure Id description: The procedure ID - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: - conversational_ai - agents - procedures - drafts x-fern-sdk-method-name: delete /v1/convai/environment-variables: get: tags: - Agents Platform summary: List Environment Variables description: List all environment variables for the workspace with optional filtering operationId: list_environment_variables parameters: - name: cursor in: query required: false schema: anyOf: - type: string - type: 'null' description: Pagination cursor from previous response title: Cursor description: Pagination cursor from previous response - name: page_size in: query required: false schema: type: integer maximum: 100 minimum: 1 description: Number of items to return (1-100) default: 100 title: Page Size description: Number of items to return (1-100) - name: label in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by exact label match title: Label description: Filter by exact label match - name: environment in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter to only return variables that have this environment. When specified, the values dict in the response will only contain this environment. title: Environment description: Filter to only return variables that have this environment. When specified, the values dict in the response will only contain this environment. - name: type in: query required: false schema: anyOf: - enum: - string - secret - auth_connection type: string - type: 'null' description: Filter by variable type title: Type description: Filter by variable type - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/EnvironmentVariablesListResponse' '400': description: Invalid environment filter '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: environment_variables x-fern-sdk-method-name: list post: tags: - Agents Platform summary: Create Environment Variable description: Create a new environment variable for the workspace operationId: create_environment_variable parameters: - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/CreateStringEnvironmentVariableRequest' - $ref: '#/components/schemas/CreateSecretEnvironmentVariableRequest' - $ref: '#/components/schemas/CreateAuthConnectionEnvironmentVariableRequest' discriminator: propertyName: type mapping: string: '#/components/schemas/CreateStringEnvironmentVariableRequest' secret: '#/components/schemas/CreateSecretEnvironmentVariableRequest' auth_connection: '#/components/schemas/CreateAuthConnectionEnvironmentVariableRequest' title: Request responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/EnvironmentVariableResponse' '400': description: Invalid parameters '409': description: Environment variable with this label already exists '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: environment_variables x-fern-sdk-method-name: create /v1/convai/environment-variables/{env_var_id}: get: tags: - Agents Platform summary: Get Environment Variable description: Get a specific environment variable by ID operationId: get_environment_variable parameters: - name: env_var_id in: path required: true schema: type: string title: Env Var Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/EnvironmentVariableResponse' '404': description: Environment variable not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: environment_variables x-fern-sdk-method-name: get patch: tags: - Agents Platform summary: Update Environment Variable description: Replace an environment variable's values. Use null to remove an environment (except production). operationId: update_environment_variable parameters: - name: env_var_id in: path required: true schema: type: string title: Env Var Id - name: xi-api-key in: header required: false schema: anyOf: - type: string - type: 'null' description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. title: Xi-Api-Key description: Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentVariableRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/EnvironmentVariableResponse' '400': description: Invalid parameters or type mismatch '404': description: Environment variable not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-fern-sdk-group-name: environment_variables x-fern-sdk-method-name: update components: schemas: RAGDocumentIndexesResponseModel: properties: indexes: items: $ref: '#/components/schemas/RAGDocumentIndexResponseModel' type: array title: Indexes type: object required: - indexes title: RAGDocumentIndexesResponseModel ListProductsParams: properties: list_kwargs: additionalProperties: true type: object title: List Kwargs smb_tool_type: type: string const: list_products title: Smb Tool Type default: list_products type: object title: ListProductsParams AlertingSettingsResponse: properties: monitor_configs: additionalProperties: $ref: '#/components/schemas/AlertingMonitorConfig' type: object title: Monitor Configs auto_resolve_after_inactive_minutes: anyOf: - type: integer - type: 'null' title: Auto Resolve After Inactive Minutes notifiers: items: oneOf: - $ref: '#/components/schemas/AlertingWebhookNotifierResponse' - $ref: '#/components/schemas/AlertingIntegrationNotifierResponse' discriminator: propertyName: type mapping: integration: '#/components/schemas/AlertingIntegrationNotifierResponse' webhook: '#/components/schemas/AlertingWebhookNotifierResponse' type: array title: Notifiers type: object title: AlertingSettingsResponse description: 'Customer-facing view of alerting settings. Unlike AdminAlertingSettingsResponse, it has no internal_notifiers field: those are ElevenLabs-internal delivery channels whose URLs must never be returned outside the admin API.' KnowledgeBaseRagToolStatus: type: string enum: - success - no_documents - no_results title: KnowledgeBaseRagToolStatus default: success LLMUsageCalculatorResponseModel: properties: llm_prices: items: $ref: '#/components/schemas/LLMUsageCalculatorLLMResponseModel' type: array title: Llm Prices type: object required: - llm_prices title: LLMUsageCalculatorResponseModel TTSOptimizeStreamingLatency: type: integer enum: - 0 - 1 - 2 - 3 - 4 title: TTSOptimizeStreamingLatency CreateAuthConnectionEnvironmentVariableRequest: properties: type: type: string const: auth_connection title: Type label: type: string title: Label description: Unique label for the environment variable. values: additionalProperties: $ref: '#/components/schemas/EnvironmentVariableAuthConnectionValueRequest' type: object title: Values description: Environment-specific auth connection references. Must include 'production' key. type: object required: - type - label - values title: CreateAuthConnectionEnvironmentVariableRequest AgentKnowledgeBaseRagChunkResponseModel: properties: document_id: type: string title: Document Id description: ID of the source knowledge base document. document_name: type: string title: Document Name description: Name of the source knowledge base document. source_url: anyOf: - type: string - type: 'null' title: Source Url description: Tracked source URL for URL documents, or null for other document types. chunk_id: type: string title: Chunk Id description: ID of the retrieved chunk. text: type: string title: Text description: Text content of the retrieved chunk. vector_distance: anyOf: - type: number - type: 'null' title: Vector Distance description: Similarity distance when exposed by the retrieval strategy. content_format: $ref: '#/components/schemas/ContentFormat' description: Format of the chunk text. Markdown chunks contain raw markdown; HTML chunks contain HTML. document_type: $ref: '#/components/schemas/KnowledgeBaseDocumentType' description: Type of the source knowledge base document. type: object required: - document_id - document_name - source_url - chunk_id - text - vector_distance - content_format - document_type title: AgentKnowledgeBaseRagChunkResponseModel AlertingPagerDutyNotifierResponse: properties: type: type: string const: integration title: Type default: integration integration_type: type: string const: pagerduty title: Integration Type default: pagerduty connection_id: type: string title: Connection Id type: object required: - connection_id title: AlertingPagerDutyNotifierResponse ConversationConfigOverrideConfig: properties: text_only: type: boolean title: Text Only description: Whether to allow overriding the text_only field. default: false max_duration_seconds: type: boolean title: Max Duration Seconds description: Whether to allow overriding the max_duration_seconds field. default: false type: object title: ConversationConfigOverrideConfig ToolErrorHandlingMode: type: string enum: - auto - summarized - passthrough - hide title: ToolErrorHandlingMode description: Controls how tool errors are processed before being shared with the agent. default: auto ASTLessThanOrEqualsOperatorNode-Input: properties: type: type: string const: lte_operator title: Type default: lte_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTLessThanOrEqualsOperatorNode FeaturesUsageCommonModel: properties: language_detection: $ref: '#/components/schemas/FeatureStatusCommonModel' transfer_to_agent: $ref: '#/components/schemas/FeatureStatusCommonModel' transfer_to_number: $ref: '#/components/schemas/FeatureStatusCommonModel' multivoice: $ref: '#/components/schemas/FeatureStatusCommonModel' dtmf_tones: $ref: '#/components/schemas/FeatureStatusCommonModel' external_mcp_servers: $ref: '#/components/schemas/FeatureStatusCommonModel' pii_zrm_workspace: type: boolean title: Pii Zrm Workspace default: false pii_zrm_agent: type: boolean title: Pii Zrm Agent default: false tool_dynamic_variable_updates: $ref: '#/components/schemas/FeatureStatusCommonModel' is_livekit: type: boolean title: Is Livekit default: false voicemail_detection: $ref: '#/components/schemas/FeatureStatusCommonModel' dtmf_input: $ref: '#/components/schemas/FeatureStatusCommonModel' workflow: $ref: '#/components/schemas/WorkflowFeaturesUsageCommonModel' agent_testing: $ref: '#/components/schemas/TestsFeatureUsageCommonModel' versioning: $ref: '#/components/schemas/FeatureStatusCommonModel' file_input: $ref: '#/components/schemas/FeatureStatusCommonModel' freeform_procedure: $ref: '#/components/schemas/FeatureStatusCommonModel' structured_procedure: $ref: '#/components/schemas/FeatureStatusCommonModel' type: object title: FeaturesUsageCommonModel TTSConversationalConfigWorkflowOverride-Output: properties: model_id: anyOf: - $ref: '#/components/schemas/TTSConversationalModel' - type: 'null' description: The model to use for TTS x-convai-client-override: true voice_id: anyOf: - type: string - type: 'null' title: Voice Id description: The voice ID to use for TTS x-convai-client-override: true x-convai-language-override: true supported_voices: anyOf: - items: $ref: '#/components/schemas/SupportedVoice' type: array - type: 'null' title: Supported Voices description: Additional supported voices for the agent x-convai-client-override: true x-convai-soft-override-disallowed: true expressive_mode: anyOf: - type: boolean - type: 'null' title: Expressive Mode description: When enabled, applies expressive audio tags prompt. Automatically disabled for non-v3 models. suggested_audio_tags: anyOf: - items: $ref: '#/components/schemas/SuggestedAudioTag' type: array - type: 'null' title: Suggested Audio Tags description: Suggested audio tags to boost expressive speech (for eleven_v3 and eleven_v3_conversational models). The agent can still use other tags not listed here. agent_output_audio_format: anyOf: - $ref: '#/components/schemas/TTSOutputFormat' - type: 'null' description: The audio format to use for TTS optimize_streaming_latency: anyOf: - $ref: '#/components/schemas/TTSOptimizeStreamingLatency' - type: 'null' description: 'Deprecated: this field is a no-op and is ignored.' stability: anyOf: - type: number - type: 'null' title: Stability description: The stability of generated speech x-convai-client-override: true speed: anyOf: - type: number - type: 'null' title: Speed description: The speed of generated speech x-convai-client-override: true similarity_boost: anyOf: - type: number - type: 'null' title: Similarity Boost description: The similarity boost for generated speech x-convai-client-override: true text_normalisation_type: anyOf: - $ref: '#/components/schemas/TextNormalisationType' - type: 'null' description: Method for converting numbers to words before converting text to speech. If set to SYSTEM_PROMPT, the system prompt will be updated to include normalization instructions. If set to ELEVENLABS, the text will be normalized after generation, incurring slight additional latency. pronunciation_dictionary_locators: anyOf: - items: $ref: '#/components/schemas/PydanticPronunciationDictionaryVersionLocator' type: array - type: 'null' title: Pronunciation Dictionary Locators description: The pronunciation dictionary locators x-convai-client-override: true enable_phoneme_tags: anyOf: - type: boolean - type: 'null' title: Enable Phoneme Tags description: Opt-in to SSML phoneme tag handling for V3 models. When enabled, phoneme tags (inline and from pronunciation dictionaries) are parsed into inline IPA before being sent to the model. audio_effects: anyOf: - $ref: '#/components/schemas/EffectsSpec-Output' - type: 'null' description: 'Optional TTS effects spec: filter preset, distance (proximity EQ), and environment (convolution reverb).' type: object title: TTSConversationalConfigWorkflowOverride example: agent_output_audio_format: pcm_16000 model_id: eleven_turbo_v2 optimize_streaming_latency: 3 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal WorkflowOverrideAgentNodeModel-Input: properties: type: type: string const: override_agent title: Type default: override_agent position: $ref: '#/components/schemas/Position-Input' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. conversation_config: $ref: '#/components/schemas/ConversationalConfigAPIModelWorkflowOverride-Input' description: Configuration overrides applied while the subagent is conducting the conversation. additional_prompt: type: string title: Additional Prompt description: Specific goal for this subagent. It will be added to the system prompt and can be used to further refine the agent's behavior in this specific context. additional_knowledge_base: items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array title: Additional Knowledge Base description: Additional knowledge base documents that the subagent has access to. These will be used in addition to the main agent's documents. additional_tool_ids: items: type: string type: array title: Additional Tool Ids description: IDs of additional tools that the subagent has access to. These will be used in addition to the main agent's tools. label: type: string title: Label description: Human-readable label for the node used throughout the UI. entry_behavior: $ref: '#/components/schemas/EntryBehavior' description: 'Dictates whether this node should immediately generate a response upon entry or wait for the user input. When set to "auto", the behavior will be decided based on the type of the preceding node: "wait_for_user" after the "say" and "start" nodes and "generate_immediately" otherwise.' default: auto type: object required: - label title: WorkflowOverrideAgentNodeModel GetToolExecutionsPageResponseModel: properties: executions: items: $ref: '#/components/schemas/ToolExecutionResponseModel' type: array title: Executions next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - executions - has_more title: GetToolExecutionsPageResponseModel ASTLessThanOperatorNode-Input: properties: type: type: string const: lt_operator title: Type default: lt_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTLessThanOperatorNode Body_Get_dependent_agents_for_multiple_documents_v1_convai_knowledge_base_dependent_agents_post: properties: document_ids: items: type: string type: array maxItems: 20 minItems: 1 uniqueItems: true title: Document Ids description: The ids of documents or folders from the knowledge base. examples: - - 21m00Tcm4TlvDq8ikWAM - 31m00Tcm4TlvDq8ikWBM type: object required: - document_ids title: Body_Get_dependent_agents_for_multiple_documents_v1_convai_knowledge_base_dependent_agents_post GetConversationsPageResponseModel: properties: conversations: items: $ref: '#/components/schemas/ConversationSummaryResponseModel' type: array title: Conversations next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - conversations - has_more title: GetConversationsPageResponseModel EffectsSpec-Output: properties: filter_preset_id: anyOf: - type: string - type: 'null' title: Filter Preset Id distance: type: number maximum: 1.0 minimum: 0.0 title: Distance default: 0.0 environment_id: anyOf: - type: string - type: 'null' title: Environment Id background_noise_id: anyOf: - type: string - type: 'null' title: Background Noise Id send_level: type: number maximum: 1.0 minimum: 0.0 title: Send Level default: 1.0 seed: anyOf: - type: integer - type: 'null' title: Seed type: object required: - filter_preset_id - distance - environment_id - background_noise_id - send_level - seed title: EffectsSpec description: Filter preset, distance (proximity EQ), and environment (convolution reverb). ASTLLMNode-Output: properties: type: type: string const: llm title: Type default: llm value_schema: $ref: '#/components/schemas/LLMLiteralJsonSchemaProperty' description: JSON schema describing the value that the LLM should extract. examples: - description: User's last message contains a question about our pricing. type: boolean - description: User provided their email address. type: boolean prompt: type: string description: The prompt to evaluate to a boolean value. Deprecated. Use a boolean schema instead. deprecated: true type: object required: - type - value_schema - prompt title: ASTLLMNode ConversationHistoryTranscriptResponseModel: properties: role: type: string enum: - user - agent title: Role agent_metadata: anyOf: - $ref: '#/components/schemas/AgentMetadata' - type: 'null' message: anyOf: - type: string - type: 'null' title: Message multivoice_message: anyOf: - $ref: '#/components/schemas/ConversationHistoryMultivoiceMessageModel' - type: 'null' tool_calls: items: $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallCommonModel-Output' type: array title: Tool Calls tool_results: items: oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptOtherToolsResultCommonModel' - $ref: '#/components/schemas/ConversationHistoryTranscriptSystemToolResultCommonModel-Output' - $ref: '#/components/schemas/ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Output' - $ref: '#/components/schemas/ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Output' type: array title: Tool Results feedback: anyOf: - $ref: '#/components/schemas/UserFeedback' - type: 'null' llm_override: anyOf: - type: string - type: 'null' title: Llm Override producing_llm: anyOf: - type: string - type: 'null' title: Producing Llm time_in_call_secs: type: integer title: Time In Call Secs conversation_turn_metrics: anyOf: - $ref: '#/components/schemas/ConversationTurnMetrics' - type: 'null' rag_retrieval_info: anyOf: - $ref: '#/components/schemas/RagRetrievalInfo' - type: 'null' llm_usage: anyOf: - $ref: '#/components/schemas/LLMUsage-Output' - type: 'null' interrupted: type: boolean title: Interrupted default: false ignored_as_backchannel: type: boolean title: Ignored As Backchannel default: false original_message: anyOf: - type: string - type: 'null' title: Original Message reasoning: items: $ref: '#/components/schemas/ConversationReasoningModel' type: array title: Reasoning source_medium: anyOf: - $ref: '#/components/schemas/ChatSourceMedium' - type: 'null' source_event_id: anyOf: - type: integer - type: 'null' title: Source Event Id used_static_kb_document_ids: items: type: string type: array title: Used Static Kb Document Ids user_identifier: anyOf: - type: string - type: 'null' title: User Identifier id: anyOf: - type: string - type: 'null' title: Id triggered_guardrails: items: $ref: '#/components/schemas/TriggeredGuardrailCommonModel' type: array title: Triggered Guardrails file_input: anyOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptFileInputResponseModel' - type: 'null' description: 'Deprecated: the first attachment on this turn. Use `file_inputs` to see every attachment.' file_inputs: items: $ref: '#/components/schemas/ConversationHistoryTranscriptFileInputResponseModel' type: array title: File Inputs description: All files attached to this turn, in the order the user attached them. contextual_update_info: anyOf: - $ref: '#/components/schemas/ContextualUpdateInfo' - type: 'null' reasoned: type: boolean title: Reasoned default: false type: object required: - role - time_in_call_secs title: ConversationHistoryTranscriptResponseModel ListProceduresResponseModel: properties: procedures: items: $ref: '#/components/schemas/ProcedureListItemResponseModel' type: array title: Procedures description: Procedures on the branch with their draft-aware metadata. type: object required: - procedures title: ListProceduresResponseModel example: procedures: - has_draft: false name: Customer Support Procedure procedure_id: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 referenced_dynamic_variables: - customer_id referenced_kb_ids: - kb_123 referenced_procedure_ids: - agtprc_other referenced_tool_ids: - tool_123 trigger: When the customer asks for support type: free_form version_id: agtprcv_7rbqxer9o12cyxi55ckw6sgz1dl4 DataCollectionResultCommonModel: properties: data_collection_id: type: string title: Data Collection Id name: anyOf: - type: string - type: 'null' title: Name value: title: Value json_schema: anyOf: - $ref: '#/components/schemas/LiteralJsonSchemaProperty' - type: 'null' rationale: type: string title: Rationale type: object required: - data_collection_id - rationale title: DataCollectionResultCommonModel AlertingSettings: properties: monitor_configs: additionalProperties: $ref: '#/components/schemas/AlertingMonitorConfig' type: object title: Monitor Configs description: Alerting configuration keyed by monitor name. auto_resolve_after_inactive_minutes: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Auto Resolve After Inactive Minutes description: How many minutes an alert can stay inactive before it is auto-resolved. Unset values fall through to the next layer. notifiers: items: oneOf: - $ref: '#/components/schemas/AlertingWebhookNotifier' - $ref: '#/components/schemas/AlertingIntegrationNotifier' discriminator: propertyName: type mapping: integration: '#/components/schemas/AlertingIntegrationNotifier' webhook: '#/components/schemas/AlertingWebhookNotifier' type: array maxItems: 10 title: Notifiers description: Delivery channels for alert lifecycle notifications. Stacked with other layers and deduped by ``webhook_id``, PagerDuty ``connection_id``, or Slack ``(connection_id, channel_id)``. type: object title: AlertingSettings description: 'Alerting configuration used at both per-agent and per-workspace level. Cascade order for per-monitor threshold and auto-resolve: agent → workspace → system default.' TwilioEdgeLocation: type: string enum: - ashburn - dublin - frankfurt - sao-paulo - singapore - sydney - tokyo - umatilla - roaming title: TwilioEdgeLocation description: Valid Twilio edge locations. ClientEvent: type: string enum: - conversation_initiation_metadata - asr_initiation_metadata - ping - audio - interruption - user_transcript - tentative_user_transcript - agent_response - agent_response_correction - client_tool_call - mcp_tool_call - mcp_connection_status - agent_tool_request - agent_tool_response - agent_tool_response_full_payload - agent_response_metadata - vad_score - agent_chat_response_part - client_error - guardrail_triggered - dtmf_request - agent_response_complete - context_usage - internal_turn_probability - internal_tentative_agent_response title: ClientEvent KnowledgeBaseDependentType: type: string enum: - direct - transitive - all title: KnowledgeBaseDependentType GetAgentKnowledgebaseSizeResponseModel: properties: number_of_pages: type: number title: Number Of Pages type: object required: - number_of_pages title: GetAgentKnowledgebaseSizeResponseModel ASTNotEqualsOperatorNode-Output: properties: type: type: string const: neq_operator title: Type default: neq_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTNotEqualsOperatorNode TelephonyCallConfig-Output: properties: ringing_timeout_secs: type: integer maximum: 999.0 minimum: 1.0 title: Ringing Timeout Secs description: How long to ring the recipient before giving up, in seconds. Note that this will also be limited by the provider's own constraints. default: 60 twilio_call_recording_enabled: type: boolean title: Twilio Call Recording Enabled description: Whether to record the call using Twilio call recording. Ignored for non-Twilio providers. Recordings are stored in your Twilio account. default: false twilio_machine_detection: anyOf: - $ref: '#/components/schemas/TwilioMachineDetectionConfig' - type: 'null' description: Configuration for Twilio's carrier-level answering machine detection (AMD). Omit or set to null to disable it. Ignored for non-Twilio providers and for inbound calls. The resulting verdict is delivered as its own `answering_machine_detection` webhook event, which requires that event to be enabled on the workspace or agent webhook settings; it is not part of the conversation or the post-call webhook. Detection runs asynchronously so it never delays the start of the conversation, and the verdict can arrive at any point during the call -- with `detect_message_end`, even after it has ended. Twilio bills separately for AMD. type: object title: TelephonyCallConfig WidgetConfigResponseModel: properties: variant: $ref: '#/components/schemas/EmbedVariant' description: The variant of the widget default: full placement: $ref: '#/components/schemas/WidgetPlacement' description: The placement of the widget on the screen default: bottom-right expandable: $ref: '#/components/schemas/WidgetExpandable' description: Whether the widget is expandable default: never avatar: anyOf: - $ref: '#/components/schemas/OrbAvatar' - $ref: '#/components/schemas/URLAvatar' - $ref: '#/components/schemas/ImageAvatar' title: Avatar description: The avatar of the widget feedback_mode: $ref: '#/components/schemas/WidgetFeedbackMode' description: The feedback mode of the widget default: none end_feedback: anyOf: - $ref: '#/components/schemas/WidgetEndFeedbackConfig' - type: 'null' description: Configuration for feedback collected at the end of the conversation bg_color: type: string title: Bg Color description: The background color of the widget default: '#ffffff' text_color: type: string title: Text Color description: The text color of the widget default: '#000000' btn_color: type: string title: Btn Color description: The button color of the widget default: '#000000' btn_text_color: type: string title: Btn Text Color description: The button text color of the widget default: '#ffffff' border_color: type: string title: Border Color description: The border color of the widget default: '#e1e1e1' focus_color: type: string title: Focus Color description: The focus color of the widget default: '#000000' border_radius: anyOf: - type: integer - type: 'null' title: Border Radius description: The border radius of the widget btn_radius: anyOf: - type: integer - type: 'null' title: Btn Radius description: The button radius of the widget action_text: anyOf: - type: string - type: 'null' title: Action Text description: The action text of the widget start_call_text: anyOf: - type: string - type: 'null' title: Start Call Text description: The start call text of the widget end_call_text: anyOf: - type: string - type: 'null' title: End Call Text description: The end call text of the widget expand_text: anyOf: - type: string - type: 'null' title: Expand Text description: The expand text of the widget listening_text: anyOf: - type: string - type: 'null' title: Listening Text description: The text to display when the agent is listening speaking_text: anyOf: - type: string - type: 'null' title: Speaking Text description: The text to display when the agent is speaking shareable_page_text: anyOf: - type: string - type: 'null' title: Shareable Page Text description: The text to display when sharing shareable_page_show_terms: type: boolean title: Shareable Page Show Terms description: Whether to show terms and conditions on the shareable page default: true terms_text: anyOf: - type: string - type: 'null' title: Terms Text description: The text to display for terms and conditions terms_html: anyOf: - type: string - type: 'null' title: Terms Html description: The HTML to display for terms and conditions terms_key: anyOf: - type: string - type: 'null' title: Terms Key description: The key to display for terms and conditions show_avatar_when_collapsed: anyOf: - type: boolean - type: 'null' title: Show Avatar When Collapsed description: Whether to show the avatar when the widget is collapsed default: false disable_banner: type: boolean title: Disable Banner description: Whether to disable the banner default: false override_link: anyOf: - type: string - type: 'null' title: Override Link description: The override link for the widget markdown_link_allowed_hosts: items: $ref: '#/components/schemas/AllowlistItem' type: array title: Markdown Link Allowed Hosts description: 'List of allowed hostnames for clickable markdown links. Use { hostname: ''*'' } to allow any domain. Empty means no links are allowed.' markdown_link_include_www: type: boolean title: Markdown Link Include Www description: Whether to automatically include www. variants of allowed hosts default: true markdown_link_allow_http: type: boolean title: Markdown Link Allow Http description: Whether to allow http:// in addition to https:// for allowed hosts default: true mic_muting_enabled: type: boolean title: Mic Muting Enabled description: Whether to enable mic muting default: true transcript_enabled: type: boolean title: Transcript Enabled description: Whether the widget should show the conversation transcript as it goes on default: true text_input_enabled: type: boolean title: Text Input Enabled description: Whether the user should be able to send text messages default: true conversation_mode_toggle_enabled: type: boolean title: Conversation Mode Toggle Enabled description: Whether to enable the conversation mode toggle in the widget default: false default_expanded: type: boolean title: Default Expanded description: Whether the widget should be expanded by default default: false always_expanded: type: boolean title: Always Expanded description: Whether the widget should always be expanded default: false dismissible: type: boolean title: Dismissible description: Whether the widget can be dismissed by the user default: false show_agent_status: type: boolean title: Show Agent Status description: Whether to show agent working/done/error status during tool use default: false show_conversation_id: type: boolean title: Show Conversation Id description: Whether to show the conversation ID after disconnection. default: true strip_audio_tags: type: boolean title: Strip Audio Tags description: Whether to strip audio markup from messages. default: true syntax_highlight_theme: anyOf: - type: string enum: - light - dark - type: 'null' title: Syntax Highlight Theme description: Theme for code block syntax highlighting. Defaults to auto-detection by the widget when not set. text_contents: $ref: '#/components/schemas/WidgetTextContents' description: Text contents of the widget styles: $ref: '#/components/schemas/WidgetStyles' description: Styles for the widget show_resize_button: type: boolean title: Show Resize Button description: Whether to show the resize button default: true language: type: string title: Language supported_language_overrides: anyOf: - items: type: string type: array - type: 'null' title: Supported Language Overrides language_presets: additionalProperties: $ref: '#/components/schemas/WidgetLanguagePresetResponse' type: object title: Language Presets description: Language presets for the widget text_only: type: boolean title: Text Only description: Whether the agent uses text-only mode default: false supports_text_only: type: boolean title: Supports Text Only description: Whether the agent can be switched to text-only mode default: false first_message: anyOf: - type: string - type: 'null' title: First Message use_rtc: anyOf: - type: boolean - type: 'null' title: Use Rtc description: Whether to use WebRTC for conversation connections file_input_config: $ref: '#/components/schemas/FileInputConfig' description: Configuration for file upload in the widget type: object required: - language title: WidgetConfigResponseModel example: file_input_config: enabled: false max_files_in_memory: 10 max_files_per_conversation: 10 first_message: Hello! How can I help you today? language: en language_presets: {} supported_language_overrides: - es - fr supports_text_only: true text_only: false use_rtc: false SentimentAnalysisSettings: properties: {} type: object title: SentimentAnalysisSettings TransferToAgentToolConfig-Output: properties: system_tool_type: type: string const: transfer_to_agent title: System Tool Type default: transfer_to_agent transfers: items: $ref: '#/components/schemas/AgentTransfer-Output' type: array title: Transfers type: object required: - transfers title: TransferToAgentToolConfig WhatsAppTemplateTextParam: properties: parameter_name: anyOf: - type: string - type: 'null' title: Parameter Name type: type: string const: text title: Type default: text text: type: string title: Text type: object required: - text title: WhatsAppTemplateTextParam GetConversationUsersPageResponseModel: properties: users: items: $ref: '#/components/schemas/ConversationUserResponseModel' type: array title: Users next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - users - has_more title: GetConversationUsersPageResponseModel RagConfig-Input: properties: enabled: type: boolean title: Enabled default: false embedding_model: $ref: '#/components/schemas/EmbeddingModelEnum' default: e5_mistral_7b_instruct max_vector_distance: type: number exclusiveMaximum: 1.0 exclusiveMinimum: 0.0 title: Max Vector Distance description: Maximum vector distance of retrieved chunks. default: 0.6 examples: - 0.5 max_documents_length: type: integer exclusiveMaximum: 10000000.0 exclusiveMinimum: 0.0 title: Max Documents Length description: Maximum total length of document chunks retrieved from RAG. default: 50000 examples: - '50000' max_retrieved_rag_chunks_count: type: integer maximum: 20.0 exclusiveMinimum: 0.0 title: Max Retrieved Rag Chunks Count description: Maximum number of RAG document chunks to initially retrieve from the vector store. These are then further filtered by vector distance and total length. default: 20 examples: - 5 num_candidates: anyOf: - type: integer maximum: 10000.0 exclusiveMinimum: 0.0 - type: 'null' title: Num Candidates description: Number of candidates evaluated in ANN vector search. Higher number means better results, but higher latency. Minimum recommended value is 100. If disabled, the default value is used. examples: - 300 query_rewrite_prompt_override: anyOf: - type: string maxLength: 1000 minLength: 1 - type: 'null' title: Query Rewrite Prompt Override description: Custom prompt for rewriting user queries before RAG retrieval. The conversation history will be automatically appended at the end. If not set, the default prompt will be used. examples: - You are given a conversation between a user and an assistant. Rewrite the last question to be self-contained and clear. knowledge_base_tool_info: anyOf: - $ref: '#/components/schemas/KnowledgeBaseToolInfo' - type: 'null' description: When set, the agent uses the knowledge_base tool instead of the legacy knowledge_base_rag tool. None means the agent is not opted in. type: object title: RagConfig DTMFInputConfig: properties: dtmf_input_timeout: type: number maximum: 10.0 minimum: 0.5 title: Dtmf Input Timeout description: Timeout in seconds to wait for additional DTMF digits default: 2.0 hash_terminator: type: boolean title: Hash Terminator description: 'If true, pressing # immediately completes DTMF input' default: true redact_input: type: boolean title: Redact Input description: If true, replace the caller's DTMF (keypad) entries with a redaction marker in the transcript, conversation log and analysis. Digits the agent repeats back or passes to a tool are not affected. default: false type: object title: DTMFInputConfig description: Configuration for DTMF (keypad) input collection during phone calls. EmbedVariant: type: string enum: - tiny - compact - full - expandable title: EmbedVariant default: full BuiltInTools-Input: properties: transfer_to_agent: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The transfer to agent tool end_call: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The end call tool language_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The language detection tool transfer_to_number: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The transfer to number tool skip_turn: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The skip turn tool play_keypad_touch_tone: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The play DTMF tool voicemail_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The voicemail detection tool type: object title: BuiltInTools description: 'System tools a conversational agent can be given. Deliberately not named ConversationalBuiltInTools: BuiltInToolsInput and BuiltInToolsOutput are part of the public API spec and the generated SDKs.' ThresholdGuardrail: properties: is_enabled: type: boolean title: Is Enabled default: false threshold: type: number maximum: 1.0 minimum: 0.0 title: Threshold default: 0.3 type: object title: ThresholdGuardrail ConversationTagResponseModel: properties: tag_id: type: string title: Tag Id workspace_id: type: string title: Workspace Id owner_user_id: type: string title: Owner User Id title: type: string title: Title description: anyOf: - type: string - type: 'null' title: Description created_at_unix_secs: type: integer title: Created At Unix Secs type: object required: - tag_id - workspace_id - owner_user_id - title - description - created_at_unix_secs title: ConversationTagResponseModel MockNoMatchBehavior: type: string enum: - call_real_tool - raise_error title: MockNoMatchBehavior default: raise_error Body_Create_URL_document_v1_convai_knowledge_base_url_post: properties: url: type: string title: Url description: URL to a page of documentation that the agent will have access to in order to interact with users. name: anyOf: - type: string minLength: 1 - type: 'null' title: Name description: A custom, human-readable name for the document. parent_folder_id: anyOf: - type: string - type: 'null' title: Parent Folder Id description: If set, the created document or folder will be placed inside the given folder. enable_auto_sync: type: boolean title: Enable Auto Sync description: Whether to enable auto-sync for this URL document. default: false auto_remove: type: boolean title: Auto Remove description: Whether to automatically remove the document if the URL becomes unavailable. Only applicable when auto-sync is enabled. default: false minimum_frequency_days: anyOf: - type: integer maximum: 180.0 minimum: 1.0 - type: 'null' title: Minimum Frequency Days description: Minimum frequency (in days) at which the document is refreshed. The actual interval may be shorter, never longer. Defaults to 7, tightened to the parent folder's frequency if that is stricter. Only applicable when auto-sync is enabled. type: object required: - url title: Body_Create_URL_document_v1_convai_knowledge_base_url_post AgentWorkflowRequestModel: properties: edges: additionalProperties: $ref: '#/components/schemas/WorkflowEdgeModel-Input' type: object title: Edges nodes: additionalProperties: oneOf: - $ref: '#/components/schemas/WorkflowStartNodeModel-Input' description: Entry point of the workflow. - $ref: '#/components/schemas/WorkflowEndNodeModel-Input' description: Terminates the conversation upon reaching this node. - $ref: '#/components/schemas/WorkflowPhoneNumberNodeModel-Input' description: Transfers the conversation to a phone number. - $ref: '#/components/schemas/WorkflowOverrideAgentNodeModel-Input' description: A subagent conducting the conversation until one of the exit conditions is met. Each subagent can override the base settings, changing the prompt, knowledge base, and more. - $ref: '#/components/schemas/WorkflowStandaloneAgentNodeModel-Input' description: Transfer the conversation to a standalone agent. - $ref: '#/components/schemas/WorkflowToolNodeModel-Input' description: Executes one or more tools in parallel. discriminator: propertyName: type mapping: end: '#/components/schemas/WorkflowEndNodeModel-Input' override_agent: '#/components/schemas/WorkflowOverrideAgentNodeModel-Input' phone_number: '#/components/schemas/WorkflowPhoneNumberNodeModel-Input' standalone_agent: '#/components/schemas/WorkflowStandaloneAgentNodeModel-Input' start: '#/components/schemas/WorkflowStartNodeModel-Input' tool: '#/components/schemas/WorkflowToolNodeModel-Input' type: object minProperties: 1 title: Nodes prevent_subagent_loops: type: boolean title: Prevent Subagent Loops description: Whether to prevent loops in the workflow execution. default: false type: object title: AgentWorkflowRequestModel example: edges: entry_to_tool_a: forward_condition: condition: Tool A condition source: entry_node target: tool_node_a start_to_entry: forward_condition: {} source: start_node target: entry_node tool_a_to_failure: forward_condition: successful: false source: tool_node_a target: failure_node tool_a_to_tool_b: forward_condition: successful: true source: tool_node_a target: tool_node_b tool_b_to_agent_transfer: forward_condition: {} source: tool_node_b target: success_transfer tool_b_to_conversation: forward_condition: condition: Conversation condition source: tool_node_b target: success_conversation tool_b_to_end: forward_condition: condition: End condition source: tool_node_b target: success_end tool_b_to_phone: forward_condition: expression: children: - name: force_phone_transfer - prompt: Phone condition value_schema: description: Phone condition type: boolean - left: name: mode right: value: dev source: tool_node_b target: success_phone nodes: entry_node: conversation_config: {} edge_order: - entry_to_tool_a label: Entry failure_node: conversation_config: {} label: Failure start_node: edge_order: - start_to_entry success_conversation: conversation_config: {} label: Success A success_end: {} success_phone: transfer_destination: phone_number: '+1234567890' success_transfer: agent_id: success_transfer_agent tool_node_a: edge_order: - tool_a_to_failure - tool_a_to_tool_b tools: - tool_id: tool_a - tool_id: tool_b tool_node_b: edge_order: - tool_b_to_conversation - tool_b_to_end - tool_b_to_phone - tool_b_to_agent_transfer tools: - tool_id: tool_a GetAgentEmbedResponseModel: properties: agent_id: type: string title: Agent Id widget_config: $ref: '#/components/schemas/WidgetConfigResponseModel' type: object required: - agent_id - widget_config title: GetAgentEmbedResponseModel GetAgentTestFolderResponseModel: properties: id: type: string title: Id name: type: string title: Name folder_path: items: $ref: '#/components/schemas/AgentTestFolderPathSegmentResponseModel' type: array title: Folder Path description: The path from the root folder to the current folder. children_count: type: integer title: Children Count description: The number of direct children (tests and subfolders) in this folder default: 0 type: object required: - id - name title: GetAgentTestFolderResponseModel RequiredConstraints: properties: any_of: items: $ref: '#/components/schemas/RequiredConstraint' type: array title: Any Of all_of: items: $ref: '#/components/schemas/RequiredConstraint' type: array title: All Of type: object title: RequiredConstraints description: Wrapper for anyOf/allOf composition constraints scoped to required fields. ListCalendarEventsParams: properties: smb_tool_type: type: string const: list_calendar_events title: Smb Tool Type default: list_calendar_events include_cancelled: type: boolean title: Include Cancelled default: false type: object title: ListCalendarEventsParams ConversationSentimentAnalysis: properties: overall_label: type: string enum: - positive - neutral - negative title: Overall Label overall_sentiment_score: type: number maximum: 1.0 minimum: -1.0 title: Overall Sentiment Score overall_frustration_score: type: number maximum: 1.0 minimum: 0.0 title: Overall Frustration Score min_user_sentiment_score: type: number maximum: 1.0 minimum: -1.0 title: Min User Sentiment Score max_user_frustration_score: type: number maximum: 1.0 minimum: 0.0 title: Max User Frustration Score num_scored_user_turns: type: integer minimum: 0.0 title: Num Scored User Turns type: object required: - overall_label - overall_sentiment_score - overall_frustration_score - min_user_sentiment_score - max_user_frustration_score - num_scored_user_turns title: ConversationSentimentAnalysis TopicSortBy: type: string enum: - conversations - sentiment - success_rate - frustration title: TopicSortBy Body_Update_document_v1_convai_knowledge_base__documentation_id__patch: properties: name: anyOf: - type: string minLength: 1 - type: 'null' title: Name description: A custom, human-readable name for the document. content: anyOf: - type: string - type: 'null' title: Content description: Updated content for the document. Only supported for text documents, URL documents with auto-sync disabled, and file documents. type: object title: Body_Update_document_v1_convai_knowledge_base__documentation_id__patch ToolResponseMockConfig-Output: properties: parameter_conditions: items: $ref: '#/components/schemas/UnitTestToolCallParameter' type: array title: Parameter Conditions description: If the list is empty, the mock will always activate. mock_result: type: string title: Mock Result description: The return value the LLM sees when this mock is active. is_error: type: boolean title: Is Error description: If true, the mock result is surfaced to the LLM as a tool error rather than a successful result. default: false type: object required: - mock_result title: ToolResponseMockConfig PreToolSpeechMode: type: string enum: - auto - force - 'off' title: PreToolSpeechMode default: auto ConversationTTSUsageModel: properties: primary_tts_model: anyOf: - type: string - type: 'null' title: Primary Tts Model total_audio_output_seconds: type: number title: Total Audio Output Seconds default: 0.0 total_characters: type: integer title: Total Characters default: 0 per_voice_usage: items: $ref: '#/components/schemas/ConversationVoiceUsageModel' type: array title: Per Voice Usage type: object title: ConversationTTSUsageModel description: Aggregated TTS usage for a conversation (analytics-only, not billing). AttachedUserDataCollectionRef: properties: source: type: string const: user title: Source analysis_item_id: type: string title: Analysis Item Id description: Id of the referenced user data-collection item. version_id: anyOf: - type: string - type: 'null' title: Version Id description: Pinned item version. None tracks the item's latest published version. scope: $ref: '#/components/schemas/AnalysisScope' description: Transcript context ('conversation' or 'agent') used when running this item. default: conversation type: object required: - source - analysis_item_id title: AttachedUserDataCollectionRef LanguagePreset-Output: properties: overrides: $ref: '#/components/schemas/ConversationConfigClientOverride-Output' description: The overrides for the language preset first_message_translation: anyOf: - $ref: '#/components/schemas/LanguagePresetTranslation' - type: 'null' description: The translation of the first message soft_timeout_translation: anyOf: - $ref: '#/components/schemas/LanguagePresetTranslation' - type: 'null' description: The translation of the soft timeout message type: object required: - overrides title: LanguagePreset CreateAgentProcedureParams: properties: smb_tool_type: type: string const: create_agent_procedure title: Smb Tool Type default: create_agent_procedure type: object title: CreateAgentProcedureParams ImageAvatar: properties: type: type: string const: image title: Type description: The type of the avatar default: image url: type: string title: Url description: The URL of the avatar default: '' type: object title: ImageAvatar VoicemailDetectionToolConfig: properties: system_tool_type: type: string const: voicemail_detection title: System Tool Type default: voicemail_detection voicemail_message: anyOf: - type: string - type: 'null' title: Voicemail Message description: Optional message to leave on voicemail when detected. If not provided, the call will end immediately when voicemail is detected. Supports dynamic variables (e.g., {{system__time}}, {{system__call_duration_secs}}, {{custom_variable}}). type: object title: VoicemailDetectionToolConfig description: 'Allows the agent to detect when a voicemail system is encountered. This tool should be invoked by the LLM when it detects that the call has been answered by a voicemail system rather than a human. If a voicemail message is configured, it will be played; otherwise the call will end immediately.' TestsFeatureUsageCommonModel: properties: enabled: type: boolean title: Enabled default: false tests_ran_after_last_modification: type: boolean title: Tests Ran After Last Modification default: false tests_ran_in_last_7_days: type: boolean title: Tests Ran In Last 7 Days default: false type: object title: TestsFeatureUsageCommonModel Position-Output: properties: x: type: number title: X default: 0.0 y: type: number title: Y default: 0.0 type: object required: - x - y title: Position TopicSentimentAggregate: properties: sentiment: $ref: '#/components/schemas/NumericDistributionAggregate' frustration: $ref: '#/components/schemas/NumericDistributionAggregate' positive_count: type: integer title: Positive Count default: 0 neutral_count: type: integer title: Neutral Count default: 0 negative_count: type: integer title: Negative Count default: 0 type: object title: TopicSentimentAggregate RestoreCalendarEventParams: properties: smb_tool_type: type: string const: restore_calendar_event title: Smb Tool Type default: restore_calendar_event type: object title: RestoreCalendarEventParams CreateProductParams: properties: smb_tool_type: type: string const: create_product title: Smb Tool Type default: create_product type: object title: CreateProductParams KnowledgeBaseRagChunkModel: properties: chunk_id: type: string title: Chunk Id document_id: type: string title: Document Id content: type: string title: Content type: object required: - chunk_id - document_id - content title: KnowledgeBaseRagChunkModel LLMCategoryUsage: properties: irreversible_generation: $ref: '#/components/schemas/LLMUsage-Output' initiated_generation: $ref: '#/components/schemas/LLMUsage-Output' type: object title: LLMCategoryUsage TurnConfigWorkflowOverride: properties: turn_timeout: anyOf: - type: number - type: 'null' title: Turn Timeout description: Maximum wait time for the user's reply before re-engaging the user initial_wait_time: anyOf: - type: number - type: 'null' title: Initial Wait Time description: How long the agent will wait for the user to start the conversation if the first message is empty. If not set, uses the regular turn_timeout. silence_end_call_timeout: anyOf: - type: number - type: 'null' title: Silence End Call Timeout description: Maximum wait time since the user last spoke before terminating the call mode: anyOf: - $ref: '#/components/schemas/TurnMode' - type: 'null' description: The mode of turn detection x-fern-ignore: true turn_eagerness: anyOf: - $ref: '#/components/schemas/TurnEagerness' - type: 'null' description: Controls how eager the agent is to respond. Low = less eager (waits longer), Standard = default eagerness, High = more eager (responds sooner) spelling_patience: anyOf: - $ref: '#/components/schemas/SpellingPatience' - type: 'null' description: Controls if the agent should be more patient when user is spelling numbers and named entities. Auto = model based, Off = never wait extra speculative_turn: anyOf: - type: boolean - type: 'null' title: Speculative Turn description: When enabled, starts generating LLM responses during silence before full turn confidence is reached, reducing perceived latency. May increase LLM costs. retranscribe_on_turn_timeout: anyOf: - type: boolean - type: 'null' title: Retranscribe On Turn Timeout description: When enabled, if VAD detects no speech, attempts to re-transcribe accumulated audio at turn timeout. Disables silence discount billing for affected turns. turn_model: anyOf: - $ref: '#/components/schemas/TurnModel' - type: 'null' description: Version of the turn detection model to use. interruption_ignore_terms: anyOf: - items: type: string type: array - type: 'null' title: Interruption Ignore Terms description: List of terms that should not trigger an interruption when spoken by the user (e.g. 'gotcha', 'understood'). Uses case-insensitive exact matching. interruption_ignore_term_languages: anyOf: - items: type: string type: array - type: 'null' title: Interruption Ignore Term Languages description: Language codes for which preset ignore-term categories have been activated. Stored explicitly so display is not inferred from term overlap. merge_with_default_ignore_terms: anyOf: - type: boolean - type: 'null' title: Merge With Default Ignore Terms description: When enabled, the curated default terms for interruption_ignore_term_languages are used in addition to interruption_ignore_terms. transcribe_on_disabled_interruptions: anyOf: - type: boolean - type: 'null' title: Transcribe On Disabled Interruptions description: When interruptions are disabled, still transcribe what the user says so it can carry into the next turn. When off, user speech during a non-interruptible turn is ignored and won't trigger a turn. soft_timeout_config: anyOf: - $ref: '#/components/schemas/SoftTimeoutConfigWorkflowOverride' - type: 'null' description: Configuration for soft timeout functionality. Provides immediate feedback during longer LLM responses. type: object title: TurnConfigWorkflowOverride example: interruption_ignore_term_languages: [] interruption_ignore_terms: [] merge_with_default_ignore_terms: false mode: turn retranscribe_on_turn_timeout: false silence_end_call_timeout: -1.0 soft_timeout_config: message: Hhmmmm...yeah. timeout_seconds: -1.0 use_llm_generated_message: false speculative_turn: false spelling_patience: auto transcribe_on_disabled_interruptions: false turn_eagerness: normal turn_model: turn_v3 turn_timeout: 7.0 ConversationHistorySIPTrunkingPhoneCallModel: properties: direction: $ref: '#/components/schemas/TelephonyDirection' phone_number_id: type: string title: Phone Number Id agent_number: type: string title: Agent Number external_number: type: string title: External Number type: type: string const: sip_trunking title: Type call_id: anyOf: - type: string - type: 'null' title: Call Id call_sid: type: string title: Call Sid sip_header_dynamic_variables: additionalProperties: type: string type: object title: Sip Header Dynamic Variables type: object required: - direction - phone_number_id - agent_number - external_number - type - call_sid title: ConversationHistorySIPTrunkingPhoneCallModel CreateAgentResponseModel: properties: agent_id: type: string title: Agent Id description: ID of the created agent type: object required: - agent_id title: CreateAgentResponseModel example: agent_id: J3Pbu5gP6NNKBscdCdwB WhatsAppOutboundCallResponse: properties: success: type: boolean title: Success message: type: string title: Message conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id type: object required: - success - message - conversation_id title: WhatsAppOutboundCallResponse LLMUsageCalculatorLLMResponseModel: properties: llm: $ref: '#/components/schemas/LLM' price_per_minute: type: number title: Price Per Minute price_per_message: type: number title: Price Per Message type: object required: - llm - price_per_minute - price_per_message title: LLMUsageCalculatorLLMResponseModel CreateHolidayParams: properties: smb_tool_type: type: string const: create_holiday title: Smb Tool Type default: create_holiday type: object title: CreateHolidayParams OutputFormat: type: string enum: - plain_text - markdown title: OutputFormat SIPTrunkCredentialsRequestModel: properties: username: type: string title: Username description: SIP trunk username password: anyOf: - type: string - type: 'null' title: Password description: SIP trunk password - if not specified, then remain unchanged type: object required: - username title: SIPTrunkCredentialsRequestModel WhatsAppTemplateImageParam: properties: type: type: string const: image title: Type default: image image: $ref: '#/components/schemas/WhatsAppTemplateImageParamDetails' type: object required: - image title: WhatsAppTemplateImageParam ToolExecution: properties: taskSupport: anyOf: - type: string enum: - forbidden - optional - required - type: 'null' title: Tasksupport type: object title: ToolExecution description: Execution-related properties for a tool (2025-11-25 only). DependentPhoneNumberIdentifier: properties: phone_number_id: type: string title: Phone Number Id phone_number: type: string title: Phone Number label: type: string title: Label provider: $ref: '#/components/schemas/TelephonyProvider' type: object required: - phone_number_id - phone_number - label - provider title: DependentPhoneNumberIdentifier StartProcedureToolResultErrorModel: properties: result_type: type: string const: start_procedure_error title: Result Type default: start_procedure_error status: $ref: '#/components/schemas/StartProcedureToolErrorStatus' procedure_id: anyOf: - type: string - type: 'null' title: Procedure Id message: type: string title: Message type: object required: - status - message title: StartProcedureToolResultErrorModel ConversationHistoryMultivoiceMessagePartModel: properties: text: type: string title: Text voice_label: anyOf: - type: string - type: 'null' title: Voice Label time_in_call_secs: anyOf: - type: integer - type: 'null' title: Time In Call Secs type: object required: - text - voice_label - time_in_call_secs title: ConversationHistoryMultivoiceMessagePartModel description: Represents a single voice part of a multi-voice message. BackgroundSoundSourceType: type: string enum: - preset title: BackgroundSoundSourceType description: The type of background sound source. TTSConversationalConfigOverrideConfig: properties: model_id: type: boolean title: Model Id description: Whether to allow overriding the model_id field. default: false voice_id: type: boolean title: Voice Id description: Whether to allow overriding the voice_id field. default: false supported_voices: type: boolean title: Supported Voices description: Whether to allow overriding the supported_voices field. default: false stability: type: boolean title: Stability description: Whether to allow overriding the stability field. default: false speed: type: boolean title: Speed description: Whether to allow overriding the speed field. default: false similarity_boost: type: boolean title: Similarity Boost description: Whether to allow overriding the similarity_boost field. default: false pronunciation_dictionary_locators: type: boolean title: Pronunciation Dictionary Locators description: Whether to allow overriding the pronunciation_dictionary_locators field. default: false type: object title: TTSConversationalConfigOverrideConfig UserFeedback: properties: score: $ref: '#/components/schemas/UserFeedbackScore' time_in_call_secs: type: integer title: Time In Call Secs type: object required: - score - time_in_call_secs title: UserFeedback KnowledgeBaseDocumentChunkResponseModel: properties: id: type: string title: Id name: type: string title: Name content: type: string title: Content type: object required: - id - name - content title: KnowledgeBaseDocumentChunkResponseModel DeleteClientParams: properties: smb_tool_type: type: string const: delete_client title: Smb Tool Type default: delete_client type: object title: DeleteClientParams description: Delete a client, cascading deletion of all their appointments first. SafetyResponseModel: properties: is_blocked_ivc: type: boolean title: Is Blocked Ivc default: false is_blocked_non_ivc: type: boolean title: Is Blocked Non Ivc default: false ignore_safety_evaluation: type: boolean title: Ignore Safety Evaluation default: false type: object title: SafetyResponseModel WorkflowStartNodeModel-Input: properties: type: type: string const: start title: Type default: start position: $ref: '#/components/schemas/Position-Input' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. type: object title: WorkflowStartNodeModel ASTNode-Input: oneOf: - $ref: '#/components/schemas/ASTStringNode-Input' description: String literal. - $ref: '#/components/schemas/ASTNumberNode-Input' description: Number literal. - $ref: '#/components/schemas/ASTBooleanNode-Input' description: Boolean literal. - $ref: '#/components/schemas/ASTNullNode-Input' description: Null literal. - $ref: '#/components/schemas/ASTLLMNode-Input' description: Value extracted by an LLM according to the given schema. - $ref: '#/components/schemas/ASTDynamicVariableNode-Input' description: Reference to a dynamic variable. - $ref: '#/components/schemas/ASTOrOperatorNode-Input' description: Evaluates to true if any child is true. - $ref: '#/components/schemas/ASTAndOperatorNode-Input' description: Evaluates to true if all children are true. - $ref: '#/components/schemas/ASTEqualsOperatorNode-Input' description: Evaluates to true if the left value equals the right. - $ref: '#/components/schemas/ASTNotEqualsOperatorNode-Input' description: Evaluates to true if the left value does not equal the right. - $ref: '#/components/schemas/ASTGreaterThanOperatorNode-Input' description: Evaluates to true if the left value is greater than the right. - $ref: '#/components/schemas/ASTLessThanOperatorNode-Input' description: Evaluates to true if the left value is less than the right. - $ref: '#/components/schemas/ASTGreaterThanOrEqualsOperatorNode-Input' description: Evaluates to true if the left value is greater than or equal to the right. - $ref: '#/components/schemas/ASTLessThanOrEqualsOperatorNode-Input' description: Evaluates to true if the left value is less than or equal to the right. - $ref: '#/components/schemas/ASTAdditionOperatorNode-Input' description: Adds the left and right values. - $ref: '#/components/schemas/ASTSubtractionOperatorNode-Input' description: Subtracts the right value from the left. - $ref: '#/components/schemas/ASTMultiplicationOperatorNode-Input' description: Multiplies the left value times the right. - $ref: '#/components/schemas/ASTDivisionOperatorNode-Input' description: Divides the left value by the right. - $ref: '#/components/schemas/ASTConditionalOperatorNode-Input' description: Selects one of two expressions based on whether the given condition evaluates to true. discriminator: propertyName: type mapping: add_operator: '#/components/schemas/ASTAdditionOperatorNode-Input' and_operator: '#/components/schemas/ASTAndOperatorNode-Input' boolean_literal: '#/components/schemas/ASTBooleanNode-Input' conditional_operator: '#/components/schemas/ASTConditionalOperatorNode-Input' div_operator: '#/components/schemas/ASTDivisionOperatorNode-Input' dynamic_variable: '#/components/schemas/ASTDynamicVariableNode-Input' eq_operator: '#/components/schemas/ASTEqualsOperatorNode-Input' gt_operator: '#/components/schemas/ASTGreaterThanOperatorNode-Input' gte_operator: '#/components/schemas/ASTGreaterThanOrEqualsOperatorNode-Input' llm: '#/components/schemas/ASTLLMNode-Input' lt_operator: '#/components/schemas/ASTLessThanOperatorNode-Input' lte_operator: '#/components/schemas/ASTLessThanOrEqualsOperatorNode-Input' mul_operator: '#/components/schemas/ASTMultiplicationOperatorNode-Input' neq_operator: '#/components/schemas/ASTNotEqualsOperatorNode-Input' null_literal: '#/components/schemas/ASTNullNode-Input' number_literal: '#/components/schemas/ASTNumberNode-Input' or_operator: '#/components/schemas/ASTOrOperatorNode-Input' string_literal: '#/components/schemas/ASTStringNode-Input' sub_operator: '#/components/schemas/ASTSubtractionOperatorNode-Input' ConversationHistoryEvaluationCriteriaResultCommonModel: properties: criteria_id: type: string title: Criteria Id result: $ref: '#/components/schemas/EvaluationSuccessResult' rationale: type: string title: Rationale scoring_mode: anyOf: - $ref: '#/components/schemas/CriteriaScoringMode' - type: 'null' score: anyOf: - type: integer - type: 'null' title: Score max_score: anyOf: - type: integer - type: 'null' title: Max Score type: object required: - criteria_id - result - rationale title: ConversationHistoryEvaluationCriteriaResultCommonModel OmitSchemaOverride: properties: source: type: string const: omit title: Source default: omit type: object title: OmitSchemaOverride SoftTimeoutConfigOverrideConfig: properties: message: type: boolean title: Message description: Whether to allow overriding the message field. default: false additional_soft_timeout_messages: type: boolean title: Additional Soft Timeout Messages description: Whether to allow overriding the additional_soft_timeout_messages field. default: false type: object title: SoftTimeoutConfigOverrideConfig ConversationSimulationSpecification: properties: simulated_user_config: $ref: '#/components/schemas/AgentConfigAPIModel-Input' tool_mock_config: additionalProperties: $ref: '#/components/schemas/ToolMockConfig' type: object title: Tool Mock Config partial_conversation_history: items: $ref: '#/components/schemas/ConversationHistoryTranscriptCommonModel-Input' type: array title: Partial Conversation History description: A partial conversation history to start the simulation from. If empty, simulation starts fresh. dynamic_variables: additionalProperties: true type: object title: Dynamic Variables type: object required: - simulated_user_config title: ConversationSimulationSpecification description: A specification that will be used to simulate a conversation between an agent and an AI user. ConvAIEnvVarLocator: properties: env_var_label: type: string title: Env Var Label type: object required: - env_var_label title: ConvAIEnvVarLocator description: Used to reference an environment variable by label. ConvAIFileUploadResponseModel: properties: file_id: type: string title: File Id type: object required: - file_id title: ConvAIFileUploadResponseModel KnowledgeBaseToolResultModel: properties: result_type: type: string const: knowledge_base_success title: Result Type default: knowledge_base_success status: $ref: '#/components/schemas/KnowledgeBaseToolStatus' default: success chunk_count: type: integer title: Chunk Count default: 0 message: type: string title: Message default: Referenced knowledge base. type: object title: KnowledgeBaseToolResultModel ASTSubtractionOperatorNode-Input: properties: type: type: string const: sub_operator title: Type default: sub_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTSubtractionOperatorNode DeleteStaffParams: properties: smb_tool_type: type: string const: delete_staff title: Smb Tool Type default: delete_staff type: object title: DeleteStaffParams description: Delete an existing staff member from the system. PatchWorkspaceSecretRequest: properties: type: type: string const: update title: Type name: type: string title: Name value: type: string title: Value type: object required: - type - name - value title: PatchWorkspaceSecretRequest ToolUsageStatsResponseModel: properties: total_calls: type: integer title: Total Calls description: The total number of calls to the tool default: 0 avg_latency_secs: type: number title: Avg Latency Secs type: object required: - avg_latency_secs title: ToolUsageStatsResponseModel DependentBranchInfo: properties: agent_id: type: string title: Agent Id agent_name: type: string title: Agent Name branch_id: type: string title: Branch Id branch_name: type: string title: Branch Name is_main: type: boolean title: Is Main type: object required: - agent_id - agent_name - branch_id - branch_name - is_main title: DependentBranchInfo MCPApprovalPolicyUpdateRequestModel: properties: approval_policy: $ref: '#/components/schemas/MCPApprovalPolicy' description: The approval mode to set for the MCP server type: object required: - approval_policy title: MCPApprovalPolicyUpdateRequestModel description: Request model for updating MCP Server approval mode. GetWhatsAppAccountResponse: properties: business_account_id: type: string title: Business Account Id phone_number_id: type: string title: Phone Number Id business_account_name: type: string title: Business Account Name phone_number_name: type: string title: Phone Number Name phone_number: type: string title: Phone Number account_type: $ref: '#/components/schemas/WhatsAppAccountType' description: Which Embedded Signup flow produced this account. default: cloud_api assigned_agent_id: anyOf: - type: string - type: 'null' title: Assigned Agent Id enable_messaging: type: boolean title: Enable Messaging default: true enable_audio_message_response: type: boolean title: Enable Audio Message Response default: true enable_typing_indicator: type: boolean title: Enable Typing Indicator default: true assigned_agent_name: anyOf: - type: string - type: 'null' title: Assigned Agent Name is_token_expired: type: boolean title: Is Token Expired default: false type: object required: - business_account_id - phone_number_id - business_account_name - phone_number_name - phone_number - assigned_agent_name title: GetWhatsAppAccountResponse UpdateEnvironmentVariableRequest: properties: values: additionalProperties: anyOf: - type: string minLength: 1 - $ref: '#/components/schemas/EnvironmentVariableSecretValueRequest' - $ref: '#/components/schemas/EnvironmentVariableAuthConnectionValueRequest' - type: 'null' type: object title: Values description: Values to replace. Set to null to remove an environment (except 'production'). type: object required: - values title: UpdateEnvironmentVariableRequest AgentKnowledgeBaseRagQueryRequestModel: properties: query: type: string minLength: 1 title: Query description: Query to run against the agent's knowledge base RAG index. examples: - How do I reset my password? use_agent_defaults: type: boolean title: Use Agent Defaults description: When true (the default), retrieval uses the agent's own RAG settings, reproducing exactly what the agent would retrieve. Set to false to retrieve with neutral default RAG settings instead (the agent's embedding model is always kept, since it determines which vector index exists). Useful for auditing the knowledge base independently of how a particular agent is tuned. default: true max_documents_length: anyOf: - type: integer maximum: 50000.0 exclusiveMinimum: 0.0 - type: 'null' title: Max Documents Length description: Optional maximum total character length of document chunks returned. Overrides the selected RAG settings for this query only. max_retrieved_rag_chunks_count: anyOf: - type: integer maximum: 20.0 exclusiveMinimum: 0.0 - type: 'null' title: Max Retrieved Rag Chunks Count description: Optional maximum number of document chunks retrieved. Overrides the selected RAG settings for this query only. type: object required: - query title: AgentKnowledgeBaseRagQueryRequestModel OrchestratorToolMockBehaviorConfig: properties: mocking_strategy: $ref: '#/components/schemas/MockingStrategy' description: 'Which tools to mock: ''all'' mocks every mockable tool, ''selected'' mocks only those in mocked_tool_names/mocked_tool_ids, ''none'' disables mocking.' default: none fallback_strategy: $ref: '#/components/schemas/MockNoMatchBehavior' description: Behavior when no mock matches a tool call. default: raise_error mocked_tool_names: items: type: string type: array title: Mocked Tool Names description: Tool names to mock. Only used when mocking_strategy is 'selected'. type: object title: OrchestratorToolMockBehaviorConfig description: 'Orchestrator-side config: tools are identified by resolved names.' RAGIndexOverviewEmbeddingModelResponseModel: properties: model: $ref: '#/components/schemas/EmbeddingModelEnum' used_bytes: type: integer title: Used Bytes type: object required: - model - used_bytes title: RAGIndexOverviewEmbeddingModelResponseModel DashboardDataCollectionChartModel: properties: name: type: string title: Name type: type: string const: data_collection title: Type default: data_collection data_collection_id: type: string title: Data Collection Id type: object required: - name - data_collection_id title: DashboardDataCollectionChartModel AgentWorkflowResponseModel: properties: edges: additionalProperties: $ref: '#/components/schemas/WorkflowEdgeModel-Output' type: object title: Edges nodes: additionalProperties: oneOf: - $ref: '#/components/schemas/WorkflowStartNodeModel-Output' description: Entry point of the workflow. - $ref: '#/components/schemas/WorkflowEndNodeModel-Output' description: Terminates the conversation upon reaching this node. - $ref: '#/components/schemas/WorkflowPhoneNumberNodeModel-Output' description: Transfers the conversation to a phone number. - $ref: '#/components/schemas/WorkflowOverrideAgentNodeModel-Output' description: A subagent conducting the conversation until one of the exit conditions is met. Each subagent can override the base settings, changing the prompt, knowledge base, and more. - $ref: '#/components/schemas/WorkflowStandaloneAgentNodeModel-Output' description: Transfer the conversation to a standalone agent. - $ref: '#/components/schemas/WorkflowToolNodeModel-Output' description: Executes one or more tools in parallel. discriminator: propertyName: type mapping: end: '#/components/schemas/WorkflowEndNodeModel-Output' override_agent: '#/components/schemas/WorkflowOverrideAgentNodeModel-Output' phone_number: '#/components/schemas/WorkflowPhoneNumberNodeModel-Output' standalone_agent: '#/components/schemas/WorkflowStandaloneAgentNodeModel-Output' start: '#/components/schemas/WorkflowStartNodeModel-Output' tool: '#/components/schemas/WorkflowToolNodeModel-Output' type: object minProperties: 1 title: Nodes prevent_subagent_loops: type: boolean title: Prevent Subagent Loops description: Whether to prevent loops in the workflow execution. default: false type: object required: - edges - nodes - prevent_subagent_loops title: AgentWorkflowResponseModel example: edges: entry_to_tool_a: forward_condition: condition: Tool A condition type: llm source: entry_node target: tool_node_a start_to_entry: forward_condition: type: unconditional source: start_node target: entry_node tool_a_to_failure: forward_condition: successful: false type: result source: tool_node_a target: failure_node tool_a_to_tool_b: forward_condition: successful: true type: result source: tool_node_a target: tool_node_b tool_b_to_agent_transfer: forward_condition: type: unconditional source: tool_node_b target: success_transfer tool_b_to_conversation: forward_condition: condition: Conversation condition type: llm source: tool_node_b target: success_conversation tool_b_to_end: forward_condition: condition: End condition type: llm source: tool_node_b target: success_end tool_b_to_phone: forward_condition: expression: children: - name: force_phone_transfer type: dynamic_variable - prompt: Phone condition type: llm value_schema: description: Phone condition type: boolean - left: name: mode type: dynamic_variable right: type: string_literal value: dev type: eq_operator type: or_operator type: expression source: tool_node_b target: success_phone nodes: entry_node: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: - entry_to_tool_a entry_behavior: auto label: Entry position: x: 0.0 y: 0.0 type: override_agent failure_node: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: [] entry_behavior: auto label: Failure position: x: 0.0 y: 0.0 type: override_agent start_node: edge_order: - start_to_entry position: x: 0.0 y: 0.0 type: start success_conversation: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: [] entry_behavior: auto label: Success A position: x: 0.0 y: 0.0 type: override_agent success_end: edge_order: [] position: x: 0.0 y: 0.0 return_when_nested: true type: end success_phone: custom_sip_headers: [] edge_order: [] position: x: 0.0 y: 0.0 require_acceptance: false sip_refer_play_dialtone: true transfer_destination: phone_number: '+1234567890' type: phone transfer_type: conference type: phone_number success_transfer: agent_id: success_transfer_agent delay_ms: 0 drop_history: false edge_order: [] enable_transferred_agent_first_message: false isolate_history: false position: x: 0.0 y: 0.0 preserve_client_tts_overrides: false type: standalone_agent tool_node_a: edge_order: - tool_a_to_failure - tool_a_to_tool_b position: x: 0.0 y: 0.0 tools: - tool_id: tool_a - tool_id: tool_b type: tool tool_node_b: edge_order: - tool_b_to_conversation - tool_b_to_end - tool_b_to_phone - tool_b_to_agent_transfer position: x: 0.0 y: 0.0 tools: - tool_id: tool_a type: tool prevent_subagent_loops: false subgraphs: {} WorkflowToolMaxIterationsExceededStepModel: properties: step_latency_secs: type: number title: Step Latency Secs type: type: string const: max_iterations_exceeded title: Type default: max_iterations_exceeded max_iterations: type: integer title: Max Iterations type: object required: - step_latency_secs - max_iterations title: WorkflowToolMaxIterationsExceededStepModel GuardrailsV1-Input: properties: version: type: string const: '1' title: Version default: '1' focus: $ref: '#/components/schemas/FocusGuardrail' prompt_injection: $ref: '#/components/schemas/PromptInjectionGuardrail' content: $ref: '#/components/schemas/ContentGuardrail-Input' moderation: anyOf: - $ref: '#/components/schemas/ModerationGuardrail-Input' - type: 'null' x-fern-ignore: true custom: $ref: '#/components/schemas/CustomGuardrail-Input' type: object title: GuardrailsV1 ASTGreaterThanOperatorNode-Output: properties: type: type: string const: gt_operator title: Type default: gt_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTGreaterThanOperatorNode FileInputConfigWorkflowOverride: properties: enabled: anyOf: - type: boolean - type: 'null' title: Enabled description: When enabled, users may attach images or PDFs in chat when the LLM supports multimodal input. max_files_in_memory: anyOf: - type: integer - type: 'null' title: Max Files In Memory description: Number of most-recent files kept in memory during a conversation. Older files are summarized and their bytes freed. max_files_per_conversation: anyOf: - type: integer - type: 'null' title: Max Files Per Conversation description: Total files a user can upload in one conversation. Uploads are billed per file. Use -1 for no limit, or a value >= max_files_in_memory. type: object title: FileInputConfigWorkflowOverride AgentWorkspaceOverrides-Output: properties: conversation_initiation_client_data_webhook: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataWebhook' - type: 'null' description: The webhook to send conversation initiation client data to webhooks: $ref: '#/components/schemas/ConvAIWebhooks' type: object title: AgentWorkspaceOverrides DynamicVariableUpdateCommonModel: properties: variable_name: type: string title: Variable Name old_value: anyOf: - type: string - type: 'null' title: Old Value new_value: type: string title: New Value updated_at: type: number title: Updated At tool_name: type: string title: Tool Name tool_request_id: type: string title: Tool Request Id type: object required: - variable_name - old_value - new_value - updated_at - tool_name - tool_request_id title: DynamicVariableUpdateCommonModel description: Tracks a dynamic variable update that occurred during tool execution. ListClientsParams: properties: smb_tool_type: type: string const: list_clients title: Smb Tool Type default: list_clients type: object title: ListClientsParams description: List clients ordered by most recently updated, with an optional limit. MCPApprovalPolicy: type: string enum: - auto_approve_all - require_approval_all - require_approval_per_tool title: MCPApprovalPolicy description: Defines the MCP server-level approval policy for tool execution. default: require_approval_all CreateAssetParams: properties: smb_tool_type: type: string const: create_asset title: Smb Tool Type default: create_asset type: object title: CreateAssetParams ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Input: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: type: string const: api_integration_webhook title: Type integration_id: type: string title: Integration Id default: '' credential_id: type: string title: Credential Id default: '' integration_connection_id: type: string title: Integration Connection Id default: '' type: object required: - request_id - tool_name - result_value - is_error - tool_has_been_called - type title: ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel LanguagePresetTranslation: properties: source_hash: type: string title: Source Hash text: type: string title: Text type: object required: - source_hash - text title: LanguagePresetTranslation AnalysisCharging: properties: total: $ref: '#/components/schemas/AnalysisRunningTotal' last_run: $ref: '#/components/schemas/AnalysisRunSnapshot' type: object required: - total - last_run title: AnalysisCharging description: 'Cost of running post-call analysis on this conversation. Present once an analysis pass has run, billed or not.' PlatformCategory: type: string enum: - voice - silence - burst - asr - text_message - reception - other title: PlatformCategory description: Buckets that make up the non-LLM ``platform_charge`` of a conversation. WhatsAppTemplateButtonComponentParams: properties: type: type: string const: button title: Type default: button parameters: items: $ref: '#/components/schemas/WhatsAppTemplateTextParam' type: array title: Parameters index: type: integer title: Index sub_type: type: string title: Sub Type type: object required: - parameters - index - sub_type title: WhatsAppTemplateButtonComponentParams UpdateBookingPageAppearanceParams: properties: smb_tool_type: type: string const: update_booking_page_appearance title: Smb Tool Type default: update_booking_page_appearance type: object title: UpdateBookingPageAppearanceParams Body_Duplicate_Agent_v1_convai_agents__agent_id__duplicate_post: properties: name: anyOf: - type: string - type: 'null' title: Name description: A name to make the agent easier to find examples: - My agent optional: true type: object title: Body_Duplicate_Agent_v1_convai_agents__agent_id__duplicate_post UpdateHolidayParams: properties: smb_tool_type: type: string const: update_holiday title: Smb Tool Type default: update_holiday type: object title: UpdateHolidayParams AgentHoldAudioConfig: properties: audio_path: type: string title: Audio Path description: Storage path of the uploaded clip audio_url: type: string title: Audio Url description: Public CDN URL of the uploaded clip original_filename: type: string title: Original Filename description: Filename of the uploaded clip as provided by the user duration_secs: type: number title: Duration Secs description: Duration of the uploaded clip in seconds size_bytes: type: integer title: Size Bytes description: Size of the uploaded clip in bytes type: object required: - audio_path - audio_url - original_filename - duration_secs - size_bytes title: AgentHoldAudioConfig description: 'Custom hold audio played on loop to callers waiting in the agent''s queue. Set by uploading a file through the agent hold-audio endpoint. Values sent in agent create or update requests are ignored.' ToolRequestModel: properties: tool_config: oneOf: - $ref: '#/components/schemas/WebhookToolConfig-Input' - $ref: '#/components/schemas/ClientToolConfig-Input' - $ref: '#/components/schemas/SystemToolConfig-Input' - $ref: '#/components/schemas/MCPToolConfig-Input' title: Tool Config description: Configuration for the tool discriminator: propertyName: type mapping: client: '#/components/schemas/ClientToolConfig-Input' mcp: '#/components/schemas/MCPToolConfig-Input' system: '#/components/schemas/SystemToolConfig-Input' webhook: '#/components/schemas/WebhookToolConfig-Input' response_mocks: anyOf: - items: $ref: '#/components/schemas/ToolResponseMockConfig-Input' type: array - type: 'null' title: Response Mocks description: Mock responses with optional parameter conditions. Evaluated top-to-bottom; first match wins. type: object required: - tool_config title: ToolRequestModel KnowledgeBaseSortBy: type: string enum: - name - created_at - updated_at - size title: KnowledgeBaseSortBy Body_Patches_an_Agent_settings_v1_convai_agents__agent_id__patch: properties: conversation_config: anyOf: - additionalProperties: true type: object - type: 'null' title: Conversation Config description: Conversation configuration for an agent platform_settings: anyOf: - additionalProperties: true type: object - type: 'null' title: Platform Settings description: Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. workflow: $ref: '#/components/schemas/AgentWorkflowRequestModel' description: Workflow for the agent. This is used to define the flow of the conversation and how the agent interacts with tools. name: anyOf: - type: string - type: 'null' title: Name description: A name to make the agent easier to find examples: - My agent optional: true tags: anyOf: - items: type: string type: array - type: 'null' title: Tags description: Tags to help classify and filter the agent examples: - - Customer Support - Technical Help - Eleven optional: true version_description: anyOf: - type: string - type: 'null' title: Version Description description: Description for this version when publishing changes (only applicable for versioned agents) procedures: anyOf: - additionalProperties: $ref: '#/components/schemas/ProcedureVersionRef' type: object - type: 'null' title: Procedures description: Procedure versions to publish, keyed by procedure_id. When provided, this map replaces the procedures from the current draft or branch tip. When omitted or null, unpublished procedure edits are used if present; otherwise, the branch tip's procedures are retained. Pass an empty object to remove all procedures. type: object title: Body_Patches_an_Agent_settings_v1_convai_agents__agent_id__patch MCPToolConfigOverride-Output: properties: tool_name: type: string title: Tool Name description: The name of the MCP tool force_pre_tool_speech: anyOf: - type: boolean - type: 'null' title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If set, overrides the server''s force_pre_tool_speech setting for this tool.' deprecated: true pre_tool_speech: anyOf: - $ref: '#/components/schemas/PreToolSpeechMode' - type: 'null' description: If set, overrides the server's pre_tool_speech setting for this tool. disable_interruptions: anyOf: - type: boolean - type: 'null' title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If set, overrides the server''s disable_interruptions setting for this tool.' deprecated: true interruption_mode: anyOf: - $ref: '#/components/schemas/ToolInterruptionMode' - type: 'null' description: If set, overrides the server's interruption_mode setting for this tool. tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: string const: 'off' - type: 'null' title: Tool Call Sound description: Overrides the server's tool_call_sound setting for this tool. A sound name plays that sound; 'off' overrides to no sound (silence); null means do not override (inherit the server default). tool_call_sound_behavior: anyOf: - $ref: '#/components/schemas/ToolCallSoundBehavior' - type: 'null' description: If set, overrides the server's tool_call_sound_behavior setting for this tool execution_mode: anyOf: - $ref: '#/components/schemas/ToolExecutionMode' - type: 'null' description: If set, overrides the server's execution_mode setting for this tool response_timeout_secs: anyOf: - type: integer maximum: 300.0 minimum: 5.0 - type: 'null' title: Response Timeout Secs description: If set, overrides the server's response timeout for this MCP tool (seconds). assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Dynamic variable assignments for this MCP tool input_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Input Overrides description: Mapping of json path to input override configuration response_mocks: anyOf: - items: $ref: '#/components/schemas/ToolResponseMockConfig-Output' type: array - type: 'null' title: Response Mocks description: Mock responses with optional parameter conditions. Evaluated top-to-bottom; first match wins. type: object required: - tool_name title: MCPToolConfigOverride LLMInfoModel: properties: llm: $ref: '#/components/schemas/LLM' description: The model identifier. is_checkpoint: type: boolean title: Is Checkpoint description: Whether this is a pinned checkpoint version of a model rather than a top-level alias. max_tokens_limit: type: integer title: Max Tokens Limit description: Maximum number of output tokens the model can generate. max_context_limit: type: integer title: Max Context Limit description: Maximum number of input context tokens the model supports. supports_image_input: type: boolean title: Supports Image Input description: Whether the model supports image file inputs during conversations. supports_document_input: type: boolean title: Supports Document Input description: Whether the model supports document (PDF) file inputs during conversations. supports_parallel_tool_calls: type: boolean title: Supports Parallel Tool Calls description: Whether the model supports calling multiple tools in parallel. available_reasoning_efforts: anyOf: - items: $ref: '#/components/schemas/LLMReasoningEffort' type: array - type: 'null' title: Available Reasoning Efforts description: Available reasoning effort levels for this model. Null if the model does not support configurable reasoning. deprecation_info: anyOf: - $ref: '#/components/schemas/LLMDeprecationInfoModel' - type: 'null' description: Deprecation information if this model is deprecated or scheduled for deprecation. Null if the model is not affected. regional_processing_surcharge: anyOf: - $ref: '#/components/schemas/RegionalProcessingSurchargeInfo' - type: 'null' description: Regional processing surcharge details if this model has additional costs in the current deployment region. Null if no surcharge applies. type: object required: - llm - is_checkpoint - max_tokens_limit - max_context_limit - supports_image_input - supports_document_input - supports_parallel_tool_calls title: LLMInfoModel example: is_checkpoint: false llm: gemini-2.5-flash max_context_limit: 1048576 max_tokens_limit: 8192 supports_document_input: true supports_image_input: true supports_parallel_tool_calls: true ObjectJsonSchemaProperty-Input: properties: property_kind: type: string enum: - array - object title: Property Kind default: object description: type: string title: Description default: '' dynamic_variable: type: string title: Dynamic Variable description: When set, the entire parameter is populated from this dynamic variable at runtime. Mutually exclusive with description (LLM-provided value), constant_value, and is_omitted. default: '' constant_value: anyOf: - additionalProperties: true type: object - type: 'null' title: Constant Value description: When set, the entire object uses this constant JSON value at runtime. Mutually exclusive with description (LLM-provided object), dynamic_variable, and is_omitted. is_omitted: type: boolean title: Is Omitted description: If true, this parameter will be completely omitted from the request. Only valid for optional parameters. Mutually exclusive with description, dynamic_variable, and constant_value. default: false type: type: string const: object title: Type default: object required: items: type: string type: array title: Required properties: additionalProperties: oneOf: - $ref: '#/components/schemas/LiteralJsonSchemaProperty' - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Input' - $ref: '#/components/schemas/ArrayJsonSchemaProperty-Input' type: object title: Properties required_constraints: anyOf: - $ref: '#/components/schemas/RequiredConstraints' - type: 'null' additionalProperties: false type: object title: ObjectJsonSchemaProperty WhatsAppTemplateImageParamDetails: properties: link: type: string title: Link type: object required: - link title: WhatsAppTemplateImageParamDetails GetKnowledgeBaseSummaryFolderResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentSummaryResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. dependent_agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Dependent Agents description: This field is deprecated and will be removed in the future, use the separate endpoint to get dependent agents instead. deprecated: true type: type: string const: folder title: Type children_count: type: integer title: Children Count document_count: type: integer title: Document Count description: Number of non-folder documents anywhere in this folder's subtree (recursive). Counting stops past 1000; auto_sync_info: anyOf: - $ref: '#/components/schemas/AutoSyncInfo' - type: 'null' external_sync_info: anyOf: - $ref: '#/components/schemas/ExternalFolderSyncInfo' - type: 'null' is_frozen: type: boolean title: Is Frozen default: false type: object required: - id - name - metadata - supported_usages - access_info - dependent_agents - type - children_count - document_count title: GetKnowledgeBaseSummaryFolderResponseModel Body_Upload_file_v1_convai_conversations__conversation_id__files_post: properties: file: type: string title: File description: Image or PDF file to upload format: binary type: object required: - file title: Body_Upload_file_v1_convai_conversations__conversation_id__files_post RAGDocumentIndexUsage: properties: used_bytes: type: integer title: Used Bytes type: object required: - used_bytes title: RAGDocumentIndexUsage TTSOutputFormat: type: string enum: - pcm_8000 - pcm_16000 - pcm_22050 - pcm_24000 - pcm_44100 - pcm_48000 - ulaw_8000 title: TTSOutputFormat default: pcm_16000 ASTAndOperatorNode-Output: properties: type: type: string const: and_operator title: Type default: and_operator children: items: $ref: '#/components/schemas/ASTNode-Output' type: array minItems: 2 title: Children description: Child nodes of the logical operator. type: object required: - type - children title: ASTAndOperatorNode ConversationHistoryTwilioPhoneCallModel: properties: direction: $ref: '#/components/schemas/TelephonyDirection' phone_number_id: type: string title: Phone Number Id agent_number: type: string title: Agent Number external_number: type: string title: External Number type: type: string const: twilio title: Type stream_sid: type: string title: Stream Sid call_sid: type: string title: Call Sid type: object required: - direction - phone_number_id - agent_number - external_number - type - stream_sid - call_sid title: ConversationHistoryTwilioPhoneCallModel OptOutSmsReminderParams: properties: smb_tool_type: type: string const: opt_out_sms_reminder title: Smb Tool Type default: opt_out_sms_reminder type: object title: OptOutSmsReminderParams ListAgentProceduresParams: properties: smb_tool_type: type: string const: list_agent_procedures title: Smb Tool Type default: list_agent_procedures type: object title: ListAgentProceduresParams EvaluationSettings-Input: properties: criteria: items: $ref: '#/components/schemas/PromptEvaluationCriteria' type: array title: Criteria description: Individual criteria that the agent should be evaluated against type: object title: EvaluationSettings description: 'Settings to evaluate an agent''s performance. Agents are evaluated against a set of criteria, with success being defined as meeting some combination of those criteria.' ASTNullNode-Input: properties: type: type: string const: null_literal title: Type default: null_literal type: object title: ASTNullNode DependentUnknownAgentIdentifier: properties: referenced_resource_ids: items: type: string type: array title: Referenced Resource Ids description: If the agent is a transitive dependent, contains IDs of the resources that the agent depends on directly. id: type: string title: Id type: type: string const: unknown title: Type default: unknown type: object required: - id title: DependentUnknownAgentIdentifier description: 'A model that represents an agent dependent on a knowledge base/tools to which the user has no direct access.' QueryParamsJsonSchema-Output: properties: properties: additionalProperties: $ref: '#/components/schemas/LiteralJsonSchemaProperty' type: object minProperties: 1 title: Properties required: items: type: string type: array title: Required additionalProperties: false type: object required: - properties title: QueryParamsJsonSchema ASTNode-Output: oneOf: - $ref: '#/components/schemas/ASTStringNode-Output' description: String literal. - $ref: '#/components/schemas/ASTNumberNode-Output' description: Number literal. - $ref: '#/components/schemas/ASTBooleanNode-Output' description: Boolean literal. - $ref: '#/components/schemas/ASTNullNode-Output' description: Null literal. - $ref: '#/components/schemas/ASTLLMNode-Output' description: Value extracted by an LLM according to the given schema. - $ref: '#/components/schemas/ASTDynamicVariableNode-Output' description: Reference to a dynamic variable. - $ref: '#/components/schemas/ASTOrOperatorNode-Output' description: Evaluates to true if any child is true. - $ref: '#/components/schemas/ASTAndOperatorNode-Output' description: Evaluates to true if all children are true. - $ref: '#/components/schemas/ASTEqualsOperatorNode-Output' description: Evaluates to true if the left value equals the right. - $ref: '#/components/schemas/ASTNotEqualsOperatorNode-Output' description: Evaluates to true if the left value does not equal the right. - $ref: '#/components/schemas/ASTGreaterThanOperatorNode-Output' description: Evaluates to true if the left value is greater than the right. - $ref: '#/components/schemas/ASTLessThanOperatorNode-Output' description: Evaluates to true if the left value is less than the right. - $ref: '#/components/schemas/ASTGreaterThanOrEqualsOperatorNode-Output' description: Evaluates to true if the left value is greater than or equal to the right. - $ref: '#/components/schemas/ASTLessThanOrEqualsOperatorNode-Output' description: Evaluates to true if the left value is less than or equal to the right. - $ref: '#/components/schemas/ASTAdditionOperatorNode-Output' description: Adds the left and right values. - $ref: '#/components/schemas/ASTSubtractionOperatorNode-Output' description: Subtracts the right value from the left. - $ref: '#/components/schemas/ASTMultiplicationOperatorNode-Output' description: Multiplies the left value times the right. - $ref: '#/components/schemas/ASTDivisionOperatorNode-Output' description: Divides the left value by the right. - $ref: '#/components/schemas/ASTConditionalOperatorNode-Output' description: Selects one of two expressions based on whether the given condition evaluates to true. discriminator: propertyName: type mapping: add_operator: '#/components/schemas/ASTAdditionOperatorNode-Output' and_operator: '#/components/schemas/ASTAndOperatorNode-Output' boolean_literal: '#/components/schemas/ASTBooleanNode-Output' conditional_operator: '#/components/schemas/ASTConditionalOperatorNode-Output' div_operator: '#/components/schemas/ASTDivisionOperatorNode-Output' dynamic_variable: '#/components/schemas/ASTDynamicVariableNode-Output' eq_operator: '#/components/schemas/ASTEqualsOperatorNode-Output' gt_operator: '#/components/schemas/ASTGreaterThanOperatorNode-Output' gte_operator: '#/components/schemas/ASTGreaterThanOrEqualsOperatorNode-Output' llm: '#/components/schemas/ASTLLMNode-Output' lt_operator: '#/components/schemas/ASTLessThanOperatorNode-Output' lte_operator: '#/components/schemas/ASTLessThanOrEqualsOperatorNode-Output' mul_operator: '#/components/schemas/ASTMultiplicationOperatorNode-Output' neq_operator: '#/components/schemas/ASTNotEqualsOperatorNode-Output' null_literal: '#/components/schemas/ASTNullNode-Output' number_literal: '#/components/schemas/ASTNumberNode-Output' or_operator: '#/components/schemas/ASTOrOperatorNode-Output' string_literal: '#/components/schemas/ASTStringNode-Output' sub_operator: '#/components/schemas/ASTSubtractionOperatorNode-Output' ProcedureDraftResponseModel: properties: procedure_id: type: string title: Procedure Id description: Procedure ID name: type: string maxLength: 200 title: Name description: Procedure name content: type: string maxLength: 50000 title: Content description: Procedure content type: $ref: '#/components/schemas/ProcedureType' description: Procedure type default: free_form trigger: type: string title: Trigger description: When the agent should use this procedure. Empty string means this is a sub-procedure that should only start when another procedure references it. default: '' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: Procedure ID of the folder this procedure is placed in. None means root. type: object required: - procedure_id - name - content title: ProcedureDraftResponseModel example: content: '# Customer Support Procedure 1. Greet the customer...' name: Customer Support Procedure procedure_id: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 trigger: When the customer asks for support type: free_form ToolTypeFilter: type: string enum: - webhook - client - api_integration_webhook title: ToolTypeFilter PostWorkspaceSecretResponseModel: properties: type: type: string const: stored title: Type secret_id: type: string title: Secret Id name: type: string title: Name type: object required: - type - secret_id - name title: PostWorkspaceSecretResponseModel ConversationHistoryFeedbackCommonModel: properties: type: anyOf: - $ref: '#/components/schemas/ConversationFeedbackType' - type: 'null' overall_score: anyOf: - $ref: '#/components/schemas/UserFeedbackScore' - type: 'null' likes: type: integer title: Likes default: 0 dislikes: type: integer title: Dislikes default: 0 rating: anyOf: - type: integer - type: 'null' title: Rating comment: anyOf: - type: string - type: 'null' title: Comment type: object title: ConversationHistoryFeedbackCommonModel VoiceMailDetectionResultSuccessModel: properties: result_type: type: string const: voicemail_detection_success title: Result Type default: voicemail_detection_success status: type: string const: success title: Status default: success voicemail_message: anyOf: - type: string - type: 'null' title: Voicemail Message reason: anyOf: - type: string - type: 'null' title: Reason type: object title: VoiceMailDetectionResultSuccessModel AgentTransfer-Output: properties: agent_id: anyOf: - type: string - type: 'null' title: Agent Id node_id: anyOf: - type: string - type: 'null' title: Node Id condition: type: string title: Condition delay_ms: type: integer title: Delay Ms default: 0 transfer_message: anyOf: - type: string - type: 'null' title: Transfer Message enable_transferred_agent_first_message: type: boolean title: Enable Transferred Agent First Message default: false is_workflow_node_transfer: type: boolean title: Is Workflow Node Transfer default: false preserve_client_tts_overrides: type: boolean title: Preserve Client Tts Overrides description: Defines whether TTS client overrides should be carried over to the transferred agent. default: false type: object required: - condition title: AgentTransfer BackgroundSoundConfig: properties: source_type: anyOf: - $ref: '#/components/schemas/BackgroundSoundSourceType' - type: 'null' description: The type of background sound source. source_id: anyOf: - $ref: '#/components/schemas/BackgroundSoundPresetId' - type: 'null' description: Identifier for the sound source. volume: type: number maximum: 1.0 minimum: 0.01 title: Volume description: Volume level for background sound (0.01 to 1.0). default: 0.15 crossfade_loop: type: boolean title: Crossfade Loop description: Apply a crossfade at the loop boundary to avoid audible pops when the sound loops. default: true type: object title: BackgroundSoundConfig TransferToAgentToolResultSuccessModel-Input: properties: result_type: type: string const: transfer_to_agent_success title: Result Type default: transfer_to_agent_success status: type: string const: success title: Status default: success from_agent: type: string title: From Agent to_agent: type: string title: To Agent to_node: anyOf: - type: string - type: 'null' title: To Node condition: type: string title: Condition delay_ms: type: integer title: Delay Ms default: 0 transfer_message: anyOf: - type: string - type: 'null' title: Transfer Message enable_transferred_agent_first_message: type: boolean title: Enable Transferred Agent First Message default: false branch_info: anyOf: - oneOf: - $ref: '#/components/schemas/TransferBranchInfoTrafficSplit' - $ref: '#/components/schemas/TransferBranchInfoDefaultingToMain' discriminator: propertyName: branch_reason mapping: defaulting_to_main: '#/components/schemas/TransferBranchInfoDefaultingToMain' traffic_split: '#/components/schemas/TransferBranchInfoTrafficSplit' - type: 'null' title: Branch Info preserve_client_tts_overrides: type: boolean title: Preserve Client Tts Overrides default: false type: object required: - from_agent - to_agent - condition title: TransferToAgentToolResultSuccessModel WhatsAppConversationInfo: properties: direction: type: string enum: - inbound - outbound - unknown title: Direction default: unknown whatsapp_phone_number_id: anyOf: - type: string - type: 'null' title: Whatsapp Phone Number Id whatsapp_user_id: type: string title: Whatsapp User Id awaiting_first_user_message: anyOf: - type: boolean - type: 'null' title: Awaiting First User Message type: object required: - whatsapp_user_id title: WhatsAppConversationInfo AgentTestFolderPathSegmentResponseModel: properties: id: type: string title: Id name: type: string title: Name default: '' type: object required: - id title: AgentTestFolderPathSegmentResponseModel WorkflowToolResponseModel-Input: properties: steps: items: oneOf: - $ref: '#/components/schemas/WorkflowToolEdgeStepModel' - $ref: '#/components/schemas/WorkflowToolNestedToolsStepModel-Input' - $ref: '#/components/schemas/WorkflowToolMaxIterationsExceededStepModel' discriminator: propertyName: type mapping: edge: '#/components/schemas/WorkflowToolEdgeStepModel' max_iterations_exceeded: '#/components/schemas/WorkflowToolMaxIterationsExceededStepModel' nested_tools: '#/components/schemas/WorkflowToolNestedToolsStepModel-Input' type: array title: Steps type: object title: WorkflowToolResponseModel description: A common model for workflow tool responses. KnowledgeBaseToolStatus: type: string enum: - success - no_matching_documents - no_results title: KnowledgeBaseToolStatus default: success KnowledgeBaseLocator: properties: type: $ref: '#/components/schemas/KnowledgeBaseDocumentType' description: The type of the knowledge base name: type: string title: Name description: The name of the knowledge base id: type: string title: Id description: The ID of the knowledge base usage_mode: $ref: '#/components/schemas/DocumentUsageModeEnum' description: The usage mode of the knowledge base default: auto type: object required: - type - name - id title: KnowledgeBaseLocator example: id: '123' name: My Knowledge Base type: file usage_mode: auto InteractionBudget: type: string enum: - realtime - 5_minutes - 10_minutes - 1_hour title: InteractionBudget ListServicesParams: properties: list_kwargs: additionalProperties: true type: object title: List Kwargs smb_tool_type: type: string const: list_services title: Smb Tool Type default: list_services type: object title: ListServicesParams TextNormalisationType: type: string enum: - system_prompt - elevenlabs title: TextNormalisationType description: Method for converting numbers to words before sending to TTS default: system_prompt InboundSIPTrunkConfigRequestModel: properties: allowed_addresses: anyOf: - items: type: string type: array - type: 'null' title: Allowed Addresses description: List of IP addresses that are allowed to use the trunk. Each item in the list can be an individual IP address or a Classless Inter-Domain Routing notation representing a CIDR block. allowed_numbers: anyOf: - items: type: string type: array - type: 'null' title: Allowed Numbers description: List of phone numbers that are allowed to use the trunk. media_encryption: $ref: '#/components/schemas/SIPMediaEncryptionEnum' description: Whether or not to encrypt media (data layer). default: allowed credentials: anyOf: - $ref: '#/components/schemas/SIPTrunkCredentialsRequestModel' - type: 'null' description: Optional digest authentication credentials (username/password). remote_domains: anyOf: - items: type: string type: array - type: 'null' title: Remote Domains description: Domains of remote SIP servers used to validate TLS certificates. attributes_to_headers: additionalProperties: type: string type: object title: Attributes To Headers description: Map of dynamic variable name to header name for attributes_to_headers type: object title: InboundSIPTrunkConfigRequestModel LLMLiteralJsonSchemaProperty: properties: type: anyOf: - type: string enum: - boolean - string - integer - number - items: type: string type: array maxItems: 2 minItems: 2 title: Type description: type: string minLength: 0 title: Description enum: anyOf: - items: type: string type: array - type: 'null' title: Enum description: List of allowed string values for string type parameters type: object required: - type - description title: LLMLiteralJsonSchemaProperty CreateSIPTrunkPhoneNumberRequestV2: properties: phone_number: type: string title: Phone Number description: Phone number label: type: string title: Label description: Label for the phone number supports_inbound: type: boolean title: Supports Inbound description: This field is deprecated and will be removed in the future. Whether this phone number supports inbound calls default: true deprecated: true supports_outbound: type: boolean title: Supports Outbound description: This field is deprecated and will be removed in the future. Whether this phone number supports outbound calls default: true deprecated: true provider: type: string const: sip_trunk title: Provider default: sip_trunk agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID to assign the phone number to inbound_trunk_config: anyOf: - $ref: '#/components/schemas/InboundSIPTrunkConfigRequestModel' - type: 'null' outbound_trunk_config: anyOf: - $ref: '#/components/schemas/OutboundSIPTrunkConfigRequestModel' - type: 'null' type: object required: - phone_number - label title: CreateSIPTrunkPhoneNumberRequestV2 ProcedureListItemResponseModel: properties: procedure_id: type: string title: Procedure Id description: Procedure ID version_id: anyOf: - type: string - type: 'null' title: Version Id description: Version ID of a version of the procedure. None for a procedure never versioned. name: type: string title: Name description: Procedure name default: '' type: $ref: '#/components/schemas/ProcedureType' description: Procedure type default: free_form trigger: type: string title: Trigger description: When the agent should use this procedure. Empty string means this is a sub-procedure that should only start when another procedure references it. default: '' has_draft: type: boolean title: Has Draft description: True when the procedure has unpublished draft changes on this branch (a newly created or edited procedure not yet published). When true, the name, type, and trigger reflect that draft. referenced_tool_ids: items: type: string type: array title: Referenced Tool Ids description: Tool IDs referenced in the procedure content referenced_kb_ids: items: type: string type: array title: Referenced Kb Ids description: Knowledge base IDs referenced in the procedure content referenced_procedure_ids: items: type: string type: array title: Referenced Procedure Ids description: Procedure IDs referenced in the procedure content referenced_dynamic_variables: items: type: string type: array title: Referenced Dynamic Variables description: Dynamic variable names used in the procedure content folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: Procedure ID of the folder this procedure is placed in. None means root. type: object required: - procedure_id - has_draft title: ProcedureListItemResponseModel example: has_draft: false name: Customer Support Procedure procedure_id: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 referenced_dynamic_variables: - customer_id referenced_kb_ids: - kb_123 referenced_procedure_ids: - agtprc_other referenced_tool_ids: - tool_123 trigger: When the customer asks for support type: free_form version_id: agtprcv_7rbqxer9o12cyxi55ckw6sgz1dl4 PatchConvAISettingsRequest: properties: conversation_initiation_client_data_webhook: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataWebhook' - type: 'null' webhooks: $ref: '#/components/schemas/ConvAIWebhooks' can_use_mcp_servers: type: boolean title: Can Use Mcp Servers description: Whether the workspace can use MCP servers default: false rag_retention_period_days: type: integer maximum: 30.0 exclusiveMinimum: 0.0 title: Rag Retention Period Days default: 10 conversation_embedding_retention_days: anyOf: - type: integer maximum: 365.0 exclusiveMinimum: 0.0 - type: 'null' title: Conversation Embedding Retention Days description: Days to retain conversation embeddings. None means use the system default (30 days). default_livekit_stack: $ref: '#/components/schemas/LivekitStackType' default: standard type: object title: PatchConvAISettingsRequest UpdateServiceParams: properties: smb_tool_type: type: string const: update_service title: Smb Tool Type default: update_service type: object title: UpdateServiceParams description: Update an existing service's information. EvaluationResultFilter: type: string enum: - success - failure - unknown - error title: EvaluationResultFilter MCPServerMetadataResponseModel: properties: created_at: type: integer title: Created At owner_user_id: anyOf: - type: string - type: 'null' title: Owner User Id type: object required: - created_at title: MCPServerMetadataResponseModel ASTStringNode-Output: properties: type: type: string const: string_literal title: Type default: string_literal value: type: string title: Value description: Value of this literal. type: object required: - type - value title: ASTStringNode ConversationHistoryTranscriptCommonModel-Input: properties: role: type: string enum: - user - agent title: Role agent_metadata: anyOf: - $ref: '#/components/schemas/AgentMetadata' - type: 'null' message: anyOf: - type: string - type: 'null' title: Message multivoice_message: anyOf: - $ref: '#/components/schemas/ConversationHistoryMultivoiceMessageModel' - type: 'null' tool_calls: items: $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallCommonModel-Input' type: array title: Tool Calls tool_results: items: oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptOtherToolsResultCommonModel' - $ref: '#/components/schemas/ConversationHistoryTranscriptSystemToolResultCommonModel-Input' - $ref: '#/components/schemas/ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Input' - $ref: '#/components/schemas/ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Input' type: array title: Tool Results feedback: anyOf: - $ref: '#/components/schemas/UserFeedback' - type: 'null' llm_override: anyOf: - type: string - type: 'null' title: Llm Override producing_llm: anyOf: - type: string - type: 'null' title: Producing Llm time_in_call_secs: type: integer title: Time In Call Secs conversation_turn_metrics: anyOf: - $ref: '#/components/schemas/ConversationTurnMetrics' - type: 'null' rag_retrieval_info: anyOf: - $ref: '#/components/schemas/RagRetrievalInfo' - type: 'null' llm_usage: anyOf: - $ref: '#/components/schemas/LLMUsage-Input' - type: 'null' interrupted: type: boolean title: Interrupted default: false ignored_as_backchannel: type: boolean title: Ignored As Backchannel default: false original_message: anyOf: - type: string - type: 'null' title: Original Message reasoning: items: $ref: '#/components/schemas/ConversationReasoningModel' type: array title: Reasoning source_medium: anyOf: - $ref: '#/components/schemas/ChatSourceMedium' - type: 'null' source_event_id: anyOf: - type: integer - type: 'null' title: Source Event Id used_static_kb_document_ids: items: type: string type: array title: Used Static Kb Document Ids user_identifier: anyOf: - type: string - type: 'null' title: User Identifier id: anyOf: - type: string - type: 'null' title: Id triggered_guardrails: items: $ref: '#/components/schemas/TriggeredGuardrailCommonModel' type: array title: Triggered Guardrails type: object required: - role - time_in_call_secs title: ConversationHistoryTranscriptCommonModel WidgetStyles: properties: base: anyOf: - type: string - type: 'null' title: Base description: The base background color. base_hover: anyOf: - type: string - type: 'null' title: Base Hover description: The color of the base background when hovered. base_active: anyOf: - type: string - type: 'null' title: Base Active description: The color of the base background when active (clicked). base_border: anyOf: - type: string - type: 'null' title: Base Border description: The color of the border against the base background. base_subtle: anyOf: - type: string - type: 'null' title: Base Subtle description: The color of subtle text against the base background. base_primary: anyOf: - type: string - type: 'null' title: Base Primary description: The color of primary text against the base background. base_error: anyOf: - type: string - type: 'null' title: Base Error description: The color of error text against the base background. accent: anyOf: - type: string - type: 'null' title: Accent description: The accent background color. accent_hover: anyOf: - type: string - type: 'null' title: Accent Hover description: The color of the accent background when hovered. accent_active: anyOf: - type: string - type: 'null' title: Accent Active description: The color of the accent background when active (clicked). accent_border: anyOf: - type: string - type: 'null' title: Accent Border description: The color of the border against the accent background. accent_subtle: anyOf: - type: string - type: 'null' title: Accent Subtle description: The color of subtle text against the accent background. accent_primary: anyOf: - type: string - type: 'null' title: Accent Primary description: The color of primary text against the accent background. overlay_padding: anyOf: - type: number - type: 'null' title: Overlay Padding description: The padding around the edges of the viewport. button_radius: anyOf: - type: number - type: 'null' title: Button Radius description: The radius of the buttons. input_radius: anyOf: - type: number - type: 'null' title: Input Radius description: The radius of the input fields. bubble_radius: anyOf: - type: number - type: 'null' title: Bubble Radius description: The radius of the chat bubbles. sheet_radius: anyOf: - type: number - type: 'null' title: Sheet Radius description: The default radius of sheets. compact_sheet_radius: anyOf: - type: number - type: 'null' title: Compact Sheet Radius description: The radius of the sheet in compact mode. dropdown_sheet_radius: anyOf: - type: number - type: 'null' title: Dropdown Sheet Radius description: The radius of the dropdown sheet. type: object title: WidgetStyles ASTNotEqualsOperatorNode-Input: properties: type: type: string const: neq_operator title: Type default: neq_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTNotEqualsOperatorNode ASRInputFormat: type: string enum: - pcm_8000 - pcm_16000 - pcm_22050 - pcm_24000 - pcm_44100 - pcm_48000 - ulaw_8000 title: ASRInputFormat default: pcm_16000 GetPhoneNumberSIPTrunkResponseModel: properties: phone_number: type: string title: Phone Number description: Phone number label: type: string title: Label description: Label for the phone number supports_inbound: type: boolean title: Supports Inbound description: This field is deprecated and will be removed in the future. Whether this phone number supports inbound calls default: true deprecated: true supports_outbound: type: boolean title: Supports Outbound description: This field is deprecated and will be removed in the future. Whether this phone number supports outbound calls default: true deprecated: true phone_number_id: type: string title: Phone Number Id description: The ID of the phone number assigned_agent: anyOf: - $ref: '#/components/schemas/PhoneNumberAgentInfo' - type: 'null' description: The agent that is assigned to the phone number provider: type: string const: sip_trunk title: Provider description: Phone provider default: sip_trunk provider_config: anyOf: - $ref: '#/components/schemas/GetPhoneNumberOutboundSIPTrunkConfigResponseModel' - type: 'null' deprecated: true outbound_trunk: anyOf: - $ref: '#/components/schemas/GetPhoneNumberOutboundSIPTrunkConfigResponseModel' - type: 'null' description: Configuration of the Outbound SIP trunk - if configured. inbound_trunk: anyOf: - $ref: '#/components/schemas/GetPhoneNumberInboundSIPTrunkConfigResponseModel' - type: 'null' description: Configuration of the Inbound SIP trunk - if configured. livekit_stack: $ref: '#/components/schemas/LivekitStackType' description: Type of Livekit stack used for this number. store_sip_messages: type: boolean title: Store Sip Messages description: Whether to store SIP messages for this phone number. default: true type: object required: - phone_number - label - phone_number_id - livekit_stack title: GetPhoneNumberSIPTrunkResponseModel example: label: Sales Team livekit_stack: standard phone_number: '+1987654321' phone_number_id: phone_456 provider: sip_trunk Tool: properties: name: type: string title: Name title: anyOf: - type: string - type: 'null' title: Title description: anyOf: - type: string - type: 'null' title: Description inputSchema: additionalProperties: true type: object title: Inputschema execution: anyOf: - $ref: '#/components/schemas/ToolExecution' - type: 'null' outputSchema: anyOf: - additionalProperties: true type: object - type: 'null' title: Outputschema icons: anyOf: - items: $ref: '#/components/schemas/Icon' type: array - type: 'null' title: Icons annotations: anyOf: - $ref: '#/components/schemas/ToolAnnotations' - type: 'null' _meta: anyOf: - additionalProperties: true type: object - type: 'null' title: Meta type: object required: - name - inputSchema title: Tool description: Definition for a tool the client can call. TwilioMachineDetectionConfig: properties: mode: $ref: '#/components/schemas/TwilioMachineDetectionMode' description: How thorough the detection should be. `enable` returns a verdict as soon as Twilio can tell a human from a machine. `detect_message_end` also waits for the voicemail greeting to finish, which is what produces the `machine_end_*` verdicts, but returns a result later. default: enable type: object title: TwilioMachineDetectionConfig description: How to run Twilio's carrier-level answering machine detection (AMD) on a call. RagConfigWorkflowOverride-Output: properties: enabled: anyOf: - type: boolean - type: 'null' title: Enabled embedding_model: anyOf: - $ref: '#/components/schemas/EmbeddingModelEnum' - type: 'null' max_vector_distance: anyOf: - type: number - type: 'null' title: Max Vector Distance description: Maximum vector distance of retrieved chunks. examples: - 0.5 max_documents_length: anyOf: - type: integer - type: 'null' title: Max Documents Length description: Maximum total length of document chunks retrieved from RAG. examples: - '50000' max_retrieved_rag_chunks_count: anyOf: - type: integer - type: 'null' title: Max Retrieved Rag Chunks Count description: Maximum number of RAG document chunks to initially retrieve from the vector store. These are then further filtered by vector distance and total length. examples: - 5 num_candidates: anyOf: - type: integer - type: 'null' title: Num Candidates description: Number of candidates evaluated in ANN vector search. Higher number means better results, but higher latency. Minimum recommended value is 100. If disabled, the default value is used. examples: - 300 query_rewrite_prompt_override: anyOf: - type: string - type: 'null' title: Query Rewrite Prompt Override description: Custom prompt for rewriting user queries before RAG retrieval. The conversation history will be automatically appended at the end. If not set, the default prompt will be used. examples: - You are given a conversation between a user and an assistant. Rewrite the last question to be self-contained and clear. knowledge_base_tool_info: anyOf: - $ref: '#/components/schemas/KnowledgeBaseToolInfo' - type: 'null' description: When set, the agent uses the knowledge_base tool instead of the legacy knowledge_base_rag tool. None means the agent is not opted in. type: object title: RagConfigWorkflowOverride MCPServerRequestModel: properties: config: $ref: '#/components/schemas/MCPServerConfig-Input' description: Configuration details for the MCP Server. type: object required: - config title: MCPServerRequestModel description: Request model for creating/updating an MCP Server configuration. GetScheduleParams: properties: smb_tool_type: type: string const: get_schedule title: Smb Tool Type default: get_schedule include_location_filter: type: boolean title: Include Location Filter default: false type: object title: GetScheduleParams UpdateOrderParams: properties: smb_tool_type: type: string const: update_order title: Smb Tool Type default: update_order type: object title: UpdateOrderParams TurnModel: type: string enum: - turn_v2 - turn_v3 title: TurnModel description: Version of the turn detection model to use. default: turn_v3 EndCallTriggerAction: properties: type: type: string const: end_call title: Type default: end_call type: object title: EndCallTriggerAction MediaCodec: type: string enum: - G722/8000 - PCMU/8000 - PCMA/8000 title: MediaCodec AgentDeploymentRequestItem: properties: branch_id: type: string title: Branch Id description: ID of the branch to deploy examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj deployment_strategy: title: Deployment Strategy discriminator: propertyName: type mapping: percentage: '#/components/schemas/AgentDeploymentPercentageStrategy' $ref: '#/components/schemas/AgentDeploymentPercentageStrategy' type: object required: - branch_id - deployment_strategy title: AgentDeploymentRequestItem SIPLogMessage: properties: call_id: type: string title: Call Id phone_numbers: items: type: string type: array title: Phone Numbers local_address: type: string title: Local Address remote_address: type: string title: Remote Address transport: type: string title: Transport raw_message: type: string title: Raw Message error_message: type: string title: Error Message direction: $ref: '#/components/schemas/SIPLogMessageDirection' created_at_unix_micro: type: integer title: Created At Unix Micro type: object required: - call_id - phone_numbers - local_address - remote_address - transport - raw_message - error_message - direction - created_at_unix_micro title: SIPLogMessage ConversationHistoryTranscriptOtherToolsResultCommonModel: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: anyOf: - type: string enum: - client - webhook - mcp - code - type: 'null' title: Type type: object required: - request_id - tool_name - result_value - is_error - tool_has_been_called title: ConversationHistoryTranscriptOtherToolsResultCommonModel SupportedVoice: properties: label: type: string minLength: 1 title: Label voice_id: type: string minLength: 1 title: Voice Id description: anyOf: - type: string - type: 'null' title: Description language: anyOf: - type: string - type: 'null' title: Language model_family: anyOf: - $ref: '#/components/schemas/TTSModelFamily' - type: 'null' optimize_streaming_latency: anyOf: - $ref: '#/components/schemas/TTSOptimizeStreamingLatency' - type: 'null' stability: anyOf: - type: number maximum: 1.0 minimum: 0.0 - type: 'null' title: Stability speed: anyOf: - type: number maximum: 1.2 minimum: 0.7 - type: 'null' title: Speed similarity_boost: anyOf: - type: number maximum: 1.0 minimum: 0.0 - type: 'null' title: Similarity Boost type: object required: - label - voice_id title: SupportedVoice CancelCalendarEventParams: properties: smb_tool_type: type: string const: cancel_calendar_event title: Smb Tool Type default: cancel_calendar_event type: object title: CancelCalendarEventParams AgentTestingSettings: properties: attached_tests: items: $ref: '#/components/schemas/AttachedTestModel' type: array maxItems: 5000 minItems: 0 title: Attached Tests description: List of test IDs that should be run for this agent type: object title: AgentTestingSettings description: Settings for agent testing configuration. example: attached_tests: - environment: staging test_id: test_123 workflow_node_id: node_abc - test_id: test_456 referenced_tests_ids: - test_123 - test_456 WorkflowExpressionConditionModel-Output: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: expression title: Type default: expression expression: $ref: '#/components/schemas/ASTNode-Output' description: Expression to evaluate. type: object required: - label - type - expression title: WorkflowExpressionConditionModel PhoneNumberAgentInfo: properties: agent_id: type: string title: Agent Id description: The ID of the agent agent_name: type: string title: Agent Name description: The name of the agent environment: anyOf: - type: string - type: 'null' title: Environment description: Environment to use for resolving environment variables on calls to this number. branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: Agent branch to use for calls to this number. type: object required: - agent_id - agent_name title: PhoneNumberAgentInfo example: agent_id: F3Pbu5gP6NNKBscdCdwB agent_name: My Agent DeleteGroupSessionParams: properties: smb_tool_type: type: string const: delete_group_session title: Smb Tool Type default: delete_group_session type: object title: DeleteGroupSessionParams description: 'Permanently remove a previously-cancelled group session. Group analogue of ``delete_calendar_event``: cancel (``cancel_group_session_for_all``) is the soft, history-preserving step; this tool is the irreversible follow-up that drops the row from Mongo and the staff Google Calendar entirely. The backend rejects the call (422) if the session hasn''t been cancelled yet, so the only safe path is cancel-then-delete.' UpdateStaffParams: properties: smb_tool_type: type: string const: update_staff title: Smb Tool Type default: update_staff type: object title: UpdateStaffParams description: Update an existing staff member's information. ConversationHistoryTranscriptSystemToolResultCommonModel-Input: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: type: string const: system title: Type result: anyOf: - oneOf: - $ref: '#/components/schemas/EndCallToolResultModel' - $ref: '#/components/schemas/LanguageDetectionToolResultModel' - $ref: '#/components/schemas/TransferToAgentToolResultSuccessModel-Input' - $ref: '#/components/schemas/TransferToAgentToolResultErrorModel' - $ref: '#/components/schemas/TransferToNumberResultTwilioSuccessModel' - $ref: '#/components/schemas/TransferToNumberResultSipSuccessModel' - $ref: '#/components/schemas/TransferToNumberResultExotelSuccessModel' - $ref: '#/components/schemas/TransferToNumberResultErrorModel' - $ref: '#/components/schemas/SkipTurnToolResponseModel' - $ref: '#/components/schemas/PlayDTMFResultSuccessModel' - $ref: '#/components/schemas/PlayDTMFResultErrorModel' - $ref: '#/components/schemas/VoiceMailDetectionResultSuccessModel' - $ref: '#/components/schemas/TestToolResultModel' - $ref: '#/components/schemas/KnowledgeBaseRagToolResultModel' - $ref: '#/components/schemas/KnowledgeBaseToolResultModel' - $ref: '#/components/schemas/StartProcedureToolResultSuccessModel' - $ref: '#/components/schemas/StartProcedureToolResultErrorModel' - $ref: '#/components/schemas/EndProcedureToolResultSuccessModel' - $ref: '#/components/schemas/EndProcedureToolResultErrorModel' - $ref: '#/components/schemas/DummyToolResultModel' discriminator: propertyName: result_type mapping: dummy: '#/components/schemas/DummyToolResultModel' end_call_success: '#/components/schemas/EndCallToolResultModel' end_procedure_error: '#/components/schemas/EndProcedureToolResultErrorModel' end_procedure_success: '#/components/schemas/EndProcedureToolResultSuccessModel' knowledge_base_rag_success: '#/components/schemas/KnowledgeBaseRagToolResultModel' knowledge_base_success: '#/components/schemas/KnowledgeBaseToolResultModel' language_detection_success: '#/components/schemas/LanguageDetectionToolResultModel' play_dtmf_error: '#/components/schemas/PlayDTMFResultErrorModel' play_dtmf_success: '#/components/schemas/PlayDTMFResultSuccessModel' skip_turn_success: '#/components/schemas/SkipTurnToolResponseModel' start_procedure_error: '#/components/schemas/StartProcedureToolResultErrorModel' start_procedure_success: '#/components/schemas/StartProcedureToolResultSuccessModel' testing_tool_result: '#/components/schemas/TestToolResultModel' transfer_to_agent_error: '#/components/schemas/TransferToAgentToolResultErrorModel' transfer_to_agent_success: '#/components/schemas/TransferToAgentToolResultSuccessModel-Input' transfer_to_number_error: '#/components/schemas/TransferToNumberResultErrorModel' transfer_to_number_exotel_success: '#/components/schemas/TransferToNumberResultExotelSuccessModel' transfer_to_number_sip_success: '#/components/schemas/TransferToNumberResultSipSuccessModel' transfer_to_number_twilio_success: '#/components/schemas/TransferToNumberResultTwilioSuccessModel' voicemail_detection_success: '#/components/schemas/VoiceMailDetectionResultSuccessModel' - type: 'null' title: Result type: object required: - request_id - tool_name - result_value - is_error - tool_has_been_called - type title: ConversationHistoryTranscriptSystemToolResultCommonModel PlayDTMFToolConfig: properties: system_tool_type: type: string const: play_keypad_touch_tone title: System Tool Type default: play_keypad_touch_tone use_out_of_band_dtmf: type: boolean title: Use Out Of Band Dtmf description: Send DTMF tones as out-of-band RTP events (RFC 4733) instead of in-band audio. Only effective for SIP trunk imported numbers. default: true suppress_turn_after_dtmf: type: boolean title: Suppress Turn After Dtmf description: If true, the agent will not generate further speech after playing DTMF tones. This prevents the agent's speech from interfering with IVR systems. default: false type: object title: PlayDTMFToolConfig description: 'Allows the agent to play DTMF tones during a phone call. This tool can be used to interact with automated phone systems, such as navigating phone menus, entering extensions, or inputting numeric codes.' ConversationInitiationSource: type: string enum: - unknown - android_sdk - node_js_sdk - react_native_sdk - react_sdk - js_sdk - python_sdk - widget - sip_trunk - twilio - exotel - genesys - avaya - audiocodes - swift_sdk - whatsapp - twilio_sms - flutter_sdk - zendesk_integration - slack_integration - telegram_integration - intercom_integration - freshdesk_integration - salesforce_integration - template_preview - genesys_bot_connector - subagent_tool title: ConversationInitiationSource description: Enum representing the possible sources for conversation initiation. default: unknown ASTNumberNode-Input: properties: type: type: string const: number_literal title: Type default: number_literal value: anyOf: - type: number - type: integer title: Value description: Value of this literal. type: object required: - value title: ASTNumberNode GetSecretDependenciesResponseModel: properties: dependencies: anyOf: - items: oneOf: - $ref: '#/components/schemas/DependentAvailableToolIdentifier' - $ref: '#/components/schemas/DependentUnknownToolIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableToolIdentifier' unknown: '#/components/schemas/DependentUnknownToolIdentifier' type: array - items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array - items: $ref: '#/components/schemas/DependentPhoneNumberIdentifier' type: array title: Dependencies next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor description: Cursor for fetching the next page of dependencies type: object required: - dependencies title: GetSecretDependenciesResponseModel MessagesSearchResult: properties: conversation_id: type: string title: Conversation Id agent_id: type: string title: Agent Id agent_name: anyOf: - type: string - type: 'null' title: Agent Name transcript_index: type: integer title: Transcript Index chunk_text: type: string title: Chunk Text chunk_highlights: anyOf: - items: $ref: '#/components/schemas/SearchHighlightSegment' type: array - type: 'null' title: Chunk Highlights score: type: number title: Score conversation_start_time_unix_secs: type: integer title: Conversation Start Time Unix Secs type: object required: - conversation_id - agent_id - transcript_index - chunk_text - score - conversation_start_time_unix_secs title: MessagesSearchResult description: "transcript_index: index of the message in the conversation transcript\nchunk_text: text of the transcript; transcript messages if very long could have several chunks.\nchunk_highlights: chunk_text split into matched/unmatched segments for highlighting.\n Only populated for keyword/text search, not semantic search.\nscore: similarity score of the message to the search query" LLMReasoningEffort: type: string enum: - none - minimal - low - medium - high - xhigh - max title: LLMReasoningEffort GetAppointmentByConfirmationNumberParams: properties: smb_tool_type: type: string const: get_appointment_by_confirmation_number title: Smb Tool Type default: get_appointment_by_confirmation_number type: object title: GetAppointmentByConfirmationNumberParams description: 'Look up an appointment by the booking confirmation number the caller quotes. The confirmation number is the 8-character code shown on the booking confirmation page (e.g. ``#01ABCDEF``). Callers may read it back with or without the leading ``#`` and with varied spacing; the tool normalizes the input and does a prefix match on the stored calendar item id.' TurnConfigOverride: properties: soft_timeout_config: anyOf: - $ref: '#/components/schemas/SoftTimeoutConfigOverride' - type: 'null' description: Configuration for soft timeout functionality. Provides immediate feedback during longer LLM responses. type: object title: TurnConfigOverride example: soft_timeout_config: message: Hhmmmm...yeah. RAGIndexBatchSuccessfulResponseModel: properties: status: type: string const: success title: Status default: success data: $ref: '#/components/schemas/RAGDocumentIndexResponseModel' type: object required: - status - data title: RAGIndexBatchSuccessfulResponseModel Body_Simulates_a_conversation_v1_convai_agents__agent_id__simulate_conversation_post: properties: simulation_specification: $ref: '#/components/schemas/ConversationSimulationSpecification' description: A specification detailing how the conversation should be simulated extra_evaluation_criteria: anyOf: - items: $ref: '#/components/schemas/PromptEvaluationCriteria' type: array - type: 'null' title: Extra Evaluation Criteria description: A list of evaluation criteria to test new_turns_limit: type: integer title: New Turns Limit description: Maximum number of new turns to generate in the conversation simulation default: 10000 type: object required: - simulation_specification title: Body_Simulates_a_conversation_v1_convai_agents__agent_id__simulate_conversation_post AlertingWebhookNotifier: properties: type: type: string const: webhook title: Type default: webhook webhook_id: type: string title: Webhook Id description: ID of the workspace webhook to deliver alert lifecycle notifications to. type: object required: - webhook_id title: AlertingWebhookNotifier AttachedSystemEvaluationRef: properties: source: type: string const: system title: Source analysis_item_id: type: string enum: - __system_eval_criteria_sentiment - __system_eval_criteria_frustration title: Analysis Item Id description: Id of the referenced built-in system evaluation. scope: $ref: '#/components/schemas/AnalysisScope' description: Transcript context ('conversation' or 'agent') used when running this item. default: conversation weight: anyOf: - type: number - type: 'null' title: Weight description: Optional relative weight for aggregate scoring. type: object required: - source - analysis_item_id title: AttachedSystemEvaluationRef PromptAgentAPIModelWorkflowOverride-Output: properties: prompt: anyOf: - type: string - type: 'null' title: Prompt description: The prompt for the agent x-convai-client-override: true llm: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: The LLM to query with the prompt and the chat history. If using data residency, the LLM must be supported in the data residency environment x-convai-client-override: true reasoning_effort: anyOf: - $ref: '#/components/schemas/LLMReasoningEffort' - type: 'null' description: Reasoning effort of the model. Only available for some models. thinking_budget: anyOf: - type: integer - type: 'null' title: Thinking Budget description: Max number of tokens used for thinking. Use 0 to turn off if supported by the model. enable_reasoning_summary: anyOf: - type: boolean - type: 'null' title: Enable Reasoning Summary description: Enable model reasoning summaries. When disabled, we do not request summaries from provider if possible for faster TTFB. Not ZRM compatible. temperature: anyOf: - type: number - type: 'null' title: Temperature description: The temperature for the LLM. Defaults to 0. Set to null to omit the parameter from the LLM request entirely (useful for custom LLMs that reject the temperature field). max_tokens: anyOf: - type: integer - type: 'null' title: Max Tokens description: If greater than 0, maximum number of tokens the LLM can predict tool_ids: anyOf: - items: type: string type: array - type: 'null' title: Tool Ids description: A list of IDs of tools used by the agent x-convai-client-override: true built_in_tools: anyOf: - $ref: '#/components/schemas/BuiltInToolsWorkflowOverride-Output' - type: 'null' description: Built-in system tools to be used by the agent enable_parallel_tool_calls: anyOf: - type: boolean - type: 'null' title: Enable Parallel Tool Calls description: Enable parallel tool calling. When enabled, the agent can execute multiple tools in parallel within a single turn. Not supported by all models. mcp_server_ids: anyOf: - items: type: string type: array - type: 'null' title: Mcp Server Ids description: A list of MCP server ids to be used by the agent native_mcp_server_ids: anyOf: - items: type: string type: array - type: 'null' title: Native Mcp Server Ids description: A list of Native MCP server ids to be used by the agent x-convai-client-override: true knowledge_base: anyOf: - items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array - type: 'null' title: Knowledge Base description: A list of knowledge bases to be used by the agent x-convai-client-override: true custom_llm: anyOf: - $ref: '#/components/schemas/CustomLLM' - type: 'null' description: Definition for a custom LLM if LLM field is set to 'CUSTOM_LLM' ignore_default_personality: anyOf: - type: boolean - type: 'null' title: Ignore Default Personality description: Whether to remove the default personality lines from the system prompt rag: anyOf: - $ref: '#/components/schemas/RagConfigWorkflowOverride-Output' - type: 'null' description: Configuration for RAG timezone: anyOf: - type: string - type: 'null' title: Timezone description: Timezone for displaying current time in system prompt. If set, the current time will be included in the system prompt using this timezone. Must be a valid timezone name (e.g., 'America/New_York', 'Europe/London', 'UTC'). Recommended for accurate time-aware responses; without this, the agent has no knowledge of the current date/time unless you provide it via dynamic variables or tools, which can lead to incorrect or hallucinated time references. backup_llm_config: anyOf: - $ref: '#/components/schemas/BackupLLMDefault' - $ref: '#/components/schemas/BackupLLMDisabled' - $ref: '#/components/schemas/BackupLLMOverride' - type: 'null' title: Backup Llm Config description: Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order. cascade_timeout_seconds: anyOf: - type: number - type: 'null' title: Cascade Timeout Seconds description: Time in seconds before cascading to backup LLM. Must be between 2 and 15 seconds. tools: anyOf: - items: oneOf: - $ref: '#/components/schemas/WebhookToolConfig-Output' - $ref: '#/components/schemas/ClientToolConfig-Output' - $ref: '#/components/schemas/SystemToolConfig-Output' - $ref: '#/components/schemas/MCPToolConfig-Output' - $ref: '#/components/schemas/ApiIntegrationWebhookToolConfig-Output' - $ref: '#/components/schemas/SMBToolConfig' description: The type of tool discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ApiIntegrationWebhookToolConfig-Output' client: '#/components/schemas/ClientToolConfig-Output' mcp: '#/components/schemas/MCPToolConfig-Output' smb: '#/components/schemas/SMBToolConfig' system: '#/components/schemas/SystemToolConfig-Output' webhook: '#/components/schemas/WebhookToolConfig-Output' type: array - type: 'null' title: Tools description: A list of tools that the agent can use over the course of the conversation, use tool_ids instead type: object title: PromptAgentAPIModelWorkflowOverride example: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] EvaluationCriteriaSummaryResult: properties: result: $ref: '#/components/schemas/EvaluationSuccessResult' score: anyOf: - type: integer - type: 'null' title: Score max_score: anyOf: - type: integer - type: 'null' title: Max Score type: object required: - result title: EvaluationCriteriaSummaryResult UUITransferConfig: properties: data: type: string maxLength: 8192 title: Data description: UUI payload to send on SIP REFER transfers. Supports inline dynamic variables and is hex-encoded at transfer time. protocol_discriminator: anyOf: - type: string pattern: ^[0-9A-Fa-f]{2}$ - type: 'null' title: Protocol Discriminator description: Optional one-octet protocol discriminator (two hex digits, e.g. '00'). Required by platforms such as Genesys Cloud, which otherwise strip the first octet of the payload. Leave unset for platforms like Talkdesk that expect a bare hex payload. protocol_discriminator_mode: type: string enum: - prefix - pd_parameter title: Protocol Discriminator Mode description: How to attach protocol_discriminator. 'prefix' prepends the octet to the hex payload (User-to-User=XX;encoding=hex). 'pd_parameter' sends it as a separate parameter (User-to-User=;pd=XX;encoding=hex). Ignored when protocol_discriminator is unset. default: prefix type: object required: - data title: UUITransferConfig description: 'User-to-User Information envelope for SIP REFER transfers (RFC 7433). Outbound payloads are hex-encoded (the only encoding RFC 7433 defines). The protocol discriminator axis lets per-platform formats (Talkdesk, Genesys, ...) be expressed by configuration rather than scattered transfer flags. Further axes (ASCII encoding, header name, purpose/content parameters) can be added here without touching the transfer model.' ClientToolConfig-Input: properties: type: type: string const: client title: Type description: The type of tool default: client name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 120.0 minimum: 1.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. Must be between 1 and 120 seconds (inclusive). default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto parameters: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Input' description: JSON schema for the parameters the LLM provides. - type: 'null' description: Schema for any parameters to pass to the client expects_response: type: boolean title: Expects Response description: If true, calling this tool should block the conversation until the client responds with some response which is passed to the llm. If false then we will continue the conversation without waiting for the client to respond, this is useful to show content to a user but not block the conversation default: false dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate type: object required: - name - description title: ClientToolConfig description: A client tool is one that sends an event to the user's client to trigger something client side example: expects_response: false type: client VisitedAgentRef: properties: agent_id: type: string title: Agent Id branch_id: anyOf: - type: string - type: 'null' title: Branch Id type: object required: - agent_id title: VisitedAgentRef description: An agent (and optional branch) that participated in the call, in first-seen transcript order. RagConfig-Output: properties: enabled: type: boolean title: Enabled default: false embedding_model: $ref: '#/components/schemas/EmbeddingModelEnum' default: e5_mistral_7b_instruct max_vector_distance: type: number exclusiveMaximum: 1.0 exclusiveMinimum: 0.0 title: Max Vector Distance description: Maximum vector distance of retrieved chunks. default: 0.6 examples: - 0.5 max_documents_length: type: integer exclusiveMaximum: 10000000.0 exclusiveMinimum: 0.0 title: Max Documents Length description: Maximum total length of document chunks retrieved from RAG. default: 50000 examples: - '50000' max_retrieved_rag_chunks_count: type: integer maximum: 20.0 exclusiveMinimum: 0.0 title: Max Retrieved Rag Chunks Count description: Maximum number of RAG document chunks to initially retrieve from the vector store. These are then further filtered by vector distance and total length. default: 20 examples: - 5 num_candidates: anyOf: - type: integer maximum: 10000.0 exclusiveMinimum: 0.0 - type: 'null' title: Num Candidates description: Number of candidates evaluated in ANN vector search. Higher number means better results, but higher latency. Minimum recommended value is 100. If disabled, the default value is used. examples: - 300 query_rewrite_prompt_override: anyOf: - type: string maxLength: 1000 minLength: 1 - type: 'null' title: Query Rewrite Prompt Override description: Custom prompt for rewriting user queries before RAG retrieval. The conversation history will be automatically appended at the end. If not set, the default prompt will be used. examples: - You are given a conversation between a user and an assistant. Rewrite the last question to be self-contained and clear. knowledge_base_tool_info: anyOf: - $ref: '#/components/schemas/KnowledgeBaseToolInfo' - type: 'null' description: When set, the agent uses the knowledge_base tool instead of the legacy knowledge_base_rag tool. None means the agent is not opted in. type: object title: RagConfig KnowledgeBaseContentSearchResponseModel: properties: results: items: $ref: '#/components/schemas/KnowledgeBaseContentSearchResult' type: array title: Results next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor type: object required: - results title: KnowledgeBaseContentSearchResponseModel ConversationInitiationClientDataConfig-Output: properties: conversation_config_override: $ref: '#/components/schemas/ConversationConfigClientOverrideConfig-Output' description: Overrides for the conversation configuration custom_llm_extra_body: type: boolean title: Custom Llm Extra Body description: Whether to include custom LLM extra body default: false enable_conversation_initiation_client_data_from_webhook: type: boolean title: Enable Conversation Initiation Client Data From Webhook description: Whether to enable conversation initiation client data from webhooks default: false enable_starting_workflow_node_id_from_client: type: boolean title: Enable Starting Workflow Node Id From Client description: Whether clients may pass starting_workflow_node_id in initiation client data; if false, sending it fails conversation start. default: false enable_procedure_ids_from_client: type: boolean title: Enable Procedure Ids From Client description: Whether clients may pass procedure_ids in initiation client data to select which of the agent's procedures are available for the conversation; if false, sending it fails conversation start. default: false type: object title: ConversationInitiationClientDataConfig example: custom_llm_extra_body: true enable_conversation_initiation_client_data_from_webhook: true enable_procedure_ids_from_client: true enable_starting_workflow_node_id_from_client: true CreateAgentTestFolderResponseModel: properties: id: type: string title: Id name: type: string title: Name type: object required: - id - name title: CreateAgentTestFolderResponseModel OutboundCallRecipient: properties: id: anyOf: - type: string - type: 'null' title: Id phone_number: anyOf: - type: string - type: 'null' title: Phone Number whatsapp_user_id: anyOf: - type: string - type: 'null' title: Whatsapp User Id conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' type: object title: OutboundCallRecipient ASTGreaterThanOrEqualsOperatorNode-Input: properties: type: type: string const: gte_operator title: Type default: gte_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTGreaterThanOrEqualsOperatorNode CreateTransferRuleParams: properties: smb_tool_type: type: string const: create_transfer_rule title: Smb Tool Type default: create_transfer_rule post_dial_digits_enabled: type: boolean title: Post Dial Digits Enabled description: Whether to offer the post_dial_digits parameter, set from the receptionists' enable_play_keypad_touch_tone_tool config. Digits saved while that is off are dropped when the receptionist is built, so the parameter is hidden rather than accepted and ignored. default: false type: object title: CreateTransferRuleParams TransferToAgentToolResultErrorModel: properties: result_type: type: string const: transfer_to_agent_error title: Result Type default: transfer_to_agent_error status: type: string const: error title: Status default: error from_agent: type: string title: From Agent error: type: string title: Error type: object required: - from_agent - error title: TransferToAgentToolResultErrorModel AuthConnectionLocator: properties: auth_connection_id: type: string title: Auth Connection Id type: object required: - auth_connection_id title: AuthConnectionLocator description: Used to reference an auth connection from the workspace's auth connection store. FieldConflict: properties: path: type: string title: Path description: 'Identifier of the conflicting field relative to its section: a dot-path within conversation_config/platform_settings, or a procedure id.' section: $ref: '#/components/schemas/ConflictSection' description: Which config section this path belongs to. base_value: title: Base Value description: Value at the common ancestor (merge base). source_value: title: Source Value description: Value on the source branch tip. target_value: title: Target Value description: Value on the target branch tip. type: object required: - path - section title: FieldConflict ListLocationsParams: properties: smb_tool_type: type: string const: list_locations title: Smb Tool Type default: list_locations type: object title: ListLocationsParams description: Params + Reception-proxied ``run()`` for list_locations. ExternalSyncProvider: type: string enum: - google_drive title: ExternalSyncProvider ContextualUpdateInfo: properties: context_id: type: string title: Context Id description: Client-supplied identifier grouping related contextual updates. is_superseded: type: boolean title: Is Superseded description: True when this contextual update has been replaced by a newer update with the same context_id. default: false type: object required: - context_id title: ContextualUpdateInfo ModerationGuardrail-Input: properties: execution_mode: $ref: '#/components/schemas/GuardrailExecutionMode' default: streaming config: $ref: '#/components/schemas/ModerationConfig' type: object title: ModerationGuardrail ToolExecutionResponseModel: properties: tool_id: type: string title: Tool Id description: The ID of the tool that was executed tool_request_id: type: string title: Tool Request Id description: The request/call ID associated with this tool execution conversation_id: type: string title: Conversation Id description: The ID of the conversation where the tool was executed agent_id: type: string title: Agent Id description: The ID of the agent that ran the tool branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: The branch ID if the agent has branches timestamp: type: number title: Timestamp description: Unix timestamp when the tool was executed latency_secs: type: number title: Latency Secs description: How long the tool execution took is_error: type: boolean title: Is Error description: Whether the tool execution failed default: false request_payload: anyOf: - type: string - type: 'null' title: Request Payload description: LLM-extracted parameters sent to the tool (JSON string) response_payload: anyOf: - type: string - type: 'null' title: Response Payload description: Response returned by the tool error_message: anyOf: - type: string - type: 'null' title: Error Message description: Error message if the tool execution failed error_type: anyOf: - type: string - type: 'null' title: Error Type description: Error category (internal, customer_config, customer_auth, external_server, external_client, client_timeout, unknown) id: type: string title: Id tool_call_details: anyOf: - oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallClientDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallMCPDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Output' discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Output' client: '#/components/schemas/ConversationHistoryTranscriptToolCallClientDetails' mcp: '#/components/schemas/ConversationHistoryTranscriptToolCallMCPDetails' webhook: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' - type: 'null' title: Tool Call Details type: object required: - tool_id - tool_request_id - conversation_id - agent_id - timestamp - latency_secs - id title: ToolExecutionResponseModel MCPServerTransport: type: string enum: - SSE - STREAMABLE_HTTP title: MCPServerTransport description: Supported MCP server transport types. default: SSE ConflictSection: type: string enum: - conversation_config - platform_settings - procedures - workflow title: ConflictSection TransferTypeEnum: type: string enum: - blind - conference - sip_refer title: TransferTypeEnum default: conference UpdateBookingPageSettingsParams: properties: smb_tool_type: type: string const: update_booking_page_settings title: Smb Tool Type default: update_booking_page_settings type: object title: UpdateBookingPageSettingsParams GetKnowledgeBaseListResponseModel: properties: documents: items: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseSummaryURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryFolderResponseModel' discriminator: propertyName: type mapping: file: '#/components/schemas/GetKnowledgeBaseSummaryFileResponseModel' folder: '#/components/schemas/GetKnowledgeBaseSummaryFolderResponseModel' text: '#/components/schemas/GetKnowledgeBaseSummaryTextResponseModel' url: '#/components/schemas/GetKnowledgeBaseSummaryURLResponseModel' type: array title: Documents next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - documents - has_more title: GetKnowledgeBaseListResponseModel TransferToNumberToolConfig-Input: properties: system_tool_type: type: string const: transfer_to_number title: System Tool Type default: transfer_to_number transfers: items: $ref: '#/components/schemas/PhoneNumberTransfer' type: array title: Transfers enable_client_message: type: boolean title: Enable Client Message description: Whether to play a message to the client while they wait for transfer. Defaults to true for backward compatibility. default: true type: object required: - transfers title: TransferToNumberToolConfig ConversationConfig-Input: properties: text_only: type: boolean title: Text Only description: If enabled audio will not be processed and only text will be used, use to avoid audio pricing. default: false x-convai-client-override: true max_duration_seconds: type: integer title: Max Duration Seconds description: The maximum duration of a conversation in seconds default: 600 x-convai-client-override: true client_events: items: $ref: '#/components/schemas/ClientEvent' type: array title: Client Events description: The events that will be sent to the client file_input: $ref: '#/components/schemas/FileInputConfig' description: Configuration for file input (image/PDF uploads) during conversations. x-convai-client-override: true monitoring_enabled: type: boolean title: Monitoring Enabled description: Enable real-time monitoring of conversations via WebSocket default: false monitoring_events: items: $ref: '#/components/schemas/ClientEvent' type: array title: Monitoring Events description: The events that will be sent to monitoring connections. dtmf_input_settings: anyOf: - $ref: '#/components/schemas/DTMFInputConfig' - type: 'null' description: Configure DTMF (keypad) input collection during phone calls background_sound: $ref: '#/components/schemas/BackgroundSoundConfig' description: Configuration for background sound during conversations. source_attribution: type: boolean title: Source Attribution description: When enabled and knowledge base content is present, the LLM is instructed to report which sources it used. default: false type: object title: ConversationConfig example: client_events: - audio - interruption max_duration_seconds: 600 ConversationVoiceRewardModel: properties: voice_id: type: string title: Voice Id reward_usd_cents: type: number title: Reward Usd Cents type: object required: - voice_id - reward_usd_cents title: ConversationVoiceRewardModel PlayDTMFResultSuccessModel: properties: result_type: type: string const: play_dtmf_success title: Result Type default: play_dtmf_success status: type: string const: success title: Status default: success dtmf_tones: type: string title: Dtmf Tones reason: anyOf: - type: string - type: 'null' title: Reason type: object required: - dtmf_tones title: PlayDTMFResultSuccessModel PromptEvaluationCriteria: properties: id: type: string title: Id description: The unique identifier for the evaluation criteria name: type: string title: Name type: type: string const: prompt title: Type description: The type of evaluation criteria default: prompt conversation_goal_prompt: type: string maxLength: 2000 title: Conversation Goal Prompt description: The prompt that the agent should use to evaluate the conversation use_knowledge_base: type: boolean title: Use Knowledge Base description: When evaluating the prompt, should the agent's knowledge base be used. default: false scope: $ref: '#/components/schemas/AnalysisScope' description: The scope of transcript context used when evaluating this criterion. 'conversation' uses the full transcript; 'agent' uses only the portion where the defining agent was active. default: conversation llm: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: LLM model to use for this evaluation criteria. If not set, uses agent's analysis_llm default. scoring_mode: $ref: '#/components/schemas/CriteriaScoringMode' description: How this criterion is scored. 'binary' resolves to success/failure/unknown. 'numeric_uniform' returns a number on the [0, max_score] scale which is normalized into the aggregate conversation success percentage. default: binary max_score: type: integer title: Max Score description: Maximum value of the numeric score scale (minimum is always 0). Only used when scoring_mode is 'numeric_uniform'. default: 100 score_instructions: anyOf: - type: string maxLength: 2000 - type: 'null' title: Score Instructions description: Optional free-text instructions describing how to assign values on the numeric scale. Only used when scoring_mode is 'numeric_uniform'. type: object required: - id - name - conversation_goal_prompt title: PromptEvaluationCriteria description: An evaluation using the transcript and a prompt for a yes/no achieved answer examples: - conversation_goal_prompt: Determine whether the agent fully resolved the user's issue. id: criterion_binary_001 max_score: 100 name: Issue resolved scope: conversation scoring_mode: binary use_knowledge_base: false - conversation_goal_prompt: Rate how completely and correctly the issue was resolved. id: criterion_numeric_001 max_score: 100 name: Resolution quality scope: conversation score_instructions: 0 means unresolved, 50 means partially resolved, 100 means fully resolved with correct details. scoring_mode: numeric_uniform use_knowledge_base: false ASTMultiplicationOperatorNode-Input: properties: type: type: string const: mul_operator title: Type default: mul_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTMultiplicationOperatorNode BatchFailureResponseModel: properties: status: type: string const: failure title: Status default: failure error_code: type: integer title: Error Code error_status: type: string title: Error Status error_message: type: string title: Error Message type: object required: - status - error_code - error_status - error_message title: BatchFailureResponseModel WorkflowResultConditionModel-Output: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: result title: Type default: result successful: type: boolean title: Successful description: Whether all tools in the previously executed tool node were executed successfully. type: object required: - label - type - successful title: WorkflowResultConditionModel AgentMetadata: properties: agent_id: type: string title: Agent Id branch_id: anyOf: - type: string - type: 'null' title: Branch Id workflow_node_id: anyOf: - type: string - type: 'null' title: Workflow Node Id version_id: anyOf: - type: string - type: 'null' title: Version Id type: object required: - agent_id title: AgentMetadata Body_Send_an_outbound_message_via_WhatsApp_v1_convai_whatsapp_outbound_message_post: properties: whatsapp_phone_number_id: type: string title: Whatsapp Phone Number Id whatsapp_user_id: type: string title: Whatsapp User Id template_name: type: string title: Template Name template_language_code: type: string title: Template Language Code template_params: items: oneOf: - $ref: '#/components/schemas/WhatsAppTemplateHeaderComponentParams' - $ref: '#/components/schemas/WhatsAppTemplateBodyComponentParams' - $ref: '#/components/schemas/WhatsAppTemplateButtonComponentParams' discriminator: propertyName: type mapping: body: '#/components/schemas/WhatsAppTemplateBodyComponentParams' button: '#/components/schemas/WhatsAppTemplateButtonComponentParams' header: '#/components/schemas/WhatsAppTemplateHeaderComponentParams' type: array title: Template Params agent_id: type: string title: Agent Id conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' type: object required: - whatsapp_phone_number_id - whatsapp_user_id - template_name - template_language_code - template_params - agent_id title: Body_Send_an_outbound_message_via_WhatsApp_v1_convai_whatsapp_outbound_message_post AgentConfigOverrideConfig: properties: first_message: type: boolean title: First Message description: Whether to allow overriding the first_message field. default: false language: type: boolean title: Language description: Whether to allow overriding the language field. default: false max_conversation_duration_message: type: boolean title: Max Conversation Duration Message description: Whether to allow overriding the max_conversation_duration_message field. default: false prompt: $ref: '#/components/schemas/PromptAgentAPIModelOverrideConfig' description: Configures overrides for nested fields. type: object title: AgentConfigOverrideConfig GetOrCreateRAGIndexRequestModel: properties: document_id: type: string title: Document Id description: ID of the knowledgebase document for which to retrieve the index create_if_missing: type: boolean title: Create If Missing description: Whether to create the RAG index if it does not exist model: $ref: '#/components/schemas/EmbeddingModelEnum' description: Embedding model to use for the RAG index type: object required: - document_id - create_if_missing - model title: GetOrCreateRAGIndexRequestModel RagConfigWorkflowOverride-Input: properties: enabled: anyOf: - type: boolean - type: 'null' title: Enabled embedding_model: anyOf: - $ref: '#/components/schemas/EmbeddingModelEnum' - type: 'null' max_vector_distance: anyOf: - type: number - type: 'null' title: Max Vector Distance description: Maximum vector distance of retrieved chunks. examples: - 0.5 max_documents_length: anyOf: - type: integer - type: 'null' title: Max Documents Length description: Maximum total length of document chunks retrieved from RAG. examples: - '50000' max_retrieved_rag_chunks_count: anyOf: - type: integer - type: 'null' title: Max Retrieved Rag Chunks Count description: Maximum number of RAG document chunks to initially retrieve from the vector store. These are then further filtered by vector distance and total length. examples: - 5 num_candidates: anyOf: - type: integer - type: 'null' title: Num Candidates description: Number of candidates evaluated in ANN vector search. Higher number means better results, but higher latency. Minimum recommended value is 100. If disabled, the default value is used. examples: - 300 query_rewrite_prompt_override: anyOf: - type: string - type: 'null' title: Query Rewrite Prompt Override description: Custom prompt for rewriting user queries before RAG retrieval. The conversation history will be automatically appended at the end. If not set, the default prompt will be used. examples: - You are given a conversation between a user and an assistant. Rewrite the last question to be self-contained and clear. knowledge_base_tool_info: anyOf: - $ref: '#/components/schemas/KnowledgeBaseToolInfo' - type: 'null' description: When set, the agent uses the knowledge_base tool instead of the legacy knowledge_base_rag tool. None means the agent is not opted in. type: object title: RagConfigWorkflowOverride DependentUnknownToolIdentifier: properties: type: type: string const: unknown title: Type default: unknown id: type: string title: Id type: object required: - id title: DependentUnknownToolIdentifier description: 'A model that represents an tool dependent on a knowledge base/tools to which the user has no direct access.' ConversationHistoryRagUsageCommonModel: properties: usage_count: type: integer title: Usage Count embedding_model: type: string title: Embedding Model type: object required: - usage_count - embedding_model title: ConversationHistoryRagUsageCommonModel TransferToNumberToolConfig-Output: properties: system_tool_type: type: string const: transfer_to_number title: System Tool Type default: transfer_to_number transfers: items: $ref: '#/components/schemas/PhoneNumberTransfer' type: array title: Transfers enable_client_message: type: boolean title: Enable Client Message description: Whether to play a message to the client while they wait for transfer. Defaults to true for backward compatibility. default: true type: object required: - transfers title: TransferToNumberToolConfig WorkflowExpressionConditionModel-Input: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: expression title: Type default: expression expression: $ref: '#/components/schemas/ASTNode-Input' description: Expression to evaluate. type: object required: - expression title: WorkflowExpressionConditionModel GetPhoneNumberInboundSIPTrunkConfigResponseModel: properties: allowed_addresses: items: type: string type: array title: Allowed Addresses description: List of IP addresses that are allowed to use the trunk. Each item in the list can be an individual IP address or a Classless Inter-Domain Routing notation representing a CIDR block. allowed_numbers: anyOf: - items: type: string type: array - type: 'null' title: Allowed Numbers description: List of phone numbers that are allowed to use the trunk. media_encryption: $ref: '#/components/schemas/SIPMediaEncryptionEnum' has_auth_credentials: type: boolean title: Has Auth Credentials description: Whether authentication credentials are configured username: anyOf: - type: string - type: 'null' title: Username description: SIP trunk username (if available) remote_domains: anyOf: - items: type: string type: array - type: 'null' title: Remote Domains description: Domains of remote SIP servers used to validate TLS certificates. attributes_to_headers: additionalProperties: type: string type: object title: Attributes To Headers description: Map of dynamic variable name to header name for attributes_to_headers type: object required: - allowed_addresses - allowed_numbers - media_encryption - has_auth_credentials title: GetPhoneNumberInboundSIPTrunkConfigResponseModel TransferToNumberResultExotelSuccessModel: properties: result_type: type: string const: transfer_to_number_exotel_success title: Result Type default: transfer_to_number_exotel_success status: type: string const: success title: Status default: success transfer_number: type: string title: Transfer Number reason: anyOf: - type: string - type: 'null' title: Reason agent_message: anyOf: - type: string - type: 'null' title: Agent Message note: anyOf: - type: string - type: 'null' title: Note type: object required: - transfer_number title: TransferToNumberResultExotelSuccessModel ProcedureAtVersionResponseModel: properties: procedure_id: type: string title: Procedure Id description: Procedure ID version_id: anyOf: - type: string - type: 'null' title: Version Id description: Version ID of a version of the procedure. None for a procedure never versioned. name: type: string maxLength: 200 title: Name description: Procedure name content: type: string maxLength: 50000 title: Content description: Procedure content type: $ref: '#/components/schemas/ProcedureType' description: Procedure type default: free_form trigger: type: string title: Trigger description: When the agent should use this procedure. Empty string means this is a sub-procedure that should only start when another procedure references it. default: '' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: Procedure ID of the folder this procedure is placed in. None means root. type: object required: - procedure_id - name - content title: ProcedureAtVersionResponseModel example: content: '# Customer Support Procedure 1. Greet the customer...' name: Customer Support Procedure procedure_id: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 trigger: When the customer asks for support type: free_form version_id: agtprcv_7rbqxer9o12cyxi55ckw6sgz1dl4 GetKnowledgeBaseFileResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. type: type: string const: file title: Type extracted_inner_html: type: string title: Extracted Inner Html content_format: $ref: '#/components/schemas/ContentFormat' default: html filename: type: string title: Filename external_sync_info: anyOf: - $ref: '#/components/schemas/ExternalFileSyncInfo' - type: 'null' auto_sync_info: anyOf: - $ref: '#/components/schemas/AutoSyncInfo' - type: 'null' refresh_status: anyOf: - $ref: '#/components/schemas/FileRefreshStatus' - type: 'null' description: In-flight or last refresh state for an externally-synced file. Used by clients to render sync progress and disable re-sync while a refresh is queued or processing. is_frozen: type: boolean title: Is Frozen default: false type: object required: - id - name - metadata - supported_usages - access_info - type - extracted_inner_html - filename title: GetKnowledgeBaseFileResponseModel AgentTransfer-Input: properties: agent_id: anyOf: - type: string - type: 'null' title: Agent Id node_id: anyOf: - type: string - type: 'null' title: Node Id condition: type: string title: Condition delay_ms: type: integer title: Delay Ms default: 0 transfer_message: anyOf: - type: string - type: 'null' title: Transfer Message enable_transferred_agent_first_message: type: boolean title: Enable Transferred Agent First Message default: false is_workflow_node_transfer: type: boolean title: Is Workflow Node Transfer default: false preserve_client_tts_overrides: type: boolean title: Preserve Client Tts Overrides description: Defines whether TTS client overrides should be carried over to the transferred agent. default: false type: object required: - condition title: AgentTransfer SkipTurnToolResponseModel: properties: result_type: type: string const: skip_turn_success title: Result Type default: skip_turn_success status: type: string const: success title: Status default: success reason: anyOf: - type: string - type: 'null' title: Reason type: object title: SkipTurnToolResponseModel ExternalSyncJobTrigger: type: string enum: - on_demand - on_connect - auto title: ExternalSyncJobTrigger KnowledgeBaseFolderPathSegmentSummaryResponseModel: properties: id: type: string title: Id type: object required: - id title: KnowledgeBaseFolderPathSegmentSummaryResponseModel FocusGuardrail: properties: is_enabled: type: boolean title: Is Enabled default: false type: object title: FocusGuardrail DeleteLocationParams: properties: smb_tool_type: type: string const: delete_location title: Smb Tool Type default: delete_location type: object title: DeleteLocationParams WorkflowEndNodeModel-Input: properties: type: type: string const: end title: Type default: end position: $ref: '#/components/schemas/Position-Input' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. type: object title: WorkflowEndNodeModel CreateClientAppointmentParams: properties: smb_tool_type: type: string const: create_client_appointment title: Smb Tool Type default: create_client_appointment type: object title: CreateClientAppointmentParams PromptAgentAPIModelOverrideConfig: properties: prompt: type: boolean title: Prompt description: Whether to allow overriding the prompt field. default: false llm: type: boolean title: Llm description: Whether to allow overriding the llm field. default: false tool_ids: type: boolean title: Tool Ids description: Whether to allow overriding the tool_ids field. default: false native_mcp_server_ids: type: boolean title: Native Mcp Server Ids description: Whether to allow overriding the native_mcp_server_ids field. default: false knowledge_base: type: boolean title: Knowledge Base description: Whether to allow overriding the knowledge_base field. default: false type: object title: PromptAgentAPIModelOverrideConfig CreateProcedureResponseModel: properties: procedure_id: type: string title: Procedure Id description: ID of the created procedure type: object required: - procedure_id title: CreateProcedureResponseModel example: procedure_id: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 UpdateProcedureDraftRequestModel: properties: name: type: string maxLength: 200 title: Name description: Procedure name content: type: string maxLength: 50000 title: Content description: Procedure content type: $ref: '#/components/schemas/ProcedureType' description: Procedure type trigger: anyOf: - type: string - type: 'null' title: Trigger description: When the agent should use this procedure. Empty string means this is a sub-procedure that should only start when another procedure references it. If omitted or null, the trigger is derived from the content instead. Also accepts `description` as an alias. type: object required: - name - content - type title: UpdateProcedureDraftRequestModel PromptInjectionGuardrail: properties: is_enabled: type: boolean title: Is Enabled default: false type: object title: PromptInjectionGuardrail CustomGuardrailsConfig-Output: properties: configs: items: $ref: '#/components/schemas/CustomGuardrailConfig' type: array title: Configs type: object title: CustomGuardrailsConfig description: Config container for custom guardrails list WorkflowEdgeModel-Output: properties: source: type: string title: Source description: ID of the source node. target: type: string title: Target description: ID of the target node. forward_condition: anyOf: - oneOf: - $ref: '#/components/schemas/WorkflowUnconditionalModel-Output' description: Condition that is always true. - $ref: '#/components/schemas/WorkflowLLMConditionModel-Output' description: Condition described using human language and evaluated by an LLM. - $ref: '#/components/schemas/WorkflowResultConditionModel-Output' description: Condition based on the result of the last executed tool dispatch node. - $ref: '#/components/schemas/WorkflowExpressionConditionModel-Output' description: Condition described using a deterministic expression. discriminator: propertyName: type mapping: expression: '#/components/schemas/WorkflowExpressionConditionModel-Output' llm: '#/components/schemas/WorkflowLLMConditionModel-Output' result: '#/components/schemas/WorkflowResultConditionModel-Output' unconditional: '#/components/schemas/WorkflowUnconditionalModel-Output' - type: 'null' title: Forward Condition description: Condition that must be met for the edge to be traversed in the forward direction (source to target). backward_condition: anyOf: - oneOf: - $ref: '#/components/schemas/WorkflowUnconditionalModel-Output' description: Condition that is always true. - $ref: '#/components/schemas/WorkflowLLMConditionModel-Output' description: Condition described using human language and evaluated by an LLM. - $ref: '#/components/schemas/WorkflowResultConditionModel-Output' description: Condition based on the result of the last executed tool dispatch node. - $ref: '#/components/schemas/WorkflowExpressionConditionModel-Output' description: Condition described using a deterministic expression. discriminator: propertyName: type mapping: expression: '#/components/schemas/WorkflowExpressionConditionModel-Output' llm: '#/components/schemas/WorkflowLLMConditionModel-Output' result: '#/components/schemas/WorkflowResultConditionModel-Output' unconditional: '#/components/schemas/WorkflowUnconditionalModel-Output' - type: 'null' title: Backward Condition description: Condition that must be met for the edge to be traversed in the backward direction (target to source). type: object required: - source - target - forward_condition - backward_condition title: WorkflowEdgeModel AgentSortBy: type: string enum: - name - created_at - call_count_7d title: AgentSortBy AttachedUserEvaluationRef: properties: source: type: string const: user title: Source analysis_item_id: type: string title: Analysis Item Id description: Id of the referenced user evaluation item. version_id: anyOf: - type: string - type: 'null' title: Version Id description: Primary item version whose result feeds scoring. None tracks the item's latest published version. additional_version_ids: items: type: string type: array title: Additional Version Ids description: Extra item versions to also run for comparison (A/B). These are executed and stored but excluded from scoring; the primary version_id is the one that scores. scope: $ref: '#/components/schemas/AnalysisScope' description: Transcript context ('conversation' or 'agent') used when running this item. default: conversation weight: anyOf: - type: number - type: 'null' title: Weight description: Optional relative weight for aggregate scoring. type: object required: - source - analysis_item_id title: AttachedUserEvaluationRef ASTDynamicVariableNode-Input: properties: type: type: string const: dynamic_variable title: Type default: dynamic_variable name: type: string title: Name description: The name of the dynamic variable. type: object required: - name title: ASTDynamicVariableNode PostAgentAvatarResponseModel: properties: agent_id: type: string title: Agent Id avatar_url: anyOf: - type: string - type: 'null' title: Avatar Url type: object required: - agent_id title: PostAgentAvatarResponseModel CreateAgentBranchResponseModel: properties: created_branch_id: type: string title: Created Branch Id description: ID of the created branch created_version_id: type: string title: Created Version Id description: ID of the first version on the created branch type: object required: - created_branch_id - created_version_id title: CreateAgentBranchResponseModel SIPUriDynamicVariableTransferDestination: properties: type: type: string const: sip_uri_dynamic_variable title: Type default: sip_uri_dynamic_variable sip_uri: type: string title: Sip Uri type: object required: - sip_uri title: SIPUriDynamicVariableTransferDestination PromptAgentAPIModel-Input: properties: prompt: type: string title: Prompt description: The prompt for the agent default: '' x-convai-client-override: true llm: $ref: '#/components/schemas/LLM' description: The LLM to query with the prompt and the chat history. If using data residency, the LLM must be supported in the data residency environment default: gemini-2.5-flash x-convai-client-override: true reasoning_effort: anyOf: - $ref: '#/components/schemas/LLMReasoningEffort' - type: 'null' description: Reasoning effort of the model. Only available for some models. thinking_budget: anyOf: - type: integer - type: 'null' title: Thinking Budget description: Max number of tokens used for thinking. Use 0 to turn off if supported by the model. enable_reasoning_summary: type: boolean title: Enable Reasoning Summary description: Enable model reasoning summaries. When disabled, we do not request summaries from provider if possible for faster TTFB. Not ZRM compatible. default: false temperature: anyOf: - type: number - type: 'null' title: Temperature description: The temperature for the LLM. Defaults to 0. Set to null to omit the parameter from the LLM request entirely (useful for custom LLMs that reject the temperature field). default: 0.0 max_tokens: type: integer title: Max Tokens description: If greater than 0, maximum number of tokens the LLM can predict default: -1 tool_ids: items: type: string type: array title: Tool Ids description: A list of IDs of tools used by the agent x-convai-client-override: true built_in_tools: $ref: '#/components/schemas/BuiltInTools-Input' description: Built-in system tools to be used by the agent enable_parallel_tool_calls: type: boolean title: Enable Parallel Tool Calls description: Enable parallel tool calling. When enabled, the agent can execute multiple tools in parallel within a single turn. Not supported by all models. default: true mcp_server_ids: items: type: string type: array maxItems: 10 title: Mcp Server Ids description: A list of MCP server ids to be used by the agent native_mcp_server_ids: items: type: string type: array maxItems: 10 title: Native Mcp Server Ids description: A list of Native MCP server ids to be used by the agent x-convai-client-override: true knowledge_base: items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array title: Knowledge Base description: A list of knowledge bases to be used by the agent x-convai-client-override: true custom_llm: anyOf: - $ref: '#/components/schemas/CustomLLM' - type: 'null' description: Definition for a custom LLM if LLM field is set to 'CUSTOM_LLM' ignore_default_personality: anyOf: - type: boolean - type: 'null' title: Ignore Default Personality description: Whether to remove the default personality lines from the system prompt default: true rag: $ref: '#/components/schemas/RagConfig-Input' description: Configuration for RAG timezone: anyOf: - type: string - type: 'null' title: Timezone description: Timezone for displaying current time in system prompt. If set, the current time will be included in the system prompt using this timezone. Must be a valid timezone name (e.g., 'America/New_York', 'Europe/London', 'UTC'). Recommended for accurate time-aware responses; without this, the agent has no knowledge of the current date/time unless you provide it via dynamic variables or tools, which can lead to incorrect or hallucinated time references. backup_llm_config: oneOf: - $ref: '#/components/schemas/BackupLLMDefault' - $ref: '#/components/schemas/BackupLLMDisabled' - $ref: '#/components/schemas/BackupLLMOverride' title: Backup Llm Config description: Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order. discriminator: propertyName: preference mapping: default: '#/components/schemas/BackupLLMDefault' disabled: '#/components/schemas/BackupLLMDisabled' override: '#/components/schemas/BackupLLMOverride' cascade_timeout_seconds: type: number maximum: 15.0 minimum: 2.0 title: Cascade Timeout Seconds description: Time in seconds before cascading to backup LLM. Must be between 2 and 15 seconds. default: 4.0 tools: items: oneOf: - $ref: '#/components/schemas/WebhookToolConfig-Input' - $ref: '#/components/schemas/ClientToolConfig-Input' - $ref: '#/components/schemas/SystemToolConfig-Input' - $ref: '#/components/schemas/MCPToolConfig-Input' - $ref: '#/components/schemas/ApiIntegrationWebhookToolConfig-Input' - $ref: '#/components/schemas/SMBToolConfig' description: The type of tool discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ApiIntegrationWebhookToolConfig-Input' client: '#/components/schemas/ClientToolConfig-Input' mcp: '#/components/schemas/MCPToolConfig-Input' smb: '#/components/schemas/SMBToolConfig' system: '#/components/schemas/SystemToolConfig-Input' webhook: '#/components/schemas/WebhookToolConfig-Input' type: array title: Tools description: A list of tools that the agent can use over the course of the conversation, use tool_ids instead deprecated: true type: object title: PromptAgentAPIModel example: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] CustomLLM: properties: url: type: string title: Url description: The URL of the Chat Completions compatible endpoint model_id: anyOf: - type: string - type: 'null' title: Model Id description: The model ID to be used if URL serves multiple models api_key: anyOf: - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIEnvVarLocator' - type: 'null' title: Api Key description: 'The API key for authentication. Either a workspace secret reference {''secret_id'': ''...''} or an environment variable reference {''env_var_label'': ''...''}.' auth_connection: anyOf: - $ref: '#/components/schemas/AuthConnectionLocator' - $ref: '#/components/schemas/EnvironmentAuthConnectionLocator' - type: 'null' title: Auth Connection description: Optional workspace auth connection for authentication. Only auth connections that produce an Authorization Bearer token are supported; Basic auth, mTLS, custom header, and URL secret auth connections are not supported. request_headers: additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Headers description: Headers that should be included in the request api_version: anyOf: - type: string - type: 'null' title: Api Version description: The API version to use for the request api_type: $ref: '#/components/schemas/CustomLLMAPIType' description: The API type to use (chat_completions, responses or websocket) default: chat_completions type: object required: - url title: CustomLLM QueryParamsJsonSchema-Input: properties: properties: additionalProperties: $ref: '#/components/schemas/LiteralJsonSchemaProperty' type: object minProperties: 1 title: Properties required: items: type: string type: array title: Required additionalProperties: false type: object required: - properties title: QueryParamsJsonSchema EndProcedureToolResultSuccessModel: properties: result_type: type: string const: end_procedure_success title: Result Type default: end_procedure_success status: type: string const: success title: Status default: success procedure_id: type: string title: Procedure Id procedure_name: type: string title: Procedure Name message: type: string title: Message default: '' type: object required: - procedure_id - procedure_name title: EndProcedureToolResultSuccessModel UpdateAgentProcedureParams: properties: smb_tool_type: type: string const: update_agent_procedure title: Smb Tool Type default: update_agent_procedure type: object title: UpdateAgentProcedureParams AgentSummaryResponseModel: properties: agent_id: type: string title: Agent Id description: The ID of the agent name: type: string title: Name description: The name of the agent voice_id: type: string title: Voice Id description: Voice ID assigned to this agent tags: items: type: string type: array title: Tags description: Agent tags used to categorize the agent created_at_unix_secs: type: integer title: Created At Unix Secs description: The creation time of the agent in unix seconds access_info: $ref: '#/components/schemas/ResourceAccessInfo' description: The access information of the agent last_call_time_unix_secs: anyOf: - type: integer - type: 'null' title: Last Call Time Unix Secs description: The time of the most recent call in unix seconds, null if no calls have been made archived: type: boolean title: Archived description: Whether the agent is archived default: false type: object required: - agent_id - name - voice_id - tags - created_at_unix_secs - access_info title: AgentSummaryResponseModel example: access_info: creator_email: john@example.com creator_name: John Doe is_creator: true role: admin agent_id: J3Pbu5gP6NNKBscdCdwB archived: false created_at_unix_secs: 1716153600 last_call_time_unix_secs: 1716240000 name: My Agent tags: - Customer Support - Technical Help - Eleven voice_id: UCaNsl8F6Xh4GALkVMLS GetConvAISettingsResponseModel: properties: conversation_initiation_client_data_webhook: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataWebhook' - type: 'null' webhooks: $ref: '#/components/schemas/ConvAIWebhooks' can_use_mcp_servers: type: boolean title: Can Use Mcp Servers description: Whether the workspace can use MCP servers default: false rag_retention_period_days: type: integer maximum: 30.0 exclusiveMinimum: 0.0 title: Rag Retention Period Days default: 10 conversation_embedding_retention_days: anyOf: - type: integer maximum: 365.0 exclusiveMinimum: 0.0 - type: 'null' title: Conversation Embedding Retention Days description: Days to retain conversation embeddings. None means use the system default (30 days). default_livekit_stack: $ref: '#/components/schemas/LivekitStackType' default: standard type: object title: GetConvAISettingsResponseModel CancelGroupSessionForAllParams: properties: smb_tool_type: type: string const: cancel_group_session_for_all title: Smb Tool Type default: cancel_group_session_for_all type: object title: CancelGroupSessionForAllParams description: 'Cancel an entire group session and notify every registered participant. Destructive -- prefer ``cancel_group_session_registration`` for cancelling a single attendee.' TTSConversationalConfig-Output: properties: model_id: $ref: '#/components/schemas/TTSConversationalModel' description: The model to use for TTS default: eleven_flash_v2 x-convai-client-override: true voice_id: type: string minLength: 0 title: Voice Id description: The voice ID to use for TTS default: cjVigY5qzO86Huf0OWal x-convai-client-override: true x-convai-language-override: true supported_voices: items: $ref: '#/components/schemas/SupportedVoice' type: array title: Supported Voices description: Additional supported voices for the agent x-convai-client-override: true x-convai-soft-override-disallowed: true expressive_mode: type: boolean title: Expressive Mode description: When enabled, applies expressive audio tags prompt. Automatically disabled for non-v3 models. default: true suggested_audio_tags: items: $ref: '#/components/schemas/SuggestedAudioTag' type: array maxItems: 20 title: Suggested Audio Tags description: Suggested audio tags to boost expressive speech (for eleven_v3 and eleven_v3_conversational models). The agent can still use other tags not listed here. agent_output_audio_format: $ref: '#/components/schemas/TTSOutputFormat' description: The audio format to use for TTS default: pcm_16000 optimize_streaming_latency: $ref: '#/components/schemas/TTSOptimizeStreamingLatency' description: 'Deprecated: this field is a no-op and is ignored.' default: 3 deprecated: true stability: type: number maximum: 1.0 minimum: 0.0 title: Stability description: The stability of generated speech default: 0.5 x-convai-client-override: true speed: type: number maximum: 1.2 minimum: 0.7 title: Speed description: The speed of generated speech default: 1.0 x-convai-client-override: true similarity_boost: type: number maximum: 1.0 minimum: 0.0 title: Similarity Boost description: The similarity boost for generated speech default: 0.8 x-convai-client-override: true text_normalisation_type: $ref: '#/components/schemas/TextNormalisationType' description: Method for converting numbers to words before converting text to speech. If set to SYSTEM_PROMPT, the system prompt will be updated to include normalization instructions. If set to ELEVENLABS, the text will be normalized after generation, incurring slight additional latency. default: system_prompt pronunciation_dictionary_locators: items: $ref: '#/components/schemas/PydanticPronunciationDictionaryVersionLocator' type: array title: Pronunciation Dictionary Locators description: The pronunciation dictionary locators x-convai-client-override: true enable_phoneme_tags: type: boolean title: Enable Phoneme Tags description: Opt-in to SSML phoneme tag handling for V3 models. When enabled, phoneme tags (inline and from pronunciation dictionaries) are parsed into inline IPA before being sent to the model. default: true audio_effects: anyOf: - $ref: '#/components/schemas/EffectsSpec-Output' - type: 'null' description: 'Optional TTS effects spec: filter preset, distance (proximity EQ), and environment (convolution reverb).' type: object title: TTSConversationalConfig example: agent_output_audio_format: pcm_16000 model_id: eleven_turbo_v2 optimize_streaming_latency: 3 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal UpdateAgentRuleParams: properties: smb_tool_type: type: string const: update_agent_rule title: Smb Tool Type default: update_agent_rule type: object title: UpdateAgentRuleParams TriggeredGuardrailCommonModel: properties: guardrail_type: $ref: '#/components/schemas/GuardrailType' guardrail_name: anyOf: - type: string - type: 'null' title: Guardrail Name type: object required: - guardrail_type title: TriggeredGuardrailCommonModel GetConversationTagsPageResponseModel: properties: conversation_tags: items: $ref: '#/components/schemas/ConversationTagResponseModel' type: array title: Conversation Tags next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - conversation_tags - has_more title: GetConversationTagsPageResponseModel LLMDeprecationConfigModel: properties: warning_start_days: type: integer title: Warning Start Days description: Number of days before the provider deprecation date when warnings start being shown. fallback_start_days: type: integer title: Fallback Start Days description: Number of days before the provider deprecation date when traffic starts being routed to the replacement model. fallback_complete_days: type: integer title: Fallback Complete Days description: Number of days before the provider deprecation date when all traffic is routed to the replacement model. fallback_start_percentage: type: integer title: Fallback Start Percentage description: Percentage of traffic routed to the replacement model when fallback begins. fallback_complete_percentage: type: integer title: Fallback Complete Percentage description: Percentage of traffic routed to the replacement model when fallback is complete. type: object required: - warning_start_days - fallback_start_days - fallback_complete_days - fallback_start_percentage - fallback_complete_percentage title: LLMDeprecationConfigModel example: fallback_complete_days: 7 fallback_complete_percentage: 100 fallback_start_days: 14 fallback_start_percentage: 25 warning_start_days: 30 Body_Post_Agent_avatar_v1_convai_agents__agent_id__avatar_post: properties: avatar_file: type: string title: Avatar File description: An image file to be used as the agent's avatar. format: binary type: object required: - avatar_file title: Body_Post_Agent_avatar_v1_convai_agents__agent_id__avatar_post DeleteAgentProcedureParams: properties: smb_tool_type: type: string const: delete_agent_procedure title: Smb Tool Type default: delete_agent_procedure type: object title: DeleteAgentProcedureParams GuardrailType: type: string enum: - custom - prompt_injection - self_harm_intent - violence_graphic - sexual - violence - harassment - sexual_minors - self_harm - self_harm_instructions - harassment_threatening - hate - hate_threatening - profanity - religion_or_politics - medical_and_legal - guardrail title: GuardrailType Body_Create_or_update_deployments_v1_convai_agents__agent_id__deployments_post: properties: deployment_request: $ref: '#/components/schemas/AgentDeploymentRequest' description: Request to create a new deployment type: object required: - deployment_request title: Body_Create_or_update_deployments_v1_convai_agents__agent_id__deployments_post ListAgentReferencesParams: properties: smb_tool_type: type: string const: list_agent_references title: Smb Tool Type default: list_agent_references type: object title: ListAgentReferencesParams MessagesSearchResponse: properties: meta: $ref: '#/components/schemas/ListResponseMeta' default: {} results: items: $ref: '#/components/schemas/MessagesSearchResult' type: array title: Results next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor description: Cursor for the next page of results has_more: type: boolean title: Has More description: Whether there are more results available type: object required: - results - has_more title: MessagesSearchResponse KnowledgeBaseFolderPathSegmentResponseModel: properties: id: type: string title: Id name: anyOf: - type: string - type: 'null' title: Name type: object required: - id - name title: KnowledgeBaseFolderPathSegmentResponseModel BatchCallingCampaignInformation: properties: campaign_id: type: string title: Campaign Id campaign_lead_id: type: string title: Campaign Lead Id type: object required: - campaign_id - campaign_lead_id title: BatchCallingCampaignInformation ConversationUserResponseModel: properties: user_id: type: string title: User Id last_contact_unix_secs: type: integer title: Last Contact Unix Secs first_contact_unix_secs: type: integer title: First Contact Unix Secs conversation_count: type: integer title: Conversation Count last_contact_agent_id: anyOf: - type: string - type: 'null' title: Last Contact Agent Id last_contact_conversation_id: type: string title: Last Contact Conversation Id last_contact_agent_name: anyOf: - type: string - type: 'null' title: Last Contact Agent Name sentiment: $ref: '#/components/schemas/SentimentAggregate' most_frustrated_conversations: items: $ref: '#/components/schemas/FrustratedConversationRef' type: array title: Most Frustrated Conversations type: object required: - user_id - last_contact_unix_secs - first_contact_unix_secs - conversation_count - last_contact_conversation_id - sentiment title: ConversationUserResponseModel RagChunkMetadata: properties: document_id: type: string title: Document Id chunk_id: type: string title: Chunk Id vector_distance: type: number title: Vector Distance type: object required: - document_id - chunk_id - vector_distance title: RagChunkMetadata DeleteTransferRuleParams: properties: smb_tool_type: type: string const: delete_transfer_rule title: Smb Tool Type default: delete_transfer_rule type: object title: DeleteTransferRuleParams SystemToolConfig-Output: properties: type: type: string const: system title: Type description: The type of tool default: system name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. Leave empty to use the default description that's optimized for the specific tool type. default: '' response_timeout_secs: type: integer title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto params: oneOf: - $ref: '#/components/schemas/EndCallToolConfig' - $ref: '#/components/schemas/LanguageDetectionToolConfig' - $ref: '#/components/schemas/TransferToAgentToolConfig-Output' - $ref: '#/components/schemas/TransferToNumberToolConfig-Output' - $ref: '#/components/schemas/SkipTurnToolConfig' - $ref: '#/components/schemas/PlayDTMFToolConfig' - $ref: '#/components/schemas/VoicemailDetectionToolConfig' - $ref: '#/components/schemas/KnowledgeBaseRagToolConfig' - $ref: '#/components/schemas/KnowledgeBaseToolConfig' - $ref: '#/components/schemas/StartProcedureToolConfig' - $ref: '#/components/schemas/EndProcedureToolConfig' title: Params discriminator: propertyName: system_tool_type mapping: end_call: '#/components/schemas/EndCallToolConfig' end_procedure: '#/components/schemas/EndProcedureToolConfig' knowledge_base: '#/components/schemas/KnowledgeBaseToolConfig' knowledge_base_rag: '#/components/schemas/KnowledgeBaseRagToolConfig' language_detection: '#/components/schemas/LanguageDetectionToolConfig' play_keypad_touch_tone: '#/components/schemas/PlayDTMFToolConfig' skip_turn: '#/components/schemas/SkipTurnToolConfig' start_procedure: '#/components/schemas/StartProcedureToolConfig' transfer_to_agent: '#/components/schemas/TransferToAgentToolConfig-Output' transfer_to_number: '#/components/schemas/TransferToNumberToolConfig-Output' voicemail_detection: '#/components/schemas/VoicemailDetectionToolConfig' type: object required: - name - params title: SystemToolConfig description: A system tool is a tool that is used to call a system method in the server examples: - description: '' name: end_call params: system_tool_type: end_call type: system - description: Custom description for specific use case name: transfer_to_agent params: system_tool_type: transfer_to_agent transfers: [] type: system AgentBranchSummary: properties: id: type: string title: Id name: type: string title: Name agent_id: type: string title: Agent Id description: type: string title: Description created_at: type: integer title: Created At last_committed_at: type: integer title: Last Committed At is_archived: type: boolean title: Is Archived protection_status: $ref: '#/components/schemas/BranchProtectionStatus' default: writer_perms_required access_info: anyOf: - $ref: '#/components/schemas/ResourceAccessInfo' - type: 'null' description: Access information for the branch current_live_percentage: type: number title: Current Live Percentage description: Percentage of traffic live on the branch default: 0.0 parent_branch_id: anyOf: - type: string - type: 'null' title: Parent Branch Id description: ID of the parent branch draft_exists: type: boolean title: Draft Exists description: Whether a draft exists for the branch default: false draft_created_at: anyOf: - type: integer - type: 'null' title: Draft Created At description: Unix seconds when the caller's draft on this branch was first created, or null when they have no draft. A draft created before last_committed_at was written against a config the branch has since moved past, so it may not reflect the current one. draft_is_behind_tip: type: boolean title: Draft Is Behind Tip description: Whether the caller's draft on this branch was created before the branch's last commit, meaning it was written against a config the branch has since moved past and may not reflect the current one. default: false calls_7d: type: integer title: Calls 7D description: Number of calls in the last 7 days default: 0 commits_ahead: anyOf: - type: integer - type: 'null' title: Commits Ahead description: Number of commits on this branch not yet on main, relative to their common ancestor. Null if it could not be computed (e.g. no common ancestor, or the branch history exceeds the comparison budget). commits_behind: anyOf: - type: integer - type: 'null' title: Commits Behind description: Number of commits on main not yet incorporated into this branch, relative to their common ancestor. Null if it could not be computed (e.g. no common ancestor, or the branch history exceeds the comparison budget). merged_into_branch_id: anyOf: - type: string - type: 'null' title: Merged Into Branch Id description: ID of the branch this branch's tip version was merged into, if any type: object required: - id - name - agent_id - description - created_at - last_committed_at - is_archived title: AgentBranchSummary BackupLLMOverride: properties: preference: type: string const: override title: Preference default: override order: items: $ref: '#/components/schemas/LLM' type: array title: Order type: object required: - order title: BackupLLMOverride AgentBranchBasicInfo: properties: id: type: string title: Id name: type: string title: Name type: object required: - id - name title: AgentBranchBasicInfo WebhookToolConfig-Output: properties: type: type: string const: webhook title: Type description: The type of tool default: webhook name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate api_schema: $ref: '#/components/schemas/WebhookToolApiSchemaConfig-Output' description: The schema for the outgoing webhoook, including parameters and URL specification follow_redirects: type: boolean title: Follow Redirects description: Whether to resolve a redirect from the endpoint and return the final response. One redirect is followed, as a GET without the request body; nothing configured on this tool (headers, authentication, client certificate) is sent to the redirect target. Both the endpoint and the redirect target must use HTTPS. Not supported for API integration tools. default: false follow_redirects_allowed_domains: items: type: string type: array maxItems: 20 title: Follow Redirects Allowed Domains description: Domains a redirect may point at, e.g. 'test.example.com'. Required when following redirects, and a target outside the list is refused. type: object required: - name - description - api_schema title: WebhookToolConfig description: A webhook tool is a tool that calls an external webhook from our server example: response_timeout_secs: 20 type: webhook GetAgentsPageResponseModel: properties: agents: items: $ref: '#/components/schemas/AgentSummaryResponseModel' type: array title: Agents description: A list of agents and their metadata next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor description: The next cursor to paginate through the agents has_more: type: boolean title: Has More description: Whether there are more agents to paginate through type: object required: - agents - has_more title: GetAgentsPageResponseModel example: agents: - access_info: creator_email: john@example.com creator_name: John Doe is_creator: true role: admin agent_id: J3Pbu5gP6NNKBscdCdwB archived: false created_at_unix_secs: 1716153600 name: My Agent tags: - Customer Support - Technical Help - Eleven voice_id: UCaNsl8F6Xh4GALkVMLS has_more: false next_cursor: '123' KnowledgeBaseToolConfig: properties: system_tool_type: type: string const: knowledge_base title: System Tool Type default: knowledge_base enabled_strategies: items: $ref: '#/components/schemas/SearchStrategy' type: array title: Enabled Strategies type: object title: KnowledgeBaseToolConfig AlertingSlackNotifierResponse: properties: type: type: string const: integration title: Type default: integration integration_type: type: string const: slack title: Integration Type default: slack connection_id: type: string title: Connection Id channel_id: type: string title: Channel Id type: object required: - connection_id - channel_id title: AlertingSlackNotifierResponse WorkflowStandaloneAgentNodeModel-Input: properties: type: type: string const: standalone_agent title: Type default: standalone_agent position: $ref: '#/components/schemas/Position-Input' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: The ID of the agent to transfer the conversation to. None means transfer within the current agent. node_id: anyOf: - type: string minLength: 1 - type: 'null' title: Node Id description: Optional target node ID in the destination agent's workflow. When set, the transfer starts at this node instead of the default entry node. delay_ms: type: integer title: Delay Ms description: Artificial delay in milliseconds applied before transferring the conversation. default: 0 transfer_message: anyOf: - type: string - type: 'null' title: Transfer Message description: Optional message sent to the user before the transfer is initiated. enable_transferred_agent_first_message: type: boolean title: Enable Transferred Agent First Message description: Whether to enable the transferred agent to send its configured first message after the transfer. default: false preserve_client_tts_overrides: type: boolean title: Preserve Client Tts Overrides description: Defines whether TTS client overrides should be carried over to the transferred agent. default: false type: object title: WorkflowStandaloneAgentNodeModel AgentConfigAPIModelWorkflowOverride-Output: properties: first_message: anyOf: - type: string - type: 'null' title: First Message description: If non-empty, the first message the agent will say. If empty, the agent waits for the user to start the discussion. x-convai-client-override: true x-convai-language-override: true language: anyOf: - type: string - type: 'null' title: Language description: Language of the agent - used for ASR and TTS x-convai-client-override: true hinglish_mode: anyOf: - type: boolean - type: 'null' title: Hinglish Mode description: When enabled and language is Hindi, the agent will respond in Hinglish dynamic_variables: anyOf: - $ref: '#/components/schemas/DynamicVariablesConfigWorkflowOverride' - type: 'null' description: Configuration for dynamic variables disable_first_message_interruptions: anyOf: - type: boolean - type: 'null' title: Disable First Message Interruptions description: If true, the user will not be able to interrupt the agent while the first message is being delivered. max_conversation_duration_message: anyOf: - type: string - type: 'null' title: Max Conversation Duration Message description: If non-empty, the message the agent will send when max conversation duration is reached. x-convai-client-override: true x-convai-language-override: true text_behavior_overrides: anyOf: - additionalProperties: $ref: '#/components/schemas/BehaviorOverride' propertyNames: $ref: '#/components/schemas/ConversationInitiationSource' type: object - type: 'null' title: Text Behavior Overrides description: Per-channel response behavior overrides for text conversations. Built-in channel defaults apply when unset. prompt: anyOf: - $ref: '#/components/schemas/PromptAgentAPIModelWorkflowOverride-Output' - type: 'null' description: The prompt for the agent type: object title: AgentConfigAPIModelWorkflowOverride example: disable_first_message_interruptions: false dynamic_variables: dynamic_variable_placeholders: user_name: John Doe first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] PlatformUsage: properties: category_usage: additionalProperties: $ref: '#/components/schemas/PlatformCategoryUsage' propertyNames: $ref: '#/components/schemas/PlatformCategory' type: object title: Category Usage type: object title: PlatformUsage description: Per-category breakdown of ``platform_charge`` (the analogue of ``llm_usage``). WidgetExpandable: type: string enum: - never - mobile - desktop - always title: WidgetExpandable default: never CreateServiceQuoteRequestParams: properties: smb_tool_type: type: string const: create_service_quote_request title: Smb Tool Type default: create_service_quote_request type: object title: CreateServiceQuoteRequestParams ToolCallSoundType: type: string enum: - typing - elevator1 - elevator2 - elevator3 - elevator4 title: ToolCallSoundType description: Predefined tool call sounds; ``None`` means no sound. ConvAISecretLocator: properties: secret_id: type: string title: Secret Id type: object required: - secret_id title: ConvAISecretLocator description: Used to reference a secret from the agent's secret store. ConversationConfigClientOverride-Input: properties: asr: anyOf: - $ref: '#/components/schemas/ASRConversationalConfigOverride' - type: 'null' description: Configuration for conversational transcription turn: anyOf: - $ref: '#/components/schemas/TurnConfigOverride' - type: 'null' description: Configuration for turn detection tts: anyOf: - $ref: '#/components/schemas/TTSConversationalConfigOverride' - type: 'null' description: Configuration for conversational text to speech conversation: anyOf: - $ref: '#/components/schemas/ConversationConfigOverride' - type: 'null' description: Configuration for conversational events agent: anyOf: - $ref: '#/components/schemas/AgentConfigOverride-Input' - type: 'null' description: Agent specific configuration type: object title: ConversationConfigClientOverride example: agent: first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. tool_ids: [] asr: keywords: - hello - world conversation: max_duration_seconds: 600 tts: model_id: eleven_turbo_v2 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal turn: soft_timeout_config: message: Hhmmmm...yeah. SoftTimeoutConfigWorkflowOverride: properties: timeout_seconds: anyOf: - type: number - type: 'null' title: Timeout Seconds description: Time in seconds before showing the predefined message while waiting for LLM response. Set to -1 to disable. message: anyOf: - type: string - type: 'null' title: Message description: Message to show when the first soft timeout is reached while waiting for LLM response. Supports dynamic variables (e.g., {{system__time}}, {{custom_variable}}). x-convai-client-override: true x-convai-language-override: true additional_soft_timeout_messages: anyOf: - items: type: string type: array - type: 'null' title: Additional Soft Timeout Messages description: Extra static filler messages for subsequent soft timeouts in the same LLM generation. The first timeout uses `message`. If fewer messages are configured than `max_soft_timeouts_per_generation`, the last configured message is repeated; otherwise a built-in filler is used. x-convai-client-override: true x-convai-language-override: true use_llm_generated_message: anyOf: - type: boolean - type: 'null' title: Use Llm Generated Message description: If enabled, the soft timeout message will be generated dynamically instead of using the static message. randomize_fillers: anyOf: - type: boolean - type: 'null' title: Randomize Fillers description: If enabled, shuffle the order of static soft timeout messages once at the start of each turn. Only applies when use_llm_generated_message is false. max_soft_timeouts_per_generation: anyOf: - type: integer - type: 'null' title: Max Soft Timeouts Per Generation description: Maximum filler messages while waiting for a single LLM response. Fires every timeout_seconds until the LLM streams content or this limit is reached. llm_generated_message_prompt_override: anyOf: - type: string - type: 'null' title: Llm Generated Message Prompt Override description: Custom prompt for generating the soft timeout filler message when use_llm_generated_message is enabled. Recent conversation context is provided as a separate user message. If not set, the default prompt will be used. Supports dynamic variables (e.g., {{system__time}}, {{custom_variable}}). examples: - Output a SHORT neutral filler phrase (1-4 words MAX) acknowledging you heard the user. disable_until_first_user_message: anyOf: - type: boolean - type: 'null' title: Disable Until First User Message description: When true, soft timeout fillers are suppressed until the conversation has at least one real user message. Prevents fillers during the agent's opening turn (e.g. workflow generate-immediately / tool calls before the user speaks). type: object title: SoftTimeoutConfigWorkflowOverride example: message: Hhmmmm...yeah. timeout_seconds: -1.0 use_llm_generated_message: false ProcedureRefResponseModel: properties: procedure_id: type: string title: Procedure Id description: Procedure ID version_id: anyOf: - type: string - type: 'null' title: Version Id description: Version ID of a version of the procedure. None for a procedure never versioned. name: type: string title: Name description: Procedure name default: '' type: $ref: '#/components/schemas/ProcedureType' description: Procedure type default: free_form trigger: type: string title: Trigger description: When the agent should use this procedure. Empty string means this is a sub-procedure that should only start when another procedure references it. default: '' referenced_tool_ids: items: type: string type: array title: Referenced Tool Ids description: Tool IDs referenced in the procedure content referenced_kb_ids: items: type: string type: array title: Referenced Kb Ids description: Knowledge base IDs referenced in the procedure content referenced_procedure_ids: items: type: string type: array title: Referenced Procedure Ids description: Procedure IDs referenced in the procedure content referenced_dynamic_variables: items: type: string type: array title: Referenced Dynamic Variables description: Dynamic variable names used in the procedure content folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: Procedure ID of the folder this procedure is placed in. None means root. type: object required: - procedure_id title: ProcedureRefResponseModel example: name: Customer Support Procedure procedure_id: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3 referenced_dynamic_variables: - customer_id referenced_kb_ids: - kb_123 referenced_procedure_ids: - agtprc_other referenced_tool_ids: - tool_123 trigger: When the customer asks for support type: free_form version_id: agtprcv_7rbqxer9o12cyxi55ckw6sgz1dl4 ASTAdditionOperatorNode-Output: properties: type: type: string const: add_operator title: Type default: add_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTAdditionOperatorNode KnowledgeBaseToolInfo: properties: enabled_strategies: items: $ref: '#/components/schemas/SearchStrategy' type: array title: Enabled Strategies description: Search strategies exposed to the model. Must be non-empty. type: object title: KnowledgeBaseToolInfo LeaveMessageParams: properties: smb_tool_type: type: string const: leave_message title: Smb Tool Type default: leave_message type: object title: LeaveMessageParams SIPUriTransferDestination: properties: type: type: string const: sip_uri title: Type default: sip_uri sip_uri: type: string title: Sip Uri type: object required: - sip_uri title: SIPUriTransferDestination WhatsAppAccountType: type: string enum: - cloud_api - coexistence title: WhatsAppAccountType default: cloud_api ResourceAccessInfo: properties: is_creator: type: boolean title: Is Creator description: Whether the user making the request is the creator of the agent creator_name: type: string title: Creator Name description: Name of the agent's creator creator_email: type: string title: Creator Email description: Email of the agent's creator role: type: string enum: - admin - editor - commenter - viewer title: Role description: The role of the user making the request anonymous_access_level_override: anyOf: - type: string enum: - admin - editor - commenter - viewer - type: 'null' title: Anonymous Access Level Override description: The access level for anonymous users. If None, the resource is not shared publicly. access_source: anyOf: - type: string enum: - creator - explicit - workspace_admin - workspace_default - type: 'null' title: Access Source description: Why the requesting user has access to this resource. 'creator' = caller is the owner. 'explicit' = caller (or one of their workspace groups) is listed in role_to_group_ids beyond the workspace-wide everyone group. 'workspace_default' = the workspace-wide everyone group is listed in role_to_group_ids (every non-anon workspace member, including admins, sees this resource). 'workspace_admin' = caller is a workspace admin and the admin seat is the *only* path to access; reserved for docs nobody else can see. Lets the UI disclose why an admin-bypass viewer sees a doc that wasn't explicitly shared with them. type: object required: - is_creator - creator_name - creator_email - role title: ResourceAccessInfo example: access_source: creator creator_email: john.doe@example.com creator_name: John Doe is_creator: true role: admin DeleteCalendarEventParams: properties: smb_tool_type: type: string const: delete_calendar_event title: Smb Tool Type default: delete_calendar_event type: object title: DeleteCalendarEventParams description: 'Permanently remove a previously-cancelled calendar event. This delete tool is the irreversible follow-up to cancel_calendar_event. The backend rejects the call (422) if the event hasn''t been cancelled yet, so the only safe path is cancel-then-delete.' Body_Compute_RAG_indexes_in_batch_v1_convai_knowledge_base_rag_index_post: properties: items: items: $ref: '#/components/schemas/GetOrCreateRAGIndexRequestModel' type: array maxItems: 100 minItems: 1 title: Items description: List of requested RAG indexes. Minimum 1, maximum 100 items. type: object required: - items title: Body_Compute_RAG_indexes_in_batch_v1_convai_knowledge_base_rag_index_post ContentFormat: type: string enum: - html - markdown title: ContentFormat description: 'Canonical representation of a knowledge base document''s stored content. HTML is the legacy default; documents created before this field existed are interpreted as HTML.' default: html ASRConversationalConfig: properties: quality: $ref: '#/components/schemas/ASRQuality' description: The quality of the transcription default: high provider: $ref: '#/components/schemas/ASRProvider' description: The provider of the transcription service default: scribe_realtime user_input_audio_format: $ref: '#/components/schemas/ASRInputFormat' description: The format of the audio to be transcribed default: pcm_16000 keywords: items: type: string type: array title: Keywords description: Keywords to boost prediction probability for x-convai-client-override: true x-convai-soft-override-disallowed: true type: object title: ASRConversationalConfig example: keywords: - hello - world provider: scribe_realtime quality: high user_input_audio_format: pcm_16000 TransferToNumberResultTwilioSuccessModel: properties: result_type: type: string const: transfer_to_number_twilio_success title: Result Type default: transfer_to_number_twilio_success status: type: string const: success title: Status default: success transfer_number: type: string title: Transfer Number reason: anyOf: - type: string - type: 'null' title: Reason client_message: anyOf: - type: string - type: 'null' title: Client Message agent_message: type: string title: Agent Message conference_name: type: string title: Conference Name post_dial_digits: anyOf: - type: string - type: 'null' title: Post Dial Digits note: anyOf: - type: string - type: 'null' title: Note type: object required: - transfer_number - agent_message - conference_name title: TransferToNumberResultTwilioSuccessModel MetricRecord: properties: elapsed_time: type: number title: Elapsed Time type: object required: - elapsed_time title: MetricRecord KnowledgeBaseDocumentType: type: string enum: - file - url - text - folder title: KnowledgeBaseDocumentType ConversationInitiationClientDataConfig-Input: properties: conversation_config_override: $ref: '#/components/schemas/ConversationConfigClientOverrideConfig-Input' description: Overrides for the conversation configuration custom_llm_extra_body: type: boolean title: Custom Llm Extra Body description: Whether to include custom LLM extra body default: false enable_conversation_initiation_client_data_from_webhook: type: boolean title: Enable Conversation Initiation Client Data From Webhook description: Whether to enable conversation initiation client data from webhooks default: false enable_starting_workflow_node_id_from_client: type: boolean title: Enable Starting Workflow Node Id From Client description: Whether clients may pass starting_workflow_node_id in initiation client data; if false, sending it fails conversation start. default: false enable_procedure_ids_from_client: type: boolean title: Enable Procedure Ids From Client description: Whether clients may pass procedure_ids in initiation client data to select which of the agent's procedures are available for the conversation; if false, sending it fails conversation start. default: false type: object title: ConversationInitiationClientDataConfig example: custom_llm_extra_body: true enable_conversation_initiation_client_data_from_webhook: true enable_procedure_ids_from_client: true enable_starting_workflow_node_id_from_client: true EndCallToolResultModel: properties: result_type: type: string const: end_call_success title: Result Type default: end_call_success status: type: string const: success title: Status default: success reason: anyOf: - type: string - type: 'null' title: Reason message: anyOf: - type: string - type: 'null' title: Message type: object title: EndCallToolResultModel ObjectJsonSchemaProperty-Output: properties: description: type: string title: Description default: '' dynamic_variable: type: string title: Dynamic Variable description: When set, the entire parameter is populated from this dynamic variable at runtime. Mutually exclusive with description (LLM-provided value), constant_value, and is_omitted. default: '' constant_value: anyOf: - additionalProperties: true type: object - type: 'null' title: Constant Value description: When set, the entire object uses this constant JSON value at runtime. Mutually exclusive with description (LLM-provided object), dynamic_variable, and is_omitted. is_omitted: type: boolean title: Is Omitted description: If true, this parameter will be completely omitted from the request. Only valid for optional parameters. Mutually exclusive with description, dynamic_variable, and constant_value. default: false type: type: string const: object title: Type default: object required: items: type: string type: array title: Required properties: additionalProperties: oneOf: - $ref: '#/components/schemas/LiteralJsonSchemaProperty' - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Output' - $ref: '#/components/schemas/ArrayJsonSchemaProperty-Output' type: object title: Properties required_constraints: anyOf: - $ref: '#/components/schemas/RequiredConstraints' - type: 'null' additionalProperties: false type: object title: ObjectJsonSchemaProperty KnowledgeBaseSourceFileUrlResponseModel: properties: signed_url: type: string title: Signed Url description: Signed URL to download the source file directly type: object required: - signed_url title: KnowledgeBaseSourceFileUrlResponseModel Body_Bulk_move_tests_to_folder_v1_convai_agent_testing_bulk_move_post: properties: entity_ids: items: type: string type: array minItems: 1 uniqueItems: true title: Entity Ids description: The IDs of tests or folders to move. move_to: anyOf: - type: string - type: 'null' title: Move To description: The folder to move the entities to. If not set, the entities will be moved to the root folder. type: object required: - entity_ids title: Body_Bulk_move_tests_to_folder_v1_convai_agent_testing_bulk_move_post GetPhoneNumberExotelResponseModel: properties: phone_number: type: string title: Phone Number description: Phone number label: type: string title: Label description: Label for the phone number supports_inbound: type: boolean title: Supports Inbound description: This field is deprecated and will be removed in the future. Whether this phone number supports inbound calls default: true deprecated: true supports_outbound: type: boolean title: Supports Outbound description: This field is deprecated and will be removed in the future. Whether this phone number supports outbound calls default: true deprecated: true phone_number_id: type: string title: Phone Number Id description: The ID of the phone number assigned_agent: anyOf: - $ref: '#/components/schemas/PhoneNumberAgentInfo' - type: 'null' description: The agent that is assigned to the phone number provider: type: string const: exotel title: Provider description: Phone provider default: exotel type: object required: - phone_number - label - phone_number_id title: GetPhoneNumberExotelResponseModel example: label: Exotel Outbound phone_number: '+919999999999' phone_number_id: phnum_X3Pbu5gP6NNKBscdCdwB provider: exotel WhatsAppTemplateBodyComponentParams: properties: type: type: string const: body title: Type default: body parameters: items: $ref: '#/components/schemas/WhatsAppTemplateTextParam' type: array title: Parameters type: object required: - parameters title: WhatsAppTemplateBodyComponentParams ConversationDeletionSettings: properties: deletion_time_unix_secs: anyOf: - type: integer - type: 'null' title: Deletion Time Unix Secs deleted_logs_at_time_unix_secs: anyOf: - type: integer - type: 'null' title: Deleted Logs At Time Unix Secs deleted_audio_at_time_unix_secs: anyOf: - type: integer - type: 'null' title: Deleted Audio At Time Unix Secs deleted_transcript_at_time_unix_secs: anyOf: - type: integer - type: 'null' title: Deleted Transcript At Time Unix Secs delete_transcript_and_pii: type: boolean title: Delete Transcript And Pii default: false delete_audio: type: boolean title: Delete Audio default: false type: object title: ConversationDeletionSettings ToolsResponseModel: properties: tools: items: $ref: '#/components/schemas/ToolResponseModel' type: array title: Tools next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - tools - has_more title: ToolsResponseModel RagRetrievalInfo: properties: chunks: items: $ref: '#/components/schemas/RagChunkMetadata' type: array title: Chunks embedding_model: $ref: '#/components/schemas/EmbeddingModelEnum' retrieval_query: type: string title: Retrieval Query rag_latency_secs: type: number title: Rag Latency Secs used_chunk_ids: items: type: string type: array title: Used Chunk Ids type: object required: - chunks - embedding_model - retrieval_query - rag_latency_secs title: RagRetrievalInfo AgentDeploymentResponse: properties: traffic_percentage_branch_id_map: additionalProperties: type: number type: object title: Traffic Percentage Branch Id Map description: Map of branch IDs to traffic percentages examples: - agtbrch_8901k4t9z5defmb8vh3e9361y7nj: 0.5 type: object title: AgentDeploymentResponse WidgetLanguagePreset: properties: text_contents: anyOf: - $ref: '#/components/schemas/WidgetTextContents' - type: 'null' description: The text contents for the selected language text_contents_translation: anyOf: - $ref: '#/components/schemas/WidgetTextContentsTranslation' - type: 'null' description: The translation cache for the text contents terms_text: anyOf: - type: string - type: 'null' title: Terms Text description: The text to display for terms and conditions in this language terms_html: anyOf: - type: string - type: 'null' title: Terms Html description: The HTML to display for terms and conditions in this language terms_key: anyOf: - type: string - type: 'null' title: Terms Key description: The key to display for terms and conditions in this language terms_translation: anyOf: - $ref: '#/components/schemas/WidgetTermsTranslation' - type: 'null' description: The translation cache for the terms type: object title: WidgetLanguagePreset CustomGuardrailConfig: properties: is_enabled: type: boolean title: Is Enabled default: false name: type: string maxLength: 500 minLength: 1 title: Name description: User-facing name for this guardrail prompt: type: string maxLength: 10000 minLength: 1 title: Prompt description: Instruction describing what to block, e.g. 'don't talk about politics' execution_mode: $ref: '#/components/schemas/GuardrailExecutionMode' default: streaming model: type: string enum: - gemini-2.5-flash-lite - gemini-2.5-flash - gemini-3.1-flash-lite - gemini-3.5-flash - claude-haiku-4-5 - claude-sonnet-4-6 - gpt-5.4-nano - gpt-5.4-mini title: Model description: LLM model to use for custom guardrail evaluation default: gemini-3.1-flash-lite history_message_count: type: integer maximum: 100.0 minimum: 0.0 title: History Message Count description: How much recent history the guardrail sees before the reply it evaluates, counted in user messages (the agent replies between them are included too). The guardrail always gets a single transcript ending in the evaluated reply, marked 'AGENT [current reply]:'. 0 (default) adds no prior history (just that line); 1 adds the latest user message onward. default: 0 history_include_tool_calls: type: boolean title: History Include Tool Calls description: 'When enabled, the history also renders the agent''s tool calls, their input arguments, and the tool results, interleaved with the text, so an action between two agent messages is visible. Off by default: history shows only user and agent text. Tool payloads can be large and can mislead smaller evaluator models, so enabling this raises token cost.' default: false x-fern-ignore: true trigger_action: oneOf: - $ref: '#/components/schemas/EndCallTriggerAction' - $ref: '#/components/schemas/RetryTriggerAction' title: Trigger Action discriminator: propertyName: type mapping: end_call: '#/components/schemas/EndCallTriggerAction' retry: '#/components/schemas/RetryTriggerAction' evaluate_full_response_only: type: boolean title: Evaluate Full Response Only description: Evaluate once against the complete non-TTS response instead of cumulative partials. Requires blocking mode. default: false type: object required: - name - prompt title: CustomGuardrailConfig description: Single custom guardrail configuration ASTGreaterThanOrEqualsOperatorNode-Output: properties: type: type: string const: gte_operator title: Type default: gte_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTGreaterThanOrEqualsOperatorNode AgentSimulatedChatTestResponseModel: properties: simulated_conversation: items: $ref: '#/components/schemas/ConversationHistoryTranscriptResponseModel' type: array title: Simulated Conversation analysis: $ref: '#/components/schemas/ConversationHistoryAnalysisCommonModel' type: object required: - simulated_conversation - analysis title: AgentSimulatedChatTestResponseModel MCPToolConfigOverrideUpdateRequestModel: properties: force_pre_tool_speech: anyOf: - type: boolean - type: 'null' title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If set, overrides the server''s force_pre_tool_speech setting for this tool.' deprecated: true pre_tool_speech: anyOf: - $ref: '#/components/schemas/PreToolSpeechMode' - type: 'null' description: If set, overrides the server's pre_tool_speech setting for this tool. disable_interruptions: anyOf: - type: boolean - type: 'null' title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If set, overrides the server''s disable_interruptions setting for this tool.' deprecated: true interruption_mode: anyOf: - $ref: '#/components/schemas/ToolInterruptionMode' - type: 'null' description: If set, overrides the server's interruption_mode setting for this tool. tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: string const: 'off' - type: 'null' title: Tool Call Sound description: Overrides the server's tool_call_sound setting for this tool. A sound name plays that sound; 'off' overrides to no sound (silence); null means do not override (inherit the server default). tool_call_sound_behavior: anyOf: - $ref: '#/components/schemas/ToolCallSoundBehavior' - type: 'null' description: If set, overrides the server's tool_call_sound_behavior setting for this tool execution_mode: anyOf: - $ref: '#/components/schemas/ToolExecutionMode' - type: 'null' description: If set, overrides the server's execution_mode setting for this tool response_timeout_secs: anyOf: - type: integer maximum: 300.0 minimum: 5.0 - type: 'null' title: Response Timeout Secs description: If set, overrides the server's response timeout for this MCP tool. assignments: anyOf: - items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array - type: 'null' title: Assignments description: Dynamic variable assignments for this MCP tool input_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Input Overrides description: Mapping of json path to input override configuration response_mocks: anyOf: - items: $ref: '#/components/schemas/ToolResponseMockConfig-Input' type: array - type: 'null' title: Response Mocks description: Mock responses with optional parameter conditions. Evaluated top-to-bottom; first match wins. type: object title: MCPToolConfigOverrideUpdateRequestModel ASTSubtractionOperatorNode-Output: properties: type: type: string const: sub_operator title: Type default: sub_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTSubtractionOperatorNode MCPToolAddApprovalRequestModel: properties: tool_name: type: string title: Tool Name description: The name of the MCP tool tool_description: type: string title: Tool Description description: The description of the MCP tool input_schema: additionalProperties: true type: object title: Input Schema description: The input schema of the MCP tool (the schema defined on the MCP server before ElevenLabs does any extra processing) approval_policy: $ref: '#/components/schemas/MCPToolApprovalPolicy' description: The tool-level approval policy default: requires_approval type: object required: - tool_name - tool_description title: MCPToolAddApprovalRequestModel description: Request model for adding approval for a single MCP tool. DeleteProductParams: properties: smb_tool_type: type: string const: delete_product title: Smb Tool Type default: delete_product type: object title: DeleteProductParams Position-Input: properties: x: type: number title: X default: 0.0 y: type: number title: Y default: 0.0 type: object title: Position VADConfig: properties: background_voice_detection: type: boolean title: Background Voice Detection description: Whether to use background voice filtering default: false x-fern-ignore: true type: object title: VADConfig example: background_voice_detection: false ASTDivisionOperatorNode-Input: properties: type: type: string const: div_operator title: Type default: div_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTDivisionOperatorNode DynamicVariableInternalValueType: {} PrivacyConfig-Input: properties: record_voice: type: boolean title: Record Voice description: Whether to record the conversation default: true retention_days: type: integer title: Retention Days description: The number of days to retain the conversation. -1 indicates there is no retention limit default: -1 delete_transcript_and_pii: type: boolean title: Delete Transcript And Pii description: Whether to delete the transcript and PII default: false delete_audio: type: boolean title: Delete Audio description: Whether to delete the audio default: false apply_to_existing_conversations: type: boolean title: Apply To Existing Conversations description: Whether to apply the privacy settings to existing conversations default: false zero_retention_mode: type: boolean title: Zero Retention Mode description: Whether to enable zero retention mode - no PII data is stored default: false conversation_history_redaction: $ref: '#/components/schemas/ConversationHistoryRedactionConfig' description: Config for PII redaction in the conversation history type: object title: PrivacyConfig example: apply_to_existing_conversations: false delete_audio: false delete_transcript_and_pii: false record_voice: true retention_days: -1 zero_retention_mode: false ConversationalConfigAPIModelWorkflowOverride-Input: properties: asr: anyOf: - $ref: '#/components/schemas/ASRConversationalConfigWorkflowOverride' - type: 'null' description: Configuration for conversational transcription turn: anyOf: - $ref: '#/components/schemas/TurnConfigWorkflowOverride' - type: 'null' description: Configuration for turn detection tts: anyOf: - $ref: '#/components/schemas/TTSConversationalConfigWorkflowOverride-Input' - type: 'null' description: Configuration for conversational text to speech conversation: anyOf: - $ref: '#/components/schemas/ConversationConfigWorkflowOverride-Input' - type: 'null' description: Configuration for conversational events language_presets: anyOf: - additionalProperties: $ref: '#/components/schemas/LanguagePreset-Input' type: object - type: 'null' title: Language Presets description: Language presets for conversations vad: anyOf: - $ref: '#/components/schemas/VADConfigWorkflowOverride' - type: 'null' description: Configuration for voice activity detection agent: anyOf: - $ref: '#/components/schemas/AgentConfigAPIModelWorkflowOverride-Input' - type: 'null' description: Agent specific configuration type: object title: ConversationalConfigAPIModelWorkflowOverride example: agent: disable_first_message_interruptions: false dynamic_variables: dynamic_variable_placeholders: user_name: John Doe first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] asr: keywords: - hello - world provider: scribe_realtime quality: high user_input_audio_format: pcm_16000 conversation: client_events: - audio - interruption max_duration_seconds: 600 tts: agent_output_audio_format: pcm_16000 model_id: eleven_turbo_v2 optimize_streaming_latency: 3 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal turn: interruption_ignore_term_languages: [] interruption_ignore_terms: [] merge_with_default_ignore_terms: false mode: turn retranscribe_on_turn_timeout: false silence_end_call_timeout: -1.0 soft_timeout_config: message: Hhmmmm...yeah. timeout_seconds: -1.0 use_llm_generated_message: false speculative_turn: false spelling_patience: auto transcribe_on_disabled_interruptions: false turn_eagerness: normal turn_model: turn_v3 turn_timeout: 7.0 vad: background_voice_detection: false WorkflowResultConditionModel-Input: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: result title: Type default: result successful: type: boolean title: Successful description: Whether all tools in the previously executed tool node were executed successfully. type: object required: - successful title: WorkflowResultConditionModel MCPToolApprovalPolicy: type: string enum: - auto_approved - requires_approval title: MCPToolApprovalPolicy description: Defines the tool-level approval policy. default: requires_approval CheckServiceAvailabilityParams: properties: smb_tool_type: type: string const: check_service_availability title: Smb Tool Type default: check_service_availability type: object title: CheckServiceAvailabilityParams TurnConfig: properties: turn_timeout: type: number title: Turn Timeout description: Maximum wait time for the user's reply before re-engaging the user default: 7.0 initial_wait_time: anyOf: - type: number - type: 'null' title: Initial Wait Time description: How long the agent will wait for the user to start the conversation if the first message is empty. If not set, uses the regular turn_timeout. silence_end_call_timeout: type: number title: Silence End Call Timeout description: Maximum wait time since the user last spoke before terminating the call default: -1 mode: $ref: '#/components/schemas/TurnMode' description: The mode of turn detection default: turn x-fern-ignore: true turn_eagerness: $ref: '#/components/schemas/TurnEagerness' description: Controls how eager the agent is to respond. Low = less eager (waits longer), Standard = default eagerness, High = more eager (responds sooner) default: normal spelling_patience: $ref: '#/components/schemas/SpellingPatience' description: Controls if the agent should be more patient when user is spelling numbers and named entities. Auto = model based, Off = never wait extra default: auto speculative_turn: type: boolean title: Speculative Turn description: When enabled, starts generating LLM responses during silence before full turn confidence is reached, reducing perceived latency. May increase LLM costs. default: false retranscribe_on_turn_timeout: type: boolean title: Retranscribe On Turn Timeout description: When enabled, if VAD detects no speech, attempts to re-transcribe accumulated audio at turn timeout. Disables silence discount billing for affected turns. default: false turn_model: $ref: '#/components/schemas/TurnModel' default: turn_v3 interruption_ignore_terms: items: type: string type: array title: Interruption Ignore Terms description: List of terms that should not trigger an interruption when spoken by the user (e.g. 'gotcha', 'understood'). Uses case-insensitive exact matching. interruption_ignore_term_languages: items: type: string type: array title: Interruption Ignore Term Languages description: Language codes for which preset ignore-term categories have been activated. Stored explicitly so display is not inferred from term overlap. merge_with_default_ignore_terms: type: boolean title: Merge With Default Ignore Terms description: When enabled, the curated default terms for interruption_ignore_term_languages are used in addition to interruption_ignore_terms. default: false transcribe_on_disabled_interruptions: type: boolean title: Transcribe On Disabled Interruptions description: When interruptions are disabled, still transcribe what the user says so it can carry into the next turn. When off, user speech during a non-interruptible turn is ignored and won't trigger a turn. default: false soft_timeout_config: $ref: '#/components/schemas/SoftTimeoutConfig' description: Configuration for soft timeout functionality. Provides immediate feedback during longer LLM responses. type: object title: TurnConfig example: interruption_ignore_term_languages: [] interruption_ignore_terms: [] merge_with_default_ignore_terms: false mode: turn retranscribe_on_turn_timeout: false silence_end_call_timeout: -1.0 soft_timeout_config: message: Hhmmmm...yeah. timeout_seconds: -1.0 speculative_turn: false spelling_patience: auto transcribe_on_disabled_interruptions: false turn_eagerness: normal turn_model: turn_v3 turn_timeout: 7.0 EndProcedureToolConfig: properties: system_tool_type: type: string const: end_procedure title: System Tool Type default: end_procedure procedures: additionalProperties: anyOf: - $ref: '#/components/schemas/ProcedureVersionRef' - $ref: '#/components/schemas/ProcedureDraftRef' type: object title: Procedures type: object title: EndProcedureToolConfig ConversationFeedbackType: type: string enum: - thumbs - rating title: ConversationFeedbackType LLMInputOutputTokensUsage: properties: input: $ref: '#/components/schemas/LLMTokensCategoryUsage' input_cache_read: $ref: '#/components/schemas/LLMTokensCategoryUsage' input_cache_write: $ref: '#/components/schemas/LLMTokensCategoryUsage' output_total: $ref: '#/components/schemas/LLMTokensCategoryUsage' type: object title: LLMInputOutputTokensUsage ArrayJsonSchemaProperty-Output: properties: description: type: string title: Description default: '' dynamic_variable: type: string title: Dynamic Variable description: When set, the entire parameter is populated from this dynamic variable at runtime. Mutually exclusive with description (LLM-provided value), constant_value, and is_omitted. default: '' constant_value: anyOf: - items: {} type: array - type: 'null' title: Constant Value description: When set, the entire array uses this constant value at runtime. Mutually exclusive with description (LLM-provided array), dynamic_variable, and is_omitted. is_omitted: type: boolean title: Is Omitted description: If true, this parameter will be completely omitted from the request. Only valid for optional parameters. Mutually exclusive with description, dynamic_variable, and constant_value. default: false type: type: string const: array title: Type default: array items: oneOf: - $ref: '#/components/schemas/LiteralJsonSchemaProperty' - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Output' - $ref: '#/components/schemas/ArrayJsonSchemaProperty-Output' title: Items description: Schema for array elements. default: type: string description: Array element is_system_provided: false dynamic_variable: '' allowed_values_dynamic_variable: '' constant_value: '' is_omitted: false additionalProperties: false type: object title: ArrayJsonSchemaProperty BuiltInTools-Output: properties: transfer_to_agent: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The transfer to agent tool end_call: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The end call tool language_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The language detection tool transfer_to_number: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The transfer to number tool skip_turn: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The skip turn tool play_keypad_touch_tone: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The play DTMF tool voicemail_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The voicemail detection tool type: object title: BuiltInTools description: 'System tools a conversational agent can be given. Deliberately not named ConversationalBuiltInTools: BuiltInToolsInput and BuiltInToolsOutput are part of the public API spec and the generated SDKs.' SoftTimeoutConfigOverride: properties: message: anyOf: - type: string - type: 'null' title: Message description: Message to show when the first soft timeout is reached while waiting for LLM response. Supports dynamic variables (e.g., {{system__time}}, {{custom_variable}}). x-convai-client-override: true x-convai-language-override: true additional_soft_timeout_messages: anyOf: - items: type: string type: array - type: 'null' title: Additional Soft Timeout Messages description: Extra static filler messages for subsequent soft timeouts in the same LLM generation. The first timeout uses `message`. If fewer messages are configured than `max_soft_timeouts_per_generation`, the last configured message is repeated; otherwise a built-in filler is used. x-convai-client-override: true x-convai-language-override: true type: object title: SoftTimeoutConfigOverride example: message: Hhmmmm...yeah. ApiIntegrationWebhookToolConfig-Input: properties: type: type: string const: api_integration_webhook title: Type default: api_integration_webhook name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate tool_version: type: string title: Tool Version description: The version of the API integration tool default: 1.0.0 api_integration_id: type: string title: Api Integration Id api_integration_connection_id: type: string title: Api Integration Connection Id api_schema_overrides: anyOf: - $ref: '#/components/schemas/ApiIntegrationWebhookOverrides' - type: 'null' title: Api Schema Overrides description: User overrides applied on top of the base api_schema type: object required: - name - description - api_integration_id - api_integration_connection_id title: ApiIntegrationWebhookToolConfig AgentCallLimits: properties: agent_concurrency_limit: type: integer title: Agent Concurrency Limit description: The maximum number of concurrent conversations. -1 indicates that there is no maximum default: -1 daily_limit: type: integer title: Daily Limit description: The maximum number of conversations per day default: 100000 bursting_enabled: type: boolean title: Bursting Enabled description: Whether to enable bursting. If true, exceeding workspace concurrency limit will be allowed up to 3 times the limit. Calls will be charged at double rate when exceeding the limit. default: true type: object title: AgentCallLimits example: agent_concurrency_limit: -1 bursting_enabled: true daily_limit: 100000 CreateTwilioPhoneNumberRequest: properties: phone_number: type: string title: Phone Number description: Phone number label: type: string title: Label description: Label for the phone number supports_inbound: type: boolean title: Supports Inbound description: This field is deprecated and will be removed in the future. Whether this phone number supports inbound calls default: true deprecated: true supports_outbound: type: boolean title: Supports Outbound description: This field is deprecated and will be removed in the future. Whether this phone number supports outbound calls default: true deprecated: true provider: type: string const: twilio title: Provider default: twilio agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID to assign the phone number to sid: type: string title: Sid description: Twilio Account SID (starts with `AC`) or API Key SID (starts with `SK`) token: type: string title: Token description: 'Secret paired with `sid`: the Account Auth Token for an Account SID, or the API Key Secret for an API Key SID' account_auth_token: anyOf: - type: string - type: 'null' title: Account Auth Token description: Twilio Account Auth Token, required for API Key imports to validate inbound webhook signatures region_config: anyOf: - $ref: '#/components/schemas/RegionConfigRequest' - type: 'null' description: Twilio Additional Region Configuration enable_sms: type: boolean title: Enable Sms description: Route inbound SMS to ElevenLabs. On by default; set to false to skip SMS configuration for numbers that don't support it. default: true type: object required: - phone_number - label - sid - token title: CreateTwilioPhoneNumberRequest SearchStrategy: type: string enum: - cat - keyword - semantic - ls title: SearchStrategy Body_Create_text_document_v1_convai_knowledge_base_text_post: properties: text: type: string title: Text description: Text content to be added to the knowledge base. name: anyOf: - type: string minLength: 1 - type: 'null' title: Name description: A custom, human-readable name for the document. parent_folder_id: anyOf: - type: string - type: 'null' title: Parent Folder Id description: If set, the created document or folder will be placed inside the given folder. type: object required: - text title: Body_Create_text_document_v1_convai_knowledge_base_text_post GuardrailExecutionMode: type: string enum: - streaming - blocking title: GuardrailExecutionMode default: streaming BatchCallWhatsAppParams: properties: whatsapp_phone_number_id: anyOf: - type: string - type: 'null' title: Whatsapp Phone Number Id whatsapp_call_permission_request_template_name: type: string title: Whatsapp Call Permission Request Template Name whatsapp_call_permission_request_template_language_code: type: string title: Whatsapp Call Permission Request Template Language Code type: object required: - whatsapp_call_permission_request_template_name - whatsapp_call_permission_request_template_language_code title: BatchCallWhatsAppParams RAGIndexRequestModel: properties: model: $ref: '#/components/schemas/EmbeddingModelEnum' type: object required: - model title: RAGIndexRequestModel SMBToolConfig: properties: type: type: string const: smb title: Type description: Tool type identifier default: smb name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. default: '' response_timeout_secs: type: integer title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto human_description: type: string minLength: 0 title: Human Description description: User-facing tooltip for the procedure reference picker. Not sent to the LLM. default: '' enabled: type: boolean title: Enabled description: Whether this tool is enabled for the agent default: true params: oneOf: - $ref: '#/components/schemas/SearchClientsParams' - $ref: '#/components/schemas/SendCustomEmailParams' - $ref: '#/components/schemas/ListClientsParams' - $ref: '#/components/schemas/GetClientByPhoneParams' - $ref: '#/components/schemas/CreateClientParams' - $ref: '#/components/schemas/UpdateClientParams' - $ref: '#/components/schemas/DeleteClientParams' - $ref: '#/components/schemas/ListStaffParams' - $ref: '#/components/schemas/CreateStaffParams' - $ref: '#/components/schemas/UpdateStaffParams' - $ref: '#/components/schemas/DeleteStaffParams' - $ref: '#/components/schemas/ListAssetsParams' - $ref: '#/components/schemas/CreateAssetParams' - $ref: '#/components/schemas/UpdateAssetParams' - $ref: '#/components/schemas/DeleteAssetParams' - $ref: '#/components/schemas/ListServicesParams' - $ref: '#/components/schemas/CreateServiceParams' - $ref: '#/components/schemas/UpdateServiceParams' - $ref: '#/components/schemas/DeleteServiceParams' - $ref: '#/components/schemas/ListProductsParams' - $ref: '#/components/schemas/CreateProductParams' - $ref: '#/components/schemas/UpdateProductParams' - $ref: '#/components/schemas/DeleteProductParams' - $ref: '#/components/schemas/CheckServiceAvailabilityParams' - $ref: '#/components/schemas/CreateClientAppointmentParams' - $ref: '#/components/schemas/GetClientAppointmentsParams' - $ref: '#/components/schemas/GetAppointmentByConfirmationNumberParams' - $ref: '#/components/schemas/CreateOrderParams' - $ref: '#/components/schemas/GetOrderByConfirmationNumberParams' - $ref: '#/components/schemas/GetClientOrdersParams' - $ref: '#/components/schemas/UpdateOrderParams' - $ref: '#/components/schemas/CancelOrderParams' - $ref: '#/components/schemas/ListGroupSessionsParams' - $ref: '#/components/schemas/ScheduleGroupSessionParams' - $ref: '#/components/schemas/RegisterForGroupSessionParams' - $ref: '#/components/schemas/CancelGroupSessionRegistrationParams' - $ref: '#/components/schemas/UpdateGroupSessionSeatsParams' - $ref: '#/components/schemas/CancelGroupSessionForAllParams' - $ref: '#/components/schemas/DeleteGroupSessionParams' - $ref: '#/components/schemas/ListCalendarEventsParams' - $ref: '#/components/schemas/UpdateCalendarEventParams' - $ref: '#/components/schemas/CancelCalendarEventParams' - $ref: '#/components/schemas/RestoreCalendarEventParams' - $ref: '#/components/schemas/DeleteCalendarEventParams' - $ref: '#/components/schemas/ListCustomerFacingAgentsParams' - $ref: '#/components/schemas/ListAgentRulesParams' - $ref: '#/components/schemas/CreateAgentRuleParams' - $ref: '#/components/schemas/UpdateAgentRuleParams' - $ref: '#/components/schemas/DeleteAgentRuleParams' - $ref: '#/components/schemas/ListTransferRulesParams' - $ref: '#/components/schemas/CreateTransferRuleParams' - $ref: '#/components/schemas/UpdateTransferRuleParams' - $ref: '#/components/schemas/DeleteTransferRuleParams' - $ref: '#/components/schemas/ListAgentProceduresParams' - $ref: '#/components/schemas/ListAgentReferencesParams' - $ref: '#/components/schemas/CreateAgentProcedureParams' - $ref: '#/components/schemas/UpdateAgentProcedureParams' - $ref: '#/components/schemas/DeleteAgentProcedureParams' - $ref: '#/components/schemas/ListHolidaysParams' - $ref: '#/components/schemas/CreateHolidayParams' - $ref: '#/components/schemas/UpdateHolidayParams' - $ref: '#/components/schemas/DeleteHolidayParams' - $ref: '#/components/schemas/GetScheduleParams' - $ref: '#/components/schemas/SubmitBusinessInfoParams' - $ref: '#/components/schemas/UpdateBusinessInfoParams' - $ref: '#/components/schemas/UpdateCustomerFacingConfigParams' - $ref: '#/components/schemas/GetAnalyticsSummaryParams' - $ref: '#/components/schemas/GetBookingPageSettingsParams' - $ref: '#/components/schemas/UpdateBookingPageSettingsParams' - $ref: '#/components/schemas/UpdateBookingPageAppearanceParams' - $ref: '#/components/schemas/GetBookingSlugStatusParams' - $ref: '#/components/schemas/SetBookingSlugParams' - $ref: '#/components/schemas/ListClientInteractionsParams' - $ref: '#/components/schemas/CreateClientInteractionParams' - $ref: '#/components/schemas/DeleteClientInteractionParams' - $ref: '#/components/schemas/ListLocationsParams' - $ref: '#/components/schemas/CreateLocationParams' - $ref: '#/components/schemas/UpdateLocationParams' - $ref: '#/components/schemas/DeleteLocationParams' - $ref: '#/components/schemas/LeaveMessageParams' - $ref: '#/components/schemas/CreateServiceQuoteRequestParams' - $ref: '#/components/schemas/CreateProductQuoteRequestParams' - $ref: '#/components/schemas/ReportKnowledgeGapParams' - $ref: '#/components/schemas/OptInSmsReminderParams' - $ref: '#/components/schemas/OptOutSmsReminderParams' - $ref: '#/components/schemas/TriggerUserVerificationParams' - $ref: '#/components/schemas/ValidateUserVerificationCodeParams' title: Params discriminator: propertyName: smb_tool_type mapping: cancel_calendar_event: '#/components/schemas/CancelCalendarEventParams' cancel_group_session_for_all: '#/components/schemas/CancelGroupSessionForAllParams' cancel_group_session_registration: '#/components/schemas/CancelGroupSessionRegistrationParams' cancel_order: '#/components/schemas/CancelOrderParams' check_service_availability: '#/components/schemas/CheckServiceAvailabilityParams' create_agent_procedure: '#/components/schemas/CreateAgentProcedureParams' create_agent_rule: '#/components/schemas/CreateAgentRuleParams' create_asset: '#/components/schemas/CreateAssetParams' create_client: '#/components/schemas/CreateClientParams' create_client_appointment: '#/components/schemas/CreateClientAppointmentParams' create_client_interaction: '#/components/schemas/CreateClientInteractionParams' create_holiday: '#/components/schemas/CreateHolidayParams' create_location: '#/components/schemas/CreateLocationParams' create_order: '#/components/schemas/CreateOrderParams' create_product: '#/components/schemas/CreateProductParams' create_product_quote_request: '#/components/schemas/CreateProductQuoteRequestParams' create_service: '#/components/schemas/CreateServiceParams' create_service_quote_request: '#/components/schemas/CreateServiceQuoteRequestParams' create_staff: '#/components/schemas/CreateStaffParams' create_transfer_rule: '#/components/schemas/CreateTransferRuleParams' delete_agent_procedure: '#/components/schemas/DeleteAgentProcedureParams' delete_agent_rule: '#/components/schemas/DeleteAgentRuleParams' delete_asset: '#/components/schemas/DeleteAssetParams' delete_calendar_event: '#/components/schemas/DeleteCalendarEventParams' delete_client: '#/components/schemas/DeleteClientParams' delete_client_interaction: '#/components/schemas/DeleteClientInteractionParams' delete_group_session: '#/components/schemas/DeleteGroupSessionParams' delete_holiday: '#/components/schemas/DeleteHolidayParams' delete_location: '#/components/schemas/DeleteLocationParams' delete_product: '#/components/schemas/DeleteProductParams' delete_service: '#/components/schemas/DeleteServiceParams' delete_staff: '#/components/schemas/DeleteStaffParams' delete_transfer_rule: '#/components/schemas/DeleteTransferRuleParams' get_analytics_summary: '#/components/schemas/GetAnalyticsSummaryParams' get_appointment_by_confirmation_number: '#/components/schemas/GetAppointmentByConfirmationNumberParams' get_booking_page_settings: '#/components/schemas/GetBookingPageSettingsParams' get_booking_slug_status: '#/components/schemas/GetBookingSlugStatusParams' get_client_appointments: '#/components/schemas/GetClientAppointmentsParams' get_client_by_phone: '#/components/schemas/GetClientByPhoneParams' get_client_orders: '#/components/schemas/GetClientOrdersParams' get_order_by_confirmation_number: '#/components/schemas/GetOrderByConfirmationNumberParams' get_schedule: '#/components/schemas/GetScheduleParams' leave_message: '#/components/schemas/LeaveMessageParams' list_agent_procedures: '#/components/schemas/ListAgentProceduresParams' list_agent_references: '#/components/schemas/ListAgentReferencesParams' list_agent_rules: '#/components/schemas/ListAgentRulesParams' list_assets: '#/components/schemas/ListAssetsParams' list_calendar_events: '#/components/schemas/ListCalendarEventsParams' list_client_interactions: '#/components/schemas/ListClientInteractionsParams' list_clients: '#/components/schemas/ListClientsParams' list_customer_facing_agents: '#/components/schemas/ListCustomerFacingAgentsParams' list_group_sessions: '#/components/schemas/ListGroupSessionsParams' list_holidays: '#/components/schemas/ListHolidaysParams' list_locations: '#/components/schemas/ListLocationsParams' list_products: '#/components/schemas/ListProductsParams' list_services: '#/components/schemas/ListServicesParams' list_staff: '#/components/schemas/ListStaffParams' list_transfer_rules: '#/components/schemas/ListTransferRulesParams' opt_in_sms_reminder: '#/components/schemas/OptInSmsReminderParams' opt_out_sms_reminder: '#/components/schemas/OptOutSmsReminderParams' register_for_group_session: '#/components/schemas/RegisterForGroupSessionParams' report_knowledge_gap: '#/components/schemas/ReportKnowledgeGapParams' restore_calendar_event: '#/components/schemas/RestoreCalendarEventParams' schedule_group_session: '#/components/schemas/ScheduleGroupSessionParams' search_clients: '#/components/schemas/SearchClientsParams' send_custom_email: '#/components/schemas/SendCustomEmailParams' set_booking_slug: '#/components/schemas/SetBookingSlugParams' submit_business_info: '#/components/schemas/SubmitBusinessInfoParams' trigger_user_verification: '#/components/schemas/TriggerUserVerificationParams' update_agent_procedure: '#/components/schemas/UpdateAgentProcedureParams' update_agent_rule: '#/components/schemas/UpdateAgentRuleParams' update_asset: '#/components/schemas/UpdateAssetParams' update_booking_page_appearance: '#/components/schemas/UpdateBookingPageAppearanceParams' update_booking_page_settings: '#/components/schemas/UpdateBookingPageSettingsParams' update_business_info: '#/components/schemas/UpdateBusinessInfoParams' update_calendar_event: '#/components/schemas/UpdateCalendarEventParams' update_client: '#/components/schemas/UpdateClientParams' update_customer_facing_config: '#/components/schemas/UpdateCustomerFacingConfigParams' update_group_session_seats: '#/components/schemas/UpdateGroupSessionSeatsParams' update_holiday: '#/components/schemas/UpdateHolidayParams' update_location: '#/components/schemas/UpdateLocationParams' update_order: '#/components/schemas/UpdateOrderParams' update_product: '#/components/schemas/UpdateProductParams' update_service: '#/components/schemas/UpdateServiceParams' update_staff: '#/components/schemas/UpdateStaffParams' update_transfer_rule: '#/components/schemas/UpdateTransferRuleParams' validate_user_verification_code: '#/components/schemas/ValidateUserVerificationCodeParams' type: object required: - name - params title: SMBToolConfig description: SMB tool configuration that wraps SMB tool parameters. examples: - description: '' enabled: true name: search_clients params: smb_tool_type: search_clients type: smb x-fern-ignore: true UnitTestToolCallParameter: properties: eval: oneOf: - $ref: '#/components/schemas/LLMParameterEvaluationStrategy' - $ref: '#/components/schemas/RegexParameterEvaluationStrategy' - $ref: '#/components/schemas/ExactParameterEvaluationStrategy' - $ref: '#/components/schemas/MatchAnythingParameterEvaluationStrategy' title: Eval discriminator: propertyName: type mapping: anything: '#/components/schemas/MatchAnythingParameterEvaluationStrategy' exact: '#/components/schemas/ExactParameterEvaluationStrategy' llm: '#/components/schemas/LLMParameterEvaluationStrategy' regex: '#/components/schemas/RegexParameterEvaluationStrategy' path: type: string title: Path type: object required: - eval - path title: UnitTestToolCallParameter SetBookingSlugParams: properties: smb_tool_type: type: string const: set_booking_slug title: Smb Tool Type default: set_booking_slug type: object title: SetBookingSlugParams WorkflowUnconditionalModel-Output: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: unconditional title: Type default: unconditional type: object required: - label - type title: WorkflowUnconditionalModel BackgroundSoundConfigWorkflowOverride: properties: source_type: anyOf: - $ref: '#/components/schemas/BackgroundSoundSourceType' - type: 'null' description: The type of background sound source. source_id: anyOf: - $ref: '#/components/schemas/BackgroundSoundPresetId' - type: 'null' description: Identifier for the sound source. volume: anyOf: - type: number - type: 'null' title: Volume description: Volume level for background sound (0.01 to 1.0). crossfade_loop: anyOf: - type: boolean - type: 'null' title: Crossfade Loop description: Apply a crossfade at the loop boundary to avoid audible pops when the sound loops. type: object title: BackgroundSoundConfigWorkflowOverride TransferToNumberResultErrorModel: properties: result_type: type: string const: transfer_to_number_error title: Result Type default: transfer_to_number_error status: type: string const: error title: Status default: error error: type: string title: Error details: anyOf: - type: string - type: 'null' title: Details type: object required: - error title: TransferToNumberResultErrorModel ModerationGuardrail-Output: properties: execution_mode: $ref: '#/components/schemas/GuardrailExecutionMode' default: streaming config: $ref: '#/components/schemas/ModerationConfig' type: object title: ModerationGuardrail GetConversationSummaryResponseModel: properties: conversation_id: type: string title: Conversation Id agent_id: type: string title: Agent Id status: type: string enum: - initiated - in-progress - processing - done - failed title: Status call_summary_title: anyOf: - type: string - type: 'null' title: Call Summary Title description: Short generated title for the conversation. transcript_summary: anyOf: - type: string - type: 'null' title: Transcript Summary description: Generated natural-language summary of the call. call_successful: anyOf: - $ref: '#/components/schemas/EvaluationSuccessResult' - type: 'null' message_count: type: integer title: Message Count description: Number of plain chat message turns in the conversation. messages: anyOf: - items: $ref: '#/components/schemas/ConversationSummaryMessageModel' type: array - type: 'null' title: Messages description: The plain chat messages (role and text only). Included only when message_count does not exceed the requested max_messages; otherwise null and messages_omitted is true. messages_omitted: type: boolean title: Messages Omitted description: True when the chat messages were omitted because the conversation was too long. Fetch the full transcript for the messages. default: false note: type: string title: Note description: Guidance telling the agent how to get the full transcript. type: object required: - conversation_id - agent_id - status - message_count - note title: GetConversationSummaryResponseModel PlatformCategoryUsage: properties: credits: type: integer title: Credits default: 0 price: type: number title: Price default: 0.0 quantity: type: number title: Quantity default: 0.0 type: object title: PlatformCategoryUsage description: Accumulated charge for a single :class:`PlatformCategory`. DeleteHolidayParams: properties: smb_tool_type: type: string const: delete_holiday title: Smb Tool Type default: delete_holiday type: object title: DeleteHolidayParams TTSConversationalConfigWorkflowOverride-Input: properties: model_id: anyOf: - $ref: '#/components/schemas/TTSConversationalModel' - type: 'null' description: The model to use for TTS x-convai-client-override: true voice_id: anyOf: - type: string - type: 'null' title: Voice Id description: The voice ID to use for TTS x-convai-client-override: true x-convai-language-override: true supported_voices: anyOf: - items: $ref: '#/components/schemas/SupportedVoice' type: array - type: 'null' title: Supported Voices description: Additional supported voices for the agent x-convai-client-override: true x-convai-soft-override-disallowed: true expressive_mode: anyOf: - type: boolean - type: 'null' title: Expressive Mode description: When enabled, applies expressive audio tags prompt. Automatically disabled for non-v3 models. suggested_audio_tags: anyOf: - items: $ref: '#/components/schemas/SuggestedAudioTag' type: array - type: 'null' title: Suggested Audio Tags description: Suggested audio tags to boost expressive speech (for eleven_v3 and eleven_v3_conversational models). The agent can still use other tags not listed here. agent_output_audio_format: anyOf: - $ref: '#/components/schemas/TTSOutputFormat' - type: 'null' description: The audio format to use for TTS optimize_streaming_latency: anyOf: - $ref: '#/components/schemas/TTSOptimizeStreamingLatency' - type: 'null' description: 'Deprecated: this field is a no-op and is ignored.' stability: anyOf: - type: number - type: 'null' title: Stability description: The stability of generated speech x-convai-client-override: true speed: anyOf: - type: number - type: 'null' title: Speed description: The speed of generated speech x-convai-client-override: true similarity_boost: anyOf: - type: number - type: 'null' title: Similarity Boost description: The similarity boost for generated speech x-convai-client-override: true text_normalisation_type: anyOf: - $ref: '#/components/schemas/TextNormalisationType' - type: 'null' description: Method for converting numbers to words before converting text to speech. If set to SYSTEM_PROMPT, the system prompt will be updated to include normalization instructions. If set to ELEVENLABS, the text will be normalized after generation, incurring slight additional latency. pronunciation_dictionary_locators: anyOf: - items: $ref: '#/components/schemas/PydanticPronunciationDictionaryVersionLocator' type: array - type: 'null' title: Pronunciation Dictionary Locators description: The pronunciation dictionary locators x-convai-client-override: true enable_phoneme_tags: anyOf: - type: boolean - type: 'null' title: Enable Phoneme Tags description: Opt-in to SSML phoneme tag handling for V3 models. When enabled, phoneme tags (inline and from pronunciation dictionaries) are parsed into inline IPA before being sent to the model. audio_effects: anyOf: - $ref: '#/components/schemas/EffectsSpec-Input' - type: 'null' description: 'Optional TTS effects spec: filter preset, distance (proximity EQ), and environment (convolution reverb).' type: object title: TTSConversationalConfigWorkflowOverride example: agent_output_audio_format: pcm_16000 model_id: eleven_turbo_v2 optimize_streaming_latency: 3 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal BuiltInToolsWorkflowOverride-Input: properties: transfer_to_agent: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The transfer to agent tool end_call: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The end call tool language_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The language detection tool transfer_to_number: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The transfer to number tool skip_turn: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The skip turn tool play_keypad_touch_tone: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The play DTMF tool voicemail_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Input' - type: 'null' description: The voicemail detection tool type: object title: BuiltInToolsWorkflowOverride ListHolidaysParams: properties: smb_tool_type: type: string const: list_holidays title: Smb Tool Type default: list_holidays type: object title: ListHolidaysParams DependentUnknownMCPServerIdentifier: properties: id: type: string title: Id type: type: string const: unknown title: Type default: unknown type: object required: - id title: DependentUnknownMCPServerIdentifier ConfigEntityType: type: string enum: - name - name.name_given - name.name_family - name.name_other - email_address - contact_number - dob - age - religious_belief - political_opinion - sexual_orientation - ethnicity_race - marital_status - occupation - physical_attribute - language - username - password - url - organization - financial_id - financial_id.payment_card - financial_id.payment_card.payment_card_number - financial_id.payment_card.payment_card_expiration_date - financial_id.payment_card.payment_card_cvv - financial_id.bank_account - financial_id.bank_account.bank_account_number - financial_id.bank_account.bank_routing_number - financial_id.bank_account.swift_bic_code - financial_id.financial_id_other - location - location.location_address - location.location_city - location.location_postal_code - location.location_coordinate - location.location_state - location.location_country - location.location_other - date - date_interval - unique_id - unique_id.government_issued_id - unique_id.account_number - unique_id.vehicle_id - unique_id.healthcare_number - unique_id.healthcare_number.medical_record_number - unique_id.healthcare_number.health_plan_beneficiary_number - unique_id.device_id - unique_id.unique_id_other - medical - medical.medical_condition - medical.medication - medical.medical_procedure - medical.medical_measurement - medical.medical_other title: ConfigEntityType description: 'Entity types for the API configuration. This enum contains all valid entity type configurations that users can specify: - Parent types (e.g., "name", "financial_id") that expand to all subtypes - Specific subtypes using dot notation (e.g., "name.full_name") - Standalone terminal types (e.g., "email_address") When converted for service use, parent types expand to all their terminal subtypes.' WidgetConfig-Output: properties: variant: $ref: '#/components/schemas/EmbedVariant' description: The variant of the widget default: full placement: $ref: '#/components/schemas/WidgetPlacement' description: The placement of the widget on the screen default: bottom-right expandable: $ref: '#/components/schemas/WidgetExpandable' description: Whether the widget is expandable default: never avatar: anyOf: - $ref: '#/components/schemas/OrbAvatar' - $ref: '#/components/schemas/URLAvatar' - $ref: '#/components/schemas/ImageAvatar' title: Avatar description: The avatar of the widget feedback_mode: $ref: '#/components/schemas/WidgetFeedbackMode' description: The feedback mode of the widget default: none end_feedback: anyOf: - $ref: '#/components/schemas/WidgetEndFeedbackConfig' - type: 'null' description: Configuration for feedback collected at the end of the conversation bg_color: type: string title: Bg Color description: The background color of the widget default: '#ffffff' text_color: type: string title: Text Color description: The text color of the widget default: '#000000' btn_color: type: string title: Btn Color description: The button color of the widget default: '#000000' btn_text_color: type: string title: Btn Text Color description: The button text color of the widget default: '#ffffff' border_color: type: string title: Border Color description: The border color of the widget default: '#e1e1e1' focus_color: type: string title: Focus Color description: The focus color of the widget default: '#000000' border_radius: anyOf: - type: integer - type: 'null' title: Border Radius description: The border radius of the widget btn_radius: anyOf: - type: integer - type: 'null' title: Btn Radius description: The button radius of the widget action_text: anyOf: - type: string - type: 'null' title: Action Text description: The action text of the widget start_call_text: anyOf: - type: string - type: 'null' title: Start Call Text description: The start call text of the widget end_call_text: anyOf: - type: string - type: 'null' title: End Call Text description: The end call text of the widget expand_text: anyOf: - type: string - type: 'null' title: Expand Text description: The expand text of the widget listening_text: anyOf: - type: string - type: 'null' title: Listening Text description: The text to display when the agent is listening speaking_text: anyOf: - type: string - type: 'null' title: Speaking Text description: The text to display when the agent is speaking shareable_page_text: anyOf: - type: string - type: 'null' title: Shareable Page Text description: The text to display when sharing shareable_page_show_terms: type: boolean title: Shareable Page Show Terms description: Whether to show terms and conditions on the shareable page default: true terms_text: anyOf: - type: string - type: 'null' title: Terms Text description: The text to display for terms and conditions terms_html: anyOf: - type: string - type: 'null' title: Terms Html description: The HTML to display for terms and conditions terms_key: anyOf: - type: string - type: 'null' title: Terms Key description: The key to display for terms and conditions show_avatar_when_collapsed: anyOf: - type: boolean - type: 'null' title: Show Avatar When Collapsed description: Whether to show the avatar when the widget is collapsed default: false disable_banner: type: boolean title: Disable Banner description: Whether to disable the banner default: false override_link: anyOf: - type: string - type: 'null' title: Override Link description: The override link for the widget markdown_link_allowed_hosts: items: $ref: '#/components/schemas/AllowlistItem' type: array title: Markdown Link Allowed Hosts description: 'List of allowed hostnames for clickable markdown links. Use { hostname: ''*'' } to allow any domain. Empty means no links are allowed.' markdown_link_include_www: type: boolean title: Markdown Link Include Www description: Whether to automatically include www. variants of allowed hosts default: true markdown_link_allow_http: type: boolean title: Markdown Link Allow Http description: Whether to allow http:// in addition to https:// for allowed hosts default: true mic_muting_enabled: type: boolean title: Mic Muting Enabled description: Whether to enable mic muting default: true transcript_enabled: type: boolean title: Transcript Enabled description: Whether the widget should show the conversation transcript as it goes on default: true text_input_enabled: type: boolean title: Text Input Enabled description: Whether the user should be able to send text messages default: true conversation_mode_toggle_enabled: type: boolean title: Conversation Mode Toggle Enabled description: Whether to enable the conversation mode toggle in the widget default: false default_expanded: type: boolean title: Default Expanded description: Whether the widget should be expanded by default default: false always_expanded: type: boolean title: Always Expanded description: Whether the widget should always be expanded default: false dismissible: type: boolean title: Dismissible description: Whether the widget can be dismissed by the user default: false show_agent_status: type: boolean title: Show Agent Status description: Whether to show agent working/done/error status during tool use default: false show_conversation_id: type: boolean title: Show Conversation Id description: Whether to show the conversation ID after disconnection. default: true strip_audio_tags: type: boolean title: Strip Audio Tags description: Whether to strip audio markup from messages. default: true syntax_highlight_theme: anyOf: - type: string enum: - light - dark - type: 'null' title: Syntax Highlight Theme description: Theme for code block syntax highlighting. Defaults to auto-detection by the widget when not set. text_contents: $ref: '#/components/schemas/WidgetTextContents' description: Text contents of the widget styles: $ref: '#/components/schemas/WidgetStyles' description: Styles for the widget show_resize_button: type: boolean title: Show Resize Button description: Whether to show the resize button default: true language_selector: type: boolean title: Language Selector description: Whether to show the language selector default: false supports_text_only: type: boolean title: Supports Text Only description: Whether the widget can switch to text only mode default: true custom_avatar_path: anyOf: - type: string - type: 'null' title: Custom Avatar Path description: The custom avatar path language_presets: additionalProperties: $ref: '#/components/schemas/WidgetLanguagePreset' type: object title: Language Presets description: Language presets for the widget type: object title: WidgetConfig example: custom_avatar_path: https://example.com/avatar.png language_selector: false AgentDeploymentRequest: properties: requests: items: $ref: '#/components/schemas/AgentDeploymentRequestItem' type: array title: Requests description: List of deployment requests examples: - - branch_id: agtbrch_8901k4t9z5defmb8vh3e9361y7nj deployment_strategy: traffic_percentage: 0.5 type: percentage type: object required: - requests title: AgentDeploymentRequest GetKnowledgeBaseURLResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. type: type: string const: url title: Type url: type: string title: Url extracted_inner_html: type: string title: Extracted Inner Html content_format: $ref: '#/components/schemas/ContentFormat' default: html auto_sync_info: anyOf: - $ref: '#/components/schemas/AutoSyncInfo' - type: 'null' type: object required: - id - name - metadata - supported_usages - access_info - type - url - extracted_inner_html title: GetKnowledgeBaseURLResponseModel ASTAndOperatorNode-Input: properties: type: type: string const: and_operator title: Type default: and_operator children: items: $ref: '#/components/schemas/ASTNode-Input' type: array minItems: 2 title: Children description: Child nodes of the logical operator. type: object required: - children title: ASTAndOperatorNode AsyncConversationMetadata: properties: delivery_status: type: string enum: - pending - success - failed title: Delivery Status delivery_timestamp: type: integer title: Delivery Timestamp delivery_error: anyOf: - type: string - type: 'null' title: Delivery Error external_system: type: string title: External System external_id: type: string title: External Id external_link: anyOf: - type: string - type: 'null' title: External Link retry_count: type: integer title: Retry Count default: 0 last_retry_timestamp: anyOf: - type: integer - type: 'null' title: Last Retry Timestamp last_processed_external_message_id: anyOf: - type: string - type: 'null' title: Last Processed External Message Id type: object required: - delivery_status - delivery_timestamp - external_system - external_id title: AsyncConversationMetadata description: Metadata for async conversation delivery (Zendesk, Slack, etc.). DashboardCriteriaChartModel: properties: name: type: string title: Name type: type: string const: criteria title: Type default: criteria criteria_id: type: string title: Criteria Id type: object required: - name - criteria_id title: DashboardCriteriaChartModel ContentGuardrail-Output: properties: execution_mode: $ref: '#/components/schemas/GuardrailExecutionMode' default: streaming config: $ref: '#/components/schemas/ContentConfig' trigger_action: oneOf: - $ref: '#/components/schemas/EndCallTriggerAction' - $ref: '#/components/schemas/RetryTriggerAction' title: Trigger Action discriminator: propertyName: type mapping: end_call: '#/components/schemas/EndCallTriggerAction' retry: '#/components/schemas/RetryTriggerAction' type: object title: ContentGuardrail CreateClientParams: properties: smb_tool_type: type: string const: create_client title: Smb Tool Type default: create_client type: object title: CreateClientParams description: Create a new client in the system. CreateConversationTagRequestModel: properties: title: type: string maxLength: 120 minLength: 1 title: Title description: Display title of the tag. description: anyOf: - type: string maxLength: 1000 - type: 'null' title: Description description: Optional free-text description. type: object required: - title title: CreateConversationTagRequestModel AgentWorkspaceOverrides-Input: properties: conversation_initiation_client_data_webhook: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataWebhook' - type: 'null' description: The webhook to send conversation initiation client data to webhooks: $ref: '#/components/schemas/ConvAIWebhooks' type: object title: AgentWorkspaceOverrides ContentConfig: properties: sexual: $ref: '#/components/schemas/ContentThresholdGuardrail' violence: $ref: '#/components/schemas/ContentThresholdGuardrail' harassment: $ref: '#/components/schemas/ContentThresholdGuardrail' self_harm: $ref: '#/components/schemas/ContentThresholdGuardrail' profanity: $ref: '#/components/schemas/ContentThresholdGuardrail' religion_or_politics: $ref: '#/components/schemas/ContentThresholdGuardrail' medical_and_legal_information: $ref: '#/components/schemas/ContentThresholdGuardrail' type: object title: ContentConfig AgentBranchResponse: properties: id: type: string title: Id name: type: string title: Name agent_id: type: string title: Agent Id description: type: string title: Description created_at: type: integer title: Created At last_committed_at: type: integer title: Last Committed At is_archived: type: boolean title: Is Archived protection_status: $ref: '#/components/schemas/BranchProtectionStatus' default: writer_perms_required access_info: anyOf: - $ref: '#/components/schemas/ResourceAccessInfo' - type: 'null' description: Access information for the branch current_live_percentage: type: number title: Current Live Percentage description: Percentage of traffic live on the branch default: 0.0 parent_branch: anyOf: - $ref: '#/components/schemas/AgentBranchBasicInfo' - type: 'null' description: Parent branch of the branch most_recent_versions: items: $ref: '#/components/schemas/AgentVersionMetadata' type: array title: Most Recent Versions description: Most recent versions on the branch type: object required: - id - name - agent_id - description - created_at - last_committed_at - is_archived title: AgentBranchResponse SIPTrunkOutboundCallResponse: properties: success: type: boolean title: Success message: type: string title: Message conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id sip_call_id: anyOf: - type: string - type: 'null' title: Sip Call Id type: object required: - success - message - conversation_id - sip_call_id title: SIPTrunkOutboundCallResponse AlertingWebhookNotifierResponse: properties: type: type: string const: webhook title: Type default: webhook webhook_id: type: string title: Webhook Id type: object required: - webhook_id title: AlertingWebhookNotifierResponse CreatePhoneNumberResponseModel: properties: phone_number_id: type: string title: Phone Number Id description: Phone entity ID type: object required: - phone_number_id title: CreatePhoneNumberResponseModel Body_Simulates_a_conversation__Stream__v1_convai_agents__agent_id__simulate_conversation_stream_post: properties: simulation_specification: $ref: '#/components/schemas/ConversationSimulationSpecification' description: A specification detailing how the conversation should be simulated extra_evaluation_criteria: anyOf: - items: $ref: '#/components/schemas/PromptEvaluationCriteria' type: array - type: 'null' title: Extra Evaluation Criteria description: A list of evaluation criteria to test new_turns_limit: type: integer title: New Turns Limit description: Maximum number of new turns to generate in the conversation simulation default: 10000 type: object required: - simulation_specification title: Body_Simulates_a_conversation__Stream__v1_convai_agents__agent_id__simulate_conversation_stream_post MCPToolApprovalHash: properties: tool_name: type: string title: Tool Name description: The name of the MCP tool tool_hash: type: string title: Tool Hash description: SHA256 hash of the tool's parameters and description approval_policy: $ref: '#/components/schemas/MCPToolApprovalPolicy' description: The approval policy for this tool default: requires_approval type: object required: - tool_name - tool_hash title: MCPToolApprovalHash description: Model for storing tool approval hashes for per-tool approval. GetKnowledgeBaseDependentAgentsResponseModel: properties: agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Agents branches: items: $ref: '#/components/schemas/DependentBranchInfo' type: array title: Branches next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - agents - has_more title: GetKnowledgeBaseDependentAgentsResponseModel WorkflowToolNestedToolsStepModel-Input: properties: step_latency_secs: type: number title: Step Latency Secs type: type: string const: nested_tools title: Type default: nested_tools node_id: type: string title: Node Id requests: items: $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallCommonModel-Input' type: array title: Requests results: items: oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptOtherToolsResultCommonModel' - $ref: '#/components/schemas/ConversationHistoryTranscriptSystemToolResultCommonModel-Input' - $ref: '#/components/schemas/ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Input' - $ref: '#/components/schemas/ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Input' type: array title: Results is_successful: type: boolean title: Is Successful type: object required: - step_latency_secs - node_id - requests - results - is_successful title: WorkflowToolNestedToolsStepModel MCPServerConfig-Input: properties: approval_policy: $ref: '#/components/schemas/MCPApprovalPolicy' default: require_approval_all tool_approval_hashes: items: $ref: '#/components/schemas/MCPToolApprovalHash' type: array title: Tool Approval Hashes description: List of tool approval hashes for per-tool approval when approval_policy is REQUIRE_APPROVAL_PER_TOOL transport: $ref: '#/components/schemas/MCPServerTransport' description: The transport type used to connect to the MCP server default: SSE url: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' title: Url description: The URL of the MCP server, if this contains a secret please store as a workspace secret, otherwise store as a plain string. Must use https secret_token: anyOf: - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIUserSecretDBModel' - type: 'null' title: Secret Token description: The secret token (Authorization header) stored as a workspace secret or in-place secret request_headers: additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Headers description: The headers included in the request request_meta: additionalProperties: anyOf: - type: string - type: integer - type: number - type: boolean - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Meta description: Entries sent in the MCP `_meta` field of tools/call requests. Values may be JSON scalars, or references to a workspace secret, dynamic variable, or environment variable resolved per call. auth_connection: anyOf: - $ref: '#/components/schemas/AuthConnectionLocator' - $ref: '#/components/schemas/EnvironmentAuthConnectionLocator' - type: 'null' title: Auth Connection description: Optional auth connection to use for authentication with this MCP server name: type: string title: Name description: type: string title: Description default: '' force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, all tools from this MCP server will require pre-tool execution speech.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. Applies to every tool from this MCP server unless overridden per tool. default: auto disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while any tool from this MCP server is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. Applies to every tool from this MCP server unless overridden per tool. default: allow tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution for all tools from this MCP server tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play for all tools from this MCP server default: auto execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how all tools from this MCP server execute: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for each MCP tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 30 tool_config_overrides: items: $ref: '#/components/schemas/MCPToolConfigOverride-Input' type: array title: Tool Config Overrides description: List of per-tool configuration overrides that override the server-level defaults for specific tools disable_compression: type: boolean title: Disable Compression description: Whether to disable HTTP compression for this MCP server. Enable this if the server does not support compressed responses. default: false type: object required: - url - name title: MCPServerConfig ConversationInitiationClientDataWebhook: properties: url: type: string title: Url description: The URL to send the webhook to request_headers: additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' type: object title: Request Headers description: The headers to send with the webhook request type: object required: - url - request_headers title: ConversationInitiationClientDataWebhook example: request_headers: Content-Type: application/json url: https://example.com/webhook GetPhoneNumberTwilioResponseModel: properties: phone_number: type: string title: Phone Number description: Phone number label: type: string title: Label description: Label for the phone number supports_inbound: type: boolean title: Supports Inbound description: This field is deprecated and will be removed in the future. Whether this phone number supports inbound calls default: true deprecated: true supports_outbound: type: boolean title: Supports Outbound description: This field is deprecated and will be removed in the future. Whether this phone number supports outbound calls default: true deprecated: true phone_number_id: type: string title: Phone Number Id description: The ID of the phone number assigned_agent: anyOf: - $ref: '#/components/schemas/PhoneNumberAgentInfo' - type: 'null' description: The agent that is assigned to the phone number provider: type: string const: twilio title: Provider description: Phone provider default: twilio type: object required: - phone_number - label - phone_number_id title: GetPhoneNumberTwilioResponseModel example: label: Customer Support phone_number: '+1234567890' phone_number_id: phone_123 provider: twilio ConversationConfigClientOverrideConfig-Output: properties: asr: $ref: '#/components/schemas/ASRConversationalConfigOverrideConfig' description: Configures overrides for nested fields. turn: $ref: '#/components/schemas/TurnConfigOverrideConfig' description: Configures overrides for nested fields. tts: $ref: '#/components/schemas/TTSConversationalConfigOverrideConfig' description: Configures overrides for nested fields. conversation: $ref: '#/components/schemas/ConversationConfigOverrideConfig' description: Configures overrides for nested fields. agent: $ref: '#/components/schemas/AgentConfigOverrideConfig' description: Configures overrides for nested fields. type: object title: ConversationConfigClientOverrideConfig GetPhoneNumberOutboundSIPTrunkConfigResponseModel: properties: address: type: string title: Address description: Hostname or IP the SIP INVITE is sent to transport: $ref: '#/components/schemas/SIPTrunkTransportEnum' description: Protocol to use for SIP transport media_encryption: $ref: '#/components/schemas/SIPMediaEncryptionEnum' description: Whether or not to encrypt media (data layer). headers: additionalProperties: type: string type: object title: Headers description: SIP headers for INVITE request attributes_to_headers: additionalProperties: type: string type: object title: Attributes To Headers description: Map of dynamic variable name to header name for attributes_to_headers has_auth_credentials: type: boolean title: Has Auth Credentials description: Whether authentication credentials are configured username: anyOf: - type: string - type: 'null' title: Username description: SIP trunk username (if available) has_outbound_trunk: type: boolean title: Has Outbound Trunk description: Whether a LiveKit SIP outbound trunk is configured default: false enabled_codecs: items: $ref: '#/components/schemas/MediaCodec' type: array title: Enabled Codecs description: Media codecs that are offered in the SDP for outbound calls. If empty, all supported codecs are offered. type: object required: - address - transport - media_encryption - has_auth_credentials title: GetPhoneNumberOutboundSIPTrunkConfigResponseModel description: SIP Trunk configuration details for a phone number TestToolResultModel: properties: result_type: type: string const: testing_tool_result title: Result Type default: testing_tool_result status: type: string const: success title: Status default: success reason: type: string title: Reason default: Skipping tool call in test mode type: object title: TestToolResultModel FrustratedConversationRef: properties: conversation_id: type: string title: Conversation Id agent_id: type: string title: Agent Id start_time_unix_secs: type: integer title: Start Time Unix Secs overall_label: type: string enum: - positive - neutral - negative title: Overall Label overall_sentiment_score: type: number title: Overall Sentiment Score overall_frustration_score: type: number title: Overall Frustration Score type: object required: - conversation_id - agent_id - start_time_unix_secs - overall_label - overall_sentiment_score - overall_frustration_score title: FrustratedConversationRef ConversationConfig-Output: properties: text_only: type: boolean title: Text Only description: If enabled audio will not be processed and only text will be used, use to avoid audio pricing. default: false x-convai-client-override: true max_duration_seconds: type: integer title: Max Duration Seconds description: The maximum duration of a conversation in seconds default: 600 x-convai-client-override: true client_events: items: $ref: '#/components/schemas/ClientEvent' type: array title: Client Events description: The events that will be sent to the client file_input: $ref: '#/components/schemas/FileInputConfig' description: Configuration for file input (image/PDF uploads) during conversations. x-convai-client-override: true monitoring_enabled: type: boolean title: Monitoring Enabled description: Enable real-time monitoring of conversations via WebSocket default: false monitoring_events: items: $ref: '#/components/schemas/ClientEvent' type: array title: Monitoring Events description: The events that will be sent to monitoring connections. dtmf_input_settings: anyOf: - $ref: '#/components/schemas/DTMFInputConfig' - type: 'null' description: Configure DTMF (keypad) input collection during phone calls background_sound: $ref: '#/components/schemas/BackgroundSoundConfig' description: Configuration for background sound during conversations. source_attribution: type: boolean title: Source Attribution description: When enabled and knowledge base content is present, the LLM is instructed to report which sources it used. default: false type: object title: ConversationConfig example: client_events: - audio - interruption max_duration_seconds: 600 GetClientAppointmentsParams: properties: smb_tool_type: type: string const: get_client_appointments title: Smb Tool Type default: get_client_appointments include_cancelled: type: boolean title: Include Cancelled default: false type: object title: GetClientAppointmentsParams CreateStaffParams: properties: smb_tool_type: type: string const: create_staff title: Smb Tool Type default: create_staff type: object title: CreateStaffParams description: Create a new staff member in the system. BranchProtectionStatus: type: string enum: - writer_perms_required - admin_perms_required title: BranchProtectionStatus default: writer_perms_required WhatsAppTemplateLocationParamDetails: properties: latitude: type: string title: Latitude longitude: type: string title: Longitude name: type: string title: Name address: type: string title: Address type: object required: - latitude - longitude - name - address title: WhatsAppTemplateLocationParamDetails GetBookingSlugStatusParams: properties: smb_tool_type: type: string const: get_booking_slug_status title: Smb Tool Type default: get_booking_slug_status type: object title: GetBookingSlugStatusParams AlertingIntegrationNotifier: oneOf: - $ref: '#/components/schemas/AlertingPagerDutyNotifier' - $ref: '#/components/schemas/AlertingSlackNotifier' discriminator: propertyName: integration_type mapping: pagerduty: '#/components/schemas/AlertingPagerDutyNotifier' slack: '#/components/schemas/AlertingSlackNotifier' MCPServerResponseModel: properties: id: type: string title: Id config: $ref: '#/components/schemas/MCPServerConfig-Output' access_info: anyOf: - $ref: '#/components/schemas/ResourceAccessInfo' - type: 'null' description: The access information of the MCP Server dependent_agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Dependent Agents description: List of agents that depend on this MCP Server. metadata: $ref: '#/components/schemas/MCPServerMetadataResponseModel' description: The metadata of the MCP Server type: object required: - id - config - metadata title: MCPServerResponseModel description: Response model representing an MCP Server configuration. KnowledgeBaseBulkDeleteSuccessfulResponseModel: properties: status: type: string const: success title: Status default: success data: $ref: '#/components/schemas/KnowledgeBaseDeletedResponseModel' type: object required: - status - data title: KnowledgeBaseBulkDeleteSuccessfulResponseModel WhatsAppTemplateDocumentParam: properties: type: type: string const: document title: Type default: document document: $ref: '#/components/schemas/WhatsAppTemplateDocumentParamDetails' type: object required: - document title: WhatsAppTemplateDocumentParam ConvAIWebhooks: properties: post_call_webhook_id: anyOf: - type: string - type: 'null' title: Post Call Webhook Id events: items: $ref: '#/components/schemas/WebhookEventType' type: array title: Events description: 'List of event types to send via webhook. Options: transcript, audio, call_initiation_failure, answering_machine_detection, unredacted_transcript, unredacted_audio.' transcript_format: $ref: '#/components/schemas/WebhookTranscriptFormat' description: Format for transcript webhooks. default: json send_audio: anyOf: - type: boolean - type: 'null' title: Send Audio description: 'DEPRECATED: Use ''events'' field instead. Whether to send audio data with post-call webhooks for ConvAI conversations' deprecated: true type: object title: ConvAIWebhooks WhatsAppTemplateDocumentParamDetails: properties: link: type: string title: Link filename: anyOf: - type: string - type: 'null' title: Filename type: object required: - link title: WhatsAppTemplateDocumentParamDetails PydanticPronunciationDictionaryVersionLocator: properties: pronunciation_dictionary_id: type: string title: Pronunciation Dictionary Id description: The ID of the pronunciation dictionary version_id: anyOf: - type: string - type: 'null' title: Version Id description: The ID of the version of the pronunciation dictionary type: object required: - pronunciation_dictionary_id - version_id title: PydanticPronunciationDictionaryVersionLocator description: 'A locator for other documents to be able to reference a specific dictionary and it''s version. This is a pydantic version of PronunciationDictionaryVersionLocatorDBModel. Required to ensure compat with the rest of the agent data models.' ASRConversationalConfigOverride: properties: keywords: anyOf: - items: type: string type: array - type: 'null' title: Keywords description: Keywords to boost prediction probability for x-convai-client-override: true x-convai-soft-override-disallowed: true type: object title: ASRConversationalConfigOverride example: keywords: - hello - world WidgetTextContents: properties: main_label: anyOf: - type: string - type: 'null' title: Main Label description: Call to action displayed inside the compact and full variants. start_call: anyOf: - type: string - type: 'null' title: Start Call description: Text and ARIA label for the start call button. start_chat: anyOf: - type: string - type: 'null' title: Start Chat description: Text and ARIA label for the start chat button (text only) new_call: anyOf: - type: string - type: 'null' title: New Call description: Text and ARIA label for the new call button. Displayed when the caller already finished at least one call in order ot start the next one. end_call: anyOf: - type: string - type: 'null' title: End Call description: Text and ARIA label for the end call button. mute_microphone: anyOf: - type: string - type: 'null' title: Mute Microphone description: ARIA label for the mute microphone button. change_language: anyOf: - type: string - type: 'null' title: Change Language description: ARIA label for the change language dropdown. collapse: anyOf: - type: string - type: 'null' title: Collapse description: ARIA label for the collapse button. expand: anyOf: - type: string - type: 'null' title: Expand description: ARIA label for the expand button. copied: anyOf: - type: string - type: 'null' title: Copied description: Text displayed when the user copies a value using the copy button. accept_terms: anyOf: - type: string - type: 'null' title: Accept Terms description: Text and ARIA label for the accept terms button. dismiss_terms: anyOf: - type: string - type: 'null' title: Dismiss Terms description: Text and ARIA label for the cancel terms button. listening_status: anyOf: - type: string - type: 'null' title: Listening Status description: Status displayed when the agent is listening. speaking_status: anyOf: - type: string - type: 'null' title: Speaking Status description: Status displayed when the agent is speaking. connecting_status: anyOf: - type: string - type: 'null' title: Connecting Status description: Status displayed when the agent is connecting. chatting_status: anyOf: - type: string - type: 'null' title: Chatting Status description: Status displayed when the agent is chatting (text only) input_label: anyOf: - type: string - type: 'null' title: Input Label description: ARIA label for the text message input. input_placeholder: anyOf: - type: string - type: 'null' title: Input Placeholder description: Placeholder text for the text message input. input_placeholder_text_only: anyOf: - type: string - type: 'null' title: Input Placeholder Text Only description: Placeholder text for the text message input (text only) input_placeholder_new_conversation: anyOf: - type: string - type: 'null' title: Input Placeholder New Conversation description: Placeholder text for the text message input when starting a new conversation (text only) user_ended_conversation: anyOf: - type: string - type: 'null' title: User Ended Conversation description: Information message displayed when the user ends the conversation. agent_ended_conversation: anyOf: - type: string - type: 'null' title: Agent Ended Conversation description: Information message displayed when the agent ends the conversation. conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id description: Text label used next to the conversation ID. error_occurred: anyOf: - type: string - type: 'null' title: Error Occurred description: Text label used when an error occurs. copy_id: anyOf: - type: string - type: 'null' title: Copy Id description: Text and ARIA label used for the copy ID button. initiate_feedback: anyOf: - type: string - type: 'null' title: Initiate Feedback description: Text displayed to prompt the user for feedback. request_follow_up_feedback: anyOf: - type: string - type: 'null' title: Request Follow Up Feedback description: Text displayed to request additional feedback details. thanks_for_feedback: anyOf: - type: string - type: 'null' title: Thanks For Feedback description: Text displayed to thank the user for providing feedback. thanks_for_feedback_details: anyOf: - type: string - type: 'null' title: Thanks For Feedback Details description: Additional text displayed explaining the value of user feedback. follow_up_feedback_placeholder: anyOf: - type: string - type: 'null' title: Follow Up Feedback Placeholder description: Placeholder text for the follow-up feedback input field. submit: anyOf: - type: string - type: 'null' title: Submit description: Text and ARIA label for the submit button. go_back: anyOf: - type: string - type: 'null' title: Go Back description: Text and ARIA label for the go back button. send_message: anyOf: - type: string - type: 'null' title: Send Message description: Text and ARIA label for the send message button. text_mode: anyOf: - type: string - type: 'null' title: Text Mode description: Text and ARIA label for the switch to text mode button. voice_mode: anyOf: - type: string - type: 'null' title: Voice Mode description: Text and ARIA label for the switch to voice mode button. switched_to_text_mode: anyOf: - type: string - type: 'null' title: Switched To Text Mode description: Toast notification displayed when switching to text mode. switched_to_voice_mode: anyOf: - type: string - type: 'null' title: Switched To Voice Mode description: Toast notification displayed when switching to voice mode. copy: anyOf: - type: string - type: 'null' title: Copy description: Text and ARIA label for the copy button. download: anyOf: - type: string - type: 'null' title: Download description: Text and ARIA label for the download button. wrap: anyOf: - type: string - type: 'null' title: Wrap description: Text and ARIA label for the wrap toggle button. agent_working: anyOf: - type: string - type: 'null' title: Agent Working description: Status text displayed when the agent is processing a tool call. agent_done: anyOf: - type: string - type: 'null' title: Agent Done description: Status text displayed when the agent finishes processing a tool call. agent_error: anyOf: - type: string - type: 'null' title: Agent Error description: Status text displayed when the agent encounters an error during a tool call. attach_file: anyOf: - type: string - type: 'null' title: Attach File description: Text and ARIA label for the attach file button. remove_file: anyOf: - type: string - type: 'null' title: Remove File description: ARIA label for the remove file button. file_upload_error: anyOf: - type: string - type: 'null' title: File Upload Error description: Error message displayed when a file fails to upload. file_type_unsupported: anyOf: - type: string - type: 'null' title: File Type Unsupported description: Error message displayed when an unsupported file type is selected. Followed by the list of accepted types. file_too_large: anyOf: - type: string - type: 'null' title: File Too Large description: Error message displayed when a file exceeds the maximum size limit. file_limit_reached: anyOf: - type: string - type: 'null' title: File Limit Reached description: Error message displayed when the maximum number of files for a conversation is reached. typing_indicator: anyOf: - type: string - type: 'null' title: Typing Indicator description: Status text displayed while the agent is typing. type: object title: WidgetTextContents WorkflowStartNodeModel-Output: properties: type: type: string const: start title: Type default: start position: $ref: '#/components/schemas/Position-Output' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. type: object required: - type - position - edge_order title: WorkflowStartNodeModel ConversationTurnMetrics: properties: metrics: additionalProperties: $ref: '#/components/schemas/MetricRecord' type: object title: Metrics convai_asr_provider: anyOf: - type: string - type: 'null' title: Convai Asr Provider convai_tts_model: anyOf: - type: string - type: 'null' title: Convai Tts Model convai_tts_cascade: anyOf: - type: string - type: 'null' title: Convai Tts Cascade type: object title: ConversationTurnMetrics ListMCPToolsResponseModel: properties: success: type: boolean title: Success description: Indicates if the operation was successful. tools: items: $ref: '#/components/schemas/Tool' type: array title: Tools description: A list of tools available on the MCP server. error_message: anyOf: - type: string - type: 'null' title: Error Message description: Error message if the operation was not successful. type: object required: - success - tools title: ListMCPToolsResponseModel description: Response model for testing tools available on an MCP server. example: success: true tools: - description: Gets current weather conditions for a location. inputSchema: properties: latitude: description: Latitude type: string longitude: description: Longitude type: string required: - latitude - longitude type: object name: weather_by_zapier_get_current - description: Description of tool2 inputSchema: properties: {} type: object name: tool2 BuiltInToolsWorkflowOverride-Output: properties: transfer_to_agent: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The transfer to agent tool end_call: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The end call tool language_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The language detection tool transfer_to_number: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The transfer to number tool skip_turn: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The skip turn tool play_keypad_touch_tone: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The play DTMF tool voicemail_detection: anyOf: - $ref: '#/components/schemas/SystemToolConfig-Output' - type: 'null' description: The voicemail detection tool type: object title: BuiltInToolsWorkflowOverride ConversationConfigWorkflowOverride-Output: properties: text_only: anyOf: - type: boolean - type: 'null' title: Text Only description: If enabled audio will not be processed and only text will be used, use to avoid audio pricing. x-convai-client-override: true max_duration_seconds: anyOf: - type: integer - type: 'null' title: Max Duration Seconds description: The maximum duration of a conversation in seconds x-convai-client-override: true client_events: anyOf: - items: $ref: '#/components/schemas/ClientEvent' type: array - type: 'null' title: Client Events description: The events that will be sent to the client file_input: anyOf: - $ref: '#/components/schemas/FileInputConfigWorkflowOverride' - type: 'null' description: Configuration for file input (image/PDF uploads) during conversations. x-convai-client-override: true monitoring_enabled: anyOf: - type: boolean - type: 'null' title: Monitoring Enabled description: Enable real-time monitoring of conversations via WebSocket monitoring_events: anyOf: - items: $ref: '#/components/schemas/ClientEvent' type: array - type: 'null' title: Monitoring Events description: The events that will be sent to monitoring connections. dtmf_input_settings: anyOf: - $ref: '#/components/schemas/DTMFInputConfig' - type: 'null' description: Configure DTMF (keypad) input collection during phone calls background_sound: anyOf: - $ref: '#/components/schemas/BackgroundSoundConfigWorkflowOverride' - type: 'null' description: Configuration for background sound during conversations. source_attribution: anyOf: - type: boolean - type: 'null' title: Source Attribution description: When enabled and knowledge base content is present, the LLM is instructed to report which sources it used. type: object title: ConversationConfigWorkflowOverride example: client_events: - audio - interruption max_duration_seconds: 600 ASTNumberNode-Output: properties: type: type: string const: number_literal title: Type default: number_literal value: anyOf: - type: number - type: integer title: Value description: Value of this literal. type: object required: - type - value title: ASTNumberNode PromptAgentAPIModelWorkflowOverride-Input: properties: prompt: anyOf: - type: string - type: 'null' title: Prompt description: The prompt for the agent x-convai-client-override: true llm: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: The LLM to query with the prompt and the chat history. If using data residency, the LLM must be supported in the data residency environment x-convai-client-override: true reasoning_effort: anyOf: - $ref: '#/components/schemas/LLMReasoningEffort' - type: 'null' description: Reasoning effort of the model. Only available for some models. thinking_budget: anyOf: - type: integer - type: 'null' title: Thinking Budget description: Max number of tokens used for thinking. Use 0 to turn off if supported by the model. enable_reasoning_summary: anyOf: - type: boolean - type: 'null' title: Enable Reasoning Summary description: Enable model reasoning summaries. When disabled, we do not request summaries from provider if possible for faster TTFB. Not ZRM compatible. temperature: anyOf: - type: number - type: 'null' title: Temperature description: The temperature for the LLM. Defaults to 0. Set to null to omit the parameter from the LLM request entirely (useful for custom LLMs that reject the temperature field). max_tokens: anyOf: - type: integer - type: 'null' title: Max Tokens description: If greater than 0, maximum number of tokens the LLM can predict tool_ids: anyOf: - items: type: string type: array - type: 'null' title: Tool Ids description: A list of IDs of tools used by the agent x-convai-client-override: true built_in_tools: anyOf: - $ref: '#/components/schemas/BuiltInToolsWorkflowOverride-Input' - type: 'null' description: Built-in system tools to be used by the agent enable_parallel_tool_calls: anyOf: - type: boolean - type: 'null' title: Enable Parallel Tool Calls description: Enable parallel tool calling. When enabled, the agent can execute multiple tools in parallel within a single turn. Not supported by all models. mcp_server_ids: anyOf: - items: type: string type: array - type: 'null' title: Mcp Server Ids description: A list of MCP server ids to be used by the agent native_mcp_server_ids: anyOf: - items: type: string type: array - type: 'null' title: Native Mcp Server Ids description: A list of Native MCP server ids to be used by the agent x-convai-client-override: true knowledge_base: anyOf: - items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array - type: 'null' title: Knowledge Base description: A list of knowledge bases to be used by the agent x-convai-client-override: true custom_llm: anyOf: - $ref: '#/components/schemas/CustomLLM' - type: 'null' description: Definition for a custom LLM if LLM field is set to 'CUSTOM_LLM' ignore_default_personality: anyOf: - type: boolean - type: 'null' title: Ignore Default Personality description: Whether to remove the default personality lines from the system prompt rag: anyOf: - $ref: '#/components/schemas/RagConfigWorkflowOverride-Input' - type: 'null' description: Configuration for RAG timezone: anyOf: - type: string - type: 'null' title: Timezone description: Timezone for displaying current time in system prompt. If set, the current time will be included in the system prompt using this timezone. Must be a valid timezone name (e.g., 'America/New_York', 'Europe/London', 'UTC'). Recommended for accurate time-aware responses; without this, the agent has no knowledge of the current date/time unless you provide it via dynamic variables or tools, which can lead to incorrect or hallucinated time references. backup_llm_config: anyOf: - $ref: '#/components/schemas/BackupLLMDefault' - $ref: '#/components/schemas/BackupLLMDisabled' - $ref: '#/components/schemas/BackupLLMOverride' - type: 'null' title: Backup Llm Config description: Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order. cascade_timeout_seconds: anyOf: - type: number - type: 'null' title: Cascade Timeout Seconds description: Time in seconds before cascading to backup LLM. Must be between 2 and 15 seconds. tools: anyOf: - items: oneOf: - $ref: '#/components/schemas/WebhookToolConfig-Input' - $ref: '#/components/schemas/ClientToolConfig-Input' - $ref: '#/components/schemas/SystemToolConfig-Input' - $ref: '#/components/schemas/MCPToolConfig-Input' - $ref: '#/components/schemas/ApiIntegrationWebhookToolConfig-Input' - $ref: '#/components/schemas/SMBToolConfig' description: The type of tool discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ApiIntegrationWebhookToolConfig-Input' client: '#/components/schemas/ClientToolConfig-Input' mcp: '#/components/schemas/MCPToolConfig-Input' smb: '#/components/schemas/SMBToolConfig' system: '#/components/schemas/SystemToolConfig-Input' webhook: '#/components/schemas/WebhookToolConfig-Input' type: array - type: 'null' title: Tools description: A list of tools that the agent can use over the course of the conversation, use tool_ids instead type: object title: PromptAgentAPIModelWorkflowOverride example: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] ConversationSignedUrlResponseModel: properties: signed_url: type: string title: Signed Url type: object required: - signed_url title: ConversationSignedUrlResponseModel Body_Create_a_new_branch_v1_convai_agents__agent_id__branches_post: properties: parent_version_id: type: string title: Parent Version Id description: ID of the version to branch from name: type: string maxLength: 140 title: Name description: Name of the branch. It is unique within the agent. description: type: string maxLength: 4096 title: Description description: Description for the branch conversation_config: anyOf: - additionalProperties: true type: object - type: 'null' title: Conversation Config description: Changes to apply to conversation config platform_settings: anyOf: - additionalProperties: true type: object - type: 'null' title: Platform Settings description: Changes to apply to platform settings workflow: anyOf: - $ref: '#/components/schemas/AgentWorkflowRequestModel' - type: 'null' description: Updated workflow definition include_draft: type: boolean title: Include Draft description: When true, the new branch uses the caller's draft procedure set instead of the branch tip. Requires parent_version_id to be the branch tip. default: false type: object required: - parent_version_id - name - description title: Body_Create_a_new_branch_v1_convai_agents__agent_id__branches_post FileInputConfig: properties: enabled: type: boolean title: Enabled description: When enabled, users may attach images or PDFs in chat when the LLM supports multimodal input. default: true max_files_in_memory: type: integer maximum: 30.0 minimum: 1.0 title: Max Files In Memory description: Number of most-recent files kept in memory during a conversation. Older files are summarized and their bytes freed. default: 10 max_files_per_conversation: type: integer title: Max Files Per Conversation description: Total files a user can upload in one conversation. Uploads are billed per file. Use -1 for no limit, or a value >= max_files_in_memory. default: 10 type: object title: FileInputConfig WidgetFeedbackMode: type: string enum: - none - during - end title: WidgetFeedbackMode default: none PromptAgentAPIModel-Output: properties: prompt: type: string title: Prompt description: The prompt for the agent default: '' x-convai-client-override: true llm: $ref: '#/components/schemas/LLM' description: The LLM to query with the prompt and the chat history. If using data residency, the LLM must be supported in the data residency environment default: gemini-2.5-flash x-convai-client-override: true reasoning_effort: anyOf: - $ref: '#/components/schemas/LLMReasoningEffort' - type: 'null' description: Reasoning effort of the model. Only available for some models. thinking_budget: anyOf: - type: integer - type: 'null' title: Thinking Budget description: Max number of tokens used for thinking. Use 0 to turn off if supported by the model. enable_reasoning_summary: type: boolean title: Enable Reasoning Summary description: Enable model reasoning summaries. When disabled, we do not request summaries from provider if possible for faster TTFB. Not ZRM compatible. default: false temperature: anyOf: - type: number - type: 'null' title: Temperature description: The temperature for the LLM. Defaults to 0. Set to null to omit the parameter from the LLM request entirely (useful for custom LLMs that reject the temperature field). default: 0.0 max_tokens: type: integer title: Max Tokens description: If greater than 0, maximum number of tokens the LLM can predict default: -1 tool_ids: items: type: string type: array title: Tool Ids description: A list of IDs of tools used by the agent x-convai-client-override: true built_in_tools: $ref: '#/components/schemas/BuiltInTools-Output' description: Built-in system tools to be used by the agent enable_parallel_tool_calls: type: boolean title: Enable Parallel Tool Calls description: Enable parallel tool calling. When enabled, the agent can execute multiple tools in parallel within a single turn. Not supported by all models. default: true mcp_server_ids: items: type: string type: array maxItems: 10 title: Mcp Server Ids description: A list of MCP server ids to be used by the agent native_mcp_server_ids: items: type: string type: array maxItems: 10 title: Native Mcp Server Ids description: A list of Native MCP server ids to be used by the agent x-convai-client-override: true knowledge_base: items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array title: Knowledge Base description: A list of knowledge bases to be used by the agent x-convai-client-override: true custom_llm: anyOf: - $ref: '#/components/schemas/CustomLLM' - type: 'null' description: Definition for a custom LLM if LLM field is set to 'CUSTOM_LLM' ignore_default_personality: anyOf: - type: boolean - type: 'null' title: Ignore Default Personality description: Whether to remove the default personality lines from the system prompt default: true rag: $ref: '#/components/schemas/RagConfig-Output' description: Configuration for RAG timezone: anyOf: - type: string - type: 'null' title: Timezone description: Timezone for displaying current time in system prompt. If set, the current time will be included in the system prompt using this timezone. Must be a valid timezone name (e.g., 'America/New_York', 'Europe/London', 'UTC'). Recommended for accurate time-aware responses; without this, the agent has no knowledge of the current date/time unless you provide it via dynamic variables or tools, which can lead to incorrect or hallucinated time references. backup_llm_config: oneOf: - $ref: '#/components/schemas/BackupLLMDefault' - $ref: '#/components/schemas/BackupLLMDisabled' - $ref: '#/components/schemas/BackupLLMOverride' title: Backup Llm Config description: Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order. discriminator: propertyName: preference mapping: default: '#/components/schemas/BackupLLMDefault' disabled: '#/components/schemas/BackupLLMDisabled' override: '#/components/schemas/BackupLLMOverride' cascade_timeout_seconds: type: number maximum: 15.0 minimum: 2.0 title: Cascade Timeout Seconds description: Time in seconds before cascading to backup LLM. Must be between 2 and 15 seconds. default: 4.0 tools: items: oneOf: - $ref: '#/components/schemas/WebhookToolConfig-Output' - $ref: '#/components/schemas/ClientToolConfig-Output' - $ref: '#/components/schemas/SystemToolConfig-Output' - $ref: '#/components/schemas/MCPToolConfig-Output' - $ref: '#/components/schemas/ApiIntegrationWebhookToolConfig-Output' - $ref: '#/components/schemas/SMBToolConfig' description: The type of tool discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ApiIntegrationWebhookToolConfig-Output' client: '#/components/schemas/ClientToolConfig-Output' mcp: '#/components/schemas/MCPToolConfig-Output' smb: '#/components/schemas/SMBToolConfig' system: '#/components/schemas/SystemToolConfig-Output' webhook: '#/components/schemas/WebhookToolConfig-Output' type: array title: Tools description: A list of tools that the agent can use over the course of the conversation, use tool_ids instead deprecated: true type: object title: PromptAgentAPIModel example: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] ListStaffParams: properties: list_kwargs: additionalProperties: true type: object title: List Kwargs smb_tool_type: type: string const: list_staff title: Smb Tool Type default: list_staff type: object title: ListStaffParams WorkflowToolNodeModel-Output: properties: type: type: string const: tool title: Type default: tool position: $ref: '#/components/schemas/Position-Output' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. tools: items: $ref: '#/components/schemas/WorkflowToolLocator' type: array title: Tools description: List of tools to execute in parallel. The entire node is considered successful if all tools are executed successfully. type: object required: - type - position - edge_order - tools title: WorkflowToolNodeModel EndProcedureToolResultErrorModel: properties: result_type: type: string const: end_procedure_error title: Result Type default: end_procedure_error status: $ref: '#/components/schemas/EndProcedureToolErrorStatus' procedure_id: anyOf: - type: string - type: 'null' title: Procedure Id message: type: string title: Message type: object required: - status - message title: EndProcedureToolResultErrorModel ASTLessThanOperatorNode-Output: properties: type: type: string const: lt_operator title: Type default: lt_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTLessThanOperatorNode GetKnowledgeBaseTextResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. type: type: string const: text title: Type extracted_inner_html: type: string title: Extracted Inner Html content_format: $ref: '#/components/schemas/ContentFormat' default: html type: object required: - id - name - metadata - supported_usages - access_info - type - extracted_inner_html title: GetKnowledgeBaseTextResponseModel ConstantSchemaOverride: properties: source: type: string const: constant title: Source default: constant constant_value: anyOf: - type: string - type: integer - type: number - type: boolean - items: {} type: array - additionalProperties: true type: object - type: 'null' title: Constant Value description: The constant value to use type: object required: - constant_value title: ConstantSchemaOverride AgentVersionParents: properties: in_branch_parent_id: anyOf: - type: string - type: 'null' title: In Branch Parent Id out_of_branch_parent_id: anyOf: - type: string - type: 'null' title: Out Of Branch Parent Id merged_into_branch_id: anyOf: - type: string - type: 'null' title: Merged Into Branch Id merged_from_branch_id: anyOf: - type: string - type: 'null' title: Merged From Branch Id merged_from_version_id: anyOf: - type: string - type: 'null' title: Merged From Version Id rebased_from_version_id: anyOf: - type: string - type: 'null' title: Rebased From Version Id type: object title: AgentVersionParents ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Output: properties: type: type: string const: api_integration_webhook title: Type default: api_integration_webhook integration_id: type: string title: Integration Id default: '' credential_id: type: string title: Credential Id default: '' integration_connection_id: type: string title: Integration Connection Id default: '' webhook_details: $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' type: object required: - type - integration_id - credential_id - integration_connection_id - webhook_details title: ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails Body_Update_agent_branch_v1_convai_agents__agent_id__branches__branch_id__patch: properties: name: anyOf: - type: string maxLength: 140 minLength: 1 - type: 'null' title: Name description: New name for the branch. Must be unique within the agent. is_archived: anyOf: - type: boolean - type: 'null' title: Is Archived description: Whether the branch should be archived protection_status: anyOf: - $ref: '#/components/schemas/BranchProtectionStatus' - type: 'null' description: The protection level for the branch type: object title: Body_Update_agent_branch_v1_convai_agents__agent_id__branches__branch_id__patch BehaviorOverride: properties: verbosity: anyOf: - $ref: '#/components/schemas/Verbosity' - type: 'null' description: Verbosity override. Underlying default applies when unset. output_format: anyOf: - $ref: '#/components/schemas/OutputFormat' - type: 'null' description: Output format override. Underlying default applies when unset. interaction_budget: anyOf: - $ref: '#/components/schemas/InteractionBudget' - type: 'null' description: Interaction budget override. Underlying default applies when unset. type: object title: BehaviorOverride LLMTokensCategoryUsage: properties: tokens: type: integer title: Tokens default: 0 price: type: number title: Price default: 0.0 type: object title: LLMTokensCategoryUsage KnowledgeBaseDocumentMetadataResponseModel: properties: created_at_unix_secs: type: integer title: Created At Unix Secs last_updated_at_unix_secs: type: integer title: Last Updated At Unix Secs size_bytes: type: integer title: Size Bytes type: object required: - created_at_unix_secs - last_updated_at_unix_secs - size_bytes title: KnowledgeBaseDocumentMetadataResponseModel TwilioMachineDetectionMode: type: string enum: - enable - detect_message_end title: TwilioMachineDetectionMode description: 'Which Twilio answering-machine-detection (AMD) mode to request for a call. `enable` returns a verdict as soon as Twilio can tell a human from a machine. `detect_message_end` additionally waits for the greeting to finish, which is what distinguishes the `machine_end_*` verdicts, at the cost of a later result.' default: enable ListAssetsParams: properties: list_kwargs: additionalProperties: true type: object title: List Kwargs smb_tool_type: type: string const: list_assets title: Smb Tool Type default: list_assets type: object title: ListAssetsParams ASTLessThanOrEqualsOperatorNode-Output: properties: type: type: string const: lte_operator title: Type default: lte_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTLessThanOrEqualsOperatorNode TurnEagerness: type: string enum: - patient - normal - eager title: TurnEagerness description: Agent's eagerness to respond. Higher values make agent wait for higher turn probability. default: normal ASRConversationalConfigOverrideConfig: properties: keywords: type: boolean title: Keywords description: Whether to allow overriding the keywords field. default: false type: object title: ASRConversationalConfigOverrideConfig AnalysisRunningTotal: properties: price: type: number title: Price default: 0.0 charge: type: integer title: Charge default: 0 runs: type: integer title: Runs default: 0 price_per_feature: additionalProperties: type: number propertyNames: $ref: '#/components/schemas/AnalysisType' type: object title: Price Per Feature charge_per_feature: additionalProperties: type: integer propertyNames: $ref: '#/components/schemas/AnalysisType' type: object title: Charge Per Feature type: object title: AnalysisRunningTotal description: Cumulative LLM cost of running post-call analysis on this conversation. ScopedAnalysisResult: properties: scope: $ref: '#/components/schemas/AnalysisScope' description: The scope of the analysis. 'conversation' uses the full transcript; 'agent' uses only the portion where the defining agent was active. source_agent_id: type: string title: Source Agent Id source_branch_id: anyOf: - type: string - type: 'null' title: Source Branch Id description: Branch of the agent for this scoped block; disambiguates repeated agent_id. evaluation_criteria_results: additionalProperties: $ref: '#/components/schemas/ConversationHistoryEvaluationCriteriaResultCommonModel' type: object title: Evaluation Criteria Results data_collection_results: additionalProperties: $ref: '#/components/schemas/DataCollectionResultCommonModel' type: object title: Data Collection Results successful: $ref: '#/components/schemas/EvaluationSuccessResult' success_score: anyOf: - type: number - type: 'null' title: Success Score type: object required: - scope - source_agent_id - successful title: ScopedAnalysisResult GetKnowledgeBaseSummaryTextResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentSummaryResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. dependent_agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Dependent Agents description: This field is deprecated and will be removed in the future, use the separate endpoint to get dependent agents instead. deprecated: true type: type: string const: text title: Type type: object required: - id - name - metadata - supported_usages - access_info - dependent_agents - type title: GetKnowledgeBaseSummaryTextResponseModel ConversationFeedbackRequestModel: properties: feedback: anyOf: - $ref: '#/components/schemas/UserFeedbackScore' - type: 'null' description: Either 'like' or 'dislike' to indicate the feedback for the conversation. examples: - like type: object title: ConversationFeedbackRequestModel examples: - feedback: like GetSIPLogMessagesResponse: properties: sip_messages: items: $ref: '#/components/schemas/SIPLogMessage' type: array title: Sip Messages next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More default: false type: object required: - sip_messages title: GetSIPLogMessagesResponse TurnMode: type: string enum: - silence - turn title: TurnMode default: turn GuardrailsV1-Output: properties: version: type: string const: '1' title: Version default: '1' focus: $ref: '#/components/schemas/FocusGuardrail' prompt_injection: $ref: '#/components/schemas/PromptInjectionGuardrail' content: $ref: '#/components/schemas/ContentGuardrail-Output' moderation: anyOf: - $ref: '#/components/schemas/ModerationGuardrail-Output' - type: 'null' x-fern-ignore: true custom: $ref: '#/components/schemas/CustomGuardrail-Output' type: object title: GuardrailsV1 ToolMockConfig: properties: default_return_value: type: string title: Default Return Value default: Tool Called. default_is_error: type: boolean title: Default Is Error default: false type: object title: ToolMockConfig UpdateClientParams: properties: smb_tool_type: type: string const: update_client title: Smb Tool Type default: update_client type: object title: UpdateClientParams description: Update an existing client's information. PhoneNumberTransferDestination: properties: type: type: string const: phone title: Type default: phone phone_number: type: string title: Phone Number type: object required: - phone_number title: PhoneNumberTransferDestination AddKnowledgeBaseResponseModel: properties: id: type: string title: Id name: type: string title: Name folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentSummaryResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. type: object required: - id - name title: AddKnowledgeBaseResponseModel SystemToolConfig-Input: properties: type: type: string const: system title: Type description: The type of tool default: system name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. Leave empty to use the default description that's optimized for the specific tool type. default: '' response_timeout_secs: type: integer title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto params: oneOf: - $ref: '#/components/schemas/EndCallToolConfig' - $ref: '#/components/schemas/LanguageDetectionToolConfig' - $ref: '#/components/schemas/TransferToAgentToolConfig-Input' - $ref: '#/components/schemas/TransferToNumberToolConfig-Input' - $ref: '#/components/schemas/SkipTurnToolConfig' - $ref: '#/components/schemas/PlayDTMFToolConfig' - $ref: '#/components/schemas/VoicemailDetectionToolConfig' - $ref: '#/components/schemas/KnowledgeBaseRagToolConfig' - $ref: '#/components/schemas/KnowledgeBaseToolConfig' - $ref: '#/components/schemas/StartProcedureToolConfig' - $ref: '#/components/schemas/EndProcedureToolConfig' title: Params discriminator: propertyName: system_tool_type mapping: end_call: '#/components/schemas/EndCallToolConfig' end_procedure: '#/components/schemas/EndProcedureToolConfig' knowledge_base: '#/components/schemas/KnowledgeBaseToolConfig' knowledge_base_rag: '#/components/schemas/KnowledgeBaseRagToolConfig' language_detection: '#/components/schemas/LanguageDetectionToolConfig' play_keypad_touch_tone: '#/components/schemas/PlayDTMFToolConfig' skip_turn: '#/components/schemas/SkipTurnToolConfig' start_procedure: '#/components/schemas/StartProcedureToolConfig' transfer_to_agent: '#/components/schemas/TransferToAgentToolConfig-Input' transfer_to_number: '#/components/schemas/TransferToNumberToolConfig-Input' voicemail_detection: '#/components/schemas/VoicemailDetectionToolConfig' type: object required: - name - params title: SystemToolConfig description: A system tool is a tool that is used to call a system method in the server examples: - description: '' name: end_call params: system_tool_type: end_call type: system - description: Custom description for specific use case name: transfer_to_agent params: system_tool_type: transfer_to_agent transfers: [] type: system RegisterForGroupSessionParams: properties: smb_tool_type: type: string const: register_for_group_session title: Smb Tool Type default: register_for_group_session type: object title: RegisterForGroupSessionParams description: Register a client for a scheduled group session. EmbeddingModelEnum: type: string enum: - e5_mistral_7b_instruct - multilingual_e5_large_instruct title: EmbeddingModelEnum default: e5_mistral_7b_instruct ApiIntegrationWebhookToolConfig-Output: properties: type: type: string const: api_integration_webhook title: Type default: api_integration_webhook name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate tool_version: type: string title: Tool Version description: The version of the API integration tool default: 1.0.0 api_integration_id: type: string title: Api Integration Id api_integration_connection_id: type: string title: Api Integration Connection Id api_schema_overrides: anyOf: - $ref: '#/components/schemas/ApiIntegrationWebhookOverrides' - type: 'null' title: Api Schema Overrides description: User overrides applied on top of the base api_schema type: object required: - type - name - description - response_timeout_secs - disable_interruptions - interruption_mode - force_pre_tool_speech - pre_tool_speech - assignments - tool_call_sound - tool_call_sound_behavior - tool_error_handling_mode - dynamic_variables - execution_mode - tool_version - api_integration_id - api_integration_connection_id - api_schema_overrides title: ApiIntegrationWebhookToolConfig WhatsAppTemplateHeaderComponentParams: properties: type: type: string const: header title: Type default: header parameters: items: oneOf: - $ref: '#/components/schemas/WhatsAppTemplateTextParam' - $ref: '#/components/schemas/WhatsAppTemplateImageParam' - $ref: '#/components/schemas/WhatsAppTemplateDocumentParam' - $ref: '#/components/schemas/WhatsAppTemplateLocationParam' discriminator: propertyName: type mapping: document: '#/components/schemas/WhatsAppTemplateDocumentParam' image: '#/components/schemas/WhatsAppTemplateImageParam' location: '#/components/schemas/WhatsAppTemplateLocationParam' text: '#/components/schemas/WhatsAppTemplateTextParam' type: array title: Parameters type: object required: - parameters title: WhatsAppTemplateHeaderComponentParams ConversationReasoningModel: properties: summary: anyOf: - type: string - type: 'null' title: Summary provider_redact: type: boolean title: Provider Redact default: false type: object title: ConversationReasoningModel ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Input: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: type: string const: workflow title: Type result: anyOf: - $ref: '#/components/schemas/WorkflowToolResponseModel-Input' - type: 'null' type: object required: - request_id - tool_name - result_value - is_error - tool_has_been_called - type title: ConversationHistoryTranscriptWorkflowToolsResultCommonModel EntryBehavior: type: string enum: - generate_immediately - wait_for_user - auto title: EntryBehavior default: auto AgentTopicResponseModel: properties: topic_id: type: string title: Topic Id label: type: string title: Label description: type: string title: Description conversation_count: type: integer title: Conversation Count parent_topic_id: anyOf: - type: string - type: 'null' title: Parent Topic Id x_2d: anyOf: - type: number - type: 'null' title: X 2D y_2d: anyOf: - type: number - type: 'null' title: Y 2D metrics: anyOf: - $ref: '#/components/schemas/TopicMetricsAggregate' - type: 'null' success_rate: anyOf: - type: number - type: 'null' title: Success Rate description: Success rate across the topic's evaluation criteria, weighted by scored conversations. Returned regardless of include_evaluation_criteria. type: object required: - topic_id - label - description - conversation_count title: AgentTopicResponseModel GetClientByPhoneParams: properties: smb_tool_type: type: string const: get_client_by_phone title: Smb Tool Type default: get_client_by_phone type: object title: GetClientByPhoneParams description: Look up a client by their exact phone number. AgentAnalysisItems-Output: properties: evaluation_criteria: items: oneOf: - $ref: '#/components/schemas/AttachedUserEvaluationRef' - $ref: '#/components/schemas/AttachedSystemEvaluationRef' discriminator: propertyName: source mapping: system: '#/components/schemas/AttachedSystemEvaluationRef' user: '#/components/schemas/AttachedUserEvaluationRef' type: array title: Evaluation Criteria data_collection: items: oneOf: - $ref: '#/components/schemas/AttachedUserDataCollectionRef' - $ref: '#/components/schemas/AttachedSystemDataCollectionRef' discriminator: propertyName: source mapping: system: '#/components/schemas/AttachedSystemDataCollectionRef' user: '#/components/schemas/AttachedUserDataCollectionRef' type: array title: Data Collection type: object title: AgentAnalysisItems AgentConfigAPIModel-Output: properties: first_message: type: string title: First Message description: If non-empty, the first message the agent will say. If empty, the agent waits for the user to start the discussion. default: '' x-convai-client-override: true x-convai-language-override: true language: type: string title: Language description: Language of the agent - used for ASR and TTS default: en x-convai-client-override: true hinglish_mode: type: boolean title: Hinglish Mode description: When enabled and language is Hindi, the agent will respond in Hinglish default: false dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables disable_first_message_interruptions: type: boolean title: Disable First Message Interruptions description: If true, the user will not be able to interrupt the agent while the first message is being delivered. default: false max_conversation_duration_message: type: string title: Max Conversation Duration Message description: If non-empty, the message the agent will send when max conversation duration is reached. default: '' x-convai-client-override: true x-convai-language-override: true text_behavior_overrides: anyOf: - additionalProperties: $ref: '#/components/schemas/BehaviorOverride' propertyNames: $ref: '#/components/schemas/ConversationInitiationSource' type: object - type: 'null' title: Text Behavior Overrides description: Per-channel response behavior overrides for text conversations. Built-in channel defaults apply when unset. prompt: $ref: '#/components/schemas/PromptAgentAPIModel-Output' description: The prompt for the agent type: object title: AgentConfigAPIModel example: disable_first_message_interruptions: false first_message: Hello, how can I help you today? language: en ExternalFolderSyncInfo: properties: type: $ref: '#/components/schemas/ExternalSyncProvider' description: Provider identifier source_entity_id: type: string title: Source Entity Id description: Entity ID in the external system integration_connection_id: type: string title: Integration Connection Id description: Integration connection instance ID root_folder_id: anyOf: - type: string - type: 'null' title: Root Folder Id description: KB folder ID of the sync root. None means this folder is the root. sync_cursor: anyOf: - type: string - type: 'null' title: Sync Cursor description: Opaque cursor for incremental sync, interpreted by the provider last_sync_at: anyOf: - type: integer - type: 'null' title: Last Sync At description: Unix timestamp of last completed sync type: object required: - type - source_entity_id - integration_connection_id title: ExternalFolderSyncInfo description: Metadata for a KB folder that mirrors an external source folder. KbExternalSyncJob: properties: type: $ref: '#/components/schemas/ExternalSyncProvider' folder_id: type: string title: Folder Id integration_connection_id: type: string title: Integration Connection Id triggered_by: $ref: '#/components/schemas/ExternalSyncJobTrigger' status: $ref: '#/components/schemas/CrawlStatus' default: queued sync_type: anyOf: - $ref: '#/components/schemas/ExternalSyncJobType' - type: 'null' items_identified: type: integer title: Items Identified default: 0 items_processed: type: integer title: Items Processed default: 0 error_message: anyOf: - type: string - type: 'null' title: Error Message started_at: anyOf: - type: integer - type: 'null' title: Started At completed_at: anyOf: - type: integer - type: 'null' title: Completed At updated_at: type: integer title: Updated At id: type: string title: Id created_at: type: integer title: Created At type: object required: - type - folder_id - integration_connection_id - triggered_by - updated_at - id - created_at title: KbExternalSyncJob ASTConditionalOperatorNode-Output: properties: type: type: string const: conditional_operator title: Type default: conditional_operator condition: $ref: '#/components/schemas/ASTNode-Output' description: Condition deciding which expression should be selected. trueExpression: $ref: '#/components/schemas/ASTNode-Output' description: Expression selected if the condition is true. falseExpression: $ref: '#/components/schemas/ASTNode-Output' description: Expression selected if the condition is false. type: object required: - type - condition - trueExpression - falseExpression title: ASTConditionalOperatorNode ListAgentRulesParams: properties: smb_tool_type: type: string const: list_agent_rules title: Smb Tool Type default: list_agent_rules type: object title: ListAgentRulesParams DashboardCallSuccessChartModel: properties: name: type: string title: Name type: type: string const: call_success title: Type default: call_success type: object required: - name title: DashboardCallSuccessChartModel StartProcedureToolErrorStatus: type: string enum: - not_found - invalid_name - already_active BackupLLMDisabled: properties: preference: type: string const: disabled title: Preference default: disabled type: object title: BackupLLMDisabled Body_Make_an_outbound_call_via_WhatsApp_v1_convai_whatsapp_outbound_call_post: properties: whatsapp_phone_number_id: type: string title: Whatsapp Phone Number Id whatsapp_user_id: type: string title: Whatsapp User Id whatsapp_call_permission_request_template_name: type: string title: Whatsapp Call Permission Request Template Name whatsapp_call_permission_request_template_language_code: type: string title: Whatsapp Call Permission Request Template Language Code agent_id: type: string title: Agent Id conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' type: object required: - whatsapp_phone_number_id - whatsapp_user_id - whatsapp_call_permission_request_template_name - whatsapp_call_permission_request_template_language_code - agent_id title: Body_Make_an_outbound_call_via_WhatsApp_v1_convai_whatsapp_outbound_call_post GetWorkspaceSecretsResponseModel: properties: secrets: items: $ref: '#/components/schemas/ConvAIWorkspaceStoredSecretConfig' type: array title: Secrets next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor description: Cursor for fetching the next page of secrets type: object required: - secrets title: GetWorkspaceSecretsResponseModel PromptAgentAPIModelOverride-Output: properties: prompt: anyOf: - type: string - type: 'null' title: Prompt description: The prompt for the agent x-convai-client-override: true llm: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: The LLM to query with the prompt and the chat history. If using data residency, the LLM must be supported in the data residency environment x-convai-client-override: true tool_ids: anyOf: - items: type: string type: array - type: 'null' title: Tool Ids description: A list of IDs of tools used by the agent x-convai-client-override: true native_mcp_server_ids: anyOf: - items: type: string type: array - type: 'null' title: Native Mcp Server Ids description: A list of Native MCP server ids to be used by the agent x-convai-client-override: true knowledge_base: anyOf: - items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array - type: 'null' title: Knowledge Base description: A list of knowledge bases to be used by the agent x-convai-client-override: true type: object title: PromptAgentAPIModelOverride example: knowledge_base: [] llm: gemini-2.0-flash-001 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. tool_ids: [] OutboundCallRecipientResponseModel: properties: id: type: string title: Id phone_number: anyOf: - type: string - type: 'null' title: Phone Number whatsapp_user_id: anyOf: - type: string - type: 'null' title: Whatsapp User Id status: $ref: '#/components/schemas/BatchCallRecipientStatus' created_at_unix: type: integer title: Created At Unix updated_at_unix: type: integer title: Updated At Unix conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataInternal' - type: 'null' type: object required: - id - status - created_at_unix - updated_at_unix - conversation_id title: OutboundCallRecipientResponseModel WidgetTextContentsTranslation: properties: source: additionalProperties: type: string type: object title: Source description: The source text each translated field was derived from text: additionalProperties: type: string type: object title: Text description: The last auto-translated output for each translated field type: object title: WidgetTextContentsTranslation ConversationInitiationClientDataRequest-Output: properties: conversation_config_override: $ref: '#/components/schemas/ConversationConfigClientOverride-Output' custom_llm_extra_body: additionalProperties: true type: object title: Custom Llm Extra Body user_id: anyOf: - type: string - type: 'null' title: User Id description: ID of the end user participating in this conversation (for agent owner's user identification) source_info: $ref: '#/components/schemas/ConversationInitiationSourceInfo' branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: ID of the agent branch to use for this conversation environment: anyOf: - type: string - type: 'null' title: Environment description: Environment to use for resolving environment variables starting_workflow_node_id: anyOf: - type: string - type: 'null' title: Starting Workflow Node Id description: If set, start the workflow at this node id instead of the default entry procedure_ids: anyOf: - items: type: string type: array - type: 'null' title: Procedure Ids description: If set, only these procedures are available to the starting agent. Each ID must be attached to that agent; unknown IDs fail conversation start. An empty list disables all of that agent's procedures. Not applied after an agent transfer. Requires enable_procedure_ids_from_client. dynamic_variables: additionalProperties: true type: object title: Dynamic Variables type: object title: ConversationInitiationClientDataRequest DeleteAgentHoldAudioResponseModel: properties: agent_id: type: string title: Agent Id type: object required: - agent_id title: DeleteAgentHoldAudioResponseModel KnowledgeBaseRagToolConfig: properties: system_tool_type: type: string const: knowledge_base_rag title: System Tool Type default: knowledge_base_rag type: object title: KnowledgeBaseRagToolConfig PhoneNumberDynamicVariableTransferDestination: properties: type: type: string const: phone_dynamic_variable title: Type default: phone_dynamic_variable phone_number: type: string title: Phone Number type: object required: - phone_number title: PhoneNumberDynamicVariableTransferDestination AgentPlatformSettingsRequestModel: properties: evaluation: $ref: '#/components/schemas/EvaluationSettings-Input' description: Settings for evaluation widget: $ref: '#/components/schemas/WidgetConfig-Input' description: Configuration for the widget data_collection: additionalProperties: $ref: '#/components/schemas/AnalysisProperty' type: object title: Data Collection description: Data collection settings data_collection_scopes: additionalProperties: $ref: '#/components/schemas/AnalysisScope' type: object title: Data Collection Scopes description: Scope per data collection item ID. Missing keys default to conversation scope. analysis_items: anyOf: - $ref: '#/components/schemas/AgentAnalysisItems-Input' - type: 'null' description: Evaluation + data-collection items attached by reference. None means the agent has not been migrated onto analysis items yet (distinct from an empty, migrated set); reads fall back to the legacy evaluation/data_collection fields in that case. overrides: $ref: '#/components/schemas/ConversationInitiationClientDataConfig-Input' description: Additional overrides for the agent during conversation initiation workspace_overrides: $ref: '#/components/schemas/AgentWorkspaceOverrides-Input' description: Workspace overrides for the agent testing: $ref: '#/components/schemas/AgentTestingSettings' description: Testing configuration for the agent archived: type: boolean title: Archived description: Whether the agent is archived default: false guardrails: title: Guardrails description: Guardrails configuration for the agent discriminator: propertyName: version mapping: '1': '#/components/schemas/GuardrailsV1-Input' $ref: '#/components/schemas/GuardrailsV1-Input' summary_language: anyOf: - type: string - type: 'null' title: Summary Language description: Language for all conversation analysis outputs (summaries, titles, evaluation rationales, data collection rationales). If not set, the language will be inferred from the conversation. Must be one of the supported conversation languages. auto_translate_transcript_to_app_language: anyOf: - type: boolean - type: 'null' title: Auto Translate Transcript To App Language description: When enabled, a conversation transcript is automatically translated to the viewer's application language when they open the transcript page. If not set or false, transcripts are shown in their original language unless the viewer manually selects a translation. auth: $ref: '#/components/schemas/AuthSettings' description: Settings for authentication call_limits: $ref: '#/components/schemas/AgentCallLimits' description: Call limits for the agent queueing_config: $ref: '#/components/schemas/AgentQueueingConfig' description: Concurrency wait-queue config for the agent privacy: $ref: '#/components/schemas/PrivacyConfig-Input' description: Privacy settings for the agent trust_context: $ref: '#/components/schemas/AgentTrustContext' description: The trust context in which the agent operates. default: unknown analysis_llm: $ref: '#/components/schemas/LLM' description: Default LLM model for post-call analysis (evaluation and data collection) default: gemini-2.5-flash topic_discovery: $ref: '#/components/schemas/TopicDiscoverySettings' description: Per-agent topic discovery configuration sentiment_analysis: $ref: '#/components/schemas/SentimentAnalysisSettings' description: Per-agent post-call sentiment analysis configuration alerting: anyOf: - $ref: '#/components/schemas/AlertingSettings' - type: 'null' description: Agent-level alerting configuration overriding workspace settings. type: object title: AgentPlatformSettingsRequestModel ConversationInitiationClientDataRequest-Input: properties: conversation_config_override: $ref: '#/components/schemas/ConversationConfigClientOverride-Input' custom_llm_extra_body: additionalProperties: true type: object title: Custom Llm Extra Body user_id: anyOf: - type: string - type: 'null' title: User Id description: ID of the end user participating in this conversation (for agent owner's user identification) source_info: $ref: '#/components/schemas/ConversationInitiationSourceInfo' branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: ID of the agent branch to use for this conversation environment: anyOf: - type: string - type: 'null' title: Environment description: Environment to use for resolving environment variables starting_workflow_node_id: anyOf: - type: string - type: 'null' title: Starting Workflow Node Id description: If set, start the workflow at this node id instead of the default entry procedure_ids: anyOf: - items: type: string type: array - type: 'null' title: Procedure Ids description: If set, only these procedures are available to the starting agent. Each ID must be attached to that agent; unknown IDs fail conversation start. An empty list disables all of that agent's procedures. Not applied after an agent transfer. Requires enable_procedure_ids_from_client. dynamic_variables: additionalProperties: true type: object title: Dynamic Variables type: object title: ConversationInitiationClientDataRequest LLMListResponseModel: properties: llms: items: $ref: '#/components/schemas/LLMInfoModel' type: array title: Llms description: List of all available LLM models that can be used with agents. default_deprecation_config: $ref: '#/components/schemas/LLMDeprecationConfigModel' description: The default deprecation timing configuration used for models without a custom override. type: object required: - llms - default_deprecation_config title: LLMListResponseModel example: default_deprecation_config: fallback_complete_days: 7 fallback_complete_percentage: 100 fallback_start_days: 14 fallback_start_percentage: 25 warning_start_days: 30 llms: - is_checkpoint: false llm: gemini-2.5-flash max_context_limit: 1048576 max_tokens_limit: 8192 supports_document_input: true supports_image_input: true supports_parallel_tool_calls: true ProcedureValidationError: properties: path: type: string title: Path description: JSON path to the error, e.g. 'trigger', 'steps[0].instruction' message: type: string title: Message description: Human-readable error message type: object required: - path - message title: ProcedureValidationError ToolExecutionMode: type: string enum: - immediate - post_tool_speech - async title: ToolExecutionMode default: immediate EvaluationSettings-Output: properties: criteria: items: $ref: '#/components/schemas/PromptEvaluationCriteria' type: array title: Criteria description: Individual criteria that the agent should be evaluated against type: object title: EvaluationSettings description: 'Settings to evaluate an agent''s performance. Agents are evaluated against a set of criteria, with success being defined as meeting some combination of those criteria.' Body_Update_file_document_v1_convai_knowledge_base__documentation_id__update_file_patch: properties: file: type: string title: File description: Documentation that the agent will have access to in order to interact with users. format: binary type: object required: - file title: Body_Update_file_document_v1_convai_knowledge_base__documentation_id__update_file_patch LanguagePreset-Input: properties: overrides: $ref: '#/components/schemas/ConversationConfigClientOverride-Input' description: The overrides for the language preset first_message_translation: anyOf: - $ref: '#/components/schemas/LanguagePresetTranslation' - type: 'null' description: The translation of the first message soft_timeout_translation: anyOf: - $ref: '#/components/schemas/LanguagePresetTranslation' - type: 'null' description: The translation of the soft timeout message type: object required: - overrides title: LanguagePreset EndCallToolConfig: properties: system_tool_type: type: string const: end_call title: System Tool Type default: end_call type: object title: EndCallToolConfig MessageSearchSortBy: type: string enum: - search_score - created_at title: MessageSearchSortBy ListResponse_AgentBranchSummary_: properties: meta: $ref: '#/components/schemas/ListResponseMeta' default: {} results: items: $ref: '#/components/schemas/AgentBranchSummary' type: array title: Results type: object required: - results title: ListResponse[AgentBranchSummary] SearchClientsParams: properties: smb_tool_type: type: string const: search_clients title: Smb Tool Type default: search_clients type: object title: SearchClientsParams description: Search for clients by name, phone number, or email. OutboundSIPTrunkConfigRequestModel: properties: address: type: string title: Address description: Hostname or IP the SIP INVITE is sent to. transport: $ref: '#/components/schemas/SIPTrunkTransportEnum' description: Protocol to use for SIP transport (signalling layer). default: auto media_encryption: $ref: '#/components/schemas/SIPMediaEncryptionEnum' description: Whether or not to encrypt media (data layer). default: allowed headers: additionalProperties: type: string type: object title: Headers description: SIP X-* headers for INVITE request. These headers are sent as-is and may help identify this call. attributes_to_headers: additionalProperties: type: string type: object title: Attributes To Headers description: Map of dynamic variable name to header name for attributes_to_headers credentials: anyOf: - $ref: '#/components/schemas/SIPTrunkCredentialsRequestModel' - type: 'null' description: Optional digest authentication credentials (username/password). If not provided, ACL authentication is assumed. enabled_codecs: items: $ref: '#/components/schemas/MediaCodec' type: array title: Enabled Codecs description: Media codecs that should be offered in the SDP for outbound calls. If empty, all supported codecs are offered. type: object required: - address title: OutboundSIPTrunkConfigRequestModel ToolType: type: string enum: - system - webhook - client - mcp - workflow - api_integration_webhook - api_integration_mcp - smb title: ToolType SpellingPatience: type: string enum: - auto - 'off' title: SpellingPatience description: Controls if the agent should be more patient when user is spelling numbers and named entities. default: auto RAGIndexOverviewResponseModel: properties: total_used_bytes: type: integer title: Total Used Bytes total_max_bytes: type: integer title: Total Max Bytes models: items: $ref: '#/components/schemas/RAGIndexOverviewEmbeddingModelResponseModel' type: array title: Models type: object required: - total_used_bytes - total_max_bytes - models title: RAGIndexOverviewResponseModel WidgetPlacement: type: string enum: - top-left - top - top-right - bottom-left - bottom - bottom-right title: WidgetPlacement default: bottom-right ASTEqualsOperatorNode-Output: properties: type: type: string const: eq_operator title: Type default: eq_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTEqualsOperatorNode MergePreviewResponseModel: properties: agent_id: type: string title: Agent Id description: The ID of the agent name: type: string title: Name description: The name of the agent conversation_config: $ref: '#/components/schemas/ConversationalConfigAPIModel-Output' description: The conversation configuration of the agent metadata: $ref: '#/components/schemas/AgentMetadataResponseModel' description: The metadata of the agent platform_settings: $ref: '#/components/schemas/AgentPlatformSettingsResponseModel' description: The platform settings of the agent phone_numbers: items: oneOf: - $ref: '#/components/schemas/GetPhoneNumberTwilioResponseModel' - $ref: '#/components/schemas/GetPhoneNumberExotelResponseModel' - $ref: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' discriminator: propertyName: provider mapping: exotel: '#/components/schemas/GetPhoneNumberExotelResponseModel' sip_trunk: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' twilio: '#/components/schemas/GetPhoneNumberTwilioResponseModel' type: array title: Phone Numbers description: The phone numbers of the agent whatsapp_accounts: items: $ref: '#/components/schemas/GetWhatsAppAccountResponse' type: array title: Whatsapp Accounts description: WhatsApp accounts assigned to the agent workflow: $ref: '#/components/schemas/AgentWorkflowResponseModel' description: The workflow of the agent access_info: anyOf: - $ref: '#/components/schemas/ResourceAccessInfo' - type: 'null' description: The access information of the agent for the user tags: items: type: string type: array title: Tags description: Agent tags used to categorize the agent version_id: anyOf: - type: string - type: 'null' title: Version Id description: The ID of the version the agent is on branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: The ID of the branch the agent is on main_branch_id: anyOf: - type: string - type: 'null' title: Main Branch Id description: The ID of the main branch for this agent procedures: additionalProperties: $ref: '#/components/schemas/ProcedureRefResponseModel' type: object title: Procedures description: Procedures keyed by procedure_id. default_hold_audio_url: type: string title: Default Hold Audio Url description: URL of the default hold tone played to queued callers when no custom hold audio is uploaded, so the dashboard can preview it. default: https://eleven-public-cdn-common.elevenlabs.io/convai/ambient-audio-assets/elevator1.mp3 overridden_fields: items: type: string type: array title: Overridden Fields description: Dot-paths of config fields where both branches modified the same field relative to their common ancestor (conflicts). Present regardless of which side wins the conflict. conflicts: items: $ref: '#/components/schemas/FieldConflict' type: array title: Conflicts description: Structured view of the same conflicts as overridden_fields, each carrying the value on the base (common ancestor), source branch, and target branch so the divergence can be presented and resolved field-by-field. source_identical_to_target: type: boolean title: Source Identical To Target description: True when the merge/rebase would be a no-op, i.e. the merged result is identical to the source branch tip. The rebase endpoint rejects in this case. default: false type: object required: - agent_id - name - conversation_config - metadata title: MergePreviewResponseModel example: agent_id: agent_7101k5zvyjhmfg983brhmhkd98n6 name: My Agent workflow: edges: entry_to_tool_a: forward_condition: condition: Tool A condition type: llm source: entry_node target: tool_node_a start_to_entry: forward_condition: type: unconditional source: start_node target: entry_node tool_a_to_failure: forward_condition: successful: false type: result source: tool_node_a target: failure_node tool_a_to_tool_b: forward_condition: successful: true type: result source: tool_node_a target: tool_node_b tool_b_to_agent_transfer: forward_condition: type: unconditional source: tool_node_b target: success_transfer tool_b_to_conversation: forward_condition: condition: Conversation condition type: llm source: tool_node_b target: success_conversation tool_b_to_end: forward_condition: condition: End condition type: llm source: tool_node_b target: success_end tool_b_to_phone: forward_condition: expression: children: - name: force_phone_transfer type: dynamic_variable - prompt: Phone condition type: llm value_schema: description: Phone condition type: boolean - left: name: mode type: dynamic_variable right: type: string_literal value: dev type: eq_operator type: or_operator type: expression source: tool_node_b target: success_phone nodes: entry_node: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: - entry_to_tool_a entry_behavior: auto label: Entry position: x: 0.0 y: 0.0 type: override_agent failure_node: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: [] entry_behavior: auto label: Failure position: x: 0.0 y: 0.0 type: override_agent start_node: edge_order: - start_to_entry position: x: 0.0 y: 0.0 type: start success_conversation: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: [] entry_behavior: auto label: Success A position: x: 0.0 y: 0.0 type: override_agent success_end: edge_order: [] position: x: 0.0 y: 0.0 return_when_nested: true type: end success_phone: custom_sip_headers: [] edge_order: [] position: x: 0.0 y: 0.0 require_acceptance: false sip_refer_play_dialtone: true transfer_destination: phone_number: '+1234567890' type: phone transfer_type: conference type: phone_number success_transfer: agent_id: success_transfer_agent delay_ms: 0 drop_history: false edge_order: [] enable_transferred_agent_first_message: false isolate_history: false position: x: 0.0 y: 0.0 preserve_client_tts_overrides: false type: standalone_agent tool_node_a: edge_order: - tool_a_to_failure - tool_a_to_tool_b position: x: 0.0 y: 0.0 tools: - tool_id: tool_a - tool_id: tool_b type: tool tool_node_b: edge_order: - tool_b_to_conversation - tool_b_to_end - tool_b_to_phone - tool_b_to_agent_transfer position: x: 0.0 y: 0.0 tools: - tool_id: tool_a type: tool prevent_subagent_loops: false subgraphs: {} AgentConfigOverride-Output: properties: first_message: anyOf: - type: string - type: 'null' title: First Message description: If non-empty, the first message the agent will say. If empty, the agent waits for the user to start the discussion. x-convai-client-override: true x-convai-language-override: true language: anyOf: - type: string - type: 'null' title: Language description: Language of the agent - used for ASR and TTS x-convai-client-override: true max_conversation_duration_message: anyOf: - type: string - type: 'null' title: Max Conversation Duration Message description: If non-empty, the message the agent will send when max conversation duration is reached. x-convai-client-override: true x-convai-language-override: true prompt: anyOf: - $ref: '#/components/schemas/PromptAgentAPIModelOverride-Output' - type: 'null' description: The prompt for the agent type: object title: AgentConfigOverride example: first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. tool_ids: [] MCPToolConfigOverrideCreateRequestModel: properties: force_pre_tool_speech: anyOf: - type: boolean - type: 'null' title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If set, overrides the server''s force_pre_tool_speech setting for this tool.' deprecated: true pre_tool_speech: anyOf: - $ref: '#/components/schemas/PreToolSpeechMode' - type: 'null' description: If set, overrides the server's pre_tool_speech setting for this tool. disable_interruptions: anyOf: - type: boolean - type: 'null' title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If set, overrides the server''s disable_interruptions setting for this tool.' deprecated: true interruption_mode: anyOf: - $ref: '#/components/schemas/ToolInterruptionMode' - type: 'null' description: If set, overrides the server's interruption_mode setting for this tool. tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: string const: 'off' - type: 'null' title: Tool Call Sound description: Overrides the server's tool_call_sound setting for this tool. A sound name plays that sound; 'off' overrides to no sound (silence); null means do not override (inherit the server default). tool_call_sound_behavior: anyOf: - $ref: '#/components/schemas/ToolCallSoundBehavior' - type: 'null' description: If set, overrides the server's tool_call_sound_behavior setting for this tool execution_mode: anyOf: - $ref: '#/components/schemas/ToolExecutionMode' - type: 'null' description: If set, overrides the server's execution_mode setting for this tool response_timeout_secs: anyOf: - type: integer maximum: 300.0 minimum: 5.0 - type: 'null' title: Response Timeout Secs description: If set, overrides the server's response timeout for this MCP tool. assignments: anyOf: - items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array - type: 'null' title: Assignments description: Dynamic variable assignments for this MCP tool input_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Input Overrides description: Mapping of json path to input override configuration response_mocks: anyOf: - items: $ref: '#/components/schemas/ToolResponseMockConfig-Input' type: array - type: 'null' title: Response Mocks description: Mock responses with optional parameter conditions. Evaluated top-to-bottom; first match wins. tool_name: type: string title: Tool Name description: The name of the MCP tool type: object required: - tool_name title: MCPToolConfigOverrideCreateRequestModel CreateStringEnvironmentVariableRequest: properties: type: type: string const: string title: Type label: type: string title: Label description: Unique label for the environment variable. values: additionalProperties: type: string minLength: 1 type: object title: Values description: Environment-specific values. Must include 'production' key. type: object required: - type - label - values title: CreateStringEnvironmentVariableRequest Body_Handle_an_outbound_call_via_Exotel_v1_convai_exotel_outbound_call_post: properties: agent_id: type: string title: Agent Id agent_phone_number_id: type: string title: Agent Phone Number Id to_number: type: string title: To Number conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' telephony_call_config: $ref: '#/components/schemas/TelephonyCallConfig-Input' default: ringing_timeout_secs: 60 twilio_call_recording_enabled: false type: object required: - agent_id - agent_phone_number_id - to_number title: Body_Handle_an_outbound_call_via_Exotel_v1_convai_exotel_outbound_call_post PostDialDigitsStatic: properties: type: type: string const: static title: Type default: static value: type: string minLength: 1 pattern: ^[0-9*#wW]*$ title: Value description: DTMF digits to send after call connects (e.g., 'ww1234' for extension) type: object required: - value title: PostDialDigitsStatic RegexParameterEvaluationStrategy: properties: type: type: string const: regex title: Type pattern: type: string title: Pattern description: A regex pattern to match the agent's response against. type: object required: - type - pattern title: RegexParameterEvaluationStrategy GetToolDependentAgentsResponseModel: properties: agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Agents branches: items: $ref: '#/components/schemas/DependentBranchInfo' type: array title: Branches next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - agents - has_more title: GetToolDependentAgentsResponseModel AlertingPagerDutyNotifier: properties: type: type: string const: integration title: Type default: integration integration_type: type: string const: pagerduty title: Integration Type default: pagerduty connection_id: type: string minLength: 1 title: Connection Id description: ID of the workspace integration connection to deliver alert lifecycle notifications to. The connection's integration must have the monitoring capability and match ``integration_type``. additionalProperties: false type: object required: - connection_id title: AlertingPagerDutyNotifier CustomGuardrail-Output: properties: config: $ref: '#/components/schemas/CustomGuardrailsConfig-Output' type: object title: CustomGuardrail description: Container for custom guardrails, matching ModerationGuardrail pattern WorkflowToolResponseModel-Output: properties: steps: items: oneOf: - $ref: '#/components/schemas/WorkflowToolEdgeStepModel' - $ref: '#/components/schemas/WorkflowToolNestedToolsStepModel-Output' - $ref: '#/components/schemas/WorkflowToolMaxIterationsExceededStepModel' discriminator: propertyName: type mapping: edge: '#/components/schemas/WorkflowToolEdgeStepModel' max_iterations_exceeded: '#/components/schemas/WorkflowToolMaxIterationsExceededStepModel' nested_tools: '#/components/schemas/WorkflowToolNestedToolsStepModel-Output' type: array title: Steps type: object title: WorkflowToolResponseModel description: A common model for workflow tool responses. WidgetConfig-Input: properties: variant: $ref: '#/components/schemas/EmbedVariant' description: The variant of the widget default: full placement: $ref: '#/components/schemas/WidgetPlacement' description: The placement of the widget on the screen default: bottom-right expandable: $ref: '#/components/schemas/WidgetExpandable' description: Whether the widget is expandable default: never avatar: anyOf: - $ref: '#/components/schemas/OrbAvatar' - $ref: '#/components/schemas/URLAvatar' - $ref: '#/components/schemas/ImageAvatar' title: Avatar description: The avatar of the widget feedback_mode: $ref: '#/components/schemas/WidgetFeedbackMode' description: The feedback mode of the widget default: none end_feedback: anyOf: - $ref: '#/components/schemas/WidgetEndFeedbackConfig' - type: 'null' description: Configuration for feedback collected at the end of the conversation bg_color: type: string title: Bg Color description: The background color of the widget default: '#ffffff' text_color: type: string title: Text Color description: The text color of the widget default: '#000000' btn_color: type: string title: Btn Color description: The button color of the widget default: '#000000' btn_text_color: type: string title: Btn Text Color description: The button text color of the widget default: '#ffffff' border_color: type: string title: Border Color description: The border color of the widget default: '#e1e1e1' focus_color: type: string title: Focus Color description: The focus color of the widget default: '#000000' border_radius: anyOf: - type: integer - type: 'null' title: Border Radius description: The border radius of the widget btn_radius: anyOf: - type: integer - type: 'null' title: Btn Radius description: The button radius of the widget action_text: anyOf: - type: string - type: 'null' title: Action Text description: The action text of the widget start_call_text: anyOf: - type: string - type: 'null' title: Start Call Text description: The start call text of the widget end_call_text: anyOf: - type: string - type: 'null' title: End Call Text description: The end call text of the widget expand_text: anyOf: - type: string - type: 'null' title: Expand Text description: The expand text of the widget listening_text: anyOf: - type: string - type: 'null' title: Listening Text description: The text to display when the agent is listening speaking_text: anyOf: - type: string - type: 'null' title: Speaking Text description: The text to display when the agent is speaking shareable_page_text: anyOf: - type: string - type: 'null' title: Shareable Page Text description: The text to display when sharing shareable_page_show_terms: type: boolean title: Shareable Page Show Terms description: Whether to show terms and conditions on the shareable page default: true terms_text: anyOf: - type: string - type: 'null' title: Terms Text description: The text to display for terms and conditions terms_html: anyOf: - type: string - type: 'null' title: Terms Html description: The HTML to display for terms and conditions terms_key: anyOf: - type: string - type: 'null' title: Terms Key description: The key to display for terms and conditions show_avatar_when_collapsed: anyOf: - type: boolean - type: 'null' title: Show Avatar When Collapsed description: Whether to show the avatar when the widget is collapsed default: false disable_banner: type: boolean title: Disable Banner description: Whether to disable the banner default: false override_link: anyOf: - type: string - type: 'null' title: Override Link description: The override link for the widget markdown_link_allowed_hosts: items: $ref: '#/components/schemas/AllowlistItem' type: array title: Markdown Link Allowed Hosts description: 'List of allowed hostnames for clickable markdown links. Use { hostname: ''*'' } to allow any domain. Empty means no links are allowed.' markdown_link_include_www: type: boolean title: Markdown Link Include Www description: Whether to automatically include www. variants of allowed hosts default: true markdown_link_allow_http: type: boolean title: Markdown Link Allow Http description: Whether to allow http:// in addition to https:// for allowed hosts default: true mic_muting_enabled: type: boolean title: Mic Muting Enabled description: Whether to enable mic muting default: true transcript_enabled: type: boolean title: Transcript Enabled description: Whether the widget should show the conversation transcript as it goes on default: true text_input_enabled: type: boolean title: Text Input Enabled description: Whether the user should be able to send text messages default: true conversation_mode_toggle_enabled: type: boolean title: Conversation Mode Toggle Enabled description: Whether to enable the conversation mode toggle in the widget default: false default_expanded: type: boolean title: Default Expanded description: Whether the widget should be expanded by default default: false always_expanded: type: boolean title: Always Expanded description: Whether the widget should always be expanded default: false dismissible: type: boolean title: Dismissible description: Whether the widget can be dismissed by the user default: false show_agent_status: type: boolean title: Show Agent Status description: Whether to show agent working/done/error status during tool use default: false show_conversation_id: type: boolean title: Show Conversation Id description: Whether to show the conversation ID after disconnection. default: true strip_audio_tags: type: boolean title: Strip Audio Tags description: Whether to strip audio markup from messages. default: true syntax_highlight_theme: anyOf: - type: string enum: - light - dark - type: 'null' title: Syntax Highlight Theme description: Theme for code block syntax highlighting. Defaults to auto-detection by the widget when not set. text_contents: $ref: '#/components/schemas/WidgetTextContents' description: Text contents of the widget styles: $ref: '#/components/schemas/WidgetStyles' description: Styles for the widget show_resize_button: type: boolean title: Show Resize Button description: Whether to show the resize button default: true language_selector: type: boolean title: Language Selector description: Whether to show the language selector default: false supports_text_only: type: boolean title: Supports Text Only description: Whether the widget can switch to text only mode default: true custom_avatar_path: anyOf: - type: string - type: 'null' title: Custom Avatar Path description: The custom avatar path language_presets: additionalProperties: $ref: '#/components/schemas/WidgetLanguagePreset' type: object title: Language Presets description: Language presets for the widget type: object title: WidgetConfig example: custom_avatar_path: https://example.com/avatar.png language_selector: false EnvironmentAuthConnectionLocator: properties: env_var_label: type: string title: Env Var Label type: object required: - env_var_label title: EnvironmentAuthConnectionLocator description: 'References an environment variable of type ''auth_connection'' by label. At runtime, resolves to the auth connection for the current environment, falling back to the default environment.' WorkflowEndNodeModel-Output: properties: type: type: string const: end title: Type default: end position: $ref: '#/components/schemas/Position-Output' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. type: object required: - type - position - edge_order title: WorkflowEndNodeModel CompileProceduresResponseModel: properties: workflow: $ref: '#/components/schemas/AgentWorkflowResponseModel' description: Generated workflow from compilation type: object required: - workflow title: CompileProceduresResponseModel example: workflow: edges: [] nodes: [] CustomLLMAPIType: type: string enum: - chat_completions - responses - websocket title: CustomLLMAPIType default: chat_completions Body_Handle_an_outbound_call_via_Twilio_v1_convai_twilio_outbound_call_post: properties: agent_id: type: string title: Agent Id agent_phone_number_id: type: string title: Agent Phone Number Id to_number: type: string title: To Number conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' call_recording_enabled: anyOf: - type: boolean - type: 'null' title: Call Recording Enabled description: Whether let Twilio record the call. telephony_call_config: $ref: '#/components/schemas/TelephonyCallConfig-Input' default: ringing_timeout_secs: 60 twilio_call_recording_enabled: false type: object required: - agent_id - agent_phone_number_id - to_number title: Body_Handle_an_outbound_call_via_Twilio_v1_convai_twilio_outbound_call_post ConversationConfigWorkflowOverride-Input: properties: text_only: anyOf: - type: boolean - type: 'null' title: Text Only description: If enabled audio will not be processed and only text will be used, use to avoid audio pricing. x-convai-client-override: true max_duration_seconds: anyOf: - type: integer - type: 'null' title: Max Duration Seconds description: The maximum duration of a conversation in seconds x-convai-client-override: true client_events: anyOf: - items: $ref: '#/components/schemas/ClientEvent' type: array - type: 'null' title: Client Events description: The events that will be sent to the client file_input: anyOf: - $ref: '#/components/schemas/FileInputConfigWorkflowOverride' - type: 'null' description: Configuration for file input (image/PDF uploads) during conversations. x-convai-client-override: true monitoring_enabled: anyOf: - type: boolean - type: 'null' title: Monitoring Enabled description: Enable real-time monitoring of conversations via WebSocket monitoring_events: anyOf: - items: $ref: '#/components/schemas/ClientEvent' type: array - type: 'null' title: Monitoring Events description: The events that will be sent to monitoring connections. dtmf_input_settings: anyOf: - $ref: '#/components/schemas/DTMFInputConfig' - type: 'null' description: Configure DTMF (keypad) input collection during phone calls background_sound: anyOf: - $ref: '#/components/schemas/BackgroundSoundConfigWorkflowOverride' - type: 'null' description: Configuration for background sound during conversations. source_attribution: anyOf: - type: boolean - type: 'null' title: Source Attribution description: When enabled and knowledge base content is present, the LLM is instructed to report which sources it used. type: object title: ConversationConfigWorkflowOverride example: client_events: - audio - interruption max_duration_seconds: 600 VADConfigWorkflowOverride: properties: background_voice_detection: anyOf: - type: boolean - type: 'null' title: Background Voice Detection description: Whether to use background voice filtering x-fern-ignore: true type: object title: VADConfigWorkflowOverride example: background_voice_detection: false ConvAIWorkspaceStoredSecretConfig: properties: type: type: string const: stored title: Type secret_id: type: string title: Secret Id name: type: string title: Name used_by: $ref: '#/components/schemas/ConvAIStoredSecretDependencies' type: object required: - type - secret_id - name - used_by title: ConvAIWorkspaceStoredSecretConfig KnowledgeBaseDeletedResponseModel: properties: id: type: string title: Id type: object required: - id title: KnowledgeBaseDeletedResponseModel GetKnowledgeBaseSummaryFileResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentSummaryResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. dependent_agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Dependent Agents description: This field is deprecated and will be removed in the future, use the separate endpoint to get dependent agents instead. deprecated: true type: type: string const: file title: Type external_sync_info: anyOf: - $ref: '#/components/schemas/ExternalFileSyncInfo' - type: 'null' auto_sync_info: anyOf: - $ref: '#/components/schemas/AutoSyncInfo' - type: 'null' refresh_status: anyOf: - $ref: '#/components/schemas/FileRefreshStatus' - type: 'null' is_frozen: type: boolean title: Is Frozen default: false type: object required: - id - name - metadata - supported_usages - access_info - dependent_agents - type title: GetKnowledgeBaseSummaryFileResponseModel ASRProvider: type: string enum: - elevenlabs - scribe_realtime title: ASRProvider x-fern-enum: elevenlabs: description: 'Deprecated: Use scribe_realtime instead.' deprecated: true default: scribe_realtime ResponseFilterMode: type: string enum: - all - allow - hide_all title: ResponseFilterMode description: Controls how tool responses are filtered before being visible to the agent. default: all CreateLocationParams: properties: smb_tool_type: type: string const: create_location title: Smb Tool Type default: create_location type: object title: CreateLocationParams ListClientInteractionsParams: properties: smb_tool_type: type: string const: list_client_interactions title: Smb Tool Type default: list_client_interactions type: object title: ListClientInteractionsParams WorkflowPhoneNumberNodeModel-Output: properties: custom_sip_headers: items: oneOf: - $ref: '#/components/schemas/CustomSIPHeader' - $ref: '#/components/schemas/CustomSIPHeaderWithDynamicVariable' discriminator: propertyName: type mapping: dynamic: '#/components/schemas/CustomSIPHeaderWithDynamicVariable' static: '#/components/schemas/CustomSIPHeader' type: array maxItems: 20 title: Custom Sip Headers description: Custom SIP headers to include when transferring the call. Each header can be either a static value or a dynamic variable reference. transfer_destination: oneOf: - $ref: '#/components/schemas/PhoneNumberTransferDestination' - $ref: '#/components/schemas/SIPUriTransferDestination' - $ref: '#/components/schemas/PhoneNumberDynamicVariableTransferDestination' - $ref: '#/components/schemas/SIPUriDynamicVariableTransferDestination' title: Transfer Destination discriminator: propertyName: type mapping: phone: '#/components/schemas/PhoneNumberTransferDestination' phone_dynamic_variable: '#/components/schemas/PhoneNumberDynamicVariableTransferDestination' sip_uri: '#/components/schemas/SIPUriTransferDestination' sip_uri_dynamic_variable: '#/components/schemas/SIPUriDynamicVariableTransferDestination' transfer_type: $ref: '#/components/schemas/TransferTypeEnum' default: conference sip_refer_play_dialtone: type: boolean title: Sip Refer Play Dialtone description: When True, a ringing tone is played on the original call leg while a SIP REFER transfer completes. The tone is carried over RTP to the SIP peer executing the REFER, so disable this if the receiving system (e.g. an SBC or contact center) should not hear it. When disabled the caller hears silence until the transfer completes. SIP REFER transfers only. default: true uui: anyOf: - $ref: '#/components/schemas/UUITransferConfig' - type: 'null' description: User-to-User Information (RFC 7433) to attach to SIP REFER transfers. Carries call context such as CRM identifiers or escalation reason across the transfer boundary. post_dial_digits: anyOf: - oneOf: - $ref: '#/components/schemas/PostDialDigitsStatic' - $ref: '#/components/schemas/PostDialDigitsDynamicVariable' discriminator: propertyName: type mapping: dynamic: '#/components/schemas/PostDialDigitsDynamicVariable' static: '#/components/schemas/PostDialDigitsStatic' - type: 'null' title: Post Dial Digits description: DTMF digits to send after call connects (e.g., 'ww1234' for extension). Can be either a static value or a dynamic variable reference. Use 'w' for 0.5s pause. Only supported for Twilio transfers. type: type: string const: phone_number title: Type default: phone_number position: $ref: '#/components/schemas/Position-Output' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. type: object required: - custom_sip_headers - transfer_destination - transfer_type - sip_refer_play_dialtone - uui - post_dial_digits - type - position - edge_order title: WorkflowPhoneNumberNodeModel PostWorkspaceSecretRequest: properties: type: type: string const: new title: Type name: type: string title: Name value: type: string title: Value type: object required: - type - name - value title: PostWorkspaceSecretRequest Body_Submit_a_batch_call_request__v1_convai_batch_calling_submit_post: properties: call_name: type: string title: Call Name agent_id: type: string title: Agent Id recipients: items: $ref: '#/components/schemas/OutboundCallRecipient' type: array maxItems: 10000 title: Recipients scheduled_time_unix: anyOf: - type: integer - type: 'null' title: Scheduled Time Unix agent_phone_number_id: anyOf: - type: string - type: 'null' title: Agent Phone Number Id whatsapp_params: anyOf: - $ref: '#/components/schemas/BatchCallWhatsAppParams' - type: 'null' timezone: anyOf: - type: string - type: 'null' title: Timezone branch_id: anyOf: - type: string - type: 'null' title: Branch Id environment: anyOf: - type: string - type: 'null' title: Environment telephony_call_config: $ref: '#/components/schemas/TelephonyCallConfig-Input' default: ringing_timeout_secs: 60 twilio_call_recording_enabled: false target_concurrency_limit: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Target Concurrency Limit description: Maximum number of simultaneous calls for this batch. When set, dispatch is governed by this limit rather than workspace/agent capacity percentages. type: object required: - call_name - agent_id - recipients title: Body_Submit_a_batch_call_request__v1_convai_batch_calling_submit_post ToolAnnotations: properties: title: anyOf: - type: string - type: 'null' title: Title readOnlyHint: anyOf: - type: boolean - type: 'null' title: Readonlyhint destructiveHint: anyOf: - type: boolean - type: 'null' title: Destructivehint idempotentHint: anyOf: - type: boolean - type: 'null' title: Idempotenthint openWorldHint: anyOf: - type: boolean - type: 'null' title: Openworldhint type: object title: ToolAnnotations description: 'Additional properties describing a Tool to clients. NOTE: all properties in ToolAnnotations are **hints**. They are not guaranteed to provide a faithful description of tool behavior (including descriptive properties like `title`). Clients should never make tool use decisions based on ToolAnnotations received from untrusted servers.' LanguageDetectionToolConfig: properties: system_tool_type: type: string const: language_detection title: System Tool Type default: language_detection only_at_conversation_start: type: boolean title: Only At Conversation Start description: If no language switch happens in the first 2 user turns, later attempts fail and the conversation stays in the current language. If the language switches during those turns, later switching stays available. Enable to reduce the possibility of false switching. default: false type: object title: LanguageDetectionToolConfig BatchCallRecipientStatus: type: string enum: - pending - dispatched - initiated - in_progress - completed - failed - cancelled - voicemail title: BatchCallRecipientStatus ChatSourceMedium: type: string enum: - audio - dtmf - text - image - file title: ChatSourceMedium OptInSmsReminderParams: properties: smb_tool_type: type: string const: opt_in_sms_reminder title: Smb Tool Type default: opt_in_sms_reminder type: object title: OptInSmsReminderParams CompileProceduresValidationErrorResponseModel: properties: errors: additionalProperties: items: $ref: '#/components/schemas/ProcedureValidationError' type: array minItems: 1 type: object minProperties: 1 title: Errors description: Validation errors keyed by procedure ID. type: object required: - errors title: CompileProceduresValidationErrorResponseModel example: errors: agtprc_6qbpwdq8n01bxhk44bgjy6f10ck3: - message: Field required path: steps.0.message LLMUsage-Output: properties: model_usage: additionalProperties: $ref: '#/components/schemas/LLMInputOutputTokensUsage' propertyNames: $ref: '#/components/schemas/LLM' type: object title: Model Usage type: object title: LLMUsage RequiredConstraint: properties: required: items: type: string type: array title: Required type: object required: - required title: RequiredConstraint description: A set of fields that must all be present to satisfy this constraint. WebhookTranscriptFormat: type: string enum: - json - opentelemetry title: WebhookTranscriptFormat default: json LLMDeprecationInfoModel: properties: llm: $ref: '#/components/schemas/LLM' description: The identifier of the deprecated LLM model. is_deprecated: type: boolean title: Is Deprecated description: Whether this model is currently deprecated. True if the model is immediately deprecated or within the warning period. is_in_warning_period: type: boolean title: Is In Warning Period description: Whether this model is currently in the warning period before deprecation. default: false is_in_fallback_period: type: boolean title: Is In Fallback Period description: Whether traffic is currently being progressively routed to the replacement model. default: false fallback_percentage: type: integer title: Fallback Percentage description: Current percentage of traffic being routed to the replacement model (0-100). default: 0 provider_deprecation_date: anyOf: - type: string format: date-time - type: 'null' title: Provider Deprecation Date description: The date when the model provider will deprecate this model. Null for immediately deprecated models. replacement_model: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: The model that replaces this deprecated model. Traffic will be automatically routed to this model. deprecation_config: anyOf: - $ref: '#/components/schemas/LLMDeprecationConfigModel' - type: 'null' description: Custom deprecation timing configuration for this model. Null if using the default configuration. type: object required: - llm - is_deprecated title: LLMDeprecationInfoModel example: fallback_percentage: 0 is_deprecated: true is_in_fallback_period: false is_in_warning_period: true llm: gpt-4o-mini provider_deprecation_date: '2025-06-01T00:00:00Z' replacement_model: gpt-4o ExternalSyncJobType: type: string enum: - full - incremental title: ExternalSyncJobType TransferBranchInfoDefaultingToMain: properties: branch_reason: type: string const: defaulting_to_main title: Branch Reason branch_id: type: string title: Branch Id type: object required: - branch_reason - branch_id title: TransferBranchInfoDefaultingToMain CreateOrderParams: properties: smb_tool_type: type: string const: create_order title: Smb Tool Type default: create_order type: object title: CreateOrderParams PostDialDigitsDynamicVariable: properties: type: type: string const: dynamic title: Type default: dynamic value: type: string minLength: 1 title: Value description: The dynamic variable name to resolve type: object required: - value title: PostDialDigitsDynamicVariable TTSConversationalConfigOverride: properties: model_id: anyOf: - $ref: '#/components/schemas/TTSConversationalModel' - type: 'null' description: The model to use for TTS x-convai-client-override: true voice_id: anyOf: - type: string - type: 'null' title: Voice Id description: The voice ID to use for TTS x-convai-client-override: true x-convai-language-override: true supported_voices: anyOf: - items: $ref: '#/components/schemas/SupportedVoice' type: array - type: 'null' title: Supported Voices description: Additional supported voices for the agent x-convai-client-override: true x-convai-soft-override-disallowed: true stability: anyOf: - type: number - type: 'null' title: Stability description: The stability of generated speech x-convai-client-override: true speed: anyOf: - type: number - type: 'null' title: Speed description: The speed of generated speech x-convai-client-override: true similarity_boost: anyOf: - type: number - type: 'null' title: Similarity Boost description: The similarity boost for generated speech x-convai-client-override: true pronunciation_dictionary_locators: anyOf: - items: $ref: '#/components/schemas/PydanticPronunciationDictionaryVersionLocator' type: array - type: 'null' title: Pronunciation Dictionary Locators description: The pronunciation dictionary locators x-convai-client-override: true type: object title: TTSConversationalConfigOverride example: model_id: eleven_turbo_v2 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal ConversationProduct: type: string enum: - agents - speech_engine title: ConversationProduct description: Which product surface owns this agent document. CrawlStatus: type: string enum: - queued - processing - succeeded - failed - skipped - cancelled title: CrawlStatus default: queued AgentConfigOverride-Input: properties: first_message: anyOf: - type: string - type: 'null' title: First Message description: If non-empty, the first message the agent will say. If empty, the agent waits for the user to start the discussion. x-convai-client-override: true x-convai-language-override: true language: anyOf: - type: string - type: 'null' title: Language description: Language of the agent - used for ASR and TTS x-convai-client-override: true max_conversation_duration_message: anyOf: - type: string - type: 'null' title: Max Conversation Duration Message description: If non-empty, the message the agent will send when max conversation duration is reached. x-convai-client-override: true x-convai-language-override: true prompt: anyOf: - $ref: '#/components/schemas/PromptAgentAPIModelOverride-Input' - type: 'null' description: The prompt for the agent type: object title: AgentConfigOverride example: first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. tool_ids: [] Body_Merge_a_branch_into_a_target_branch_v1_convai_agents__agent_id__branches__source_branch_id__merge_post: properties: archive_source_branch: type: boolean title: Archive Source Branch description: Whether to archive the source branch after merging default: true force: type: boolean title: Force description: Force source branch changes onto the target, overriding timestamp-based conflict resolution default: false type: object title: Body_Merge_a_branch_into_a_target_branch_v1_convai_agents__agent_id__branches__source_branch_id__merge_post ToolResponseModel: properties: id: type: string title: Id tool_config: oneOf: - $ref: '#/components/schemas/WebhookToolConfig-Output' - $ref: '#/components/schemas/ClientToolConfig-Output' - $ref: '#/components/schemas/SystemToolConfig-Output' - $ref: '#/components/schemas/MCPToolConfig-Output' title: Tool Config description: The type of tool discriminator: propertyName: type mapping: client: '#/components/schemas/ClientToolConfig-Output' mcp: '#/components/schemas/MCPToolConfig-Output' system: '#/components/schemas/SystemToolConfig-Output' webhook: '#/components/schemas/WebhookToolConfig-Output' access_info: $ref: '#/components/schemas/ResourceAccessInfo' usage_stats: $ref: '#/components/schemas/ToolUsageStatsResponseModel' response_mocks: anyOf: - items: $ref: '#/components/schemas/ToolResponseMockConfig-Output' type: array - type: 'null' title: Response Mocks description: Mock responses with optional parameter conditions. Evaluated top-to-bottom; first match wins. type: object required: - id - tool_config - access_info - usage_stats title: ToolResponseModel DynamicVariableAssignment: properties: source: type: string const: response title: Source description: The source to extract the value from. Currently only 'response' is supported. default: response dynamic_variable: type: string title: Dynamic Variable description: The name of the dynamic variable to assign the extracted value to value_path: type: string title: Value Path description: Dot notation path to extract the value from the source (e.g., 'user.name' or 'data.0.id') sanitize: type: boolean title: Sanitize description: If true, this assignment's value will be removed from the tool response before sending to the LLM and transcript, but still processed for variable assignment. default: false preserve_native_type: type: boolean title: Preserve Native Type description: If true, non-scalar values (lists, objects) extracted from the tool response are stored as their native type instead of being stringified to JSON. Enable this to use extracted arrays directly as list dynamic variables. default: false type: object required: - dynamic_variable - value_path title: DynamicVariableAssignment description: Configuration for extracting values from tool responses and assigning them to dynamic variables. example: dynamic_variable: user_name preserve_native_type: false sanitize: false source: response value_path: user.name ASRConversationalConfigWorkflowOverride: properties: quality: anyOf: - $ref: '#/components/schemas/ASRQuality' - type: 'null' description: The quality of the transcription provider: anyOf: - $ref: '#/components/schemas/ASRProvider' - type: 'null' description: The provider of the transcription service user_input_audio_format: anyOf: - $ref: '#/components/schemas/ASRInputFormat' - type: 'null' description: The format of the audio to be transcribed keywords: anyOf: - items: type: string type: array - type: 'null' title: Keywords description: Keywords to boost prediction probability for x-convai-client-override: true x-convai-soft-override-disallowed: true type: object title: ASRConversationalConfigWorkflowOverride example: keywords: - hello - world provider: scribe_realtime quality: high user_input_audio_format: pcm_16000 CustomSIPHeaderWithDynamicVariable: properties: type: type: string const: dynamic title: Type key: type: string maxLength: 64 minLength: 1 pattern: ^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$ title: Key description: The SIP header name (e.g., 'X-Customer-ID') value: type: string minLength: 1 title: Value description: The dynamic variable name to resolve type: object required: - type - key - value title: CustomSIPHeaderWithDynamicVariable description: 'Custom SIP header for phone transfers with a dynamic variable reference. The value is a variable name that will be resolved at runtime. Value is not validated here since it will be substituted with actual value later.' MCPToolConfig-Output: properties: type: type: string const: mcp title: Type default: mcp name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the MCP tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 30 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto integration_type: $ref: '#/components/schemas/IntegrationType' description: The type of MCP tool parameters: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Output' description: JSON schema for the parameters the LLM provides. - type: 'null' description: Schema for any parameters the LLM needs to provide to the MCP tool. approval_policy: $ref: '#/components/schemas/MCPApprovalPolicy' description: The approval policy for the MCP tool default: require_approval_all mcp_tool_name: type: string title: Mcp Tool Name description: The name of the MCP tool to call mcp_tool_description: type: string title: Mcp Tool Description description: The description of the MCP tool to call mcp_server_id: type: string title: Mcp Server Id description: The id of the MCP server to call mcp_server_name: type: string title: Mcp Server Name description: The name of the MCP server to call mcp_input_schema: anyOf: - additionalProperties: true type: object - type: 'null' title: Mcp Input Schema description: Original inputSchema dict for consistent hashing execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate input_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Input Overrides description: Input parameter overrides for this tool type: object required: - name - description - integration_type - mcp_tool_name - mcp_tool_description - mcp_server_id - mcp_server_name title: MCPToolConfig description: An MCP tool configuration that can be used to call MCP servers x-fern-ignore: true AgentMetadataResponseModel: properties: created_at_unix_secs: type: integer title: Created At Unix Secs description: The creation time of the agent in unix seconds updated_at_unix_secs: type: integer title: Updated At Unix Secs description: The last update time of the agent in unix seconds type: object required: - created_at_unix_secs - updated_at_unix_secs title: AgentMetadataResponseModel TransferToNumberResultSipSuccessModel: properties: result_type: type: string const: transfer_to_number_sip_success title: Result Type default: transfer_to_number_sip_success status: type: string const: success title: Status default: success transfer_number: type: string title: Transfer Number reason: anyOf: - type: string - type: 'null' title: Reason note: anyOf: - type: string - type: 'null' title: Note type: object required: - transfer_number title: TransferToNumberResultSipSuccessModel ConversationHistoryBatchCallModel: properties: batch_call_id: type: string title: Batch Call Id batch_call_recipient_id: type: string title: Batch Call Recipient Id campaign: anyOf: - $ref: '#/components/schemas/BatchCallingCampaignInformation' - type: 'null' type: object required: - batch_call_id - batch_call_recipient_id title: ConversationHistoryBatchCallModel ConversationalConfigAPIModel-Output: properties: asr: $ref: '#/components/schemas/ASRConversationalConfig' description: Configuration for conversational transcription turn: $ref: '#/components/schemas/TurnConfig' description: Configuration for turn detection tts: $ref: '#/components/schemas/TTSConversationalConfig-Output' description: Configuration for conversational text to speech conversation: $ref: '#/components/schemas/ConversationConfig-Output' description: Configuration for conversational events language_presets: additionalProperties: $ref: '#/components/schemas/LanguagePreset-Output' type: object title: Language Presets description: Language presets for conversations vad: $ref: '#/components/schemas/VADConfig' description: Configuration for voice activity detection agent: $ref: '#/components/schemas/AgentConfigAPIModel-Output' description: Agent specific configuration type: object title: ConversationalConfigAPIModel UpdateCalendarEventParams: properties: smb_tool_type: type: string const: update_calendar_event title: Smb Tool Type default: update_calendar_event type: object title: UpdateCalendarEventParams DependentAvailableToolIdentifier: properties: id: type: string title: Id name: type: string title: Name type: type: string const: available title: Type default: available created_at_unix_secs: type: integer title: Created At Unix Secs access_level: type: string enum: - admin - editor - commenter - viewer title: Access Level type: object required: - id - name - created_at_unix_secs - access_level title: DependentAvailableToolIdentifier UpdateGroupSessionSeatsParams: properties: smb_tool_type: type: string const: update_group_session_seats title: Smb Tool Type default: update_group_session_seats type: object title: UpdateGroupSessionSeatsParams description: Change the seat count of an existing group session registration. SecretDependencyType: type: string enum: - conversation_initiation_webhook title: SecretDependencyType DeleteAssetParams: properties: smb_tool_type: type: string const: delete_asset title: Smb Tool Type default: delete_asset type: object title: DeleteAssetParams PatchConversationTagRequestModel: properties: title: anyOf: - type: string maxLength: 120 minLength: 1 - type: 'null' title: Title description: If provided, replaces the tag title. Omit to leave unchanged. description: anyOf: - type: string maxLength: 1000 - type: 'null' title: Description description: If provided, replaces the tag description. Omit to leave unchanged. type: object title: PatchConversationTagRequestModel UpdateProductParams: properties: smb_tool_type: type: string const: update_product title: Smb Tool Type default: update_product type: object title: UpdateProductParams UpdateTransferRuleParams: properties: smb_tool_type: type: string const: update_transfer_rule title: Smb Tool Type default: update_transfer_rule post_dial_digits_enabled: type: boolean title: Post Dial Digits Enabled description: Whether to offer the post_dial_digits parameter, set from the receptionists' enable_play_keypad_touch_tone_tool config. Digits saved while that is off are dropped when the receptionist is built, so the parameter is hidden rather than accepted and ignored. default: false type: object title: UpdateTransferRuleParams ConversationHistoryRedactionConfig: properties: enabled: type: boolean title: Enabled description: Whether conversation history redaction is enabled default: false entities: items: $ref: '#/components/schemas/ConfigEntityType' type: array title: Entities description: The entities to redact from the conversation transcript, audio and analysis. Use top-level types like 'name', 'email_address', or dot notation for specific subtypes like 'name.full_name'. type: object title: ConversationHistoryRedactionConfig SIPTrunkTransportEnum: type: string enum: - auto - udp - tcp - tls title: SIPTrunkTransportEnum default: auto PhoneNumberTransfer: properties: custom_sip_headers: items: oneOf: - $ref: '#/components/schemas/CustomSIPHeader' - $ref: '#/components/schemas/CustomSIPHeaderWithDynamicVariable' discriminator: propertyName: type mapping: dynamic: '#/components/schemas/CustomSIPHeaderWithDynamicVariable' static: '#/components/schemas/CustomSIPHeader' type: array maxItems: 20 title: Custom Sip Headers description: Custom SIP headers to include when transferring the call. Each header can be either a static value or a dynamic variable reference. transfer_destination: oneOf: - $ref: '#/components/schemas/PhoneNumberTransferDestination' - $ref: '#/components/schemas/SIPUriTransferDestination' - $ref: '#/components/schemas/PhoneNumberDynamicVariableTransferDestination' - $ref: '#/components/schemas/SIPUriDynamicVariableTransferDestination' title: Transfer Destination discriminator: propertyName: type mapping: phone: '#/components/schemas/PhoneNumberTransferDestination' phone_dynamic_variable: '#/components/schemas/PhoneNumberDynamicVariableTransferDestination' sip_uri: '#/components/schemas/SIPUriTransferDestination' sip_uri_dynamic_variable: '#/components/schemas/SIPUriDynamicVariableTransferDestination' transfer_type: $ref: '#/components/schemas/TransferTypeEnum' default: conference sip_refer_play_dialtone: type: boolean title: Sip Refer Play Dialtone description: When True, a ringing tone is played on the original call leg while a SIP REFER transfer completes. The tone is carried over RTP to the SIP peer executing the REFER, so disable this if the receiving system (e.g. an SBC or contact center) should not hear it. When disabled the caller hears silence until the transfer completes. SIP REFER transfers only. default: true uui: anyOf: - $ref: '#/components/schemas/UUITransferConfig' - type: 'null' description: User-to-User Information (RFC 7433) to attach to SIP REFER transfers. Carries call context such as CRM identifiers or escalation reason across the transfer boundary. post_dial_digits: anyOf: - oneOf: - $ref: '#/components/schemas/PostDialDigitsStatic' - $ref: '#/components/schemas/PostDialDigitsDynamicVariable' discriminator: propertyName: type mapping: dynamic: '#/components/schemas/PostDialDigitsDynamicVariable' static: '#/components/schemas/PostDialDigitsStatic' - type: 'null' title: Post Dial Digits description: DTMF digits to send after call connects (e.g., 'ww1234' for extension). Can be either a static value or a dynamic variable reference. Use 'w' for 0.5s pause. Only supported for Twilio transfers. phone_number: anyOf: - type: string - type: 'null' title: Phone Number deprecated: true condition: type: string title: Condition type: object required: - transfer_destination - condition title: PhoneNumberTransfer Body_Post_Agent_hold_audio_v1_convai_agents__agent_id__hold_audio_post: properties: hold_audio_file: type: string title: Hold Audio File description: An MP3 or WAV file played on loop to callers waiting in the agent's concurrency wait queue. Maximum size 40 MB, maximum duration 180 seconds. format: binary type: object required: - hold_audio_file title: Body_Post_Agent_hold_audio_v1_convai_agents__agent_id__hold_audio_post FeatureStatusCommonModel: properties: enabled: type: boolean title: Enabled default: false used: type: boolean title: Used default: false type: object title: FeatureStatusCommonModel TelephonyCallConfig-Input: properties: ringing_timeout_secs: type: integer maximum: 999.0 minimum: 1.0 title: Ringing Timeout Secs description: How long to ring the recipient before giving up, in seconds. Note that this will also be limited by the provider's own constraints. default: 60 twilio_call_recording_enabled: type: boolean title: Twilio Call Recording Enabled description: Whether to record the call using Twilio call recording. Ignored for non-Twilio providers. Recordings are stored in your Twilio account. default: false twilio_machine_detection: anyOf: - $ref: '#/components/schemas/TwilioMachineDetectionConfig' - type: 'null' description: Configuration for Twilio's carrier-level answering machine detection (AMD). Omit or set to null to disable it. Ignored for non-Twilio providers and for inbound calls. The resulting verdict is delivered as its own `answering_machine_detection` webhook event, which requires that event to be enabled on the workspace or agent webhook settings; it is not part of the conversation or the post-call webhook. Detection runs asynchronously so it never delays the start of the conversation, and the verdict can arrive at any point during the call -- with `detect_message_end`, even after it has ended. Twilio bills separately for AMD. type: object title: TelephonyCallConfig CancelOrderParams: properties: smb_tool_type: type: string const: cancel_order title: Smb Tool Type default: cancel_order type: object title: CancelOrderParams ConversationSummaryResponseModel: properties: agent_id: type: string title: Agent Id branch_id: anyOf: - type: string - type: 'null' title: Branch Id version_id: anyOf: - type: string - type: 'null' title: Version Id agent_name: anyOf: - type: string - type: 'null' title: Agent Name conversation_id: type: string title: Conversation Id start_time_unix_secs: type: integer title: Start Time Unix Secs call_duration_secs: type: integer title: Call Duration Secs message_count: type: integer title: Message Count status: type: string enum: - initiated - in-progress - processing - done - failed title: Status termination_reason: type: string title: Termination Reason default: '' call_successful: $ref: '#/components/schemas/EvaluationSuccessResult' call_success_score: anyOf: - type: number - type: 'null' title: Call Success Score transcript_summary: anyOf: - type: string - type: 'null' title: Transcript Summary call_summary_title: anyOf: - type: string - type: 'null' title: Call Summary Title main_language: anyOf: - type: string - type: 'null' title: Main Language conversation_initiation_source: anyOf: - $ref: '#/components/schemas/ConversationInitiationSource' - type: 'null' tool_names: anyOf: - items: type: string type: array - type: 'null' title: Tool Names direction: anyOf: - $ref: '#/components/schemas/TelephonyDirection' - type: 'null' rating: anyOf: - type: number - type: 'null' title: Rating sentiment_analysis: anyOf: - $ref: '#/components/schemas/ConversationSentimentAnalysis' - type: 'null' data_collection_results: anyOf: - additionalProperties: true type: object - type: 'null' title: Data Collection Results evaluation_criteria_results: anyOf: - additionalProperties: $ref: '#/components/schemas/EvaluationCriteriaSummaryResult' type: object - type: 'null' title: Evaluation Criteria Results tag_ids: items: type: string type: array title: Tag Ids description: Conversation tag ids assigned to this conversation. type: object required: - agent_id - conversation_id - start_time_unix_secs - call_duration_secs - message_count - status - call_successful title: ConversationSummaryResponseModel ConversationInitiationSourceInfo: properties: source: anyOf: - $ref: '#/components/schemas/ConversationInitiationSource' - type: 'null' description: Source of the conversation initiation version: anyOf: - type: string maxLength: 50 - type: 'null' title: Version description: The SDK version number type: object title: ConversationInitiationSourceInfo description: Information about the source of conversation initiation GetLiveCountResponse: properties: count: type: integer title: Count description: The number of active ongoing conversations. type: object required: - count title: GetLiveCountResponse examples: - count: 42 ASTDynamicVariableNode-Output: properties: type: type: string const: dynamic_variable title: Type default: dynamic_variable name: type: string title: Name description: The name of the dynamic variable. type: object required: - type - name title: ASTDynamicVariableNode KnowledgeBaseRagToolResultModel: properties: result_type: type: string const: knowledge_base_rag_success title: Result Type default: knowledge_base_rag_success status: $ref: '#/components/schemas/KnowledgeBaseRagToolStatus' default: success chunk_count: type: integer title: Chunk Count description: Number of relevant chunks retrieved default: 0 message: type: string title: Message description: Human-readable status for the LLM about the search results default: Referenced knowledge base. chunks: items: $ref: '#/components/schemas/KnowledgeBaseRagChunkModel' type: array title: Chunks description: Retrieved chunks; populated only in the rag-result-in-tool-result mode type: object title: KnowledgeBaseRagToolResultModel SuggestedAudioTag: properties: tag: type: string maxLength: 30 minLength: 1 title: Tag description: Audio tag to use (for best performance, 1-2 words, e.g., 'happy', 'excited') description: anyOf: - type: string maxLength: 200 - type: 'null' title: Description description: Optional description of when to use this tag type: object required: - tag title: SuggestedAudioTag CreateExotelPhoneNumberRequest: properties: phone_number: type: string title: Phone Number description: Phone number label: type: string title: Label description: Label for the phone number supports_inbound: type: boolean title: Supports Inbound description: This field is deprecated and will be removed in the future. Whether this phone number supports inbound calls default: true deprecated: true supports_outbound: type: boolean title: Supports Outbound description: This field is deprecated and will be removed in the future. Whether this phone number supports outbound calls default: true deprecated: true provider: type: string const: exotel title: Provider default: exotel agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID to assign the phone number to account_sid: type: string title: Account Sid description: Exotel Account SID api_key: type: string title: Api Key description: Exotel API Key api_token: type: string title: Api Token description: Exotel API Token api_subdomain: $ref: '#/components/schemas/ExotelApiSubdomain' description: Exotel region-specific API host app_id: type: string title: App Id description: Exotel applet identifier used in Calls/connect applet_url: anyOf: - type: string - type: 'null' title: Applet Url description: Optional full applet URL override. Defaults to Exotel start_voice URL derived from account SID and app ID. type: object required: - phone_number - label - account_sid - api_key - api_token - api_subdomain - app_id title: CreateExotelPhoneNumberRequest example: account_sid: your-account-sid api_key: your-api-key api_subdomain: api.in.exotel.com api_token: '********' app_id: '12345' label: Exotel Outbound phone_number: '+919999999999' provider: exotel ASTAdditionOperatorNode-Input: properties: type: type: string const: add_operator title: Type default: add_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTAdditionOperatorNode ASTOrOperatorNode-Input: properties: type: type: string const: or_operator title: Type default: or_operator children: items: $ref: '#/components/schemas/ASTNode-Input' type: array minItems: 2 title: Children description: Child nodes of the logical operator. type: object required: - children title: ASTOrOperatorNode DependentAvailableMCPServerIdentifier: properties: id: type: string title: Id name: type: string title: Name type: type: string const: available title: Type default: available created_at_unix_secs: type: integer title: Created At Unix Secs access_level: type: string enum: - admin - editor - commenter - viewer title: Access Level type: object required: - id - name - created_at_unix_secs - access_level title: DependentAvailableMCPServerIdentifier UpdateAssetParams: properties: smb_tool_type: type: string const: update_asset title: Smb Tool Type default: update_asset type: object title: UpdateAssetParams MCPServersResponseModel: properties: mcp_servers: items: $ref: '#/components/schemas/MCPServerResponseModel' type: array title: Mcp Servers type: object required: - mcp_servers title: MCPServersResponseModel description: Response model for a list of MCP Server configurations. SortDirection: type: string enum: - asc - desc title: SortDirection NumericDistributionAggregate: properties: count: type: integer title: Count default: 0 sum: type: number title: Sum default: 0.0 min: anyOf: - type: number - type: 'null' title: Min max: anyOf: - type: number - type: 'null' title: Max type: object title: NumericDistributionAggregate AgentConfigAPIModelWorkflowOverride-Input: properties: first_message: anyOf: - type: string - type: 'null' title: First Message description: If non-empty, the first message the agent will say. If empty, the agent waits for the user to start the discussion. x-convai-client-override: true x-convai-language-override: true language: anyOf: - type: string - type: 'null' title: Language description: Language of the agent - used for ASR and TTS x-convai-client-override: true hinglish_mode: anyOf: - type: boolean - type: 'null' title: Hinglish Mode description: When enabled and language is Hindi, the agent will respond in Hinglish dynamic_variables: anyOf: - $ref: '#/components/schemas/DynamicVariablesConfigWorkflowOverride' - type: 'null' description: Configuration for dynamic variables disable_first_message_interruptions: anyOf: - type: boolean - type: 'null' title: Disable First Message Interruptions description: If true, the user will not be able to interrupt the agent while the first message is being delivered. max_conversation_duration_message: anyOf: - type: string - type: 'null' title: Max Conversation Duration Message description: If non-empty, the message the agent will send when max conversation duration is reached. x-convai-client-override: true x-convai-language-override: true text_behavior_overrides: anyOf: - additionalProperties: $ref: '#/components/schemas/BehaviorOverride' propertyNames: $ref: '#/components/schemas/ConversationInitiationSource' type: object - type: 'null' title: Text Behavior Overrides description: Per-channel response behavior overrides for text conversations. Built-in channel defaults apply when unset. prompt: anyOf: - $ref: '#/components/schemas/PromptAgentAPIModelWorkflowOverride-Input' - type: 'null' description: The prompt for the agent type: object title: AgentConfigAPIModelWorkflowOverride example: disable_first_message_interruptions: false dynamic_variables: dynamic_variable_placeholders: user_name: John Doe first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] UpdatePhoneNumberRequest: properties: agent_id: anyOf: - type: string - type: 'null' title: Agent Id label: anyOf: - type: string - type: 'null' title: Label inbound_trunk_config: anyOf: - $ref: '#/components/schemas/InboundSIPTrunkConfigRequestModel' - type: 'null' outbound_trunk_config: anyOf: - $ref: '#/components/schemas/OutboundSIPTrunkConfigRequestModel' - type: 'null' livekit_stack: anyOf: - $ref: '#/components/schemas/LivekitStackType' - type: 'null' store_sip_messages: anyOf: - type: boolean - type: 'null' title: Store Sip Messages environment: anyOf: - type: string - type: 'null' title: Environment description: Environment to use for resolving environment variables on calls to this number. branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: Agent branch to use for calls to this number. type: object title: UpdatePhoneNumberRequest EffectsSpec-Input: properties: filter_preset_id: anyOf: - type: string - type: 'null' title: Filter Preset Id distance: type: number maximum: 1.0 minimum: 0.0 title: Distance default: 0.0 environment_id: anyOf: - type: string - type: 'null' title: Environment Id background_noise_id: anyOf: - type: string - type: 'null' title: Background Noise Id send_level: type: number maximum: 1.0 minimum: 0.0 title: Send Level default: 1.0 seed: anyOf: - type: integer - type: 'null' title: Seed type: object title: EffectsSpec description: Filter preset, distance (proximity EQ), and environment (convolution reverb). LanguageDetectionToolResultModel: properties: result_type: type: string const: language_detection_success title: Result Type default: language_detection_success status: type: string const: success title: Status default: success reason: anyOf: - type: string - type: 'null' title: Reason language: anyOf: - type: string - type: 'null' title: Language type: object title: LanguageDetectionToolResultModel MCPToolConfig-Input: properties: type: type: string const: mcp title: Type default: mcp name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the MCP tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 30 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto integration_type: $ref: '#/components/schemas/IntegrationType' description: The type of MCP tool parameters: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Input' description: JSON schema for the parameters the LLM provides. - type: 'null' description: Schema for any parameters the LLM needs to provide to the MCP tool. approval_policy: $ref: '#/components/schemas/MCPApprovalPolicy' description: The approval policy for the MCP tool default: require_approval_all mcp_tool_name: type: string title: Mcp Tool Name description: The name of the MCP tool to call mcp_tool_description: type: string title: Mcp Tool Description description: The description of the MCP tool to call mcp_server_id: type: string title: Mcp Server Id description: The id of the MCP server to call mcp_server_name: type: string title: Mcp Server Name description: The name of the MCP server to call mcp_input_schema: anyOf: - additionalProperties: true type: object - type: 'null' title: Mcp Input Schema description: Original inputSchema dict for consistent hashing execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate input_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Input Overrides description: Input parameter overrides for this tool type: object required: - name - description - integration_type - mcp_tool_name - mcp_tool_description - mcp_server_id - mcp_server_name title: MCPToolConfig description: An MCP tool configuration that can be used to call MCP servers x-fern-ignore: true LiteralJsonSchemaProperty: properties: type: anyOf: - type: string enum: - boolean - string - integer - number - items: type: string type: array maxItems: 2 minItems: 2 title: Type description: type: string title: Description description: The description of the property. When set, the LLM will provide the value based on this description. Mutually exclusive with dynamic_variable, is_system_provided, constant_value, and is_omitted. default: '' enum: anyOf: - items: type: string type: array - type: 'null' title: Enum description: List of allowed string values for string type parameters is_system_provided: type: boolean title: Is System Provided description: If true, the value will be populated by the system at runtime. Used by API Integration Webhook tools for templating. Mutually exclusive with description, dynamic_variable, constant_value, and is_omitted. default: false dynamic_variable: type: string title: Dynamic Variable description: The name of the dynamic variable to use for this property's value. Mutually exclusive with description, is_system_provided, constant_value, and is_omitted. default: '' allowed_values: anyOf: - $ref: '#/components/schemas/AllowedValues' - type: 'null' description: 'Server-side rejection guard for an LLM-provided value: the runtime rejects any value outside the permitted set this object names, and the set is not advertised to the LLM as an enum. Only supported when the value source is `description`; combining it with dynamic_variable, is_system_provided, constant_value, or is_omitted is rejected.' allowed_values_dynamic_variable: type: string title: Allowed Values Dynamic Variable description: 'DEPRECATED: use `allowed_values` instead. When set, the LLM provides the value but the runtime rejects any value not present in the list held by this dynamic variable (must be a JSON array such as ["ws_alpha", "ws_beta"]). Use to let the LLM pick from a server-verified set (e.g. the IDs the current user is allowed to access). Requires description; mutually exclusive with dynamic_variable, is_system_provided, constant_value, and is_omitted.' default: '' deprecated: true constant_value: anyOf: - type: string - type: integer - type: number - type: boolean - type: 'null' title: Constant Value description: A constant value to use for this property. Mutually exclusive with description, dynamic_variable, is_system_provided, and is_omitted. default: '' is_omitted: type: boolean title: Is Omitted description: If true, this parameter will be completely omitted from the request. Only valid for optional parameters. Mutually exclusive with description, dynamic_variable, is_system_provided, and constant_value. default: false type: object required: - type title: LiteralJsonSchemaProperty description: 'Schema property for literal JSON types. IMPORTANT: Only ONE of the following fields can be set: description (LLM provides value), dynamic_variable (value from variable), is_system_provided (system provides value), constant_value (fixed value), or is_omitted (parameter is omitted). These are mutually exclusive.' example: description: A user-provided message type: string GetBookingPageSettingsParams: properties: smb_tool_type: type: string const: get_booking_page_settings title: Smb Tool Type default: get_booking_page_settings type: object title: GetBookingPageSettingsParams AgentPlatformSettingsResponseModel: properties: evaluation: $ref: '#/components/schemas/EvaluationSettings-Output' description: Settings for evaluation widget: $ref: '#/components/schemas/WidgetConfig-Output' description: Configuration for the widget data_collection: additionalProperties: $ref: '#/components/schemas/AnalysisProperty' type: object title: Data Collection description: Data collection settings data_collection_scopes: additionalProperties: $ref: '#/components/schemas/AnalysisScope' type: object title: Data Collection Scopes description: Scope per data collection item ID. Missing keys default to conversation scope. analysis_items: anyOf: - $ref: '#/components/schemas/AgentAnalysisItems-Output' - type: 'null' description: Evaluation + data-collection items attached by reference. None means the agent has not been migrated onto analysis items yet (distinct from an empty, migrated set); reads fall back to the legacy evaluation/data_collection fields in that case. overrides: $ref: '#/components/schemas/ConversationInitiationClientDataConfig-Output' description: Additional overrides for the agent during conversation initiation workspace_overrides: $ref: '#/components/schemas/AgentWorkspaceOverrides-Output' description: Workspace overrides for the agent testing: $ref: '#/components/schemas/AgentTestingSettings' description: Testing configuration for the agent archived: type: boolean title: Archived description: Whether the agent is archived default: false guardrails: title: Guardrails description: Guardrails configuration for the agent discriminator: propertyName: version mapping: '1': '#/components/schemas/GuardrailsV1-Output' $ref: '#/components/schemas/GuardrailsV1-Output' summary_language: anyOf: - type: string - type: 'null' title: Summary Language description: Language for all conversation analysis outputs (summaries, titles, evaluation rationales, data collection rationales). If not set, the language will be inferred from the conversation. Must be one of the supported conversation languages. auto_translate_transcript_to_app_language: anyOf: - type: boolean - type: 'null' title: Auto Translate Transcript To App Language description: When enabled, a conversation transcript is automatically translated to the viewer's application language when they open the transcript page. If not set or false, transcripts are shown in their original language unless the viewer manually selects a translation. auth: $ref: '#/components/schemas/AuthSettings' description: Settings for authentication call_limits: $ref: '#/components/schemas/AgentCallLimits' description: Call limits for the agent queueing_config: $ref: '#/components/schemas/AgentQueueingConfig' description: Concurrency wait-queue config for the agent privacy: $ref: '#/components/schemas/PrivacyConfig-Output' description: Privacy settings for the agent trust_context: $ref: '#/components/schemas/AgentTrustContext' description: The trust context in which the agent operates. default: unknown analysis_llm: $ref: '#/components/schemas/LLM' description: Default LLM model for post-call analysis (evaluation and data collection) default: gemini-2.5-flash topic_discovery: $ref: '#/components/schemas/TopicDiscoverySettings' description: Per-agent topic discovery configuration sentiment_analysis: $ref: '#/components/schemas/SentimentAnalysisSettings' description: Per-agent post-call sentiment analysis configuration alerting: anyOf: - $ref: '#/components/schemas/AlertingSettingsResponse' - type: 'null' description: Agent-level alerting configuration overriding workspace settings. safety: $ref: '#/components/schemas/SafetyResponseModel' type: object title: AgentPlatformSettingsResponseModel AnalysisType: type: string enum: - evaluation_criteria - data_collection title: AnalysisType Body_Bulk_delete_knowledge_base_documents_v1_convai_knowledge_base_bulk_delete_post: properties: document_ids: items: type: string type: array maxItems: 20 minItems: 1 uniqueItems: true title: Document Ids description: The ids of documents or folders from the knowledge base. examples: - - 21m00Tcm4TlvDq8ikWAM - 31m00Tcm4TlvDq8ikWBM force: type: boolean title: Force description: If set to true, documents or folders will be deleted regardless of whether they are used by any agents and will be removed from the dependent agents. For non-empty folders, this will also delete all child documents and folders. default: false type: object required: - document_ids title: Body_Bulk_delete_knowledge_base_documents_v1_convai_knowledge_base_bulk_delete_post Body_Create_Agent_v1_convai_agents_create_post: properties: conversation_config: $ref: '#/components/schemas/ConversationalConfigAPIModel-Input' description: Conversation configuration for an agent platform_settings: anyOf: - $ref: '#/components/schemas/AgentPlatformSettingsRequestModel' - type: 'null' description: Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. workflow: $ref: '#/components/schemas/AgentWorkflowRequestModel' description: Workflow for the agent. This is used to define the flow of the conversation and how the agent interacts with tools. name: anyOf: - type: string - type: 'null' title: Name description: A name to make the agent easier to find examples: - My agent optional: true tags: anyOf: - items: type: string type: array - type: 'null' title: Tags description: Tags to help classify and filter the agent examples: - - Customer Support - Technical Help - Eleven optional: true type: object required: - conversation_config title: Body_Create_Agent_v1_convai_agents_create_post TransferToAgentToolConfig-Input: properties: system_tool_type: type: string const: transfer_to_agent title: System Tool Type default: transfer_to_agent transfers: items: $ref: '#/components/schemas/AgentTransfer-Input' type: array title: Transfers type: object required: - transfers title: TransferToAgentToolConfig WidgetEndFeedbackType: type: string enum: - rating title: WidgetEndFeedbackType default: rating UpdateLocationParams: properties: smb_tool_type: type: string const: update_location title: Smb Tool Type default: update_location type: object title: UpdateLocationParams AgentKnowledgeBaseRagQueryResponseModel: properties: retrieval_query: type: string title: Retrieval Query description: Raw query used for retrieval (echoes the request query). chunks: items: $ref: '#/components/schemas/AgentKnowledgeBaseRagChunkResponseModel' type: array title: Chunks description: Ranked chunks the agent would retrieve, after distance and length filtering. type: object required: - retrieval_query - chunks title: AgentKnowledgeBaseRagQueryResponseModel example: chunks: - chunk_id: chunk_498cjVigY5qzO86Huf0OWal content_format: html document_id: doc_J3Pbu5gP6NNKBscdCdwB document_name: Account FAQ document_type: url source_url: https://example.com/account-faq?utm_medium=agents_citation&utm_source=elevenlabs text: To reset your password, open Settings and choose Security... vector_distance: 0.21 retrieval_query: How do I reset my password? ASTBooleanNode-Output: properties: type: type: string const: boolean_literal title: Type default: boolean_literal value: type: boolean title: Value description: Value of this literal. type: object required: - type - value title: ASTBooleanNode UpdateWhatsAppAccountRequest: properties: assigned_agent_id: anyOf: - type: string - type: 'null' title: Assigned Agent Id enable_messaging: anyOf: - type: boolean - type: 'null' title: Enable Messaging enable_audio_message_response: anyOf: - type: boolean - type: 'null' title: Enable Audio Message Response enable_typing_indicator: anyOf: - type: boolean - type: 'null' title: Enable Typing Indicator type: object title: UpdateWhatsAppAccountRequest EvaluationSuccessResult: type: string enum: - success - failure - unknown title: EvaluationSuccessResult TwilioRegionId: type: string enum: - us1 - ie1 - au1 title: TwilioRegionId description: Valid Twilio region IDs. ConversationHistoryTranscriptSystemToolResultCommonModel-Output: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: type: string const: system title: Type result: anyOf: - oneOf: - $ref: '#/components/schemas/EndCallToolResultModel' - $ref: '#/components/schemas/LanguageDetectionToolResultModel' - $ref: '#/components/schemas/TransferToAgentToolResultSuccessModel-Output' - $ref: '#/components/schemas/TransferToAgentToolResultErrorModel' - $ref: '#/components/schemas/TransferToNumberResultTwilioSuccessModel' - $ref: '#/components/schemas/TransferToNumberResultSipSuccessModel' - $ref: '#/components/schemas/TransferToNumberResultExotelSuccessModel' - $ref: '#/components/schemas/TransferToNumberResultErrorModel' - $ref: '#/components/schemas/SkipTurnToolResponseModel' - $ref: '#/components/schemas/PlayDTMFResultSuccessModel' - $ref: '#/components/schemas/PlayDTMFResultErrorModel' - $ref: '#/components/schemas/VoiceMailDetectionResultSuccessModel' - $ref: '#/components/schemas/TestToolResultModel' - $ref: '#/components/schemas/KnowledgeBaseRagToolResultModel' - $ref: '#/components/schemas/KnowledgeBaseToolResultModel' - $ref: '#/components/schemas/StartProcedureToolResultSuccessModel' - $ref: '#/components/schemas/StartProcedureToolResultErrorModel' - $ref: '#/components/schemas/EndProcedureToolResultSuccessModel' - $ref: '#/components/schemas/EndProcedureToolResultErrorModel' - $ref: '#/components/schemas/DummyToolResultModel' discriminator: propertyName: result_type mapping: dummy: '#/components/schemas/DummyToolResultModel' end_call_success: '#/components/schemas/EndCallToolResultModel' end_procedure_error: '#/components/schemas/EndProcedureToolResultErrorModel' end_procedure_success: '#/components/schemas/EndProcedureToolResultSuccessModel' knowledge_base_rag_success: '#/components/schemas/KnowledgeBaseRagToolResultModel' knowledge_base_success: '#/components/schemas/KnowledgeBaseToolResultModel' language_detection_success: '#/components/schemas/LanguageDetectionToolResultModel' play_dtmf_error: '#/components/schemas/PlayDTMFResultErrorModel' play_dtmf_success: '#/components/schemas/PlayDTMFResultSuccessModel' skip_turn_success: '#/components/schemas/SkipTurnToolResponseModel' start_procedure_error: '#/components/schemas/StartProcedureToolResultErrorModel' start_procedure_success: '#/components/schemas/StartProcedureToolResultSuccessModel' testing_tool_result: '#/components/schemas/TestToolResultModel' transfer_to_agent_error: '#/components/schemas/TransferToAgentToolResultErrorModel' transfer_to_agent_success: '#/components/schemas/TransferToAgentToolResultSuccessModel-Output' transfer_to_number_error: '#/components/schemas/TransferToNumberResultErrorModel' transfer_to_number_exotel_success: '#/components/schemas/TransferToNumberResultExotelSuccessModel' transfer_to_number_sip_success: '#/components/schemas/TransferToNumberResultSipSuccessModel' transfer_to_number_twilio_success: '#/components/schemas/TransferToNumberResultTwilioSuccessModel' voicemail_detection_success: '#/components/schemas/VoiceMailDetectionResultSuccessModel' - type: 'null' title: Result type: object required: - request_id - tool_name - result_value - is_error - tool_has_been_called - type title: ConversationHistoryTranscriptSystemToolResultCommonModel LLMSchemaOverride: properties: source: type: string const: llm title: Source default: llm prompt: anyOf: - type: string - type: 'null' title: Prompt description: Prompt override for the LLM. If not provided, the original schema description is used. type: object title: LLMSchemaOverride ConversationHistoryMultivoiceMessageModel: properties: parts: items: $ref: '#/components/schemas/ConversationHistoryMultivoiceMessagePartModel' type: array title: Parts type: object required: - parts title: ConversationHistoryMultivoiceMessageModel description: Represents a message from a multi-voice agent. EnvironmentVariableSecretValue: properties: secret_id: type: string title: Secret Id type: object required: - secret_id title: EnvironmentVariableSecretValue RetryTriggerAction: properties: type: type: string const: retry title: Type default: retry feedback: type: string title: Feedback description: Custom feedback to inject into the agent when retrying after guardrail trigger. default: 'Your response was blocked by a guardrail that blocks content that matches this condition/category: ''{{trigger_reason}}'' During your next turn you must tell the user "I''m sorry but I can''t answer that question, would you like to know something else?".' type: object title: RetryTriggerAction AlertingSlackNotifier: properties: type: type: string const: integration title: Type default: integration integration_type: type: string const: slack title: Integration Type default: slack connection_id: type: string minLength: 1 title: Connection Id description: ID of the workspace integration connection to deliver alert lifecycle notifications to. The connection's integration must have the monitoring capability and match ``integration_type``. channel_id: type: string maxLength: 64 minLength: 1 title: Channel Id description: ID of the Slack channel to post alert notifications to, e.g. ``C0123456789``. The Slack app must be a member of the channel and have the ``chat:write`` scope, or ``chat:write.public`` for public channels it has not joined. additionalProperties: false type: object required: - connection_id - channel_id title: AlertingSlackNotifier SIPMediaEncryptionEnum: type: string enum: - disabled - allowed - required title: SIPMediaEncryptionEnum default: allowed ContentGuardrail-Input: properties: execution_mode: $ref: '#/components/schemas/GuardrailExecutionMode' default: streaming config: $ref: '#/components/schemas/ContentConfig' trigger_action: oneOf: - $ref: '#/components/schemas/EndCallTriggerAction' - $ref: '#/components/schemas/RetryTriggerAction' title: Trigger Action discriminator: propertyName: type mapping: end_call: '#/components/schemas/EndCallTriggerAction' retry: '#/components/schemas/RetryTriggerAction' type: object title: ContentGuardrail RegionConfigRequest: properties: region_id: $ref: '#/components/schemas/TwilioRegionId' description: Region ID token: type: string title: Token description: Auth Token for this region edge_location: $ref: '#/components/schemas/TwilioEdgeLocation' description: Edge location for this region type: object required: - region_id - token - edge_location title: RegionConfigRequest EnvironmentVariableSecretValueRequest: properties: secret_id: type: string title: Secret Id type: object required: - secret_id title: EnvironmentVariableSecretValueRequest ListCustomerFacingAgentsParams: properties: smb_tool_type: type: string const: list_customer_facing_agents title: Smb Tool Type default: list_customer_facing_agents type: object title: ListCustomerFacingAgentsParams description: 'List every customer-facing agent on the workspace. The assistant uses this whenever it needs to act on a specific customer-facing agent (rules, config edits, etc.) so it can pick the right ``agent_id`` to pass to mutating tools. Mirrors the ``list_services`` / ``list_clients`` pattern: read once, then mutate by id.' GetAgentTopicsResponseModel: properties: topics: items: $ref: '#/components/schemas/AgentTopicResponseModel' type: array title: Topics window_start_unix_secs: type: integer title: Window Start Unix Secs window_end_unix_secs: type: integer title: Window End Unix Secs aggregated_run_count: type: integer title: Aggregated Run Count description: Number of daily topic-discovery runs the returned metrics were summed over. default: 0 has_more: type: boolean title: Has More default: false next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor type: object required: - topics - window_start_unix_secs - window_end_unix_secs title: GetAgentTopicsResponseModel GetKnowledgeBaseSummaryURLResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentSummaryResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. dependent_agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Dependent Agents description: This field is deprecated and will be removed in the future, use the separate endpoint to get dependent agents instead. deprecated: true type: type: string const: url title: Type url: type: string title: Url auto_sync_info: anyOf: - $ref: '#/components/schemas/AutoSyncInfo' - type: 'null' type: object required: - id - name - metadata - supported_usages - access_info - dependent_agents - type - url title: GetKnowledgeBaseSummaryURLResponseModel DeleteServiceParams: properties: smb_tool_type: type: string const: delete_service title: Smb Tool Type default: delete_service type: object title: DeleteServiceParams description: Delete an existing service from the system. AlertingIntegrationNotifierResponse: oneOf: - $ref: '#/components/schemas/AlertingPagerDutyNotifierResponse' - $ref: '#/components/schemas/AlertingSlackNotifierResponse' discriminator: propertyName: integration_type mapping: pagerduty: '#/components/schemas/AlertingPagerDutyNotifierResponse' slack: '#/components/schemas/AlertingSlackNotifierResponse' URLAvatar: properties: type: type: string const: url title: Type description: The type of the avatar default: url custom_url: type: string title: Custom Url description: The custom URL of the avatar default: '' type: object title: URLAvatar Icon: properties: src: type: string title: Src mimeType: anyOf: - type: string - type: 'null' title: Mimetype sizes: anyOf: - items: type: string type: array - type: 'null' title: Sizes theme: anyOf: - type: string enum: - light - dark - type: 'null' title: Theme type: object required: - src title: Icon description: An optionally-sized icon for display in a user interface (2025-11-25+). ExactParameterEvaluationStrategy: properties: type: type: string const: exact title: Type expected_value: type: string title: Expected Value description: The exact string value that the parameter must match. type: object required: - type - expected_value title: ExactParameterEvaluationStrategy ResponseFilter: properties: mode: $ref: '#/components/schemas/ResponseFilterMode' description: Controls how tool responses are filtered. 'all' returns entire response, 'allow' returns only specified paths, 'hide_all' hides the entire response. default: all filters: items: type: string type: array title: Filters description: Dot notation paths to include when mode is 'allow' (e.g., ['ticket.id', 'ticket.status']). content_type: type: string const: application/json title: Content Type description: Content type for response filtering. Only 'application/json' responses are filtered. default: application/json type: object title: ResponseFilter description: Configuration for filtering tool responses before they are visible to the agent. AnalysisScope: type: string enum: - conversation - agent title: AnalysisScope default: conversation ClientToolConfig-Output: properties: type: type: string const: client title: Type description: The type of tool default: client name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 120.0 minimum: 1.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. Must be between 1 and 120 seconds (inclusive). default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto parameters: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Output' description: JSON schema for the parameters the LLM provides. - type: 'null' description: Schema for any parameters to pass to the client expects_response: type: boolean title: Expects Response description: If true, calling this tool should block the conversation until the client responds with some response which is passed to the llm. If false then we will continue the conversation without waiting for the client to respond, this is useful to show content to a user but not block the conversation default: false dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate type: object required: - name - description title: ClientToolConfig description: A client tool is one that sends an event to the user's client to trigger something client side example: expects_response: false type: client PlayDTMFResultErrorModel: properties: result_type: type: string const: play_dtmf_error title: Result Type default: play_dtmf_error status: type: string const: error title: Status default: error error: type: string title: Error details: anyOf: - type: string - type: 'null' title: Details type: object required: - error title: PlayDTMFResultErrorModel UpdateCustomerFacingConfigParams: properties: smb_tool_type: type: string const: update_customer_facing_config title: Smb Tool Type default: update_customer_facing_config type: object title: UpdateCustomerFacingConfigParams WorkflowToolEdgeStepModel: properties: step_latency_secs: type: number title: Step Latency Secs type: type: string const: edge title: Type default: edge edge_id: type: string title: Edge Id target_node_id: type: string title: Target Node Id type: object required: - step_latency_secs - edge_id - target_node_id title: WorkflowToolEdgeStepModel Body_Register_a_Twilio_call_and_return_TwiML_v1_convai_twilio_register_call_post: properties: agent_id: type: string title: Agent Id from_number: type: string title: From Number to_number: type: string title: To Number direction: $ref: '#/components/schemas/TelephonyDirection' default: inbound conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' type: object required: - agent_id - from_number - to_number title: Body_Register_a_Twilio_call_and_return_TwiML_v1_convai_twilio_register_call_post ASTEqualsOperatorNode-Input: properties: type: type: string const: eq_operator title: Type default: eq_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTEqualsOperatorNode ListWhatsAppAccountsResponse: properties: items: items: $ref: '#/components/schemas/GetWhatsAppAccountResponse' type: array title: Items type: object required: - items title: ListWhatsAppAccountsResponse Body_Handle_an_outbound_call_via_SIP_trunk_v1_convai_sip_trunk_outbound_call_post: properties: agent_id: type: string title: Agent Id agent_phone_number_id: type: string title: Agent Phone Number Id to_number: type: string title: To Number conversation_initiation_client_data: anyOf: - $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Input' - type: 'null' telephony_call_config: $ref: '#/components/schemas/TelephonyCallConfig-Input' default: ringing_timeout_secs: 60 twilio_call_recording_enabled: false type: object required: - agent_id - agent_phone_number_id - to_number title: Body_Handle_an_outbound_call_via_SIP_trunk_v1_convai_sip_trunk_outbound_call_post ConversationHistoryElevenAssistantCommonModel: properties: is_eleven_assistant: type: boolean title: Is Eleven Assistant default: false type: object title: ConversationHistoryElevenAssistantCommonModel AgentTrustContext: type: string enum: - unknown - low - high title: AgentTrustContext description: "The trust context in which the agent operates.\n\nUNKNOWN: not yet classified (existing agents created before this feature).\nLOW: serves untrusted external participants (e.g. customer support, sales) —\n outputs should be vetted and tool access scoped.\nHIGH: serves the owner (e.g. personal assistant) — full tool access is appropriate." default: unknown ConversationChargingCommonModel: properties: dev_discount: type: boolean title: Dev Discount default: false is_burst: type: boolean title: Is Burst default: false tier: anyOf: - type: string - type: 'null' title: Tier llm_usage: $ref: '#/components/schemas/LLMCategoryUsage' llm_price: anyOf: - type: number - type: 'null' title: Llm Price llm_charge: anyOf: - type: integer - type: 'null' title: Llm Charge call_charge: anyOf: - type: integer - type: 'null' title: Call Charge platform_charge: anyOf: - type: integer - type: 'null' title: Platform Charge platform_usage: $ref: '#/components/schemas/PlatformUsage' platform_price: anyOf: - type: number - type: 'null' title: Platform Price free_minutes_consumed: type: number title: Free Minutes Consumed default: 0.0 free_llm_dollars_consumed: type: number title: Free Llm Dollars Consumed default: 0.0 tts_usage: anyOf: - $ref: '#/components/schemas/ConversationTTSUsageModel' - type: 'null' asr_usage: anyOf: - $ref: '#/components/schemas/ConversationASRUsageModel' - type: 'null' analysis: anyOf: - $ref: '#/components/schemas/AnalysisCharging' - type: 'null' type: object title: ConversationChargingCommonModel TokenResponseModel: properties: token: type: string title: Token conversation_id: type: string title: Conversation Id type: object required: - token - conversation_id title: TokenResponseModel TelephonyProvider: type: string enum: - twilio - sip_trunk - exotel title: TelephonyProvider ModerationConfig: properties: sexual: $ref: '#/components/schemas/ThresholdGuardrail' violence: $ref: '#/components/schemas/ThresholdGuardrail' violence_graphic: $ref: '#/components/schemas/ThresholdGuardrail' harassment: $ref: '#/components/schemas/ThresholdGuardrail' harassment_threatening: $ref: '#/components/schemas/ThresholdGuardrail' hate: $ref: '#/components/schemas/ThresholdGuardrail' hate_threatening: $ref: '#/components/schemas/ThresholdGuardrail' self_harm_instructions: $ref: '#/components/schemas/ThresholdGuardrail' self_harm: $ref: '#/components/schemas/ThresholdGuardrail' self_harm_intent: $ref: '#/components/schemas/ThresholdGuardrail' sexual_minors: $ref: '#/components/schemas/ThresholdGuardrail' type: object title: ModerationConfig UsersSortBy: type: string enum: - last_contact_unix_secs - conversation_count - average_sentiment_score title: UsersSortBy MCPToolConfigOverride-Input: properties: tool_name: type: string title: Tool Name description: The name of the MCP tool force_pre_tool_speech: anyOf: - type: boolean - type: 'null' title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If set, overrides the server''s force_pre_tool_speech setting for this tool.' deprecated: true pre_tool_speech: anyOf: - $ref: '#/components/schemas/PreToolSpeechMode' - type: 'null' description: If set, overrides the server's pre_tool_speech setting for this tool. disable_interruptions: anyOf: - type: boolean - type: 'null' title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If set, overrides the server''s disable_interruptions setting for this tool.' deprecated: true interruption_mode: anyOf: - $ref: '#/components/schemas/ToolInterruptionMode' - type: 'null' description: If set, overrides the server's interruption_mode setting for this tool. tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: string const: 'off' - type: 'null' title: Tool Call Sound description: Overrides the server's tool_call_sound setting for this tool. A sound name plays that sound; 'off' overrides to no sound (silence); null means do not override (inherit the server default). tool_call_sound_behavior: anyOf: - $ref: '#/components/schemas/ToolCallSoundBehavior' - type: 'null' description: If set, overrides the server's tool_call_sound_behavior setting for this tool execution_mode: anyOf: - $ref: '#/components/schemas/ToolExecutionMode' - type: 'null' description: If set, overrides the server's execution_mode setting for this tool response_timeout_secs: anyOf: - type: integer maximum: 300.0 minimum: 5.0 - type: 'null' title: Response Timeout Secs description: If set, overrides the server's response timeout for this MCP tool (seconds). assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Dynamic variable assignments for this MCP tool input_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Input Overrides description: Mapping of json path to input override configuration response_mocks: anyOf: - items: $ref: '#/components/schemas/ToolResponseMockConfig-Input' type: array - type: 'null' title: Response Mocks description: Mock responses with optional parameter conditions. Evaluated top-to-bottom; first match wins. type: object required: - tool_name title: MCPToolConfigOverride FileRefreshStatus: properties: status: $ref: '#/components/schemas/CrawlStatus' default: queued enqueued_at: anyOf: - type: integer - type: 'null' title: Enqueued At started_at: anyOf: - type: integer - type: 'null' title: Started At completed_at: anyOf: - type: integer - type: 'null' title: Completed At last_synced_at: anyOf: - type: integer - type: 'null' title: Last Synced At error_message: anyOf: - type: string - type: 'null' title: Error Message type: object title: FileRefreshStatus description: In-flight/last refresh state for an externally-synced KB file. ExotelApiSubdomain: type: string enum: - api.in.exotel.com - api.exotel.com title: ExotelApiSubdomain AuthorizationMethod: type: string enum: - invalid - public - authorization_header - signed_url - shareable_link - livekit_token - livekit_token_website - genesys_api_key - avaya_api_key - audiocodes_api_key - whatsapp - sms title: AuthorizationMethod default: public BatchCallDetailedResponse: properties: id: type: string title: Id phone_number_id: anyOf: - type: string - type: 'null' title: Phone Number Id phone_provider: anyOf: - $ref: '#/components/schemas/TelephonyProvider' - type: 'null' whatsapp_params: anyOf: - $ref: '#/components/schemas/BatchCallWhatsAppParams' - type: 'null' name: type: string title: Name agent_id: type: string title: Agent Id branch_id: anyOf: - type: string - type: 'null' title: Branch Id environment: anyOf: - type: string - type: 'null' title: Environment created_at_unix: type: integer title: Created At Unix scheduled_time_unix: type: integer title: Scheduled Time Unix timezone: anyOf: - type: string - type: 'null' title: Timezone total_calls_dispatched: type: integer title: Total Calls Dispatched default: 0 total_calls_scheduled: type: integer title: Total Calls Scheduled default: 0 total_calls_finished: type: integer title: Total Calls Finished default: 0 last_updated_at_unix: type: integer title: Last Updated At Unix status: $ref: '#/components/schemas/BatchCallStatus' retry_count: type: integer title: Retry Count default: 0 telephony_call_config: $ref: '#/components/schemas/TelephonyCallConfig-Output' target_concurrency_limit: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Target Concurrency Limit description: Maximum number of simultaneous calls for this batch. When set, dispatch is governed by this limit rather than workspace/agent capacity percentages. agent_name: type: string title: Agent Name branch_name: anyOf: - type: string - type: 'null' title: Branch Name recipients: items: $ref: '#/components/schemas/OutboundCallRecipientResponseModel' type: array title: Recipients type: object required: - id - phone_number_id - phone_provider - whatsapp_params - name - agent_id - branch_id - environment - created_at_unix - scheduled_time_unix - timezone - total_calls_dispatched - total_calls_scheduled - total_calls_finished - last_updated_at_unix - status - retry_count - telephony_call_config - target_concurrency_limit - agent_name - branch_name - recipients title: BatchCallDetailedResponse description: Detailed response model for a batch call including all recipients. Body_Create_agent_test_folder_v1_convai_agent_testing_folders_post: properties: name: type: string title: Name description: The name of the folder to create parent_folder_id: anyOf: - type: string - type: 'null' title: Parent Folder Id description: The ID of the parent folder. If not provided, the folder will be created at the root level. type: object required: - name title: Body_Create_agent_test_folder_v1_convai_agent_testing_folders_post EnvironmentVariableResponse: properties: label: type: string title: Label created_at_unix_secs: type: integer title: Created At Unix Secs updated_at_unix_secs: type: integer title: Updated At Unix Secs created_by_user_id: anyOf: - type: string - type: 'null' title: Created By User Id type: type: string enum: - string - secret - auth_connection title: Type id: type: string title: Id workspace_id: type: string title: Workspace Id values: anyOf: - additionalProperties: type: string type: object - additionalProperties: $ref: '#/components/schemas/EnvironmentVariableSecretValue' type: object - additionalProperties: $ref: '#/components/schemas/EnvironmentVariableAuthConnectionValue' type: object title: Values type: object required: - label - created_at_unix_secs - updated_at_unix_secs - type - id - workspace_id - values title: EnvironmentVariableResponse LLMParameterEvaluationStrategy: properties: type: type: string const: llm title: Type description: type: string title: Description description: A description of the evaluation strategy to use for the test. type: object required: - type - description title: LLMParameterEvaluationStrategy MatchAnythingParameterEvaluationStrategy: properties: type: type: string const: anything title: Type type: object required: - type title: MatchAnythingParameterEvaluationStrategy CriteriaScoringMode: type: string enum: - binary - numeric_uniform title: CriteriaScoringMode default: binary EnvironmentVariableAuthConnectionValueRequest: properties: auth_connection_id: type: string title: Auth Connection Id type: object required: - auth_connection_id title: EnvironmentVariableAuthConnectionValueRequest Body_Create_agent_draft_v1_convai_agents__agent_id__drafts_post: properties: conversation_config: additionalProperties: true type: object title: Conversation Config description: Conversation config for the draft platform_settings: additionalProperties: true type: object title: Platform Settings description: Platform settings for the draft workflow: $ref: '#/components/schemas/AgentWorkflowRequestModel' description: Workflow for the draft name: type: string title: Name description: Name for the draft tags: anyOf: - items: type: string type: array - type: 'null' title: Tags description: Tags to help classify and filter the agent examples: - - Customer Support - Technical Help - Eleven optional: true type: object required: - conversation_config - platform_settings - workflow - name title: Body_Create_agent_draft_v1_convai_agents__agent_id__drafts_post ArrayJsonSchemaProperty-Input: properties: property_kind: type: string enum: - array - object title: Property Kind default: array description: type: string title: Description default: '' dynamic_variable: type: string title: Dynamic Variable description: When set, the entire parameter is populated from this dynamic variable at runtime. Mutually exclusive with description (LLM-provided value), constant_value, and is_omitted. default: '' constant_value: anyOf: - items: {} type: array - type: 'null' title: Constant Value description: When set, the entire array uses this constant value at runtime. Mutually exclusive with description (LLM-provided array), dynamic_variable, and is_omitted. is_omitted: type: boolean title: Is Omitted description: If true, this parameter will be completely omitted from the request. Only valid for optional parameters. Mutually exclusive with description, dynamic_variable, and constant_value. default: false type: type: string const: array title: Type default: array items: oneOf: - $ref: '#/components/schemas/LiteralJsonSchemaProperty' - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Input' - $ref: '#/components/schemas/ArrayJsonSchemaProperty-Input' title: Items description: Schema for array elements. default: type: string description: Array element is_system_provided: false dynamic_variable: '' allowed_values_dynamic_variable: '' constant_value: '' is_omitted: false additionalProperties: false type: object title: ArrayJsonSchemaProperty ConversationHistoryTranscriptFileInputResponseModel: properties: file_id: type: string title: File Id original_filename: type: string title: Original Filename mime_type: type: string title: Mime Type file_url: type: string title: File Url type: object required: - file_id - original_filename - mime_type - file_url title: ConversationHistoryTranscriptFileInputResponseModel PromptAgentAPIModelOverride-Input: properties: prompt: anyOf: - type: string - type: 'null' title: Prompt description: The prompt for the agent x-convai-client-override: true llm: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: The LLM to query with the prompt and the chat history. If using data residency, the LLM must be supported in the data residency environment x-convai-client-override: true tool_ids: anyOf: - items: type: string type: array - type: 'null' title: Tool Ids description: A list of IDs of tools used by the agent x-convai-client-override: true native_mcp_server_ids: anyOf: - items: type: string type: array - type: 'null' title: Native Mcp Server Ids description: A list of Native MCP server ids to be used by the agent x-convai-client-override: true knowledge_base: anyOf: - items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array - type: 'null' title: Knowledge Base description: A list of knowledge bases to be used by the agent x-convai-client-override: true type: object title: PromptAgentAPIModelOverride example: knowledge_base: [] llm: gemini-2.0-flash-001 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. tool_ids: [] SkipTurnToolConfig: properties: system_tool_type: type: string const: skip_turn title: System Tool Type default: skip_turn type: object title: SkipTurnToolConfig description: 'Allows the agent to explicitly skip its turn. This tool should be invoked by the LLM when the user indicates they would like to think or take a short pause before continuing the conversation—e.g. when they say: "Give me a second", "Let me think", or "One moment please". After calling this tool, the assistant should not speak until the user speaks again, or another normal turn-taking condition is met. The tool itself has no parameters and performs no side-effects other than informing the backend that the current turn generation is complete.' GetAnalyticsSummaryParams: properties: smb_tool_type: type: string const: get_analytics_summary title: Smb Tool Type default: get_analytics_summary type: object title: GetAnalyticsSummaryParams description: Get a summary of key business analytics for a time period. EndProcedureToolErrorStatus: type: string enum: - not_found - invalid_id AnalysisRunSnapshot: properties: price: type: number title: Price default: 0.0 charge: type: integer title: Charge default: 0 price_per_feature: additionalProperties: type: number propertyNames: $ref: '#/components/schemas/AnalysisType' type: object title: Price Per Feature charge_per_feature: additionalProperties: type: integer propertyNames: $ref: '#/components/schemas/AnalysisType' type: object title: Charge Per Feature type: object title: AnalysisRunSnapshot description: LLM cost of the most recent post-call analysis pass on this conversation. ASTOrOperatorNode-Output: properties: type: type: string const: or_operator title: Type default: or_operator children: items: $ref: '#/components/schemas/ASTNode-Output' type: array minItems: 2 title: Children description: Child nodes of the logical operator. type: object required: - type - children title: ASTOrOperatorNode RAGIndexStatus: type: string enum: - new - created - processing - failed - succeeded - rag_limit_exceeded - document_too_small - cannot_index_folder title: RAGIndexStatus CreateServiceParams: properties: smb_tool_type: type: string const: create_service title: Smb Tool Type default: create_service type: object title: CreateServiceParams description: Create a new service (classic, rental, or group) in the system. CustomGuardrail-Input: properties: config: $ref: '#/components/schemas/CustomGuardrailsConfig-Input' type: object title: CustomGuardrail description: Container for custom guardrails, matching ModerationGuardrail pattern ExternalFileSyncInfo: properties: type: $ref: '#/components/schemas/ExternalSyncProvider' description: Provider identifier source_entity_id: type: string title: Source Entity Id description: Entity ID in the external system integration_connection_id: type: string title: Integration Connection Id description: Integration connection instance ID source_parent_entity_id: type: string title: Source Parent Entity Id description: Folder ID in the external system this file was synced from source_mime_type: type: string title: Source Mime Type description: Original MIME type in the external system source_modified_time: type: string format: date-time title: Source Modified Time description: Last modified time from the external system root_folder_id: anyOf: - type: string - type: 'null' title: Root Folder Id description: KB folder ID of the sync root, used to query all entities under a sync tree type: object required: - type - source_entity_id - integration_connection_id - source_parent_entity_id - source_mime_type - source_modified_time title: ExternalFileSyncInfo description: Tracks the link back to the original file in an external source. ConversationHistoryAnalysisCommonModel: properties: evaluation_criteria_results: additionalProperties: $ref: '#/components/schemas/ConversationHistoryEvaluationCriteriaResultCommonModel' type: object title: Evaluation Criteria Results data_collection_results: additionalProperties: $ref: '#/components/schemas/DataCollectionResultCommonModel' type: object title: Data Collection Results evaluation_criteria_results_list: items: $ref: '#/components/schemas/ConversationHistoryEvaluationCriteriaResultCommonModel' type: array title: Evaluation Criteria Results List data_collection_results_list: items: $ref: '#/components/schemas/DataCollectionResultCommonModel' type: array title: Data Collection Results List call_successful: $ref: '#/components/schemas/EvaluationSuccessResult' call_success_score: anyOf: - type: number - type: 'null' title: Call Success Score transcript_summary: type: string title: Transcript Summary call_summary_title: anyOf: - type: string - type: 'null' title: Call Summary Title scoped: items: $ref: '#/components/schemas/ScopedAnalysisResult' type: array title: Scoped type: object required: - call_successful - transcript_summary title: ConversationHistoryAnalysisCommonModel OrbAvatar: properties: type: type: string const: orb title: Type description: The type of the avatar default: orb color_1: type: string title: Color 1 description: The first color of the avatar default: '#2792dc' color_2: type: string title: Color 2 description: The second color of the avatar default: '#9ce6e6' type: object title: OrbAvatar example: color_1: '#2792dc' color_2: '#9ce6e6' type: orb KnowledgeBaseContentSearchResult: properties: document: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseSummaryURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryFolderResponseModel' title: Document discriminator: propertyName: type mapping: file: '#/components/schemas/GetKnowledgeBaseSummaryFileResponseModel' folder: '#/components/schemas/GetKnowledgeBaseSummaryFolderResponseModel' text: '#/components/schemas/GetKnowledgeBaseSummaryTextResponseModel' url: '#/components/schemas/GetKnowledgeBaseSummaryURLResponseModel' search_snippet: anyOf: - items: $ref: '#/components/schemas/SearchHighlightSegment' type: array - type: 'null' title: Search Snippet score: type: number title: Score type: object required: - document - score title: KnowledgeBaseContentSearchResult AgentVersionMetadata: properties: id: type: string title: Id agent_id: type: string title: Agent Id branch_id: type: string title: Branch Id version_description: type: string title: Version Description seq_no_in_branch: type: integer title: Seq No In Branch time_committed_secs: type: integer title: Time Committed Secs parents: $ref: '#/components/schemas/AgentVersionParents' access_info: anyOf: - $ref: '#/components/schemas/ResourceAccessInfo' - type: 'null' type: object required: - id - agent_id - branch_id - version_description - seq_no_in_branch - time_committed_secs - parents title: AgentVersionMetadata WorkflowToolLocator: properties: tool_id: type: string title: Tool Id schema_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Schema Overrides description: Per-node parameter overrides applied on top of the tool's own configuration. Keys are dotted parameter paths (webhook tools prefix keys with path_params./query_params./request_body.). These take precedence over any overrides already defined on the tool itself. type: object required: - tool_id title: WorkflowToolLocator ScheduleGroupSessionParams: properties: smb_tool_type: type: string const: schedule_group_session title: Smb Tool Type default: schedule_group_session type: object title: ScheduleGroupSessionParams description: 'Schedule a single instance of a group service. The session''s duration is derived from the parent service so the assistant only has to pin start time, the (optional) instructor / room, and the location. Participants register separately via ``register_for_group_session``.' CustomGuardrailsConfig-Input: properties: configs: items: $ref: '#/components/schemas/CustomGuardrailConfig' type: array title: Configs type: object title: CustomGuardrailsConfig description: Config container for custom guardrails list ConversationHistoryTranscriptToolCallWebhookDetails: properties: type: type: string const: webhook title: Type default: webhook method: type: string title: Method url: type: string title: Url headers: additionalProperties: type: string type: object title: Headers path_params: additionalProperties: type: string type: object title: Path Params query_params: additionalProperties: type: string type: object title: Query Params body: anyOf: - type: string - type: 'null' title: Body type: object required: - method - url title: ConversationHistoryTranscriptToolCallWebhookDetails TelephonyDirection: type: string enum: - inbound - outbound title: TelephonyDirection default: inbound ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Output: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: type: string const: api_integration_webhook title: Type integration_id: type: string title: Integration Id default: '' credential_id: type: string title: Credential Id default: '' integration_connection_id: type: string title: Integration Connection Id default: '' type: object required: - request_id - tool_name - result_value - is_error - is_blocked - tool_has_been_called - tool_latency_secs - error_type - raw_error_message - dynamic_variable_updates - type - integration_id - credential_id - integration_connection_id title: ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type type: object required: - loc - msg - type title: ValidationError LLM: type: string enum: - gpt-4o-mini - gpt-4o - gpt-4 - gpt-4-turbo - gpt-4.1 - gpt-4.1-mini - gpt-4.1-nano - gpt-5 - gpt-5.1 - gpt-5.2 - gpt-5.2-chat-latest - gpt-5.4 - gpt-5.4-mini - gpt-5.4-nano - gpt-5.5 - gpt-5.6-sol - gpt-5.6-terra - gpt-5.6-luna - gpt-6-astra - gpt-5-mini - gpt-5-nano - gpt-3.5-turbo - gemini-1.5-pro - gemini-1.5-flash - gemini-2.0-flash - gemini-2.0-flash-lite - gemini-2.5-flash-lite - gemini-2.5-flash - gemini-3-pro-preview - gemini-3-flash-preview - gemini-3.1-pro-preview - gemini-3.1-flash-lite-preview - gemini-3.1-flash-lite - gemini-3.5-flash - gemini-3.5-flash-lite - gemini-3.6-flash - gemini-3.7-flash - gemini-3.8-flash - claude-sonnet-4-5 - claude-opus-4-7 - claude-opus-4-8 - claude-sonnet-4-6 - claude-sonnet-5 - claude-sonnet-4 - claude-haiku-4-5 - claude-3-7-sonnet - claude-3-5-sonnet - claude-3-5-sonnet-v1 - claude-3-haiku - grok-beta - custom-llm - qwen3-4b - qwen3-30b-a3b - qwen36-35b-a3b - qwen35-397b-a17b - gpt-oss-20b - gpt-oss-120b - glm-45-air-fp8 - gemini-2.5-flash-preview-09-2025 - gemini-2.5-flash-lite-preview-09-2025 - gemini-2.5-flash-preview-05-20 - gemini-2.5-flash-preview-04-17 - gemini-2.5-flash-lite-preview-06-17 - gemini-2.0-flash-lite-001 - gemini-2.0-flash-001 - gemini-1.5-flash-002 - gemini-1.5-flash-001 - gemini-1.5-pro-002 - gemini-1.5-pro-001 - claude-sonnet-4@20250514 - claude-sonnet-4-5@20250929 - claude-haiku-4-5@20251001 - claude-3-7-sonnet@20250219 - claude-3-5-sonnet@20240620 - claude-3-5-sonnet-v2@20241022 - claude-3-haiku@20240307 - gpt-5-2025-08-07 - gpt-5.1-2025-11-13 - gpt-5.2-2025-12-11 - gpt-5.4-2026-03-05 - gpt-5.4-mini-2026-03-17 - gpt-5.4-nano-2026-03-17 - gpt-5.5-2026-04-23 - gpt-5-mini-2025-08-07 - gpt-5-nano-2025-08-07 - gpt-4.1-2025-04-14 - gpt-4.1-mini-2025-04-14 - gpt-4.1-nano-2025-04-14 - gpt-4o-mini-2024-07-18 - gpt-4o-2024-11-20 - gpt-4o-2024-08-06 - gpt-4o-2024-05-13 - gpt-4-0613 - gpt-4-0314 - gpt-4-turbo-2024-04-09 - gpt-3.5-turbo-0125 - gpt-3.5-turbo-1106 - watt-tool-8b - watt-tool-70b title: LLM TTSConversationalModel: type: string enum: - eleven_turbo_v2 - eleven_turbo_v2_5 - eleven_flash_v2 - eleven_flash_v2_5 - eleven_multilingual_v2 - eleven_v3_conversational title: TTSConversationalModel x-fern-enum: eleven_turbo_v2: description: 'Deprecated: Use eleven_flash_v2 instead.' deprecated: true eleven_turbo_v2_5: description: 'Deprecated: Use eleven_flash_v2_5 instead.' deprecated: true default: eleven_flash_v2 LLMUsageCalculatorPublicRequestModel: properties: prompt_length: type: integer title: Prompt Length description: Length of the prompt in characters. number_of_pages: type: integer title: Number Of Pages description: Pages of content in PDF documents or URLs in the agent's knowledge base. rag_enabled: type: boolean title: Rag Enabled description: Whether RAG is enabled. type: object required: - prompt_length - number_of_pages - rag_enabled title: LLMUsageCalculatorPublicRequestModel TriggerUserVerificationParams: properties: smb_tool_type: type: string const: trigger_user_verification title: Smb Tool Type default: trigger_user_verification type: object title: TriggerUserVerificationParams AssignConversationTagsRequestModel: properties: tag_ids: items: type: string type: array maxItems: 50 minItems: 1 title: Tag Ids description: Tag IDs to add to the conversation. Re-assigning an existing tag is a no-op. type: object required: - tag_ids title: AssignConversationTagsRequestModel LLMUsageCalculatorRequestModel: properties: prompt_length: anyOf: - type: integer - type: 'null' title: Prompt Length description: Length of the prompt in characters. number_of_pages: anyOf: - type: integer - type: 'null' title: Number Of Pages description: Pages of content in pdf documents OR urls in agent's Knowledge Base. rag_enabled: anyOf: - type: boolean - type: 'null' title: Rag Enabled description: Whether RAG is enabled. type: object title: LLMUsageCalculatorRequestModel ConversationalConfigAPIModel-Input: properties: asr: $ref: '#/components/schemas/ASRConversationalConfig' description: Configuration for conversational transcription turn: $ref: '#/components/schemas/TurnConfig' description: Configuration for turn detection tts: $ref: '#/components/schemas/TTSConversationalConfig-Input' description: Configuration for conversational text to speech conversation: $ref: '#/components/schemas/ConversationConfig-Input' description: Configuration for conversational events language_presets: additionalProperties: $ref: '#/components/schemas/LanguagePreset-Input' type: object title: Language Presets description: Language presets for conversations vad: $ref: '#/components/schemas/VADConfig' description: Configuration for voice activity detection agent: $ref: '#/components/schemas/AgentConfigAPIModel-Input' description: Agent specific configuration type: object title: ConversationalConfigAPIModel ToolResponseMockConfig-Input: properties: parameter_conditions: items: $ref: '#/components/schemas/UnitTestToolCallParameter' type: array title: Parameter Conditions description: If the list is empty, the mock will always activate. mock_result: type: string title: Mock Result description: The return value the LLM sees when this mock is active. is_error: type: boolean title: Is Error description: If true, the mock result is surfaced to the LLM as a tool error rather than a successful result. default: false type: object required: - mock_result title: ToolResponseMockConfig AllowlistItem: properties: hostname: type: string title: Hostname description: The hostname of the allowed origin type: object required: - hostname title: AllowlistItem ProcedureType: type: string enum: - free_form - deterministic - folder title: ProcedureType default: free_form MCPServerConfigUpdateRequestModel: properties: approval_policy: anyOf: - $ref: '#/components/schemas/MCPApprovalPolicy' - type: 'null' description: The approval mode to set for the MCP server force_pre_tool_speech: anyOf: - type: boolean - type: 'null' title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If set, overrides the server''s force_pre_tool_speech setting for this tool.' deprecated: true pre_tool_speech: anyOf: - $ref: '#/components/schemas/PreToolSpeechMode' - type: 'null' description: If set, overrides the server's pre_tool_speech setting for this tool. disable_interruptions: anyOf: - type: boolean - type: 'null' title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If set, overrides the server''s disable_interruptions setting for this tool.' deprecated: true interruption_mode: anyOf: - $ref: '#/components/schemas/ToolInterruptionMode' - type: 'null' description: If set, overrides the server's interruption_mode setting for this tool. tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution for all tools from this MCP server tool_call_sound_behavior: anyOf: - $ref: '#/components/schemas/ToolCallSoundBehavior' - type: 'null' description: Determines when the tool call sound should play for all tools from this MCP server execution_mode: anyOf: - $ref: '#/components/schemas/ToolExecutionMode' - type: 'null' description: If set, overrides the server's execution_mode setting for this tool response_timeout_secs: anyOf: - type: integer maximum: 300.0 minimum: 5.0 - type: 'null' title: Response Timeout Secs description: The maximum time in seconds to wait for each MCP tool call to complete. request_headers: anyOf: - additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object - type: 'null' title: Request Headers description: The headers to include in requests to the MCP server request_meta: anyOf: - additionalProperties: anyOf: - type: string - type: integer - type: number - type: boolean - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object - type: 'null' title: Request Meta description: Entries sent in the MCP `_meta` field of tools/call requests. Values may be JSON scalars, or references to a workspace secret, dynamic variable, or environment variable resolved per call. disable_compression: anyOf: - type: boolean - type: 'null' title: Disable Compression description: Whether to disable HTTP compression for this MCP server secret_token: anyOf: - $ref: '#/components/schemas/ConvAISecretLocator' - type: 'null' description: Optional secret token for authentication with this MCP server auth_connection: anyOf: - $ref: '#/components/schemas/AuthConnectionLocator' - $ref: '#/components/schemas/EnvironmentAuthConnectionLocator' - type: 'null' title: Auth Connection description: Optional auth connection to use for authentication with this MCP server type: object title: MCPServerConfigUpdateRequestModel description: Unified request model for updating MCP Server configuration. BackgroundSoundPresetId: type: string enum: - office2 - office1 - restaurant - city - typing - elevator1 - elevator2 - elevator3 - elevator4 title: BackgroundSoundPresetId description: Predefined background sound preset identifiers. PrivacyConfig-Output: properties: record_voice: type: boolean title: Record Voice description: Whether to record the conversation default: true retention_days: type: integer title: Retention Days description: The number of days to retain the conversation. -1 indicates there is no retention limit default: -1 delete_transcript_and_pii: type: boolean title: Delete Transcript And Pii description: Whether to delete the transcript and PII default: false delete_audio: type: boolean title: Delete Audio description: Whether to delete the audio default: false apply_to_existing_conversations: type: boolean title: Apply To Existing Conversations description: Whether to apply the privacy settings to existing conversations default: false zero_retention_mode: type: boolean title: Zero Retention Mode description: Whether to enable zero retention mode - no PII data is stored default: false conversation_history_redaction: $ref: '#/components/schemas/ConversationHistoryRedactionConfig' description: Config for PII redaction in the conversation history type: object title: PrivacyConfig example: apply_to_existing_conversations: false delete_audio: false delete_transcript_and_pii: false record_voice: true retention_days: -1 zero_retention_mode: false ConversationInitiationClientDataInternal: properties: conversation_config_override: $ref: '#/components/schemas/ConversationConfigClientOverride-Output' custom_llm_extra_body: additionalProperties: true type: object title: Custom Llm Extra Body user_id: anyOf: - type: string - type: 'null' title: User Id description: ID of the end user participating in this conversation (for agent owner's user identification) source_info: $ref: '#/components/schemas/ConversationInitiationSourceInfo' branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: ID of the agent branch to use for this conversation environment: anyOf: - type: string - type: 'null' title: Environment description: Environment to use for resolving environment variables starting_workflow_node_id: anyOf: - type: string - type: 'null' title: Starting Workflow Node Id description: If set, start the workflow at this node id instead of the default entry procedure_ids: anyOf: - items: type: string type: array - type: 'null' title: Procedure Ids description: If set, only these procedures are available to the starting agent. Each ID must be attached to that agent; unknown IDs fail conversation start. An empty list disables all of that agent's procedures. Not applied after an agent transfer. Requires enable_procedure_ids_from_client. dynamic_variables: additionalProperties: $ref: '#/components/schemas/DynamicVariableInternalValueType' type: object title: Dynamic Variables tool_mock_config: $ref: '#/components/schemas/OrchestratorToolMockBehaviorConfig' description: Configuration for which tools to mock and fallback behavior tool_mock_overrides: additionalProperties: items: $ref: '#/components/schemas/ToolResponseMockConfig-Output' type: array type: object title: Tool Mock Overrides description: Per-tool response mock overrides keyed by resolved tool name, applied ahead of the tool's shared mocks. Used for test-specific mocks. type: object title: ConversationInitiationClientDataInternal ASTBooleanNode-Input: properties: type: type: string const: boolean_literal title: Type default: boolean_literal value: type: boolean title: Value description: Value of this literal. type: object required: - value title: ASTBooleanNode GetConvAIDashboardSettingsResponseModel: properties: charts: items: oneOf: - $ref: '#/components/schemas/DashboardCallSuccessChartModel' - $ref: '#/components/schemas/DashboardCriteriaChartModel' - $ref: '#/components/schemas/DashboardDataCollectionChartModel' discriminator: propertyName: type mapping: call_success: '#/components/schemas/DashboardCallSuccessChartModel' criteria: '#/components/schemas/DashboardCriteriaChartModel' data_collection: '#/components/schemas/DashboardDataCollectionChartModel' type: array maxItems: 4 title: Charts type: object title: GetConvAIDashboardSettingsResponseModel TopicMetricsAggregate: properties: conversation_count: type: integer title: Conversation Count default: 0 sentiment: anyOf: - $ref: '#/components/schemas/TopicSentimentAggregate' - type: 'null' evaluation_criteria: items: $ref: '#/components/schemas/TopicEvaluationCriteriaAggregate' type: array title: Evaluation Criteria type: object title: TopicMetricsAggregate TransferBranchInfoTrafficSplit: properties: branch_reason: type: string const: traffic_split title: Branch Reason branch_id: type: string title: Branch Id traffic_percentage: type: number title: Traffic Percentage type: object required: - branch_reason - branch_id - traffic_percentage title: TransferBranchInfoTrafficSplit ListResponseMeta: properties: total: anyOf: - type: integer - type: 'null' title: Total page: anyOf: - type: integer - type: 'null' title: Page page_size: anyOf: - type: integer - type: 'null' title: Page Size type: object title: ListResponseMeta BackupLLMDefault: properties: preference: type: string const: default title: Preference default: default type: object title: BackupLLMDefault ConversationalConfigAPIModelWorkflowOverride-Output: properties: asr: anyOf: - $ref: '#/components/schemas/ASRConversationalConfigWorkflowOverride' - type: 'null' description: Configuration for conversational transcription turn: anyOf: - $ref: '#/components/schemas/TurnConfigWorkflowOverride' - type: 'null' description: Configuration for turn detection tts: anyOf: - $ref: '#/components/schemas/TTSConversationalConfigWorkflowOverride-Output' - type: 'null' description: Configuration for conversational text to speech conversation: anyOf: - $ref: '#/components/schemas/ConversationConfigWorkflowOverride-Output' - type: 'null' description: Configuration for conversational events language_presets: anyOf: - additionalProperties: $ref: '#/components/schemas/LanguagePreset-Output' type: object - type: 'null' title: Language Presets description: Language presets for conversations vad: anyOf: - $ref: '#/components/schemas/VADConfigWorkflowOverride' - type: 'null' description: Configuration for voice activity detection agent: anyOf: - $ref: '#/components/schemas/AgentConfigAPIModelWorkflowOverride-Output' - type: 'null' description: Agent specific configuration type: object title: ConversationalConfigAPIModelWorkflowOverride example: agent: disable_first_message_interruptions: false dynamic_variables: dynamic_variable_placeholders: user_name: John Doe first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 max_tokens: -1 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. temperature: 0.0 tool_ids: [] tools: [] asr: keywords: - hello - world provider: scribe_realtime quality: high user_input_audio_format: pcm_16000 conversation: client_events: - audio - interruption max_duration_seconds: 600 tts: agent_output_audio_format: pcm_16000 model_id: eleven_turbo_v2 optimize_streaming_latency: 3 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal turn: interruption_ignore_term_languages: [] interruption_ignore_terms: [] merge_with_default_ignore_terms: false mode: turn retranscribe_on_turn_timeout: false silence_end_call_timeout: -1.0 soft_timeout_config: message: Hhmmmm...yeah. timeout_seconds: -1.0 use_llm_generated_message: false speculative_turn: false spelling_patience: auto transcribe_on_disabled_interruptions: false turn_eagerness: normal turn_model: turn_v3 turn_timeout: 7.0 vad: background_voice_detection: false ASTDivisionOperatorNode-Output: properties: type: type: string const: div_operator title: Type default: div_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTDivisionOperatorNode PostAgentHoldAudioResponseModel: properties: agent_id: type: string title: Agent Id hold_audio: $ref: '#/components/schemas/AgentHoldAudioConfig' type: object required: - agent_id - hold_audio title: PostAgentHoldAudioResponseModel ValidateUserVerificationCodeParams: properties: smb_tool_type: type: string const: validate_user_verification_code title: Smb Tool Type default: validate_user_verification_code type: object title: ValidateUserVerificationCodeParams AttachedSystemDataCollectionRef: properties: source: type: string const: system title: Source analysis_item_id: type: string const: __system_data_collection_topic title: Analysis Item Id description: Id of the referenced built-in system data-collection item. scope: $ref: '#/components/schemas/AnalysisScope' description: Transcript context ('conversation' or 'agent') used when running this item. default: conversation type: object required: - source - analysis_item_id title: AttachedSystemDataCollectionRef ConversationConfigOverride: properties: text_only: anyOf: - type: boolean - type: 'null' title: Text Only description: If enabled audio will not be processed and only text will be used, use to avoid audio pricing. x-convai-client-override: true max_duration_seconds: anyOf: - type: integer - type: 'null' title: Max Duration Seconds description: The maximum duration of a conversation in seconds x-convai-client-override: true type: object title: ConversationConfigOverride example: max_duration_seconds: 600 AgentAnalysisItems-Input: properties: evaluation_criteria: items: oneOf: - $ref: '#/components/schemas/AttachedUserEvaluationRef' - $ref: '#/components/schemas/AttachedSystemEvaluationRef' discriminator: propertyName: source mapping: system: '#/components/schemas/AttachedSystemEvaluationRef' user: '#/components/schemas/AttachedUserEvaluationRef' type: array title: Evaluation Criteria data_collection: items: oneOf: - $ref: '#/components/schemas/AttachedUserDataCollectionRef' - $ref: '#/components/schemas/AttachedSystemDataCollectionRef' discriminator: propertyName: source mapping: system: '#/components/schemas/AttachedSystemDataCollectionRef' user: '#/components/schemas/AttachedUserDataCollectionRef' type: array title: Data Collection type: object title: AgentAnalysisItems ConversationHistoryTranscriptToolCallClientDetails: properties: type: type: string const: client title: Type default: client parameters: type: string title: Parameters type: object required: - parameters title: ConversationHistoryTranscriptToolCallClientDetails Body_Update_agent_test_folder_v1_convai_agent_testing_folders__folder_id__patch: properties: name: type: string title: Name description: The new name for the folder type: object required: - name title: Body_Update_agent_test_folder_v1_convai_agent_testing_folders__folder_id__patch ProcedureVersionRef: properties: procedure_id: type: string title: Procedure Id description: Procedure ID version_id: type: string title: Version Id description: Version ID of the procedure version. type: object required: - procedure_id - version_id title: ProcedureVersionRef StartProcedureToolResultSuccessModel: properties: result_type: type: string const: start_procedure_success title: Result Type default: start_procedure_success status: type: string const: success title: Status default: success procedure_id: type: string title: Procedure Id procedure_name: type: string title: Procedure Name procedure_entry_workflow_node: anyOf: - type: string - type: 'null' title: Procedure Entry Workflow Node procedure_return_workflow_node: anyOf: - type: string - type: 'null' title: Procedure Return Workflow Node message: type: string title: Message default: Procedure is now started. Follow its instructions from the section of your system prompt. type: object required: - procedure_id - procedure_name title: StartProcedureToolResultSuccessModel MockingStrategy: type: string enum: - all - selected - none title: MockingStrategy default: none TopicDiscoverySettings: properties: {} type: object title: TopicDiscoverySettings description: 'Per-agent topic-discovery configuration. Cadence and analysis window are managed internally; this only exposes the customer-facing on/off toggle.' ContentThresholdGuardrail: properties: is_enabled: type: boolean title: Is Enabled default: false threshold: anyOf: - type: number - type: string enum: - low - medium - high title: Threshold default: 0.3 type: object title: ContentThresholdGuardrail CreateAgentRuleParams: properties: smb_tool_type: type: string const: create_agent_rule title: Smb Tool Type default: create_agent_rule type: object title: CreateAgentRuleParams RAGDocumentIndexResponseModel: properties: id: type: string title: Id model: $ref: '#/components/schemas/EmbeddingModelEnum' status: $ref: '#/components/schemas/RAGIndexStatus' progress_percentage: type: number title: Progress Percentage document_model_index_usage: $ref: '#/components/schemas/RAGDocumentIndexUsage' type: object required: - id - model - status - progress_percentage - document_model_index_usage title: RAGDocumentIndexResponseModel WorkflowLLMConditionModel-Input: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: llm title: Type default: llm condition: type: string title: Condition description: Condition to evaluate examples: - User's last message contains a question about our pricing. - User provided their email address. type: object required: - condition title: WorkflowLLMConditionModel WidgetEndFeedbackConfig: properties: type: $ref: '#/components/schemas/WidgetEndFeedbackType' description: The type of feedback to collect at the end of the conversation default: rating type: object title: WidgetEndFeedbackConfig AgentDeploymentPercentageStrategy: properties: type: type: string const: percentage title: Type default: percentage traffic_percentage: type: number maximum: 100.0 minimum: 0.0 title: Traffic Percentage description: Traffic percentage to deploy examples: - 0.5 type: object required: - traffic_percentage title: AgentDeploymentPercentageStrategy CreateProductQuoteRequestParams: properties: smb_tool_type: type: string const: create_product_quote_request title: Smb Tool Type default: create_product_quote_request type: object title: CreateProductQuoteRequestParams SubmitBusinessInfoParams: properties: smb_tool_type: type: string const: submit_business_info title: Smb Tool Type default: submit_business_info type: object title: SubmitBusinessInfoParams description: 'Finalize the onboarding interview: create a text knowledge source and mark done.' CreateClientInteractionParams: properties: smb_tool_type: type: string const: create_client_interaction title: Smb Tool Type default: create_client_interaction type: object title: CreateClientInteractionParams DynamicVariablesConfigWorkflowOverride: properties: dynamic_variable_placeholders: anyOf: - additionalProperties: true type: object - type: 'null' title: Dynamic Variable Placeholders description: A dictionary of dynamic variable placeholders and their values type: object title: DynamicVariablesConfigWorkflowOverride example: dynamic_variable_placeholders: user_name: John Doe LLMUsage-Input: properties: model_usage: additionalProperties: $ref: '#/components/schemas/LLMInputOutputTokensUsage' propertyNames: $ref: '#/components/schemas/LLM' type: object title: Model Usage type: object title: LLMUsage BatchCallResponse: properties: id: type: string title: Id phone_number_id: anyOf: - type: string - type: 'null' title: Phone Number Id phone_provider: anyOf: - $ref: '#/components/schemas/TelephonyProvider' - type: 'null' whatsapp_params: anyOf: - $ref: '#/components/schemas/BatchCallWhatsAppParams' - type: 'null' name: type: string title: Name agent_id: type: string title: Agent Id branch_id: anyOf: - type: string - type: 'null' title: Branch Id environment: anyOf: - type: string - type: 'null' title: Environment created_at_unix: type: integer title: Created At Unix scheduled_time_unix: type: integer title: Scheduled Time Unix timezone: anyOf: - type: string - type: 'null' title: Timezone total_calls_dispatched: type: integer title: Total Calls Dispatched default: 0 total_calls_scheduled: type: integer title: Total Calls Scheduled default: 0 total_calls_finished: type: integer title: Total Calls Finished default: 0 last_updated_at_unix: type: integer title: Last Updated At Unix status: $ref: '#/components/schemas/BatchCallStatus' retry_count: type: integer title: Retry Count default: 0 telephony_call_config: $ref: '#/components/schemas/TelephonyCallConfig-Output' target_concurrency_limit: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Target Concurrency Limit description: Maximum number of simultaneous calls for this batch. When set, dispatch is governed by this limit rather than workspace/agent capacity percentages. agent_name: type: string title: Agent Name branch_name: anyOf: - type: string - type: 'null' title: Branch Name type: object required: - id - phone_number_id - phone_provider - whatsapp_params - name - agent_id - branch_id - environment - created_at_unix - scheduled_time_unix - timezone - total_calls_dispatched - total_calls_scheduled - total_calls_finished - last_updated_at_unix - status - retry_count - telephony_call_config - target_concurrency_limit - agent_name - branch_name title: BatchCallResponse TransferToAgentToolResultSuccessModel-Output: properties: result_type: type: string const: transfer_to_agent_success title: Result Type default: transfer_to_agent_success status: type: string const: success title: Status default: success from_agent: type: string title: From Agent to_agent: type: string title: To Agent to_node: anyOf: - type: string - type: 'null' title: To Node condition: type: string title: Condition delay_ms: type: integer title: Delay Ms default: 0 transfer_message: anyOf: - type: string - type: 'null' title: Transfer Message enable_transferred_agent_first_message: type: boolean title: Enable Transferred Agent First Message default: false branch_info: anyOf: - oneOf: - $ref: '#/components/schemas/TransferBranchInfoTrafficSplit' - $ref: '#/components/schemas/TransferBranchInfoDefaultingToMain' discriminator: propertyName: branch_reason mapping: defaulting_to_main: '#/components/schemas/TransferBranchInfoDefaultingToMain' traffic_split: '#/components/schemas/TransferBranchInfoTrafficSplit' - type: 'null' title: Branch Info preserve_client_tts_overrides: type: boolean title: Preserve Client Tts Overrides default: false type: object required: - from_agent - to_agent - condition title: TransferToAgentToolResultSuccessModel EnvironmentVariablesListResponse: properties: environment_variables: items: $ref: '#/components/schemas/EnvironmentVariableResponse' type: array title: Environment Variables next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor has_more: type: boolean title: Has More type: object required: - environment_variables - has_more title: EnvironmentVariablesListResponse AnalysisProperty: properties: type: type: string enum: - boolean - string - integer - number title: Type description: type: string title: Description description: The description of the property. When set, the LLM will provide the value based on this description. Mutually exclusive with dynamic_variable, is_system_provided, constant_value, and is_omitted. default: '' enum: anyOf: - items: type: string type: array - type: 'null' title: Enum description: List of allowed string values for string type parameters is_system_provided: type: boolean title: Is System Provided description: If true, the value will be populated by the system at runtime. Used by API Integration Webhook tools for templating. Mutually exclusive with description, dynamic_variable, constant_value, and is_omitted. default: false dynamic_variable: type: string title: Dynamic Variable description: The name of the dynamic variable to use for this property's value. Mutually exclusive with description, is_system_provided, constant_value, and is_omitted. default: '' allowed_values: anyOf: - $ref: '#/components/schemas/AllowedValues' - type: 'null' description: 'Server-side rejection guard for an LLM-provided value: the runtime rejects any value outside the permitted set this object names, and the set is not advertised to the LLM as an enum. Only supported when the value source is `description`; combining it with dynamic_variable, is_system_provided, constant_value, or is_omitted is rejected.' allowed_values_dynamic_variable: type: string title: Allowed Values Dynamic Variable description: 'DEPRECATED: use `allowed_values` instead. When set, the LLM provides the value but the runtime rejects any value not present in the list held by this dynamic variable (must be a JSON array such as ["ws_alpha", "ws_beta"]). Use to let the LLM pick from a server-verified set (e.g. the IDs the current user is allowed to access). Requires description; mutually exclusive with dynamic_variable, is_system_provided, constant_value, and is_omitted.' default: '' deprecated: true constant_value: anyOf: - type: string - type: integer - type: number - type: boolean - type: 'null' title: Constant Value description: A constant value to use for this property. Mutually exclusive with description, dynamic_variable, is_system_provided, and is_omitted. default: '' is_omitted: type: boolean title: Is Omitted description: If true, this parameter will be completely omitted from the request. Only valid for optional parameters. Mutually exclusive with description, dynamic_variable, is_system_provided, and constant_value. default: false name: anyOf: - type: string - type: 'null' title: Name description: The name of this data collection item. llm: anyOf: - $ref: '#/components/schemas/LLM' - type: 'null' description: LLM model to use for this analysis item. If not set, uses agent's analysis_llm default. type: object required: - type title: AnalysisProperty description: 'Data collection property with optional per-item LLM override for post-call analysis. TODO: migrate to composition (value_schema: LiteralJsonSchemaProperty + llm) instead of inheritance, so this generalizes cleanly to object/array schemas in the future.' example: constant_value: '' description: My property dynamic_variable: '' is_system_provided: false type: string SendCustomEmailParams: properties: smb_tool_type: type: string const: send_custom_email title: Smb Tool Type default: send_custom_email type: object title: SendCustomEmailParams WorkflowToolNodeModel-Input: properties: type: type: string const: tool title: Type default: tool position: $ref: '#/components/schemas/Position-Input' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. tools: items: $ref: '#/components/schemas/WorkflowToolLocator' type: array title: Tools description: List of tools to execute in parallel. The entire node is considered successful if all tools are executed successfully. type: object title: WorkflowToolNodeModel ReportKnowledgeGapParams: properties: smb_tool_type: type: string const: report_knowledge_gap title: Smb Tool Type default: report_knowledge_gap type: object title: ReportKnowledgeGapParams LivekitStackType: type: string enum: - standard - static title: LivekitStackType default: standard ConversationHistoryTranscriptToolCallMCPDetails: properties: type: type: string const: mcp title: Type default: mcp mcp_server_id: type: string title: Mcp Server Id mcp_server_name: type: string title: Mcp Server Name integration_type: type: string title: Integration Type parameters: additionalProperties: type: string type: object title: Parameters approval_policy: type: string title: Approval Policy requires_approval: type: boolean title: Requires Approval default: false mcp_tool_name: type: string title: Mcp Tool Name default: '' mcp_tool_description: type: string title: Mcp Tool Description default: '' type: object required: - mcp_server_id - mcp_server_name - integration_type - approval_policy title: ConversationHistoryTranscriptToolCallMCPDetails WorkflowOverrideAgentNodeModel-Output: properties: type: type: string const: override_agent title: Type default: override_agent position: $ref: '#/components/schemas/Position-Output' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. conversation_config: $ref: '#/components/schemas/ConversationalConfigAPIModelWorkflowOverride-Output' description: Configuration overrides applied while the subagent is conducting the conversation. additional_prompt: type: string title: Additional Prompt description: Specific goal for this subagent. It will be added to the system prompt and can be used to further refine the agent's behavior in this specific context. additional_knowledge_base: items: $ref: '#/components/schemas/KnowledgeBaseLocator' type: array title: Additional Knowledge Base description: Additional knowledge base documents that the subagent has access to. These will be used in addition to the main agent's documents. additional_tool_ids: items: type: string type: array title: Additional Tool Ids description: IDs of additional tools that the subagent has access to. These will be used in addition to the main agent's tools. label: type: string title: Label description: Human-readable label for the node used throughout the UI. entry_behavior: $ref: '#/components/schemas/EntryBehavior' description: 'Dictates whether this node should immediately generate a response upon entry or wait for the user input. When set to "auto", the behavior will be decided based on the type of the preceding node: "wait_for_user" after the "say" and "start" nodes and "generate_immediately" otherwise.' default: auto type: object required: - type - position - edge_order - conversation_config - additional_prompt - additional_knowledge_base - additional_tool_ids - label - entry_behavior title: WorkflowOverrideAgentNodeModel WebhookToolConfig-Input: properties: type: type: string const: webhook title: Type description: The type of tool default: webhook name: type: string minLength: 0 pattern: ^[a-zA-Z0-9_-]{1,64}$ title: Name description: type: string minLength: 0 title: Description description: Description of when the tool should be used and what it does. response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for the tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 20 disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while this tool is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. default: allow force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, the agent will speak before the tool call.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. default: auto assignments: items: $ref: '#/components/schemas/DynamicVariableAssignment' type: array title: Assignments description: Configuration for extracting values from tool responses and assigning them to dynamic variables tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution. If not specified, no tool call sound will be played. x-convai-client-override: true tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call. default: auto tool_error_handling_mode: $ref: '#/components/schemas/ToolErrorHandlingMode' description: Controls how tool errors are processed before being shared with the agent. 'auto' determines handling based on tool type (summarized for native integrations, hide for others), 'summarized' sends an LLM-generated summary, 'passthrough' sends the raw error, 'hide' does not share the error with the agent. default: auto dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how the tool executes: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate api_schema: $ref: '#/components/schemas/WebhookToolApiSchemaConfig-Input' description: The schema for the outgoing webhoook, including parameters and URL specification follow_redirects: type: boolean title: Follow Redirects description: Whether to resolve a redirect from the endpoint and return the final response. One redirect is followed, as a GET without the request body; nothing configured on this tool (headers, authentication, client certificate) is sent to the redirect target. Both the endpoint and the redirect target must use HTTPS. Not supported for API integration tools. default: false follow_redirects_allowed_domains: items: type: string type: array maxItems: 20 title: Follow Redirects Allowed Domains description: Domains a redirect may point at, e.g. 'test.example.com'. Required when following redirects, and a target outside the list is refused. type: object required: - name - description - api_schema title: WebhookToolConfig description: A webhook tool is a tool that calls an external webhook from our server example: response_timeout_secs: 20 type: webhook AgentDefinitionSource: type: string enum: - cli - ui - api - template - unknown title: AgentDefinitionSource default: unknown TwilioOutboundCallResponse: properties: success: type: boolean title: Success message: type: string title: Message conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id callSid: anyOf: - type: string - type: 'null' title: Callsid type: object required: - success - message - conversation_id - callSid title: TwilioOutboundCallResponse TTSModelFamily: type: string enum: - turbo - flash - multilingual - v3_conversational title: TTSModelFamily x-fern-enum: turbo: description: 'Deprecated: Use flash instead.' deprecated: true ConvAIStoredSecretDependencies: properties: tools: items: oneOf: - $ref: '#/components/schemas/DependentAvailableToolIdentifier' - $ref: '#/components/schemas/DependentUnknownToolIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableToolIdentifier' unknown: '#/components/schemas/DependentUnknownToolIdentifier' type: array title: Tools tools_has_more: type: boolean title: Tools Has More description: Whether there are more tool dependents beyond the returned preview default: false agents: items: oneOf: - $ref: '#/components/schemas/DependentAvailableAgentIdentifier' - $ref: '#/components/schemas/DependentUnknownAgentIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableAgentIdentifier' unknown: '#/components/schemas/DependentUnknownAgentIdentifier' type: array title: Agents agents_has_more: type: boolean title: Agents Has More description: Whether there are more agent dependents beyond the returned preview default: false phone_numbers: items: $ref: '#/components/schemas/DependentPhoneNumberIdentifier' type: array title: Phone Numbers phone_numbers_has_more: type: boolean title: Phone Numbers Has More description: Whether there are more phone number dependents beyond the returned preview default: false mcp_servers: items: oneOf: - $ref: '#/components/schemas/DependentAvailableMCPServerIdentifier' - $ref: '#/components/schemas/DependentUnknownMCPServerIdentifier' discriminator: propertyName: type mapping: available: '#/components/schemas/DependentAvailableMCPServerIdentifier' unknown: '#/components/schemas/DependentUnknownMCPServerIdentifier' type: array title: Mcp Servers others: items: $ref: '#/components/schemas/SecretDependencyType' type: array title: Others type: object required: - tools - agents - others title: ConvAIStoredSecretDependencies ConversationASRUsageModel: properties: asr_model: anyOf: - type: string - type: 'null' title: Asr Model total_transcription_calls: type: integer title: Total Transcription Calls default: 0 total_audio_input_seconds: type: number title: Total Audio Input Seconds default: 0.0 type: object title: ConversationASRUsageModel description: Aggregated ASR usage for a conversation (analytics-only, not billing). TTSConversationalConfig-Input: properties: model_id: $ref: '#/components/schemas/TTSConversationalModel' description: The model to use for TTS default: eleven_flash_v2 x-convai-client-override: true voice_id: type: string minLength: 0 title: Voice Id description: The voice ID to use for TTS default: cjVigY5qzO86Huf0OWal x-convai-client-override: true x-convai-language-override: true supported_voices: items: $ref: '#/components/schemas/SupportedVoice' type: array title: Supported Voices description: Additional supported voices for the agent x-convai-client-override: true x-convai-soft-override-disallowed: true expressive_mode: type: boolean title: Expressive Mode description: When enabled, applies expressive audio tags prompt. Automatically disabled for non-v3 models. default: true suggested_audio_tags: items: $ref: '#/components/schemas/SuggestedAudioTag' type: array maxItems: 20 title: Suggested Audio Tags description: Suggested audio tags to boost expressive speech (for eleven_v3 and eleven_v3_conversational models). The agent can still use other tags not listed here. agent_output_audio_format: $ref: '#/components/schemas/TTSOutputFormat' description: The audio format to use for TTS default: pcm_16000 optimize_streaming_latency: $ref: '#/components/schemas/TTSOptimizeStreamingLatency' description: 'Deprecated: this field is a no-op and is ignored.' default: 3 deprecated: true stability: type: number maximum: 1.0 minimum: 0.0 title: Stability description: The stability of generated speech default: 0.5 x-convai-client-override: true speed: type: number maximum: 1.2 minimum: 0.7 title: Speed description: The speed of generated speech default: 1.0 x-convai-client-override: true similarity_boost: type: number maximum: 1.0 minimum: 0.0 title: Similarity Boost description: The similarity boost for generated speech default: 0.8 x-convai-client-override: true text_normalisation_type: $ref: '#/components/schemas/TextNormalisationType' description: Method for converting numbers to words before converting text to speech. If set to SYSTEM_PROMPT, the system prompt will be updated to include normalization instructions. If set to ELEVENLABS, the text will be normalized after generation, incurring slight additional latency. default: system_prompt pronunciation_dictionary_locators: items: $ref: '#/components/schemas/PydanticPronunciationDictionaryVersionLocator' type: array title: Pronunciation Dictionary Locators description: The pronunciation dictionary locators x-convai-client-override: true enable_phoneme_tags: type: boolean title: Enable Phoneme Tags description: Opt-in to SSML phoneme tag handling for V3 models. When enabled, phoneme tags (inline and from pronunciation dictionaries) are parsed into inline IPA before being sent to the model. default: true audio_effects: anyOf: - $ref: '#/components/schemas/EffectsSpec-Input' - type: 'null' description: 'Optional TTS effects spec: filter preset, distance (proximity EQ), and environment (convolution reverb).' type: object title: TTSConversationalConfig example: agent_output_audio_format: pcm_16000 model_id: eleven_turbo_v2 optimize_streaming_latency: 3 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal ListTransferRulesParams: properties: smb_tool_type: type: string const: list_transfer_rules title: Smb Tool Type default: list_transfer_rules type: object title: ListTransferRulesParams EnvironmentVariableAuthConnectionValue: properties: auth_connection_id: type: string title: Auth Connection Id type: object required: - auth_connection_id title: EnvironmentVariableAuthConnectionValue CreateProcedureRequestModel: properties: name: type: string maxLength: 200 title: Name description: Procedure name default: '' content: type: string title: Content description: Initial procedure content default: '' type: $ref: '#/components/schemas/ProcedureType' description: Procedure type default: free_form trigger: anyOf: - type: string - type: 'null' title: Trigger description: When the agent should use this procedure. Empty string means this is a sub-procedure that should only start when another procedure references it. If omitted or null, the trigger is derived from the content instead. Also accepts `description` as an alias. folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: Procedure ID of the folder to create this procedure in, or null for root. type: object title: CreateProcedureRequestModel ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Input: properties: type: type: string const: api_integration_webhook title: Type default: api_integration_webhook integration_id: type: string title: Integration Id default: '' credential_id: type: string title: Credential Id default: '' integration_connection_id: type: string title: Integration Connection Id default: '' webhook_details: $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' type: object required: - webhook_details title: ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails GetAgentLinkResponseModel: properties: agent_id: type: string title: Agent Id description: The ID of the agent token: anyOf: - $ref: '#/components/schemas/ConversationTokenResponseModel' - type: 'null' description: The token data for the agent type: object required: - agent_id title: GetAgentLinkResponseModel example: agent_id: J3Pbu5gP6NNKBscdCdwB WhatsAppOutboundMessageResponse: properties: conversation_id: type: string title: Conversation Id type: object required: - conversation_id title: WhatsAppOutboundMessageResponse AutoSyncInfo: properties: minimum_frequency_days: type: integer maximum: 180.0 minimum: 1.0 title: Minimum Frequency Days description: Minimum frequency (in days) at which the document is refreshed. The actual interval may be shorter, never longer. default: 7 auto_remove: type: boolean title: Auto Remove description: Whether to remove the document if the URL becomes unavailable default: false consec_failures: type: integer minimum: 0.0 title: Consec Failures description: Number of consecutive sync failures default: 0 next_refresh_by: anyOf: - type: integer - type: 'null' title: Next Refresh By description: Unix timestamp for the next scheduled sync or None (in case of folders) type: object title: AutoSyncInfo WorkflowFeaturesUsageCommonModel: properties: enabled: type: boolean title: Enabled default: false tool_node: $ref: '#/components/schemas/FeatureStatusCommonModel' standalone_agent_node: $ref: '#/components/schemas/FeatureStatusCommonModel' phone_number_node: $ref: '#/components/schemas/FeatureStatusCommonModel' end_node: $ref: '#/components/schemas/FeatureStatusCommonModel' type: object title: WorkflowFeaturesUsageCommonModel ConversationHistoryExotelPhoneCallModel: properties: direction: $ref: '#/components/schemas/TelephonyDirection' phone_number_id: type: string title: Phone Number Id agent_number: type: string title: Agent Number external_number: type: string title: External Number type: type: string const: exotel title: Type default: exotel stream_sid: type: string title: Stream Sid call_sid: type: string title: Call Sid type: object required: - direction - phone_number_id - agent_number - external_number - stream_sid - call_sid title: ConversationHistoryExotelPhoneCallModel KnowledgeBaseSummaryBatchSuccessfulResponseModel: properties: status: type: string const: success title: Status default: success data: oneOf: - $ref: '#/components/schemas/GetKnowledgeBaseSummaryURLResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryFileResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryTextResponseModel' - $ref: '#/components/schemas/GetKnowledgeBaseSummaryFolderResponseModel' title: Data discriminator: propertyName: type mapping: file: '#/components/schemas/GetKnowledgeBaseSummaryFileResponseModel' folder: '#/components/schemas/GetKnowledgeBaseSummaryFolderResponseModel' text: '#/components/schemas/GetKnowledgeBaseSummaryTextResponseModel' url: '#/components/schemas/GetKnowledgeBaseSummaryURLResponseModel' type: object required: - status - data title: KnowledgeBaseSummaryBatchSuccessfulResponseModel GetConversationResponseModel: properties: agent_id: type: string title: Agent Id agent_name: anyOf: - type: string - type: 'null' title: Agent Name conversation_product: type: string title: Conversation Product default: agent status: type: string enum: - initiated - in-progress - processing - done - failed title: Status user_id: anyOf: - type: string - type: 'null' title: User Id branch_id: anyOf: - type: string - type: 'null' title: Branch Id version_id: anyOf: - type: string - type: 'null' title: Version Id description: The ID of the agent version used for this conversation metadata: $ref: '#/components/schemas/ConversationHistoryMetadataCommonModel' analysis: anyOf: - $ref: '#/components/schemas/ConversationHistoryAnalysisCommonModel' - type: 'null' visited_agents: items: $ref: '#/components/schemas/VisitedAgentRef' type: array title: Visited Agents conversation_initiation_client_data: $ref: '#/components/schemas/ConversationInitiationClientDataRequest-Output' environment: type: string title: Environment default: production conversation_id: type: string title: Conversation Id has_audio: type: boolean title: Has Audio has_user_audio: type: boolean title: Has User Audio has_response_audio: type: boolean title: Has Response Audio has_auxiliary_audio: type: boolean title: Has Auxiliary Audio transcript: items: $ref: '#/components/schemas/ConversationHistoryTranscriptResponseModel' type: array title: Transcript tag_ids: items: type: string type: array title: Tag Ids description: Conversation tag ids assigned to this conversation. otlp_traces: anyOf: - additionalProperties: true type: object - type: 'null' description: OpenTelemetry trace payload when the request uses format=opentelemetry; otherwise omitted. type: object required: - agent_id - status - metadata - conversation_id - has_audio - has_user_audio - has_response_audio - has_auxiliary_audio - transcript title: GetConversationResponseModel example: agent_id: agent_3701k3ttaq12ewp8b7qv5rfyszkz agent_name: My agent conversation_id: conv_7401k5m9x2p8ec3rqv6dtnhb0fzw environment: production has_audio: true has_auxiliary_audio: true has_response_audio: true has_user_audio: true metadata: call_duration_secs: 10 start_time_unix_secs: 1714423232 status: processing tag_ids: [] transcript: - message: Hello, how are you? role: user time_in_call_secs: 10 version_id: agtvrsn_5xM3yVvZQKV0EfqQpLr2 ListGroupSessionsParams: properties: smb_tool_type: type: string const: list_group_sessions title: Smb Tool Type default: list_group_sessions type: object title: ListGroupSessionsParams description: 'List scheduled group sessions for a group service in a date range. Group services are scheduled in advance (e.g. yoga classes, workshops) and callers register against an existing session. Use this for group services; use ``check_service_availability`` for appointment / rental services.' ASTNullNode-Output: properties: type: type: string const: null_literal title: Type default: null_literal type: object required: - type title: ASTNullNode ASTStringNode-Input: properties: type: type: string const: string_literal title: Type default: string_literal value: type: string title: Value description: Value of this literal. type: object required: - value title: ASTStringNode CreateSecretEnvironmentVariableRequest: properties: type: type: string const: secret title: Type label: type: string title: Label description: Unique label for the environment variable. values: additionalProperties: $ref: '#/components/schemas/EnvironmentVariableSecretValueRequest' type: object title: Values description: Environment-specific secret references. Must include 'production' key. type: object required: - type - label - values title: CreateSecretEnvironmentVariableRequest DynamicVariablesConfig: properties: dynamic_variable_placeholders: additionalProperties: true type: object title: Dynamic Variable Placeholders description: A dictionary of dynamic variable placeholders and their values type: object title: DynamicVariablesConfig example: dynamic_variable_placeholders: user_name: John Doe ASTLLMNode-Input: oneOf: - properties: type: type: string const: llm title: Type default: llm value_schema: $ref: '#/components/schemas/LLMLiteralJsonSchemaProperty' description: JSON schema describing the value that the LLM should extract. examples: - description: User's last message contains a question about our pricing. type: boolean - description: User provided their email address. type: boolean type: object required: - value_schema title: ASTLLMNode - properties: type: type: string const: llm title: Type default: llm prompt: type: string description: The prompt to evaluate to a boolean value. Deprecated. Use a boolean schema instead. deprecated: true type: object required: - prompt title: ASTLLMNode CancelGroupSessionRegistrationParams: properties: smb_tool_type: type: string const: cancel_group_session_registration title: Smb Tool Type default: cancel_group_session_registration type: object title: CancelGroupSessionRegistrationParams description: Cancel a single client's registration for a group session. DynamicVariableSchemaOverride: properties: source: type: string const: dynamic_variable title: Source default: dynamic_variable dynamic_variable: type: string minLength: 1 title: Dynamic Variable description: The name of the dynamic variable to use type: object required: - dynamic_variable title: DynamicVariableSchemaOverride SecretDependencyResourceType: type: string enum: - tools - agents - phone_numbers title: SecretDependencyResourceType UserFeedbackScore: type: string enum: - like - dislike title: UserFeedbackScore AllowedValues: properties: dynamic_variable: type: string minLength: 1 title: Dynamic Variable description: Name of a dynamic variable that must resolve to a JSON array of permitted values, e.g. ["ws_alpha", "ws_beta"]. System variables work only if they resolve to a list. type: object required: - dynamic_variable title: AllowedValues AgentConfigAPIModel-Input: properties: first_message: type: string title: First Message description: If non-empty, the first message the agent will say. If empty, the agent waits for the user to start the discussion. default: '' x-convai-client-override: true x-convai-language-override: true language: type: string title: Language description: Language of the agent - used for ASR and TTS default: en x-convai-client-override: true hinglish_mode: type: boolean title: Hinglish Mode description: When enabled and language is Hindi, the agent will respond in Hinglish default: false dynamic_variables: $ref: '#/components/schemas/DynamicVariablesConfig' description: Configuration for dynamic variables disable_first_message_interruptions: type: boolean title: Disable First Message Interruptions description: If true, the user will not be able to interrupt the agent while the first message is being delivered. default: false max_conversation_duration_message: type: string title: Max Conversation Duration Message description: If non-empty, the message the agent will send when max conversation duration is reached. default: '' x-convai-client-override: true x-convai-language-override: true text_behavior_overrides: anyOf: - additionalProperties: $ref: '#/components/schemas/BehaviorOverride' propertyNames: $ref: '#/components/schemas/ConversationInitiationSource' type: object - type: 'null' title: Text Behavior Overrides description: Per-channel response behavior overrides for text conversations. Built-in channel defaults apply when unset. prompt: $ref: '#/components/schemas/PromptAgentAPIModel-Input' description: The prompt for the agent type: object title: AgentConfigAPIModel example: disable_first_message_interruptions: false first_message: Hello, how can I help you today? language: en UpdateBusinessInfoParams: properties: smb_tool_type: type: string const: update_business_info title: Smb Tool Type default: update_business_info type: object title: UpdateBusinessInfoParams ConversationConfigClientOverrideConfig-Input: properties: asr: $ref: '#/components/schemas/ASRConversationalConfigOverrideConfig' description: Configures overrides for nested fields. turn: $ref: '#/components/schemas/TurnConfigOverrideConfig' description: Configures overrides for nested fields. tts: $ref: '#/components/schemas/TTSConversationalConfigOverrideConfig' description: Configures overrides for nested fields. conversation: $ref: '#/components/schemas/ConversationConfigOverrideConfig' description: Configures overrides for nested fields. agent: $ref: '#/components/schemas/AgentConfigOverrideConfig' description: Configures overrides for nested fields. type: object title: ConversationConfigClientOverrideConfig ToolSortBy: type: string enum: - name - created_at title: ToolSortBy DependentAvailableAgentIdentifier: properties: referenced_resource_ids: items: type: string type: array title: Referenced Resource Ids description: If the agent is a transitive dependent, contains IDs of the resources that the agent depends on directly. id: type: string title: Id name: type: string title: Name type: type: string const: available title: Type default: available created_at_unix_secs: type: integer title: Created At Unix Secs access_level: type: string enum: - admin - editor - commenter - viewer title: Access Level type: object required: - id - name - created_at_unix_secs - access_level title: DependentAvailableAgentIdentifier ConversationTokenPurpose: type: string enum: - signed_url - shareable_link title: ConversationTokenPurpose AttachedTestModel: properties: test_id: type: string title: Test Id workflow_node_id: anyOf: - type: string - type: 'null' title: Workflow Node Id type: object required: - test_id title: AttachedTestModel AgentSummaryBatchSuccessfulResponseModel: properties: status: type: string const: success title: Status default: success data: $ref: '#/components/schemas/AgentSummaryResponseModel' type: object required: - status - data title: AgentSummaryBatchSuccessfulResponseModel TopicEvaluationCriteriaAggregate: properties: criteria_id: type: string title: Criteria Id success_count: type: integer title: Success Count default: 0 failure_count: type: integer title: Failure Count default: 0 unknown_count: type: integer title: Unknown Count default: 0 type: object required: - criteria_id title: TopicEvaluationCriteriaAggregate CustomSIPHeader: properties: type: type: string const: static title: Type default: static key: type: string maxLength: 64 minLength: 1 pattern: ^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$ title: Key description: The SIP header name (e.g., 'X-Customer-ID') value: type: string maxLength: 512 minLength: 1 pattern: ^[\x09\x20-\x7E]+$ title: Value description: The header value type: object required: - key - value title: CustomSIPHeader description: Custom SIP header for phone transfers with a static (validated) value. AlertingMonitorConfig: properties: threshold: anyOf: - type: number maximum: 1.0 minimum: 0.0 - type: 'null' title: Threshold description: Failure rate threshold at which this monitor can notify. relative_increase_threshold: anyOf: - type: number maximum: 10.0 minimum: 0.0 - type: 'null' title: Relative Increase Threshold description: Relative increase over the trailing baseline at which this monitor can notify (0.2 = 20% above baseline, 0 = any failure). min_failure_count: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Min Failure Count description: Minimum failures in the window before this monitor can fire. min_history_bucket_count: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Min History Bucket Count description: Minimum trailing buckets with traffic before spike detection can fire. min_sample_count: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Min Sample Count description: Minimum samples in the window before this monitor can fire. suspect_trigger_threshold: anyOf: - type: integer maximum: 10.0 minimum: 1.0 - type: 'null' title: Suspect Trigger Threshold description: How many suspect buckets within the lookback window are required to promote a suspect to an alert. auto_resolve_after_inactive_minutes: anyOf: - type: integer minimum: 1.0 - type: 'null' title: Auto Resolve After Inactive Minutes description: How many minutes an alert can stay inactive before it is auto-resolved. type: object title: AlertingMonitorConfig WebhookToolApiSchemaConfig-Output: properties: request_headers: additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Headers description: Headers that should be included in the request url: type: string title: Url description: The URL that the webhook will be sent to. May include path parameters, e.g. https://example.com/agents/{agent_id} method: type: string enum: - GET - POST - PUT - PATCH - DELETE title: Method description: The HTTP method to use for the webhook default: GET path_params_schema: additionalProperties: $ref: '#/components/schemas/LiteralJsonSchemaProperty' type: object title: Path Params Schema description: Schema for path parameters, if any. The keys should match the placeholders in the URL. query_params_schema: anyOf: - $ref: '#/components/schemas/QueryParamsJsonSchema-Output' - type: 'null' description: 'Schema for any query params, if any. These will be added to end of the URL as query params. Note: properties in a query param must all be literal types' request_body_schema: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Output' description: JSON schema for the parameters the LLM provides. - type: 'null' description: Schema for the body parameters, if any. Used for POST/PATCH/PUT requests. The schema should be an object which will be sent as the json body response_body_schema: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Output' - type: 'null' description: Schema describing the expected response body structure. For documentation only; not surfaced to the LLM. response_filter: anyOf: - $ref: '#/components/schemas/ResponseFilter' - type: 'null' description: Optional allow-list filter applied to the response before the LLM sees it, so large responses don't pollute the context. Defaults to the full response. content_type: type: string enum: - application/json - application/x-www-form-urlencoded title: Content Type description: Content type for the request body. Only applies to POST/PUT/PATCH requests. default: application/json auth_resolved_params: items: type: string type: array title: Auth Resolved Params description: URL placeholders resolved from the auth connection (e.g. secrets injected via UrlSecretAuthConnection) rather than from path_params_schema. auth_connection: anyOf: - $ref: '#/components/schemas/AuthConnectionLocator' - $ref: '#/components/schemas/EnvironmentAuthConnectionLocator' - type: 'null' title: Auth Connection description: Optional auth connection to use for authentication with this webhook type: object required: - url title: WebhookToolApiSchemaConfig example: method: GET path_params_schema: agent_id: type: string query_params_schema: param1: type: string request_body_schema: param1: type: string request_headers: Authorization: Bearer {api_key} url: https://example.com/agents/{agent_id} WebhookEventType: type: string enum: - transcript - audio - call_initiation_failure - answering_machine_detection - unredacted_transcript - unredacted_audio title: WebhookEventType ToolInterruptionMode: type: string enum: - allow - disable_during_tool - disable_during_tool_and_turn title: ToolInterruptionMode default: allow SMSConversationInfo: properties: direction: type: string enum: - inbound - outbound title: Direction phone_number_id: anyOf: - type: string - type: 'null' title: Phone Number Id sms_user_phone_number: type: string title: Sms User Phone Number agent_phone_number: anyOf: - type: string - type: 'null' title: Agent Phone Number type: object required: - direction - sms_user_phone_number title: SMSConversationInfo WorkflowToolNestedToolsStepModel-Output: properties: step_latency_secs: type: number title: Step Latency Secs type: type: string const: nested_tools title: Type default: nested_tools node_id: type: string title: Node Id requests: items: $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallCommonModel-Output' type: array title: Requests results: items: oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptOtherToolsResultCommonModel' - $ref: '#/components/schemas/ConversationHistoryTranscriptSystemToolResultCommonModel-Output' - $ref: '#/components/schemas/ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Output' - $ref: '#/components/schemas/ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Output' type: array title: Results is_successful: type: boolean title: Is Successful type: object required: - step_latency_secs - node_id - requests - results - is_successful title: WorkflowToolNestedToolsStepModel MCPServerConfig-Output: properties: approval_policy: $ref: '#/components/schemas/MCPApprovalPolicy' default: require_approval_all tool_approval_hashes: items: $ref: '#/components/schemas/MCPToolApprovalHash' type: array title: Tool Approval Hashes description: List of tool approval hashes for per-tool approval when approval_policy is REQUIRE_APPROVAL_PER_TOOL transport: $ref: '#/components/schemas/MCPServerTransport' description: The transport type used to connect to the MCP server default: SSE url: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' title: Url description: The URL of the MCP server, if this contains a secret please store as a workspace secret, otherwise store as a plain string. Must use https secret_token: anyOf: - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIUserSecretDBModel' - type: 'null' title: Secret Token description: The secret token (Authorization header) stored as a workspace secret or in-place secret request_headers: additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Headers description: The headers included in the request request_meta: additionalProperties: anyOf: - type: string - type: integer - type: number - type: boolean - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Meta description: Entries sent in the MCP `_meta` field of tools/call requests. Values may be JSON scalars, or references to a workspace secret, dynamic variable, or environment variable resolved per call. auth_connection: anyOf: - $ref: '#/components/schemas/AuthConnectionLocator' - $ref: '#/components/schemas/EnvironmentAuthConnectionLocator' - type: 'null' title: Auth Connection description: Optional auth connection to use for authentication with this MCP server name: type: string title: Name description: type: string title: Description default: '' force_pre_tool_speech: type: boolean title: Force Pre Tool Speech description: 'DEPRECATED: use `pre_tool_speech` instead. If true, all tools from this MCP server will require pre-tool execution speech.' default: false deprecated: true pre_tool_speech: $ref: '#/components/schemas/PreToolSpeechMode' description: Controls whether the agent speaks before this tool is called. 'auto' (default) decides based on recent tool latency, 'force' always asks the agent to speak, 'off' fully opts out regardless of latency. Applies to every tool from this MCP server unless overridden per tool. default: auto disable_interruptions: type: boolean title: Disable Interruptions description: 'DEPRECATED: use `interruption_mode` instead. If true, the user will not be able to interrupt the agent while any tool from this MCP server is running.' default: false deprecated: true interruption_mode: $ref: '#/components/schemas/ToolInterruptionMode' description: Controls whether the user can interrupt the agent around this tool call. 'allow' (default) lets the user interrupt at any time, 'disable_during_tool' suppresses interruptions only while the tool is running, 'disable_during_tool_and_turn' suppresses interruptions while the tool runs and for the agent response that follows it. Applies to every tool from this MCP server unless overridden per tool. default: allow tool_call_sound: anyOf: - $ref: '#/components/schemas/ToolCallSoundType' - type: 'null' description: Predefined tool call sound type to play during tool execution for all tools from this MCP server tool_call_sound_behavior: $ref: '#/components/schemas/ToolCallSoundBehavior' description: Determines when the tool call sound should play for all tools from this MCP server default: auto execution_mode: $ref: '#/components/schemas/ToolExecutionMode' description: 'Determines when and how all tools from this MCP server execute: ''immediate'' executes the tool right away when requested by the LLM, ''post_tool_speech'' waits for the agent to finish speaking before executing, ''async'' runs the tool in the background without blocking - best for long-running operations.' default: immediate response_timeout_secs: type: integer maximum: 300.0 minimum: 5.0 title: Response Timeout Secs description: The maximum time in seconds to wait for each MCP tool call to complete. Must be between 5 and 300 seconds (inclusive). default: 30 tool_config_overrides: items: $ref: '#/components/schemas/MCPToolConfigOverride-Output' type: array title: Tool Config Overrides description: List of per-tool configuration overrides that override the server-level defaults for specific tools disable_compression: type: boolean title: Disable Compression description: Whether to disable HTTP compression for this MCP server. Enable this if the server does not support compressed responses. default: false type: object required: - url - name title: MCPServerConfig BatchCallStatus: type: string enum: - pending - in_progress - completed - failed - cancelled title: BatchCallStatus ConversationHistoryTranscriptToolCallCommonModel-Input: properties: type: anyOf: - $ref: '#/components/schemas/ToolType' - type: 'null' request_id: type: string title: Request Id tool_name: type: string title: Tool Name params_as_json: type: string title: Params As Json tool_has_been_called: type: boolean title: Tool Has Been Called tool_details: anyOf: - oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallClientDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallMCPDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Input' discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Input' client: '#/components/schemas/ConversationHistoryTranscriptToolCallClientDetails' mcp: '#/components/schemas/ConversationHistoryTranscriptToolCallMCPDetails' webhook: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' - type: 'null' title: Tool Details type: object required: - request_id - tool_name - params_as_json - tool_has_been_called title: ConversationHistoryTranscriptToolCallCommonModel GetOrderByConfirmationNumberParams: properties: smb_tool_type: type: string const: get_order_by_confirmation_number title: Smb Tool Type default: get_order_by_confirmation_number type: object title: GetOrderByConfirmationNumberParams ExotelOutboundCallResponse: properties: success: type: boolean title: Success message: type: string title: Message conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id callSid: anyOf: - type: string - type: 'null' title: Callsid description: Exotel CallSid for the originated call type: object required: - success - message - conversation_id - callSid title: ExotelOutboundCallResponse ConversationVoiceUsageModel: properties: voice_id: type: string title: Voice Id audio_output_seconds: type: number title: Audio Output Seconds default: 0.0 type: object required: - voice_id title: ConversationVoiceUsageModel WhatsAppTemplateLocationParam: properties: type: type: string const: location title: Type default: location location: $ref: '#/components/schemas/WhatsAppTemplateLocationParamDetails' type: object required: - location title: WhatsAppTemplateLocationParam ConversationConfigClientOverride-Output: properties: asr: anyOf: - $ref: '#/components/schemas/ASRConversationalConfigOverride' - type: 'null' description: Configuration for conversational transcription turn: anyOf: - $ref: '#/components/schemas/TurnConfigOverride' - type: 'null' description: Configuration for turn detection tts: anyOf: - $ref: '#/components/schemas/TTSConversationalConfigOverride' - type: 'null' description: Configuration for conversational text to speech conversation: anyOf: - $ref: '#/components/schemas/ConversationConfigOverride' - type: 'null' description: Configuration for conversational events agent: anyOf: - $ref: '#/components/schemas/AgentConfigOverride-Output' - type: 'null' description: Agent specific configuration type: object title: ConversationConfigClientOverride example: agent: first_message: Hello, how can I help you today? language: en prompt: knowledge_base: [] llm: gemini-2.0-flash-001 prompt: You are a helpful assistant that can answer questions about the topic of the conversation. tool_ids: [] asr: keywords: - hello - world conversation: max_duration_seconds: 600 tts: model_id: eleven_turbo_v2 pronunciation_dictionary_locators: [] similarity_boost: 0.8 speed: 1.0 stability: 0.5 voice_id: cjVigY5qzO86Huf0OWal turn: soft_timeout_config: message: Hhmmmm...yeah. WorkflowLLMConditionModel-Output: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: llm title: Type default: llm condition: type: string title: Condition description: Condition to evaluate examples: - User's last message contains a question about our pricing. - User provided their email address. type: object required: - label - type - condition title: WorkflowLLMConditionModel WorkflowEdgeModel-Input: properties: source: type: string title: Source description: ID of the source node. target: type: string title: Target description: ID of the target node. forward_condition: anyOf: - oneOf: - $ref: '#/components/schemas/WorkflowUnconditionalModel-Input' description: Condition that is always true. - $ref: '#/components/schemas/WorkflowLLMConditionModel-Input' description: Condition described using human language and evaluated by an LLM. - $ref: '#/components/schemas/WorkflowResultConditionModel-Input' description: Condition based on the result of the last executed tool dispatch node. - $ref: '#/components/schemas/WorkflowExpressionConditionModel-Input' description: Condition described using a deterministic expression. discriminator: propertyName: type mapping: expression: '#/components/schemas/WorkflowExpressionConditionModel-Input' llm: '#/components/schemas/WorkflowLLMConditionModel-Input' result: '#/components/schemas/WorkflowResultConditionModel-Input' unconditional: '#/components/schemas/WorkflowUnconditionalModel-Input' - type: 'null' title: Forward Condition description: Condition that must be met for the edge to be traversed in the forward direction (source to target). backward_condition: anyOf: - oneOf: - $ref: '#/components/schemas/WorkflowUnconditionalModel-Input' description: Condition that is always true. - $ref: '#/components/schemas/WorkflowLLMConditionModel-Input' description: Condition described using human language and evaluated by an LLM. - $ref: '#/components/schemas/WorkflowResultConditionModel-Input' description: Condition based on the result of the last executed tool dispatch node. - $ref: '#/components/schemas/WorkflowExpressionConditionModel-Input' description: Condition described using a deterministic expression. discriminator: propertyName: type mapping: expression: '#/components/schemas/WorkflowExpressionConditionModel-Input' llm: '#/components/schemas/WorkflowLLMConditionModel-Input' result: '#/components/schemas/WorkflowResultConditionModel-Input' unconditional: '#/components/schemas/WorkflowUnconditionalModel-Input' - type: 'null' title: Backward Condition description: Condition that must be met for the edge to be traversed in the backward direction (target to source). type: object required: - source - target title: WorkflowEdgeModel ASTMultiplicationOperatorNode-Output: properties: type: type: string const: mul_operator title: Type default: mul_operator left: $ref: '#/components/schemas/ASTNode-Output' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Output' description: Right operand of the binary operator. type: object required: - type - left - right title: ASTMultiplicationOperatorNode WorkflowUnconditionalModel-Input: properties: label: anyOf: - type: string - type: 'null' title: Label description: Optional human-readable label for the condition used throughout the UI. type: type: string const: unconditional title: Type default: unconditional type: object title: WorkflowUnconditionalModel RegionalProcessingSurchargeInfo: properties: multiplier: type: number title: Multiplier description: The surcharge multiplier applied to this model's pricing (e.g. 1.1 for a 10% surcharge). type: object required: - multiplier title: RegionalProcessingSurchargeInfo example: multiplier: 1.1 DummyToolResultModel: properties: result_type: type: string const: dummy title: Result Type default: dummy type: object title: DummyToolResultModel ConversationSummaryMessageModel: properties: role: type: string enum: - user - agent title: Role message: type: string title: Message type: object required: - role - message title: ConversationSummaryMessageModel SentimentAggregate: properties: scored_conversation_count: type: integer title: Scored Conversation Count positive_count: type: integer title: Positive Count neutral_count: type: integer title: Neutral Count negative_count: type: integer title: Negative Count average_sentiment_score: anyOf: - type: number - type: 'null' title: Average Sentiment Score average_frustration_score: anyOf: - type: number - type: 'null' title: Average Frustration Score recent_scored_conversation_count: type: integer title: Recent Scored Conversation Count recent_positive_count: type: integer title: Recent Positive Count recent_neutral_count: type: integer title: Recent Neutral Count recent_negative_count: type: integer title: Recent Negative Count recent_average_sentiment_score: anyOf: - type: number - type: 'null' title: Recent Average Sentiment Score recent_average_frustration_score: anyOf: - type: number - type: 'null' title: Recent Average Frustration Score type: object required: - scored_conversation_count - positive_count - neutral_count - negative_count - average_sentiment_score - average_frustration_score - recent_scored_conversation_count - recent_positive_count - recent_neutral_count - recent_negative_count - recent_average_sentiment_score - recent_average_frustration_score title: SentimentAggregate ConvAIUserSecretDBModel: properties: name: type: string title: Name encrypted_value: type: string title: Encrypted Value nonce: type: string title: Nonce id: type: string title: Id type: object required: - name - encrypted_value - nonce - id title: ConvAIUserSecretDBModel description: User-specific secret model that are not shared with other users in a workspace. DeleteAgentRuleParams: properties: smb_tool_type: type: string const: delete_agent_rule title: Smb Tool Type default: delete_agent_rule type: object title: DeleteAgentRuleParams ASTConditionalOperatorNode-Input: properties: type: type: string const: conditional_operator title: Type default: conditional_operator condition: $ref: '#/components/schemas/ASTNode-Input' description: Condition deciding which expression should be selected. trueExpression: $ref: '#/components/schemas/ASTNode-Input' description: Expression selected if the condition is true. falseExpression: $ref: '#/components/schemas/ASTNode-Input' description: Expression selected if the condition is false. type: object required: - condition - trueExpression - falseExpression title: ASTConditionalOperatorNode GetKnowledgeBaseFolderResponseModel: properties: id: type: string title: Id name: type: string title: Name metadata: $ref: '#/components/schemas/KnowledgeBaseDocumentMetadataResponseModel' supported_usages: items: $ref: '#/components/schemas/DocumentUsageModeEnum' type: array title: Supported Usages access_info: $ref: '#/components/schemas/ResourceAccessInfo' folder_parent_id: anyOf: - type: string - type: 'null' title: Folder Parent Id description: The ID of the parent folder, or null if the document is at the root level. folder_path: items: $ref: '#/components/schemas/KnowledgeBaseFolderPathSegmentResponseModel' type: array title: Folder Path description: The folder path segments leading to this entity, from root to parent folder. type: type: string const: folder title: Type children_count: type: integer title: Children Count document_count: type: integer title: Document Count description: Number of non-folder documents anywhere in this folder's subtree (recursive). Counting stops past 1000; auto_sync_info: anyOf: - $ref: '#/components/schemas/AutoSyncInfo' - type: 'null' external_sync_info: anyOf: - $ref: '#/components/schemas/ExternalFolderSyncInfo' - type: 'null' is_frozen: type: boolean title: Is Frozen default: false active_sync_job: anyOf: - $ref: '#/components/schemas/KbExternalSyncJob' - type: 'null' description: Most recent (in-flight or terminal) external sync job for this folder, if any. Used by clients to render sync progress. type: object required: - id - name - metadata - supported_usages - access_info - type - children_count - document_count title: GetKnowledgeBaseFolderResponseModel Verbosity: type: string enum: - auto - concise - thorough title: Verbosity TurnConfigOverrideConfig: properties: soft_timeout_config: $ref: '#/components/schemas/SoftTimeoutConfigOverrideConfig' description: Configures overrides for nested fields. type: object title: TurnConfigOverrideConfig ConversationTokenResponseModel: properties: agent_id: type: string title: Agent Id description: The ID of the agent conversation_token: type: string title: Conversation Token description: The token for the agent expiration_time_unix_secs: anyOf: - type: integer - type: 'null' title: Expiration Time Unix Secs description: The expiration time of the token in unix seconds conversation_id: anyOf: - type: string - type: 'null' title: Conversation Id description: The ID of the conversation purpose: $ref: '#/components/schemas/ConversationTokenPurpose' description: The purpose of the token token_requester_user_id: anyOf: - type: string - type: 'null' title: Token Requester User Id description: The user ID of the entity who requested the token type: object required: - agent_id - conversation_token - purpose title: ConversationTokenResponseModel WorkflowStandaloneAgentNodeModel-Output: properties: type: type: string const: standalone_agent title: Type default: standalone_agent position: $ref: '#/components/schemas/Position-Output' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: The ID of the agent to transfer the conversation to. None means transfer within the current agent. node_id: anyOf: - type: string minLength: 1 - type: 'null' title: Node Id description: Optional target node ID in the destination agent's workflow. When set, the transfer starts at this node instead of the default entry node. delay_ms: type: integer title: Delay Ms description: Artificial delay in milliseconds applied before transferring the conversation. default: 0 transfer_message: anyOf: - type: string - type: 'null' title: Transfer Message description: Optional message sent to the user before the transfer is initiated. enable_transferred_agent_first_message: type: boolean title: Enable Transferred Agent First Message description: Whether to enable the transferred agent to send its configured first message after the transfer. default: false preserve_client_tts_overrides: type: boolean title: Preserve Client Tts Overrides description: Defines whether TTS client overrides should be carried over to the transferred agent. default: false type: object required: - type - position - edge_order - agent_id - node_id - delay_ms - transfer_message - enable_transferred_agent_first_message - preserve_client_tts_overrides title: WorkflowStandaloneAgentNodeModel SearchHighlightSegment: properties: value: type: string title: Value is_hit: type: boolean title: Is Hit type: object required: - value - is_hit title: SearchHighlightSegment GetAgentResponseModel: properties: agent_id: type: string title: Agent Id description: The ID of the agent name: type: string title: Name description: The name of the agent conversation_config: $ref: '#/components/schemas/ConversationalConfigAPIModel-Output' description: The conversation configuration of the agent metadata: $ref: '#/components/schemas/AgentMetadataResponseModel' description: The metadata of the agent platform_settings: $ref: '#/components/schemas/AgentPlatformSettingsResponseModel' description: The platform settings of the agent phone_numbers: items: oneOf: - $ref: '#/components/schemas/GetPhoneNumberTwilioResponseModel' - $ref: '#/components/schemas/GetPhoneNumberExotelResponseModel' - $ref: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' discriminator: propertyName: provider mapping: exotel: '#/components/schemas/GetPhoneNumberExotelResponseModel' sip_trunk: '#/components/schemas/GetPhoneNumberSIPTrunkResponseModel' twilio: '#/components/schemas/GetPhoneNumberTwilioResponseModel' type: array title: Phone Numbers description: The phone numbers of the agent whatsapp_accounts: items: $ref: '#/components/schemas/GetWhatsAppAccountResponse' type: array title: Whatsapp Accounts description: WhatsApp accounts assigned to the agent workflow: $ref: '#/components/schemas/AgentWorkflowResponseModel' description: The workflow of the agent access_info: anyOf: - $ref: '#/components/schemas/ResourceAccessInfo' - type: 'null' description: The access information of the agent for the user tags: items: type: string type: array title: Tags description: Agent tags used to categorize the agent version_id: anyOf: - type: string - type: 'null' title: Version Id description: The ID of the version the agent is on branch_id: anyOf: - type: string - type: 'null' title: Branch Id description: The ID of the branch the agent is on main_branch_id: anyOf: - type: string - type: 'null' title: Main Branch Id description: The ID of the main branch for this agent procedures: additionalProperties: $ref: '#/components/schemas/ProcedureRefResponseModel' type: object title: Procedures description: Procedures keyed by procedure_id. default_hold_audio_url: type: string title: Default Hold Audio Url description: URL of the default hold tone played to queued callers when no custom hold audio is uploaded, so the dashboard can preview it. default: https://eleven-public-cdn-common.elevenlabs.io/convai/ambient-audio-assets/elevator1.mp3 type: object required: - agent_id - name - conversation_config - metadata title: GetAgentResponseModel example: agent_id: agent_7101k5zvyjhmfg983brhmhkd98n6 name: My Agent workflow: edges: entry_to_tool_a: forward_condition: condition: Tool A condition type: llm source: entry_node target: tool_node_a start_to_entry: forward_condition: type: unconditional source: start_node target: entry_node tool_a_to_failure: forward_condition: successful: false type: result source: tool_node_a target: failure_node tool_a_to_tool_b: forward_condition: successful: true type: result source: tool_node_a target: tool_node_b tool_b_to_agent_transfer: forward_condition: type: unconditional source: tool_node_b target: success_transfer tool_b_to_conversation: forward_condition: condition: Conversation condition type: llm source: tool_node_b target: success_conversation tool_b_to_end: forward_condition: condition: End condition type: llm source: tool_node_b target: success_end tool_b_to_phone: forward_condition: expression: children: - name: force_phone_transfer type: dynamic_variable - prompt: Phone condition type: llm value_schema: description: Phone condition type: boolean - left: name: mode type: dynamic_variable right: type: string_literal value: dev type: eq_operator type: or_operator type: expression source: tool_node_b target: success_phone nodes: entry_node: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: - entry_to_tool_a entry_behavior: auto label: Entry position: x: 0.0 y: 0.0 type: override_agent failure_node: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: [] entry_behavior: auto label: Failure position: x: 0.0 y: 0.0 type: override_agent start_node: edge_order: - start_to_entry position: x: 0.0 y: 0.0 type: start success_conversation: additional_knowledge_base: [] additional_prompt: '' additional_tool_ids: [] conversation_config: {} edge_order: [] entry_behavior: auto label: Success A position: x: 0.0 y: 0.0 type: override_agent success_end: edge_order: [] position: x: 0.0 y: 0.0 return_when_nested: true type: end success_phone: custom_sip_headers: [] edge_order: [] position: x: 0.0 y: 0.0 require_acceptance: false sip_refer_play_dialtone: true transfer_destination: phone_number: '+1234567890' type: phone transfer_type: conference type: phone_number success_transfer: agent_id: success_transfer_agent delay_ms: 0 drop_history: false edge_order: [] enable_transferred_agent_first_message: false isolate_history: false position: x: 0.0 y: 0.0 preserve_client_tts_overrides: false type: standalone_agent tool_node_a: edge_order: - tool_a_to_failure - tool_a_to_tool_b position: x: 0.0 y: 0.0 tools: - tool_id: tool_a - tool_id: tool_b type: tool tool_node_b: edge_order: - tool_b_to_conversation - tool_b_to_end - tool_b_to_phone - tool_b_to_agent_transfer position: x: 0.0 y: 0.0 tools: - tool_id: tool_a type: tool prevent_subagent_loops: false subgraphs: {} PatchConvAIDashboardSettingsRequest: properties: charts: items: oneOf: - $ref: '#/components/schemas/DashboardCallSuccessChartModel' - $ref: '#/components/schemas/DashboardCriteriaChartModel' - $ref: '#/components/schemas/DashboardDataCollectionChartModel' discriminator: propertyName: type mapping: call_success: '#/components/schemas/DashboardCallSuccessChartModel' criteria: '#/components/schemas/DashboardCriteriaChartModel' data_collection: '#/components/schemas/DashboardDataCollectionChartModel' type: array maxItems: 4 title: Charts type: object title: PatchConvAIDashboardSettingsRequest HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError ConversationHistoryTranscriptToolCallCommonModel-Output: properties: type: anyOf: - $ref: '#/components/schemas/ToolType' - type: 'null' request_id: type: string title: Request Id tool_name: type: string title: Tool Name params_as_json: type: string title: Params As Json tool_has_been_called: type: boolean title: Tool Has Been Called tool_details: anyOf: - oneOf: - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallClientDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallMCPDetails' - $ref: '#/components/schemas/ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Output' discriminator: propertyName: type mapping: api_integration_webhook: '#/components/schemas/ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails-Output' client: '#/components/schemas/ConversationHistoryTranscriptToolCallClientDetails' mcp: '#/components/schemas/ConversationHistoryTranscriptToolCallMCPDetails' webhook: '#/components/schemas/ConversationHistoryTranscriptToolCallWebhookDetails' - type: 'null' title: Tool Details type: object required: - request_id - tool_name - params_as_json - tool_has_been_called title: ConversationHistoryTranscriptToolCallCommonModel DeleteClientInteractionParams: properties: smb_tool_type: type: string const: delete_client_interaction title: Smb Tool Type default: delete_client_interaction type: object title: DeleteClientInteractionParams GetClientOrdersParams: properties: smb_tool_type: type: string const: get_client_orders title: Smb Tool Type default: get_client_orders include_cancelled: type: boolean title: Include Cancelled default: false type: object title: GetClientOrdersParams ApiIntegrationWebhookOverrides: properties: schema_overrides: anyOf: - additionalProperties: oneOf: - $ref: '#/components/schemas/ConstantSchemaOverride' - $ref: '#/components/schemas/DynamicVariableSchemaOverride' - $ref: '#/components/schemas/LLMSchemaOverride' - $ref: '#/components/schemas/OmitSchemaOverride' discriminator: propertyName: source mapping: constant: '#/components/schemas/ConstantSchemaOverride' dynamic_variable: '#/components/schemas/DynamicVariableSchemaOverride' llm: '#/components/schemas/LLMSchemaOverride' omit: '#/components/schemas/OmitSchemaOverride' type: object - type: 'null' title: Schema Overrides response_filter_mode: anyOf: - $ref: '#/components/schemas/ResponseFilterMode' - type: 'null' response_filters: anyOf: - items: type: string type: array - type: 'null' title: Response Filters request_headers: anyOf: - additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAIDynamicVariable' type: object - type: 'null' title: Request Headers type: object title: ApiIntegrationWebhookOverrides DocumentUsageModeEnum: type: string enum: - prompt - auto title: DocumentUsageModeEnum default: auto ASTGreaterThanOperatorNode-Input: properties: type: type: string const: gt_operator title: Type default: gt_operator left: $ref: '#/components/schemas/ASTNode-Input' description: Left operand of the binary operator. right: $ref: '#/components/schemas/ASTNode-Input' description: Right operand of the binary operator. type: object required: - left - right title: ASTGreaterThanOperatorNode WidgetLanguagePresetResponse: properties: first_message: anyOf: - type: string - type: 'null' title: First Message text_contents: anyOf: - $ref: '#/components/schemas/WidgetTextContents' - type: 'null' description: The text contents for the selected language terms_text: anyOf: - type: string - type: 'null' title: Terms Text description: The text to display for terms and conditions in this language terms_html: anyOf: - type: string - type: 'null' title: Terms Html description: The HTML to display for terms and conditions in this language terms_key: anyOf: - type: string - type: 'null' title: Terms Key description: The key to display for terms and conditions in this language type: object title: WidgetLanguagePresetResponse ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Output: properties: request_id: type: string title: Request Id tool_name: type: string title: Tool Name result_value: type: string title: Result Value is_error: type: boolean title: Is Error is_blocked: type: boolean title: Is Blocked default: false tool_has_been_called: type: boolean title: Tool Has Been Called tool_latency_secs: type: number title: Tool Latency Secs default: 0 error_type: type: string title: Error Type default: '' raw_error_message: type: string title: Raw Error Message default: '' dynamic_variable_updates: items: $ref: '#/components/schemas/DynamicVariableUpdateCommonModel' type: array title: Dynamic Variable Updates type: type: string const: workflow title: Type result: anyOf: - $ref: '#/components/schemas/WorkflowToolResponseModel-Output' - type: 'null' type: object required: - request_id - tool_name - result_value - is_error - tool_has_been_called - type title: ConversationHistoryTranscriptWorkflowToolsResultCommonModel SIPLogMessageDirection: type: string enum: - in - out title: SIPLogMessageDirection ConversationHistoryErrorCommonModel: properties: code: type: integer title: Code reason: anyOf: - type: string - type: 'null' title: Reason type: object required: - code title: ConversationHistoryErrorCommonModel ASRQuality: type: string enum: - high title: ASRQuality default: high ConversationHistoryMetadataCommonModel: properties: start_time_unix_secs: type: integer title: Start Time Unix Secs accepted_time_unix_secs: anyOf: - type: integer - type: 'null' title: Accepted Time Unix Secs call_duration_secs: type: integer title: Call Duration Secs queue_wait_secs: anyOf: - type: number - type: 'null' title: Queue Wait Secs description: Seconds the caller was held in the concurrency wait queue. Excluded from call_duration_secs and from billed time. None when the conversation was never queued. cost: anyOf: - type: integer - type: 'null' title: Cost deletion_settings: $ref: '#/components/schemas/ConversationDeletionSettings' feedback: $ref: '#/components/schemas/ConversationHistoryFeedbackCommonModel' authorization_method: $ref: '#/components/schemas/AuthorizationMethod' default: public charging: $ref: '#/components/schemas/ConversationChargingCommonModel' phone_call: anyOf: - oneOf: - $ref: '#/components/schemas/ConversationHistoryTwilioPhoneCallModel' - $ref: '#/components/schemas/ConversationHistoryExotelPhoneCallModel' - $ref: '#/components/schemas/ConversationHistorySIPTrunkingPhoneCallModel' discriminator: propertyName: type mapping: exotel: '#/components/schemas/ConversationHistoryExotelPhoneCallModel' sip_trunking: '#/components/schemas/ConversationHistorySIPTrunkingPhoneCallModel' twilio: '#/components/schemas/ConversationHistoryTwilioPhoneCallModel' - type: 'null' title: Phone Call batch_call: anyOf: - $ref: '#/components/schemas/ConversationHistoryBatchCallModel' - type: 'null' termination_reason: type: string title: Termination Reason default: '' error: anyOf: - $ref: '#/components/schemas/ConversationHistoryErrorCommonModel' - type: 'null' warnings: items: type: string type: array title: Warnings main_language: anyOf: - type: string - type: 'null' title: Main Language rag_usage: anyOf: - $ref: '#/components/schemas/ConversationHistoryRagUsageCommonModel' - type: 'null' text_only: type: boolean title: Text Only default: false features_usage: $ref: '#/components/schemas/FeaturesUsageCommonModel' eleven_assistant: $ref: '#/components/schemas/ConversationHistoryElevenAssistantCommonModel' initiator_id: anyOf: - type: string - type: 'null' title: Initiator Id conversation_initiation_source: $ref: '#/components/schemas/ConversationInitiationSource' default: unknown conversation_initiation_source_version: anyOf: - type: string maxLength: 50 - type: 'null' title: Conversation Initiation Source Version timezone: anyOf: - type: string - type: 'null' title: Timezone async_metadata: anyOf: - $ref: '#/components/schemas/AsyncConversationMetadata' - type: 'null' whatsapp: anyOf: - $ref: '#/components/schemas/WhatsAppConversationInfo' - type: 'null' sms: anyOf: - $ref: '#/components/schemas/SMSConversationInfo' - type: 'null' agent_created_from: $ref: '#/components/schemas/AgentDefinitionSource' default: unknown agent_last_updated_from: $ref: '#/components/schemas/AgentDefinitionSource' default: unknown voice_rewards: items: $ref: '#/components/schemas/ConversationVoiceRewardModel' type: array title: Voice Rewards cost_fiat: anyOf: - type: number - type: 'null' title: Cost Fiat description: Total fiat cost of the conversation in USD, i.e. the sum of the LLM price and the non-LLM platform price (the fiat analogue of ``cost``). ``None`` when neither is set (e.g. conversations that predate fiat cost tracking). readOnly: true type: object required: - start_time_unix_secs - call_duration_secs - cost_fiat title: ConversationHistoryMetadataCommonModel Body_Create_file_document_v1_convai_knowledge_base_file_post: properties: file: type: string title: File description: Documentation that the agent will have access to in order to interact with users. format: binary name: anyOf: - type: string minLength: 1 - type: 'null' title: Name description: A custom, human-readable name for the document. parent_folder_id: anyOf: - type: string - type: 'null' title: Parent Folder Id description: If set, the created document or folder will be placed inside the given folder. type: object required: - file title: Body_Create_file_document_v1_convai_knowledge_base_file_post WidgetTermsTranslation: properties: source_hash: type: string title: Source Hash text: type: string title: Text type: object required: - source_hash - text title: WidgetTermsTranslation WorkspaceBatchCallsResponse: properties: batch_calls: items: $ref: '#/components/schemas/BatchCallResponse' type: array title: Batch Calls next_doc: anyOf: - type: string - type: 'null' title: Next Doc description: The next document, used to paginate through the batch calls has_more: type: boolean title: Has More description: Whether there are more batch calls to paginate through default: false type: object required: - batch_calls title: WorkspaceBatchCallsResponse KnowledgeBaseDocumentChunksResponseModel: properties: chunks: items: $ref: '#/components/schemas/KnowledgeBaseDocumentChunkResponseModel' type: array title: Chunks next_cursor: anyOf: - type: string - type: 'null' title: Next Cursor type: object required: - chunks title: KnowledgeBaseDocumentChunksResponseModel StartProcedureToolConfig: properties: system_tool_type: type: string const: start_procedure title: System Tool Type default: start_procedure procedures: additionalProperties: anyOf: - $ref: '#/components/schemas/ProcedureVersionRef' - $ref: '#/components/schemas/ProcedureDraftRef' type: object title: Procedures type: object title: StartProcedureToolConfig AgentQueueingConfig: properties: enabled: type: boolean title: Enabled description: Hold callers in a wait queue when the agent is at its concurrency limit, instead of rejecting them immediately default: false wait_timeout_seconds: type: integer maximum: 1800.0 exclusiveMinimum: 0.0 title: Wait Timeout Seconds description: Maximum time a caller can wait in the queue before being rejected default: 180 hold_audio: anyOf: - $ref: '#/components/schemas/AgentHoldAudioConfig' - type: 'null' description: 'Custom hold audio played to queued callers; when unset, callers hear the default hold tone. Read-only: set it by uploading a file through the agent hold-audio endpoint.' readOnly: true type: object title: AgentQueueingConfig WorkflowPhoneNumberNodeModel-Input: properties: custom_sip_headers: items: oneOf: - $ref: '#/components/schemas/CustomSIPHeader' - $ref: '#/components/schemas/CustomSIPHeaderWithDynamicVariable' discriminator: propertyName: type mapping: dynamic: '#/components/schemas/CustomSIPHeaderWithDynamicVariable' static: '#/components/schemas/CustomSIPHeader' type: array maxItems: 20 title: Custom Sip Headers description: Custom SIP headers to include when transferring the call. Each header can be either a static value or a dynamic variable reference. transfer_destination: oneOf: - $ref: '#/components/schemas/PhoneNumberTransferDestination' - $ref: '#/components/schemas/SIPUriTransferDestination' - $ref: '#/components/schemas/PhoneNumberDynamicVariableTransferDestination' - $ref: '#/components/schemas/SIPUriDynamicVariableTransferDestination' title: Transfer Destination discriminator: propertyName: type mapping: phone: '#/components/schemas/PhoneNumberTransferDestination' phone_dynamic_variable: '#/components/schemas/PhoneNumberDynamicVariableTransferDestination' sip_uri: '#/components/schemas/SIPUriTransferDestination' sip_uri_dynamic_variable: '#/components/schemas/SIPUriDynamicVariableTransferDestination' transfer_type: $ref: '#/components/schemas/TransferTypeEnum' default: conference sip_refer_play_dialtone: type: boolean title: Sip Refer Play Dialtone description: When True, a ringing tone is played on the original call leg while a SIP REFER transfer completes. The tone is carried over RTP to the SIP peer executing the REFER, so disable this if the receiving system (e.g. an SBC or contact center) should not hear it. When disabled the caller hears silence until the transfer completes. SIP REFER transfers only. default: true uui: anyOf: - $ref: '#/components/schemas/UUITransferConfig' - type: 'null' description: User-to-User Information (RFC 7433) to attach to SIP REFER transfers. Carries call context such as CRM identifiers or escalation reason across the transfer boundary. post_dial_digits: anyOf: - oneOf: - $ref: '#/components/schemas/PostDialDigitsStatic' - $ref: '#/components/schemas/PostDialDigitsDynamicVariable' discriminator: propertyName: type mapping: dynamic: '#/components/schemas/PostDialDigitsDynamicVariable' static: '#/components/schemas/PostDialDigitsStatic' - type: 'null' title: Post Dial Digits description: DTMF digits to send after call connects (e.g., 'ww1234' for extension). Can be either a static value or a dynamic variable reference. Use 'w' for 0.5s pause. Only supported for Twilio transfers. type: type: string const: phone_number title: Type default: phone_number position: $ref: '#/components/schemas/Position-Input' description: Position of the node in the workflow. edge_order: items: type: string type: array title: Edge Order description: The ids of outgoing edges in the order they should be evaluated. type: object required: - transfer_destination title: WorkflowPhoneNumberNodeModel WebhookToolApiSchemaConfig-Input: properties: request_headers: additionalProperties: anyOf: - type: string - $ref: '#/components/schemas/ConvAISecretLocator' - $ref: '#/components/schemas/ConvAIDynamicVariable' - $ref: '#/components/schemas/ConvAIEnvVarLocator' type: object title: Request Headers description: Headers that should be included in the request url: type: string title: Url description: The URL that the webhook will be sent to. May include path parameters, e.g. https://example.com/agents/{agent_id} method: type: string enum: - GET - POST - PUT - PATCH - DELETE title: Method description: The HTTP method to use for the webhook default: GET path_params_schema: additionalProperties: $ref: '#/components/schemas/LiteralJsonSchemaProperty' type: object title: Path Params Schema description: Schema for path parameters, if any. The keys should match the placeholders in the URL. query_params_schema: anyOf: - $ref: '#/components/schemas/QueryParamsJsonSchema-Input' - type: 'null' description: 'Schema for any query params, if any. These will be added to end of the URL as query params. Note: properties in a query param must all be literal types' request_body_schema: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Input' description: JSON schema for the parameters the LLM provides. - type: 'null' description: Schema for the body parameters, if any. Used for POST/PATCH/PUT requests. The schema should be an object which will be sent as the json body response_body_schema: anyOf: - $ref: '#/components/schemas/ObjectJsonSchemaProperty-Input' - type: 'null' description: Schema describing the expected response body structure. For documentation only; not surfaced to the LLM. response_filter: anyOf: - $ref: '#/components/schemas/ResponseFilter' - type: 'null' description: Optional allow-list filter applied to the response before the LLM sees it, so large responses don't pollute the context. Defaults to the full response. content_type: type: string enum: - application/json - application/x-www-form-urlencoded title: Content Type description: Content type for the request body. Only applies to POST/PUT/PATCH requests. default: application/json auth_resolved_params: items: type: string type: array uniqueItems: true title: Auth Resolved Params description: URL placeholders resolved from the auth connection (e.g. secrets injected via UrlSecretAuthConnection) rather than from path_params_schema. auth_connection: anyOf: - $ref: '#/components/schemas/AuthConnectionLocator' - $ref: '#/components/schemas/EnvironmentAuthConnectionLocator' - type: 'null' title: Auth Connection description: Optional auth connection to use for authentication with this webhook type: object required: - url title: WebhookToolApiSchemaConfig example: method: GET path_params_schema: agent_id: type: string query_params_schema: param1: type: string request_body_schema: param1: type: string request_headers: Authorization: Bearer {api_key} url: https://example.com/agents/{agent_id} SoftTimeoutConfig: properties: timeout_seconds: type: number title: Timeout Seconds description: Time in seconds before showing the predefined message while waiting for LLM response. Set to -1 to disable. default: -1.0 message: type: string maxLength: 200 minLength: 1 title: Message description: Message to show when the first soft timeout is reached while waiting for LLM response. Supports dynamic variables (e.g., {{system__time}}, {{custom_variable}}). default: Hhmmmm...yeah. x-convai-client-override: true x-convai-language-override: true additional_soft_timeout_messages: items: type: string type: array maxItems: 7 title: Additional Soft Timeout Messages description: Extra static filler messages for subsequent soft timeouts in the same LLM generation. The first timeout uses `message`. If fewer messages are configured than `max_soft_timeouts_per_generation`, the last configured message is repeated; otherwise a built-in filler is used. x-convai-client-override: true x-convai-language-override: true use_llm_generated_message: type: boolean title: Use Llm Generated Message description: If enabled, the soft timeout message will be generated dynamically instead of using the static message. default: false randomize_fillers: type: boolean title: Randomize Fillers description: If enabled, shuffle the order of static soft timeout messages once at the start of each turn. Only applies when use_llm_generated_message is false. default: false max_soft_timeouts_per_generation: type: integer maximum: 8.0 minimum: 1.0 title: Max Soft Timeouts Per Generation description: Maximum filler messages while waiting for a single LLM response. Fires every timeout_seconds until the LLM streams content or this limit is reached. default: 1 llm_generated_message_prompt_override: anyOf: - type: string maxLength: 1000 minLength: 1 - type: 'null' title: Llm Generated Message Prompt Override description: Custom prompt for generating the soft timeout filler message when use_llm_generated_message is enabled. Recent conversation context is provided as a separate user message. If not set, the default prompt will be used. Supports dynamic variables (e.g., {{system__time}}, {{custom_variable}}). examples: - Output a SHORT neutral filler phrase (1-4 words MAX) acknowledging you heard the user. disable_until_first_user_message: type: boolean title: Disable Until First User Message description: When true, soft timeout fillers are suppressed until the conversation has at least one real user message. Prevents fillers during the agent's opening turn (e.g. workflow generate-immediately / tool calls before the user speaks). default: false type: object title: SoftTimeoutConfig description: Configuration for soft timeout functionality during LLM response generation. example: message: Hhmmmm...yeah. timeout_seconds: 2.0 use_llm_generated_message: false ProcedureDraftRef: properties: procedure_id: type: string title: Procedure Id description: Procedure ID version_id: type: 'null' title: Version Id type: object required: - procedure_id title: ProcedureDraftRef IntegrationType: type: string enum: - mcp_server - mcp_integration title: IntegrationType AuthSettings: properties: enable_auth: type: boolean title: Enable Auth description: If set to true, starting a conversation with an agent will require a signed token default: false allowlist: items: $ref: '#/components/schemas/AllowlistItem' type: array title: Allowlist description: A list of hosts that are allowed to start conversations with the agent require_origin_header: type: boolean title: Require Origin Header description: When enabled, connections with no origin header will be rejected. If the allowlist is empty, this option has no effect. default: false shareable_token: anyOf: - type: string - type: 'null' title: Shareable Token description: A shareable token that can be used to start a conversation with the agent type: object title: AuthSettings example: allowlist: - hostname: https://example.com enable_auth: true require_origin_header: true shareable_token: '1234567890' Body_Add_to_knowledge_base_v1_convai_knowledge_base_post: properties: name: anyOf: - type: string minLength: 1 - type: 'null' title: Name description: A custom, human-readable name for the document. url: type: string title: Url description: URL to a page of documentation that the agent will have access to in order to interact with users. file: type: string title: File description: Documentation that the agent will have access to in order to interact with users. format: binary type: object title: Body_Add_to_knowledge_base_v1_convai_knowledge_base_post ToolCallSoundBehavior: type: string enum: - auto - always title: ToolCallSoundBehavior description: Determines how the tool call sound should be played. default: auto ConvAIDynamicVariable: properties: variable_name: type: string title: Variable Name type: object required: - variable_name title: ConvAIDynamicVariable description: Used to reference a dynamic variable.