Telegram 向开发者提供三类 API。Bot API 让你可以方便地编写以 Telegram 消息为界面的程序。Telegram API 与 TDLib 用于打造自定义 Telegram 客户端。以上两类 API 均可免费使用。最后,Gateway API 允许任何企业、应用或网站通过 Telegram 发送验证码,替代传统 SMS。
你也可以在网站中嵌入 Telegram Widgets。
设计师可以为 Telegram 制作 动态贴纸和表情,或 自定义主题。
通过此 API,你可以将机器人(Bot)接入 Telegram 系统。Telegram 机器人(Bot) 是一类特殊账号,创建时无需额外手机号。这类账号作为接口,对接运行在你服务器上的代码。
使用 Bot API 时,你不必了解 MTProto 加密协议的细节——中间服务器会替你完成全部加密,以及与 Telegram API 的通信。你只需通过简单的 HTTPS 接口与该服务器交互,该接口提供了简化版的 Telegram API。
机器人开发者还可以使用 Payments API,向全球 Telegram 用户收取付款。
即便你需要最大限度的自定义,也不必从零写客户端。可以试试 Telegram Database Library(简称 TDLib):面向第三方开发者的工具,便于构建快速、安全、功能完整的 Telegram 应用。
TDLib 负责全部网络实现细节、加密和本地数据存储,让你把更多时间花在设计、响应式界面和动画上。
TDLib 支持全部 Telegram 功能,让你在任意平台都能较轻松地开发 Telegram 应用。可用于 Android、iOS、Windows、macOS、Linux 以及几乎任何其他系统。该库开源,并兼容几乎任意编程语言。
Telegram Gateway API 允许任何企业、应用或网站通过 Telegram 发送授权验证码,替代传统 SMS——在降低成本的同时,提升验证码的安全性与送达速度,覆盖 Telegram 约 10 亿月活用户。用户会在 Telegram 内的专用聊天中即时收到验证码消息。
此 API 用于构建自定义 Telegram 客户端。面向所有希望在 Telegram 平台上开发应用的开发者完全开放。你可以参考现有 Telegram 应用的开源源码,了解实现方式。别忘了在系统中注册你的应用。
如何获取应用标识符并创建新的 Telegram 应用。
如何登记用户手机号以开始使用 API。
用户已开启两步验证(2FA)时如何登录,以及如何修改密码。
QR 码登录流程。
Telegram 允许在设备上创建通行密钥(Passkey),用 PIN 或 Face ID、指纹等生物识别即时登录 Telegram,无需 SMS 验证码。
如何正确处理 API 返回的错误。
如何连接到最近的 DC 接入点以加快 API 交互,以及开发客户端时需要注意的事项。
如何订阅更新并正确处理。
如何订阅并正确处理。
如何处理频道、超级群组、超级大群(Gigagroup)和普通群组,以及它们之间的区别。
Telegram 支持创建包含多个独立话题的论坛。
若通过 @botfather 开启,机器人也可以使用话题。
Telegram 支持向频道发送私信,也可用于建议(甚至付费)频道帖子。
Telegram 为频道和超级群组提供详细统计。
如何上报已读状态、频道帖浏览量、消息已读指标以及音乐播放次数。
调用方法时的额外选项。
如何正确传输大批量数据。
如何从大型对象列表中获取结果。
MTProto API 有多项客户端配置参数,可通过相应方法获取。
Telegram 支持端到端加密的一对一通话。
Telegram 支持端到端加密的群组通话。
端到端加密消息。
客户端应用中必须完成的重要校验。
将临时授权密钥绑定到永久密钥。
端到端加密通话。
端到端加密群组通话。
通过重新协商密钥,为秘密聊天提供完善前向保密。
如何为秘密聊天分配并解释 seq_no 计数器。
提升 API 交互效率的方法。
可用的高层方法列表。
API 中所用类型与方法的文本及 JSON 表示。
各 schema 版本的详细更新日志。
如何通过 MTProto API 操作机器人。
Telegram 提供多项由 Cocoon 驱动的 AI 功能。Cocoon 是一个以最大化隐私为目标的去中心化网络。
Bot API 对话 ID 是由用户、聊天、频道和秘密聊天 ID 序列推导出的单一、唯一的 64 位 peer ID 序列,并在上述各类 ID 之间保持唯一。
本页说明如何在 MTProto peer ID 与 Bot API 对话 ID 之间互相转换。
用户可直接通过 MTProto API 创建托管机器人(由指定的管理机器人控制),无需与 @BotFather 交互。
机器人提供一组命令,用户可在私聊或群聊中使用。
用户可通过按钮甚至内联按钮与机器人交互,直接来自任意聊天中的内联消息。
机器人可以自定义文本输入框旁菜单按钮的行为。
用户可通过内联查询与机器人交互,直接在任意聊天的文本输入框中发起。
机器人可以向用户提供 HTML5 游戏,供单人游玩,或在群组和一对一聊天中对战;以及如何在 MTProto API 中处理游戏。
机器人可以向用户提供交互式 HTML5 小程序(Mini App),以完全替代任意网站。
开发者可以为自己的 小程序(Mini App) 开通推广计划,让内容创作者、其他小程序开发者以及任意 Telegram 用户为其推广,并按被推荐用户的消费获得佣金。
机器人可以安装附件菜单项,提供便于访问、用途多样的小程序(Mini App)。
用户可以编辑并本地化自己拥有的机器人的头像、名称、简介与描述;机器人自身也可以完成同样的操作。
Telegram 机器人为 AI 聊天机器人提供多项功能。
访客机器人可在任意非秘密私聊、群组和超级群组中通过用户名被查询,即使不是成员,也能将结果直接发到当前聊天。
若启用机器人互聊模式(Bot-to-Bot Communication Mode),机器人可在群组、私聊及其他聊天中与其他机器人收发消息。
Telegram 用户和频道可通过 API 方便地发布和查看 快拍(Stories)。
API 提供方法,用于获取主题相近的公开频道和机器人列表,依据订阅者群体的相似性筛选。
Telegram 用户和频道可以更改个人主页及消息的强调色与背景图案。
Telegram 允许用户设置细粒度隐私选项,选择哪些用户能以特定方式与自己互动。
Telegram 允许在聊天中搜索消息时应用详细的消息筛选。
服务器可按文本查询甚至消息类型过滤结果;图形客户端常据此实现聊天相册、聊天头像等功能。
Telegram 支持发送投票和测验,可在聊天和频道中由成千上万甚至上百万用户参与。
Premium 用户可在任意聊天中创建协作核对清单,用于跟踪任务、协调团队,或管理购物清单与待办事项。
Telegram 允许用户用特定表情对任意消息作出表情回应,并触发可爱的 Lottie 动画。
Telegram 允许为发出的消息添加华丽的动态特效。
贴纸、自定义表情和 GIF 选择界面应提供分类列表,以便按一组表情或其他条件快速筛选结果。
Telegram 允许用户将表情符号或 自定义表情 设为状态,显示在聊天和资料中的名称旁。
频道、普通群组和超级群组可以有公开用户名或私有邀请链接;私有邀请链接还可配合按用户的入群申请。
如何处理频道、群组和超级群组中的管理员权限、细粒度封禁与全局权限。
借助消息话题串,Telegram 支持对 频道帖 或普通 群组消息 进行评论。
超级群组和频道都提供所谓的 管理日志,记录近期相关操作,例如管理员修改群组/频道设置或资料、踢出或封禁用户等。
Telegram 允许在指定聊天顶部置顶多条消息。
群聊成员(普通群组与超级群组)可以在名称旁添加标签,用于标明工作角色、在读专业等。
Telegram 允许在紧急事务中提及其他用户,并可快速跳转到这些提及以便尽快阅读。
Telegram 支持定时发送消息。
Telegram 允许在聊天中发送用户的实时地理位置,并可选择设置接近提醒。
如何在 API 中处理 peer 信息。
有时,群聊更新中遇到的 user 和 channel 构造器可能不包含完整用户信息:本页说明如何处理这类构造器。
如何删除 Telegram 账号。
Telegram 允许从其他聊天应用导入消息和媒体文件。
如何直接通过 MTProto API 使用 Telegram Passport。
如何直接通过 MTProto API 使用 Telegram Payments。
为进一步提升 Telegram 上的透明度,官方认可的第三方服务可以为用户账号和聊天附加额外认证图标,以防止诈骗、减少不实信息。
如何用 message entities 创建样式文本。
Telegram 客户端支持显示 GIF。
Telegram 客户端支持显示动态、静态和视频贴纸。
Telegram 允许在消息中直接插入自定义动态、静态和视频表情。
图形界面 Telegram 客户端应将表情转换为对应的动态版本。
Telegram 支持发送 动态骰子 表情。
如何处理消息草稿。
如何使用文件夹。
若已启用,top peer 的评分表示某个常用 peer 在特定 分类 中的相关度(常联系的用户、常用机器人、内联机器人、常访问的频道等)。
如何处理文件引用。
处理无缝 Telegram 登录的 URL 授权请求。
如何处理聊天背景。
如何处理聊天通知铃声。
如何转写语音消息。
Telegram 支持翻译聊天消息,Telegram Premium 用户还可以开启实时聊天翻译。
达到一定人数的超级群组管理员可以启用 Telegram 自有反垃圾算法的主动防护——为自动垃圾过滤器打开新的“激进模式”。
Telegram 用户可通过 用户名 方便他人联系自己,或找到公开群组和频道:客户端还可以为自己拥有的账号、超级群组和频道分配多个 Fragment » 收藏用户名;Fragment » 也支持购买可用于注册 Telegram 账号的手机号收藏品。
Telegram Premium 是一项可选订阅服务,可解锁额外的客户端与 API 专属功能,同时支持应用开发。它属于 Telegram 可持续变现的一部分——由用户驱动,而非广告商或股东。这样 Telegram 可以保持独立,并优先考虑用户。
用户可以将 Telegram 账号转为商业账号,使用营业时间、位置、快捷回复、自动消息、自定义起始页、聊天机器人支持等商业功能。
Telegram Business 的大部分功能面向 Telegram Premium » 订阅用户;已连接的商业机器人 » 也向非 Premium 用户开放。
Telegram Stars 是虚拟物品,用户可用其在 Telegram 生态内向机器人和小程序(Mini App)购买数字商品与服务,向平台上的创作者赠送礼物等。
机器人和频道可以创建订阅,定期向用户收取一定数量的 Telegram Stars,以换取内容和服务。
希望消息保持私密的用户和机器人,以及希望内容仅限成员查看的群组与频道所有者,可以限制从该聊天转发消息。此举也会阻止截屏、禁止转发(尝试转发受保护消息会返回 CHAT_FORWARDS_RESTRICTED RPC 错误),并限制从帖子保存媒体文件。
用户可以向好友发送礼物。收礼人可以将礼物展示在个人主页上,或兑换为 Telegram Stars »。Telegram Stars 可用于多种用途,包括支持创作者、在小程序(Mini App)中购买服务。
为保证 收藏礼物 的公平分发,新礼物将通过拍卖发行——用户可在多轮中使用 Stars 对新礼物出价。
内容创作者可以通过在频道发布付费照片或视频来收取 Stars。订阅者需向作者付费解锁后才能查看此类帖子。
Telegram Stars 可用于向已配置 Star Messages » 的用户、超级群组和频道付费发消息:向其发送的每条消息都需付费。
Telegram 为频道管理员提供一项变现功能:建议帖。
Telegram Premium 用户可以通过给予加速(boost),为喜爱的频道解锁额外功能,例如发布 快拍(Stories)。
Telegram 频道管理员可以发起抽奖,在关注者中随机发放 Telegram Premium 订阅及其他礼物,以换取 加速。
有时,在通过私聊或秘密聊天与 Telegram 用户互动时,需要在聊天顶部显示操作栏,提供便捷操作按钮或与该用户相关的提示。
收藏夹(Saved Messages)聊天允许用户收藏消息和媒体文件:相当于个人云存储,可把想保留的消息或媒体发送或转发到此处。
Telegram 为个人主页提供多种自定义选项。
Telegram 应用支持生成、分享和同步应用主题。
如果你的应用允许访问 Telegram 频道内容,就必须支持 Telegram 频道中的 官方推广消息。
Telegram 拥有社交媒体历史上最为慷慨的奖励体系之一。频道和机器人所有者现在可以获得其频道与机器人中展示广告收入的 50%。
本页说明如何提取频道与机器人广告收入,以及查看详细收入统计。
Telegram 客户端支持显示由独立事实核查方添加到消息上的事实核查。
如何在 API 中处理联系人。
如何使用黑名单。
部分法规要求查看受限内容前进行年龄验证:Telegram 通过专用机器人的 Main Mini App 实现该流程。
在与 HTML5 游戏及支付网关网站交互时,Telegram 应用应暴露以下 JS API。
Telegram 客户端必须通过注册操作系统处理程序,处理消息、链接实体及其他应用中出现的特殊 tg:// 和 t.me 深度链接。
Telegram 的 API 允许用户通过 takeout API 导出自己的全部信息。
所有第三方客户端应用必须遵守的服务条款。