Workflow: How to prevent agents from reassigning tickets to other agents

Use triggers to prevent ticket reassignment between agents. Follow these steps:

Expand all tabs



document.addEventListener('DOMContentLoaded', function () {
const toggleBtn = document.getElementById('master-toggle');

toggleBtn.addEventListener('click', function () {
const action = this.getAttribute('data-action');
const headers = document.querySelectorAll('.accordion');

headers.forEach(header => {
const isActive = header.classList.contains('active');
const panel = header.nextElementSibling; // Grabs the corresponding .panel container

if (action === 'expand' && !isActive) {
// Open it by simulating a standard click
header.click();
} else if (action === 'collapse' && isActive) {
// Close it by simulating a standard click
header.click();
}
});

// Flip button text and states
if (action === 'expand') {
this.setAttribute('data-action', 'collapse');
this.textContent = 'Collapse all tabs';
} else {
this.setAttribute('data-action', 'expand');
this.textContent = 'Expand all tabs';
}
});
});
To create the trigger:
Open Admin Center and navigate to Objects and Rules > Business Rules > Triggers. Create a new trigger.
Enter a title for the trigger and select a ticket category

Under Meet ALL of the following conditions, add these conditions: Object > Ticket > Ticket | Is | Updated and Object > Ticket > Assignee | Changed from | (current user)

Add these actions: Object > Ticket > Assignee | Is | (current user) and Ticket > Internal note. In the internal note, include information for the agent about the proper way to reassign a ticket, such as with macros.
Click Create trigger

Understand trigger recursion prevention
Does this trigger create an infinite loop?
No, because the trigger engine in Zendesk includes built-in recursion prevention that stops repeated trigger execution on updates. When this trigger reassigns the ticket back to the original agent, that assignment change doesn't trigger the same trigger.
Keep these points in mind:

Other triggers that fire on assignment changes still run
Third-party integrations or webhooks create additional updates
Test complex trigger chains thoroughly

To test the trigger:
Test the trigger in the Zendesk Agent Workspace to confirm it works when an agent attempts to reassign a ticket. Check the ticket events to see if the trigger fired.

