Freshdesk Merge Tickets
Searches for open tickets from a contact and merges them into the oldest matching ticket. Useful for consolidating duplicate tickets created by the same requester.
What it does
- Searches for open tickets by requester email within a configurable time window.
- Filters results by required/excluded tags and whether an agent has already responded.
- Tags each qualifying ticket with
dg-merged. - Calls the Freshdesk Merge API to combine all qualifying tickets into the oldest one (primary ticket).
Notes
- Requires at least two tickets after filtering; otherwise the merge is skipped.
- The oldest ticket (by
created_at) becomes the primary. All others are merged into it and closed. - Conversations from secondary tickets are moved into the primary ticket chronologically.
Inputs
| Name | Type | Description |
|---|---|---|
| Domain | Credentials | Freshdesk subdomain |
| Key | Credentials (sensitive) | Freshdesk API key |
| String | Requester email to search tickets for | |
| Include Tags | List | Tags that all candidate tickets must have |
| Exclude Tags | List | Tags that disqualify a ticket from merging |
| Check for Assigned | Boolean | When true, also excludes tickets already assigned to an agent |
| Time Unit | String | Unit for the lookback window (minutes, hours, or days) |
| Number of Units | Number | How far back to look for updated tickets |
Outputs
| Name | Type | Description |
|---|---|---|
| Success | Boolean | Whether the merge was performed |
| Message | String | Descriptive result (e.g. number of tickets merged or reason for skipping) |