Skip to main content
Webhooks deliver real-time event notifications to your server. Available to Professional and Enterprise tiers.

Events

EventData fields
conversation.createdconversationId
conversation.updatedconversationId, title
conversation.keypoints.readyconversationId, title
conversation.summary.readyconversationId, title, sectionCount
conversation.action_items.readyconversationId, actionItemCount
conversation.feedback.readyconversationId, overallScore
conversation.sharedconversationId, shareUrl
conversation.deletedconversationId
transcript.readyconversationId, segmentCount
transcript.failedconversationId, error
webhook.testmessage

Payload Format

{
  "event": "conversation.keypoints.ready",
  "data": { "conversationId": "sess_a1b2c3", "title": "Q1 Planning Review" },
  "timestamp": "2026-03-19T14:30:00.000Z"
}

Signature Verification

Payloads are signed with HMAC-SHA256 using the webhook secret. Verify the X-Convo-Signature header. The event type is in the X-Convo-Event header.
Node.js
const crypto = require('crypto');
const signature = crypto
  .createHmac('sha256', webhookSecret)
  .update(rawBody)
  .digest('hex');
const isValid = signature === req.headers['x-convo-signature'];

Delivery Behavior

  • Webhooks are delivered with a 10-second timeout. Your endpoint must respond within this window.
  • Delivery is fire-and-forget — failed deliveries are not retried. Design your endpoint to return 200 quickly and process data asynchronously if needed.
  • To update a webhook’s URL or events, delete the existing webhook and create a new one.

Managing Webhooks

Use the webhook endpoints in the API Reference tab to create, list, test, and delete webhooks. The webhook secret for HMAC verification is returned once on creation — store it securely.