Bot token checker
Is this token valid, and which bot does it belong to? Your browser asks Telegram's getMe directly.
Check a token
Paste the token from @BotFather. Your browser calls getMe on api.telegram.org itself.
It goes from your browser straight to api.telegram.org, is kept only in this page's memory and is gone when you press Clear or close the tab. This site has no endpoint that accepts a token, and this page's Content-Security-Policy allows connections to Telegram and to this site only. If a token has ever been pasted somewhere you do not trust, revoke it in @BotFather (/revoke).
TOKEN='paste-your-token-here' curl -s "https://api.telegram.org/bot$TOKEN/getMe"
What getMe tells you
FAQ
Is it safe to paste my bot token here?
The token is sent by your browser to api.telegram.org and nowhere else. This site has no endpoint that accepts a token, stores nothing and logs nothing about it. If you would rather not type it into any website, run the curl command shown on the page — it makes the same call.
What does 401 Unauthorized mean?
Telegram does not accept the token. It was revoked or regenerated in @BotFather, the bot was deleted, or the token was copied incompletely.
Where do I find my bot's token?
Open @BotFather in Telegram, send /mybots, pick the bot and tap “API Token”. /revoke creates a new token and makes the old one invalid at once.
What is the number before the colon?
The bot's own user ID. It is visible without asking Telegram, which is why the page shows it as soon as a complete token is typed.
Someone has my token. What now?
Send /revoke to @BotFather and choose the bot. The old token stops working immediately; put the new one into your code. Whoever holds a token controls the bot completely.