TG 机器人 token 怎么申请?BotFather 流程

从零和 BotFather 对话拿到 Telegram Bot Token 的完整流程,含命名规则和 token 保管要点。

想做一个 Telegram 机器人,第一步永远是从 BotFather 拿到一个 Bot Token。这个 Token 是机器人的"身份证 + 密码",任何持有它的人都能控制你的机器人,所以拿到之后怎么保管也很关键。下面把和 BotFather 对话的全流程一次走完,包括命名规则、token 长什么样、后续怎么改设置。开始之前先确保 客户端是最新版,老版本的 BotFather 交互菜单不全。

BotFather 是什么

BotFather(@BotFather)是 Telegram 官方提供的"机器人管理机器人"——你想创建、修改、删除自己的 Bot 都要通过它。所有 Telegram Bot 都是通过 BotFather 注册的,没有别的途径。

它的账号特征:

  • 用户名 @BotFather
  • 有蓝色官方验证
  • 头像是带渐变背景的机器人图标

搜索时确认这几个特征,避免点到山寨 BotFather 套取你的 token。

完整对话流程

第一步:打开 BotFather

Telegram 搜索栏输入 @BotFather,点进官方账号,点底部的"开始"或"Start"按钮。

会弹出一长串它支持的命令清单:

/newbot - create a new bot
/mybots - edit your bots
/mygames - edit your games
/myapps - edit your apps
/newapp - create a new app
...

第二步:发送 /newbot

发送 /newbot,BotFather 会回复:

Alright, a new bot. How are we going to call it? Please choose a name for your bot.

它在问你的机器人显示名——这个名字会显示在聊天列表里,可以包含中文、emoji、空格。比如"我的助手"、"摸鱼小助手 🐟"都行。

第三步:设置用户名

填完显示名后 BotFather 会问:

Good. Now let's choose a username for your bot. It must end in bot. Like this, for example: TetrisBot or tetris_bot.

这里要设置用户名——区别于显示名,用户名是全局唯一的英文+数字组合,必须以 bot_bot 结尾,5-32 个字符。

合法的用户名例子:

  • MyAssistantBot
  • weather_query_bot
  • tg_helper_2026_bot

不合法的:

  • MyHelper(不以 bot 结尾)
  • bot_my(bot 不在结尾)
  • 我的bot(不能包含中文)

用户名一旦设定不能修改,所以慎重起一个有辨识度的。

如果用户名已被占用,BotFather 会提示并让你换一个。

第四步:拿到 Token

用户名通过后,BotFather 会回复一段重要内容:

Done! Congratulations on your new bot. You will find it at t.me/yourbot.

Use this token to access the HTTP API: 1234567890:ABCDefghijklmnopqrstuvwxyz_ABCDEF1234

Keep your token secure and store it safely, it can be used by anyone to control your bot.

那串数字加冒号加字母的就是你的 Token。格式固定是 <bot_id>:<auth_token>,bot_id 是数字,auth_token 是字母数字混合。

把这个 token 立刻复制保存到本地的密码管理器或者笔记里。一旦泄露,别人就能控制你的 bot。

token 的安全保管

token 泄露的后果很严重:

  • 别人能用你的 bot 发任何消息
  • 能查看 bot 收到的所有消息
  • 能管理 bot 加入的所有群

所以 token 必须当作密码一样对待:

  1. 不要直接写在代码里——用环境变量或者配置文件,配置文件加进 .gitignore
  2. 不要上传到 GitHub 公开仓库——GitHub 有 token 泄露扫描,泄露会被 Telegram 自动 revoke
  3. 不要在群里发——哪怕私聊朋友也建议加密发送
  4. 定期 rotate——重要 bot 每 3-6 个月用 /revoke 重置一次 token

如果你怀疑 token 已泄露,立刻用 BotFather 的 /revoke 命令重新生成。

立刻 revoke 旧 token

发现泄露的应急流程:

  1. 打开 BotFather
  2. 发送 /revoke
  3. 选择对应的 bot
  4. BotFather 立即生成新 token,旧 token 当场失效

