Telegram
Telegram Login Widget provides a secure way to authenticate users through their Telegram accounts. Unlike traditional OAuth providers, Telegram uses a widget-based approach with cryptographic verification.
Create a Telegram Bot
Create a bot via @BotFather:
- Open Telegram and search for @BotFather
- Send
/newbotand follow the prompts to create your bot
- After creation, BotFather will provide you with a bot token - save this securely

- Send
/setdomainto BotFather and provide your domain (e.g.,example.com)
The bot token is sensitive information. Never share it publicly or commit it to version control.
Add Telegram Provider in Casdoor
- Navigate to Providers in Casdoor's admin panel
- Click Add to create a new provider
- Set Category to
OAuthand Type toTelegram - Configure the provider:
- Client ID: Your bot's username (e.g.
casdoor_telegram_botno need @) - Client Secret: The bot token provided by BotFather

- Client ID: Your bot's username (e.g.
Domain Verification
Authentication will only work from the domain you registered with BotFather using the /setdomain command. Make sure your Casdoor instance is accessible from this domain.
Logging In with Telegram
With the setup completed, users can now log in with Telegram.
Authentication flow
Users sign in via Telegram’s login widget; Casdoor validates the HMAC-SHA256 signature and timestamp per Telegram’s spec. Profile data includes user ID, name, username, and optional photo. Telegram does not provide email via the widget; collect email separately if needed.