Answer hard Zendesk tickets with your best past replies

By General Input

A console where reps open a tough ticket, see the three closest past resolutions, and send an approved reply drafted from them.

Integrations

  • Zendesk
  • Fireworks AI

Type

App

Categories

  • Customer Support

Build me a console my support reps work out of when a hard Zendesk ticket lands, so they can see how we answered the same thing before instead of rewriting it from scratch. It is one main screen with three panes: the rep's ticket queue on the left, the selected ticket's conversation in the middle, and precedents plus a draft reply on the right.

The left pane is the open ticket queue, loaded with Zendesk List Tickets. Default it to tickets assigned to the signed-in rep with a status of new, open, or pending, sorted by most recently updated, and give it a toggle to switch to the whole team's open queue. Each row shows the ticket number, subject, requester, priority, and how long it has been waiting. Selecting a row loads everything else on the screen.

The middle pane shows the selected ticket's full conversation using Zendesk List Ticket Comments, oldest first, clearly separating what the customer wrote from what agents wrote and marking internal notes as internal. Show the ticket subject, status, priority, and tags above the thread.

When a ticket is selected, find precedents in two steps. First, build a query from the ticket's subject and the customer's opening comment and call Zendesk Search Tickets restricted to solved and closed tickets, excluding the current ticket, to pull roughly 25 to 50 candidates. Second, send those candidates to Fireworks AI Rerank Documents with the Qwen3 reranker: the query is the current ticket's problem statement, and each document is a candidate's subject plus description. Use the returned relevance scores to pick the top three. Only fetch List Ticket Comments for those top three, not for every candidate, so the app stays fast and stays well inside Zendesk's rate limits.

Show the top three precedents in the right pane as cards. Each card gives the past ticket number and subject, its relevance score, and the resolution text that actually closed it, which is the last public agent comment on that ticket. Let the rep expand a card to read the full past conversation and open the original ticket in Zendesk in a new tab.

Apply a confidence threshold to the reranker's top score. If the best precedent scores below it, do not show a draft at all. Show a clear no good precedent banner explaining that nothing in the archive is close enough, still list whatever weak matches came back so the rep can judge for themselves, and disable the draft button. A confident wrong answer is worse than no answer here. Make the threshold a setting rather than hardcoding it, with a sensible default.

Above the threshold, a Draft reply button calls Fireworks AI Create Chat Completion. Ground it strictly in the three precedent tickets and the current ticket's conversation, and instruct the model to use only those precedents, to cite the past ticket numbers it drew each part of the answer from, and to say plainly that it lacks a precedent rather than inventing policy, prices, or promises. The draft lands in an editable text box beside the ticket, fully rewritable, with the cited ticket numbers visible so the rep can check it against the cards.

Nothing is sent until the rep approves. A toggle next to the send button chooses public reply or internal note, and pressing approve calls Zendesk Update Ticket to post the edited text as that kind of comment, optionally setting the ticket status at the same time. After a successful send, refresh the conversation pane and the queue so the rep sees the posted comment immediately, and surface a clear error in place if Zendesk rejects the update.

Persist a small amount of state per rep: the confidence threshold, how many precedents to show, how far back to search, the default queue, and whether the send toggle starts on public reply or internal note. Also log each approved send with the ticket, the precedents that were shown, and whether the draft was edited before sending, and surface that as a simple count somewhere in the app so a support lead can see how often precedents are actually helping.

Related prompts

Explore more prompts
Pause marketing emails to escalated customers, then restore themLook up any customer's email delivery history in one placeResolve unsubscribe tickets without a MailForge loginCatch angry support tickets before the customer escalatesAccount takeover ticket triage console for support teamsTurn your top support questions into explainer videosA support answer desk that drafts replies from your docsCompare Fireworks AI models against your golden test setFireworks AI spend desk with team chargeback and idle GPU auditDebug a customer's E2B sandbox from their support ticket