Callina.aiDocs

Mid-call webhooks

Trigger your own systems while Anna is still on the phone — for live lookups, dynamic routing, real-time CRM sync.

Mid-call webhooks let your backend respond to events while the call is still live. The classic example: Anna asks for an order number, fires a webhook to your shop, gets the status back in under a second, and reads it to the caller.

When to use mid-call vs post-call webhooks

Use caseWebhook type
Look up data to read aloud during the callMid-call
Update CRM with conversation summaryPost-call
Trigger live agent escalationMid-call
Send confirmation SMS after the callPost-call

Configuration

In Callina → Settings → Webhooks → Mid-call:

  1. Endpoint URL (must be HTTPS, must respond within 2.5 seconds).
  2. Trigger events you want to subscribe to.
  3. Signing secret — the X-Callina-Signature header on each request.

Event types

EventFired when
intent.detectedAnna detects a structured intent (e.g. lookup_order, book_appointment)
tool.invokedAnna calls a custom tool — your endpoint computes the response
escalation.requestedCaller asked for a human, or Anna's confidence dropped below threshold
silence.detectedCaller has been silent for >8s — useful to log abandoned calls live

Request payload (intent.detected)

{
  "event": "intent.detected",
  "call_id": "call_x1y2z3",
  "occurred_at": "2026-05-09T14:32:55Z",
  "intent": "lookup_order",
  "params": {
    "order_number": "ORD-12345"
  },
  "context": {
    "caller_phone": "+43660123456789",
    "caller_name": "Maria Steinhauser"
  }
}

Expected response (under 2.5s)

Return JSON that Anna can read back to the caller:

{
  "say": "Order ORD-12345 was shipped yesterday and arrives tomorrow.",
  "next_action": "continue"
}

Or to escalate:

{
  "say": "Let me transfer you to a specialist.",
  "next_action": "transfer",
  "transfer_to": "+43662275124"
}

Timeout behavior

If your endpoint doesn't respond within 2.5 seconds, Anna falls back to a generic "I'm checking that for you, please hold" and then either retries once (configurable) or escalates to voicemail / human transfer.