Skip to main content

Tickets

Player-submitted support tickets, triage, and reply delivery.

TicketsController​

  • Route prefix: api/tickets
  • Auth: admin or moderator role required on all endpoints.
MethodPathDescriptionRequestResponse
GET/List tickets with optional filters?pageIndex&pageSize&status&search{ items: Ticket[], total }
GET/{id}Single ticket with message thread{ id, createdAt, updatedAt, playerId, playerName, subject, status, priority, assignedTo, messages }
POST/{id}/replyReply to ticket; delivers in-game if online, queues if offline{ message }{ messageId, delivered }
PUT/{id}/statusUpdate ticket status and/or assignee{ status, assignedTo }string
GET/statsCounts by status{ openCount, inProgressCount, closedCount }
GET/settingsTicket settings (admin only)TicketSettings
PUT/settingsUpdate ticket settings (admin only){ maxOpenTicketsPerPlayer, cooldownSeconds }string

Notes​

  • status values: open, in_progress, closed.
  • Replies to offline players are queued and delivered the next time they connect.
  • priority is one of low, normal, high, set by the player on submission and editable by admins.