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/download

Download 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

instagram.com, instagr.am

X (Twitter)

twitter.com, x.com

Facebook

facebook.com, fb.watch

Reddit

reddit.com, redd.it

SoundCloud

soundcloud.com, snd.sc

Spotify

spotify.com, open.spotify.com

Pinterest

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: 1699999999

Error Codes

400Invalid request or URL
405Method not allowed
429Rate limit exceeded
500Internal server error