Documentation

Vidnexo documentation

What the app does, how each feature works, and the complete public API reference for developers building on top of Vidnexo.

Overview

Vidnexo is an all-in-one media preview and download workspace. You paste a supported link, Vidnexo resolves the real metadata through a chain of providers, and you pick the format, quality and range before the file is saved. It runs entirely in the browser and can be installed as a PWA.

  • 31+ supported sources including Facebook, Instagram, TikTok, YouTube, X, Reddit, Vimeo, Dailymotion, SoundCloud and Spotify.
  • Inline preview player — confirm the media before anything is processed.
  • Video (2160p → 360p MP4) and audio-only (320/192/128 kbps MP3) outputs.
  • Private saved history for signed-in accounts, auto-purged after 7 days.
  • A public REST API with per-key scopes and rate limits.

Install the app

Vidnexo is a Progressive Web App. Open it in Chrome, tap the ⋮ menu and choose Install and create shortcut. On iOS use Share → Add to Home Screen. The installed app runs full-screen, disables pinch-zoom and text selection, and registers Vidnexo in the system share sheet.

A picture-by-picture walkthrough is on the home page.

Share target

Once installed, Vidnexo appears in the Android share sheet. Sharing a post from Facebook, Instagram, TikTok or any other app sends the URL to /share, which extracts the first valid link and forwards it to the downloader.

GET /share?url=<shared url>&text=<shared text>&title=<title>
→ 302 /downloader?url=<extracted url>

In-app browser

/browse opens any site inside Vidnexo. The top bar carries a home button back to the app, the source URL with the platform icon, a refresh button, a download button that opens the quality picker for the current page, and a shortcut to your downloads.

  • Home — returns to the Vidnexo app.
  • URL field — shows and edits the address of the page you came from.
  • Refresh — reloads the embedded page.
  • Download — opens the video/audio quality sheet for the current URL.
  • Downloads — the list of everything you saved on this device.
  • Some platforms block embedding; those pages fall back to the resolver or your system browser.

Download flow

  • 1. Paste, share or browse to a supported link.
  • 2. Vidnexo requests metadata: title, author, thumbnail, duration and platform.
  • 3. The preview player loads so you can confirm the media.
  • 4. Pick Video or Audio, then the quality; an estimated file size is shown.
  • 5. Optionally set a start and end range when a real duration is known.
  • 6. The resolver chain returns a direct media URL, which is streamed through the Vidnexo download proxy so no external tab opens.

Accounts & history

Every downloader feature works signed out. Signing in — with email and password or with Google — adds a private history of every link you preview and download, readable only by your own account. Entries older than 7 days are purged automatically.

Your profile page holds account details, history and the developer section where API keys are issued.

API — authentication

Create a key in the developer section. The key is shown once. Send it on every request:

Authorization: Bearer vx_live_xxxxxxxxxxxxxxxx
# or
X-API-Key: vx_live_xxxxxxxxxxxxxxxx

Keys carry scopes — resolve, download, music, history — and a per-minute rate limit you choose at creation time. Keys are stored as SHA-256 hashes; a lost key must be revoked and recreated.

POST /api/public/v1/resolve

Resolves a media link into playable metadata and a direct download URL.

curl -X POST https://vidnexo-downloader.lovable.app/api/public/v1/resolve \
  -H "Authorization: Bearer $VIDNEXO_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.tiktok.com/@user/video/123",
    "mediaType": "video",
    "quality": "1080p",
    "container": "mp4"
  }'
{
  "ok": true,
  "platform": "tiktok",
  "title": "Clip title",
  "author": "user",
  "thumbnail": "https://.../cover.jpg",
  "durationSeconds": 42,
  "mediaType": "video",
  "quality": "1080p",
  "container": "mp4",
  "downloadUrl": "https://.../signed-direct-url",
  "provider": "resolver-chain"
}

Errors return { "ok": false, "error": "..." } with 400 (bad input), 401 (bad key), 403 (missing scope), 429 (rate limited) or 502 (all providers failed).

POST /api/public/v1/song

Searches and resolves music tracks. Requires the music scope. Audio-only sources such as Spotify, SoundCloud and Sonar Studio are answered here.

curl -X POST https://vidnexo-downloader.lovable.app/api/public/v1/song \
  -H "X-API-Key: $VIDNEXO_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "query": "artist - track name" }'

/api/public/v1/relay

The relay is the server-to-server bridge used by external backends. It is protected by the shared X-Relay-Key header rather than a user API key, supports CORS, and answers a GET health check plus POST resolve and music actions.

GET  https://vidnexo-downloader.lovable.app/api/public/v1/relay      → { "ok": true, "service": "vidnexo-relay" }
POST https://vidnexo-downloader.lovable.app/api/public/v1/relay
  X-Relay-Key: <shared secret>
  { "action": "resolve", "url": "https://...", "mediaType": "video" }

Limits & policy

  • Rate limits are per API key, per minute, and configured when the key is created.
  • Requests are capped at a 2048-character URL and validated with strict schemas.
  • Vidnexo never bypasses DRM, logins, paywalls or platform restrictions.
  • Only process media you own or are explicitly authorised to download.
  • Abuse or automated scraping of protected content will have keys revoked.