Keep'emKeep'em
Embedding

Webhooks

Webhooks let Keep'em notify your systems when events occur. Instead of polling the API for updates, you receive HTTP POST requests at a URL you configure.

Available Events

EventDescription
viewer.registeredA viewer registered for an event
viewer.session_startedA viewer began a viewing session
viewer.completedA viewer reached the completion threshold
chat.escalatedA question was escalated to human support

Configuration

Configure webhook endpoints in your project settings. Provide a URL and select which events you want to receive.

Payload Format

All webhook payloads follow the same structure:

{
  "event": "viewer.completed",
  "timestamp": "2025-01-15T14:30:00Z",
  "data": {
    "eventId": "evt_abc123",
    "registrationId": "reg_def456",
    "externalId": "your_internal_user_id",
    "email": "viewer@example.com"
  }
}

The externalId field contains whatever identifier you provided when registering the viewer, making it easy to match webhook events to users in your system.

Retry Policy

If your endpoint returns a non-2xx status code, Keep'em retries the delivery with exponential backoff. After multiple failed attempts, the webhook is marked as failed and visible in your dashboard.