# Videos

GET `/download/{videoSeq}.mp4`

For example, to download the video at <https://vlivearchive.com/video/294821> use the link <https://api.vlivearchive.com/download/294821>

### Bulk Downloads

If you are interested in bulk downloading (e.g. downloading an entire channel, multiple channel or even downloading the entire collection), please reach out to me.

I am also able to bulk transfer you videos via rclone (<https://rclone.org/>) if you wish.

### Video Requests

Starting 1 November 2024, only some of the videos will be instantly available (hot storage). The majority of the videos will be kept in "cold storage" where there is a 1-5 minute delay to retrieve the video. The time it takes to retrieve the video depends on the size of the video. The estimate provided is based on the length of the video. Typically, videos shorter than 15 min can be retrieved in less than 1 minute, and a video that is an hour in duration can take about 3-4 min. Extra long/large videos (over 2 GB) may need to be manually requested (via the contact form) because the system may timeout.

The website will inform you if a video is available to request and handles the polling for updates.

<figure><img src="/files/OP5VQ8NdORo7wPVGQ9uA" alt=""><figcaption><p>Example of message and button to request video if it is available to retrieve from cold storage.</p></figcaption></figure>

However, you can programmatically request for videos and check on the status of requests via the API.

#### Video Status

You can check on the availability status of a video using the endpoint `GET /video/{videoId}/status`

For example, <https://api.vlivearchive.com/video/294821/status>

The possible statuses are

* Available - The video is instantly available to download and stream
* Available to request - The video is not currently able to be streamed, however the video is available and you may request for the video to be retrieved and streamed.
* Pending - A request to retrieve the video has been made.
* Queued - The job has been accepted and queued for retrieval.
* In Progress - The video is currently being retrieved. A percentage of the progress is also returned in the response.
* Failed - The retrieval job was attempted but there was an error during the process. It is recommended you try again. If the error persists, please contact me and I will help you out.
* Video not found - There is no known video in the archive collection. This is usually due to the video metadata being saved but not the video itself. If you have a copy of the video, I would appreciate you sending it in so we can add it to the archive.

**Response**

{% tabs %}
{% tab title="Available" %}

```json
{
  "status": "available",
  "url": "https://api.vlivearchive.com/download/294821.mp4"
}
```

{% endtab %}

{% tab title="Available to request" %}

```json
{
  "status": "available_to_request"
}
```

{% endtab %}

{% tab title="In Progress" %}

```json
{
  "status": "in_progress",
  "percentDone": 80
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "error": "Invalid request"
}
```

{% endtab %}
{% endtabs %}

### Request a video

You can programmatically request for a video using `POST /video/{videoId}/request`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.vlivearchive.com/vlive-archive-documentation/multimedia/videos.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
