Update embed settings
PATCH/api/video/:id/embed-settings
Customize player appearance and behavior. Available options:
Theme & Appearance
- playerTheme ("flare" | "minimal" | "custom") - Player visual style
- accentColor (string) - Hex color for controls, e.g. "#FF6702"
- embedBorderRadius (number) - Corner radius in pixels (0-24)
- thumbnailTime (number) - Timestamp in seconds for poster frame
Controls
- controlOptions.showPlayButton (boolean) - Show center play button
- controlOptions.showProgress (boolean) - Show progress bar
- controlOptions.showTime (boolean) - Show current/total time
- controlOptions.showVolume (boolean) - Show volume control
- controlOptions.showSpeed (boolean) - Show playback speed menu
- controlOptions.showFullscreen (boolean) - Show fullscreen button
- controlOptions.showCaptions (boolean) - Show captions toggle
Behavior
- autoplay (boolean) - Start playing automatically (muted)
- loop (boolean) - Loop video when it ends
- muted (boolean) - Start muted
- showBranding (boolean) - Show Flare branding
- allowDownload (boolean) - Allow viewers to download
Examples
curl https://flare.link/api/video/VIDEO_ID/embed-settings \
-H "Authorization: Bearer flr_pat_..." \
-H "Content-Type: application/json" \
-d '{
"embedSettings": {
"playerTheme": "flare",
"accentColor": "#FF6702",
"embedBorderRadius": 12,
"autoplay": false,
"loop": false,
"showBranding": true,
"allowDownload": false,
"controlOptions": {
"showPlayButton": true,
"showProgress": true,
"showTime": true,
"showVolume": true,
"showSpeed": true,
"showFullscreen": true,
"showCaptions": true
}
}
}'await fetch("https://flare.link/api/video/VIDEO_ID/embed-settings", {
method: "PATCH",
headers: {
Authorization: "Bearer flr_pat_...",
"Content-Type": "application/json"
},
body: JSON.stringify({
embedSettings: {
playerTheme: "flare",
accentColor: "#FF6702",
embedBorderRadius: 12,
autoplay: false,
showBranding: true,
controlOptions: {
showSpeed: true,
showCaptions: true
}
}
})
});import requests
payload = {
"embedSettings": {
"playerTheme": "flare",
"accentColor": "#FF6702",
"embedBorderRadius": 12,
"autoplay": False,
"showBranding": True,
"controlOptions": {
"showSpeed": True,
"showCaptions": True
}
}
}
res = requests.patch(
"https://flare.link/api/video/VIDEO_ID/embed-settings",
headers={"Authorization": "Bearer flr_pat_..."},
json=payload
)
print(res.json())require "net/http"
require "json"
uri = URI("https://flare.link/api/video/VIDEO_ID/embed-settings")
req = Net::HTTP::Patch.new(uri)
req["Authorization"] = "Bearer flr_pat_..."
req["Content-Type"] = "application/json"
req.body = {
embedSettings: {
playerTheme: "flare",
accentColor: "#FF6702",
embedBorderRadius: 12,
autoplay: false,
showBranding: true,
controlOptions: { showSpeed: true, showCaptions: true }
}
}.to_json
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
puts res.bodypackage main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
payload := []byte(`{
"embedSettings": {
"playerTheme": "flare",
"accentColor": "#FF6702",
"embedBorderRadius": 12,
"controlOptions": { "showSpeed": true }
}
}`)
req, _ := http.NewRequest("PATCH", "https://flare.link/api/video/VIDEO_ID/embed-settings", bytes.NewBuffer(payload))
req.Header.Set("Authorization", "Bearer flr_pat_...")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}<?php
$payload = json_encode([
"embedSettings" => [
"playerTheme" => "flare",
"accentColor" => "#FF6702",
"embedBorderRadius" => 12,
"autoplay" => false,
"showBranding" => true,
"controlOptions" => [
"showSpeed" => true,
"showCaptions" => true
]
]
]);
$ch = curl_init("https://flare.link/api/video/VIDEO_ID/embed-settings");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer flr_pat_...",
"Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;using System.Net.Http.Headers;
using System.Text;
using System.Text.Json;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "flr_pat_...");
var payload = JsonSerializer.Serialize(new {
embedSettings = new {
playerTheme = "flare",
accentColor = "#FF6702",
embedBorderRadius = 12,
autoplay = false,
showBranding = true,
controlOptions = new { showSpeed = true, showCaptions = true }
}
});
var res = await client.PatchAsync("https://flare.link/api/video/VIDEO_ID/embed-settings", new StringContent(payload, Encoding.UTF8, "application/json"));Expected response
{
"success": true,
"video": {
"id": "VIDEO_ID",
"embedSettings": {
"playerTheme": "flare",
"accentColor": "#FF6702",
"embedBorderRadius": 12,
"autoplay": false,
"showBranding": true
}
}
}