FX Downloader Developer Documentation
Seamlessly integrate automated media extraction, stream resolution, and audio/video downloads into your apps, bots, scripts, and workflows with our high-speed JSON REST API.
Overview
Understand how the FX Downloader API processes media requests.
The FX Downloader REST API is a high-throughput, low-latency web service built on top of a cluster-optimized extraction engine. It allows developers to extract media metadata, video stream formats (up to 4K Ultra HD), audio tracks (MP3 / M4A), thumbnails, and direct downloadable stream links from more than 1,000 video hosting platforms.
Frequent video lookups are served from an edge memory cache for ultra-fast <50ms response times.
YouTube, TikTok, Twitter/X, Instagram Reels, Vimeo, SoundCloud, Reddit, Facebook, Twitch, and more.
Dynamic plan quotas prevent abuse while providing seamless scaling from free testing to enterprise.
Authentication
Authenticate your requests with your private API key.
All calls to the FX Downloader API require a valid API key. You can supply your key in any of the three following methods (listed in order of recommended security practice):
| Method | Syntax | Example |
|---|---|---|
| Authorization Header (Recommended) | Authorization: Bearer <KEY> |
Authorization: Bearer YOUR_API_KEY |
| Custom Header | X-API-Key: <KEY> |
X-API-Key: YOUR_API_KEY |
| Query Parameter | ?api_key=<KEY> |
?api_key=YOUR_API_KEY |
Base URLs & Endpoints
Root URLs for clean routing and standard script execution.
Both rewrite-friendly clean URLs (via .htaccess) and direct file URLs are supported across all environments:
| Routing Type | Metadata Endpoint | Stream / Download Endpoint |
|---|---|---|
| Clean Rewrite | https://fxdownloader.net.fastsmsverify.ng/api/json |
https://fxdownloader.net.fastsmsverify.ng/api/download |
| Direct Script | https://fxdownloader.net.fastsmsverify.ng/api.php?action=json |
https://fxdownloader.net.fastsmsverify.ng/api.php?action=download |
Quickstart (1 Minute)
Run your very first API extraction request from terminal or browser.
curl -s -X GET "https://fxdownloader.net.fastsmsverify.ng/api.php?action=json&api_key=YOUR_API_KEY&url=https://www.youtube.com/watch?v=jNQXAC9IVRw"
GET Extract Video Metadata & Streams
Inspect title, channel, duration, thumbnail, available video resolutions, audio streams, and direct download links.
Request Parameters
| Parameter | Type | Location | Description |
|---|---|---|---|
| url Required | string | Query / Body | The URL of the video or audio item (e.g. YouTube, TikTok, Vimeo, SoundCloud). Must be URL-encoded. |
| api_key Optional | string | Query | Your FX Downloader API key. Can alternately be passed in Authorization or X-API-Key headers. |
Example Response (200 OK)
{
"success": true,
"id": "jNQXAC9IVRw",
"title": "Me at the zoo",
"description": "The first video on YouTube, uploaded by co-founder Jawed Karim.",
"thumbnail": "https://i.ytimg.com/vi/jNQXAC9IVRw/hqdefault.jpg",
"duration": 19,
"uploader": "jawed",
"extractor": "youtube",
"webpage_url": "https://www.youtube.com/watch?v=jNQXAC9IVRw",
"download_options": {
"video": [
{
"quality": "1080p",
"resolution": "1080p",
"label": "Full HD (1080p)",
"ext": "mp4",
"download_url": "https://fxdownloader.net.fastsmsverify.ng/api.php?action=download&api_key=YOUR_API_KEY&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjNQXAC9IVRw&format=1080p"
},
{
"quality": "720p",
"resolution": "720p",
"label": "High Definition (720p)",
"ext": "mp4",
"download_url": "https://fxdownloader.net.fastsmsverify.ng/api.php?action=download&api_key=YOUR_API_KEY&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjNQXAC9IVRw&format=720p"
}
],
"audio": [
{
"quality": "mp3",
"label": "MP3 Audio (High Quality)",
"ext": "mp3",
"download_url": "https://fxdownloader.net.fastsmsverify.ng/api.php?action=download&api_key=YOUR_API_KEY&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjNQXAC9IVRw&format=mp3"
}
],
"quick_download": {
"best_video_url": "https://fxdownloader.net.fastsmsverify.ng/api.php?action=download&api_key=YOUR_API_KEY&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjNQXAC9IVRw&format=1080p",
"best_audio_url": "https://fxdownloader.net.fastsmsverify.ng/api.php?action=download&api_key=YOUR_API_KEY&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjNQXAC9IVRw&format=mp3"
}
},
"access_summary": {
"tier": "Free Plan",
"daily_limit": 50,
"daily_remaining": 49,
"rate_limit_per_minute": 10,
"client_id": "client_example"
}
}
GET Stream or Queue Download
Directly redirect users to high-speed CDN media streams or enqueue a background file conversion on the server.
Request Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| url Required | string | — | Target video URL. |
| format Optional | string | best |
Target resolution or audio profile: 1080p, 720p, 480p, 360p, mp3, m4a, or raw format ID. |
| mode Optional | string | auto |
auto: Attempts instant 302 Found redirect to CDN stream URL.server: Enqueues background worker job to download the file directly to server disk.
|
Mode: Server Background Queue Response
{
"success": true,
"status": "queued",
"message": "Download initiated on the FX Downloader server in background.",
"url": "https://www.youtube.com/watch?v=jNQXAC9IVRw",
"format": "1080p",
"is_audio": false
}
POST JSON Body Payload Requests
Send parameters inside a JSON body with Content-Type: application/json.
curl -X POST "https://fxdownloader.net.fastsmsverify.ng/api.php" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://www.youtube.com/watch?v=jNQXAC9IVRw",
"action": "json",
"format": "1080p"
}'
Rate Limits & Plan Quotas
Tier limits, request pacing, and 429 response handling.
| Plan Tier | Daily Limit | Monthly Limit | Burst Rate / Min | Priority Queue |
|---|---|---|---|---|
| Free Plan | 50 downloads | 1,500 downloads | 10 req / min | Standard |
| Starter Plan | 500 downloads | 15,000 downloads | 50 req / min | Standard |
| Professional Plan | 5,000 downloads | 150,000 downloads | 200 req / min | ✓ Priority High |
| Enterprise Plan | Unlimited | Unlimited | 1,000 req / min | ✓ Dedicated Worker |
Need more capacity or bespoke throughput for enterprise pipelines? Upgrade anytime on the Pricing page.
Status & Error Codes
Standard HTTP status codes and machine-readable error codes.
| HTTP Status | Error Code | Description / Cause |
|---|---|---|
| 200 OK | SUCCESS |
Request succeeded. Returns JSON metadata payload or queued job info. |
| 302 Found | REDIRECT |
Location header set to the direct CDN media stream for immediate client playback. |
| 400 Bad Request | MISSING_URL / INVALID_URL |
The URL parameter was empty, malformed, or missing required scheme (http/https). |
| 401 Unauthorized | INVALID_API_KEY |
The provided API key is missing or not found in the database. |
| 403 Forbidden | PLAN_EXPIRED / ACCOUNT_SUSPENDED |
Your subscription plan has expired or your account has been placed on hold. |
| 422 Unprocessable | EXTRACTION_FAILED |
Extractor could not parse video. Media may be private, age-restricted, or removed. |
| 429 Too Many Requests | RATE_LIMIT_EXCEEDED / DAILY_QUOTA_EXCEEDED |
You exceeded your rate per minute or daily plan limit. |
| 503 Unavailable | API_DISABLED |
REST API service is undergoing platform maintenance by administrator. |
Standard Error Response Body
{
"success": false,
"code": "INVALID_API_KEY",
"message": "The supplied API key is invalid."
}
Integration Code Recipes
Production-ready code snippets across your favorite languages.
curl -X GET "https://fxdownloader.net.fastsmsverify.ng/api.php?action=json&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjNQXAC9IVRw" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Ready to test live API calls?
Use the interactive API playground to test URLs, inspect real responses, and preview video/audio streams directly in your browser.
Open API Playground →