Модели данных
167 моделей запросов и ответов StealthSurf API: поля, типы, вложенные структуры и правила валидации.
Схемы запросов и ответов для 138 методов API. Имена моделей соответствуют спецификации от 3 октября 2026 года. Таблицы тела запроса также приведены на страницах методов; здесь собраны вложенные объекты и полные поля ответов.
Для запросов обязательность учитывает валидаторы и проверки сервиса. Для ответов колонка «Обязательно» отражает объявление модели: поле с null и отсутствующее поле — разные случаи. Модели ответов описывают содержимое data без общей обёртки.
Дополнительные ограничения совместимости протоколов, AWG, OpenFlux и маршрутизации приведены в общих правилах.
AvailableConfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | Да | Название |
location_emoji | string | Нет | Эмодзи локации |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
is_online | boolean | Да | Доступность сервера |
source | "user_config" | "cloud_server_config" | Да | Источник конфигурации: user_config или cloud_server_config |
cloud_server_id | number | Нет | Идентификатор облачного сервера |
AvailableItemsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
configs | AvailableConfigData[] — AvailableConfigData | Да | Конфигурации |
paid_options | AvailablePaidOptionData[] — AvailablePaidOptionData | Да | Доступные платные опции |
AvailablePaidOptionConfigItemData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
type | "index" | "server" | Да | index — конфигурация по индексу; server — отдельная VPN-конфигурация |
users_paid_option_id | number | Да | Экземпляр подписки; используйте как item_reference_id для paid_option_index |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
index | number | Нет | Индекс конфигурации в подписке, начиная с 0 |
original_title | string | Нет | Исходное название конфигурации |
custom_title | string | null | Нет | Название, заданное пользователем |
id | number | Нет | Идентификатор записи |
server_id | number | null | Нет | Идентификатор сервера |
title | string | null | Нет | Название |
resolved_title | string | Нет | Итоговое название для отображения |
is_online | boolean | Нет | Доступность сервера |
AvailablePaidOptionData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор продукта; экземпляры одного продукта объединены |
title | string | Да | Название |
expires_at | number | Да | Максимальный срок среди экземпляров; для отдельной конфигурации используйте её expires_at |
configs | AvailablePaidOptionConfigItemData[] — AvailablePaidOptionConfigItemData | Да | Конфигурации |
AvailableServerData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
ip | string | Да | IP-адрес сервера |
available_slots | number | Да | Число свободных мест для конфигураций |
AvailableSubconfigProtocolsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
protocols | string[] | Да | Доступные протоколы |
AvailableTunnelData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
config_type | string | Да | Тип конфигурации |
config_id | number | Да | Идентификатор конфигурации |
config_index | number | Нет | Индекс конфигурации paid_option_index |
tag | string | Да | Готовый тег (config-12, option-45, cloud-3 или ext:ID:INDEX); можно использовать в config_tags |
label | string | Да | Название для отображения |
protocol | string | Да | Протокол подключения |
AwgGeneratedParamsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
h1 | string | Да | Заголовок обфускации AWG H1: uint32 или диапазон min-max в строке |
h2 | string | Да | Заголовок обфускации AWG H2: uint32 или диапазон min-max в строке |
h3 | string | Да | Заголовок обфускации AWG H3: uint32 или диапазон min-max в строке |
h4 | string | Да | Заголовок обфускации AWG H4: uint32 или диапазон min-max в строке |
s1 | number | Да | Размер мусорной части начального пакета (S1) |
s2 | number | Да | Размер мусорной части ответного пакета (S2) |
s3 | number | Да | Магический заголовок начального пакета (S3) |
s4 | number | Да | Магический заголовок ответного пакета (S4) |
AwgParamsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
port | number | Нет | Серверный UDP-порт; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
client_listen_port | number | Нет | Локальный порт клиента; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
mtu | number | Нет | MTU интерфейса; 0 означает значение по умолчанию | 0 пропускает числовую проверку DTO; целое число; ≥ 1280; ≤ 1420 |
dns | string | Нет | Устаревший одиночный IPv4 DNS; нельзя сочетать с dns_mode или dns_servers | пустая строка допустима на уровне DTO; IPv4 |
dns_mode | "default" | "custom" | "system" | Нет | Режим DNS AWG: default, custom или system | допустимо: "default", "custom", "system" |
dns_servers | string[] | Нет | IPv4 DNS для dns_mode=custom; для default/system список должен быть пустым | массив; IPv4 (для каждого элемента) |
persistent_keepalive | number | string | Нет | PersistentKeepalive: AWG 2.0 принимает только числовое скалярное значение; AWG 3.1 также поддерживает диапазоны и off | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
content_padding_addition | number | string | Нет | Параметр ContentPaddingAddition; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_after_time | number | string | Нет | Параметр RekeyAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_timeout | number | string | Нет | Параметр RekeyTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
reject_after_time | number | string | Нет | Параметр RejectAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
keepalive_timeout | number | string | Нет | Параметр KeepaliveTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
max_handshake_attempts | number | string | Нет | Параметр MaxHandshakeAttempts; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
random_trailers | "on" | "off" | Нет | Включение случайных окончаний пакетов (on/off); только AWG 3.1 | допустимо: "on", "off" |
disable_cookies | "on" | "off" | Нет | Отключение cookies (on/off); только AWG 3.1 | допустимо: "on", "off" |
jc | number | Нет | Количество мусорных пакетов AWG (Jc) | целое число; ≥ 0; ≤ 128 |
jmin | number | Нет | Минимальный размер мусорного пакета AWG (Jmin) | целое число; ≥ 0; ≤ 1280 |
jmax | number | Нет | Максимальный размер мусорного пакета AWG (Jmax) | целое число; ≥ 0; ≤ 1280 |
s1 | number | Нет | Размер мусорной части начального пакета (S1) | целое число; ≥ 0; ≤ 1132 |
s2 | number | Нет | Размер мусорной части ответного пакета (S2) | целое число; ≥ 0; ≤ 1188 |
s3 | number | Нет | Магический заголовок начального пакета (S3) | целое число; ≥ 0; ≤ 64 |
s4 | number | Нет | Магический заголовок ответного пакета (S4) | целое число; ≥ 0; ≤ 32 |
h1 | string | Нет | Заголовок обфускации AWG H1: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h2 | string | Нет | Заголовок обфускации AWG H2: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h3 | string | Нет | Заголовок обфускации AWG H3: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h4 | string | Нет | Заголовок обфускации AWG H4: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
i1 | string | Нет | Строка параметра обфускации I1 | строка |
i2 | string | Нет | Строка параметра обфускации I2 | строка |
i3 | string | Нет | Строка параметра обфускации I3 | строка |
i4 | string | Нет | Строка параметра обфускации I4 | строка |
i5 | string | Нет | Строка параметра обфускации I5 | строка |
AwgRoutingBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
mode | "full" | "bypass" | "split" | Да | Режим маршрутизации | допустимо: "full", "bypass", "split" |
allowed_ips | string[] | Если mode=split | IPv4 CIDR через туннель; обязательны для split, запрещены для bypass/full | массив; элементов ≤ 4096; формат: /^(?:\d{1,3}\.){3}\d{1,3}\/\d{1,2}$/ (для каждого элемента) |
excluded_ips | string[] | Если mode=bypass | Исключаемые IPv4 CIDR; обязательны для bypass, необязательны для split | массив; элементов ≤ 4096; формат: /^(?:\d{1,3}\.){3}\d{1,3}\/\d{1,2}$/ (для каждого элемента) |
BalanceCalculateMethod
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
method_key | string | Да | Системный ключ способа оплаты |
display_name | string | Да | Название способа оплаты для отображения |
price | number | Да | Цена в валюте способа оплаты |
currency | string | Да | Валюта |
BalanceCalculateQuery
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
amount | number | Да | Сумма платежа или пополнения | целое число; ≥ 1; ≤ 100001 |
BalanceTopupBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
amount | number | Да | Сумма платежа или пополнения | целое число; ≥ 1; ≤ 100001 |
payment_method_id | number | Да | Идентификатор способа оплаты из каталога тарифов | целое число |
BalanceTopupData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
link | string | Нет | Ссылка на оплату |
ClientAppRoutingEntryBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
name | string | Да | Название | строка; длина 1–128; формат: /^\S(?:[\s\S]*\S)?$/; формат: /^[^\u0000-\u001f\u007f]+$/ |
path | string | Да | Абсолютный путь приложения: POSIX, путь с буквой диска Windows или UNC | строка; длина 1–4096; формат: CLIENT_APP_ROUTING_ABSOLUTE_PATH_REGEX; формат: /^\S(?:[\s\S]*\S)?$/; формат: /^[^\u0000-\u001f\u007f]+$/ |
enabled | boolean | Нет | Участие приложения в маршрутизации; отсутствие означает true. Отключённая запись сохраняется, но не выдаётся клиенту desktop | boolean; по Swagger: значение по умолчанию true |
ClientAppRoutingMode
Допустимые значения: exclude, include.
ClientAppRoutingSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
mode | ClientAppRoutingMode — ClientAppRoutingMode | Да | exclude — выбранные приложения обходят VPN; include — только выбранные приложения используют VPN | допустимо: "exclude", "include" |
apps | ClientAppRoutingEntryBody[] — ClientAppRoutingEntryBody | Да | Приложения; весь блок маршрутизации не более 32768 байт UTF-8 | массив; элементов ≤ 100; проверяются вложенные поля (для каждого элемента) |
CloudConfigsChangeProtocolBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
openflux | OpenfluxSettingsBody — OpenfluxSettingsBody | Если protocol=openflux | Настройки OpenFlux; в ответах только публичные поля | объект; проверяются вложенные поля |
protocol | string | Да | Протокол подключения | строка; допустимо: "openflux", "vless", "trojan", "trojan-2901", "hysteria2", "vless-2410", "shadowsocks-2022", "wg", "amnezia-wg-2" |
use_extended_settings | boolean | Нет | Включить расширенные настройки конфигурации | boolean |
use_salamander | boolean | Нет | Включить обфускацию Salamander для Hysteria2 на UDP-порту 8443 | boolean; true требует protocol=hysteria2; по Swagger: значение по умолчанию false |
use_warp | boolean | Нет | Включить WARP | boolean |
disable_reality | boolean | Нет | Отключить REALITY | boolean |
change_sni | boolean | Нет | Применить изменение SNI | boolean |
disable_sni | boolean | Нет | Отключить SNI | boolean |
enable_family_filter | boolean | Нет | Включить семейный фильтр | boolean |
pass_all_traffic_through_vpn | boolean | Нет | Направлять весь трафик через VPN | boolean |
block_bittorrent | boolean | Нет | Блокировать BitTorrent | boolean |
use_xhttp | boolean | Нет | Использовать транспорт XHTTP вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
use_grpc | boolean | Нет | Использовать транспорт gRPC вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
grpc_multi_mode | boolean | Нет | Включить многопоточный режим gRPC (TunMulti) | boolean; true требует use_grpc=true |
randomize_fingerprint | boolean | Нет | Использовать случайный отпечаток uTLS вместо chrome | boolean |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
CloudConfigsChangeProtocolData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
openflux | OpenfluxPublicSettings — OpenfluxPublicSettings | Нет | Настройки OpenFlux; в ответах только публичные поля |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
CloudConfigsChangeTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | null | Да; null сбрасывает | Название | строка; длина 1–64 |
CloudConfigsCreateBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
openflux | OpenfluxSettingsBody — OpenfluxSettingsBody | Если protocol=openflux | Настройки OpenFlux; в ответах только публичные поля | объект; проверяются вложенные поля |
protocol | string | Да | Протокол подключения | строка; допустимо: "openflux", "vless", "trojan", "trojan-2901", "hysteria2", "vless-2410", "shadowsocks-2022", "wg", "amnezia-wg-2" |
title | string | Нет | Название | строка; длина 1–64 |
use_extended_settings | boolean | Нет | Включить расширенные настройки конфигурации | boolean |
use_salamander | boolean | Нет | Включить обфускацию Salamander для Hysteria2 на UDP-порту 8443 | boolean; true требует protocol=hysteria2; по Swagger: значение по умолчанию false |
use_warp | boolean | Нет | Включить WARP | boolean |
disable_reality | boolean | Нет | Отключить REALITY | boolean |
change_sni | boolean | Нет | Применить изменение SNI | boolean |
disable_sni | boolean | Нет | Отключить SNI | boolean |
enable_family_filter | boolean | Нет | Включить семейный фильтр | boolean |
pass_all_traffic_through_vpn | boolean | Нет | Направлять весь трафик через VPN | boolean |
block_bittorrent | boolean | Нет | Блокировать BitTorrent | boolean |
use_xhttp | boolean | Нет | Использовать транспорт XHTTP вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
use_grpc | boolean | Нет | Использовать транспорт gRPC вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
grpc_multi_mode | boolean | Нет | Включить многопоточный режим gRPC (TunMulti) | boolean; true требует use_grpc=true |
randomize_fingerprint | boolean | Нет | Использовать случайный отпечаток uTLS вместо chrome | boolean |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
CloudConfigsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
openflux | OpenfluxPublicSettings — OpenfluxPublicSettings | Нет | Настройки OpenFlux; в ответах только публичные поля |
id | number | Да | Идентификатор записи |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
title | string | null | Да | Название |
protocol | string | Да | Протокол подключения |
created_at | number | Да | Время создания, Unix timestamp в секундах |
is_extended_settings_enabled | boolean | Да | Включены ли расширенные настройки |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
ipv6 | string | null | Нет | IPv6-адрес сервера |
CloudConfigsUpdateAwgBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
port | number | Нет | Серверный UDP-порт; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
client_listen_port | number | Нет | Локальный порт клиента; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
mtu | number | Нет | MTU интерфейса; 0 означает значение по умолчанию | 0 пропускает числовую проверку DTO; целое число; ≥ 1280; ≤ 1420 |
dns | string | Нет | Устаревший одиночный IPv4 DNS; нельзя сочетать с dns_mode или dns_servers | пустая строка допустима на уровне DTO; IPv4 |
dns_mode | "default" | "custom" | "system" | Нет | Режим DNS AWG: default, custom или system | допустимо: "default", "custom", "system" |
dns_servers | string[] | Нет | IPv4 DNS для dns_mode=custom; для default/system список должен быть пустым | массив; IPv4 (для каждого элемента) |
persistent_keepalive | number | string | Нет | PersistentKeepalive: AWG 2.0 принимает только числовое скалярное значение; AWG 3.1 также поддерживает диапазоны и off | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
content_padding_addition | number | string | Нет | Параметр ContentPaddingAddition; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_after_time | number | string | Нет | Параметр RekeyAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_timeout | number | string | Нет | Параметр RekeyTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
reject_after_time | number | string | Нет | Параметр RejectAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
keepalive_timeout | number | string | Нет | Параметр KeepaliveTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
max_handshake_attempts | number | string | Нет | Параметр MaxHandshakeAttempts; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
random_trailers | "on" | "off" | Нет | Включение случайных окончаний пакетов (on/off); только AWG 3.1 | допустимо: "on", "off" |
disable_cookies | "on" | "off" | Нет | Отключение cookies (on/off); только AWG 3.1 | допустимо: "on", "off" |
jc | number | Нет | Количество мусорных пакетов AWG (Jc) | целое число; ≥ 0; ≤ 128 |
jmin | number | Нет | Минимальный размер мусорного пакета AWG (Jmin) | целое число; ≥ 0; ≤ 1280 |
jmax | number | Нет | Максимальный размер мусорного пакета AWG (Jmax) | целое число; ≥ 0; ≤ 1280 |
s1 | number | Нет | Размер мусорной части начального пакета (S1) | целое число; ≥ 0; ≤ 1132 |
s2 | number | Нет | Размер мусорной части ответного пакета (S2) | целое число; ≥ 0; ≤ 1188 |
s3 | number | Нет | Магический заголовок начального пакета (S3) | целое число; ≥ 0; ≤ 64 |
s4 | number | Нет | Магический заголовок ответного пакета (S4) | целое число; ≥ 0; ≤ 32 |
h1 | string | Нет | Заголовок обфускации AWG H1: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h2 | string | Нет | Заголовок обфускации AWG H2: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h3 | string | Нет | Заголовок обфускации AWG H3: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h4 | string | Нет | Заголовок обфускации AWG H4: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
i1 | string | Нет | Строка параметра обфускации I1 | строка |
i2 | string | Нет | Строка параметра обфускации I2 | строка |
i3 | string | Нет | Строка параметра обфускации I3 | строка |
i4 | string | Нет | Строка параметра обфускации I4 | строка |
i5 | string | Нет | Строка параметра обфускации I5 | строка |
protocol_version | "2.0" | "3.1" | Нет | Версия AWG 2.0/3.1; после смены нужен повторный импорт конфигурации | допустимо: "2.0", "3.1" |
awg_params | AwgParamsBody | null — AwgParamsBody | Нет | Полная замена переопределений AWG; null сбрасывает все. Нельзя сочетать с плоскими полями AWG в том же запросе | проверяются вложенные поля |
routing | AwgRoutingBody | null — AwgRoutingBody | Нет | Полная замена маршрутизации AWG; null или mode=full возвращает полный туннель | проверяются вложенные поля |
CloudConfigsUpdateXrayBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
xray_config | string | Да | Конфигурация Xray в виде строки с JSON | строка |
public_key | string | null | Нет | Открытый ключ X25519 | строка |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
CloudProxiesChangeProtocolBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
protocol | string | Да | Протокол подключения | строка; допустимо: "http", "socks5" |
CloudProxiesChangeTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | null | Да; null сбрасывает | Название | строка; длина 1–100 |
CloudProxiesCreateBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
protocol | string | Да | Протокол подключения | строка; допустимо: "http", "socks5" |
CloudProxyChangeProtocolData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
connection_url | string | Да | Строка подключения; формат зависит от протокола |
CloudProxyData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | null | Да | Название |
protocol | string | Да | Протокол подключения |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
created_at | number | Да | Время создания, Unix timestamp в секундах |
CloudServersAutoRenewalBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
enabled | boolean | Да | Включено | boolean |
days | number | Если enabled=true | Количество дней | число; ≥ 1 |
CloudServersAutoRenewalData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
auto_renewal | boolean | Да | Включено ли автопродление |
auto_renewal_days | number | null | Да | Период автопродления в днях; null при отключении |
CloudServersData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
location_id | number | Да | Идентификатор локации |
tariff_config_id | number | Да | Идентификатор конфигурации тарифа облачного сервера |
status | string | Да | Состояние ресурса или операции |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
url | string | null | Да | IP/домен сервера; null до выделения |
is_online | boolean | Да | Доступность сервера |
auto_renewal | boolean | Да | Включено ли автопродление |
auto_renewal_days | number | null | Да | Период автопродления в днях; null при отключении |
hostname | string | null | Да | Доменное имя сервера |
CloudServersLocationsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
code | string | Да | Код страны или промокод в зависимости от модели |
title | string | Да | Название |
description | string | null | Да | Описание |
caption | string | null | Да | Краткая подпись |
is_active | boolean | Да | Активна ли запись |
server_type | string | Да | Тип сервера |
available_tariff_config_ids | number[] | Да | Доступные в локации конфигурации тарифов |
ping_ip | string | null | Да | Адрес для проверки задержки |
tags | string[] | Да | Метки локации |
CloudServersOrderBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
location_id | number | Да | Идентификатор локации | число |
tariff_config_id | number | Нет | Конфигурация тарифа; при активации промокодом может определяться по промокоду | целое число |
payment_method_id | number | Нет | Идентификатор способа оплаты из каталога тарифов | целое число; ≥ 1 |
tariff_id | number | Нет | Идентификатор тарифа из соответствующего каталога тарифов | целое число; ≥ 1 |
promocode | string | Нет | Промокод активации | строка; длина 4–32 |
enable_auto_renewal | boolean | Нет | Включить автопродление при покупке или продлении | boolean |
hostname | string | Нет | Доменное имя сервера | строка; длина ≤ 255 |
CloudServersOrderData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
link | string | Да | Ссылка на оплату |
CloudServersPaymentMethodTariffsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
display_name | string | Да | Название способа оплаты для отображения |
currency | string | Да | Валюта |
min_amount | number | null | Да | Минимальная сумма платежа; null, если не задана |
tariffs | CloudServersTariffData[] — CloudServersTariffData | Да | Активные тарифы способа оплаты |
CloudServersRebootData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
success | boolean | Да | Успешное выполнение операции |
CloudServersRenewalBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
server_id | number | Да | Идентификатор сервера | целое число; ≥ 1 |
payment_method_id | number | Нет | Идентификатор способа оплаты из каталога тарифов | целое число; ≥ 1 |
days | number | Нет | Количество дней | целое число; ≥ 1 |
promocode | string | Нет | Промокод активации | строка; длина 4–32 |
enable_auto_renewal | boolean | Нет | Включить автопродление при покупке или продлении | boolean |
CloudServersRenewalData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
renewed | boolean | Да | Подписка продлена |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
CloudServersTariffConfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | Да | Название |
description | string | null | Да | Описание |
payment_methods | CloudServersPaymentMethodTariffsData[] — CloudServersPaymentMethodTariffsData | Да | Способы оплаты с доступными тарифами |
CloudServersTariffData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
days | number | Да | Количество дней |
price | number | Да | Цена в валюте способа оплаты |
old_price | number | Нет | Цена до применения скидки или наценки; поле может отсутствовать |
ConfigsAutoRenewalBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
enabled | boolean | Да | Включено | boolean |
days | number | Если enabled=true | Количество дней | число; ≥ 1 |
ConfigsAutoRenewalData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
auto_renewal | boolean | Да | Включено ли автопродление |
auto_renewal_days | number | null | Да | Период автопродления в днях; null при отключении |
ConfigsChangeTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | null | Да; null сбрасывает | Название | строка; длина 1–64 |
ConfigsCreateBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
openflux | OpenfluxSettingsBody — OpenfluxSettingsBody | Если protocol=openflux | Настройки OpenFlux; в ответах только публичные поля | объект; проверяются вложенные поля |
promocode | string | Нет | Промокод активации | строка; длина 4–32 |
location_id | number | Если as_key не true | Идентификатор локации | число |
server_id | number | Нет | Идентификатор сервера | целое число; ≥ 1 |
server_ids | number[] | Нет | Список предпочтительных серверов в порядке возрастания задержки | массив; элементов ≥ 1; элементов ≤ 50; целое число (для каждого элемента); ≥ 1 (для каждого элемента) |
protocol | string | Если as_key не true | Протокол подключения | строка; допустимо: "vless", "trojan", "trojan-2901", "hysteria2", "vless-2410", "shadowsocks-2022", "wg", "amnezia-wg-2", "openflux" |
payment_method_id | number | Нет | Идентификатор способа оплаты из каталога тарифов | целое число; ≥ 1 |
tariff_id | number | Нет | Идентификатор тарифа из соответствующего каталога тарифов | целое число; ≥ 1 |
use_extended_settings | boolean | Нет | Включить расширенные настройки конфигурации | boolean |
use_salamander | boolean | Нет | Включить обфускацию Salamander для Hysteria2 на UDP-порту 8443 | boolean; true требует protocol=hysteria2; по Swagger: значение по умолчанию false |
use_warp | boolean | Нет | Включить WARP | boolean |
disable_reality | boolean | Нет | Отключить REALITY | boolean |
change_sni | boolean | Нет | Применить изменение SNI | boolean |
disable_sni | boolean | Нет | Отключить SNI | boolean |
enable_family_filter | boolean | Нет | Включить семейный фильтр | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
pass_all_traffic_through_vpn | boolean | Нет | Направлять весь трафик через VPN | boolean |
block_bittorrent | boolean | Нет | Блокировать BitTorrent | boolean |
use_xhttp | boolean | Нет | Использовать транспорт XHTTP вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
use_grpc | boolean | Нет | Использовать транспорт gRPC вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
grpc_multi_mode | boolean | Нет | Включить многопоточный режим gRPC (TunMulti) | boolean; true требует use_grpc=true |
randomize_fingerprint | boolean | Нет | Использовать случайный отпечаток uTLS вместо chrome | boolean |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
as_key | boolean | Нет | Купить ключ активации вместо немедленного создания услуги | boolean |
enable_auto_renewal | boolean | Нет | Включить автопродление при покупке или продлении | boolean |
ConfigsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
openflux | OpenfluxPublicSettings — OpenfluxPublicSettings | Нет | Настройки OpenFlux; в ответах только публичные поля |
id | number | Да | Идентификатор записи |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
title | string | null | Да | Название |
location_id | number | Да | Идентификатор локации |
server_id | number | Да | Идентификатор сервера |
protocol | string | Да | Протокол подключения |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
created_at | number | Да | Время создания, Unix timestamp в секундах |
is_extended_settings_enabled | boolean | Нет | Включены ли расширенные настройки |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
flags | string[] | Нет | Флаги конфигурации или аккаунта |
is_online | boolean | null | Да | Доступность сервера |
auto_renewal | boolean | Да | Включено ли автопродление |
auto_renewal_days | number | null | Да | Период автопродления в днях; null при отключении |
ipv6 | string | null | Нет | IPv6-адрес сервера |
ConfigServerStats
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
date | string | Да | Дата точки статистики |
cpu | number | Да | Загрузка процессора, проценты |
ram | number | Да | Использование оперативной памяти, проценты |
up | number | Да | Исходящая скорость, Мбит/с |
down | number | Да | Входящая скорость, Мбит/с |
ConfigServerStatsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
host | string | Да | Адрес узла |
status | string | Да | Состояние ресурса или операции |
uptime_days | number | Да | Время непрерывной работы в днях |
cpu_model | string | Да | Модель процессора |
stats | ConfigServerStats[] — ConfigServerStats | Да | Точки статистики сервера |
ConfigsMakeBridgeBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
first_config_id | number | Да | Конфигурация входного узла моста | целое число; ≥ 1 |
second_config_id | number | Да | Конфигурация выходного узла моста | целое число; ≥ 1 |
first_type | "config" | "paid_option" | "cloud" | Нет | Тип первой конфигурации; по умолчанию config | строка; допустимо: "config", "paid_option", "cloud" |
second_type | "config" | "paid_option" | "cloud" | Нет | Тип второй конфигурации; по умолчанию config | строка; допустимо: "config", "paid_option", "cloud" |
ConfigsPaymentData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
link | string | Да | Ссылка на оплату |
ConfigsPromocodeData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
promocode | string | Да | Промокод активации |
days | number | Да | Количество дней |
ConfigsRenewalBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
promocode | string | Нет | Промокод активации | строка; длина 4–32 |
payment_method_id | number | Нет | Идентификатор способа оплаты из каталога тарифов | целое число; ≥ 1 |
tariff_id | number | Нет | Идентификатор тарифа из соответствующего каталога тарифов | целое число; ≥ 1 |
enable_auto_renewal | boolean | Нет | Включить автопродление при покупке или продлении | boolean |
ConfigsRenewalData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
ConfigsUpdateAwgConfigBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
port | number | Нет | Серверный UDP-порт; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
client_listen_port | number | Нет | Локальный порт клиента; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
mtu | number | Нет | MTU интерфейса; 0 означает значение по умолчанию | 0 пропускает числовую проверку DTO; целое число; ≥ 1280; ≤ 1420 |
dns | string | Нет | Устаревший одиночный IPv4 DNS; нельзя сочетать с dns_mode или dns_servers | пустая строка допустима на уровне DTO; IPv4 |
dns_mode | "default" | "custom" | "system" | Нет | Режим DNS AWG: default, custom или system | допустимо: "default", "custom", "system" |
dns_servers | string[] | Нет | IPv4 DNS для dns_mode=custom; для default/system список должен быть пустым | массив; IPv4 (для каждого элемента) |
persistent_keepalive | number | string | Нет | PersistentKeepalive: AWG 2.0 принимает только числовое скалярное значение; AWG 3.1 также поддерживает диапазоны и off | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
content_padding_addition | number | string | Нет | Параметр ContentPaddingAddition; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_after_time | number | string | Нет | Параметр RekeyAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_timeout | number | string | Нет | Параметр RekeyTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
reject_after_time | number | string | Нет | Параметр RejectAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
keepalive_timeout | number | string | Нет | Параметр KeepaliveTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
max_handshake_attempts | number | string | Нет | Параметр MaxHandshakeAttempts; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
random_trailers | "on" | "off" | Нет | Включение случайных окончаний пакетов (on/off); только AWG 3.1 | допустимо: "on", "off" |
disable_cookies | "on" | "off" | Нет | Отключение cookies (on/off); только AWG 3.1 | допустимо: "on", "off" |
jc | number | Нет | Количество мусорных пакетов AWG (Jc) | целое число; ≥ 0; ≤ 128 |
jmin | number | Нет | Минимальный размер мусорного пакета AWG (Jmin) | целое число; ≥ 0; ≤ 1280 |
jmax | number | Нет | Максимальный размер мусорного пакета AWG (Jmax) | целое число; ≥ 0; ≤ 1280 |
s1 | number | Нет | Размер мусорной части начального пакета (S1) | целое число; ≥ 0; ≤ 1132 |
s2 | number | Нет | Размер мусорной части ответного пакета (S2) | целое число; ≥ 0; ≤ 1188 |
s3 | number | Нет | Магический заголовок начального пакета (S3) | целое число; ≥ 0; ≤ 64 |
s4 | number | Нет | Магический заголовок ответного пакета (S4) | целое число; ≥ 0; ≤ 32 |
h1 | string | Нет | Заголовок обфускации AWG H1: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h2 | string | Нет | Заголовок обфускации AWG H2: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h3 | string | Нет | Заголовок обфускации AWG H3: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h4 | string | Нет | Заголовок обфускации AWG H4: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
i1 | string | Нет | Строка параметра обфускации I1 | строка |
i2 | string | Нет | Строка параметра обфускации I2 | строка |
i3 | string | Нет | Строка параметра обфускации I3 | строка |
i4 | string | Нет | Строка параметра обфускации I4 | строка |
i5 | string | Нет | Строка параметра обфускации I5 | строка |
protocol_version | "2.0" | "3.1" | Нет | Версия AWG 2.0/3.1; после смены нужен повторный импорт конфигурации | допустимо: "2.0", "3.1" |
awg_params | AwgParamsBody | null — AwgParamsBody | Нет | Полная замена переопределений AWG; null сбрасывает все. Нельзя сочетать с плоскими полями AWG в том же запросе | проверяются вложенные поля |
routing | AwgRoutingBody | null — AwgRoutingBody | Нет | Полная замена маршрутизации AWG; null или mode=full возвращает полный туннель | проверяются вложенные поля |
ConfigsUpdateSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
openflux | OpenfluxSettingsBody — OpenfluxSettingsBody | Если protocol=openflux | Настройки OpenFlux; в ответах только публичные поля | объект; проверяются вложенные поля |
location_id | number | Да | Идентификатор локации | число |
server_id | number | Нет | Идентификатор сервера | целое число; ≥ 1 |
server_ids | number[] | Нет | Список предпочтительных серверов в порядке возрастания задержки | массив; элементов ≥ 1; элементов ≤ 50; целое число (для каждого элемента); ≥ 1 (для каждого элемента) |
use_extended_settings | boolean | Нет | Включить расширенные настройки конфигурации | boolean |
use_salamander | boolean | Нет | Включить обфускацию Salamander для Hysteria2 на UDP-порту 8443 | boolean; true требует protocol=hysteria2; по Swagger: значение по умолчанию false |
use_warp | boolean | Нет | Включить WARP | boolean |
disable_reality | boolean | Нет | Отключить REALITY | boolean |
change_sni | boolean | Нет | Применить изменение SNI | boolean |
disable_sni | boolean | Нет | Отключить SNI | boolean |
enable_family_filter | boolean | Нет | Включить семейный фильтр | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
block_bittorrent | boolean | Нет | Блокировать BitTorrent | boolean |
pass_all_traffic_through_vpn | boolean | Нет | Направлять весь трафик через VPN | boolean |
protocol | string | Да | Протокол подключения | строка; допустимо: "vless", "trojan", "trojan-2901", "hysteria2", "vless-2410", "shadowsocks-2022", "wg", "amnezia-wg-2", "openflux" |
use_xhttp | boolean | Нет | Использовать транспорт XHTTP вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
use_grpc | boolean | Нет | Использовать транспорт gRPC вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
grpc_multi_mode | boolean | Нет | Включить многопоточный режим gRPC (TunMulti) | boolean; true требует use_grpc=true |
randomize_fingerprint | boolean | Нет | Использовать случайный отпечаток uTLS вместо chrome | boolean |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
ConfigsUpdateSettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
connection_url | string | Да | Строка подключения; формат зависит от протокола |
server_id | number | Да | Идентификатор сервера |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
ConfigsUpdateXRayConfigBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
xray_config | string | Да | Конфигурация Xray в виде строки с JSON | строка |
public_key | string | null | Нет | Открытый ключ X25519 | строка |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
CreateCustomSubscriptionBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | Да | Название | строка; длина 1–64 |
items | CustomSubscriptionItemBody[] — CustomSubscriptionItemBody | Да | Элементы списка | массив; проверяются вложенные поля (для каждого элемента); элементов ≥ 1; элементов ≤ 50 |
CustomAutoSelectBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
id | number | Нет | Постоянный ID балансировщика; при создании пропускается и назначается сервером | целое число; ≥ 1 |
name | string | Да | Название | строка; длина 1–64 |
strategy | string | Нет | Стратегия балансировщика: leastPing, leastLoad, random или roundRobin | строка; допустимо: "leastPing", "leastLoad", "random", "roundRobin"; по Swagger: значение по умолчанию "leastPing" |
config_tags | string[] | Да | Уникальные теги конфигураций | массив; элементов ≥ 2; элементов ≤ 50; элементы уникальны; строка (для каждого элемента); формат: /^(config|option|cloud)-\d+$|^ext:\d+:\d+$/ (для каждого элемента) |
priority_groups | CustomAutoSelectPriorityGroupBody[] — CustomAutoSelectPriorityGroupBody | Нет | Группы в порядке приоритета; стратегия применяется внутри группы. Следующая группа используется при недоступности предыдущей. Пустой массив возвращает плоскую группу | массив; элементов ≤ 50; проверяются вложенные поля (для каждого элемента) |
CustomAutoSelectPriorityGroupBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
name | string | Да | Название | строка; длина 1–64 |
config_tags | string[] | Да | Уникальные теги конфигураций | массив; элементов ≥ 1; элементов ≤ 50; элементы уникальны; строка (для каждого элемента); формат: /^(config|option|cloud)-\d+$|^ext:\d+:\d+$/ (для каждого элемента) |
CustomSubscriptionData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | Да | Название |
subscription_key | string | Да | Ключ ссылки подписки |
items_count | number | Да | Количество элементов подписки |
CustomSubscriptionDetailData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | Да | Название |
subscription_key | string | Да | Ключ ссылки подписки |
items_count | number | Да | Количество элементов подписки |
items | CustomSubscriptionItemData[] — CustomSubscriptionItemData | Да | Элементы списка |
CustomSubscriptionDeviceData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | null | Да | Название |
device_name | string | null | Да | Название устройства |
device_type | string | null | Да | Тип устройства или ОС |
device_model | string | null | Да | Модель устройства |
os_version | string | null | Да | Версия операционной системы |
is_blocked | boolean | Да | Заблокировано ли устройство |
is_approved | boolean | Да | Одобрено ли устройство; false означает ожидание одобрения владельца |
country | string | null | Да | Название страны |
city | string | null | Да | Город |
isp | string | null | Да | Интернет-провайдер |
last_seen_at | number | Да | Время последней активности, Unix timestamp в секундах |
created_at | number | Да | Время создания, Unix timestamp в секундах |
CustomSubscriptionDevicesDeletedData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
deleted_count | number | Да | Количество удалённых устройств |
CustomSubscriptionDeviceSettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
block_unknown_devices | boolean | Да | Блокировать приложения без аппаратного идентификатора устройства |
device_limit | number | Да | Максимальное число устройств; 0 означает отсутствие ограничения, если модель не оговаривает null |
require_approval | boolean | Да | Требовать одобрения новых устройств; устройства без HWID не допускаются, ранее одобренные продолжают работать |
force_ipv6 | boolean | Да | Выдавать IPv6-адреса в подписке |
CustomSubscriptionDevicesListData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
devices | CustomSubscriptionDeviceData[] — CustomSubscriptionDeviceData | Да | Список устройств |
total | number | Да | Общее количество записей |
page | number | Да | Номер страницы, начиная с 1 |
limit | number | Да | Количество записей на странице |
CustomSubscriptionDisplaySettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
profile_title | string | null | Да | Название профиля подписки |
announce | string | null | Да | Текст объявления с поддержкой цветовой разметки |
announce_url | string | null | Да | Ссылка объявления |
support_url | string | null | Да | Ссылка на поддержку |
profile_web_page_url | string | null | Да | Ссылка на страницу профиля |
custom_headers | CustomSubscriptionHeaderData[] — CustomSubscriptionHeaderData | Да | Дополнительные заголовки ответа при выдаче подписки |
profile_update_interval | number | Да | Интервал автоматического обновления подписки в часах, 1–12 |
CustomSubscriptionHeaderBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
name | string | Да | Название | строка; длина 1–64 |
value | string | Да | Значение заголовка | строка; длина ≤ 1024 |
CustomSubscriptionHeaderData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
name | string | Да | Название |
value | string | Да | Значение заголовка |
CustomSubscriptionItemBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
item_type | "user_config" | "cloud_server_config" | "paid_option" | "paid_option_index" | "paid_option_config" | Да | Тип элемента подписки | строка; допустимо: "user_config", "cloud_server_config", "paid_option", "paid_option_index", "paid_option_config" |
item_reference_id | number | Да | Идентификатор исходного ресурса; смысл зависит от item_type | целое число; ≥ 1 |
item_index | number | Нет | Индекс для paid_option_index, начиная с 0 | целое число; ≥ 0; ≤ 20 |
CustomSubscriptionItemData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
item_type | string | Да | Тип элемента подписки |
item_reference_id | number | Да | Идентификатор исходного ресурса; смысл зависит от item_type |
item_index | number | null | Нет | Индекс для paid_option_index, начиная с 0 |
position | number | Да | Позиция при сортировке, начиная с 0 |
resolved_title | string | null | Да | Итоговое название для отображения |
is_valid | boolean | Да | Исходный элемент существует и доступен |
server_config | CustomSubscriptionItemServerConfigData | null — CustomSubscriptionItemServerConfigData | Нет | Связанная серверная конфигурация для элемента paid_option_index |
CustomSubscriptionItemServerConfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
server_id | number | null | Да | Идентификатор сервера |
location_id | number | null | Да | Идентификатор локации |
title | string | null | Да | Название |
protocol | string | Да | Протокол подключения |
DeviceData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
title | string | null | Да | Название |
device_name | string | null | Да | Название устройства |
device_type | string | null | Да | Тип устройства или ОС |
os_version | string | null | Да | Версия операционной системы |
is_blocked | boolean | Да | Заблокировано ли устройство |
is_approved | boolean | Да | Одобрено ли устройство; false означает ожидание одобрения владельца |
is_fingerprinted | boolean | Да | Устройство распознано по User-Agent и IP вместо аппаратного идентификатора |
country | string | null | Да | Название страны |
city | string | null | Да | Город |
isp | string | null | Да | Интернет-провайдер |
last_seen_at | number | Да | Время последней активности, Unix timestamp в секундах |
DeviceSettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
block_unknown_devices | boolean | Да | Блокировать приложения без аппаратного идентификатора устройства |
device_limit | number | Да | Максимальное число устройств; 0 означает отсутствие ограничения, если модель не оговаривает null |
require_approval | boolean | Да | Требовать одобрения новых устройств; устройства без HWID не допускаются, ранее одобренные продолжают работать |
force_ipv6 | boolean | Да | Выдавать IPv6-адреса в подписке |
DevicesListData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
devices | DeviceData[] — DeviceData | Да | Список устройств |
total | number | Да | Общее количество записей |
page | number | Да | Номер страницы, начиная с 1 |
limit | number | Да | Количество записей на странице |
settings | DeviceSettingsData — DeviceSettingsData | Да | Настройки устройств |
DnsSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
resolve_direct_ipv4 | boolean | Нет | Главный переключатель клиентского DNS: при false секция dns не выдаётся и выбранный резолвер игнорируется; при true прямой трафик разрешается через IPv4 | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
EncryptedSubscriptionLinkData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
happ | string | Да | Ссылка подписки, зашифрованная для Happ |
incy | string | Да | Ссылка подписки, зашифрованная для INCY |
GetCustomSubscriptionDevicesQuery
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
page | number | Нет | Номер страницы, начиная с 1 | целое число; ≥ 1; по Swagger: значение по умолчанию 1 |
limit | number | Нет | Количество записей на странице | целое число; ≥ 1; ≤ 100; по Swagger: значение по умолчанию 20 |
GetDataDto
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
limit | number | Нет | Количество записей на странице | число; ≥ 1; ≤ 1000 |
offset | number | Нет | Количество пропускаемых записей | число; ≥ 0 |
GetDevicesQuery
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
page | number | Нет | Номер страницы, начиная с 1 | число; ≥ 1; по Swagger: значение по умолчанию 1 |
limit | number | Нет | Количество записей на странице | число; ≥ 1; ≤ 100; по Swagger: значение по умолчанию 20 |
IdentityData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
provider | string | Да | Провайдер авторизации |
provider_display | string | Да | Маскированный идентификатор пользователя у провайдера |
is_primary | boolean | Да | Основная запись |
is_active | boolean | Да | Активна ли запись |
status | string | Нет | Состояние ресурса или операции |
email_forwarding_enabled | boolean | Нет | Включена ли пересылка Apple Private Email |
linked_at | number | Да | Время привязки, Unix timestamp в секундах |
LocationsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
code | string | Да | Код страны или промокод в зависимости от модели |
title | string | Да | Название |
description | string | Да | Описание |
caption | string | Да | Краткая подпись |
is_active | boolean | Да | Активна ли запись |
ping_ip | string | null | Да | Адрес для проверки задержки |
tags | string[] | Да | Метки локации |
MonthlySpendData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
total | number | Да | Суммарные расходы на 30 дней, RUB; сумма исходных неокруглённых значений округляется один раз |
currency | string | Да | Всегда RUB |
has_active_renewals | boolean | Да | Есть подписки с автопродлением и подходящим активным тарифом оплаты с баланса |
next_charge | MonthlySpendNextCharge | null — MonthlySpendNextCharge | Да | Ближайшее списание с баланса; null, если его нет |
items | MonthlySpendItem[] — MonthlySpendItem | Да | Подписки, учтённые в месячном расходе |
MonthlySpendItem
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
type | "config" | "cloud_server" | "paid_option" | Да | Тип объекта или операции |
id | number | Да | Идентификатор записи |
title | string | Да | Название |
days | number | Да | Количество дней |
charge_amount | number | Да | Фактическая сумма одного автопродления в рублях за период days |
price_per_month | number | Да | charge_amount, приведённая к 30 дням и округлённая; это расчётная месячная стоимость |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
MonthlySpendNextCharge
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
at | number | Да | Время ближайшего списания, Unix timestamp в секундах |
amount | number | Да | Сумма платежа или пополнения |
NotificationsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
content | string | Да | Текст уведомления |
NotificationSettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
renewal_reminders | boolean | Да | Включить напоминания о продлении |
notification_start_hour | number | Да | Начальный час окна уведомлений, 0–23 |
notification_end_hour | number | Да | Конечный час окна уведомлений, 0–23 |
timezone_offset | number | Да | Смещение часового пояса относительно UTC, минуты |
OpenfluxPublicSettings
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
transport | OpenfluxTransport | "multi" — OpenfluxTransport | Да | Транспорт OpenFlux |
document_url | string | Нет | Общедоступный HTTPS-адрес документа провайдера; обязателен для транспортов на основе документов |
rooms | string | Нет | Канонический base64url от JSON-массива из 1–4 UUID комнат CUPS; если отсутствует, комнаты создаются |
priority | number | Нет | Приоритет транспорта: большее значение предпочтительнее; по умолчанию 50 |
transports | OpenfluxPublicSettings[] — OpenfluxPublicSettings | Нет | Настройки отдельных транспортов многотранспортной сессии |
max_token_configured | boolean | Да | Настроен ли токен MAX; сам токен не возвращается |
OpenfluxSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
document_url | string | Для документного транспорта | Общедоступный HTTPS-адрес документа провайдера; обязателен для транспортов на основе документов | строка; длина 1–4096 |
max_token | string | Если transport=max | Токен принимающего аккаунта MAX; не экспортируется VPN-клиентам | строка; длина 1–16384 |
rooms | string | Нет | Канонический base64url от JSON-массива из 1–4 UUID комнат CUPS; если отсутствует, комнаты создаются | строка; длина 1–512 |
transport | OpenfluxTransport | "multi" — OpenfluxTransport | Да | Транспорт OpenFlux | допустимо: "yandex", "max", "vyandex", "boards", "mailru", "cupsonline", "direct", "multi" |
transports | OpenfluxTransportSettingsBody[] — OpenfluxTransportSettingsBody | Если transport=multi | Настройки отдельных транспортов многотранспортной сессии | массив; элементов ≥ 1; элементов ≤ 7; проверяются вложенные поля (для каждого элемента) |
OpenfluxTransport
Тип: "yandex" | "max" | "vyandex" | "boards" | "mailru" | "cupsonline" | "direct".
OpenfluxTransportSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
document_url | string | Для документного транспорта | Общедоступный HTTPS-адрес документа провайдера; обязателен для транспортов на основе документов | строка; длина 1–4096 |
max_token | string | Если transport=max | Токен принимающего аккаунта MAX; не экспортируется VPN-клиентам | строка; длина 1–16384 |
rooms | string | Нет | Канонический base64url от JSON-массива из 1–4 UUID комнат CUPS; если отсутствует, комнаты создаются | строка; длина 1–512 |
transport | OpenfluxTransport — OpenfluxTransport | Да | Транспорт OpenFlux | допустимо: "yandex", "max", "vyandex", "boards", "mailru", "cupsonline", "direct" |
priority | number | Нет | Приоритет транспорта: большее значение предпочтительнее; по умолчанию 50 | целое число; ≥ 0; ≤ 100; по Swagger: значение по умолчанию 50 |
PaidOptionAvailableServerData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
available_slots | number | Да | Число свободных мест для конфигураций |
PaidOptionAvailableSubconfigProtocolsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
protocols | string[] | Да | Доступные протоколы |
PaidOptionConfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Нет | Идентификатор записи |
index | number | Нет | Индекс конфигурации в подписке, начиная с 0 |
traffic_scope_id | number | null | Нет | Идентификатор конфигурации для запроса статистики трафика |
server_id | number | Нет | Идентификатор сервера |
location_id | number | Нет | Идентификатор локации |
connection_url | string | Нет | Строка подключения; формат зависит от протокола |
title | string | null | Нет | Название |
original_title | string | Нет | Исходное название конфигурации |
custom_title | string | null | Нет | Название, заданное пользователем |
protocol | string | Нет | Протокол подключения |
openflux | OpenfluxPublicSettings — OpenfluxPublicSettings | Нет | Настройки OpenFlux; в ответах только публичные поля |
created_at | number | Нет | Время создания, Unix timestamp в секундах |
is_extended_settings_enabled | boolean | Нет | Включены ли расширенные настройки |
is_online | boolean | Да | Доступность сервера |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
PaidOptionConfigsChangeTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | null | Да; null сбрасывает | Название | строка; длина 1–64 |
PaidOptionConfigsCreateBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
openflux | OpenfluxSettingsBody — OpenfluxSettingsBody | Если protocol=openflux | Настройки OpenFlux; в ответах только публичные поля | объект; проверяются вложенные поля |
protocol | string | Да | Протокол подключения | строка; допустимо: "openflux", "vless", "trojan", "trojan-2901", "hysteria2", "vless-2410", "shadowsocks-2022", "amnezia-wg-2", "wg" |
users_paid_option_id | number | Нет | Идентификатор экземпляра приобретённой подписки users_paid_options.id | целое число; ≥ 1 |
server_id | number | Нет | Идентификатор сервера | целое число; ≥ 1 |
location_id | number | Нет | Идентификатор локации | целое число; ≥ 1 |
title | string | Нет | Название | строка; длина 1–64 |
use_extended_settings | boolean | Нет | Включить расширенные настройки конфигурации | boolean |
use_salamander | boolean | Нет | Включить обфускацию Salamander для Hysteria2 на UDP-порту 8443 | boolean; true требует protocol=hysteria2; по Swagger: значение по умолчанию false |
use_warp | boolean | Нет | Включить WARP | boolean |
disable_reality | boolean | Нет | Отключить REALITY | boolean |
change_sni | boolean | Нет | Применить изменение SNI | boolean |
disable_sni | boolean | Нет | Отключить SNI | boolean |
enable_family_filter | boolean | Нет | Включить семейный фильтр | boolean |
pass_all_traffic_through_vpn | boolean | Нет | Направлять весь трафик через VPN | boolean |
block_bittorrent | boolean | Нет | Блокировать BitTorrent | boolean |
use_xhttp | boolean | Нет | Использовать транспорт XHTTP вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
use_grpc | boolean | Нет | Использовать транспорт gRPC вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
grpc_multi_mode | boolean | Нет | Включить многопоточный режим gRPC (TunMulti) | boolean; true требует use_grpc=true |
randomize_fingerprint | boolean | Нет | Использовать случайный отпечаток uTLS вместо chrome | boolean |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
PaidOptionConfigsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
openflux | OpenfluxPublicSettings — OpenfluxPublicSettings | Нет | Настройки OpenFlux; в ответах только публичные поля |
id | number | Да | Идентификатор записи |
server_id | number | Да | Идентификатор сервера |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
title | string | null | Да | Название |
protocol | string | Да | Протокол подключения |
created_at | number | Да | Время создания, Unix timestamp в секундах |
is_extended_settings_enabled | boolean | Да | Включены ли расширенные настройки |
is_online | boolean | Да | Доступность сервера |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
PaidOptionConfigsUpdateAwgBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
port | number | Нет | Серверный UDP-порт; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
client_listen_port | number | Нет | Локальный порт клиента; 0 означает автоматический выбор | 0 пропускает числовую проверку DTO; целое число; ≥ 1024; ≤ 65535 |
mtu | number | Нет | MTU интерфейса; 0 означает значение по умолчанию | 0 пропускает числовую проверку DTO; целое число; ≥ 1280; ≤ 1420 |
dns | string | Нет | Устаревший одиночный IPv4 DNS; нельзя сочетать с dns_mode или dns_servers | пустая строка допустима на уровне DTO; IPv4 |
dns_mode | "default" | "custom" | "system" | Нет | Режим DNS AWG: default, custom или system | допустимо: "default", "custom", "system" |
dns_servers | string[] | Нет | IPv4 DNS для dns_mode=custom; для default/system список должен быть пустым | массив; IPv4 (для каждого элемента) |
persistent_keepalive | number | string | Нет | PersistentKeepalive: AWG 2.0 принимает только числовое скалярное значение; AWG 3.1 также поддерживает диапазоны и off | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
content_padding_addition | number | string | Нет | Параметр ContentPaddingAddition; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_after_time | number | string | Нет | Параметр RekeyAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
rekey_timeout | number | string | Нет | Параметр RekeyTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
reject_after_time | number | string | Нет | Параметр RejectAfterTime; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
keepalive_timeout | number | string | Нет | Параметр KeepaliveTimeout; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
max_handshake_attempts | number | string | Нет | Параметр MaxHandshakeAttempts; только AWG 3.1 | целое 0–65535, строка N или N-M (0 ≤ N ≤ M ≤ 65535), либо off |
random_trailers | "on" | "off" | Нет | Включение случайных окончаний пакетов (on/off); только AWG 3.1 | допустимо: "on", "off" |
disable_cookies | "on" | "off" | Нет | Отключение cookies (on/off); только AWG 3.1 | допустимо: "on", "off" |
jc | number | Нет | Количество мусорных пакетов AWG (Jc) | целое число; ≥ 0; ≤ 128 |
jmin | number | Нет | Минимальный размер мусорного пакета AWG (Jmin) | целое число; ≥ 0; ≤ 1280 |
jmax | number | Нет | Максимальный размер мусорного пакета AWG (Jmax) | целое число; ≥ 0; ≤ 1280 |
s1 | number | Нет | Размер мусорной части начального пакета (S1) | целое число; ≥ 0; ≤ 1132 |
s2 | number | Нет | Размер мусорной части ответного пакета (S2) | целое число; ≥ 0; ≤ 1188 |
s3 | number | Нет | Магический заголовок начального пакета (S3) | целое число; ≥ 0; ≤ 64 |
s4 | number | Нет | Магический заголовок ответного пакета (S4) | целое число; ≥ 0; ≤ 32 |
h1 | string | Нет | Заголовок обфускации AWG H1: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h2 | string | Нет | Заголовок обфускации AWG H2: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h3 | string | Нет | Заголовок обфускации AWG H3: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
h4 | string | Нет | Заголовок обфускации AWG H4: uint32 или диапазон min-max в строке | пустая строка допустима на уровне DTO; строка; формат: /^(?:\d+|\d+-\d+)$/ |
i1 | string | Нет | Строка параметра обфускации I1 | строка |
i2 | string | Нет | Строка параметра обфускации I2 | строка |
i3 | string | Нет | Строка параметра обфускации I3 | строка |
i4 | string | Нет | Строка параметра обфускации I4 | строка |
i5 | string | Нет | Строка параметра обфускации I5 | строка |
protocol_version | "2.0" | "3.1" | Нет | Версия AWG 2.0/3.1; после смены нужен повторный импорт конфигурации | допустимо: "2.0", "3.1" |
awg_params | AwgParamsBody | null — AwgParamsBody | Нет | Полная замена переопределений AWG; null сбрасывает все. Нельзя сочетать с плоскими полями AWG в том же запросе | проверяются вложенные поля |
routing | AwgRoutingBody | null — AwgRoutingBody | Нет | Полная замена маршрутизации AWG; null или mode=full возвращает полный туннель | проверяются вложенные поля |
PaidOptionConfigsUpdateSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
openflux | OpenfluxSettingsBody — OpenfluxSettingsBody | Если protocol=openflux | Настройки OpenFlux; в ответах только публичные поля | объект; проверяются вложенные поля |
protocol | string | Да | Протокол подключения | строка; допустимо: "openflux", "vless", "trojan", "trojan-2901", "hysteria2", "vless-2410", "shadowsocks-2022", "amnezia-wg-2", "wg" |
server_id | number | Нет | Идентификатор сервера | целое число; ≥ 1 |
location_id | number | Нет | Идентификатор локации | целое число; ≥ 1 |
use_extended_settings | boolean | Нет | Включить расширенные настройки конфигурации | boolean |
use_salamander | boolean | Нет | Включить обфускацию Salamander для Hysteria2 на UDP-порту 8443 | boolean; true требует protocol=hysteria2; по Swagger: значение по умолчанию false |
use_warp | boolean | Нет | Включить WARP | boolean |
disable_reality | boolean | Нет | Отключить REALITY | boolean |
change_sni | boolean | Нет | Применить изменение SNI | boolean |
disable_sni | boolean | Нет | Отключить SNI | boolean |
enable_family_filter | boolean | Нет | Включить семейный фильтр | boolean |
pass_all_traffic_through_vpn | boolean | Нет | Направлять весь трафик через VPN | boolean |
block_bittorrent | boolean | Нет | Блокировать BitTorrent | boolean |
use_xhttp | boolean | Нет | Использовать транспорт XHTTP вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
use_grpc | boolean | Нет | Использовать транспорт gRPC вместо TCP | boolean; use_xhttp и use_grpc не могут одновременно быть true |
grpc_multi_mode | boolean | Нет | Включить многопоточный режим gRPC (TunMulti) | boolean; true требует use_grpc=true |
randomize_fingerprint | boolean | Нет | Использовать случайный отпечаток uTLS вместо chrome | boolean |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
dns_preset | string | Нет | Набор настроек DNS; custom означает пользовательский DoH | допустимо: "stealthsurf", "cloudflare", "google", "quad9", "adguard", "adguard_family", "yandex", "comss", "mullvad", "custom" |
custom_dns_url | string | Если dns_preset=custom | HTTPS-адрес DoH; обязателен при dns_preset=custom | URL проверяется при dns_preset=custom; HTTPS URL с протоколом |
PaidOptionConfigsUpdateSettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
openflux | OpenfluxPublicSettings — OpenfluxPublicSettings | Нет | Настройки OpenFlux; в ответах только публичные поля |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
server_id | number | Да | Идентификатор сервера |
location_id | number | Да | Идентификатор локации |
xray_config | string | Нет | Конфигурация Xray в виде строки с JSON |
awg_config | string | Нет | Настройки AWG в виде строки с JSON |
PaidOptionConfigsUpdateXrayBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
xray_config | string | Да | Конфигурация Xray в виде строки с JSON | строка |
public_key | string | null | Нет | Открытый ключ X25519 | строка |
use_loopbacks | boolean | Нет | Переключаться на следующую группу балансировщика при полном отказе текущей группы | boolean |
PaidOptionDeviceData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
hwid | string | Да | Аппаратный идентификатор устройства |
platform | string | null | Да | Платформа устройства |
os_version | string | null | Да | Версия операционной системы |
device_model | string | null | Да | Модель устройства |
created_at | number | Да | Время создания, Unix timestamp в секундах |
PaidOptionDevicesData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
total | number | Да | Общее количество записей |
devices | PaidOptionDeviceData[] — PaidOptionDeviceData | Да | Список устройств |
PaidOptionLimitsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
device_limit | number | Нет | Максимальное число устройств; 0 означает отсутствие ограничения, если модель не оговаривает null | число; ≥ 0; ≤ 100 |
traffic_limit | number | Нет | Лимит трафика в байтах; 0 означает отсутствие ограничения | число; ≥ 0 |
PaidOptionLocationData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
code | string | Да | Код страны или промокод в зависимости от модели |
title | string | Да | Название |
emoji | string | null | Да | Эмодзи локации |
description | string | null | Да | Описание |
caption | string | null | Да | Краткая подпись |
ping_ip | string | Да | Адрес для проверки задержки |
is_active | boolean | Да | Активна ли запись |
position | number | Да | Позиция при сортировке, начиная с 0 |
has_servers | boolean | Да | Есть хотя бы один активный сервер опции в локации |
PaidOptionsAutoRenewalBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
enabled | boolean | Да | Включено | boolean |
days | number | Если enabled=true | Количество дней | число; ≥ 1 |
users_paid_option_id | number | Нет | Идентификатор экземпляра приобретённой подписки users_paid_options.id | число; ≥ 1 |
PaidOptionsAutoRenewalData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
auto_renewal | boolean | Да | Включено ли автопродление |
auto_renewal_days | number | null | Да | Период автопродления в днях; null при отключении |
PaidOptionsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор приобретённого экземпляра users_paid_options.id; отличается от option_id |
option_id | number | Да | Идентификатор продукта платной опции |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
configs | PaidOptionConfigData[] — PaidOptionConfigData | Нет | Конфигурации |
auto_renewal | boolean | Да | Включено ли автопродление |
auto_renewal_days | number | null | Да | Период автопродления в днях; null при отключении |
PaidOptionsOrderBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
paid_option_id | number | Да | Идентификатор продукта платной опции | число |
tariff_id | number | Нет | Идентификатор тарифа из соответствующего каталога тарифов | число; ≥ 1 |
payment_method_id | number | Нет | Идентификатор способа оплаты из каталога тарифов | число; ≥ 1 |
promocode | string | Нет | Промокод активации | строка; длина 4–32 |
as_key | boolean | Нет | Купить ключ активации вместо немедленного создания услуги | boolean |
enable_auto_renewal | boolean | Нет | Включить автопродление при покупке или продлении | boolean |
users_paid_option_id | number | Нет | Экземпляр для продления при разрешённых повторных покупках; отсутствие позволяет создать новую подписку | число; ≥ 1 |
location_id | number | Нет | Предпочтительная локация начальной конфигурации новой подписки | число; ≥ 1 |
PaidOptionsOrderData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
link | string | Нет | Ссылка на оплату |
option_id | number | Нет | Идентификатор продукта платной опции |
status | string | Нет | Состояние ресурса или операции |
PaidOptionsPaymentMethodTariffsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
display_name | string | Да | Название способа оплаты для отображения |
currency | string | Да | Валюта |
min_amount | number | null | Да | Минимальная сумма платежа; null, если не задана |
tariffs | PaidOptionsTariffData[] — PaidOptionsTariffData | Да | Активные тарифы способа оплаты |
PaidOptionsPromocodeData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
promocode | string | Да | Промокод активации |
days | number | Да | Количество дней |
PaidOptionsTariffData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
days | number | Да | Количество дней |
price | number | Да | Цена в валюте способа оплаты |
old_price | number | Нет | Цена до применения скидки или наценки; поле может отсутствовать |
PaidOptionsTariffsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
option_key | string | Да | Системный ключ платной опции |
title | string | Да | Название |
caption | string | null | Да | Краткая подпись |
description | string | null | Да | Описание |
is_sold_out | boolean | Да | Свободные места на серверах опции отсутствуют |
almost_full | boolean | Да | Осталось не более 5% мест, но опция ещё доступна |
allow_multiple_purchase | boolean | Да | Можно покупать несколько отдельных экземпляров опции |
payment_methods | PaidOptionsPaymentMethodTariffsData[] — PaidOptionsPaymentMethodTariffsData | Да | Способы оплаты с доступными тарифами |
PaidOptionSubconfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
protocol | string | Да | Протокол подключения |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
PaidOptionSubconfigsCreateOrPatchBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
protocol | string | Да | Протокол подключения | строка; допустимо: "http", "socks5" |
PaidOptionSubscriptionData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
used_traffic_bytes | number | Да | Использованный трафик в байтах |
lifetime_used_traffic_bytes | number | Да | Использованный трафик за всё время, байты |
period_used_traffic_bytes | number | Да | Использованный трафик текущего расчётного периода, байты |
period_start | string | Да | Начало расчётного периода, дата YYYY-MM-DD в UTC |
device_limit | number | null | Да | Лимит устройств; null означает отсутствие ограничения |
traffic_limit_bytes | number | Да | Лимит трафика в байтах; 0 означает отсутствие ограничения |
status | string | Да | Состояние ресурса или операции |
PaymentHistoryData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
amount | string | null | Да | Сумма платежа или пополнения |
type | string | null | Да | Тип объекта или операции |
method | string | Да | Способ оплаты |
days | number | Да | Количество дней |
is_paid | boolean | Да | Платёж оплачен |
as_key | boolean | Нет | Покупка ключа активации; при method=promocode поле отсутствует |
created_at | number | Да | Время создания, Unix timestamp в секундах |
PaymentMethodTariffsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
display_name | string | Да | Название способа оплаты для отображения |
currency | string | Да | Валюта |
min_amount | number | null | Да | Минимальная сумма платежа; null, если не задана |
tariffs | PaymentTariffData[] — PaymentTariffData | Да | Активные тарифы способа оплаты |
PaymentReceiptAction
Тип: "purchase" | "renewal" | "topup" | "transfer" | "payment" | "unknown".
PaymentReceiptData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
status | "pending" | "paid" | Да | Состояние ресурса или операции |
amount | string | null | Да | Сумма платежа в виде десятичной строки либо null |
currency | string | Да | Валюта |
payment_method | string | Да | Системный ключ способа оплаты |
created_at | number | Да | Время создания, Unix timestamp в секундах |
paid_at | number | null | Да | Время оплаты, Unix timestamp в секундах; null до оплаты |
service | PaymentReceiptServiceData — PaymentReceiptServiceData | Да | Услуга, к которой относится платёж |
PaymentReceiptDetails
Тип: Record<string, string | number | boolean>.
PaymentReceiptServiceData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
type | PaymentReceiptServiceType — PaymentReceiptServiceType | Да | Тип объекта или операции |
action | PaymentReceiptAction — PaymentReceiptAction | Да | Вид платёжной операции |
title | string | Да | Название |
details | PaymentReceiptDetails — PaymentReceiptDetails | Да | Очищенные от секретов сведения об оплаченной услуге |
PaymentReceiptServiceType
Тип: "vpn_config" | "cloud_server" | "paid_option" | "balance" | "activation_key" | "custom" | "unknown".
PaymentTariffData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
days | number | Да | Количество дней |
price | number | Да | Цена в валюте способа оплаты |
old_price | number | Нет | Цена до применения скидки или наценки; поле может отсутствовать |
ProfileData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
email | string | null | Да | Адрес электронной почты; в реферальной истории маскируется |
uuid | string | null | Да | UUID пользователя |
subscription_key | string | null | Да | Ключ основной подписки; это не полный URL |
sign_in_method | string | Да | Способ входа |
referral_balance | number | Да | Реферальный баланс |
balance | number | Да | Основной баланс в рублях |
referrals_count | number | Да | Количество рефералов |
is_telegram_connected | boolean | Да | Подключён ли Telegram |
referral_code | string | Да | Действующий пользовательский или автоматически созданный реферальный код |
referral_auto_code | string | null | Да | Постоянный автоматически созданный реферальный код |
referral_slug | string | null | Да | Пользовательский реферальный код либо null |
onboarding_completed | boolean | Да | Завершено ли первоначальное знакомство с приложением |
developer_mode | boolean | Да | Включён ли режим разработчика |
partner_mode | boolean | Да | Включён ли партнёрский режим |
is_verified | boolean | Да | Подтверждён ли пользователь |
has_premium_config | boolean | Да | Есть действующая платная опция 4 хотя бы с одной созданной конфигурацией |
pricing_rules | UserPricingRuleData[] — UserPricingRuleData | Нет | Персональные скидки и наценки |
linked_providers | IdentityData[] — IdentityData | Нет | Привязанные способы авторизации |
PromocodesData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
code | string | Да | Код страны или промокод в зависимости от модели |
activation_days | number | Да | Количество дней активации |
product_type | string | Да | Тип продукта промокода |
is_active | boolean | Да | Активна ли запись |
created_at | number | Да | Время создания, Unix timestamp в секундах |
PutRoutingBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
routing_rules | unknown[] | Да | Правила маршрутизации данной конфигурации | массив; элементов ≤ 100 |
tunnels | TunnelEntryBody[] — TunnelEntryBody | Да | Туннели через другие конфигурации | массив; элементов ≤ 50; проверяются вложенные поля (для каждого элемента) |
quick_toggle_overrides | Record<string, boolean> | null | Нет | Переопределения быстрых переключателей; null означает наследование | объект |
app_routing_overrides | ClientAppRoutingSettingsBody | null — ClientAppRoutingSettingsBody | Нет | При отсутствии сохраняются текущие настройки; null включает наследование общих настроек | проверяются вложенные поля |
dns_overrides | DnsSettingsBody | null — DnsSettingsBody | Нет | Переопределения клиентского DNS; null означает наследование | проверяются вложенные поля |
ReferralPaymentData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
amount | number | Да | Сумма платежа или пополнения |
method | string | Нет | Способ оплаты |
account | string | Нет | Счёт или реквизиты выплаты |
status | string | Нет | Состояние ресурса или операции |
created_at | number | Да | Время создания, Unix timestamp в секундах |
email | string | Нет | Адрес электронной почты; в реферальной истории маскируется |
RenameCustomSubscriptionDeviceBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | Да | Название | строка; длина 1–64 |
RenameDeviceBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | Да | Название | строка; длина 1–64 |
ReorderCustomSubscriptionItemsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
item_ids | number[] | Да | Идентификаторы элементов подписки в новом порядке | массив; элементов ≥ 1; элементов ≤ 50; целое число (для каждого элемента); ≥ 1 (для каждого элемента) |
RoutingData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
routing_rules | unknown[] | Да | Правила маршрутизации данной конфигурации |
tunnels | TunnelEntryData[] — TunnelEntryData | Да | Туннели через другие конфигурации |
quick_toggle_overrides | Record<string, boolean> | null | Да | Переопределения быстрых переключателей; null означает наследование |
effective_quick_toggles | Record<string, boolean> | Да | Итоговые переключатели после объединения общих настроек и переопределений |
app_routing_overrides | ClientAppRoutingSettingsBody | null — ClientAppRoutingSettingsBody | Да | Переопределения маршрутизации приложений; null означает наследование |
effective_app_routing | ClientAppRoutingSettingsBody — ClientAppRoutingSettingsBody | Да | Итоговые настройки маршрутизации приложений |
dns_overrides | DnsSettingsBody | null — DnsSettingsBody | Да | Переопределения клиентского DNS; null означает наследование |
effective_dns | DnsSettingsBody — DnsSettingsBody | Да | Итоговые настройки клиентского DNS |
SaveXrayTemplateBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
template | string | Да | Шаблон Xray в виде строки с JSON, без outbounds | строка; длина ≤ 32768 |
SbpBankList
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | string | Да | Идентификатор записи |
name | string | Да | Название |
ShareSubscriptionData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
url | string | Да | Прямая ссылка на временный документ VK со списком конфигураций |
expires_at | number | Да | Время окончания действия, Unix timestamp в секундах |
ttl | number | Да | Время жизни документа VK в секундах |
SubconfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | Да | Идентификатор записи |
protocol | string | Да | Протокол подключения |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
SubconfigsCreateOrPatchBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
protocol | string | Да | Протокол подключения | строка; допустимо: "http", "socks5" |
TrafficChildData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
scope | TrafficScopeData — TrafficScopeData | Да | Область учёта трафика |
total_bytes | string | Да | Трафик в байтах, десятичная строка без потери точности |
TrafficData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
scope | TrafficScopeData — TrafficScopeData | Да | Область учёта трафика |
accounted_from | number | null | Да | Время первого успешного базового замера; null, если данных нет |
last_collected_at | number | null | Да | Время последнего успешного сбора счётчиков; null, если данных нет |
complete | boolean | Да | Полнота и актуальность счётчиков всех текущих источников; false означает неполные данные |
total_bytes | string | Да | Трафик в байтах, десятичная строка без потери точности |
points | TrafficPointData[] — TrafficPointData | Да | Точки временного ряда |
children | TrafficChildData[] — TrafficChildData | Да | Суммарный трафик непосредственных дочерних областей за выбранный диапазон |
series | TrafficLeafSeriesData[] — TrafficLeafSeriesData | Нет | Временные ряды конечных конфигураций; возвращаются при include_series |
TrafficGroupBy
Тип: "hour" | "day" | "week" | "month".
TrafficLeafSeriesData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
scope | TrafficSeriesScopeData — TrafficSeriesScopeData | Да | Область учёта трафика |
accounted_from | number | null | Да | Время первого успешного базового замера; null, если данных нет |
last_collected_at | number | null | Да | Время последнего успешного сбора счётчиков; null, если данных нет |
complete | boolean | Да | Полнота и актуальность счётчиков всех текущих источников; false означает неполные данные |
total_bytes | string | Да | Трафик в байтах, десятичная строка без потери точности |
points | TrafficPointData[] — TrafficPointData | Да | Точки временного ряда |
TrafficPointData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
start | number | Да | Начало интервала UTC, Unix timestamp в секундах |
total_bytes | string | Да | Трафик в байтах, десятичная строка без потери точности |
TrafficQueryDto
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
from | number | Да | Начало диапазона включительно, Unix timestamp UTC в секундах | целое число; ≥ 0; ≤ 4294967295 |
to | number | Да | Конец диапазона включительно, Unix timestamp UTC в секундах | целое число; ≥ 0; ≤ 4294967295 |
group_by | TrafficGroupBy — TrafficGroupBy | Да | Интервал агрегации UTC: hour, day, week или month; неделя начинается в понедельник | допустимо: "hour", "day", "week", "month" |
scope_type | account / user_config / paid_option / paid_option_config / cloud_server / cloud_config / cloud_proxy | Нет | Область учёта трафика; по умолчанию account | допустимо: account, user_config, paid_option, paid_option_config, cloud_server, cloud_config, cloud_proxy; по Swagger: значение по умолчанию "account" |
scope_id | number | Нет | Идентификатор области; обязателен вне account и запрещён для account | целое число; ≥ 1; ≤ 4294967295 |
include_series | boolean | Нет | Добавить временные ряды всех конечных конфигураций области | boolean; по Swagger: значение по умолчанию false |
TrafficScopeData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
type | account / user_config / paid_option / paid_option_config / cloud_server / cloud_config / cloud_proxy | Да | Тип объекта или операции |
id | number | null | Да | Идентификатор области; null для account |
title | string | null | Да | Название области; null для account или при отсутствии данных |
protocol | string | null | Да | Протокол; null для account и областей-контейнеров |
active | boolean | Да | Есть действующий физический источник счётчиков |
TrafficSeriesScopeData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
type | account / user_config / paid_option / paid_option_config / cloud_server / cloud_config / cloud_proxy | Да | Тип объекта или операции |
id | number | null | Да | Идентификатор записи |
title | string | null | Да | Название |
protocol | string | null | Да | Протокол подключения |
active | boolean | Да | Есть действующий физический источник счётчиков |
parent_type | TrafficScopeType | null | Да | Тип родительской области учёта |
parent_id | number | null | Да | Идентификатор родительской области учёта |
TunnelEntryBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
tag | string | Да | Тег исходящего соединения | строка |
source_config_type | string | Да | Тип конфигурации, через которую строится туннель | строка |
source_config_id | number | Да | Идентификатор конфигурации туннеля | число |
source_config_index | number | Нет | Индекс конфигурации туннеля | число |
TunnelEntryData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
tag | string | Да | Тег исходящего соединения |
source_config_type | string | Да | Тип конфигурации, через которую строится туннель |
source_config_id | number | Да | Идентификатор конфигурации туннеля |
source_config_index | number | Нет | Индекс конфигурации туннеля |
source_config_label | string | Нет | Название исходной конфигурации туннеля |
UpdateConfigTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | Да | Название | строка; длина 1–64 |
UpdateCustomSubscriptionDeviceBlockedBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
is_blocked | boolean | Да | Заблокировано ли устройство | boolean |
UpdateCustomSubscriptionDeviceSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
block_unknown_devices | boolean | Нет | Блокировать приложения без аппаратного идентификатора устройства | boolean |
device_limit | number | Нет | Максимальное число устройств; 0 означает отсутствие ограничения, если модель не оговаривает null | целое число; ≥ 0; ≤ 100 |
require_approval | boolean | Нет | Требовать одобрения новых устройств; устройства без HWID не допускаются, ранее одобренные продолжают работать | boolean |
force_ipv6 | boolean | Нет | Выдавать IPv6-адреса в подписке | boolean |
UpdateCustomSubscriptionDisplaySettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
profile_title | string | Нет | Название профиля подписки | строка; длина ≤ 25 |
announce | string | Нет | Текст объявления с поддержкой цветовой разметки | строка; длина ≤ 200 |
announce_url | string | Нет | Ссылка объявления | корректный URL |
support_url | string | Нет | Ссылка на поддержку | корректный URL |
profile_web_page_url | string | Нет | Ссылка на страницу профиля | корректный URL |
custom_headers | CustomSubscriptionHeaderBody[] | null — CustomSubscriptionHeaderBody | Нет | Дополнительные заголовки ответа при выдаче подписки | массив; проверяются вложенные поля (для каждого элемента); элементов ≤ 20 |
profile_update_interval | number | Нет | Интервал автоматического обновления подписки в часах, 1–12 | целое число; ≥ 1; ≤ 12 |
UpdateCustomSubscriptionItemsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
items | CustomSubscriptionItemBody[] — CustomSubscriptionItemBody | Да | Элементы списка | массив; проверяются вложенные поля (для каждого элемента); элементов ≥ 1; элементов ≤ 50 |
UpdateCustomSubscriptionTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | Да | Название | строка; длина 1–64 |
UpdateDeviceBlockedBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
is_blocked | boolean | Да | Заблокировано ли устройство | boolean |
UpdateDeviceSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
block_unknown_devices | boolean | Нет | Блокировать приложения без аппаратного идентификатора устройства | boolean |
device_limit | number | Нет | Максимальное число устройств; 0 означает отсутствие ограничения, если модель не оговаривает null | число; ≥ 0; ≤ 100 |
require_approval | boolean | Нет | Требовать одобрения новых устройств; устройства без HWID не допускаются, ранее одобренные продолжают работать | boolean |
force_ipv6 | boolean | Нет | Выдавать IPv6-адреса в подписке | boolean |
UpdateNotificationSettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
renewal_reminders | boolean | Нет | Включить напоминания о продлении | boolean |
notification_start_hour | number | Нет | Начальный час окна уведомлений, 0–23 | целое число; ≥ 0; ≤ 23 |
notification_end_hour | number | Нет | Конечный час окна уведомлений, 0–23 | целое число; ≥ 0; ≤ 23 |
timezone_offset | number | Нет | Смещение часового пояса относительно UTC, минуты | целое число; ≥ -720; ≤ 840 |
UpdateXraySettingsBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
json_mode | boolean | Нет | Включить выдачу подписки в режиме Xray JSON | boolean |
json_default_config_tag | string | Нет | Тег конфигурации по умолчанию для JSON-режима | строка; формат: /^(?:(?:config|cloud|option|ext)-\d+|ext:\d+:\d+)$/ |
fragment | boolean | Нет | Включить фрагментацию TLS | boolean |
auto_select_enabled | boolean | Нет | Виртуальная конфигурация автоматического выбора с балансировщиком leastPing | boolean |
auto_select_name | string | Нет | Название конфигурации автоматического выбора | строка; длина ≤ 128 |
global_quick_toggles | Record<string, boolean> | Нет | Частичное объединение общих быстрых переключателей с сохранёнными значениями | объект |
app_routing | ClientAppRoutingSettingsBody — ClientAppRoutingSettingsBody | Нет | Маршрутизация приложений, выдаваемая только в формате подписки StealthSurf desktop | проверяются вложенные поля |
custom_auto_selects | CustomAutoSelectBody[] — CustomAutoSelectBody | Нет | Полная замена пользовательских балансировщиков; весь сохранённый объект настроек ограничен 65535 байтами UTF-8 | массив; проверяются вложенные поля (для каждого элемента); элементов ≤ 10 |
global_routing_rules | unknown[] | Нет | Полная замена общих правил Xray; сервис допускает не более 100 правил | массив |
dns | DnsSettingsBody — DnsSettingsBody | Нет | Блок клиентского DNS; частичное объединение с сохранёнными настройками | проверяются вложенные поля |
UserPricingRuleData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
type | string | Да | Тип объекта или операции |
product_title | string | Да | Название продукта |
percent | number | Да | Процент изменения цены: отрицательное значение — скидка, положительное — наценка |
comment | string | null | Да | Комментарий к правилу цены |
WhiteInternetConfigData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
index | number | Да | Индекс конфигурации в подписке, начиная с 0 |
connection_url | string | Да | Строка подключения; формат зависит от протокола |
original_title | string | Да | Исходное название конфигурации |
custom_title | string | null | Да | Название, заданное пользователем |
WireguardDeviceData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
id | number | null | Да | Идентификатор дополнительного устройства; null для основного устройства |
title | string | Да | Название |
is_primary | boolean | Да | Основное устройство конфигурации |
protocol | WireguardDeviceProtocol — WireguardDeviceProtocol | Да | Протокол подключения |
connection_url | string | Да | Текст конфигурации WireGuard/AWG с секциями [Interface] и [Peer] |
created_at | number | Да | Время создания, Unix timestamp в секундах |
WireguardDeviceMutationData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
success | true | Да | Успешное выполнение операции |
WireguardDeviceProtocol
Допустимые значения: wg, amnezia-wg-2.
WireguardDeviceTitleBody
| Поле | Тип / модель | Обязательно | Описание | Проверки и ограничения |
|---|---|---|---|---|
title | string | Да | Название | строка; длина 1–64 |
XRayKeyData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
private_key | string | Да | Закрытый ключ X25519 |
public_key | string | Да | Открытый ключ X25519 |
XraySettingsData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
json_mode | boolean | Да | Включить выдачу подписки в режиме Xray JSON |
json_default_config_tag | string | null | Да | Тег конфигурации по умолчанию для JSON-режима |
fragment | boolean | Да | Включить фрагментацию TLS |
auto_select_enabled | boolean | Да | Включить виртуальную конфигурацию автоматического выбора |
auto_select_name | string | null | Да | Название конфигурации автоматического выбора |
global_quick_toggles | Record<string, boolean> | Да | Общие быстрые переключатели |
app_routing | ClientAppRoutingSettingsBody — ClientAppRoutingSettingsBody | Да | Настройки маршрутизации приложений StealthSurf desktop |
custom_auto_selects | CustomAutoSelectBody[] — CustomAutoSelectBody | Да | Пользовательские балансировщики автоматического выбора |
global_routing_rules | unknown[] | Да | Общие правила маршрутизации Xray |
dns | DnsSettingsBody — DnsSettingsBody | Да | IPv4-адрес DNS в параметрах AWG либо блок клиентского DNS в настройках Xray |
XrayTemplateData
| Поле | Тип / модель | Обязательно | Описание |
|---|---|---|---|
template | string | Да | Шаблон Xray в виде строки с JSON |
is_custom | boolean | Да | Используется пользовательский шаблон |
created_at | number | null | Да | Время создания, Unix timestamp в секундах |
updated_at | number | null | Да | Время изменения, Unix timestamp в секундах |
Помогла ли вам эта статья?