TikTok scraper API
Public TikTok profiles, videos, comments, followers, hashtags and search as JSON, plus transcripts and audience countries. No Research API application.
36 endpoints · from 20 credits a call · 10 free calls · no credit card
curl "https://api.insightsocial.app/v1/tiktok/profile?handle=charlidamelio" \-H "x-api-key: $INSIGHTSOCIAL_API_KEY"
What TikTok data can you get?
Public TikTok data only, returned in the same JSON envelope as every other platform.
Profiles and audience
Bio, followers, total likes and verification, plus the top countries in a creator's audience.
Videos and transcripts
An account's videos with view, like, comment and share counts, a single video in full, and its spoken text.
Comments and replies
Every public comment under a video with like and reply counts, and the replies under each one.
Search, hashtags and trends
Videos by keyword or hashtag, account search, trending videos and the TikTok Ad Library.
TikTok API endpoints
All 36 TikTok endpoints and their price in credits. 11 are metered: they show a range and charge what the call actually read.
| Endpoint | Credits | What it returns |
|---|---|---|
| /profile | 20 | Returns a TikTok account's public profile: display name, bio, follower count on author.followers (or the rounded figure with author.ext.followers_approximate), likes, verification, and user id. |
| /profile/videos | 20–100 | Returns a page of an account's recent public videos, each with caption, view, like, comment and share counts, and a thumbnail URL. |
| /post | 20 | Returns one TikTok video in full: caption, engagement counts, author, sound, video metadata, and any on-screen text the creator typed with TikTok's text tool (post.ext.on_screen_texts). |
| /post/comments | 20–140 | Returns a page of comments on one TikTok video, each with the commenter's username, comment text, like count, reply count, and timestamp. |
| /video/comment/replies | 20–100 | Returns the replies under a single TikTok comment, with each reply's text, author, likes, and timestamps. |
| /comment | 40–120 | Returns one TikTok comment with its current like count, reply count, pinned flag, author, and timestamp, found by link, by id, or by its text. |
| /search | 20–840 | Returns TikTok videos matching a keyword, each with caption, view and like counts, author details, a thumbnail, and post.ext.region (the country the video is registered to). |
| /trending | 100 | Returns a page of popular TikTok videos with caption, view and like counts, author and thumbnail. |
| /search/hashtag | 20–100 | Returns TikTok videos posted under a given hashtag, each with caption, view, like, comment and share counts, author details, and a thumbnail. |
| /search/top | 20 | Returns the videos TikTok ranks highest for a keyword on its Top tab, each with caption, author, engagement counts, a music id, and post.ext.region (the country the video is registered to). |
| /search/users | 20–2,000 | Returns TikTok accounts for a search term with username, name, avatar, followers, verification. |
| /user/audience | 100 | Returns where a creator's followers are: the top countries in their audience, with sampled follower counts and each country's share. |
| /user/followers | 20 | Returns a page of accounts that follow a TikTok user, each with username, display name, avatar, and its own follower count. |
| /user/following | 20 | Returns a page of accounts a TikTok user follows, each with username, display name, avatar, and its own follower count. |
| /user/live | 20 | Returns a TikTok account's live room in the platform's own shape: cover image, title, start time, status code, viewer and entry counts, stream ids, and the host's profile. |
| /post/transcript | 200 | Returns the spoken text of a TikTok video from its captions, with an option to fall back to AI transcription when no captions exist. |
| /video/screen-text | 100 | Returns the text shown on the video itself: native text stickers plus AI OCR of the cover frame, so burned-in editor captions are caught too. |
| /song | 20 | Returns one TikTok sound's details: title, artist, duration, how many videos use it, and its cover image. |
| /song/videos | 20 | Returns videos that use a given TikTok sound, each with caption, author details, and engagement counts. |
| /hashtags/popular | 120–1,920 | Returns TikTok's trending-hashtag board for one of 27 markets over 7, 30 or 90 days: each hashtag's rank, window post and view counts, daily popularity curve, industry board and top creators. |
| /videos/popular | 520–900 | Returns TikTok's Top Videos board for the US, Japan, Vietnam, Thailand or Indonesia over 7 or 30 days: each video's rank, lifetime and window views, organic views, engagement rate and creator. |
| /profile/region | 20 | Returns the two letter country code for a public TikTok profile, for example US or MX. |
| /adlibrary/search | 100–340 | Returns TikTok Ad Library ads matching a keyword or advertiser name, each with creative, title, advertiser, impressions and date; include=ad adds the brand, landing page and advertiser link. |
| /adlibrary/ad | 100 | Returns one TikTok Ad Library ad: creative video, title, advertiser account, landing page, brand name, and first-shown date. |
| /search/suggestions | 20 | Returns the autocomplete suggestions TikTok's own search box shows for a partial query, as a list of suggestion rows. |
| /collection/videos | 20 | Returns the public videos inside a TikTok collection, each with caption, play like comment share and save counts, author, and a playable URL. |
| /profile/playlists | 20 | Returns the playlists a TikTok creator has published on their profile, each with its playlist id, its name, and the number of videos it holds. |
| /playlist/videos | 20 | Returns the videos inside one of a creator's profile playlists, in playlist order, each with engagement counts, caption, author, and a playable URL. |
| /user/liked | 20 | Returns the videos a TikTok account has liked, newest first, each carrying its own third party author, engagement counts, caption, and a playable URL. |
| /location/posts | 20 | Returns public TikTok videos tagged at a place, each with engagement counts, caption, author, and a playable URL. |
| /effects | 20 | Returns TikTok camera effects by id, each with its name, its designer, the views of videos made with it, and how many such videos exist. |
| /effect/videos | 20 | Returns public TikTok videos created with a camera effect, each with engagement counts, caption, author, and a playable URL. |
| /search/music | 20 | Returns TikTok sounds matching a keyword, each with title, artist, duration, cover art, a preview audio URL, and how many videos use it. |
| /hashtag | 20 | Returns TikTok's own record for a hashtag, with its display name, its description where one exists, the live total views under the tag, and how many videos carry it. |
| /ads/top | 200–2,000 | Returns TikTok's Creative Center leaderboard of top-performing ads for a market and time window, each with click-through rate, board rank, like count, industry, objective, and the ad video. |
| /profile/full | 100 | Returns a TikTok profile plus its latest 10 videos and computed stats: engagement rate by views and by followers, posting cadence, the top post, and the mix of formats. |
Parameters, response fields and examples for each endpoint are in the TikTok API reference.
InsightSocial vs the official TikTok API
TikTok's Research API is open to approved non-commercial researchers, and its Display API reads only the users who log in to your app.
| InsightSocial API | Official TikTok API | |
|---|---|---|
| Who can use it | Any developer, commercial use included | Research API: approved researchers only |
| Whose data | Any public account or video | Display API: users who authorize your app |
| Approval | None. Sign in and copy a key | An application reviewed by TikTok |
| Transcripts | Spoken text of any public video | Not offered |
The official API is the right tool for posting, messaging or managing accounts you own. This one is read-only public data.
How much does the TikTok API cost?
TikTok calls start at 20 credits. Every endpoint's price is in the table above and in the free GET /v1/endpoints catalogue, so you know the cost before you call.
Failed calls are free
A call that errors or finds nothing costs 0 credits.
Repeats are free
Call the same thing again inside its window, 1 to 24 hours depending on the endpoint, and it costs 0.
One balance
API calls and Chrome extension exports share the same credits. The free plan includes 500 a month.
Not writing code?
The free TikTok scraper for Chrome exports the same data to Excel, CSV or Google Sheets from your browser, on the same account.
TikTok API: frequently asked questions
No. TikTok grants the Research API to approved academic and non-profit researchers. The InsightSocial API has no such restriction and needs no application.
Yes. /v1/tiktok/post/comments takes the video URL and returns comments page by page with the commenter, text, likes and reply count. /v1/tiktok/video/comment/replies returns the replies under one comment.
Yes. /v1/tiktok/post/transcript returns the spoken text from the video's captions, with an option to fall back to AI transcription when there are none.
/v1/tiktok/profile/region returns the country an account is registered to, and /v1/tiktok/user/audience returns where its followers are. Search results also carry the region each video is registered to.
No. There is no TikTok app, OAuth flow or review. One API key in the x-api-key header works for TikTok and the other 8 platforms.
Yes. Your first 10 calls priced at 200 credits or less are free, and the free plan includes 500 credits every month. No credit card is needed to get a key.