curl --request GET \
--url https://video.bunnycdn.com/library/{libraryId}/collections \
--header 'AccessKey: <api-key>'import requests
url = "https://video.bunnycdn.com/library/{libraryId}/collections"
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}/collections', 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}/collections",
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}/collections"
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}/collections")
.header("AccessKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://video.bunnycdn.com/library/{libraryId}/collections")
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{
"totalItems": 123,
"currentPage": 123,
"itemsPerPage": 123,
"items": [
{
"videoLibraryId": 123,
"guid": "<string>",
"name": "<string>",
"videoCount": 123,
"liveStreamCount": 123,
"totalSize": 123,
"previewVideoIds": "<string>",
"previewImageUrls": [
"<string>"
]
}
]
}{
"success": true,
"message": "<string>",
"statusCode": 123
}Get Collection List
Returns a paginated list of collections for the library. Collections can group both videos and live streams, reflected separately in VideoCount and LiveStreamCount; preview thumbnails only reflect the videos in each collection. When includeThumbnails is true, preview thumbnails are only populated for the first 60 collections of the returned page — later items in a larger page are returned without thumbnails.
curl --request GET \
--url https://video.bunnycdn.com/library/{libraryId}/collections \
--header 'AccessKey: <api-key>'import requests
url = "https://video.bunnycdn.com/library/{libraryId}/collections"
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}/collections', 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}/collections",
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}/collections"
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}/collections")
.header("AccessKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://video.bunnycdn.com/library/{libraryId}/collections")
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{
"totalItems": 123,
"currentPage": 123,
"itemsPerPage": 123,
"items": [
{
"videoLibraryId": 123,
"guid": "<string>",
"name": "<string>",
"videoCount": 123,
"liveStreamCount": 123,
"totalSize": 123,
"previewVideoIds": "<string>",
"previewImageUrls": [
"<string>"
]
}
]
}{
"success": true,
"message": "<string>",
"statusCode": 123
}Authorizations
AccessKey based authentication
Path Parameters
The ID of the video library.
Query Parameters
The page number to return, 1-based; values below 1 are treated as 1.
The number of items to return per page, clamped to a range of 10-1000.
Filters collections by name, case-insensitive substring match.
The field to order results by. Possible values: date, title — any other value falls back to date.
If set to true, populates PreviewImageUrls for each collection (only for the first 60 collections of the page).
Response
The list of videos for the current parameters
The total number of items across all pages matching the query, not just the current page.
The current page number of the result set (1-based).
The effective page size after clamping the requested value; the last page may contain fewer items.
The items on the current page, in the order returned by the query; an empty list if no results match.
Show child attributes
Show child attributes
Was this page helpful?