A webhook on every Allo call

Allo posts a signed JSON event to your endpoint when a call rings, is answered or ends, when a text comes in or goes out, and when a contact changes. The finished call carries the AI summary, the transcript and the recording link.

Or talk it through with our team
Allo
Maya Cole(555) 010-0142
You called
0:00 / 6:121x
Call summaryview more
One phone system for 12 reps

12 reps, all calling from their own cell today. No call ever reaches the CRM today. Current contract ends March 31. Wants recordings to coach new reps. Maya decides, with sign-off from the sales manager. Send the quote by Friday. Book a demo with the sales manager next week. Check which numbers they want to keep.

Sent to your webhook

1You hang up in AlloThe AI writes the summary while you say goodbye.

Webhooks
Endpoint logs
Deliveries
200call.completedjust now
200call.answered6 min ago
200call.triggered6 min ago
200sms.received12 min ago
200contact.updated25 min ago
POSThttps://api.northpeak.example/webhooks/allo200 OK184 ms
Headers
webhook-idmsg_2Vq8LmR4tK9xP1zN7cHd
webhook-timestamp1790952527
webhook-signaturev1,Jx7Rk2mQ9vT4bN8cW1yL5pZ0sF3hG6dA…
Body
{
"topic": "call.completed",
"version": "2.0",
"timestamp": "2026-10-02T14:48:47.000Z",
"data": {
"id": "cll_7QhRk2Vd9mLx4TzP0aWn",
"start_date": "2026-10-02T14:42:05.000Z",
"from_number": "+15550100187",
"from_name": "Northpeak Supply",
"to": "+15550100142",
"to_name": "Maya Cole",
"length": "6m 12s",
"summary": "12 reps, all calling from their own cell today. No call ever reaches the CRM today. Current contract ends March 31. Wants recordings to coach new reps. Maya decides, with sign-off from the sales manager. Send the quote by Friday. Book a demo with the sales manager next week. Check which numbers they want to keep.",
"type": "OUTBOUND",
"result": "ANSWERED",
"recording_url": "https://storage.withallo.com/recordings/rc_8f2k…mp3",
"user_email": "[email protected]"
}
}

2Your server gets the callA signed call.completed event about 30 seconds later, with the same summary, the transcript and the recording link.

Pick your events,
test your endpoint

Set it up from the Allo app or through the API. Your endpoint needs HTTPS and a 200 within 20 seconds.

  • Enter your HTTPS endpoint and pick the topics: finished calls, answered calls, texts sent and received, contacts, tags, notes and threads.

    GeneralNumbersTeamIntegrationsAPIBilling
    WebhooksConnected
    Webhook URL
    https://api.northpeak.example/webhooks/allo
    Events to send
    call.completedcall.answeredsms.receivedcontact.createdtag.added
    Save
  • Pick an event and click Test. Allo sends a synthetic event and shows whether it arrived, the status code and the response time.

What Allo sends
to your endpoint

Pick the topics you need. Every event is a signed POST with the same envelope: topic, version, timestamp and data.

Posted to your endpoint

  • Live call eventscall.received, call.triggered, call.answered
  • Completed callscall.completed: recording, transcript, summary, outcome
  • Textssms.received, sms.sent
  • Contactscontact.created, contact.updated
  • Call tagstag.added, tag.removed
  • Notes and threadsNotes on conversations and contacts, discussion threads

Your endpoint must use HTTPS and answer with a 200 within 20 seconds. Allo retries a failed delivery up to 8 times over about 27.5 hours.

Building it by hand
vs with Allo

Piping call data by hand

  • Polling an API to find out what happened
  • Exporting call data to move it anywhere
  • Scripts that miss events while your server is down
  • Automations that lag behind the conversation

With Allo

  • An event at your endpoint as things happen
  • Summary, transcript and recording link in the payload
  • Failed deliveries retried, missed ones replayable
  • Every request signed, so you know it came from Allo

Allo is an AI phone system,
not just an integration

The Webhooks sync is one part. Allo is the phone your team calls, texts and gets coached from every day.

See all features
AI receptionist

Allo answers when you can't, qualifies the caller and books the meeting, 24/7, so no lead slips away.

Explore this feature
Call recording and AI summaries

Every call is recorded, transcribed and summarized, so the key points and next steps are captured without taking notes.

Explore this feature
Run Allo from your AI assistant

Connect Allo to Claude, ChatGPT and more through the Allo MCP, and pull call data or trigger actions just by asking.

Explore this feature
Business texting built in

Text customers from your Allo number and keep calls and messages together in one place.

Explore this feature
Power dialer

Call through a list back to back with no manual dialing, so your reps spend their time talking, not clicking.

Explore this feature
Call analytics

See call volume, outcomes and team activity at a glance, and coach from real conversations.

Explore this feature

Webhooks integration FAQ

An Allo agent picks up and puts you through to sales or support. It is the fastest demo on this page.

888-298-ALLO

Two ways. In the Allo mobile app, go to Settings, then Integrations, then Webhooks, turn it on, enter your HTTPS URL and pick the events. Or use the API: create a key with the WEBHOOKSREADWRITE scope and send your URL and topics to /v2/webhooks.

Calls ringing (call.received, call.triggered), answered (call.answered) and finished (call.completed), tags added or removed, texts received and sent, contacts created or updated, plus notes and discussion threads. The full list, with every payload, is in the event catalog of our help center.

The call ID, the start time, the numbers and names on both sides, the duration, the outcome (answered, voicemail, handled by the AI agent, transferred, blocked or failed), the tags, the AI summary, the transcript, the recording URL, the Allo user on the call and any phone menu choices. It arrives about 30 seconds after the hang-up.

Every request carries webhook-id, webhook-timestamp and webhook-signature headers. Recompute the HMAC-SHA256 signature with your signing secret and compare it to the header.

Allo retries up to 8 times over about 27.5 hours. An endpoint that keeps failing for 5 days is turned off, and once it's fixed you can replay the events you missed. Delivery is at least once, so deduplicate with webhook-id.

Sending calls to your own tools through webhooks is part of the Allo Business plan.

Yes, someone has to run the endpoint that receives the events. If you'd rather not write code, Allo can send the same calls to Zapier or Make.