Video Download API
One authenticated POST puts a link in the queue; poll the job or take the webhook and pull back the file.
We accept: any link to a video
- No sign-up
- Nothing to install
- No ad breaks
Three steps to the file
- Ask for a keyTell us what you are building and we issue one for the project. Every call carries it as a Bearer token or an X-API-Key header, and there is no anonymous tier.
- POST the linkSend the address and the quality you want to /api/v1/jobs. The response is a job id, immediately: the download runs on our queue, not inside your request.
- Poll, or take the webhookRead /api/v1/jobs/{id} until it says ready, or hand over a callback_url with the job and let us knock once the file is there to fetch.
How it works
The API is the same pipeline this page runs on, with the browser taken out of it. A POST to /api/v1/jobs carrying a link and an optional quality returns a job id straight away, because the work happens on our side of the wire; GET /api/v1/jobs/{id} reports queued, processing, ready or failed with a progress figure while it runs; GET /api/v1/jobs/{id}/file streams the result. Hand us a callback_url with the job and you can skip the polling entirely — the webhook fires once, when the file exists. DELETE removes the job and its file the moment you are finished with it.
Two things make this worth wiring in rather than shelling out to a downloader binary yourself. The first is that somebody else keeps it working: extractors break when a platform changes its markup, and repairing them is our job, not an item on your backlog. The second is the ceiling — the API accepts files up to 4 GB, twice the limit the Telegram side lives under, so long recordings are a normal request here. Authentication is a key per project, sent as a Bearer token or in an X-API-Key header, and it fails closed: an unkeyed call never reaches the queue. Finished files sit in a temporary store and are swept on a timer, so nothing of yours accumulates on our disk. Write to us for a key and say what you are building — we would rather know than guess at your rate.
When the bot is easier
Long recordings, heavy files and whole batches are not a job for a browser tab. The Telegram bot handles files up to 2 GB, queues the work and drops the result into the chat, where it stays. Same engine, different interface.
Open the bot in TelegramWhy us
- Extractors are our backlog, not yoursSites change their markup and the code that reads them stops working; keeping up with that is the whole job here, and it is the part you are actually buying.
- Asynchronous by designThe POST returns a job id in milliseconds and the queue does the waiting, so a four-gigabyte archive never sits inside one of your HTTP requests.
- Fails closed on the keyA call without a valid key never reaches the queue at all, and the download link a job hands back carries its own single-purpose token instead of your credentials.
Questions and answers
How do I get an API key?
By asking. Write to the support address at the bottom of this page with a sentence about the project and we issue a key for it; keys are per project so that traffic can be told apart later.
Is the API asynchronous or does it block?
Asynchronous. POST /api/v1/jobs answers with a job id at once, the download runs on a queue, and you either poll the job or give us a callback_url and wait for the webhook.
What is the largest file the API will return?
Four gigabytes, which is twice what the Telegram route allows — that limit belongs to Telegram, not to the engine. Very long recordings are an ordinary request here.
How long is a finished file kept?
Long enough to collect it and no longer: files live in a temporary store and are removed on a timer. Call DELETE on the job as soon as you have the bytes if you would rather not wait for the sweep.
Does the webhook retry, and how do I know it is yours?
The callback carries an event header naming the job and its outcome, and the download link inside it holds a token scoped to that one file — so a receiver can fetch it without ever holding your API key.
Which sites does the API cover?
The same fifteen hundred the bot and this page cover, including VK Video, Rutube, Odnoklassniki, Twitch, TikTok and X. There is no separate, smaller list for programmatic access.
Can I use it to build a downloader of my own?
Yes, that is what it is for. The one thing we ask is that you do not point it at private material or resell it as an audio ripper — the perimeter that applies to this site applies to keys issued off it.