curl --request POST \
--url https://api.scrapeunblocker.com/social/tiktok-profile \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/social/tiktok-profile"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/social/tiktok-profile', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Scrape a public TikTok profile and its newest videos
Fetches a public TikTok creator profile for username and returns it as JSON: username, userId, secUid, nickname, bio, bioLink, verified, privateAccount, isOrganization, createdAt, avatar (thumb/medium/large), exact stats (followers, following, likes, videos, friends), commerce (commerceUser, seller), privacy settings, and a videos array of the creator’s newest posts (up to 10). With video_details=true (default) every listed video carries the full /social/tiktok-video shape - exact plays, likes, comments, shares, saves, reposts, hashtags, mentions, music, play/download URLs, subtitles and timestamps. username accepts a bare handle, @handle or a profile URL. No login or cookies - only public profiles are read; private or missing accounts return 404 with TikTok’s reason.
curl --request POST \
--url https://api.scrapeunblocker.com/social/tiktok-profile \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/social/tiktok-profile"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/social/tiktok-profile', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Your ScrapeUnblocker API key. Apply on every request.
Query Parameters
TikTok handle ('nasa' or '@nasa') or a profile URL like 'https://www.tiktok.com/@nasa'.
How many of the creator's newest videos to include (0-200). 0 = profile only (fastest). Up to 10 come from TikTok's server-rendered widget in a couple of seconds; asking for more opens the profile in a browser and scrolls the real grid (about 35 videos a batch, 10-30 s), newest first, all with full details.
0 <= x <= 200Fetch each listed video's own page for full engagement (exact plays, likes, comments, shares, saves), hashtags, music, media URLs and timestamps. false = only id, caption, cover and play count (one fetch fewer per video).
Exit-IP country (ISO-2, e.g. 'US', 'DE'). Optional - TikTok's public pages are the same worldwide; set it only for region-restricted items.
Response
JSON profile object with a videos array (videosCollected gives its length).

