Telegram 接码 API 是指通过 Telegram 的 Bot API 或第三方平台接口,实现自动获取并处理短信验证码的功能。很多用户在注册海外账号、绑定手机号或进行自动化测试时,会遇到“无法接收验证码”“手机号被限制”等问题。实际上,利用 Telegram 的 Bot 配合接码平台 API,可以高效解决这些痛点。本文将手把手教你如何从准备条件开始,完成接码 API 的配置、测试与故障排除。

准备条件:注册 Telegram 账号并创建 Bot

要使用 Telegram 接码 API,首先需要拥有一个 Telegram 账号,并创建一个 Bot 获取 API Token。

具体操作说明:

1. 在手机或电脑上安装 Telegram 客户端,使用真实手机号完成注册(建议使用国际号码,部分国家号码可能被限制)。

2. 在 Telegram 搜索栏输入 @BotFather,进入官方 Bot 创建机器人。

3. 输入命令 /newbot,按照提示为你的 Bot 设置一个名称(如 MySMSCatcher)和用户名(必须以 _bot结尾,如 MySMSCatcher_bot)。

4. 创建成功后,BotFather 会返回一个 API Token,格式类似 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11。请务必复制并保存好这个 Token。

注意事项/小提示:

  • 保存 Token 时注意不要泄露给他人,否则他人可以控制你的 Bot。
  • 建议为 Bot 设置一个简单的命令,例如 /start,便于后续测试。
  • 如果你需要接收来自不同平台的验证码,可以创建多个 Bot 分别管理。

备用方案:

  • 如果 BotFather 无响应,请检查你的 Telegram 客户端是否处于最新版本,或尝试更换网络环境。
  • 若无法创建 Bot,可尝试使用第三方 Bot 管理平台,但安全性较低,不推荐。

核心操作:获取接码平台 API 并关联 Telegram Bot

接码 API 通常由第三方接码平台提供(如 SMS-Activate、5SIM、TextVerified 等),你需要在这些平台注册并购买号码,然后配置回调地址将验证码转发到 Telegram Bot。

具体操作说明:

1. 选择一个支持 API 调用的接码平台(例如 SMS-Activate),注册账号并充值。

2. 在平台后台找到 API 密钥Access Token页面,生成一个专属的 API Key。

3. 在平台中选择目标国家(如美国、英国)和对应服务(如 Telegram、WhatsApp),购买一个临时手机号。

4. 购买成功后,平台会提供该号码的 Activation ID手机号。同时,在平台设置中配置 回调 URLWebhook,格式通常为:https://api.telegram.org/bot<你的Bot Token>/sendMessage?chat_id=<你的Chat ID>&text={code}。其中 {code}是平台预留的变量,会自动替换为接收到的验证码。

5. 发送测试请求:在平台手动触发一次“重新发送验证码”,检查 Telegram Bot 是否收到消息。

注意事项/小提示:

  • 不同平台的回调参数可能不同,请仔细阅读平台文档。例如有些平台使用 %CODE%而不是 {code}
  • 获取你的 Chat ID:向 Bot 发送任意消息,然后访问 https://api.telegram.org/bot<你的Bot Token>/getUpdates,在返回的 JSON 中找到 chat.id字段。
  • 部分平台需要设置 IP 白名单,请确保你的服务器或本地 IP 已添加。

备用方案:

  • 如果平台不支持 Webhook 回调,你可以使用第三方自动化工具(如 ZapierMake)监听平台邮件通知,再转发到 Telegram。
  • 也可以自行编写 Python 脚本,定时通过平台 API 查询验证码状态,再通过 Bot API 发送。

验证结果:测试接码流程是否正常

完成配置后,必须进行端到端测试,确保验证码能成功从接码平台发送到你的 Telegram Bot。

具体操作说明:

1. 使用你购买的临时手机号,在目标服务(如 Telegram 注册页面)尝试注册或绑定。

2. 等待几秒钟,观察接码平台页面是否显示“收到验证码”状态。

