> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deal-pipe.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Receive webhooks

> Verify event notifications and handle repeat delivery.

## Configure a webhook

Open **Settings → Webhooks**. Enter a public HTTPS destination, select events, and store the secret for signature verification. Inspect deliveries in the provided history.

Currently wired processes emit `client.created`, `client.stage_changed`, `pipeline.deal_stage_changed`, `pipeline.deal_won`, and `pipeline.deal_lost`. The settings event picker contains additional names; this does not guarantee that every product process already emits a corresponding event. In particular, this is not a complete property change feed.

## Verify the request

Deliveries contain `x-dealpipe-event`, `x-dealpipe-delivery`, and `x-dealpipe-signature`. The signature is a hexadecimal HMAC-SHA256 of the unchanged request body using your webhook secret.

```json theme={null}
{
  "event": "pipeline.deal_won",
  "data": {
    "dealId": "example-deal-id",
    "clientId": "example-client-id"
  }
}
```

Compute and compare the signature before processing. Store successfully processed delivery IDs and handle repeated deliveries without duplicate effects. The signature has no signed timestamp; the delivery ID helps identify messages already processed.

## Responses and retries

Return a `2xx` status after accepting the message reliably. Unsuccessful deliveries are retried for up to six total attempts. Intended delays are 1, 5, 30, 240, and 1440 minutes; actual execution depends on the delivery job. Redirects are not followed. Disabled destinations receive no further deliveries.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.