Telegram Schema

详细的 API 数据结构和类型定义

TL Schema 说明

Telegram 使用 TL (Type Language) 语言定义所有 API 方法和数据类型。 TL Schema 提供了一种结构化的方式来描述数据结构,确保客户端和服务器之间的通信一致性。

完整的类型系统

TL Schema 定义了 Telegram 中使用的所有数据类型,包括用户、消息、聊天、媒体等。 每个类型都有明确的字段定义和类型约束。

Schema 示例

API Layer

Telegram API 层定义,包含所有可用的方法和类型

// API Layer 167
invokeWithLayer#da9b0d0d {X:Type} layer:int query:!X = X;
invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
invokeAfterMsgs#3dc4b4f0 {X:Type} msg_ids:Vector<long> query:!X = X;

User Types

用户相关的数据类型定义

userEmpty#d3bc4b7a id:long = User;
user#3ff6ecb0 flags:# self:flags.10?true contact:flags.11?true
  mutual_contact:flags.12?true deleted:flags.13?true
  bot:flags.14?true bot_chat_history:flags.15?true
  id:long access_hash:flags.0?long first_name:flags.1?string
  last_name:flags.2?string username:flags.3?string
  phone:flags.4?string photo:flags.5?UserProfilePhoto = User;

Message Types

消息相关的数据类型定义

messageEmpty#90a6ca84 flags:# id:int peer_id:flags.0?Peer = Message;
message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true
  media_unread:flags.5?true silent:flags.13?true post:flags.14?true
  from_scheduled:flags.18?true legacy:flags.19?true
  edit_hide:flags.21?true pinned:flags.24?true
  id:int from_id:flags.8?Peer peer_id:Peer date:int
  message:string media:flags.9?MessageMedia = Message;

TDLib Schema

TDLib 使用自己的 Schema 定义,专门为客户端开发优化。 查看 TDLib Schema 了解如何构建完整的 Telegram 客户端。

查看 TDLib Schema →

Bot API Schema

Bot API 使用简化的 JSON 格式,更易于使用。 适合快速开发机器人应用。

查看 Bot API 文档 →

完整 Schema 文档

访问官方文档查看完整的 Telegram Schema 定义,包括所有 API 方法、 数据类型和错误代码。

访问完整 Schema