Apply a subtitle preset
curl --request PUT \
--url https://api.tella.com/v1/videos/{id}/subtitle-preset \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"presetId": "default:spotlight"
}
'import requests
url = "https://api.tella.com/v1/videos/{id}/subtitle-preset"
payload = { "presetId": "default:spotlight" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({presetId: 'default:spotlight'})
};
fetch('https://api.tella.com/v1/videos/{id}/subtitle-preset', 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/videos/{id}/subtitle-preset",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'presetId' => 'default:spotlight'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.tella.com/v1/videos/{id}/subtitle-preset"
payload := strings.NewReader("{\n \"presetId\": \"default:spotlight\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.tella.com/v1/videos/{id}/subtitle-preset")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"presetId\": \"default:spotlight\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tella.com/v1/videos/{id}/subtitle-preset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"presetId\": \"default:spotlight\"\n}"
response = http.request(request)
puts response.read_body{
"preset": {
"captionStyle": {
"backgroundColor": "#5E51F8FF",
"name": "backdrop",
"textColor": "#5E51F8FF",
"wordLevelHighlights": true,
"activeWordTextColor": "#5E51F8FF",
"backgroundEnabled": true,
"highlightColor": "#5E51F8FF",
"highlightMode": "text",
"outlineColor": "#5E51F8FF",
"outlineEnabled": true,
"shadowColor": "#5E51F8FF",
"shadowEnabled": true,
"textCase": "original"
},
"name": "<string>",
"presetId": "default:spotlight",
"scope": "default"
}
}{
"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."
}Videos
Apply a subtitle preset
Apply a preset returned by GET /v1/subtitle-presets. Built-in presets restore style, font, weight, and size, preserving position, grouping, and lines per block. Personal presets also restore those saved layout settings. Does not change transcript text or whether subtitles are enabled. Changes sync to open editors; reapplying the same preset is safe.
PUT
/
v1
/
videos
/
{id}
/
subtitle-preset
Apply a subtitle preset
curl --request PUT \
--url https://api.tella.com/v1/videos/{id}/subtitle-preset \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"presetId": "default:spotlight"
}
'import requests
url = "https://api.tella.com/v1/videos/{id}/subtitle-preset"
payload = { "presetId": "default:spotlight" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({presetId: 'default:spotlight'})
};
fetch('https://api.tella.com/v1/videos/{id}/subtitle-preset', 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/videos/{id}/subtitle-preset",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'presetId' => 'default:spotlight'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.tella.com/v1/videos/{id}/subtitle-preset"
payload := strings.NewReader("{\n \"presetId\": \"default:spotlight\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.tella.com/v1/videos/{id}/subtitle-preset")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"presetId\": \"default:spotlight\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tella.com/v1/videos/{id}/subtitle-preset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"presetId\": \"default:spotlight\"\n}"
response = http.request(request)
puts response.read_body{
"preset": {
"captionStyle": {
"backgroundColor": "#5E51F8FF",
"name": "backdrop",
"textColor": "#5E51F8FF",
"wordLevelHighlights": true,
"activeWordTextColor": "#5E51F8FF",
"backgroundEnabled": true,
"highlightColor": "#5E51F8FF",
"highlightMode": "text",
"outlineColor": "#5E51F8FF",
"outlineEnabled": true,
"shadowColor": "#5E51F8FF",
"shadowEnabled": true,
"textCase": "original"
},
"name": "<string>",
"presetId": "default:spotlight",
"scope": "default"
}
}{
"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
Path Parameters
Unique video identifier
Example:
"vid_abc123def456"
Body
application/json
Minimum string length:
1Example:
"default:spotlight"
Response
Preset applied
Show child attributes
Show child attributes
Was this page helpful?