Webhooks
Webhook integration

Pipedrive Webhooks: Send CRM Events to Sazabi

By Sazabi Team

Webhook facts checked on the platform’s docs on Nov 8, 2026.

Pipedrive can call a URL each time a deal, person, organization, activity or other CRM object is created, changed or deleted. Pointing those calls at Sazabi gives you a log of CRM changes that you can search next to your own service logs.

What Pipedrive sends

A webhook subscribes to an event, which combines two values: event_action and event_object. The actions are create, change and delete, with * as a wildcard. The objects include activity, deal, deal_installment, deal_product, lead, note, organization, person, pipeline, product, stage and user, plus projects objects such as board, phase, project and task. So create.deal fires for new deals, delete.person for deleted people and *.* for everything.

Webhooks v2 is the default for new webhooks created through the API since March 17, 2025. The v2 body is JSON with three parts. The meta block describes the event, with fields such as action, entity, entity_id, company_id, timestamp, webhook_id, change_source and attempt. The data block holds the object as of the update. The previous block holds the earlier values of fields that changed.

Why send Pipedrive webhooks to Sazabi

CRM data feeds other systems: billing, onboarding, enrichment, Slack alerts. When one of them is wrong, the first question is whether Pipedrive changed the record and when. A log record per event answers that without opening the audit trail in the app.

Sazabi's Webhook Events source stores each JSON payload as a record with the payload under webhook.* attributes. Search for a deal ID or a meta field and read the matching events in order. Adding a path suffix such as /pipedrive to the intake URL stores it as webhook.path.

Since attempt is part of meta, retried deliveries are also visible in the records.

Set up Pipedrive webhooks

Copy your intake URL from the Webhook Events source and keep it secret. Pipedrive has two routes.

In the web app. Go to Settings, then Tools and apps, then Webhooks. Create a new webhook with the intake URL and an event. Regular users can manage webhooks within their own permission level, and admins can manage them for the whole company.

With the API. Send POST /v1/webhooks:

{
  "subscription_url": "<your intake URL>/pipedrive",
  "event_action": "create",
  "event_object": "deal",
  "version": "2.0",
  "name": "Deals to Sazabi"
}

Two rules apply to the URL. It must be publicly accessible, and it must not redirect to another link. A webhook is only sent if the user it is authorized as can see the object. To receive everything, use the user_id of a top-level admin. The HTTP basic auth fields are optional and Sazabi needs no authentication headers from the sender.

The docs do not describe a test button. Create or edit a deal and check that the record appears in Sazabi.

Example Pipedrive payload

This example follows the v2 format in the Pipedrive guide for a created deal. Values are illustrative.

{
  "meta": {
    "action": "create",
    "entity": "deal",
    "entity_id": "123",
    "company_id": "456",
    "timestamp": "2023-01-01T00:00:00.000Z",
    "webhook_id": "789",
    "change_source": "app",
    "attempt": 1
  },
  "data": { "id": 123, "title": "Acme renewal", "status": "open" },
  "previous": null
}

What to watch for

  • Retries. Pipedrive accepts any 2xx as success. After a failure or a 10 second timeout it tries 3 more times, after 3, 30 and 150 seconds. If all fail, it counts as one unsuccessful delivery.
  • The ban system. Each failed first attempt adds one to a ban counter. At 10 the webhook is banned for 30 minutes. The docs say event messages during a ban are lost, with no data saved for retries. A dip in record volume can mean this.
  • Deletion. With no successful delivery on 3 consecutive days, Pipedrive deletes the webhook. If the CRM looks quiet, confirm the webhook still exists.
  • Dashboard status. Tools and integrations, then Webhooks, shows the status of the last attempt. A 500 means a server error, and Error means a timeout, a block or a problem on Pipedrive's side.
  • Authentication. Pipedrive's docs describe HTTP basic auth for the endpoint, not a signature. Sazabi needs no authentication headers from the sender.

See also the ClickUp and Zendesk guides. Other sources are listed on the integrations page, with plans on pricing.

Pipedrive webhook facts

Signatures: Sazabi doesn’t verify Pipedrive requests and doesn’t reject unsigned ones. Pipedrive protects webhooks with HTTP basic auth, not a signature, and the intake URL needs no authentication headers. The Webhook Events source accepts any JSON POST to your intake URL, so the intake URL is the only credential. It’s hard to guess, so keep it private, and rotate the project’s public key if it leaks.

  • Events: An event combines event_action (create, change, delete or *) with event_object, such as create.deal for newly added deals. (Pipedrive docs, accessed Nov 8, 2026)
  • Payload: Webhooks v2 deliver JSON with a meta block, a data block holding the object as of the update and a previous block holding changed fields. (Pipedrive docs, accessed Nov 8, 2026)
  • Signing: The create-webhook API accepts http_auth_user and http_auth_password, which Pipedrive uses as HTTP basic auth against your subscription URL when it is required. (Pipedrive docs, accessed Nov 8, 2026)
  • Retries: After a failed first attempt Pipedrive retries 3 more times, after 3, 30 and 150 seconds, and deletes a webhook with no successful delivery on 3 consecutive days. (Pipedrive docs, accessed Nov 8, 2026)

Frequently Asked Questions

Where do I create a Pipedrive webhook?

In the web app under Settings, Tools and apps, then Webhooks. You can also call POST /v1/webhooks with a subscription URL, an event action and an event object.

Which Pipedrive webhook version should I use?

Version 2. It has been the default for webhooks created through the API since March 17, 2025, and the docs describe it as more reliable than version 1.

What does the previous block contain?

The values of the fields that changed, as they were before the update. For create events it is null, and for delete events data is null and previous holds the last state.

Can Pipedrive lose a webhook event?

Yes, in one case. If a webhook is banned after 10 first-attempt failures, its event messages during the 30 minute ban are lost and not saved for retries.

Does Sazabi verify Pipedrive signatures?

No. Pipedrive protects webhooks with HTTP basic auth, not a signature, and the intake URL needs no authentication headers. Sazabi doesn’t reject unsigned requests, so keep the intake URL private: it’s the only credential.

Sources

  1. Creating webhooks in the web app or API, v2 format, supported actions and objects, status codes, retry logic and the ban policy (accessed Nov 8, 2026)
  2. Create webhook endpoint, subscription_url rules, event_action and event_object values, HTTP basic auth fields, v2 default (accessed Nov 8, 2026)
  3. Webhooks v2 is the default version for new API-created webhooks from March 17, 2025 (accessed Nov 8, 2026)
  4. Webhooks v2 is described as more reliable than v1, with no more duplicate or missing webhooks expected (accessed Nov 8, 2026)
  5. Webhooks are set up under Tools and apps and then Webhooks (accessed Nov 8, 2026)
  6. Webhook Events log source: JSON only, payload under webhook.* attributes, path suffix stored as webhook.path; signature verification with the Standard Webhooks and Custom HMAC options, and rejected deliveries (accessed Nov 8, 2026)