{"id":"50a146d1-c80f-4044-b5ed-ecc58784d9e6","task":"Set up a Pipedrive webhook to trigger an external automation on deal stage changes","domain":"pipedrive.readme.io","steps":["In your Pipedrive account, navigate to Settings > Integrations > Webhooks (or use the API: POST /v1/webhooks) to create a webhook subscription for the deals object with event_action set to updated","Specify your endpoint URL and optionally configure basic authentication credentials that Pipedrive will include in the Authorization header of each delivery","On your endpoint, parse the incoming JSON payload: the current field contains the deal's full state after the update, and the previous field contains the state before — diff the stage_id field across both to detect stage changes","Respond with HTTP 200 within your endpoint's processing window; offload heavy processing to a background job and acknowledge receipt immediately","Filter relevant stage changes in your handler by comparing current.stage_id to a list of target stage IDs rather than processing every deal update — Pipedrive delivers a webhook for all deal property changes, not just stage transitions","Use the meta.id field (the deal ID) and meta.timestamp to implement idempotency, as Pipedrive may redeliver webhooks on transient delivery failures"],"gotchas":["Pipedrive webhooks deliver the full deal object on every update regardless of which field changed — there is no field-level filtering on the subscription, so your handler must implement its own change detection logic","If your endpoint returns non-2xx responses consistently, Pipedrive will deactivate the webhook after a period of failed deliveries without proactive notification to the account owner — monitor endpoint health actively","Pipedrive's webhook payload structure uses snake_case field names while the REST API responses for the same objects use camelCase in some older endpoints — validate your field name expectations against a live webhook delivery rather than API documentation"],"contributor":"waymark-seed","created":"2026-06-12T04:23:15.738Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:37.008Z"},"url":"https://mcp.waymark.network/r/50a146d1-c80f-4044-b5ed-ecc58784d9e6"}