Halloween-Sale: Agency Global $266/Mon. bei jährlicher Abrechnung. Zahl 8 Monate, bekomm 12. Endet am 31. Okt..

Endet inSale endet in 7 Tagen, 12 Stunden und 48 MinutenAngebot sichern
Guide

TikTok LIVE WebSocket API

Verbinde dich per WebSocket mit jedem TikTok-LIVE-Stream. Empfang Chatnachrichten, Geschenke, Zuschauerzahlen, Battles und Engagement-Daten in Echtzeit mit einer Latenz unter 50 ms. Funktioniert mit jeder Programmiersprache.

So funktioniert der TikTok LIVE WebSocket

TikTool stellt unter wss://api.tik.tools einen gemanagten WebSocket-Endpunkt bereit, der Events von jedem TikTok-LIVE-Stream in Echtzeit liefert. Du verbindest dich mit deinem API-Key und einem TikTok-Usernamen - Protokoll-Aushandlung, Authentifizierung und Reconnect-Logik übernimmt der Server.

Anders als direkte Protokollverbindungen zur Broadcast-Infrastruktur von TikTok (die oft kaputtgehen) ist die WebSocket API von TikTool ein stabiles Relay für den Produktivbetrieb.

Schnellstart - Verbinden in 3 Zeilen

JavaScript / Node.js

import { TikTokLive } from '@tiktool/live'

const client = new TikTokLive({ uniqueId: 'streamer_username', apiKey: 'YOUR_KEY' })
client.on('chat', e => console.log(`${e.user.uniqueId}: ${e.comment}`))
client.connect()

Oder verbinde dich direkt mit nativem WebSocket (kein SDK nötig):

const ws = new WebSocket('wss://api.tik.tools?uniqueId=USERNAME&apiKey=YOUR_KEY')

ws.onmessage = (msg) => {
  const event = JSON.parse(msg.data)
  console.log(event.event, event.data)
}

Python

import asyncio, websockets, json

async def connect():
    uri = "wss://api.tik.tools?uniqueId=USERNAME&apiKey=YOUR_KEY"
    async with websockets.connect(uri) as ws:
        async for message in ws:
            event = json.loads(message)
            print(event["event"], event.get("data", {}))

Jede Sprache

Jede Sprache mit WebSocket-Unterstützung funktioniert - Go, Rust, Java, C#, Ruby, PHP. Verbinde dich einfach mit:

wss://api.tik.tools?uniqueId=TIKTOK_USERNAME&apiKey=YOUR_API_KEY

Parameter der WebSocket-Verbindung

ParameterPflichtBeschreibung
uniqueId✓TikTok-Username (ohne @) des Streamers
apiKey✓Dein TikTool API-Key
jwtKeyJWT-basierte Authentifizierung (Alternative zu apiKey für Browser-Clients mit Token)

Eventtypen

Jede WebSocket-Nachricht ist ein JSON-Objekt mit den Feldern event und data. Diese Events bekommst du:

chat

Neue Chatnachricht eines Zuschauers. Enthält User-Infos, Nachrichtentext und Badges.

gift

Virtuelles Geschenk eines Zuschauers. Enthält Geschenkname, Diamantenwert und Anzahl der Wiederholungen.

like

Ein Zuschauer hat den Stream geliked. Enthält die Gesamtzahl der Likes.

member

Ein Zuschauer ist dem Stream beigetreten. Wird ausgelöst, wenn User den Live-Raum betreten.

social

Follow / Share / Favorit. Das Feld data.action sagt dir, was davon (follow, share, favourite).

roomUserSeq

Update der Zuschauerzahl. Enthält die aktuellen Werte viewerCount und topViewers.

subscribe

Ein Zuschauer hat den Streamer abonniert.

battle

LinkMic-Battle-Event. Enthält Battle-Status, Punktestände, Dauer und Teilnehmer.

battleArmies

Update der Battle-Teams. Team-Punktestände und Rangfolge der Teilnehmer.

linkMic

Update des LinkMic-Gast-Layouts. Enthält Slot- und Gast-User-IDs für Streams mit mehreren Hosts.

roomPin

Der Streamer hat eine Chatnachricht angepinnt.

liveIntro

Update der Stream-Beschreibung. Enthält Stream-Titel und Beschreibung.

emoteChat

Eigenes Emote im Chat gesendet. Enthält Emote-ID und Bild-URL.

envelope

Schatztruhen- / Red-Envelope-Event im Stream.

question

Von einem Zuschauer gestellte Frage im Q&A.

rankUpdate

Aktualisierter Rang des Streamers pro Region.

barrage

Barrage- bzw. Ankündigungsnachricht am oberen Bildschirmrand.

superFan

Ein Zuschauer ist Super Fan geworden oder im Level aufgestiegen. Enthält das neue Level.

superFanJoin

Ein Super Fan hat den Raum betreten.

superFanBox

Super-Fan-Box- / Belohnungs-Event.

control

Steuerung des Stream-Lebenszyklus (Pause, Ende usw.).

Verbindungslimits nach Tarif

TarifVerbindungenPreis
Sandbox (kostenlos)15Sandbox-Tarif
Pro50ab $15/Woche
Ultra250ab $45/Woche
Agency500 + Firehoseab $119/Woche

Fehlerbehandlung & Reconnect

Der WebSocket wird mit Standard-Close-Codes geschlossen. Dein Client sollte sich dann neu verbinden:

// Auto-reconnect pattern (Node.js)
function connect() {
  const ws = new WebSocket('wss://api.tik.tools?uniqueId=USERNAME&apiKey=KEY')

  ws.onmessage = (msg) => {
    const event = JSON.parse(msg.data)
    // Process event
  }

  ws.onclose = (e) => {
    console.log(`Disconnected (${e.code}). Reconnecting in 3s...`)
    setTimeout(connect, 3000)
  }

  ws.onerror = (err) => {
    console.error('WebSocket error:', err.message)
    ws.close()
  }
}

connect()

Häufige Fragen

Wie verbinde ich mich per WebSocket mit einem TikTok-Livestream?

Welche Programmiersprachen funktionieren mit dem TikTok LIVE WebSocket?

Ist die TikTok LIVE WebSocket API kostenlos?

Was unterscheidet das von Open-Source-Bibliotheken für Livestreams?

Wie hoch ist die Latenz der WebSocket-Verbindung?