curl --request POST \
--url https://toapis.com/v1/videos/video_01K8SGYNNNVBQTXNR4MM964S7K/remix \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "sora-2-official",
"prompt": "Shift the color palette to teal, sand, and rust, with a warm backlight"
}'
import requests
video_id = "video_01K8SGYNNNVBQTXNR4MM964S7K"
response = requests.post(
f"https://toapis.com/v1/videos/{video_id}/remix",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "sora-2-official",
"prompt": "Shift the color palette to teal, sand, and rust, with a warm backlight"
}
)
task = response.json()
print(f"Remix Task ID: {task['id']}")
print(f"Status: {task['status']}")
print(f"Remixed from: {task.get('remixed_from_video_id')}")
const videoId = "video_01K8SGYNNNVBQTXNR4MM964S7K";
const response = await fetch(`https://toapis.com/v1/videos/${videoId}/remix`, {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'sora-2-official',
prompt: 'Shift the color palette to teal, sand, and rust, with a warm backlight'
})
});
const task = await response.json();
console.log(`Remix Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
console.log(`Remixed from: ${task.remixed_from_video_id}`);
{
"id": "video_68ff7cef76cc8190b7eab9395e936d9e",
"object": "video",
"model": "sora-2-official",
"status": "queued",
"progress": 0,
"created_at": 1761574127,
"remixed_from_video_id": "video_01K8SGYNNNVBQTXNR4MM964S7K",
"seconds": "8",
"size": "1280x720"
}
Sora 2 Official (Azure)
Azure Sora 2 Remix
Remix an existing video using Azure Sora 2 model
POST
/
v1
/
videos
/
{video_id}
/
remix
curl --request POST \
--url https://toapis.com/v1/videos/video_01K8SGYNNNVBQTXNR4MM964S7K/remix \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "sora-2-official",
"prompt": "Shift the color palette to teal, sand, and rust, with a warm backlight"
}'
import requests
video_id = "video_01K8SGYNNNVBQTXNR4MM964S7K"
response = requests.post(
f"https://toapis.com/v1/videos/{video_id}/remix",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "sora-2-official",
"prompt": "Shift the color palette to teal, sand, and rust, with a warm backlight"
}
)
task = response.json()
print(f"Remix Task ID: {task['id']}")
print(f"Status: {task['status']}")
print(f"Remixed from: {task.get('remixed_from_video_id')}")
const videoId = "video_01K8SGYNNNVBQTXNR4MM964S7K";
const response = await fetch(`https://toapis.com/v1/videos/${videoId}/remix`, {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'sora-2-official',
prompt: 'Shift the color palette to teal, sand, and rust, with a warm backlight'
})
});
const task = await response.json();
console.log(`Remix Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
console.log(`Remixed from: ${task.remixed_from_video_id}`);
{
"id": "video_68ff7cef76cc8190b7eab9395e936d9e",
"object": "video",
"model": "sora-2-official",
"status": "queued",
"progress": 0,
"created_at": 1761574127,
"remixed_from_video_id": "video_01K8SGYNNNVBQTXNR4MM964S7K",
"seconds": "8",
"size": "1280x720"
}
Note for users in mainland China: Please use
https://toapis.cn as the API endpoint (Base URL). Replace https://toapis.com with https://toapis.cn in the examples in this document.For optimal results, limit your modifications to one clearly articulated adjustment. Narrow, precise edits retain greater fidelity to the source material and minimize the likelihood of generating visual defects.
Authorizations
string
required
All endpoints require Bearer Token authenticationGet your API Key from the API Key Management PageAdd to request header:
Authorization: Bearer YOUR_API_KEY
Path Parameters
string
required
The ID of a previously completed video to remixExample:
"video_01K8SGYNNNVBQTXNR4MM964S7K"Body
string
required
Video generation model nameMust use
sora-2-official for Azure Sora 2 remixExample: "sora-2-official"string
required
Updated text description for the remixed videoDescribe the specific changes you want to make to the original video. Be precise and focused on one clear modification.Example:
"Shift the color palette to teal, sand, and rust, with a warm backlight"Response
string
Unique task identifier for the remixed video
string
Object type, always
videostring
Model name used
string
Task status
queued- Queued for processingin_progress- Processingcompleted- Successfully completedfailed- Failed
integer
Task progress percentage (0-100)
integer
Task creation timestamp (Unix timestamp)
string
The original video ID that was remixed
string
Video duration in seconds
string
Video resolution (e.g., “1280x720”)
curl --request POST \
--url https://toapis.com/v1/videos/video_01K8SGYNNNVBQTXNR4MM964S7K/remix \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "sora-2-official",
"prompt": "Shift the color palette to teal, sand, and rust, with a warm backlight"
}'
import requests
video_id = "video_01K8SGYNNNVBQTXNR4MM964S7K"
response = requests.post(
f"https://toapis.com/v1/videos/{video_id}/remix",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "sora-2-official",
"prompt": "Shift the color palette to teal, sand, and rust, with a warm backlight"
}
)
task = response.json()
print(f"Remix Task ID: {task['id']}")
print(f"Status: {task['status']}")
print(f"Remixed from: {task.get('remixed_from_video_id')}")
const videoId = "video_01K8SGYNNNVBQTXNR4MM964S7K";
const response = await fetch(`https://toapis.com/v1/videos/${videoId}/remix`, {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'sora-2-official',
prompt: 'Shift the color palette to teal, sand, and rust, with a warm backlight'
})
});
const task = await response.json();
console.log(`Remix Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
console.log(`Remixed from: ${task.remixed_from_video_id}`);
{
"id": "video_68ff7cef76cc8190b7eab9395e936d9e",
"object": "video",
"model": "sora-2-official",
"status": "queued",
"progress": 0,
"created_at": 1761574127,
"remixed_from_video_id": "video_01K8SGYNNNVBQTXNR4MM964S7K",
"seconds": "8",
"size": "1280x720"
}