Skip to content

Webhooks

Neverline can broadcast JSON payloads to external services when specific queue events occur.

Configuration

Manage webhooks in Settings → Integrations in the admin dashboard. Each webhook requires:

  • URL — the endpoint to receive webhook payloads
  • Events — which events to listen for

Events

EventDescription
session.createdCustomer joins a queue
session.calledStaff calls a customer
session.completedService marked complete
session.no_showCustomer didn't show up
session.requeuedCustomer sent back to queue
session.awayCustomer entered away mode
session.away_expiredAway timer expired
session.lateCustomer marked as running late
session.late_expiredLate grace period expired
session.jumpedCustomer accepted a queue jump
chat.message_sentNew chat message in a thread

Payload

All webhooks send POST requests with JSON body:

json
{
  "event": "session.called",
  "timestamp": "2025-01-15T10:30:00Z",
  "data": {
    "sessionId": "uuid",
    "queueId": "uuid",
    "queueName": "General Services",
    "position": 3,
    "customerName": "John",
    "customerToken": "token"
  }
}

Retry Policy

Failed deliveries (non-2xx response) are retried up to 3 times with exponential backoff.

Security

Webhook payloads include an X-Neverline-Signature header for payload verification. The signature is an HMAC-SHA256 hash of the request body using your webhook secret.