TikTok Video Scraper
Collect TikTok videos by creator, hashtag, sound, playlist or keyword - full metadata, live engagement counts, and no-watermark MP4 and MP3 links.
Scrape TikTok videos from every angle
A useful TikTok video scraper is not one endpoint - videos live in feeds. Sometimes you start from a creator and want their whole output, sometimes from a hashtag mid-trend, sometimes from a sound that is starting to spike, and sometimes all you have is a keyword. TikLiveAPI covers each entry point with a dedicated endpoint that returns a common video object - the same IDs, caption, media URLs and engagement counters on every route - so one parser handles all of them, with the few differences noted below.
Every call is an authenticated HTTPS GET against https://api.tikliveapi.com with your key in the X-Api-Key header. Responses are synchronous JSON - no actor runs, no dataset exports, no polling loop.
Six ways into the video graph
By creator
/user-posts/ pages through a user's public videos with a cursor - up to 35 per call - so a full channel archive is a short loop.
By hashtag
/challenge-posts/ streams the videos ranked under a challenge ID, with an optional region filter for country-level trend work.
By sound
/music-posts/ lists videos using a specific track, the fastest way to catch an audio trend while it is still climbing.
By keyword
/search-video/ searches videos by phrase, with publish_time windows (24 hours to 6 months), sort_by relevance, likes or date, and a region filter.
By playlist or collection
/playlist-posts/ and /collection-posts/ pull every video in a public playlist or saved collection.
One video, everything
/post-detail/ takes a video URL and returns the complete record, including hdplay - a direct HD no-watermark MP4 link.
What each scraped video gives you
The core video object is the same across feeds. The fields that matter most in practice:
Engagement counts
play_count, digg_count, comment_count, share_count, download_count and collect_count - read from TikTok at the moment you call.
Media URLs
play for the clean MP4, wmplay for the watermarked original, cover and origin_cover stills, plus duration and file size.
Music metadata
A nested music_info block with track id, title, author, album and a direct audio URL on creator, hashtag, keyword and single-video responses - the bridge into sound-trend analysis. The sound, playlist and collection feeds leave music_info out, but every feed still carries the audio URL in music.
Context flags
is_ad and a commerce_info block expose promoted content, create_time gives you a Unix timestamp, and author identifies the creator by id, unique_id, nickname and avatar. The author object has no verified flag; read that from the profile endpoints.
Example: archive a creator's channel
curl "https://api.tikliveapi.com/user-posts/?userid=107955" \
-H "X-Api-Key: YOUR_API_KEY"
Trimmed response:
{
"videos": [
{
"video_id": "7680721699171601694",
"title": "this summer was all about the classic hits. here's to the ones that never got away 💿 #SongsofTheSummer2026",
"duration": 56,
"play_count": 437140,
"digg_count": 19944,
"comment_count": 5390,
"create_time": 1788307388,
"music_info": { "id": "7680721756763523871", "title": "original sound - tiktok" }
}
],
"cursor": "1787930211535",
"hasMore": true
}
Add count=35 to fetch the maximum per page, pass cursor back exactly as received, and loop while hasMore is true to cover the channel. On /user-posts/ the cursor is a millisecond timestamp string; the other feeds return small integers. The production concerns - retry policy, dedupe keys, storing media before URLs expire - are covered in bulk TikTok video archiving patterns, and the search-driven variant in the search API patterns guide.
Downloads, watermarks, and scope
If your goal is specifically clean media files rather than metadata, the dedicated video download API returns direct MP4 and MP3 URLs per video. For everything else the scraper reads exactly what a logged-out visitor sees: public videos only, no private accounts, no login, no watermark stripping on your side. Start with 100 free credits and test any feed in the playground before writing a line of code - or begin from the wider TikTok scraper overview. For an endpoint-by-endpoint reference of the same posts endpoints, see the TikTok Video API page.
Frequently Asked Questions
How do I scrape all videos from a TikTok account?
Resolve the username to a numeric ID with /userid/, then call /user-posts/ with that userid and count=35. Each response returns a videos array plus cursor and hasMore; pass the cursor back unchanged on the next call (on this endpoint it is a millisecond timestamp string) and loop until hasMore is false. The result is the account's full public video list with engagement counts and media URLs.
Can I scrape TikTok videos by hashtag or sound?
Yes. /challenge-posts/ streams videos under a hashtag challenge ID with an optional region filter, and /music-posts/ lists videos using a specific track ID. Both page with a cursor and return the same core video object as the other feeds, so the same parser works. Note that /music-posts/, like the playlist and collection feeds, omits the nested music_info block.
Does the scraper return video download links?
Yes. Every video object includes play (clean MP4), wmplay (watermarked original), and cover image URLs, and /post-detail/ adds hdplay for an HD no-watermark file. For a download-first workflow the dedicated download endpoints also return direct MP4 and MP3 URLs per video.
Which engagement metrics come with each video?
Each video carries play_count, digg_count (likes), comment_count, share_count, download_count and collect_count, plus create_time as a Unix timestamp and duration in seconds. The numbers are fetched from TikTok in real time when you call; TikLiveAPI does not keep copies of them.
Can I filter scraped videos by date or popularity?
/search-video/ supports publish_time windows (past 24 hours, week, month, 3 months, 6 months), sort_by relevance, like count or date posted, and a region parameter. For creator feeds you filter client-side on create_time, which every video object includes.
How much does scraping TikTok videos cost?
Pricing is pay-as-you-go: each successful request costs one credit, credits never expire, and new accounts get 100 free credits after verifying their email. At up to 35 videos per call, listing a 200-video channel takes about six requests. Credit package prices are on the pricing page.
Start building with real-time TikTok data today.
Credit packages from $9.90 for 100,000 requests. Start with 100 free credits.