Update Transcoding Profile
curl --request PUT \
--url https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Vidinfra Ultra Secure Profile x",
"transcoding": {
"format": [
"abr"
],
"resolutions": [
"144p",
"240p",
"360p",
"480p",
"720p",
"1080p",
"1440p"
],
"video_codec": [
"h265"
],
"per_title_encoding": true,
"image_overlay": {
"url": "https://cdn.vidinfra.com/watermark.png",
"position": "bottom-right",
"opacity": 0.8,
"size": {
"width": 100,
"height": 60
},
"margin": {
"x": 100,
"y": 60
}
},
"thumbnail": {
"mode": "auto",
"format": "jpeg",
"count": 6,
"spritesheet": true
},
"generate_subtitles": {
"audio_language": "en",
"subtitle_languages": [
"es",
"fr"
]
},
"drm": {
"enabled": true,
"widevine": {
"signing_secret": "YOUR_SECURE_PROXY_SECRET",
"license_proxy_url": "https://widevine.yourdomain.com/licence/"
},
"fairplay": {
"license_url": "https://license.fairplay.vidinfra.com",
"certificate_url": "https://yourdomain.com/fairplay.cer",
"application_service_key": "YOUR_APPLE_SERVICE_KEY",
"private_key_passphrase": "YOUR_PRIVATE_KEY_PASSPHRASE"
}
},
"basic_drm": true,
"mp4_access": false,
"keep_original": false
}
}
'import requests
url = "https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}"
payload = {
"name": "Vidinfra Ultra Secure Profile x",
"transcoding": {
"format": ["abr"],
"resolutions": ["144p", "240p", "360p", "480p", "720p", "1080p", "1440p"],
"video_codec": ["h265"],
"per_title_encoding": True,
"image_overlay": {
"url": "https://cdn.vidinfra.com/watermark.png",
"position": "bottom-right",
"opacity": 0.8,
"size": {
"width": 100,
"height": 60
},
"margin": {
"x": 100,
"y": 60
}
},
"thumbnail": {
"mode": "auto",
"format": "jpeg",
"count": 6,
"spritesheet": True
},
"generate_subtitles": {
"audio_language": "en",
"subtitle_languages": ["es", "fr"]
},
"drm": {
"enabled": True,
"widevine": {
"signing_secret": "YOUR_SECURE_PROXY_SECRET",
"license_proxy_url": "https://widevine.yourdomain.com/licence/"
},
"fairplay": {
"license_url": "https://license.fairplay.vidinfra.com",
"certificate_url": "https://yourdomain.com/fairplay.cer",
"application_service_key": "YOUR_APPLE_SERVICE_KEY",
"private_key_passphrase": "YOUR_PRIVATE_KEY_PASSPHRASE"
}
},
"basic_drm": True,
"mp4_access": False,
"keep_original": False
}
}
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({
name: 'Vidinfra Ultra Secure Profile x',
transcoding: {
format: ['abr'],
resolutions: ['144p', '240p', '360p', '480p', '720p', '1080p', '1440p'],
video_codec: ['h265'],
per_title_encoding: true,
image_overlay: {
url: 'https://cdn.vidinfra.com/watermark.png',
position: 'bottom-right',
opacity: 0.8,
size: {width: 100, height: 60},
margin: {x: 100, y: 60}
},
thumbnail: {mode: 'auto', format: 'jpeg', count: 6, spritesheet: true},
generate_subtitles: {audio_language: 'en', subtitle_languages: ['es', 'fr']},
drm: {
enabled: true,
widevine: {
signing_secret: 'YOUR_SECURE_PROXY_SECRET',
license_proxy_url: 'https://widevine.yourdomain.com/licence/'
},
fairplay: {
license_url: 'https://license.fairplay.vidinfra.com',
certificate_url: 'https://yourdomain.com/fairplay.cer',
application_service_key: 'YOUR_APPLE_SERVICE_KEY',
private_key_passphrase: 'YOUR_PRIVATE_KEY_PASSPHRASE'
}
},
basic_drm: true,
mp4_access: false,
keep_original: false
}
})
};
fetch('https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}"
payload := strings.NewReader("{\n \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\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))
}require 'uri'
require 'net/http'
url = URI("https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}")
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 \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\n}"
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.put("https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\n}")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
request.AddJsonBody("{\n \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\n}", false);
var response = await client.PutAsync(request);
Console.WriteLine("{0}", response.Content);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}",
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([
'name' => 'Vidinfra Ultra Secure Profile x',
'transcoding' => [
'format' => [
'abr'
],
'resolutions' => [
'144p',
'240p',
'360p',
'480p',
'720p',
'1080p',
'1440p'
],
'video_codec' => [
'h265'
],
'per_title_encoding' => true,
'image_overlay' => [
'url' => 'https://cdn.vidinfra.com/watermark.png',
'position' => 'bottom-right',
'opacity' => 0.8,
'size' => [
'width' => 100,
'height' => 60
],
'margin' => [
'x' => 100,
'y' => 60
]
],
'thumbnail' => [
'mode' => 'auto',
'format' => 'jpeg',
'count' => 6,
'spritesheet' => true
],
'generate_subtitles' => [
'audio_language' => 'en',
'subtitle_languages' => [
'es',
'fr'
]
],
'drm' => [
'enabled' => true,
'widevine' => [
'signing_secret' => 'YOUR_SECURE_PROXY_SECRET',
'license_proxy_url' => 'https://widevine.yourdomain.com/licence/'
],
'fairplay' => [
'license_url' => 'https://license.fairplay.vidinfra.com',
'certificate_url' => 'https://yourdomain.com/fairplay.cer',
'application_service_key' => 'YOUR_APPLE_SERVICE_KEY',
'private_key_passphrase' => 'YOUR_PRIVATE_KEY_PASSPHRASE'
]
],
'basic_drm' => true,
'mp4_access' => false,
'keep_original' => false
]
]),
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;
}{
"data": {
"updated_at": "2025-10-16T11:57:16.272724862+06:00",
"created_at": "2025-10-16T11:04:29.16848Z",
"created_by": "2fa3fe27-ffcd-470b-becf-83f6f22a93ab",
"updated_by": "2fa3fe27-ffcd-470b-becf-83f6f22a93ab",
"name": "Vidinfra Ultra Secure Profile",
"description": "4K adaptive bitrate profile with AES encryption, DRM, watermark, and subtitle generation.",
"transcoding": {
"drm": {
"widevine": {
"signing_secret": "YOUR_SECURE_PROXY_SECRET",
"license_proxy_url": "https://widevine.yourdomain.com/licence/"
},
"fairplay": {
"license_url": "https://license.fairplay.vidinfra.com",
"certificate_url": "https://yourdomain.com/fairplay.cer",
"application_service_key": "YOUR_APPLE_SERVICE_KEY",
"private_key_passphrase": "YOUR_PRIVATE_KEY_PASSPHRASE"
},
"enabled": true
},
"format": [
"abr"
],
"generate_subtitles": {
"audio_language": "en",
"subtitle_languages": [
"es",
"fr"
]
},
"resolutions": [
"144p",
"240p",
"360p",
"480p",
"720p",
"1080p",
"1440p",
"2160p"
],
"video_codec": [
"h264"
],
"thumbnail": {
"mode": "auto",
"format": "jpg",
"count": 6,
"spritesheet": true
},
"image_overlay": {
"url": "https://cdn.vidinfra.com/watermark.png",
"position": "bottom-right",
"opacity": 0.8,
"size": {
"width": 100,
"height": 60
},
"margin": {
"x": 100,
"y": 60
}
},
"per_title_encoding": true,
"basic_drm": true,
"mp4_access": false,
"keep_original": false
},
"id": "49f644c1-83cc-41cd-a1dd-19291b008ba4",
"organization_id": "677826f5-1aea-4cba-8973-043cdbc60f35",
"library_id": "3b06c833-b73c-43c3-8794-a123a0a6ef1d",
"is_default": false
},
"message": "Transcoding profile Updated Successfully",
"success": true
}{
"message": "Invalid Request",
"success": false
}{
"code": "auth_type_not_found",
"message": "Could not determine authentication type from request. Please provide a valid Authorization header or X-API-Key header.",
"success": false
}{
"message": "Resource not found",
"success": false
}{
"message": "Invalid Request",
"errors": [
{
"field": "field_name",
"code": "validation_required",
"message": "This field is required"
}
],
"success": false
}{
"message": "Internal server error",
"success": false
}Transcoding Profiles
Update Transcoding Profile
Retrieve detailed configuration of a profile
PUT
/
libraries
/
{libraryId}
/
transcoding
/
profiles
/
{profileId}
Update Transcoding Profile
curl --request PUT \
--url https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Vidinfra Ultra Secure Profile x",
"transcoding": {
"format": [
"abr"
],
"resolutions": [
"144p",
"240p",
"360p",
"480p",
"720p",
"1080p",
"1440p"
],
"video_codec": [
"h265"
],
"per_title_encoding": true,
"image_overlay": {
"url": "https://cdn.vidinfra.com/watermark.png",
"position": "bottom-right",
"opacity": 0.8,
"size": {
"width": 100,
"height": 60
},
"margin": {
"x": 100,
"y": 60
}
},
"thumbnail": {
"mode": "auto",
"format": "jpeg",
"count": 6,
"spritesheet": true
},
"generate_subtitles": {
"audio_language": "en",
"subtitle_languages": [
"es",
"fr"
]
},
"drm": {
"enabled": true,
"widevine": {
"signing_secret": "YOUR_SECURE_PROXY_SECRET",
"license_proxy_url": "https://widevine.yourdomain.com/licence/"
},
"fairplay": {
"license_url": "https://license.fairplay.vidinfra.com",
"certificate_url": "https://yourdomain.com/fairplay.cer",
"application_service_key": "YOUR_APPLE_SERVICE_KEY",
"private_key_passphrase": "YOUR_PRIVATE_KEY_PASSPHRASE"
}
},
"basic_drm": true,
"mp4_access": false,
"keep_original": false
}
}
'import requests
url = "https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}"
payload = {
"name": "Vidinfra Ultra Secure Profile x",
"transcoding": {
"format": ["abr"],
"resolutions": ["144p", "240p", "360p", "480p", "720p", "1080p", "1440p"],
"video_codec": ["h265"],
"per_title_encoding": True,
"image_overlay": {
"url": "https://cdn.vidinfra.com/watermark.png",
"position": "bottom-right",
"opacity": 0.8,
"size": {
"width": 100,
"height": 60
},
"margin": {
"x": 100,
"y": 60
}
},
"thumbnail": {
"mode": "auto",
"format": "jpeg",
"count": 6,
"spritesheet": True
},
"generate_subtitles": {
"audio_language": "en",
"subtitle_languages": ["es", "fr"]
},
"drm": {
"enabled": True,
"widevine": {
"signing_secret": "YOUR_SECURE_PROXY_SECRET",
"license_proxy_url": "https://widevine.yourdomain.com/licence/"
},
"fairplay": {
"license_url": "https://license.fairplay.vidinfra.com",
"certificate_url": "https://yourdomain.com/fairplay.cer",
"application_service_key": "YOUR_APPLE_SERVICE_KEY",
"private_key_passphrase": "YOUR_PRIVATE_KEY_PASSPHRASE"
}
},
"basic_drm": True,
"mp4_access": False,
"keep_original": False
}
}
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({
name: 'Vidinfra Ultra Secure Profile x',
transcoding: {
format: ['abr'],
resolutions: ['144p', '240p', '360p', '480p', '720p', '1080p', '1440p'],
video_codec: ['h265'],
per_title_encoding: true,
image_overlay: {
url: 'https://cdn.vidinfra.com/watermark.png',
position: 'bottom-right',
opacity: 0.8,
size: {width: 100, height: 60},
margin: {x: 100, y: 60}
},
thumbnail: {mode: 'auto', format: 'jpeg', count: 6, spritesheet: true},
generate_subtitles: {audio_language: 'en', subtitle_languages: ['es', 'fr']},
drm: {
enabled: true,
widevine: {
signing_secret: 'YOUR_SECURE_PROXY_SECRET',
license_proxy_url: 'https://widevine.yourdomain.com/licence/'
},
fairplay: {
license_url: 'https://license.fairplay.vidinfra.com',
certificate_url: 'https://yourdomain.com/fairplay.cer',
application_service_key: 'YOUR_APPLE_SERVICE_KEY',
private_key_passphrase: 'YOUR_PRIVATE_KEY_PASSPHRASE'
}
},
basic_drm: true,
mp4_access: false,
keep_original: false
}
})
};
fetch('https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}"
payload := strings.NewReader("{\n \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\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))
}require 'uri'
require 'net/http'
url = URI("https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}")
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 \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\n}"
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.put("https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\n}")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
request.AddJsonBody("{\n \"name\": \"Vidinfra Ultra Secure Profile x\",\n \"transcoding\": {\n \"format\": [\n \"abr\"\n ],\n \"resolutions\": [\n \"144p\",\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\"\n ],\n \"video_codec\": [\n \"h265\"\n ],\n \"per_title_encoding\": true,\n \"image_overlay\": {\n \"url\": \"https://cdn.vidinfra.com/watermark.png\",\n \"position\": \"bottom-right\",\n \"opacity\": 0.8,\n \"size\": {\n \"width\": 100,\n \"height\": 60\n },\n \"margin\": {\n \"x\": 100,\n \"y\": 60\n }\n },\n \"thumbnail\": {\n \"mode\": \"auto\",\n \"format\": \"jpeg\",\n \"count\": 6,\n \"spritesheet\": true\n },\n \"generate_subtitles\": {\n \"audio_language\": \"en\",\n \"subtitle_languages\": [\n \"es\",\n \"fr\"\n ]\n },\n \"drm\": {\n \"enabled\": true,\n \"widevine\": {\n \"signing_secret\": \"YOUR_SECURE_PROXY_SECRET\",\n \"license_proxy_url\": \"https://widevine.yourdomain.com/licence/\"\n },\n \"fairplay\": {\n \"license_url\": \"https://license.fairplay.vidinfra.com\",\n \"certificate_url\": \"https://yourdomain.com/fairplay.cer\",\n \"application_service_key\": \"YOUR_APPLE_SERVICE_KEY\",\n \"private_key_passphrase\": \"YOUR_PRIVATE_KEY_PASSPHRASE\"\n }\n },\n \"basic_drm\": true,\n \"mp4_access\": false,\n \"keep_original\": false\n }\n}", false);
var response = await client.PutAsync(request);
Console.WriteLine("{0}", response.Content);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tenbyte.io/v1/vidinfra/libraries/{libraryId}/transcoding/profiles/{profileId}",
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([
'name' => 'Vidinfra Ultra Secure Profile x',
'transcoding' => [
'format' => [
'abr'
],
'resolutions' => [
'144p',
'240p',
'360p',
'480p',
'720p',
'1080p',
'1440p'
],
'video_codec' => [
'h265'
],
'per_title_encoding' => true,
'image_overlay' => [
'url' => 'https://cdn.vidinfra.com/watermark.png',
'position' => 'bottom-right',
'opacity' => 0.8,
'size' => [
'width' => 100,
'height' => 60
],
'margin' => [
'x' => 100,
'y' => 60
]
],
'thumbnail' => [
'mode' => 'auto',
'format' => 'jpeg',
'count' => 6,
'spritesheet' => true
],
'generate_subtitles' => [
'audio_language' => 'en',
'subtitle_languages' => [
'es',
'fr'
]
],
'drm' => [
'enabled' => true,
'widevine' => [
'signing_secret' => 'YOUR_SECURE_PROXY_SECRET',
'license_proxy_url' => 'https://widevine.yourdomain.com/licence/'
],
'fairplay' => [
'license_url' => 'https://license.fairplay.vidinfra.com',
'certificate_url' => 'https://yourdomain.com/fairplay.cer',
'application_service_key' => 'YOUR_APPLE_SERVICE_KEY',
'private_key_passphrase' => 'YOUR_PRIVATE_KEY_PASSPHRASE'
]
],
'basic_drm' => true,
'mp4_access' => false,
'keep_original' => false
]
]),
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;
}{
"data": {
"updated_at": "2025-10-16T11:57:16.272724862+06:00",
"created_at": "2025-10-16T11:04:29.16848Z",
"created_by": "2fa3fe27-ffcd-470b-becf-83f6f22a93ab",
"updated_by": "2fa3fe27-ffcd-470b-becf-83f6f22a93ab",
"name": "Vidinfra Ultra Secure Profile",
"description": "4K adaptive bitrate profile with AES encryption, DRM, watermark, and subtitle generation.",
"transcoding": {
"drm": {
"widevine": {
"signing_secret": "YOUR_SECURE_PROXY_SECRET",
"license_proxy_url": "https://widevine.yourdomain.com/licence/"
},
"fairplay": {
"license_url": "https://license.fairplay.vidinfra.com",
"certificate_url": "https://yourdomain.com/fairplay.cer",
"application_service_key": "YOUR_APPLE_SERVICE_KEY",
"private_key_passphrase": "YOUR_PRIVATE_KEY_PASSPHRASE"
},
"enabled": true
},
"format": [
"abr"
],
"generate_subtitles": {
"audio_language": "en",
"subtitle_languages": [
"es",
"fr"
]
},
"resolutions": [
"144p",
"240p",
"360p",
"480p",
"720p",
"1080p",
"1440p",
"2160p"
],
"video_codec": [
"h264"
],
"thumbnail": {
"mode": "auto",
"format": "jpg",
"count": 6,
"spritesheet": true
},
"image_overlay": {
"url": "https://cdn.vidinfra.com/watermark.png",
"position": "bottom-right",
"opacity": 0.8,
"size": {
"width": 100,
"height": 60
},
"margin": {
"x": 100,
"y": 60
}
},
"per_title_encoding": true,
"basic_drm": true,
"mp4_access": false,
"keep_original": false
},
"id": "49f644c1-83cc-41cd-a1dd-19291b008ba4",
"organization_id": "677826f5-1aea-4cba-8973-043cdbc60f35",
"library_id": "3b06c833-b73c-43c3-8794-a123a0a6ef1d",
"is_default": false
},
"message": "Transcoding profile Updated Successfully",
"success": true
}{
"message": "Invalid Request",
"success": false
}{
"code": "auth_type_not_found",
"message": "Could not determine authentication type from request. Please provide a valid Authorization header or X-API-Key header.",
"success": false
}{
"message": "Resource not found",
"success": false
}{
"message": "Invalid Request",
"errors": [
{
"field": "field_name",
"code": "validation_required",
"message": "This field is required"
}
],
"success": false
}{
"message": "Internal server error",
"success": false
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier of the library.
Unique identifier of the targeted transcoding profile resource.
Body
application/json
⌘I