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 匯出自己的全部資訊。
所有第三方應用程式應用必須遵守的服務條款。