Tools & Integrations
External API integrations and webhook tools for Speaknode agents
Speaknode agents can call external APIs during conversations, enabling them to look up data, perform actions, and integrate with your systems.
Overview
Tools are HTTP-based integrations that the LLM can invoke during a conversation. When the agent decides it needs external data or needs to perform an action, it calls the configured tool and uses the result in its response.
Tool Types
Webhook Tools
Custom HTTP endpoints that the agent can call:
- Method — GET, POST, PUT, DELETE
- URL — endpoint address (supports variable substitution)
- Headers — custom headers defined via OpenAPI schema
- Body — request body defined via OpenAPI schema
- Description — explains to the LLM when and how to use the tool
System Tools
Built-in tools provided by the platform -- nothing to create, just enable them on an agent:
| Tool | Function |
|---|---|
| End call | The agent ends the conversation itself once the goal is met |
| Transfer to a human operator | The call is transferred to a live operator's phone over SIP: cold transfer, a fixed briefing message, or an auto-generated summary of the conversation |
| Transfer to another agent | The dialogue is handed to another AI agent within the same session |
| Detect language | The conversation switches to the caller's language, among those configured on the agent |
| Skip turn | The agent stays silent and waits when the caller asks for a moment |
| Ask for clarification | Records what information the agent was missing to complete the task |
Configuration is described in System Tools in the user guide.
Tool Configuration
Each tool is defined with an OpenAPI schema for its parameters:
- Body schema — defines the JSON body structure the LLM should construct
- Header schema — defines custom headers to send
- Code — unique identifier used by the LLM to reference the tool
Speech During Tool Execution
Tools support configurable speech while executing:
- Pre-tool speech — what the agent says before calling the tool (e.g., "Let me look that up...")
- Progress speech — what the agent says while waiting for the response
Transfer Rules
The transfer tools carry rules that redirect the conversation:
- Transfer to another agent — hand off to a different AI agent inside the same session
- Transfer to a human operator — an outbound call to the operator's number, with a configurable ringing timeout and briefing mode
- Condition — when the transfer should happen; the model picks the rule by it
This enables multi-agent workflows where specialized agents handle specific topics, and anything beyond automation reaches a live operator.
How It Works
- The LLM decides to call a tool based on the conversation context
- The Python worker constructs the HTTP request from the OpenAPI schema
- The request is sent to the configured endpoint
- The response is passed back to the LLM
- The LLM incorporates the result into its response
Webhook Management
The platform also provides a separate webhook system for receiving events:
- Configure webhook endpoints to receive session events
- View webhook request history and payloads
- Manage allowed paths and routing via the Webhook Receiver Client
Examples
CRM Lookup:
Tool: get_customer_info
Method: GET
URL: https://crm.example.com/api/customers/{{customer_id}}
Description: Look up customer information by their IDOrder Status:
Tool: check_order_status
Method: POST
URL: https://api.example.com/orders/status
Body: { "order_id": "string" }
Description: Check the current status of a customer order