Провайдерам

Для VPN-провайдеров

Piko — приложение-клиент для ваших клиентов. Он читает стандартные ссылки на подписки и заголовки, поэтому большинство панелей работает без изменений. Партнёрство и регистрация не нужны.

На этой странице
  1. Ссылки «Добавить в Piko»
  2. Что отправляет Piko
  3. Поддерживаемые форматы
  4. Заголовки, которые учитывает Piko
  5. Защищённые ссылки
  6. Проверка и вопросы

Piko не связан ни с одним провайдером. Совместимость с Piko не означает рекомендации, и мы не составляем списков провайдеров.

Разместите на сайте, в боте или в письмах кнопку, которая открывает Piko и добавляет подписку. Прежде чем что-либо сохранить, Piko всегда показывает окно подтверждения.

piko://install-sub?url=https%3A%2F%2Fsub.example.com%2Fs%2Fabc123&name=Example
  • url: адрес подписки в percent-кодировке. Используйте https://; для адреса http:// Piko предупредит пользователя, что он не зашифрован.
  • name: необязательно. Название, которое видно, пока не придёт ваш заголовок profile-title.

Также поддерживаются:

  • piko://add?url=…&name=… и piko://install-config?url=… — то же, что выше;
  • piko://add/<адрес> с адресом подписки как есть (форма как у Happ);
  • piko://import?data=… с отдельными ссылками в percent-кодировке или base64 — чтобы добавить отдельные серверы.

Ссылка piko:// открывает приложение, только если Piko установлен, поэтому показывайте и обычный адрес подписки, чтобы его можно было скопировать. Если пользователь вставит или отсканирует их, Piko также поймёт ссылки happ://add/<адрес> и v2rayng://install-sub?url=….

Что отправляет Piko

Piko загружает подписку обычным запросом GET с такими заголовками:

ЗаголовокПримерЗначение
User-AgentPiko/0.1.0/Android/36Piko/<версия приложения>/<система>/<версия системы>. Префикс Piko/ не меняется, по нему можно выбирать нужный формат. Piko никогда не отправляет User-Agent браузера.
x-hwid32 шестнадцатеричных символаID устройства, созданный только для вашего домена. Другие провайдеры получают от того же устройства другое значение.
x-device-osAndroid, iOSОперационная система.
x-ver-os16Версия системы.
x-device-modelPixel 9, iPhone17,3Модель устройства (никогда не имя, которое дал устройству пользователь).

Заголовки устройства отправляются только на хост вашей подписки и на адреса, которые вы указали в new-url, new-domain или fallback-url. При перенаправлении на другие хосты они не передаются. В редких случаях, например на iOS до первой разблокировки после перезагрузки, Piko не отправляет ни одного из них.

Поддерживаемые форматы

  • Список ссылок обычным текстом или в base64: vless://, vmess://, trojan://, ss:// (в том числе Shadowsocks 2022) и hysteria2:// (hy2://).
  • Полная конфигурация Xray JSON. Piko удаляет локальные входящие подключения, файлы журналов и другие настройки, которые не нужны приложению на телефоне.
  • Транспорты: TCP (RAW), WebSocket, gRPC, HTTPUpgrade, XHTTP (SplitHTTP) и mKCP. Защита: TLS, REALITY и XTLS Vision.
  • Не поддерживаются: sing-box JSON, Clash YAML, WireGuard, TUIC, AnyTLS, NaiveProxy, ShadowTLS и другие протоколы вне Xray, удалённые транспорты h2 и QUIC, плагины ss:// и Hysteria2 с insecure=1. VLESS без шифрования к публичному серверу отклоняется.

Используйте серверы, которые шифруют соединение: TLS, REALITY, Shadowsocks 2022 или Hysteria2. Правила магазинов приложений требуют, чтобы VPN-приложения шифровали трафик до сервера, поэтому Piko может отклонять серверы без шифрования.

Заголовки, которые учитывает Piko

Отправляйте их как заголовки ответа. Те же имена работают и как строки #ключ: значение в начале тела ответа (как у Happ). Если есть оба варианта, приоритет у заголовка.

ЗаголовокЧто делает Piko
subscription-userinfoupload=…; download=…; total=…; expire=… в байтах и Unix-времени (0 — без ограничений или бессрочно). Piko показывает израсходованный трафик и оставшиеся дни, а на Android напоминает об окончании подписки.
profile-titleНазвание подписки, обычным текстом или base64:…. Без него Piko берёт имя файла из content-disposition.
profile-update-intervalКак часто обновлять, в часах. По умолчанию 4.
support-urlСсылка на поддержку (https://, tg: или mailto:), показывается в разделе «От провайдера».
profile-web-page-urlВаш сайт или личный кабинет.
support-emailАдрес электронной почты поддержки.
announceСообщение для показа, обычным текстом или base64:….
announce-urlСсылка на ваши объявления (https:// или tg:).
sub-info-text, sub-info-button-text, sub-info-button-linkБаннер с необязательной кнопкой (формат Happ).
routing, routing-enableПрофиль маршрутизации в виде ссылки (формат Happ, например piko://routing/add/<base64>). Piko применяет его только после согласия пользователя. routing-enable: 0 отключает его.
new-url, new-domainПодписка переехала. Piko загружает новый адрес и, если он работает, сохраняет его. Принимаются только адреса https:// на публичных хостах.
fallback-urlЗеркало, которое Piko использует, если основной адрес не отвечает, не меняя ссылку пользователя.
check-url-via-proxyАдрес https://, который Piko запрашивает через ваши серверы для тестов задержки конфигураций Xray JSON.
x-hwid-active, x-hwid-not-supported, x-hwid-max-devices-reached, x-hwid-limitСостояние лимита устройств (true или 1). Piko объясняет пользователю отказ и показывает вашу ссылку на поддержку.

Записи в списке серверов, которые на самом деле являются сообщениями (например, «сервер» с названием «Осталось 5 дней»), показываются как сообщения, а не как серверы.

Piko открывает ссылки piko://crypt1/…, которые скрывают адрес подписки от случайного копирования: Piko никогда не показывает, не копирует и не экспортирует адрес, добавленный таким образом. Это обфускация, а не DRM: ключ находится внутри приложения. Инструмент для создания таких ссылок станет доступен провайдерам вместе с публичным выпуском Piko. Чтобы получить уведомление, напишите на support@pikonet.io.

Проверка и вопросы

Добавьте тестовую подписку в Piko и проверьте её данные: название, трафик, срок действия и ваши сообщения. Если ваша панель не работает с Piko, напишите на support@pikonet.io, указав название и версию панели. Присылайте тестовую подписку, а не подписку реального клиента.