What this workflow does
This workflow automatically connects Zendesk tickets with GitHub issues. It solves the problem of manually copying ticket details into GitHub and prevents duplicate issues. The result is faster updates for engineering teams and better tracking of user requests.
When a new Zendesk ticket is made, this system either creates a new GitHub issue or updates an existing one. It adds comments from Zendesk to GitHub and writes the issue number back to Zendesk for future reference.
Who should use this workflow
This workflow is useful for teams that handle customer support in Zendesk and use GitHub to track bugs or features. It helps support agents who spend time copying tickets to GitHub or engineering teams that face duplicate or missing issues.
Users need basic knowledge of API keys and a Zendesk setup with a custom field for GitHub issue numbers. Also, they must have GitHub repo access to create and comment on issues.
Tools and services used
- n8n: The automation platform running the workflow.
- Zendesk API: To get ticket details and update tickets with GitHub issue info.
- GitHub API: To create issues and add comments on GitHub repositories.
Inputs, Processing, and Outputs
Inputs
- Webhook event with new Zendesk ticket data.
- Zendesk ticket ID from the webhook payload.
- Custom field in Zendesk that stores GitHub issue number (custom field ID: 6721726848029).
Processing steps
- The Webhook node receives a new ticket event from Zendesk.
- The Zendesk node fetches complete info about the ticket using the ticket ID from the webhook.
- A Function node reads custom fields to find if there is an existing GitHub issue number saved.
- An IF node checks if the GitHub issue number exists.
- If no issue number exists, a GitHub node creates a new issue using the Zendesk ticket subject as the issue title.
- If the issue number exists, a GitHub node adds a comment to that existing issue with the latest Zendesk ticket comment.
- After creating a new issue, a Zendesk node updates the Zendesk ticket by writing the new GitHub issue number into the custom field.
Outputs
- New or updated GitHub issue linked with the Zendesk ticket.
- Zendesk ticket updated with the GitHub issue number for future tracking.
- Automatic comments added from Zendesk tickets to GitHub issues.
Beginner step-by-step: How to use this workflow in n8n
1. Import the Workflow
- Download the workflow file using the Download button on this page.
- In the n8n editor, click on the menu and choose “Import from File”.
- Select the downloaded workflow file to import it.
2. Add Credentials and Update IDs
- Go to n8n Credentials and add your Zendesk API Key and GitHub API Key.
- In the Zendesk nodes, check the custom field ID for GitHub issue number matches your Zendesk setup. Update if needed.
- In the GitHub nodes, update the repository and owner names to your real GitHub repository.
3. Test the Workflow
- Use the webhook URL shown in the Webhook node and configure it in Zendesk to send new ticket events.
- Create a test ticket in Zendesk and watch the workflow run in n8n.
- Check if a new GitHub issue was created or updated and if the ticket has the issue number updated.
4. Activate the Workflow
- Once testing passes, click the toggle at the top right to activate the workflow for production use.
- Monitor runs occasionally using the n8n dashboard.
- For setup on your private server, see self-host n8n resources.
Customization ideas
- Change the GitHub repository and owner to match your project.
- Add labels or assignees in the GitHub issue creation node to assign issues automatically.
- Modify the comment content in the GitHub comment node to include ticket priority, requester info, or links.
Common failures and fixes
GitHub API authentication error
This happens if API keys are wrong or expired. Fix by updating GitHub API credentials in n8n.
Zendesk ticket update fails
Check if the custom field ID is correct and ensure the Zendesk API user has permission to update tickets.
Workflow does not trigger
Verify the webhook URL in Zendesk is set to POST and matches the exact webhook path in the Webhook node.
Duplicate GitHub issues created
Make sure the custom field is updated correctly after issue creation. Retry the workflow to sync properly.
Summary and results
✓ Saves about 30 minutes of manual work per ticket.
✓ Prevents duplicate GitHub issues.
✓ Keeps GitHub issues updated with Zendesk comments.
→ Enables clear communication between support and engineering teams.
→ Improves bug fixing and feature delivery speed.

