This article explains how to use a Zendesk trigger and webhook together with HappyFox Workflows to automate a multi-step process that Zendesk cannot run on its own — using automatic escalation of repeatedly reopened tickets as a worked example.
Applicable Plans: Available on all plans.
Why this needs a Zendesk trigger and a webhook
Zendesk has no native trigger inside HappyFox Workflows — it is an actions-only integration. This means a HappyFox workflow can never start directly from a Zendesk event. Instead, Zendesk has to notify HappyFox Workflows itself, using its own native trigger and webhook feature, and the resulting workflow then acts back on the Zendesk ticket using the available Zendesk actions.
Note: Zendesk detects the event, and HappyFox Workflows runs the multi-step, cross-app, or counter-based logic that Zendesk's own triggers and automations cannot.
Prerequisites
- Your Zendesk account is already connected to HappyFox Workflows. See Integrating Zendesk with HappyFox Workflows.
- Your Zendesk plan supports triggers and webhooks — on Zendesk Suite plans this means Team, Growth, Professional, Enterprise, or Enterprise Plus; on standalone Support plans this means Team, Professional, or Enterprise.
- You have admin access in both Zendesk and HappyFox Workflows.
- A custom ticket field exists in Zendesk to store the reopen count. Any number or text field works.
Step 1: Create the workflow and get a webhook URL in HappyFox Workflows
- Log in to HappyFox Workflows and click Create Workflow.
- Select Catch Webhook as the trigger.
- Copy the webhook URL that HappyFox Workflows generates for this trigger. You need this URL in the next step.
Step 2: Create a Zendesk trigger to send ticket data to the webhook
- In Zendesk Admin Center, navigate to Apps and integrations > Webhooks.
- Click Create webhook.
- Select Trigger or Automation as the connection method.
- Paste the webhook URL you copied from HappyFox Workflows into the Endpoint URL field.
- Set the Request format to JSON.
Warning: The payload sent to HappyFox Workflows must be valid JSON. If the payload is malformed or sent in a different format, the Catch Webhook trigger does not fire and the workflow never runs.
- Save the webhook.
- Navigate to Objects and rules > Business rules > Triggers.
- Click Add trigger.
- Set the trigger conditions to Status category | Changed from | Solved. This is the standard condition Zendesk uses to detect a ticket moving back to Open from Solved.
Note: If your account doesn't have custom ticket statuses activated, use the Status condition instead of Status category — the two are equivalent, but only one appears depending on your account's configuration.
- Under Actions, click Add action. Select Notify webhook, then select the webhook you created in step 9.
- In the JSON payload field, include the ticket ID and the current value of your reopen-count custom field, formatted as JSON.
- Save the trigger.
Step 3: Test the trigger
- Create a test ticket in Zendesk, mark it Solved, then reopen it to fire the trigger you just built.
- In HappyFox Workflows, open Run History for this workflow and confirm the run shows the payload you configured in step 14.
Note: If the workflow does not appear in Run History, recheck that the webhook's request format is set to JSON and that the trigger conditions in step 12 match the test ticket's status change.
Step 4: Track the reopen count and escalate in HappyFox Workflows
- Add a Perform Math Operations action to add 1 to the reopen count value received in the webhook payload.
- Add a Set Ticket Fields action to write the updated count back to the Zendesk ticket's custom field.
- Add a condition to check whether the updated count has reached your escalation threshold — for example, 3 reopens.
- Under the condition, add an Add Internal Note action to flag the ticket for a team lead, and a Set Ticket Fields action to raise the ticket's priority.
- Enable the workflow.
Note: The reopen count is tracked entirely on the HappyFox Workflows side. Zendesk does not expose a native "times reopened" value, so the custom field and the Perform Math Operations action are what maintain the count across reopens.
Other scenarios you can build this way
The same trigger-and-webhook pattern supports other multi-step Zendesk scenarios:
- Approval before closing a ticket: See How to Set Up an Approval Workflow in HappyFox Workflows for the approval mechanics — the Zendesk-side piece is the same webhook setup shown in Step 2, configured to fire when an agent attempts to close a ticket.
- Skills-based ticket routing: How to Automate Skills-Based or Round-Robin Ticket Assignment — the Zendesk-side piece again reuses the webhook setup in Step 2, configured to fire on ticket creation.
Your Zendesk workflow now escalates tickets automatically after repeated reopens.