任何还用着旧 token 的程序都会立刻失败。生成新 token 后更新你的程序配置。

给 bot 加更多设置

拿到 token 不代表万事大吉,还有一堆设置可以通过 BotFather 调:

  • /setdescription — 设置 bot 介绍(显示在 bot 主页)
  • /setabouttext — 设置 bot 简短说明
  • /setuserpic — 上传头像
  • /setcommands — 设置命令菜单(用户聊天时下方会显示)
  • /setprivacy — 设置在群里能不能看到所有消息
  • /setjoingroups — 允不允许加群

/setcommands 特别重要——它决定用户在聊天框旁边点"/"时看到的命令列表。格式是:

start - 启动 bot
help - 显示帮助
weather - 查询天气

每行一个命令,命令名和描述用 - 分隔。

bot 的隐私模式

/setprivacy 这个开关需要重点理解:

  • enable(默认):bot 在群里只能看到 @它的消息或者命令(/xxx)
  • disable:bot 能看到群里所有消息

如果你的 bot 需要监听整个群的聊天(比如做关键词触发、聊天统计),必须 disable 隐私模式。如果只是响应命令,保持 enable 节省资源。如果你打算把 bot 放进自己建的频道里做自动发布,配套的 Telegram 频道怎么创建?从开通到运营的完整指南 这篇可以一并看一下。

修改后需要把 bot 从群里踢出再重新加入才生效,这是个坑很多人踩。

调用 token 的最基础测试

拿到 token 后想立刻验证好不好用,浏览器打开:

https://api.telegram.org/bot<你的token>/getMe

会返回类似:

{
  "ok": true,
  "result": {
    "id": 1234567890,
    "is_bot": true,
    "first_name": "我的助手",
    "username": "MyAssistantBot"
  }
}

返回 "ok": true 就说明 token 有效。

如果返回 401 unauthorized,说明 token 错了(复制粘贴时少了字符之类)。

写第一个回复消息

用 curl 给自己的某个聊天发条测试消息:

curl -X POST "https://api.telegram.org/bot<token>/sendMessage" \
  -d "chat_id=<你的chat_id>&text=Hello"

chat_id 怎么获取?最简单的方式:先在自己的 Telegram 里给 @userinfobot 发个 hi,它会回复你你自己的 chat_id。

这一步走通就说明你的机器人可以发消息了。接下来怎么写完整的 bot 程序就看你用什么语言(Python、Node.js、Go 都有官方/社区 SDK)。开发框架的对比可以参考 Telegram bot 用什么框架开发?Python 还是 Node 更顺手 里的选型讨论。

删除不要的 bot

不再用的 bot 可以删掉清理列表:

  1. BotFather 发 /deletebot
  2. 选择要删的 bot
  3. 输入 "Yes, I am totally sure"(注意大小写)
  4. 确认删除

删除后 bot 的用户名释放,可以被其他人重新注册。删除是不可逆的——所有数据、订阅它的用户都没了。

多个 bot 怎么管理

如果你有多个 bot,用 /mybots 命令调出列表,可以切换不同 bot 进行管理。每个 bot 的 token 都不一样,要分别保存。

建议用一个简单的清单:

bot 名 | 用户名 | token | 用途
天气助手 | weather_qbot | 12345:abc | 个人查天气
群管理员 | grpadmin_bot | 67890:def | 工作群自动化

存在你的密码管理器或者加密笔记里。

关于 bot 的额外功能

拿到 token 之后机器人能做的远不止"回复消息"。Telegram Bot API 支持:

  • 收发图片视频文件
  • 发起支付(接入 Stripe)
  • 内联键盘(按钮)
  • Web App(在 Telegram 内打开网页)
  • 群组管理(踢人、封禁、设管理员)
  • 频道内容自动发布

具体能做哪些有意思的 bot 可以看 Telegram 有哪些机器人真的好用?日常实用类挑了几个

先装好中文版客户端 再去和 BotFather 对话,全程中文界面更容易理解。

相关阅读