curl --request GET \
--url https://api.tella.com/v1/playlists \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tella.com/v1/playlists"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tella.com/v1/playlists', 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://api.tella.com/v1/playlists",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.tella.com/v1/playlists"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.tella.com/v1/playlists")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tella.com/v1/playlists")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"pagination": {
"hasMore": true,
"nextCursor": "eyJpZCI6IjEyMyJ9"
},
"playlists": [
{
"createdAt": "2024-01-15T10:30:00.000Z",
"description": "A collection of tutorial videos for our product",
"emoji": "🎬",
"groupId": "pg_abc123def456",
"id": "pl_abc123def456",
"linkScope": "public",
"links": {
"viewPage": "https://www.tella.tv/playlist/pl_abc123def456/view"
},
"name": "Product Tutorials",
"searchEngineIndexingEnabled": true,
"updatedAt": "2024-01-15T14:45:00.000Z",
"videos": 12,
"visibility": "org"
}
]
}{
"docsUrl": "https://docs.tella.com/",
"error": "bad_request",
"message": "The request was malformed or contained invalid parameters."
}{
"docsUrl": "https://docs.tella.com/",
"error": "unauthorized",
"message": "Authentication is required. Provide a valid API key."
}{
"docsUrl": "https://docs.tella.com/",
"error": "forbidden",
"message": "You don't have permission to access this resource."
}{
"docsUrl": "https://docs.tella.com/",
"error": "not_found",
"message": "The requested resource was not found."
}{
"docsUrl": "https://docs.tella.com/",
"error": "conflict",
"message": "The request conflicts with the resource's current state, e.g. an Idempotency-Key whose first request is still in progress. Retry once it settles."
}{
"docsUrl": "https://docs.tella.com/",
"error": "rate_limited",
"message": "You have exceeded the rate limit. Please slow down."
}{
"docsUrl": "https://docs.tella.com/",
"error": "server_error",
"message": "An unexpected error occurred"
}{
"docsUrl": "https://docs.tella.com/",
"error": "not_implemented",
"message": "The requested operation is not implemented."
}{
"docsUrl": "https://docs.tella.com/",
"error": "unavailable",
"message": "A dependency was unavailable and the request was not executed. Safe to resend unchanged after the Retry-After delay."
}List all playlists
Returns a list of all playlists for the authenticated user
curl --request GET \
--url https://api.tella.com/v1/playlists \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tella.com/v1/playlists"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tella.com/v1/playlists', 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://api.tella.com/v1/playlists",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.tella.com/v1/playlists"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.tella.com/v1/playlists")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tella.com/v1/playlists")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"pagination": {
"hasMore": true,
"nextCursor": "eyJpZCI6IjEyMyJ9"
},
"playlists": [
{
"createdAt": "2024-01-15T10:30:00.000Z",
"description": "A collection of tutorial videos for our product",
"emoji": "🎬",
"groupId": "pg_abc123def456",
"id": "pl_abc123def456",
"linkScope": "public",
"links": {
"viewPage": "https://www.tella.tv/playlist/pl_abc123def456/view"
},
"name": "Product Tutorials",
"searchEngineIndexingEnabled": true,
"updatedAt": "2024-01-15T14:45:00.000Z",
"videos": 12,
"visibility": "org"
}
]
}{
"docsUrl": "https://docs.tella.com/",
"error": "bad_request",
"message": "The request was malformed or contained invalid parameters."
}{
"docsUrl": "https://docs.tella.com/",
"error": "unauthorized",
"message": "Authentication is required. Provide a valid API key."
}{
"docsUrl": "https://docs.tella.com/",
"error": "forbidden",
"message": "You don't have permission to access this resource."
}{
"docsUrl": "https://docs.tella.com/",
"error": "not_found",
"message": "The requested resource was not found."
}{
"docsUrl": "https://docs.tella.com/",
"error": "conflict",
"message": "The request conflicts with the resource's current state, e.g. an Idempotency-Key whose first request is still in progress. Retry once it settles."
}{
"docsUrl": "https://docs.tella.com/",
"error": "rate_limited",
"message": "You have exceeded the rate limit. Please slow down."
}{
"docsUrl": "https://docs.tella.com/",
"error": "server_error",
"message": "An unexpected error occurred"
}{
"docsUrl": "https://docs.tella.com/",
"error": "not_implemented",
"message": "The requested operation is not implemented."
}{
"docsUrl": "https://docs.tella.com/",
"error": "unavailable",
"message": "A dependency was unavailable and the request was not executed. Safe to resend unchanged after the Retry-After delay."
}Authorizations
API key obtained from your Tella account settings
Query Parameters
Filter by visibility: personal (only your playlists) or org (shared with organization). Default: personal
org, personal "org"
Pagination cursor from previous response
"eyJpZCI6InBsX3h5eiJ9"
Items per page (default: 20, max: 100)
1 <= x <= 10020
Response
OK
Pagination metadata for list responses. Results are sorted by updatedAt descending.
Hide child attributes
Hide child attributes
Whether there are more items to fetch
true
Cursor for next page. Pass this value as the 'cursor' query parameter to fetch the next page. Null if no more pages. This is an opaque value - do not decode or modify it.
"eyJpZCI6IjEyMyJ9"
List of playlists
Hide child attributes
Hide child attributes
ISO 8601 datetime
"2024-01-15T10:30:00.000Z"
Playlist description
5000"A collection of tutorial videos for our product"
Unicode emoji character for the playlist
10"🎬"
Playlist group this playlist belongs to in the sidebar, or null if ungrouped
"pg_abc123def456"
Unique playlist identifier
"pl_abc123def456"
Access level for the playlist
public, private, password, embedonly "public"
Playlist name
1 - 255"Product Tutorials"
Whether search engines can index this playlist
true
ISO 8601 datetime
"2024-01-15T14:45:00.000Z"
Number of videos in the playlist
0 <= x <= 900719925474099112
Whether playlist is shared with org or personal to creator
org, personal "org"
Was this page helpful?