Заголовки подписки: profile-title, profile-update-interval, subscription-userinfo
- Автор
- Екатерина Лебедева, редактор раздела knowledge base
- Проверил:
- Артём Волков
- Проверено:
- Опубликовано:
- , обновлено
- Версия гайда:
- 1.0
Коротко
Заголовки подписки — параметры вроде profile-title, profile-update-interval и subscription-userinfo: провайдер передаёт их в HTTP-заголовках ответа или строками с # в теле подписки. Часть расширенных параметров требует Provider ID.
Стандартные параметры доступны любому провайдеру: они задают имя подписки, интервал автообновления, строку с остатком трафика и сроком действия, ссылку на поддержку и объявление. Расширенные параметры — смену адреса подписки, запасной адрес на случай сбоя, расширенные объявления об окончании подписки и системные уведомления — можно использовать только вместе с Provider ID. Оба вида параметров передаются одинаково: либо заголовком HTTP-ответа, либо строкой с символом # в начале тела подписки. По умолчанию Happ ждёт ответа сервера подписки 9 секунд, а провайдер с Provider ID может изменить это время в пределах от 5 до 15 секунд.
Стандартные параметры
Эти параметры доступен любому провайдеру подписки без дополнительной регистрации:
| Параметр | Что задаёт | Ограничение |
|---|---|---|
profile-title | Имя подписки в интерфейсе Happ | До 25 символов, обычным текстом или в Base64 |
profile-update-interval | Интервал автообновления в часах | Целое число, кратное одному часу |
subscription-userinfo | Использованный трафик, общий лимит, дату окончания | Одна строка вида upload=…; download=…; total=…; expire=… |
support-url | Ссылку на поддержку в шапке подписки | — |
profile-web-page-url | Ссылку на сайт подписки в шапке | — |
announce | Текст объявления в подписке | До 200 символов, текст или Base64 |
routing-enable | Включение или отключение маршрутизации для подписки | Значение true/1 включает, любое другое непустое — выключает |
Как передать параметр
Любой стандартный или расширенный параметр можно указать одним из двух равнозначных способов — заголовком HTTP-ответа сервера подписки или строкой с символом # в начале её тела:
profile-title: Example
profile-update-interval: 12
subscription-userinfo: upload=0; download=2000000000; total=10000000000; expire=1790951622Расширенные параметры провайдера
Эта группа параметров работает только вместе с Provider ID — идентификатором, который провайдер получает при регистрации на своей панели управления подписками:
| Параметр | Что делает |
|---|---|
new-url | Заменяет адрес подписки у всех пользователей при следующем обновлении |
new-domain | Меняет только домен адреса, оставляя остальную часть пути прежней |
fallback-url | Запасной адрес на случай ошибки 300–599 или отсутствия ответа |
sub-expire, sub-expire-button-link | Баннер об окончании подписки за три дня и после него, с кнопкой «Продлить» |
notification-subs-expire | Системные уведомления раз в день за три дня до окончания подписки |
serverDescription | Замена технического текста под именем сервера, например вместо «VLESS» |
Здесь собраны параметры, которые описывают саму подписку — её адрес, срок действия и уведомления о нём. Более широкий набор параметров, которыми провайдер может управлять через ту же подписку — сетевые режимы, пинг, поведение при запуске приложения, — разобран отдельно на странице управление приложением через подписку.
Таймаут и запасной адрес
По умолчанию Happ ждёт ответа сервера подписки 9 секунд; если ответа нет, приложение показывает ошибку тайм-аута. Провайдер с Provider ID может задать своё значение в пределах от 5 до 15 секунд — но не короче и не длиннее этого диапазона.
Если параметр fallback-url указан, а основной адрес вернул ошибку с кодом от 300 до 599 или не ответил в отведённое время, Happ автоматически обратится по запасному адресу. Это отдельный механизм от ручного и автоматического обновления подписки, разобранного в инструкции как обновить подписку. Полный обзор всех форматов подписки — на странице формат подписки.
Главное
- profile-title задаёт имя подписки до 25 символов обычным текстом или в Base64, а profile-update-interval — интервал автообновления в целых часах.
- subscription-userinfo одной строкой передаёт объём переданных данных, общий лимit трафика и unix-время окончания подписки.
- Стандартные параметры передаются заголовком HTTP-ответа или строкой с символом # в теле подписки — оба способа равнозначны.
- Расширенные параметры вроде смены адреса подписки, запасного адреса и системных уведомлений об окончании работают только вместе с Provider ID.
- По умолчанию Happ ждёт ответа сервера подписки 9 секунд; провайдер с Provider ID может задать значение от 5 до 15 секунд.
Частые вопросы
Обязательно ли провайдеру использовать все эти параметры?
Нет, ни один из параметров подписки не обязателен. Без них подписка просто отдаёт список серверов, а Happ показывает подписку без имени, трафика и срока действия — только сами серверы. Параметры вроде profile-title или subscription-userinfo добавляют удобство: пользователь видит понятное название подписки и остаток трафика прямо в приложении, не переходя на сайт провайдера.
Что будет, если задать profile-update-interval меньше часа?
Интервал должен быть кратен одному часу и указывается целым числом, поэтому значение меньше часа или дробное задать нельзя. Если система не успела выполнить обновление точно по расписанию из-за собственных приоритетов, Happ выполнит его автоматически при следующем запуске приложения — рассчитывать на точность до минуты не стоит на любой платформе.
Что означает total=0 в параметре subscription-userinfo?
Само по себе значение 0 не задокументировано отдельно как код безлимитного тарифа, но на практике провайдеры используют его именно в этом смысле: раз общий лимит не задан, показывать его пользователю не нужно. Поле expire при этом работает независимо от total — подписка может быть безлимитной по трафику, но иметь конечный срок действия, или наоборот. Точный смысл нулевого значения лучше уточнять у конкретного провайдера, а не считать универсальным правилом.
Что делает fallback-url и чем он отличается от new-url?
fallback-url — запасной адрес: если основной сервер подписки вернул ошибку с кодом от 300 до 599 или не ответил за отведённое время, Happ обратится по запасному адресу вместо основного. new-url, наоборот, навсегда заменяет основной адрес подписки у всех пользователей при следующем обновлении — это способ провайдера переехать на другой домен, а не подстраховка на случай единичного сбоя.
Как понять, что подписка скоро закончится, до захода в приложение?
Если провайдер включил параметр notification-subs-expire вместе с Provider ID, Happ присылает системные уведомления раз в день в течение трёх дней до окончания подписки. Отдельно параметр sub-expire показывает баннер прямо в приложении — за три дня до конца срока и после его истечения, с кнопкой «Продлить», если провайдер указал ссылку. Без Provider ID эти два способа предупреждения провайдер настроить не может.
Упомянутые темы
Похожие материалы
- Управление настройками Happ через подписку
- profile-update-interval в Happ: интервал автообновления
- subscription-userinfo в Happ: трафик и срок подписки
- Provider ID в Happ: идентификатор провайдера подписки
- profile-title
- Формат подписки Happ: ссылки, Base64 и JSON
- Как обновить подписку в Happ: вручную и автоматически
- Как продлить подписку Happ и не потерять настройки
Разделы по теме
Источники
- Документация Happ: управление приложением через подписку — обращение 28 сентября 2026
- Документация Happ: Provider ID — обращение 28 сентября 2026
- Документация Happ: ошибки — обращение 28 сентября 2026