Skip to content
Tools

Webhooks

Get told when your agents talk to customers.


Add an endpoint in Webhooks and choose its events. We POST each event to it as JSON; a failed delivery is retried after 5 and 30 seconds, and the last deliveries are listed in the dashboard.

EventSent when
conversation.startedA call or WhatsApp chat with one of your agents begins.
conversation.messageNew messages in a conversation, the caller's and the agent's.
credits.lowYour balance falls below the low-credit level (once, until you top up).
{
  "id": "evt_8c2…",
  "type": "conversation.message",
  "createdAt": "2026-10-03T10:15:00.000Z",
  "data": {
    "conversationId": "…", "agentId": "…", "agentName": "Priya",
    "channel": "voice", "caller": "+919800000001", "phoneNumber": "+918047182200",
    "messages": [{ "role": "user", "text": "Where is my order?" }, { "role": "agent", "text": "…" }]
  }
}

Check the signature

Every request has X-Lipivo-Signature: t=<unix time>,v1=<hex>: an HMAC-SHA256 of "<t>.<raw body>" with your endpoint's secret. Check it, and that t is recent, before trusting an event.

from lipivo import webhooks

event = webhooks.construct_event(request.body, request.headers["X-Lipivo-Signature"], "whsec_...")