Пользователи
Пользователь — учётная запись, из которой складывается подписка: доступ к инбаундам через сквады, лимиты трафика, срок действия и список устройств. Раздел Users в панели — единственное место, где создаются и меняются пользователи.
Создание пользователя
Откройте Users → Create и заполните поля.
| Поле | Обязательное | Правила |
|---|---|---|
username | да | 3–36 символов: буквы, цифры, _, - |
expireAt | да | дата истечения, например 2026-01-17T15:38:45.065Z |
status | нет | по умолчанию ACTIVE |
trafficLimitBytes | нет | лимит в байтах; 0 — без лимита |
trafficLimitStrategy | нет | период сброса трафика, по умолчанию NO_RESET |
hwidDeviceLimit | нет | число устройств; 0 — без ограничения |
tag | нет | до 16 символов: заглавные буквы, цифры, _ |
telegramId, email, description | нет | уведомления и заметки |
activeInternalSquads | нет | внутренние сквады пользователя |
externalSquadUuid | нет | внешний сквад пользователя |
Пароли и идентификаторы для протоколов (trojanPassword, vlessUuid,
ssPassword) панель генерирует сама — задавать их вручную не нужно.
Статусы
| Статус | Что значит | Как меняется |
|---|---|---|
ACTIVE | доступ открыт | при создании, включении, продлении, сбросе трафика |
DISABLED | отключён администратором | кнопкой Disable, обратно — Enable |
LIMITED | исчерпан лимит трафика | автоматически планировщиком |
EXPIRED | истёк expireAt | автоматически планировщиком |
LIMITED и EXPIRED снимаются не сами по себе, а осознанным действием: сбросом
трафика или продлением срока. Пользователей можно фильтровать по статусу и
удалять группами — Delete users by status.
Лимиты трафика
trafficLimitBytes задаётся в байтах, 0 снимает лимит. Периодичность
обнуления задаёт trafficLimitStrategy:
| Значение | Период |
|---|---|
NO_RESET | трафик не сбрасывается |
DAY | каждые сутки |
WEEK | каждую неделю |
MONTH | календарный месяц |
MONTH_ROLLING | месяц от даты создания пользователя |
Сбросить трафик вручную: карточка пользователя → Reset traffic. Счётчик
использованного обнуляется, lastTrafficResetAt обновляется, а статус LIMITED
становится ACTIVE. Для группы есть массовый сброс — Bulk actions → Reset
traffic (до 500 пользователей за раз).
Срок действия
expireAt — дата, после которой пользователь переходит в EXPIRED. Продление
кнопкой Extend прибавляет дни по правилам:
EXPIRED— отсчёт от текущего момента, статус становитсяACTIVE;ACTIVE— дни прибавляются к текущей дате истечения;DISABLEDиLIMITED— дата продлевается, статус не меняется.
Массовое продление: Bulk actions → Extend expiration date.
Лимит устройств
hwidDeviceLimit ограничивает число устройств по HWID. 0 полностью отключает
проверку, а пустое значение означает «взять fallbackDeviceLimit из настроек
подписки». Подробности — в разделе
Лимит устройств по HWID.
Привязка к сквадам
Доступ к инбаундам определяют внутренние сквады: пользователь видит только
те хосты, чьи инбаунды входят в его сквады. Внешний сквад
(externalSquadUuid) ничего не разрешает, а меняет оформление и поведение
подписки — шаблоны, заголовки, настройки HWID. Оба вида разобраны в разделе
Сквады.
Ссылки подписки
Ссылка собирается автоматически из SUB_PUBLIC_DOMAIN и короткого
идентификатора:
https://sub.example.com/<shortUuid>
Она ведёт на страницу подписки или отдаёт конфигурацию напрямую. Если ссылка
утекла, отзовите подписку (Revoke subscription): панель выпустит новый
shortUuid и новые пароли протоколов, а старая ссылка перестанет работать. Есть
режим «только пароли» — короткий идентификатор при этом сохраняется.
Отзыв подписки разрывает доступ у всех, кто уже импортировал старую ссылку. Предупредите пользователя до того, как раздадите новую.
Короткий идентификатор генерируется методом из SHORT_UUID_METHOD. Менять его
на ходу не стоит: это меняет формат всех новых ссылок. См.
Переменные окружения.
Что дальше
- Сквады — как выдавать доступ к инбаундам.
- Хосты — что именно попадает в подписку.
- Лимит устройств по HWID — ограничение устройств.
- API Specification — эндпоинты управления пользователями.