POST /auth/nonce
Запросить SIWE-nonce. Nonce связывает подписанное кошельком сообщение с одной попыткой входа и предотвращает replay. Auth: нет.EVM-адрес, который будет подписывать. В нижнем регистре с префиксом 0x.
POST /auth/verify
Проверить SIWE-подпись и поставить сессионную cookie. Auth: нет.Тот же адрес, что использовался в
/auth/nonce.Точное SIWE-сообщение, возвращённое из
/auth/nonce.Hex-подпись из кошелька.
Set-Cookie: af_session=...; HttpOnly; Secure; SameSite=Lax.
POST /auth/telegram
Используется Telegram-ботом для выпуска сессии Telegram-пользователю. Публичные интеграторы напрямую не вызывают.Telegram WebApp initData payload, проверенный против токена бота.
/auth/verify, плюс привязанная Telegram-идентичность в user.telegram.
POST /auth/access-code
Войти или зарегистрироваться по одноразовому коду доступа. Используется в onboarding-сценариях, обходящих кошелёк/Telegram.Одноразовый код доступа.
POST /auth/logout
Очистить сессионную cookie. Auth: требуется.204 No Content.
Ошибки
| Код | Когда |
|---|---|
nonce_expired | Nonce старше 5 минут |
nonce_used | Nonce уже использован |
signature_invalid | Подпись не сходится с адресом |
telegram_invalid | Хеш initData не сходится |
code_invalid | Код доступа не найден или использован |