Step-by-step

How to Get a Telegram Bot Token (BotFather Guide)

A quick, no-code walkthrough for creating a Telegram bot and copying its HTTP API token from @BotFather — the official Telegram bot for managing bots.

  1. Open Telegram and find @BotFather

    In any Telegram app (mobile or desktop), tap the search bar and type @BotFather. Open the official account — it shows a blue verified checkmark next to the name. BotFather is Telegram's own bot for creating and managing bots.

  2. Start a chat and send /newbot

    Press Start (or send /start) to open the conversation, then send the command /newbot. BotFather will walk you through the rest one question at a time.

  3. Choose a display name

    BotFather asks for a name first. This is the friendly label users see at the top of the chat (e.g. "My Support Bot"). It can contain spaces and be changed later.

  4. Choose a username ending in "bot"

    Next, pick a unique username. It must be 5–32 characters and end in "bot" — for example my_support_bot or MySupportBot. If the name is taken, BotFather asks you to try another.

  5. Copy your HTTP API token

    Once the username is accepted, BotFather replies with a confirmation message containing your token — a long string like 123456789:AAH...xyz. This token is the credential your bot uses to connect to the Telegram Bot API. Copy and store it safely.

How to use your bot token

The token is the only thing standing between your code and Telegram. Once you have it from @BotFather, here is exactly how it gets used:

  1. Copy the full token, including the part before the colon — the bot ID and the secret hash are one credential and must stay together.
  2. Paste it into your bot framework, hosting platform, or environment variable (for example BOT_TOKEN). On TeleCrow you simply paste it once during setup.
  3. Every Bot API call is an HTTPS request to https://api.telegram.org/bot<token>/<METHOD> — for example /getMe to verify the token or /sendMessage to post a message.
  4. Test it instantly: open https://api.telegram.org/bot<token>/getMe in a browser. A valid token returns your bot's name and username as JSON.

When you need a bot token

  • Sending automated alerts, reminders, or notifications to a chat, group, or channel.
  • Building a support, FAQ, or lead-capture bot that replies to users.
  • Running an e-commerce or booking flow with inline buttons and Telegram payments.
  • Posting to a channel from a server, script, or CI pipeline.
  • Connecting Telegram to a no-code platform like TeleCrow that hosts the bot for you.

Technical details & gotchas

  • The URL needs the word "bot". The path is /bot<token>/, not /<token>/ — omitting it returns 404, and a bad token returns 401.
  • One token per bot. A token maps to exactly one bot; create a second bot with /newbot if you need a separate identity.
  • Bots can't message users first. A user (or a group admin who added the bot) must start the conversation before your bot can send them anything — this is Telegram's anti-spam rule, not a token problem.
  • Channels and supergroups use a -100 prefixed ID. When you call sendMessage to a channel or supergroup, the chat_id is a large negative number that starts with -100 (you can also use the public @channelusername). Add the bot as an admin first. See the chat ID guide to find it.
  • Rotate, never reuse a leaked token. Treat the token like a password and store it as a secret. If it is ever exposed, send /revoke in BotFather. More in our bot token security guide.

New to all of this? Start with creating a bot with BotFather, or jump straight to building a no-code bot on TeleCrow — paste your token and it handles the hosting.

Skip the setup

TeleCrow connects your token and hosts the bot for you — no servers, no code. Start free.

Start free

Frequently asked questions

What is a Telegram bot token?

A bot token is a unique credential (for example 123456789:AAH...xyz) that @BotFather issues when you create a bot. Your code or hosting platform uses it to authenticate with the Telegram Bot API and send or receive messages on the bot's behalf.

Where do I find my bot token again later?

Open @BotFather, send /mybots, choose your bot, then tap "API Token". BotFather will display the current token. You don't need to create a new bot to retrieve it.

What if my chosen username is already taken?

Usernames must be globally unique and end in "bot". If BotFather says the name is taken, just send another username until one is accepted — for example add an underscore, a word, or numbers.

Is getting a bot token free?

Yes. Creating a bot and generating a token with @BotFather is completely free (one account can own up to 20 bots by default). Telegram does not charge for the Bot API, and this guide does not require any login or signup.

Do I need a website or account to use this BotFather guide?

No. The whole process happens inside Telegram itself, so there is no separate account to register and nothing to download. You only need a Telegram account and the @BotFather chat. This guide is read-only and free — it does not ask for your token or collect any data.

What does a Telegram bot token look like, and what are the two parts?

A token has the form <bot_id>:<auth_hash>, for example 123456789:AAH-xyzAbC1234_56789defGHIjklMNoPQ. The number before the colon is the bot's numeric user ID; the part after the colon is a 35-character secret authorization hash. Together they form the credential you pass to the Bot API as part of every request URL: https://api.telegram.org/bot<token>/<METHOD>.

Why am I getting a 401 Unauthorized error from the Telegram Bot API?

A 401 ("Unauthorized") almost always means the token is wrong: a typo, a leading/trailing space, a token that was revoked in @BotFather, or the word "bot" missing from the API URL (it must be /bot<token>/, not /<token>/). Re-copy the full token from BotFather via /mybots → API Token and try again. If you recently sent /revoke, the old token is permanently dead and you must use the new one.

Can I reset or revoke a bot token if it leaks?

Yes. Open @BotFather, send /revoke, pick the bot, and BotFather instantly issues a new token while permanently invalidating the old one. Anyone holding the leaked token can no longer control the bot. Update the new token everywhere your bot runs, because the old one stops working immediately.

How many bots can I create, and are there rate limits on the token?

Telegram lets one account own up to 20 bots by default, each with its own token; you can request more by contacting @BotSupport. The token itself has no daily cap on total messages, but the Bot API enforces rate limits — roughly 30 messages per second overall and about 1 message per second to a single chat (around 20 per minute to one group). Sending faster returns HTTP 429 with a retry_after value.

Is BotFather the only way to get a bot token?

@BotFather is the single official source for creating bots and issuing tokens — there is no other legitimate way, and no third party can generate a valid Telegram token for you. Be wary of any site or service that asks you to paste a token or "generate" one outside Telegram. A platform like TeleCrow only ever uses a token you created yourself in BotFather.

Build a no-code Telegram bot with TeleCrow

Create, host and manage Telegram bots without writing code — start on the free plan.

Get started free