Overview
Single downloads are the core feature of Tornado. Submit a video URL and receive a processed file uploaded to S3.Supported Options
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | Yes | The video URL to download |
format | string | No | Output format: mp4, mkv, mp3 (default: mp4) |
filename | string | No | Custom filename (without extension) |
folder | string | No | S3 folder prefix for organization |
webhook_url | string | No | URL to receive completion notification |
Basic Request
With All Options
Processing Pipeline
1
Queue
Job is added to the processing queue
2
Download
Video and audio streams are downloaded in parallel using optimal quality
3
Mux
FFmpeg combines video + audio into the final format
4
Upload
File is uploaded to S3 with multipart upload for large files
5
Complete
Webhook is called (if configured) and status is updated
Quality Selection
Tornado automatically selects the best available quality:| Priority | Resolution | Codec |
|---|---|---|
| 1 | 2160p (4K) | VP9/AV1 |
| 2 | 1440p (2K) | VP9/H.264 |
| 3 | 1080p (FHD) | H.264 |
| 4 | 720p (HD) | H.264 |
Audio is always downloaded at the highest available bitrate (usually 128-256 kbps).
Custom Filenames
Use thefilename parameter to set a custom name:
- Special characters are removed
- Spaces are preserved
- Extension is added based on format
Folder Organization
Organize downloads into folders using thefolder parameter:
client-a/project-1/videos/video-title.mp4
Error Handling
Common errors and solutions:| Error | Cause | Solution |
|---|---|---|
Video unavailable | Private or deleted video | Verify the URL is accessible |
Sign in to confirm | Age-restricted content | Contact us for cookie support |
Rate limited | Too many requests | Wait and retry, we handle rotation |
Unsupported URL | Platform not supported | Check supported platforms list |
