Happ VPN

Импорт JSON-конфигурации в Happ

Автор
Дмитрий Соколов, ведущий технический автор
Проверил:
Артём Волков
Проверено:
Опубликовано:
, обновлено
Версия гайда:
1.0

Коротко

Чтобы импортировать JSON-конфигурацию в Happ, скопируйте весь текст файла целиком в буфер обмена и откройте импорт по кнопке «+» — приложение распознает JSON и передаст его ядру Xray-core без изменений. QR-код для этого обычно не подходит: полный JSON слишком велик для одного кода.

JSON-конфигурация — это не короткая ссылка вида vless://, а полный файл настроек ядра Xray-core, поэтому и способ добавления практичнее через буфер обмена, чем через QR-код: закодировать весь текст в один считываемый код обычно не получается из-за его объёма. Импорт проходит через тот же экран «+», что и ссылка протокола: Happ сам определяет по содержимому буфера обмена, что перед ним JSON, а не короткая строка, и передаёт файл ядру без изменений — правки полей вручную после импорта не предусмотрены. Если JSON содержит массив из нескольких конфигураций, Happ обрабатывает результат как список серверов, а не один сервер.

Чем импорт JSON отличается от импорта ссылки

JSON-конфигурация — полноценный файл настроек ядра Xray-core, а не короткая строка вида vless://. Способ добавления в Happ формально тот же: экран «+» и буфер обмена, но на практике для JSON он единственный практичный, потому что весь файл нужно передать целиком, символ в символ.

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

Как импортировать JSON-конфигурацию

  1. Получите полный текст JSON-конфигурации

    Источник — администратор сервера или провайдер; формат передачи может быть текстом в сообщении или отдельным файлом.

    Результат: У вас есть весь файл от открывающей до закрывающей фигурной скобки, без обрезки.

  2. Скопируйте текст целиком в буфер обмена

    Результат: В буфере обмена — весь JSON, без потерянных символов по краям.

  3. Откройте Happ и нажмите «+»

    Результат: Открывается меню способа добавления.

  4. Выберите импорт из буфера обмена

    Результат: Happ показывает, что распознал JSON-конфигурацию, а не ссылку протокола.

  5. Подтвердите добавление

    Результат: Сервер или несколько серверов из массива появились в «Списке серверов».

  6. Проверьте пинг и подключение

    Результат: У сервера есть пинг в миллисекундах, «Проверить текущее соединение» показывает задержку.

Одиночная конфигурация и JSON-подписка

Один JSON-объектJSON-массив (подписка)
Что добавляетсяодин серверсразу несколько серверов
Обновлениене обновляется сам по себеобновляется как обычная подписка
Профиль маршрутизациине применяется напрямую, кроме geo-файлов и DNSне больше одного, приходит только с подпиской
Как проверить форматцеликом открывающая и закрывающая скобка объектате же скобки, но снаружи — квадратные скобки массива

Устройство самого файла и то, что в нём меняет Happ, подробно разобрано на странице JSON-конфигурации — здесь не повторяем эту часть, только процесс добавления.

Отличия по платформам

ПлатформаОсобенность импорта JSON
Windows, macOS, LinuxДлинный JSON удобнее копировать с полноразмерной клавиатуры и проверять во внешнем редакторе перед импортом.
Android, iOSТекст обычно копируют из мессенджера или файла в приложении «Файлы»; на iOS 16 и новее система может ограничивать вставку из другого приложения.
Android TV, Apple TVСкопировать длинный JSON на телевизоре неудобно — надёжнее добавить конфигурацию на телефоне и перенести уже готовый сервер на ТВ QR-кодом, если он не слишком объёмный, или через Web Import.

Проверка результата

  • Текст JSON скопирован целиком, включая крайние фигурные или квадратные скобки.
  • Happ распознал содержимое как JSON-конфигурацию, а не показал ошибку формата.
  • Сервер или серверы появились в «Списке серверов».
  • У сервера отображается пинг в миллисекундах.
  • «Проверить текущее соединение» показывает задержку, а не тайм-аут.

