Skip to content
Crystal Desk

Tickets / Ticket Lifecycle

Ticket Lifecycle

A ticket moves through a predictable sequence of states from creation to completion, with every transition logged.

The lifecycle

  1. Open — the ticket has just been created; its first stage instance activates immediately.
  2. Stage activates — a stage instance becomes live, starting the process of finding an assignee.
  3. Assignment — the assignment engine (see How Assignment Works) resolves an eligible assignee, human or AI Agent.
  4. SLA starts — the stage's deadline clock begins the moment the assignee is notified, not when the stage activated.
  5. Work submitted — the assignee completes the stage's form and submits.
  6. Approve or reject — if the stage is an Approval type, the outcome determines the next step; other stage types move straight to routing.
  7. Next stage, or reworkon_approve/on_submit sends the ticket to the next connected stage; on_reject sends it back for rework (see Branching & Approvals).
  8. Completed — once the ticket reaches the End node with no further stages, it's marked Completed and closed out.

Timeline event types

Every ticket keeps a full timeline, built from discrete event types logged as they happen:

  • ticket_created
  • stage_activated
  • assigned (and reassigned, when applicable)
  • sla_warning (pre-breach)
  • sla_breached
  • submitted
  • approved / rejected
  • completed

Anyone opening a ticket can read this timeline top to bottom and reconstruct exactly what happened, when, and who was responsible at each point — no separate report or chat scrollback required.

For how individual field values are preserved across rework cycles rather than overwritten, see Revisions & History.