Catch helpdesk tickets going stale before customers chase you

By General Input

Twice every weekday, your team gets one Slack message listing the Re:amaze conversations that have been waiting too long.

Integrations

  • Re:amaze
  • Slack Bot

Type

Deterministic Code

Categories

  • Customer Support
  • Operations

Every weekday at 8am and again at 2pm, check my Re:amaze helpdesk for conversations that have been waiting too long and post one summary to Slack. The goal is to catch tickets that are slipping through the cracks before a customer has to complain a second time.

Use the Re:amaze List Conversations operation to pull every conversation that is still in an open or unassigned state. This list is paginated, so page through all of it. The response carries page_size, page_count and total_count, and it defaults to 30 conversations per page, so advance with the page query parameter until you have collected every conversation. Do not skip this loop: a backlog alert that silently stops at the first 30 conversations is worse than no alert at all.

Re:amaze reports conversation status as an integer, and status 5 specifically means On Hold and pairs with a hold_until timestamp. On Hold conversations are deliberately parked rather than neglected, so exclude them from the stale results entirely instead of reporting them as ignored.

For each remaining conversation, work out how long it has been waiting from its creation timestamp and its last update timestamp. Keep only the ones that are past my ageing thresholds: unassigned for more than 4 hours, or open with no reply for more than 24 hours. Put both thresholds in one obvious settings block at the top of the workflow, because those two numbers are the first thing I will want to tune.

Group whatever is left into two buckets: conversations that are unassigned, and conversations that are assigned but have gone stale. Sort each group oldest first so the worst offenders sit at the top.

Post a single formatted message to Slack with the Slack Bot Send a Message operation. Lead each group with its name and count, then give one line per conversation showing the customer, the subject, how long it has been waiting in readable form such as 6h 20m or 2d 4h, and a direct link to the conversation. Re:amaze addresses conversations by slug rather than a numeric id, so build each link from the conversation slug and my brand subdomain.

If nothing breaches the thresholds, post a short all clear message instead of staying silent, so the team can see the check actually ran and there is genuinely nothing waiting.

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