Skip to Content

TikTok

TikTok video metadata, user profiles, and search.

  • Returns up to 50 videos per request
  • Video download URLs expire quickly
  • Fast endpoints (/videos/:id, /users/:username): 2–5 seconds

Videos

GET /tiktok/videos/:videoId — 4 credits

Get TikTok video metadata by video ID.

ParamTypeRequiredDefaultDescription
videoIdstringYesTikTok video ID
curl -H "x-api-key: sk_oms_xxx" \ https://api.omniscrape.dev/tiktok/videos/7234567890123456789

Response

{ "id": "7614295022346784030", "url": "https://www.tiktok.com/@tiktok/video/7614295022346784030", "title": "#filmtok LOCK IN, we caught up with your faves...", "description": "#filmtok LOCK IN, we caught up with your faves...", "author": "tiktok", "authorId": "107955", "duration": 88, "views": 72400, "likes": 2346, "comments": 538, "shares": 222, "saves": 192, "createdAt": "2026-03-06T23:53:48.000Z", "thumbnail": "https://...", "music": "original sound" }

Users

GET /tiktok/users/:username — 2 credits

Get TikTok user info and recent videos.

Note: The videos array may be empty for some users. Use /tiktok/users/:username/videos to reliably fetch a user’s videos.

ParamTypeRequiredDefaultDescription
usernamestringYesTikTok username
curl -H "x-api-key: sk_oms_xxx" \ https://api.omniscrape.dev/tiktok/users/cooluser

Response

{ "username": "tiktok", "displayName": "TikTok", "verified": true, "avatarUrl": "https://...", "bio": "One TikTok can make a big impact", "followers": 93144898, "following": 3, "hearts": 455040412, "videoCount": 1412, "videos": [ { "id": "7614295022346784030", "url": "https://www.tiktok.com/@tiktok/video/7614295022346784030", "title": "#filmtok LOCK IN, we caught up with your faves...", "description": "#filmtok LOCK IN, we caught up with your faves...", "author": "tiktok", "authorId": "107955", "duration": 88, "views": 72400, "likes": 2344, "comments": 538, "shares": 222, "saves": 192, "createdAt": "2026-03-06T23:53:48+00:00", "thumbnail": "", "music": "original sound" } // ... more videos ] }

GET /tiktok/users/:username/videos — 2 credits

Get TikTok user’s video list.

Note: This endpoint typically takes 5–15 seconds. Use a timeout of at least 30s.

ParamTypeRequiredDefaultDescription
usernamestringYesTikTok username
countintegerNo30Number of videos (max 50)
curl -H "x-api-key: sk_oms_xxx" \ "https://api.omniscrape.dev/tiktok/users/cooluser/videos?count=10"

Response

{ "username": "tiktok", "displayName": "tiktok", "videos": [ { "id": "7614295022346784030", "url": "https://www.tiktok.com/@tiktok/video/7614295022346784030", "title": "#filmtok LOCK IN, we caught up with your faves...", "description": "#filmtok LOCK IN, we caught up with your faves...", "author": "tiktok", "authorId": "107955", "duration": 88, "views": 72400, "likes": 2344, "comments": 538, "shares": 222, "saves": 192, "createdAt": "2026-03-06T23:53:48+00:00", "thumbnail": "", "music": "original sound" } // ... more videos ] }

Comments

GET /tiktok/videos/:videoId/comments — 3 credits

Get comments for a TikTok video.

Note: This endpoint uses browser automation and typically takes 20–40 seconds. Use a timeout of at least 60s.

ParamTypeRequiredDefaultDescription
videoIdstringYesTikTok video ID
cursorstringNoPagination cursor from previous response
curl -H "x-api-key: sk_oms_xxx" \ https://api.omniscrape.dev/tiktok/videos/7234567890123456789/comments

Response

{ "videoId": "7614295022346784030", "commentCount": 538, "comments": [ { "text": "This is amazing!", "author": "filmfan42", "authorId": "6812345678901234567", "likes": 120, "replies": 5, "createdAt": "2026-03-07T01:15:00+00:00" } // ... more comments ], "cursor": "50", "hasMore": true }

GET /tiktok/videos/search — 2 credits per item (default 20 items)

Search TikTok videos by keyword.

Note: This endpoint uses browser automation and typically takes 20–40 seconds. Use a timeout of at least 60s.

ParamTypeRequiredDefaultDescription
qstringYesSearch keyword
countintegerNo20Number of results (max 30)
curl -H "x-api-key: sk_oms_xxx" \ "https://api.omniscrape.dev/tiktok/videos/search?q=cooking&count=10"

Response

{ "keyword": "cooking", "videos": [ { "id": "7608955538445045014", "url": "https://www.tiktok.com/@courtneys_bites/video/7608955538445045014", "title": "Crispy Japanese long fries! the crisp is perfec...", "description": "Crispy Japanese long fries! the crisp is perfec...", "author": "courtneys_bites", "authorId": "6801555983929328646", "duration": 60, "views": 1300000, "likes": 45800, "comments": 165, "shares": 11100, "saves": 21900, "createdAt": "2026-02-20T14:33:41+00:00", "thumbnail": "https://...", "music": "Storytelling" } // ... more videos ] }

Subtitles

GET /tiktok/videos/:videoId/subtitles — 4 credits

Get subtitles/captions for a TikTok video. Returns WebVTT-parsed segments with timestamps and full text. Supports 40+ languages.

ParamTypeRequiredDefaultDescription
videoIdstringYesTikTok video ID
languagestringNoenSubtitle language code (e.g. en, ja, ko, zh-Hans)
curl -H "x-api-key: sk_oms_xxx" \ "https://api.omniscrape.dev/tiktok/videos/7234567890123456789/subtitles?language=en"

Response

{ "videoId": "7614295022346784030", "title": "#filmtok LOCK IN, we caught up with your faves...", "language": "en", "isAutoGenerated": true, "availableLanguages": ["zh-Hans", "vi", "en", "ja", "ko", "fr", "de", "es"], "segments": [ { "start": 0.14, "end": 1.86, "text": "Ethan Hawke is standing right behind me." }, { "start": 1.861, "end": 3.621, "text": "He's like my obsession, you know," } // ... more segments ], "fullText": "Ethan Hawke is standing right behind me. He's like my obsession, you know, in a normal way, not in a creepy way..." }
Last updated on