# Webhooks

> Receive inbound messages and real-time delivery, call, campaign, form, fax, and user events.

Pinnacle sends HTTPS webhooks when messages arrive or the state of a resource changes. Choose an event family to inspect its payload schema and examples.

  ### [Call events](/webhooks/call-events)
    Track voice call lifecycle changes for phone-number subscribers.
  
  ### [Message events](/webhooks/message-events)
    Process inbound messages and message delivery updates.
  
  ### [Campaign events](/webhooks/campaign-events)
    Track campaign registration and status changes.
  
  ### [User events](/webhooks/user-events)
    Respond to account and user lifecycle changes.
  
  ### [Form events](/webhooks/form-events)
    Handle submitted form data in real time.
  
  ### [Fax events](/webhooks/fax-events)
    Receive fax processing and delivery events.
  
  ### [Receiving guide](/guides/messages/receiving)
    Implement and test your webhook receiver end to end.
  

## Build a reliable receiver

- Authenticate and validate every incoming request before processing it.
- Return a successful response quickly, then perform slow work asynchronously.
- Make handlers idempotent so retries never duplicate customer-visible effects.
- Record event identifiers and processing outcomes for operational debugging.
