ZOND / PROVIDER API / 0.9.28

Ваш сервис внутри ZOND

Добавьте нужную информацию в ответ подписки. Клиент сам соберёт понятную карточку провайдера.

Один ответ — вся информация

ZOND читает метаданные из HTTP-заголовков успешного ответа с подпиской. Это заголовки ответа сервера, а не запроса клиента. Если есть перенаправления, передайте поля в окончательном ответе. Все перечисленные поля необязательны.

HTTP / RESPONSE
HTTP/1.1 200 OK
Content-Type: text/plain; charset=utf-8
profile-title: My Provider
x-zond-logo-url: https://cdn.provider.example/logo.png
x-zond-channel-url: https://t.me/provider_news
support-url: https://t.me/provider_support
profile-web-page-url: https://provider.example/
x-zond-provider-message: News and support are one click away.
subscription-userinfo: upload=1073741824; download=31138512896; total=107374182400; expire=1793836800

vless://11111111-1111-4111-8111-111111111111@server.example:443?encryption=none&security=tls&sni=server.example&type=tcp#Germany

Замените адреса, идентификатор сервера и значения трафика своими данными. Адреса .example предназначены для документации.

Название и сообщение

profile-title задаёт название провайдера (до 80 символов). x-zond-provider-message передаёт короткое сообщение (до 240 символов). Оба поля принимают обычный текст или base64: с UTF-8-текстом в Base64. Для кириллицы в HTTP-заголовках используйте Base64.

HTTP / UTF-8 → BASE64
profile-title: base64:0JzQvtC5INC/0YDQvtCy0LDQudC00LXRgA==
x-zond-provider-message: base64:0J3QvtCy0L7RgdGC0Lgg0LIg0LrQsNC90LDQu9C1Lg==

Текст отображается без HTML и Markdown, управляющие символы удаляются. На главном экране сообщение занимает до двух строк; сохранённый текст доступен при наведении. Ссылки передавайте отдельными заголовками.

Трафик и срок действия

HTTP / SUBSCRIPTION-USERINFO
subscription-userinfo: upload=1073741824; download=31138512896; total=107374182400; expire=1793836800

upload и download — переданные и полученные байты; их сумма даёт расход. total — положительный лимит в байтах. expire — Unix-время окончания подписки в секундах UTC. В примере использовано 30 ГиБ из 100 ГиБ, срок — до 05.11.2026 00:00 UTC.

На карточке подписки ZOND показывает полученные значения, срок и оставшиеся дни. Это снимок данных провайдера на момент последнего обновления подписки, а не непрерывный запрос к биллингу.

Метаданные внутри подписки

При ручном импорте можно использовать строки-комментарии перед конфигурацией. Они также распознаются внутри Base64-кодированного тела.

TEXT / BODY
#profile-title: My Provider
#x-zond-provider-message: News and support in our channel.
#x-zond-channel-url: https://t.me/provider_news
#support-url: https://t.me/provider_support
#profile-web-page-url: https://provider.example/
vless://11111111-1111-4111-8111-111111111111@server.example:443?encryption=none&security=tls&sni=server.example&type=tcp#Germany

Для каждого поля HTTP-заголовок имеет приоритет над одноимённым комментарием. Пустой или некорректный заголовок не заменяется значением из тела. Отсутствующие поля очищаются при успешном обновлении; настройки других подписок не затрагиваются.

Форматы и обновления

Тело подписки: ссылки VLESS, VMess, Trojan и Shadowsocks по одной на строку, их Base64-представление или поддерживаемая конфигурация Xray JSON. Максимальный размер ответа и декодированного текста — 2 МиБ, количество ссылок — до 1000.

Clash YAML, произвольный sing-box JSON и плагины Shadowsocks не являются поддерживаемыми форматами импорта. Для VMess используйте alterId=0.

HTTP / REQUEST
User-Agent: Happ/3.0.0 Zond/0.9.20

Адрес подписки должен быть HTTPS. Клиент следует максимум четырём перенаправлениям. profile-update-url может предложить новый адрес обновления. При HTTP 429 и 503 учитывается Retry-After; прежняя подписка сохраняется.

Период обновления выбирает пользователь в клиенте. Контакты и сообщение хранятся отдельно для каждой подписки, меняются при её выборе и восстанавливаются вместе с историей.

Проверьте перед подключением пользователей

  1. Отдайте рабочую подписку и один контактный заголовок.
  2. Обновите подписку в ZOND 0.9.20 и проверьте кнопку под карточкой.
  3. Добавьте остальные ссылки, кириллицу в Base64 и метаданные трафика.
  4. Уберите заголовок: после успешного обновления кнопка должна исчезнуть.
  5. Проверьте отсутствие метаданных и ошибку сервера: импорт и сохранение прежних данных должны работать.