Skip to content

Login

The dashboard authenticates with the Telegram Login Widget. Your Telegram account is the only credential. There is no separate password to manage.

How sign-in works

  1. Open https://<your-id>.hanai.systems.
  2. Tap the Telegram Login Widget on the page.
  3. Approve the login request inside the Telegram app on your phone or desktop.
  4. The widget posts a signed payload back to the dashboard. The signature is verified against your bot token.
  5. A session cookie is set and you land on the dashboard home.

Both GET /auth/telegram and POST /auth/telegram are supported, so the widget works regardless of how Telegram routes the callback.

Only authorised users

Only the Telegram user IDs configured during provisioning can sign in. Other accounts that attempt the flow are rejected even if Telegram itself authorises them.

”Bot domain invalid”

If you see this error, your operator hasn’t run the BotFather /setdomain step yet. They run it once, against your bot, with your subdomain as the argument. Refresh the page after.

Session

ItemValue
Session secretAuto-generated during provisioning and persisted to your age vault.
Storagedashboard.sqlite on the VPS.
CookieSigned with the session secret.

Signing out

Closing the browser ends the session client-side. To force-invalidate sessions across all devices, ask your operator to rotate SESSION_SECRET in the vault.

Next