tickets отвечает за систему поддержки: создание тикетов, отправка сообщений, управление статусами. Административные операции (назначение, закрытие чужих тикетов) находятся в ticketsAdmin.
Путь: trpc.tickets.*
Вложенные роутеры
categories
categories.list
Получение списка активных категорий тикетов.- Тип:
query - Доступ:
publicProcedure
Процедуры
list
Получение списка тикетов текущего пользователя с пагинацией.- Тип:
query - Доступ:
protectedProcedure
Фильтр по статусу:
open, in_progress, waiting, closed, all (по умолчанию all)Количество (1–50, по умолчанию 20)
Смещение (по умолчанию 0)
Массив тикетов с категорией и сервером
Общее количество тикетов
get
Получение тикета по ID с сообщениями.- Тип:
query - Доступ:
protectedProcedure
ID тикета
Тикет доступен его автору, сотрудникам поддержки (права
admin.*, tickets.*, moderator.* или роль admin), а также модератору, назначенному на тикет. Иначе возвращается FORBIDDEN.create
Создание нового тикета.- Тип:
mutation - Доступ:
protectedProcedure
ID категории
ID сервера (если тикет привязан к серверу)
Тема тикета (5–255 символов)
Текст первого сообщения (10–5000 символов)
Приоритет нового тикета всегда устанавливается в
normal. Если категория имеет флаг requireServer, поле serverId обязательно.uploadAttachment
Загрузка вложения к тикету (base64) в объектное хранилище.- Тип:
mutation - Доступ:
protectedProcedure
ID тикета
Имя файла (1–255 символов; допустимы только
a-z A-Z 0-9 . _ - и пробел)Содержимое файла в base64
MIME-тип файла
Разрешены только типы
image/png, image/jpeg, image/gif, image/webp, image/avif, application/pdf. Опасные расширения (html, svg, js, php, exe и др.) запрещены. Максимальный размер файла — 10 МБ. Загрузка недоступна для закрытых тикетов.Публичный URL загруженного файла
Ключ объекта в хранилище
Имя файла
MIME-тип файла
Размер файла в байтах
sendMessage
Отправка сообщения в тикет.- Тип:
mutation - Доступ:
protectedProcedure
ID тикета
Текст сообщения (до 5000 символов)
Массив URL вложений (до 10, каждый — валидный URL)
Необходимо указать
message либо хотя бы одно вложение в attachments. Сообщение в закрытый тикет отправить нельзя.close
Закрытие тикета автором или сотрудником поддержки.- Тип:
mutation - Доступ:
protectedProcedure
ID тикета
Оценка обслуживания (1–5)
Комментарий к оценке (до 500 символов)
reopen
Переоткрытие закрытого тикета.- Тип:
mutation - Доступ:
protectedProcedure
ID тикета
Переоткрыть тикет может только его автор, и только если тикет находится в статусе
closed. Оценка (rating/ratingComment) при этом сбрасывается.Статусы тикетов
| Статус | Описание |
|---|---|
open | Открыт, ожидает ответа от поддержки |
in_progress | В работе у модератора |
waiting | Ожидает ответа от пользователя |
closed | Закрыт |