Tiktok Downloader Api
Pricing
from $10.00 / 1,000 results
Tiktok Downloader Api
Download TikTok videos and their cover thumbnails by URL. Give the actor a list of TikTok post links and it will return direct download URLs for both the video file and the cover image — stored in Apify's Key-Value Store and ready to use immediately.
Pricing
from $10.00 / 1,000 results
Rating
5.0
(5)
Developer

Crawler Bros
Actor stats
1
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Download TikTok videos and their cover thumbnails by URL. Give the actor a list of TikTok post links and it will return direct download URLs for both the video file and the cover image — stored in Apify's Key-Value Store and ready to use immediately.
What it does
For each TikTok URL you provide, the actor:
- Opens the post in a headless browser
- Captures the video and cover thumbnail as they load
- Saves both files to Apify's Key-Value Store
- Returns download links alongside file metadata (dimensions, duration, file size, etc.)
Each post produces two output records — one for the video (.mp4) and one for the cover image (.jpg).
Input
| Field | Type | Required | Description |
|---|---|---|---|
postUrls | array of strings | Yes | One or more TikTok post URLs to download |
Supported URL formats:
https://www.tiktok.com/@username/video/1234567890https://vm.tiktok.com/XXXXXXX/(short links)https://vt.tiktok.com/XXXXXXX/(short links)
Example input:
{"postUrls": ["https://www.tiktok.com/@khaby.lame/video/7595604254929210646"]}
Output
Results are saved to the dataset. Each row represents one media file (video or image) from a post.
| Field | Description |
|---|---|
url | The original TikTok post URL |
download_status | "success" or "failed" |
mediaType | "video" or "image" |
filename | File name (e.g. 7595604254929210646.mp4) |
mediaUrl | Direct download link from Apify Key-Value Store |
media_meta | File metadata (see below) |
error | Error message (only present on failure) |
media_meta for videos:
| Field | Description |
|---|---|
width | Video width in pixels |
height | Video height in pixels |
fps | Frames per second |
duration | Duration in seconds |
video_codec | Codec identifier (e.g. avc1) |
ext | File extension |
filesize_bytes | File size in bytes |
total_bitrate_kbps | Bitrate in kbps |
aspect_ratio | Width / height ratio |
media_meta for images:
| Field | Description |
|---|---|
width | Image width in pixels |
height | Image height in pixels |
ext | File extension |
filesize_bytes | File size in bytes |
aspect_ratio | Width / height ratio |
Example output record (video):
{"url": "https://www.tiktok.com/@khaby.lame/video/7595604254929210646","download_status": "success","mediaType": "video","filename": "7595604254929210646.mp4","mediaUrl": "https://api.apify.com/v2/key-value-stores/<store-id>/records/7595604254929210646.mp4","media_meta": {"width": 576,"height": 1024,"fps": 30.0,"duration": 15.23,"video_codec": "avc1","ext": "mp4","filesize_bytes": 4823100,"total_bitrate_kbps": 2531.4,"aspect_ratio": 0.56}}
Usage notes
- One URL at a time is fine, but you can pass dozens of URLs in a single run — they are processed sequentially to avoid being blocked.
- Download links expire — files are stored in Apify's Key-Value Store and are accessible as long as the run's storage is retained (default: 7 days on Apify platform). Download the files if you need them long-term.
- Invalid URLs are skipped — if a URL doesn't match TikTok's format it is recorded as
failedand processing continues with the rest. - Proxy is used automatically — the actor routes traffic through a US residential proxy to improve reliability. No configuration needed.
- If a video fails to download, the output record will still appear with
"download_status": "failed"and anerrorfield explaining what went wrong.