Zendesk Integration Explained

Webhooks in Zendesk are a powerful way to send real-time data to external systems when specific events occur. This allows you to build custom workflows and integrations.

Sep 1, 2024

Introduction

Webhooks in Zendesk are a powerful way to send real-time data to external systems when specific events occur. This allows you to build custom workflows and integrations.
Common use cases include:
  • Sending a ticket submission confirmation to your customers via a messaging app.
  • Alerting your teammates in a chat channel when a new high-priority ticket is created.
  • Logging ticket details in a data warehouse for long-term storage and analysis.
💡 Two Ways to Use Webhooks
Zendesk webhooks can be configured in two main scenarios:
  1. Event Subscription: Trigger a webhook based on a standard Zendesk event (e.g., an article is created).
  1. Trigger or Automation Connection: Trigger a webhook as an action within a custom-built trigger or automation.

⚙️ Creating a Webhook in Zendesk

This process outlines how to define a new webhook within the Zendesk Admin Center.
  1. In Admin Center, navigate to Apps and integrations > Webhooks > Webhooks.
  1. Click Create webhook.
  1. Choose how you want to use the webhook. Select Zendesk events to subscribe to one or more standard events, or select Trigger or automation if you plan to connect it to a custom rule.
  1. Click Next.
  1. Fill in the configuration details:
      • Name & Description: Give the webhook an easily identifiable name and a brief description.
      • Endpoint URL: Enter the destination URL from the external system that will receive the data.
      • Request method: Choose between POST, PUT, or PATCH.
      • Request format: Select JSON, XML, or Form-encoded.
      • Authentication: Select the required authentication method, such as API Key, Basic Authentication, or Bearer Token. Choose "none" if your authentication details are in the URL's query parameters.
  1. (Optional) Click Add header to include a custom header, providing a Header name and Value. This is useful for passing validation tokens or other required information.
  1. (Optional) Click Test webhook to perform an initial check and ensure your endpoint is reachable.
  1. Click Create webhook to save the configuration.
❗ For Trigger/Automation Webhooks
If you're creating a webhook for a trigger or automation, you must first connect it to that specific rule. After doing so, return to the webhook setup page and click Finish setup to complete the process.

🧪 Testing an Existing Webhook

You can test any webhook at any time to verify its connection and payload.
  1. In Admin Center, go to Apps and integrations > Webhooks > Webhooks.
  1. Find the webhook you want to test and click the options menu icon (⋮) on its row.
  1. Select Test webhook.
  1. In the panel that appears, select a sample event to test with.
  1. Enter any required test details, such as a sample request body, parameters, or headers.
  1. Click Send test. The response from your endpoint will appear directly in the panel.

❗ Key Policies and Notes

  • Execution Order: Webhook jobs run independently, so there is no guarantee that they will be executed in a specific order.
  • Automatic Retries: Zendesk will automatically retry sending a webhook up to three times if the endpoint returns an unsuccessful HTTP response code.
  • Circuit Breaker: While failed requests won't immediately deactivate a webhook, repeated failures could trigger the webhook circuit breaker, temporarily halting delivery.

📚 References