Separate inbound and outbound webhook flows clearly.
Callaro integrations can involve two webhook directions:- Webhooks sent by Callaro to your systems (for example post-call notifications).
- Webhooks received by Callaro from providers/integrations (for example billing or telephony callbacks).
Webhooks sent by Callaro (to your endpoint)
Event families in active use
call.completed(post-call operational payload)- campaign lifecycle events where configured per tenant integration policy
- compliance and number-health events where enabled
Canonical call.completed payload shape
Delivery contract (current public status)
- Delivery model: at least once
- Dedupe key:
call_id(and optionallyvoice_session_id) - Ordering: not guaranteed across calls
- Success response expected: any 2xx status
- Retry behavior: automatic retries for transient failures/non-2xx
Receiver implementation template
Webhooks received by Callaro (from external systems)
These are callback endpoints on Callaro that providers/integrations call. Typical examples include:- telephony provider callbacks
- billing/payment status callbacks
- integration-specific event relays
POST /api/v1/webhooks/telephony/{vendor_slug}POST /api/v1/webhooks/telephony/{vendor_slug}/sample
Reliability checklist
Persist raw payloads with receipt timestamp
Keep an audit log to support replay and incident analysis.

