Implementation:Elevenlabs Elevenlabs python BuiltInToolsInput
| Field | Value |
|---|---|
| source | Elevenlabs_Elevenlabs_python |
| domains | Conversational AI, Agent Tools, Call Management, Telephony |
| last_updated | 2026-02-15 |
Overview
Description
BuiltInToolsInput is a Pydantic model that defines the configuration for built-in system tools available to a conversational AI agent in the ElevenLabs platform. These are pre-built capabilities that the agent can invoke during conversations, including ending calls, detecting languages, transferring to other agents or phone numbers, skipping turns, playing DTMF tones, and detecting voicemail.
This model is auto-generated by Fern from the ElevenLabs API definition and inherits from UncheckedBaseModel. Each tool is configured via a SystemToolConfigInput instance that controls whether the tool is enabled and its parameters.
Usage
BuiltInToolsInput is used within PromptAgentApiModelInput to enable and configure system-level tools for an agent. These tools are particularly important for telephony use cases where agents need to manage calls, transfer to human operators, or handle voicemail scenarios.
Code Reference
Source Location
src/elevenlabs/types/built_in_tools_input.py
Class Signature
class BuiltInToolsInput(UncheckedBaseModel):
...
Import Statement
from elevenlabs.types import BuiltInToolsInput
I/O Contract
| Field | Type | Required | Description |
|---|---|---|---|
end_call |
Optional[SystemToolConfigInput] |
No | The end call tool. |
language_detection |
Optional[SystemToolConfigInput] |
No | The language detection tool. |
transfer_to_agent |
Optional[SystemToolConfigInput] |
No | The transfer to agent tool. |
transfer_to_number |
Optional[SystemToolConfigInput] |
No | The transfer to number tool. |
skip_turn |
Optional[SystemToolConfigInput] |
No | The skip turn tool. |
play_keypad_touch_tone |
Optional[SystemToolConfigInput] |
No | The play DTMF tool. |
voicemail_detection |
Optional[SystemToolConfigInput] |
No | The voicemail detection tool. |
Usage Examples
Enabling Basic Call Management Tools
from elevenlabs.types import BuiltInToolsInput, SystemToolConfigInput
tools = BuiltInToolsInput(
end_call=SystemToolConfigInput(enabled=True),
language_detection=SystemToolConfigInput(enabled=True),
)
Telephony Agent with Transfer Capabilities
from elevenlabs.types import BuiltInToolsInput, SystemToolConfigInput
tools = BuiltInToolsInput(
end_call=SystemToolConfigInput(enabled=True),
transfer_to_agent=SystemToolConfigInput(enabled=True),
transfer_to_number=SystemToolConfigInput(enabled=True),
voicemail_detection=SystemToolConfigInput(enabled=True),
play_keypad_touch_tone=SystemToolConfigInput(enabled=True),
)
Using Built-In Tools in Prompt Configuration
from elevenlabs.types import PromptAgentApiModelInput, BuiltInToolsInput, SystemToolConfigInput
prompt_config = PromptAgentApiModelInput(
prompt="You are a receptionist. Transfer to a human agent if the caller requests it.",
built_in_tools=BuiltInToolsInput(
end_call=SystemToolConfigInput(enabled=True),
transfer_to_number=SystemToolConfigInput(enabled=True),
),
)
Related Pages
- Elevenlabs_Elevenlabs_python_PromptAgentApiModelInput - Parent prompt configuration that references BuiltInToolsInput
- Elevenlabs_Elevenlabs_python_AgentConfig - Core agent configuration
- Elevenlabs_Elevenlabs_python_TurnConfigWorkflowOverride - Turn configuration that controls conversation flow alongside tools
- Elevenlabs_Elevenlabs_python_GetAgentResponseModel - Full agent response model