Media Downloader API

High-performance service to extract metadata, stream media, and search social platforms.

Overview

This service provides REST endpoints to resolve metadata, trigger downloads, and search media from supported social networks: Instagram, TikTok, YouTube, Facebook, X (Twitter), and SoundCloud. It processes requests asynchronously, automatically cleans up disks, and is fully optimized for rapid consumption.

Authentication & Rate Limiting

Provide your credential token inside the X-API-Key request header.

Anonymous Mode

Rate limited per client IP. Ideal for testing. Default is 5 requests per minute.

API Key Mode

Each API Key tracks individual rate limits. Keys can be customized with per-key limits at creation time.

GET

/api/info

Extracts structured metadata, duration, media type, and direct CDN URLs from a social link.

Parameter Type Required Description
url string Yes The social post URL (e.g. YouTube video or Instagram post).
curl -H "X-API-Key: my_key"   "http://localhost:8000/api/info?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ"
Response Sample 200 OK
{
  "success": true,
  "title": "Never Gonna Give You Up",
  "extractor": "youtube",
  "extractor_key": "Youtube",
  "thumbnail": "https://i.ytimg.com/...",
  "duration": 212,
  "webpage_url": "https://www.youtube.com/watch?v=...",
  "is_gallery": false,
  "direct_url": "https://...",
  "direct_urls": ["https://..."]
}
GET

/api/download

Instructs the scraper to pull media files to the server and returns a claim session token for direct local streaming.

Parameter Type Required Description
url string Yes The social media link to download.
curl -H "X-API-Key: my_key"   "http://localhost:8000/api/download?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ"
Response Sample 200 OK
{
  "success": true,
  "is_image": false,
  "result": "http://localhost:8000/api/download/file?id=8f6c449e-b2d9-482a-bc91-9e79b9a67448",
  "direct_url": "https://...",
  "direct_urls": ["https://..."]
}
GET

/api/download/file

Streams the resolved file binary (or zipped gallery/carousel) back to the caller. Once the transfer completes, files are instantly purged from the server disk.

Parameter Type Required Description
id string Yes The download UUID token returned from /api/download.
# Stream and save to output.mp4
curl -o output.mp4   "http://localhost:8000/api/download/file?id=8f6c449e-b2d9-482a-bc91-9e79b9a67448"