Get recent videos from a profile
Fetch recent public videos by one TikTok account: video_description, create_time, duration, cover_image_url, view_count, like_count, comment_count, share_count, favorites_count, hashtag_names and the sound.
https://api.scrapefield.com/v1/tiktok/videoshttps://api.scrapefield.com/v1/tiktok/videos?username=nasaIn your code
curl -H "Authorization: Bearer $SCRAPEFIELD_KEY" \
"https://api.scrapefield.com/v1/tiktok/videos?username=nasa"Parameters
| Parameter | What it does |
|---|---|
username | The username, without the leading @. |
url | The profile URL. |
limit | How many results to return, 1–30. 1–30, default 30 |
cursor | The `meta.next_cursor` from the previous page. Omit for the first page. |
fresh | Skip the cache and fetch now. Charged normally. Not available on trial credits — buy any pack to unlock it. default false |
Response
Returns an array of tiktok_video. This is a real response, not an abbreviated one — including the fields that come back null, because a field is null when the platform does not show it and you should know which ones those are before you build on them.
{
"data": [
{
"id": "7410602827385781349",
"share_url": "https://www.tiktok.com/@nasa/video/7410602827385781349",
"username": "nasa",
"video_description": "Same corner, four years apart. #filmphoto #sourdough #fyp",
"create_time": "2026-06-13T20:45:34.000Z",
"duration": 129,
"cover_image_url": "https://cdn.example/tt/7410602827385781349.jpeg",
"play_url": "https://cdn.example/tt/7410602827385781349.mp4",
"view_count": 857959,
"like_count": 48991,
"comment_count": 165,
"share_count": 1051,
"favorites_count": 2868,
"hashtag_names": [
"filmphoto",
"sourdough",
"fyp"
],
"region_code": "PT",
"music": {
"id": "7282218581963749017",
"title": "original sound - nasa",
"author": "nasa",
"original": true
},
"duet_enabled": true,
"stitch_enabled": false
},
{
"id": "7420103876302514158",
"share_url": "https://www.tiktok.com/@nasa/video/7420103876302514158",
"username": "nasa",
"video_description": "Three days of proofing and it finally behaved. #buildinpublic #filmphoto #fyp",
"create_time": "2026-06-17T14:27:16.000Z",
"duration": 9,
"cover_image_url": "https://cdn.example/tt/7420103876302514158.jpeg",
"play_url": "https://cdn.example/tt/7420103876302514158.mp4",
"view_count": 359715,
"like_count": 10734,
"comment_count": 42,
"share_count": 116,
"favorites_count": 787,
"hashtag_names": [
"buildinpublic",
"filmphoto",
"fyp"
],
"region_code": "CZ",
"music": {
"id": "7214154119971184156",
"title": "original sound - nasa",
"author": "nasa",
"original": true
},
"duet_enabled": true,
"stitch_enabled": false
}
],
"meta": {
"request_id": "req_7f3ac1e94b2d40f8a1c6e5d2",
"credits_charged": 3,
"credits_remaining": 74218,
"cached": false,
"fetched_at": "2026-09-20T09:12:03Z",
"next_cursor": "eyJwIjoxLCJzIjoiYTNmOSJ9"
}
}Fields of tiktok_video
A public TikTok video. Named after TikTok's Display and Research APIs.
| Field | What it is |
|---|---|
id | TikTok's numeric id — the number at the end of the URL. |
share_url | The video. |
username | Who posted it. |
video_description | The caption. |
create_time | When it was posted. |
duration | Seconds. |
cover_image_url | |
play_url | The video file on TikTok's CDN. TikTok signs it and it stops working after a while, so fetch it soon. We do not rehost videos. |
view_count | |
like_count | |
comment_count | |
share_count | |
favorites_count | Saves. null where the page does not show them. |
hashtag_names | Without the #. |
region_code | Where it was posted from, ISO 3166-1 alpha-2. |
music | The sound. |
music.id | |
music.title | |
music.author | |
music.original | An original sound rather than a track. |
duet_enabled | |
stitch_enabled |
What it costs
3 credits per successful call, whether we fetch it or serve it from cache — you pay for the answer, not for how we produced it. Responses are cached for 3 hours and a cached one tells you when the data was actually fetched. A call we fail costs 0 and is refunded automatically.
On the smallest pack that is $2.34 per 1,000 calls; on the largest, $1.20. The full table.