什麼是 TikTok LIVE API?
TikTok 沒有提供公開 API 讓你取得聊天、禮物或觀眾人數這類直播資料。TikTok Business API 只涵蓋廣告和商店分析。想取得即時 LIVE 資料,開發者會使用第三方 API。
開源函式庫 tiktok-live-connector(Node.js)和 TikTokLive(Python)採用 MIT 授權,可免費使用。它們把 TikTok 簽章交給後端處理;過去的預設選項之一,是由維護這些函式庫的同一個團隊打造的付費簽章服務。
TikTool 是擁有自家簽章基礎架構的獨立替代方案。這是完全託管的 API:連線維護和驗證都由我們處理。一條 WebSocket 連線就能收到 90+ 種事件,包括聊天、禮物、按讚、追蹤、觀眾、PK 等等。提供 Node.js 和 Python 官方 SDK。Sandbox 方案不需要信用卡。
TikTok LIVE API 怎麼運作?
TikTool 位於你的應用程式和 TikTok 直播基礎架構之間。架構如下:
你的 App 連線
你的 App 帶著 TikTok 使用者名稱和 API 金鑰,對 wss://api.tik.tools 開啟 WebSocket。
TikTool 解析
TikTool 解析直播間 ID、處理驗證、完成驗證挑戰,然後加入直播。
事件串流
即時事件(聊天、禮物、觀眾等)以乾淨的 JSON 串流到你的 App,已解析、結構化並附型別。
你完全不用直接面對 TikTok 的通訊協定。TikTok 更改內部系統時(而且很常改),TikTool 會跟著調整,你的程式碼不用改也能繼續運作。
快速開始 - Node.js / TypeScript
從 npm 安裝官方 SDK:
npm install @tiktool/live連上直播並接收事件:
import { TikTokLive } from '@tiktool/live';
const client = new TikTokLive({
uniqueId: 'streamer_username',
apiKey: 'YOUR_API_KEY' // Get free key → https://tik.tools
});
client.on('chat', (event) => {
console.log(`${event.user.uniqueId}: ${event.comment}`);
});
client.on('gift', (event) => {
console.log(`${event.user.uniqueId} sent ${event.giftName} (${event.diamondCount} diamonds)`);
});
client.on('roomUserSeq', (event) => {
console.log(`${event.viewerCount} viewers watching`);
});
client.connect();完整支援 TypeScript,每種事件、欄位和參數都有完整型別,IDE 裡可以自動完成。閱讀完整 Node.js 指南 →
快速開始 - Python
從 PyPI 安裝:
pip install tiktok-live-api用 SDK 連線,並以裝飾器註冊事件處理函式:
from tiktok_live_api import TikTokLive
client = TikTokLive("streamer_username", api_key="YOUR_API_KEY") # Get free key at https://tik.tools
@client.on("chat")
def on_chat(event):
print(f"{event['user']['uniqueId']}: {event['comment']}")
@client.on("gift")
def on_gift(event):
print(f"{event['user']['uniqueId']} sent {event['giftName']} ({event['diamondCount']} diamonds)")
@client.on("roomUserSeq")
def on_viewers(event):
print(f"{event['viewerCount']} viewers watching")
client.run() # blocks; reconnects automatically偏好 asyncio?await client.connect() 會在你自己的事件迴圈裡執行同一個用戶端。金鑰也可以從 TIKTOOL_API_KEY 環境變數讀取。
快速開始 - 原生 WebSocket(任何語言)
任何支援 WebSocket 的語言都可以用,包括 Go、Rust、Java、C#、Ruby、PHP、Dart、Kotlin、Swift。只要連到:
wss://api.tik.tools?uniqueId=TIKTOK_USERNAME&apiKey=YOUR_API_KEY每則訊息都是含有 event 和 data 欄位的 JSON 物件。資料乾淨、結構化,不用解析二進位格式。完整 WebSocket API 參考文件 →
所有事件類型
TikTok LIVE API 可以從任何直播串流 18+ 種即時事件:
chat觀眾發送的聊天訊息。包含使用者資訊、留言內容、表情和徽章。
gift觀眾送出的虛擬禮物。包含禮物名稱、鑽石價值、連送次數和連擊狀態。
like觀眾對直播按讚。包含單次事件的數量和總按讚數。
member觀眾進入直播間。使用者進入直播時觸發。
follow觀眾在直播中追蹤了直播主。
share觀眾把直播分享給朋友。
subscribe觀眾訂閱了直播主。
roomUserSeq觀眾人數更新。包含目前觀眾數和觀眾貢獻榜。
battlePK / 連線事件。PK 狀態、隊伍、分數和參與者。
battleArmiesPK 隊伍更新,包含隊伍分數和參與者排名。
roomPin直播主置頂或加星了一則聊天訊息。
captionTikTok 原生的直播自動字幕,每個畫面一個字幕視窗。
envelope直播中的寶箱或紅包事件。
emote觀眾在聊天室送出的自訂表情。
liveIntro直播簡介更新,包括標題和說明變更。
streamEnd直播已結束。包含原因代碼。
connected已成功連上 TikTok 直播。
error發生連線錯誤。包含錯誤詳細資訊。
可以做出什麼?
聊天助手
打造自動化聊天助手,即時回應觀眾的訊息、指令和禮物。
數據分析
追蹤各場直播的觀眾人數、互動率、禮物收入和聊天活躍度。
互動遊戲
讓觀眾用禮物、聊天指令和按讚來操控遊戲元素。
直播疊加層
製作 OBS / Streamlabs 疊加層,顯示聊天、禮物通知和觀眾數據。
發掘直播主
追蹤直播主排名、榜一送禮者和聯賽名次,找出並培養人才。
手機 App
打造能監看 TikTok LIVE 直播並與之互動的手機 App。
TikTool vs Euler Stream vs tiktok-live-connector
開源的 tiktok-live-connector(Node.js)和 TikTokLive(Python)函式庫由經營 Euler Stream 的同一個團隊維護。它們組成一個支援完善的生態系,有 MIT 授權的用戶端和託管的簽章後端。TikTool 是獨立的託管替代方案,擁有自家簽章基礎架構,功能重點也不同。
eulerstream價格與免費方案
免費開始用 TikTok LIVE API 開發,不需要信用卡。