Local REST API
Every endpoint works against your own instance with no keys. Optional API-key mode can be switched on in Settings if you expose the instance beyond your network.
OpenAPI v1
Endpoints
POST
/api/v1/analyzeNormalize a URL, detect the platform and return available formats.POST
/api/v1/downloadCreate a download job for a chosen format id.GET
/api/v1/jobs/:idFull job record including format, state and timestamps.GET
/api/v1/jobs/:id/statusLightweight state, progress, speed and ETA for polling.POST
/api/v1/jobs/:id/cancelCancel a queued or running job.GET
/api/v1/jobs/:id/downloadStream the finished file until its TTL expires.GET
/api/v1/platformsRegistered extractors and the media kinds they handle.GET
/api/v1/formatsContainers and codecs this instance can produce.GET
/api/v1/healthStatus of database, ffmpeg, extractors and storage.GET
/api/v1/versionApp, yt-dlp and FFmpeg versions.POST /api/v1/analyze
Request
curl -X POST http://localhost:3000/api/v1/analyze \
-H "Content-Type: application/json" \
-d '{ "url": "https://vimeo.com/759890284" }'200 OK
Response
{
"title": "Alpine Riverscapes — 4K Nature Study",
"author": "Cascadia Films",
"platform": "Vimeo",
"duration": 252,
"mediaType": "video",
"formats": [
{
"id": "1080p",
"container": "mp4",
"resolution": "1920x1080",
"fps": 60,
"codec": "avc1 + aac",
"bytes": 864026624,
"remux": true
}
],
"subtitles": [{ "lang": "en", "formats": ["srt", "vtt"] }]
}Friendly messages, technical detail in logs
Errors
UNSUPPORTED_PLATFORMThis platform is not supported.INVALID_URLThat doesn't look like a valid link.SOURCE_UNREACHABLEThe source could not be reached.FORMAT_UNAVAILABLEThis format isn't available for this media.PROCESSING_FAILEDMedia processing failed.