Flireo AI
WebsiteLinkedin
WebsiteLinkedin
  1. Webhooks
  • API Reference
    • Agents
      • List all agents
      • Create a new agent
      • Get an agent
      • Update an agent
      • Delete an agent
    • Tool Templates
      • List all tool templates
      • Create a new tool template
      • Get a tool template
      • Update a tool template
      • Delete a tool template
    • Numbers
      • List all phone numbers
      • Register a phone number
      • Get a phone number
      • Update a phone number
      • Delete a phone number
    • Calls
      • List calls
      • Get call by ID
      • Initiate outbound call
    • Call Control
      • Send control command to active call
    • Usage
      • Get usage logs
    • SIP Trunks
      • List SIP trunks
      • Create a SIP trunk
      • Get a SIP trunk
      • Delete a SIP trunk
    • Voices
      • List available voices
    • BYOK
      • Get BYOK configurations
      • Add BYOK configuration
      • Delete BYOK configuration
      • Get BYOK provider configurations
    • Domains
      • Get your domain
      • Add a domain
      • Delete your domain
      • List available Resend domains
      • Select and sync a Resend domain
      • Verify domain DNS records
      • Refresh domain status
    • Webhooks
      • Dynamic assistant configuration webhook
      • Tool/Function Call
      • Call Status Update
      • End of Call Report
    • Analysis Templates
      • List analysis templates
      • Create analysis template
      • Get analysis template
      • Update analysis template
      • Delete analysis template
    • Organization
      • Get organization information
    • Campaigns
      • List all campaigns
      • Create a campaign
      • Get a campaign
      • Update a campaign
      • Delete a campaign
      • List campaign leads
      • Add a lead
      • Remove a lead
  • Documentation
    • Get started
      • Quickstart
      • Introduction
      • Authentication
    • Core concepts
      • Agents
      • Phone numbers
      • Calls
      • Webhooks
    • Api's
      • Organization
      • Agents
      • Phone numbers
      • Sip trunks
      • Calls
      • Call control
      • Usage
      • Voices
      • BYOK
      • Domains
      • Analysis templates
      • Tool templates
    • Webhooks
      • Overview
      • Assistant request
      • Tool calls
      • Status update
      • End of call report
      • Security
    • Guides
      • BYOK Setup
      • Call analysis
      • Custom Tools
      • Call Transfers
      • xAI Realtime Integration
      • Analysis templates
      • Billing
      • Error codes
      • Rate limits
      • Sip Trunks
      • Tool templates
      • Troubleshooting
WebsiteLinkedin
WebsiteLinkedin
  1. Webhooks

Tool/Function Call

Webhook
POST
tool-calls
Webhooks
Last modified:2026-01-09 14:25:39
Maintainer:Not configured
Called when the AI needs to execute a tool/function during the conversation.
Sync tools: Must respond within 10 seconds with the result.
Async tools: Respond immediately with 200 OK (fire-and-forget).
Tools are defined in llm_config.tools[] with optional per-tool URL override.

Response Formats#

Multiple response formats are supported:
1.
Object format (recommended):
{"results": [{"toolCallId": "tool_abc123", "result": {"name": "Jan"}}]}
2.
Simple format:
{"result": {"name": "Jan"}}
3.
Direct format (your data directly):
{"name": "Jan"}
4.
Error format:
{"error": "Contact niet gevonden"}

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
Tool result (for sync tools)
Body

Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://your-api-server.com' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "message": {
        "type": "tool-calls",
        "timestamp": "2025-12-13T12:00:00.000Z",
        "call": {
            "id": "5c4d030f-43e3-4e65-899e-8148521e660f",
            "type": "inboundPhoneCall",
            "status": "in-progress"
        },
        "phoneNumber": {
            "number": "+31850835037",
            "name": "Flireo Demo"
        },
        "customer": {
            "number": "+31612345678"
        },
        "toolCallList": [
            {
                "id": "tool_abc123def456",
                "type": "function",
                "function": {
                    "name": "lookup_contact",
                    "arguments": {
                        "query": "Jan de Vries"
                    }
                }
            }
        ]
    }
}'
Response Response Example
Object format (recommended)
{
    "results": [
        {
            "toolCallId": "tool_abc123def456",
            "result": {
                "name": "Jan de Vries",
                "email": "jan@example.com",
                "phone": "+31612345678"
            }
        }
    ]
}
Modified at 2026-01-09 14:25:39
Previous
Dynamic assistant configuration webhook
Next
Call Status Update
Built with