TICKET MANAGEMENT

Nightly duplicate-ticket clustering with a human review queue

Each night, embed the day's open Zendesk tickets, cluster the semantically similar ones.

CategoryTicket Management
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNightly schedule
  • ActionFetch open tickets from last 24hZendeskZendesk
  • ActionEmbed each ticketOpenAI
  • LogicCluster embeddings above similarity cutoff
  • ActionPersist candidate clusters as pendingPostgreSQLPostgres
  • OutputPost clusters to Slack review channelSlack

What it does

Runs a batch clustering pass over open tickets and surfaces likely duplicate groups for a human to confirm, instead of merging automatically. Lower-risk than real-time auto-merge, it catches duplicates that share a topic but not exact wording.

When to use it

Use it when your team wants the speed of clustering but not blind auto-merges — for example, regulated support desks or teams burned by false-positive merges. The nightly cadence keeps the morning queue deduplicated.

How it works

  1. 1A scheduled trigger runs overnight.
  2. 2Zendesk returns all tickets still open from the last 24 hours.
  3. 3OpenAI embeds each ticket's text.
  4. 4A logic step runs agglomerative clustering on the embeddings, grouping tickets above a similarity cutoff into candidate clusters of two or more.
  5. 5Clusters are written to Postgres with a pending status so approvals survive restarts.
  6. 6Each cluster is posted to a Slack review channel with ticket summaries and Approve / Reject buttons; an approval triggers the merge back in Zendesk.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect ZendeskTickets, queues, knowledge base.
  2. 2
    Connect OpenAIModels, embeddings, files.
  3. 3
    Connect PostgresAny Postgres URL — query, write, migrate.
  4. 4
    Connect SlackChannels, DMs, threads, mentions.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.