TikTok Scraper | All-In-One avatar

TikTok Scraper | All-In-One

Pricing

from $1.62 / 1,000 results

Go to Apify Store
TikTok Scraper | All-In-One

TikTok Scraper | All-In-One

Extract TikTok videos, profiles, comments, hashtags, sounds, and follower lists in one Actor. Add a username, video URL, hashtag, or search term and get video IDs, captions, play, like, comment and share counts, plus author and music data. No login required.

Pricing

from $1.62 / 1,000 results

Rating

0.0

(0)

Developer

ToolzerHub

ToolzerHub

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

TikTok Scraper

Pull TikTok profiles, videos, comments, hashtags, sounds, and follower or following lists from one Actor. Give it a username, a video URL, a hashtag, a sound ID, or a search term, and it returns structured rows — video IDs, captions, play/like/comment/share counts, author and music data. No login required: every request goes through this Actor's own backend, and no TikTok cookie, session token, or credential is ever sent.

Modes

Set scraperType to pick what this run collects. Each mode takes its own identifier below the picker.

ModeReturnsNeedsOr use the focused Actor
User profileFull profiles for one or more accountsusername (accepts a list of handles or URLs)TikTok Profile Scraper
User postsVideos posted by one accountusername or sec_user_idTikTok Profile Videos Scraper
User followersFull profiles of an account's followersusername or sec_user_idTikTok Followers Scraper
User followingFull profiles of the accounts a user followsusername or sec_user_idTikTok Following Scraper
VideoOne or more videos by ID, URL, or share linkaweme_id or share_url (both accept lists)TikTok Video Scraper
Video commentsA video's comments, with optional reply threadsaweme_idTikTok Comments Scraper
Video searchVideos matching a keywordkeywordTikTok Video Search Scraper
HashtagA hashtag's stats, with optional current top videostag_nameTikTok Hashtag Scraper
SoundA sound's metadata, with optional videos using itmusic_idTikTok Sound Scraper
User searchAccounts matching a keywordkeywordTikTok User Search Scraper
Live statusWhether one or more accounts are live right nowusername (list) or room_idTikTok Live Status Scraper

scraperType is the only field this Actor marks required. Every other field is mode-specific, so a blank identifier doesn't fail validation — it fails, or empties out, once the run actually starts. User Profile and Video stop with a clear error (Provide at least one TikTok username or full profile URL, Provide at least one TikTok video ID, full video URL, or share URL) if their identifier list is empty. Every other mode — Hashtag, Sound, User Search, Video Search, User Posts, Followers, Following, Video Comments, Live Status — runs to completion and logs why it found nothing (No hashtag found for tag_name=undefined, for example) instead of erroring. Either way, an empty dataset points you at the run log, not a bug.

One Actor or eleven?

Each of the eleven modes above is also its own focused Actor, cheaper per result and scoped to a single lookup. Reach for a focused Actor once you know exactly what you're pulling at scale — a profile batch, one account's video history, comments on a known video. Reach for this Actor when a research question spans several of those in one project — a hashtag's top videos plus each poster's profile plus their follower counts, say — because that's one Actor integration and one dataset shape instead of switching between several.

Input

{
"scraperType": "userProfile",
"username": ["https://www.tiktok.com/@khaby.lame"]
}

maxItems (default 100, prefill 20, 0 for no limit) caps every paginated mode: user posts, followers, following, video comments, video search, user search. Profile, video, hashtag, sound, and live status aren't paginated — they return one row per identifier, or a fixed set for the record they describe.

Output

Field names vary by mode. Across all eleven, the ones you'll see most are:

FieldContents
username, user_id, sec_user_idAccount identifiers
nickname, avatar_url, is_verified, is_private, region, statsProfile data
aweme_id, description, create_timeVideo identifiers and caption
music_infoMusic metadata attached to a video
comment_id, comment_text, parent_comment_id, is_replyComment data
tag_name, ch_id, hashtag_video_count, hashtag_view_countHashtag data
music_id, music_title, music_author, music_usage_countSound data
is_live, room_id, live_title, live_started_atLive status data
{
"aweme_id": "7530466721379978522",
"description": "example caption",
"create_time": 1752480000,
"stats": { "play_count": 1000000, "digg_count": 50000, "comment_count": 800, "share_count": 300 },
"music_info": { "title": "original sound", "author": "khaby.lame" }
}

Questions

What happens if I leave the identifier blank for my mode? It depends on the mode. User Profile and Video throw a clear error naming what's missing. Every other mode finishes the run and saves nothing, with a log line explaining why — Hashtag logs No hashtag found for tag_name=undefined, User Followers logs that it couldn't resolve an account, and so on. Neither behavior is a bug; check the run log before assuming the mode is broken.

Hashtag and Sound returned zero rows, but I know the hashtag exists. Why? With the video add-on (addonHashtagVideos / addonMusicVideos) turned on, the mode fetches the hashtag or sound's current videos before yielding anything. If that video fetch comes back empty, the run yields nothing at all — not even the hashtag or sound record itself. Turn the add-on off to get the base record on its own, no video lookup required.

Can one share link return more than one video? Yes, for the Video mode's share_url input. A vt.tiktok.com or vm.tiktok.com link resolves through a different upstream endpoint than an aweme_id, and that endpoint returns an array — a single share link has come back with more than one video attached.

Do the row-level add-ons (Add User Details, Add Video Detail, Add Profile, Add Similar Users) always cost extra? Only when they return something. Each is applied per saved row as a follow-up request; if that follow-up fails or comes back empty, you still get the base row and it isn't billed. addonHashtagVideos and addonMusicVideos work differently — they're charged once per run, not once per video returned.

Why does User Search only offer "Add Profile Detail" and not "Add Similar Users"? That add-on isn't wired to this mode. Followers and Following expose both addonProfile and addonSimilarUsers; User Search exposes addonProfile only.

How do I check if an account is live without knowing its room ID? Pass the username. No public TikTok page — including an account's own /live page — exposes a room ID directly, so Live Status resolves the current room and status from the username for you. Passing room_id directly skips that lookup if you already have one from elsewhere.

ActorPurpose
TikTok Profile ScraperProfile lookups by username or URL
TikTok Video ScraperVideo lookups by ID, URL, or share link
TikTok Comments ScraperOne video's comments and reply threads
TikTok Hashtag ScraperOne hashtag's stats and top videos
TikTok Followers ScraperOne account's follower list