Create Playlist API Endpoint
curl --request POST \
--url https://backend.clipvision.ai/api/playlist/create/ \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"font_profile_id": 123,
"media_profile_id": 123,
"voice_profile_id": 123,
"template_id": 123,
"content_type_id": 123,
"playlist_name": "<string>",
"preview_url": "<string>"
}
'import requests
url = "https://backend.clipvision.ai/api/playlist/create/"
payload = {
"font_profile_id": 123,
"media_profile_id": 123,
"voice_profile_id": 123,
"template_id": 123,
"content_type_id": 123,
"playlist_name": "<string>",
"preview_url": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
font_profile_id: 123,
media_profile_id: 123,
voice_profile_id: 123,
template_id: 123,
content_type_id: 123,
playlist_name: '<string>',
preview_url: '<string>'
})
};
fetch('https://backend.clipvision.ai/api/playlist/create/', 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://backend.clipvision.ai/api/playlist/create/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'font_profile_id' => 123,
'media_profile_id' => 123,
'voice_profile_id' => 123,
'template_id' => 123,
'content_type_id' => 123,
'playlist_name' => '<string>',
'preview_url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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://backend.clipvision.ai/api/playlist/create/"
payload := strings.NewReader("{\n \"font_profile_id\": 123,\n \"media_profile_id\": 123,\n \"voice_profile_id\": 123,\n \"template_id\": 123,\n \"content_type_id\": 123,\n \"playlist_name\": \"<string>\",\n \"preview_url\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.post("https://backend.clipvision.ai/api/playlist/create/")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"font_profile_id\": 123,\n \"media_profile_id\": 123,\n \"voice_profile_id\": 123,\n \"template_id\": 123,\n \"content_type_id\": 123,\n \"playlist_name\": \"<string>\",\n \"preview_url\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backend.clipvision.ai/api/playlist/create/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"font_profile_id\": 123,\n \"media_profile_id\": 123,\n \"voice_profile_id\": 123,\n \"template_id\": 123,\n \"content_type_id\": 123,\n \"playlist_name\": \"<string>\",\n \"preview_url\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"playlist_id": 1,
"disabled": false,
"playlist_name": "Playlist #1",
"font_profile": {
"font_profile_id": 1,
"disabled": false,
"profile_name": "New Font Profile",
"name": "Poppins",
"path": "Poppins",
"size": 30,
"bold": false,
"italic": false,
"underlined": false,
"strikethrough": false,
"caption_position": {
"coordinate_id": 0,
"overlay_visualizer": "Middle Center",
"x": "(main_w-overlay_w)/2",
"y": "(main_h-overlay_h)/2"
},
"caption_style_color": "#FFFFFF",
"caption_style_stroke_color": "#000000",
"caption_style_stroke_thickness": 2,
"caption_shadow_x_pos": 16,
"caption_shadow_y_pos": 14,
"caption_shadow_color": "#000000",
"caption_shadow_blur": 6,
"caption_lines": 1,
"caption_ai_keyword_highlighter": false,
"caption_ai_keyword_highlighter_color": "#80B8FF",
"caption_highlighter": true,
"caption_highlighter_color": "#FFFF00",
"preview_url": null
},
"media_profile": {
"media_profile_id": 1,
"disabled": false,
"profile_name": "New Media Profile",
"watermark_path": null,
"watermark_position": null,
"end_clip_path": null,
"preview_url": null
},
"voice_profile": {
"voice_profile_id": 1,
"disabled": false,
"profile_name": "New Voice Profile",
"api_key": "api_key",
"region": "westus2",
"provider_id": "elevenlabs",
"provider_name": "ElevenLabs"
},
"content_type": {
"content_type_id": 1,
"display_name": "Default Model (DM)",
"model_id": "dm-1.0",
"description": "Default model for video creation.",
"preview_image": "",
"preview_video": "",
"active": true
},
"preview_url": ""
}This response has no body data.{
"success": false,
"error": "Internal Server Error"
}api
Create Playlist API Endpoint
This API endpoint allows a user to create a new playlist.
POST
/
api
/
playlist
/
create
/
Create Playlist API Endpoint
curl --request POST \
--url https://backend.clipvision.ai/api/playlist/create/ \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"font_profile_id": 123,
"media_profile_id": 123,
"voice_profile_id": 123,
"template_id": 123,
"content_type_id": 123,
"playlist_name": "<string>",
"preview_url": "<string>"
}
'import requests
url = "https://backend.clipvision.ai/api/playlist/create/"
payload = {
"font_profile_id": 123,
"media_profile_id": 123,
"voice_profile_id": 123,
"template_id": 123,
"content_type_id": 123,
"playlist_name": "<string>",
"preview_url": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
font_profile_id: 123,
media_profile_id: 123,
voice_profile_id: 123,
template_id: 123,
content_type_id: 123,
playlist_name: '<string>',
preview_url: '<string>'
})
};
fetch('https://backend.clipvision.ai/api/playlist/create/', 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://backend.clipvision.ai/api/playlist/create/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'font_profile_id' => 123,
'media_profile_id' => 123,
'voice_profile_id' => 123,
'template_id' => 123,
'content_type_id' => 123,
'playlist_name' => '<string>',
'preview_url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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://backend.clipvision.ai/api/playlist/create/"
payload := strings.NewReader("{\n \"font_profile_id\": 123,\n \"media_profile_id\": 123,\n \"voice_profile_id\": 123,\n \"template_id\": 123,\n \"content_type_id\": 123,\n \"playlist_name\": \"<string>\",\n \"preview_url\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.post("https://backend.clipvision.ai/api/playlist/create/")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"font_profile_id\": 123,\n \"media_profile_id\": 123,\n \"voice_profile_id\": 123,\n \"template_id\": 123,\n \"content_type_id\": 123,\n \"playlist_name\": \"<string>\",\n \"preview_url\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backend.clipvision.ai/api/playlist/create/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"font_profile_id\": 123,\n \"media_profile_id\": 123,\n \"voice_profile_id\": 123,\n \"template_id\": 123,\n \"content_type_id\": 123,\n \"playlist_name\": \"<string>\",\n \"preview_url\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"playlist_id": 1,
"disabled": false,
"playlist_name": "Playlist #1",
"font_profile": {
"font_profile_id": 1,
"disabled": false,
"profile_name": "New Font Profile",
"name": "Poppins",
"path": "Poppins",
"size": 30,
"bold": false,
"italic": false,
"underlined": false,
"strikethrough": false,
"caption_position": {
"coordinate_id": 0,
"overlay_visualizer": "Middle Center",
"x": "(main_w-overlay_w)/2",
"y": "(main_h-overlay_h)/2"
},
"caption_style_color": "#FFFFFF",
"caption_style_stroke_color": "#000000",
"caption_style_stroke_thickness": 2,
"caption_shadow_x_pos": 16,
"caption_shadow_y_pos": 14,
"caption_shadow_color": "#000000",
"caption_shadow_blur": 6,
"caption_lines": 1,
"caption_ai_keyword_highlighter": false,
"caption_ai_keyword_highlighter_color": "#80B8FF",
"caption_highlighter": true,
"caption_highlighter_color": "#FFFF00",
"preview_url": null
},
"media_profile": {
"media_profile_id": 1,
"disabled": false,
"profile_name": "New Media Profile",
"watermark_path": null,
"watermark_position": null,
"end_clip_path": null,
"preview_url": null
},
"voice_profile": {
"voice_profile_id": 1,
"disabled": false,
"profile_name": "New Voice Profile",
"api_key": "api_key",
"region": "westus2",
"provider_id": "elevenlabs",
"provider_name": "ElevenLabs"
},
"content_type": {
"content_type_id": 1,
"display_name": "Default Model (DM)",
"model_id": "dm-1.0",
"description": "Default model for video creation.",
"preview_image": "",
"preview_video": "",
"active": true
},
"preview_url": ""
}This response has no body data.{
"success": false,
"error": "Internal Server Error"
}Authorizations
Basicapi_key
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
application/json
Response
Successfully created the playlist
Playlist OpenAPI Schema
Font Profile OpenAPI Schema
Show child attributes
Show child attributes
Media Profile OpenAPI Schema
Show child attributes
Show child attributes
Voice Profile OpenAPI Schema
Show child attributes
Show child attributes
Content Type OpenAPI Schema
Show child attributes
Show child attributes
⌘I