Delete Tickets
Test submissions, spam that got past your filters and duplicate tickets end up in the same inbox as real customers. Resolving them only changes their status. They stay in the ticket list and in search, and someone has to scroll past them every day.
Core Support lets the people you choose delete tickets for good, one at a time or several at once, after a confirmation that names what goes.
Administrators can delete tickets from the start. Anyone else on the team needs a tick under Settings → Tickets → Ticket deletion. Deleting can’t be undone.
Who Can Delete Tickets
Deleting is a separate permission from working tickets, because you can’t take it back.
- Administrators can always delete tickets.
- Support Agents and Support Managers can once someone ticks them under Ticket deletion.
- Only a Support Manager or administrator who can already delete tickets can change that list. A Support Manager without the permission sees the list but can’t change it.
The permission is the core_support_delete_tickets capability. Administrators have it through their role; everyone else gets it on their own account.
Choose Who Can Delete Tickets
- Go to Core Support → Settings → Tickets.
- Find the Ticket deletion card, below the ticket settings.
- Under Can delete tickets, tick each team member who should be able to delete. Administrators already show as ticked, with an Administrator badge, and can’t be unticked.
- Choose Save.
The list shows everyone who can work tickets, up to 200 people, with their name and email address. Removing a tick takes the permission away as soon as you save.
It is wise to keep this list short. I’d give it to the one or two people who clean up tests and spam, and let everyone else resolve tickets instead.
Delete One Ticket
- Open the ticket in the agent workspace.
- Choose Delete ticket at the top, beside Reload conversation.
- Read the confirmation, such as “Delete ticket #42?”, and choose Delete permanently.
Choosing Cancel, pressing Escape or clicking outside the dialog keeps the ticket. After deleting, the workspace goes back to the ticket list and shows “Ticket deleted.”
The Delete ticket button, and the checkboxes in the ticket list, show only to people who can delete tickets.
Delete Several Tickets at Once
- In the ticket list, tick the box beside each ticket you want to delete. The box at the top of the list ticks every ticket on the current page.
- The bar above the list shows how many are selected. Choose Delete.
- Confirm “Delete 3 tickets?” with Delete permanently.
The notice then says how many tickets were deleted. To clear out a batch of tests, filter or search the list first so the page holds only those tickets, then tick the box at the top.
What Deleting Removes
The confirmation names the main things. For each ticket, Core Support removes:
- the ticket itself
- every message and private note
- its attachments, including images added to replies and files kept in R2, S3 or Bunny
- the emails it was created from or received, with their attachments and the saved copy of each original email
- its email notifications, both the queue and the delivery history
- the reply addresses that let the customer answer by email, so a later reply to an old email can’t be matched to it
- its links to the customer’s orders, so their Orders card no longer lists it
A few related things stay, changed so nothing points at a ticket that is gone:
- A chat conversation that was handed over to the ticket stays in Chat, without its link to the ticket.
- Email held for review as a reply to the ticket opens a new ticket if someone accepts it. A reply that arrived but wasn’t processed yet opens a new ticket on its own.
- Drafts you had started on that ticket in your browser are cleared.
There is no trash and no undo.
Each ticket is deleted on its own. If one can’t be deleted, nothing of that ticket is removed and the workspace says why, usually “The ticket could not be deleted. Nothing was removed.” In a batch, the tickets before it stay deleted and the ones after it are left alone; reload the list to see which are left.
Files are removed after the records. If a storage bucket can’t be reached at that moment, the ticket is still deleted and the file stays in the bucket with nothing pointing at it.
Delete or Erase Personal Data
Deleting is for tickets that should never have been there: tests, spam and duplicates. It removes your team’s replies along with everything else.
When a customer asks you to remove their data, Tools → Erase Personal Data is usually the better tool. It removes the customer’s name, address and subjects and their own messages and attachments, and keeps your team’s replies so the history still reads. The data and privacy guide explains what it covers.
Delete Tickets with the REST API
Two routes delete tickets. Both need a signed-in member of the site with the core_support_work_tickets and core_support_delete_tickets capabilities:
DELETE /wp-json/core-support/v1/tickets/{id}deletes one ticket.POST /wp-json/core-support/v1/tickets/deletewith a body such as{"ids": [12, 13]}deletes up to 100 tickets at once.
Both answer with the number of tickets that were deleted, such as {"deleted": 2}. An ID that doesn’t exist, or was already deleted, is skipped and not counted, so a single delete of a missing ticket answers {"deleted": 0}. Repeated and invalid IDs are dropped before the 100 are counted.
These are the errors to handle:
401withnot_authenticated: nobody is signed in.403withforbidden: the user can’t delete tickets, or isn’t a member of the site.422withinvalid_selection: the request named no tickets, or more than 100.503withstorage_errororstorage_unavailable: the database refused the change. Nothing of that ticket was removed, so the request can be repeated.
The core_support_ticket_deleted action fires after each ticket is gone, with the ticket ID and the ID of the user who deleted it. Undoing an import fires it too, with user ID 0. It is the place to clear any copy of the ticket you keep in another system. The REST API reference covers authentication and the other routes.
Good to Know
- Deleting a ticket doesn’t send the customer anything.
- Resolving is still the right choice for a real conversation that is finished. A resolved ticket keeps its history for the next time the customer writes.
- The roles guide explains the Support Agent and Support Manager roles.