TikTok LIVE Event Stream Scraper
Pricing
from $3.00 / 1,000 results
TikTok LIVE Event Stream Scraper
Capture real-time events from TikTok LIVE streams including chat messages, gifts, likes, joins, shares, and viewer stats. Requires the broadcaster to be live at runtime.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
an hour ago
Last modified
Categories
Share
TikTok LIVE Scraper
Capture real-time events from TikTok LIVE streams. Two modes: Mode A (room metadata — no cookie required, always works if the broadcaster is currently live) retrieves roomId, viewerCount, likeCount, title, stream URLs, and host profile in a single dataset row. Mode B (event stream — requires a sessionid cookie) captures timestamped chat messages, gifts, likes, joins, shares, and stats updates as individual rows. The actor exits cleanly with zero rows and no error when the broadcaster is not currently live.
What this actor does
- Monitors one or more TikTok usernames or live URLs for active LIVE sessions
- Mode A (no cookie): emits one room-metadata row per live user with title, viewer count, like count, stream URLs, and host profile
- Mode B (sessionid cookie): connects to the LIVE event stream and captures every chat message, gift, like, join, share, and stats update as a separate row
- Stops cleanly after
connectionDurationseconds or aftereventCapevents — whichever comes first - Supports an optional
eventTypesfilter to capture only specific event categories - Exits cleanly with zero rows and a log message when a broadcaster is not live — this is correct behavior, not a failure
- Empty fields are omitted
Output per room-metadata row (Mode A)
roomId— unique TikTok LIVE room identifierusername— broadcaster's TikTok usernamedisplayName— broadcaster's display nametitle— current LIVE stream titleviewerCount— current live viewer countlikeCount— cumulative like count for the streamstartTime— ISO 8601 timestamp when the stream startedhostUserId— broadcaster's TikTok user IDhostAvatarUrl— broadcaster's avatar image URLstreamUrl— HLS or FLV stream URL (when available)status— stream status stringscrapedAt— ISO 8601 timestamp of collection
Output per event row (Mode B)
roomId— unique TikTok LIVE room identifiereventType— event category:chat,gift,like,join,share,follow,stats, orunknowntimestamp— ISO 8601 UTC timestamp when the event was receiveduser.id— sender's TikTok user IDuser.username— sender's TikTok usernameuser.displayName— sender's display nameuser.avatarUrl— sender's avatar image URLpayload.text— chat message text (chat events)payload.giftId— gift identifier (gift events)payload.count— gift quantity or like count (gift and like events)
Input
| Field | Type | Default | Description |
|---|---|---|---|
usernames | array of strings | — | TikTok usernames to monitor for LIVE sessions (without the @ symbol). |
liveUrls | array of strings | — | Direct TikTok LIVE URLs (e.g. https://www.tiktok.com/@username/live). Alternative to usernames. |
connectionDuration | integer | 60 | Seconds to stay connected per stream (10–3600). The actor disconnects cleanly after this window. |
eventCap | integer | 500 | Stop collecting events from a stream after this many rows (1–10000). |
eventTypes | array of strings | ["all"] | Filter to specific event types: chat, gift, like, follow, share, join, stats, all. |
sessionCookie | string (secret) | — | Your TikTok sessionid cookie value. Required for Mode B (event stream). Without it, the actor runs in Mode A (room metadata only). |
Example: Mode A — room metadata, no cookie
{"usernames": ["natgeo"],"connectionDuration": 10}
Example: Mode B — event stream with cookie
{"usernames": ["khaby.lame"],"connectionDuration": 120,"eventCap": 1000,"eventTypes": ["chat", "gift", "stats"],"sessionCookie": "your_sessionid_value_here"}
Example: Monitor multiple accounts simultaneously
{"usernames": ["natgeo", "bbcnews", "cnn"],"connectionDuration": 60}
Example: Monitor a specific live URL
{"liveUrls": ["https://www.tiktok.com/@natgeo/live"],"connectionDuration": 30}
Use cases
- Community management — monitor chat messages and viewer reactions during your own brand's live events in real time
- Influencer research — capture viewership counts, like velocity, and gift activity for live-streaming creators to gauge audience engagement
- Event coverage — archive the complete chat and event stream from a product launch, sports event, or music performance broadcast on TikTok
- Competitive analysis — track how frequently competitor brands go live and compare peak viewer counts over time
- Content moderation — scan live chat streams for spam, harmful keywords, or policy violations during high-traffic events
FAQ
Q: What happens if the broadcaster is not live when the actor runs?
A: The actor logs a message and exits cleanly with zero dataset rows. This is expected behavior. Schedule the actor during the creator's typical streaming hours for best results.
Q: Does Mode A require a cookie?
A: No. Mode A (room metadata) works without any authentication. It retrieves title, viewer count, like count, stream URLs, and host profile for any broadcaster who is currently live.
Q: How do I get my sessionid cookie for Mode B?
A: Install the Cookie-Editor browser extension, log into TikTok in your browser, open Cookie-Editor, find the cookie named sessionid, and copy its value. Paste it into the sessionCookie input field.
Q: Is the sessionid cookie stored or logged?
A: No. The cookie is used only to authenticate the WebSocket connection within the actor run and is not persisted or logged anywhere.
Q: What does connectionDuration control?
A: It sets how many seconds the actor stays connected to each LIVE stream. A 60-second window typically captures hundreds of chat events during an active stream. Increase it to archive longer sessions.
Q: Can I monitor multiple users in one run?
A: Yes. Add multiple usernames to the usernames array. The actor processes each one sequentially — connecting, collecting events for connectionDuration seconds, then moving to the next.
Q: What is the unknown event type?
A: TikTok sends some event types not yet mapped to a named category. The actor preserves the raw frame method name and payload size as rawMethod and payloadSize for debugging purposes.
Q: What stream formats does Mode A return in streamUrl?
A: When available, the actor captures HLS (m3u8) and FLV stream URLs at resolutions including 360p, 720p, 720p60, and 1080p60.
Related TikTok Scrapers
Build a complete TikTok data pipeline with our full suite: