Video resolutions info
curl --request GET \
--url https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions \
--header 'AccessKey: <api-key>'import requests
url = "https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions"
headers = {"AccessKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {AccessKey: '<api-key>'}};
fetch('https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"AccessKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("AccessKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions")
.header("AccessKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["AccessKey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"statusCode": 123,
"data": {
"videoId": "<string>",
"videoLibraryId": 123,
"availableResolutions": [
"<string>"
],
"configuredResolutions": [
"<string>"
],
"playlistResolutions": [
{
"resolution": "<string>",
"path": "<string>"
}
],
"storageResolutions": [
{
"resolution": "<string>",
"path": "<string>"
}
],
"mp4Resolutions": [
{
"resolution": "<string>",
"path": "<string>"
}
],
"storageObjects": [
{
"guid": "<string>",
"storageZoneName": "<string>",
"path": "<string>",
"objectName": "<string>",
"length": 123,
"lastChanged": "2023-11-07T05:31:56Z",
"serverId": 123,
"isDirectory": true,
"userId": "<string>",
"contentType": "<string>",
"dateCreated": "2023-11-07T05:31:56Z",
"storageZoneId": 123,
"checksum": "<string>",
"replicatedZones": "<string>"
}
],
"oldResolutions": [
{
"guid": "<string>",
"storageZoneName": "<string>",
"path": "<string>",
"objectName": "<string>",
"length": 123,
"lastChanged": "2023-11-07T05:31:56Z",
"serverId": 123,
"isDirectory": true,
"userId": "<string>",
"contentType": "<string>",
"dateCreated": "2023-11-07T05:31:56Z",
"storageZoneId": 123,
"checksum": "<string>",
"replicatedZones": "<string>"
}
],
"hasBothOldAndNewResolutionFormat": true,
"hasOriginal": true
}
}{
"success": true,
"message": "<string>",
"statusCode": 123
}Manage Videos
Video resolutions info
GET
/
library
/
{libraryId}
/
videos
/
{videoId}
/
resolutions
Video resolutions info
curl --request GET \
--url https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions \
--header 'AccessKey: <api-key>'import requests
url = "https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions"
headers = {"AccessKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {AccessKey: '<api-key>'}};
fetch('https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"AccessKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("AccessKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions")
.header("AccessKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://video.bunnycdn.com/library/{libraryId}/videos/{videoId}/resolutions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["AccessKey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"statusCode": 123,
"data": {
"videoId": "<string>",
"videoLibraryId": 123,
"availableResolutions": [
"<string>"
],
"configuredResolutions": [
"<string>"
],
"playlistResolutions": [
{
"resolution": "<string>",
"path": "<string>"
}
],
"storageResolutions": [
{
"resolution": "<string>",
"path": "<string>"
}
],
"mp4Resolutions": [
{
"resolution": "<string>",
"path": "<string>"
}
],
"storageObjects": [
{
"guid": "<string>",
"storageZoneName": "<string>",
"path": "<string>",
"objectName": "<string>",
"length": 123,
"lastChanged": "2023-11-07T05:31:56Z",
"serverId": 123,
"isDirectory": true,
"userId": "<string>",
"contentType": "<string>",
"dateCreated": "2023-11-07T05:31:56Z",
"storageZoneId": 123,
"checksum": "<string>",
"replicatedZones": "<string>"
}
],
"oldResolutions": [
{
"guid": "<string>",
"storageZoneName": "<string>",
"path": "<string>",
"objectName": "<string>",
"length": 123,
"lastChanged": "2023-11-07T05:31:56Z",
"serverId": 123,
"isDirectory": true,
"userId": "<string>",
"contentType": "<string>",
"dateCreated": "2023-11-07T05:31:56Z",
"storageZoneId": 123,
"checksum": "<string>",
"replicatedZones": "<string>"
}
],
"hasBothOldAndNewResolutionFormat": true,
"hasOriginal": true
}
}{
"success": true,
"message": "<string>",
"statusCode": 123
}Authorizations
AccessKey based authentication
Path Parameters
The ID of the video library.
The GUID of the video.
Response
The resolutions info.
Determines if the request was successful
Human-readable message describing the result, typically populated with error details when Success is false.
The HTTP status code corresponding to the result of the request.
The response payload. Some endpoints also populate this with error details when Success is false — see the endpoint's own response documentation.
Show child attributes
Show child attributes
Last modified on September 10, 2026
Was this page helpful?