API Documentation
Overview
The Nexavision API allows you to download media from supported platforms programmatically. The API is free to use with rate limiting applied.
Base URL: https://nexavision.vercel.app/api/v1
Authentication
No authentication required for basic usage. Rate limiting is applied per IP address.
Rate Limit: 30 requests per minute
Endpoints
POST
/downloadDownload media from a supported URL
Request Body
{
"url": "string" // Required: URL of the media to download
}Response
{
"success": true,
"platform": "youtube",
"title": "Video Title",
"thumbnail": "https://...",
"duration": "3:45",
"mediaType": "video",
"formats": [
{
"id": "mp4-1080",
"quality": "1080p",
"format": "MP4",
"size": "~150 MB"
}
]
}Error Response
{
"success": false,
"error": "Error message"
}Supported Platforms
YouTube
youtube.com, youtu.be
TikTok
tiktok.com, vm.tiktok.com
instagram.com, instagr.am
X (Twitter)
twitter.com, x.com
facebook.com, fb.watch
reddit.com, redd.it
SoundCloud
soundcloud.com, snd.sc
Spotify
spotify.com, open.spotify.com
pinterest.com, pin.it
Examples
cURL
curl -X POST https://nexavision.vercel.app/api/v1/download \
-H "Content-Type: application/json" \
-d '{"url": "https://youtube.com/watch?v=dQw4w9WgXcQ"}'JavaScript
const response = await fetch('https://nexavision.vercel.app/api/v1/download', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ url: 'https://youtube.com/watch?v=...' })
});
const data = await response.json();
console.log(data);Python
import requests
response = requests.post(
'https://nexavision.vercel.app/api/v1/download',
json={'url': 'https://youtube.com/watch?v=...'}
)
data = response.json()
print(data)Rate Limits
- • 30 requests per minute per IP address
- • Rate limit headers included in responses
- • 429 status code when limit exceeded
Response Headers
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 29
X-RateLimit-Reset: 1699999999Error Codes
400Invalid request or URL405Method not allowed429Rate limit exceeded500Internal server error