We have a custom webhook configured in Zendesk Sell 2021 to trigger when lead status changes to ‘Qualified’. The webhook fires correctly when our sales team updates lead status through the UI, but completely fails when we update the same leads programmatically via REST API.
Our integration uses PATCH requests to update lead status:
PATCH /v2/leads/12345
{
"data": {
"status": "qualified"
}
}
The API returns 200 OK and the lead status updates successfully in Zendesk, but our webhook endpoint never receives the notification. We’ve verified webhook configuration is active and the endpoint URL is correct. Is there different event handling for API updates versus UI updates? Do we need additional parameters in the PATCH payload to trigger custom events?
Thanks for the pointer. I checked our webhook configuration and don’t see any event source filters - just the standard ‘lead.status_changed’ event type selected. Is this a setting that’s only available in newer versions? We’re running Zendesk Sell 2021. The documentation mentions event triggers but doesn’t clearly distinguish between UI and API sources.
The trigger_events approach works, but be careful with it. We implemented this in our pipeline and initially had issues because the parameter needs to be at the root level of the request body, not nested inside the data object. Also worth noting that enabling trigger_events for API updates will fire ALL configured webhooks for that entity type, not just status change events. We ended up creating separate webhook endpoints for API-initiated events versus user-initiated events to handle the different processing requirements. Monitor your webhook delivery logs closely after enabling this - we saw a 3x increase in webhook traffic initially.
That’s really helpful context. So if I understand correctly, the parameter structure should be trigger_events as a sibling to the data object, not inside it? Can you confirm the exact payload structure that worked for you?