Типичные ошибки импорта

Что видно в HappВозможная причинаГде разбор
«Невалидная (массив) конфигурация JSON»В скопированном тексте синтаксическая ошибка или обрезанный фрагментНевалидная конфигурация JSON
«Буффер обмена пуст»Текст не скопировался перед импортомБуфер обмена пуст
«Неизвестный тип контента»Скопированный текст не распознан ни как ссылка, ни как JSONНеизвестный тип контента

Если ошибка повторяется с одним и тем же файлом на разных устройствах, вероятная причина — в самом JSON, а не в способе его копирования: попросите у источника проверить файл на корректность перед повторной отправкой.

Главное

  • JSON-конфигурацию импортируют через буфер обмена и общий экран «+», а не через отдельную форму или файл.
  • QR-код для полной JSON-конфигурации обычно непрактичен из-за объёма текста — для неё увереннее подходит копирование.
  • После импорта Happ передаёт JSON ядру Xray-core без изменений; отредактировать отдельные поля через интерфейс приложения нельзя.
  • JSON может описывать один сервер или массив сразу нескольких — во втором случае результат импорта выглядит как список, а не одна запись.
  • Повреждённый при копировании JSON приводит к ошибке «Невалидная (массив) конфигурация JSON», а не к тихому сбою импорта.

Частые вопросы

Как добавить JSON-конфигурацию, если провайдер прислал её файлом, а не текстом?

Откройте файл текстовым редактором или просмотрщиком, выделите всё содержимое и скопируйте его в буфер обмена. Дальше процесс не отличается от JSON, присланного текстом в сообщении: импорт через «+» в Happ, который сам распознает формат. Главное — скопировать файл целиком, не потеряв фигурные скобки в начале или конце.

Можно ли передать JSON-конфигурацию QR-кодом, как обычную ссылку протокола?

Формально да, если весь JSON помещается в один QR-код, но на практике полный файл настроек ядра обычно слишком длинный для надёжного считывания камерой. Для короткой ссылки протокола QR-код удобен, а для JSON-конфигурации увереннее работает копирование в буфер обмена или пересылка файлом.

Что делать, если JSON от провайдера содержит сразу несколько серверов?

Ничего особенного — импортируйте его тем же способом. Happ распознает массив конфигураций и добавит каждую как отдельный сервер в общем списке, а не одну запись. Дальше с ними можно работать так же, как с любыми другими серверами: проверять пинг, подключаться, сравнивать между собой.

Почему после импорта JSON недоступен выбор профиля маршрутизации, который был раньше?

Если новая конфигурация пришла как часть JSON-подписки, у неё может быть только один профиль маршрутизации, и он приходит вместе с самой подпиской — заменить его вручную или использовать прежний профиль от другого провайдера нельзя. Для одиночной JSON-конфигурации собственные правила маршрутизации Happ и вовсе не применяются напрямую, кроме выбора geo-файлов и удалённого DNS.

Как проверить, что JSON скопирован без ошибок, до того как его импортировать?

Вставьте скопированный текст в любое приложение для заметок и убедитесь, что он начинается с открывающей фигурной скобки, заканчивается закрывающей и не обрывается на середине. Это не гарантирует, что JSON синтаксически корректен во всех деталях, но отсекает самую частую причину ошибки — обрезанный при копировании текст.

Можно ли отредактировать JSON-конфигурацию прямо в Happ после импорта?

По отдельным полям — обычно нет: интерфейс приложения не строит форму под произвольную структуру JSON, в отличие от конфигураций, добавленных ссылкой протокола. Если нужно изменить значение, проще получить у провайдера или администратора сервера обновлённый файл целиком и импортировать его заново вместо старой конфигурации.

Упомянутые темы

Разделы по теме

Источники

  1. Документация Happ: примеры ссылок и параметры — обращение 28 сентября 2026
  2. Документация Happ: маршрутизация — обращение 28 сентября 2026
  3. Документация Happ: ошибки — обращение 28 сентября 2026