Skip to content

Hourly

Get warned when tickets go past due

Each hour, tickets past their due date reach Slack, each one only once.

Runs
Hourly
Apps
Zoho Desk
AI
Not needed
Access
Desk.tickets.READ

Send this to your assistant

Create a ClickRuntime automation: every hour, post Zoho Desk tickets that are past their due date to #desk-leads in Slack with the owner and a link.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Each Zoho Desk ticket has a due date, calculated from your business hours and SLA settings. A ticket assigned to Maya is due at 5 p.m. Wednesday and Maya is out sick, so it sails past. Desk will color the ticket red, but only someone who is looking at the list sees it. Customers then wait beyond the promised time, and the first they hear of it is their own follow-up email.

Hourly, open tickets are listed from Zoho Desk and each ticket's due date is compared with the current time. Any past due are posted to Slack with the subject, assignee and how long they are overdue. Each ticket is posted once, so a long-overdue case does not flood the channel every hour.

Suited to support leads who are responsible for meeting response commitments.

What you get out of it

  • Missed commitments are noticed fast

    A ticket that passes its due date shows up in the channel within the hour. The customer is contacted before they have to chase, which turns a failure into an apology that arrives on time.

  • Absences do not hide problems

    When an assignee is away, their overdue tickets still appear in the shared channel. A teammate steps in without being asked, and a day of absence does not become a day of silence for customers.

  • Escalation has a clear trigger

    An overdue post becomes the point at which a lead steps in. Everyone knows what the signal means, so escalation is a habit, not a conversation about whose job it is.

  • Patterns in lateness become visible

    If tickets keep going overdue on Friday afternoons, the channel history shows it. Staffing or process can be fixed, and the fix is backed by dated examples. Everyone then knows when to step in.

  • Service-level reporting is easier

    A record of overdue alerts supports monthly service reviews. You can show how many tickets slipped and what you did about each, which is stronger than general reassurance. Dated alerts also help you coach.

  • Less reliance on color coding

    Zoho Desk marks overdue tickets visually, but only for people who are looking at the list. A message reaches people who are busy elsewhere. Colors alone get overlooked in a busy list.

How it works

What happens, step by step

  1. Every hour ClickRuntime checks your open Zoho Desk tickets against their due date.

  2. It picks out the ones now past due and skips any it has already flagged.

  3. The list goes to your #desk-leads Slack channel with each ticket's number, subject, assigned agent and a link.

Before it runs live

  • Connect Zoho Desk

What you get

RunsHourly
Get warned when tickets go past duetoday, 9:00Succeeded
Slack · #desk-leadsOverdue tickets: #20377 Refund for duplicate charge · Priya

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Slack
  • Combine it with other Zoho Desk steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
overdue_ticket_alert.pyexample
from datetime import datetime, timezone
from clickruntime import on_trigger, credentials, http, state, notify, report_fetched

ORG_ID = "712345678"
BASE = "https://desk.zoho.com/api/v1"

@on_trigger
def run(event):
    h = {"Authorization": f"Zoho-oauthtoken {credentials.connection('zoho', 'work')}", "orgId": ORG_ID}
    tickets = http.get(f"{BASE}/tickets", params={"status": "Open", "limit": 100, "include": "assignee"},
                       headers=h).json()["data"]
    now = datetime.now(timezone.utc)
    alerted = set(state.get("alerted") or [])
    overdue = [t for t in tickets if t.get("dueDate") and t["id"] not in alerted
               and datetime.fromisoformat(t["dueDate"].replace("Z", "+00:00")) < now]
    report_fetched(len(overdue))
    if not overdue:
        return {"summary": "Nothing new"}
    lines = [f"#{t['ticketNumber']} {t['subject']} · {(t.get('assignee') or {}).get('firstName', 'Unassigned')}\n{t['webUrl']}"
             for t in overdue]
    notify.slack("Overdue tickets:\n" + "\n".join(lines), channel="#desk-leads")
    state.set("alerted", list(alerted | {t["id"] for t in overdue})[-1000:])
    return {"overdue": len(overdue)}

FAQ

Common questions

Where does the due date come from?
The due date is a field on the Zoho Desk ticket, often set by SLA or business-hour rules. The automation reads that field. Tickets with no due date are not flagged as overdue. The due date comes from the ticket field in Zoho Desk.
Why is each overdue ticket posted only once?
Posting every hour for a ticket that stays overdue would create noise and train people to ignore the channel. Once is enough to start action, and the ticket link brings people back to it. Tickets without a due date are not flagged.
Does it ignore tickets on hold?
Tickets in an on-hold status can be excluded, since the clock is often paused for them. Include that status condition in the filter if your team uses on hold to wait for customers. Tickets on hold can be excluded with a status condition.
What permissions does it need?
Desk.tickets.READ. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Get warned when tickets go past due” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.