Перейти к содержанию

Вход в мини-приложение через MAX

Подключите проверенный вход пользователей MAX и возможности устройства в мини-приложении.

Мини-приложение запускается внутри MAX по зарегистрированному HTTPS-адресу. Для публикации бота и мини-приложения нужен доступ к платформе MAX и её одобрение. Agnostic выполняет серверную проверку данных запуска и создаёт обычную сессию пользователя вашего приложения.

  1. Сохраните подключение бота MAX в нужном окружении проекта.
  2. Включите App Auth и разрешите адрес мини-приложения среди адресов приложения.
  3. Попросите разработчика включить вход MAX для каждого нужного окружения и

связать его с сохранённым подключением.

  1. Подключите браузерный адаптер App Kit и отправьте свежие данные запуска на

сервер для обмена на сессию. Проверьте вход, обновление сессии и выход.

  1. Проверьте приложение в нужных клиентах MAX перед публикацией.

Данные запуска действуют для входа пять минут и используются один раз. Если приложение сообщает об истёкшем или уже использованном запуске, закройте и снова откройте мини-приложение. Данные, прочитанные только в браузере, не заменяют серверную проверку личности.

MAX не передаёт email. У нового пользователя MAX email будет отсутствовать, а отдельный аккаунт с таким же именем или телефоном не объединяется автоматически. Действующий вход по email и паролю продолжает работать. При необходимости пользователь может добавить email через подтверждение адреса в вашем приложении.

Приложение может запросить контакт, показать сканер QR-кода, поделиться сообщением, управлять кнопкой «Назад» и использовать доступное хранилище устройства. Некоторые функции доступны только на iOS или Android, NFC — на Android. Проверяйте доступность перед показом действия. Отказ поделиться телефоном не должен мешать обычному входу; телефон используется только в этом мини-приложении.

Безопасное хранилище недоступно в веб-клиенте MAX. Не заменяйте его обычным хранилищем браузера для секретов. В браузере не должно быть токена бота или серверного Runtime SDK. Возможности устройства, включая биометрию, не заменяют сессию App Auth.

Подключить вход в созданное приложение

В исходниках AppKit подготовлен loginWithMax: передайте ему исходный initData из createMaxMiniApp(). Серверный путь /auth/max/exchange задаёт realm, origin и окружение и проверяет новую сессию перед cookie. Пользователь не выбирает подключение или права через форму входа. Переименованное окружение связывается с его реальным типом; переименование не снимает прежний запрет.

После потери ответа сначала прочитайте текущую сессию. Если она не подтверждена, откройте mini app заново для свежего запуска; прежний proof автоматически не повторяется. Исходники ещё требуют публикации AppKit и финальной проверки на настоящих клиентах MAX.