How to create a Telegram bot for your channel
Every guide says copy the token from BotFather and paste it. Not any more — Telegram hands the bot over directly. Both paths, and when the old one matters.
TL;DR. Search for how to make a Telegram bot and every result tells you the same thing: open BotFather, send /newbot, copy the API token, paste it somewhere. That was the only way for years and it isn’t any more — Telegram can hand a freshly created bot straight to an app, so the token never appears on your screen. The copy-paste route still exists and still matters when you already have a bot you want to keep. Neither route is the finish line: a bot that isn’t an admin in your channel cannot post to it, and that is a separate step people routinely stop one move short of.
Almost every guide about making a Telegram bot was written before the transfer flow existed, and they all end the same way: copy this long string, paste it there, don’t share it with anyone. If you have ever wondered why a tool is asking you to paste a password-shaped secret into a form, the answer is that it used to be the only mechanism available.
Why you need one of your own
A bot is not a formality here. It is the thing that acts as you: publishing to your channel, receiving payments into your account, replying to your customers under your name.
That is also why a shared bot can’t stand in. Anything powerful enough to post in your channel on your behalf would be powerful enough to do it elsewhere on someone else’s. So the connection is deliberately narrow: AdminHub attaches only a bot you own, and an attempt to connect any other one is quietly ignored rather than half-accepted.
Worth knowing because the failure is silent: if you point something else at us, nothing errors and nothing arrives. It looks like the connection worked and the assistant is asleep.
The short path: no token at all
Tap the create step and it opens BotFather for you with the handover already arranged. You pick a name and a username, BotFather makes the bot, and Telegram passes it over. The bot comes back connected.
There is nothing to copy. The token exists — every bot has one — but it moves between Telegram and the app directly rather than through your clipboard, which removes the step where people paste a secret into the wrong window.
The long path: when you already have a bot
If the bot already exists — it has the username you want, or your audience already knows it — the token route is the right one. In BotFather: /mybots, choose the bot, open its API token, copy, paste.
This is also the automatic fallback. If the handover doesn’t complete for any reason, nothing breaks and nothing is lost; the app simply offers the paste field instead. The two paths end in the same place.
One bot, many channels
A workspace runs one active bot. Attempting to create a second returns the one you already have rather than making another.
This confuses people who assume a bot per channel. You don’t need one: the same bot can be an admin in as many channels as you like, and everything you publish runs through it.
The step people stop one short of
Creating the bot is not the same as giving it access. A bot that exists but is not an admin in your channel cannot publish there — it has no more right to your channel than any stranger does.
So the sequence is: create the bot, then add it to the channel as an administrator, with permission to post. If your channel doesn’t show up in the app afterwards, this is almost always why — the bot is fine, it just isn’t an admin yet.
If you revoke the token
Revoking or resetting the token in BotFather disconnects the bot, and that is exactly what revoking is for: it is the mechanism for cutting an app off from a bot you own. Nothing is deleted; the connection is severed.
To reconnect, take the new token from BotFather (/mybots → API Token) and paste it. Which is a good reason to know the token path even if you never used it to connect the first time.
If… then…
| If… | Then… |
|---|---|
| You have no bot yet | The one-tap path — no token, no clipboard |
| You already have a bot you want to keep | The token path: /mybots → API Token → paste |
| The handover didn’t complete | Paste the token; it’s the same destination |
| You want a bot per channel | You don’t — one bot, as many channels as you like |
| Your channel isn’t showing up | The bot isn’t an admin there yet |
| You revoked the token | Get the new one and reconnect; nothing is lost |
| Someone sends you a token to paste | Don’t — a token is control of a bot, like a password |
Where to start
Take the one-tap path unless you have a specific reason not to. It skips the step where the guide asks for a secret and the reader wonders whether it’s safe.
Then, immediately and in the same sitting, add the bot to your channel as an administrator. This is where the sequence usually breaks — not because it’s difficult, but because creating the bot feels like completion, and it isn’t. The bot exists and can do nothing until the channel lets it in.
Only after that is there anything to configure. A bot that is connected and an admin is the point where every other feature starts making sense.
What runs on that bot once it’s connected — the post editor. Letting it answer your DMs too — connect a bot to your Telegram account. Selling through it — how to sell on Telegram.
Not building for a channel specifically? What BotFather actually creates and what runs behind the token — how to create a Telegram bot without coding.
What people usually ask
- Do I have to copy an API token?
- Not on the normal path. Telegram can transfer a newly created bot to an app directly — you tap once, create the bot in BotFather, and it arrives connected. The token never appears on your screen and never sits in your clipboard. Copy-paste is the fallback, not the default, and almost every guide you'll find still describes it as the only way.
- Why do I need my own bot at all?
- Because the bot is the thing that acts in your name: it posts to your channel, takes payments into your account, answers your customers. A shared bot could not do any of that on your behalf without also being able to do it on someone else's. So AdminHub connects only a bot you own — a connection attempt with any other bot is ignored.
- What if I already have a bot?
- Then use the token path: BotFather, /mybots, pick it, copy the API token, paste it. Same result, one more step. Worth doing when the bot already has a username you care about or is already known to your audience.
- How many bots can one workspace have?
- One active bot. If a workspace already has one, the create step returns early and points at the existing bot rather than making a second. Multiple channels are fine — they all run through the same bot.
- What happens if I revoke the token in BotFather?
- The bot stops working and disconnects. That's not a bug: revoking is exactly the mechanism for cutting an app off from your bot. To reconnect, get the new token from BotFather (/mybots → API Token) and paste it.
- Does the bot need to be an admin in my channel?
- Yes, and this is a separate step from creating it. A bot that exists but isn't an admin in the channel can't publish there — creating and connecting is step one, adding it to the channel is step two.