Automations can be a bit fickle at times, preventing you from creating a new automation with cryptic demands of nullifying a condition and saving the universe from an infinite loop. I would like to assure you, however, that your automation has your best interests in mind and is not just being passive aggressive because you forgot its birthday.
One of the most common issues people run in to when setting up an Automation is the error message "Automation must contain an action that nullifies a condition."
Oh the humanity!
This error message pops up even when you have created a perfectly logical automation that should work according to that big old head calculator of yours. The reason this message appears is because there is an extra layer of requirements around automations that you may not be aware of. Unlike triggers, which are only checked when a ticket is updated, automations check to see if their conditions are met every hour. Automations are so eager to please you that they work overtime, checking and firing on tickets even while you sleep. Especially when you sleep.
Because of these constant checks, the possibility of your inbox filling up with 18 copies of the same email notification is a constant fear that can make grown administrators cry. Like a blazing sword of justice, a requirement was added to new automations that an action must nullify one of the automation's conditions, forever banishing the threat of being spammed by your own creation.
Nullifying a condition with your action is fairly simple if you know what to do. You, of course, could follow the example in the error and look for a High priority ticket and then change the priority to urgent with your action, but where's the fun in that? Let's take this automation off-road.
The basic thing you need to understand about this requirement is that your automation should only fire once, without an end-user or agent taking additional actions on the ticket. If the logic of the automation means that it could fire multiple times without anyone noticing, that means it doesn't nullify a condition. The most common example that I see people using is Hours since Greater than instead of Hours since Is .
Let's look at an example.
This automation will not work.
The reason this automation does not work is because it's conditions will be met each and every time the automation checks a ticket that has been open longer than 4 hours. If you activate this automation, and the 4 hours passes at say, 6:00 pm on friday, you would have two and a half days of hourly notifications to sort through when you got back to work on Monday. Mondays are hard enough as it is.
Let's look at another example.
This automation will work.
This automation works because it fires only a single time after the ticket has been open for 4 hours. If this automation is active, and a ticket passes 4 hours at 6:00 pm on a Friday, your agent would receive a single notification telling them to get back to that requester--thus giving your agent more time to find new, exciting ways to procrastinate.
If you don't want to use the Is condition for automations because, for example, you have a backlog of tickets that have already reached the 4 hours mark, that's perfectly fine. You can use the Greater than condition as long as you have another condition, such as Priority Less than High (which includes tickets without a set priority) that can be nullified with an action that changes the Priority to High. Just remember the principle that an automation should only fire once if left alone.
Now we all know that automations are soul-less, conditional logic checkers--but even soul-less, conditional logic checkers don't want to get overworked. Follow the advice in this article and you can expect a great big bear hug from a soul-less, conditional logic checker's non-existent 0 and 1 encrusted arms.
12 Comments
Dear Brandon K.,
You sir, can write a help article. Generally help articles are tough to read through but this was informative and hilarious. You go Brandon K.!
Thanks!
Hey Jenna - Welcome to the Zendesk Community, and thanks for sharing the love!
Fantastic :P yep the article has been around for a while, but it's one of the least dry technical commentaries I have seen!
I would like an automation that sends a notice every 72 hours since an update.
So it could fire on the same ticket, but every 3 days.
I have it set to greater than 72 hours, with a priority less than high.
The priority will change to high then, so the ticket won't get included 72 hours later.
Is there a way around this?
EDIT: I should have read that a bit better. Apologies Dena, here's something a bit more specific.
If you want the update on a normal ticket to fire after 72 hours, then change the priority to high, but then ALSO to fire again if the ticket is still untouched within 72 hours, consider removing the priority condition from the Automation's requirements, but still keep the Action of setting priority to High and sending the notification.
If the ticket is already set to High, then all that would happen would be the notification is sent.
Thank you! I will give this a try.
I was trying to set up an automation and got this error.
I wanted to notify a requester with an e-mail if their ticket was pending for more than 36 hours.
I searched the error and understood I had to have an action that prevented the automation hitting a ticket with an endless loop. After creating the action to e-mail the requester, I added an action to update the ticket status to Solved (if they are not going to reply then I will consider it solved, and if they still won't reply before the ticket automatically closes, they're welcome to open a new one).
But for whatever reason, I kept getting the error. For the life of me I couldn't figure it out. I don't know what clicked inside my head, but I feel you guys left out one very important detail, the action nullifying the condition (update the ticket status to Solved) should go first, then all other actions afterward.
Cheers!
Thanks for sharing your discovery, Yunus! That is a good point. That part of the automation does need to go first.
Great article, but, I setup an automation to notify the assignee if there were no updates for x days using the hours since update IS x, all good so far, agents have said they find the notifications helpful but I presumed that the notification would reset the updated date (which it does, when it fires) so it would fire again after another x days but that doesn't seem to be the case and I am sure that I have some tickets that have got past x days and the automation didn't fire at all so no notification was sent? So to fix this I thought use greater than x hours instead so that if the automation misses one first time then it will catch it when it fires next time, once the notification fires the updated stamp will be reset, nullifying the condition and Bobs your Uncle, job done, no, it seems that updating the ticket when you filtering on the updated time is not classed as nullifying the condition, is this correct? Any ideas to get this working, I don't want to change anything in the ticket, although I did think maybe have 2 automatons one would add a tag when fired and another would delete the same tag when it fires and add a condition so tag must or must not be there appropriately, not tried this yet though and it seems a bit of a faff.
Hey Michael,
You're so close! One important note is that when the automation does fire it does not reset the time. So what you'll need to do is set up multiple automations that fire one after another once a time limit is reached.
Have you had a chance to review our Sending automated ticket reminders to customers support tip? This will walk you through step by step on how to create these automations to fire one after another once a the designated amount of time has passed.
Let me know if you run into any issues setting up the automations mentioned in the link I attached.
Cheers!
Hi Brett,
thanks for that, I've looked at the link, no I hadn't seen that one but have seen similar and it doesn't really answer my question as I just want to keep reminding the assignee every x days depending on the priority of the ticket, I don't want to set it to solved or anything else. I have tried creating two automation's for each timed notification I need, both exactly the same only the first one as well as the conditions I want has a condition of Tags, Contains none of the following, "bump" with an action to add the tag "bump", then the second is a clone of the first but with a condition that the "bump" tag exists and the action then deletes the "bump" tag, bit long winded but it has worked every 2 hours through the night so happy that this will work.
Cheers
Appreciate the update Michael!
If you run into any issues with the newly configured automation feel free to post back here :)
Please sign in to leave a comment.