3. 同时检查你的 Telegram Bot 是否收到了包含验证码的消息。消息内容应类似:“您的验证码是:123456”。

4. 如果收到,说明接码 API 配置成功。你可以将该验证码输入到目标服务完成验证。

5. 测试多次,确保不同服务、不同国家的号码都能正常工作。

注意事项/小提示:

  • 验证码通常有时效性(5-10分钟),请尽快使用。
  • 如果收不到验证码,检查接码平台是否支持该服务(例如某些平台不支持 Telegram 注册)。
  • 建议同时开启 Telegram 桌面端和手机端通知,避免遗漏。

备用方案:

  • 若 Bot 未收到消息,尝试手动调用 API 接口:在浏览器打开 https://api.telegram.org/bot<你的Bot Token>/sendMessage?chat_id=<你的Chat ID>&text=测试消息,如果收到,说明 Bot 本身正常,问题出在接码平台回调。
  • 如果收到消息但验证码内容错误,检查回调 URL 中变量格式是否正确。

备用处理:常见故障排查与修复

在使用过程中,可能会遇到 Bot 无响应、验证码丢失或平台限制等问题,以下是针对性的解决方案。

具体操作说明:

1. Bot 收不到任何消息:检查 Bot Token 是否输入正确,Chat ID 是否对应。可以重新执行 getUpdates接口获取最新 Chat ID。

2. 验证码重复发送或丢失:部分平台会重复发送相同验证码,可在 Bot 中设置去重逻辑(如记录已收到的验证码)。若丢失,检查平台是否开启了“自动删除验证码”选项。

3. 接码平台返回错误:如“余额不足”“号码已失效”,请检查账户余额和号码有效期,重新购买号码。

4. 网络或代理问题:Telegram 在某些地区可能被限制,请确保你的服务器或本地网络可以正常访问 Telegram API。必要时使用代理或更换服务器节点。

5. API 调用频率限制:Telegram Bot API 有限流(每秒最多 30 条消息),如果接码量大,建议使用消息队列或分批处理。

注意事项/小提示:

  • 不要频繁更换 Bot Token,否则所有已配置的回调 URL 都需要更新。
  • 建议在接码平台设置“仅接收一次验证码”或“自动释放号码”以减少资源浪费。
  • 如果使用代理,确保代理稳定且延迟低,否则可能导致回调超时。

备用方案:

  • 如果以上方法均无效,可以尝试更换接码平台。不同平台对同一国家的号码覆盖能力不同。
  • 对于高级用户,可以自建接码服务器,使用 SMS Gateway 设备(如 GSM 模块)直接接收短信,再通过 Bot 转发。

常见问题补充

Q1:为什么我的 Bot 收到了消息,但验证码是乱码或格式不对?

A:这通常是因为接码平台回调 URL 中的变量格式错误。请检查是否使用了正确的占位符(如 {code}%CODE%),并确保没有多余的空格或特殊字符。

Q2:接码平台提示“号码已被使用”,怎么办?

A:每个临时号码通常只能用于一次注册。如果号码被标记为已使用,请重新购买新号码。部分平台支持“释放号码”后再购买。

Q3:我能同时使用多个接码平台吗?

A:可以。你可以为每个平台创建独立的 Bot,或使用同一个 Bot 通过不同的命令区分来源(例如 /sms-activate/5sim)。但注意要避免 Chat ID 冲突。

Q4:接码 API 是否支持自动输入验证码?

A:仅靠 Telegram Bot 无法直接自动输入验证码到第三方应用。你可以结合自动化工具(如 AutoJSUiBot)或浏览器插件来实现自动填充。

总结:

Telegram 接码 API 的核心是打通接码平台与 Bot 之间的数据通道,通过配置回调 URL 实现验证码的自动转发。整个过程需要依次完成 Bot 创建、平台 API 获取、回调设置和测试验证,遇到问题时优先检查 Token、Chat ID 和变量格式。