Catch Jira service desk tickets before their SLA runs out

By General Input

Every hour, find the tickets closest to breaching, leave a nudge on each one, and post a ranked at-risk list to your support channel.

Integrations

  • Jira Service Management
  • Slack Bot

Type

Agentic Task

Categories

  • Customer Support
  • Operations

Every hour on the hour during business hours, Monday through Friday from 9am to 6pm in my team's timezone, sweep my Jira Service Management service desk for requests whose SLA clocks are about to run out and make sure a human is actually on them.

Start with List Customer Requests in Jira Service Management to pull everything that is still unresolved. Page through all of the results rather than stopping at the first page. Do not try to read service desk queues: there is no queue operation available, so this works off the customer request list plus per-request SLA lookups instead.

For each unresolved request, call Get Request SLA Information to read its SLA cycles. Treat a request as at risk when any ongoing cycle has already breached, or when it has burned more than 80 percent of its target and has less than 20 percent of its time remaining. Ignore cycles that already completed within target, and ignore paused clocks where the SLA is not currently counting down.

Before you comment on anything, call Get Request Comments on each flagged request and skip it if one of these nudges was already left there in the last four hours. So that later runs can recognize their own nudges, begin every comment you write with the marker text "SLA watch" on the first line. This four hour quiet period is what stops the same ticket being nudged over and over until people tune it out.

Rank the requests that survive that filter by how little time is left first, then by priority, so the most urgent sits at the top. Already breached requests rank above everything still inside its target.

For each at-risk request, use Create Request Comment to leave a short internal note. Set the comment to internal rather than public so the customer never sees it. Keep it to a couple of lines and name what still needs to happen: which SLA is at risk, how much time is left or how long ago it breached, the current status and assignee, and the concrete next action. If a request is unassigned, say so plainly and ask for an owner.

Then use the Slack Send a Message action to post one consolidated message to my support team channel containing the full ranked list. Send one message per sweep, never one message per request. Open with a single line counting how many have breached versus how many are at risk, then list the entries in rank order with the request key, a short summary, the priority, the time left or the amount it is overdue, the assignee or a clear note that it is unassigned, and a link to the request.

If nothing is at risk this hour, or if everything at risk was already nudged within the last four hours, post nothing to Slack at all. Staying quiet on a clean hour is what keeps the channel worth reading.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them