Operation
Extend Sora 2 Video
Extend an existing OpenAI Sora 2 video by 4, 8, 12, 16, or 20 seconds.
Operation: sora2.video.extend
Submit via POST /api/v1/requests
Credits: dynamic
Sora 2
Request fields
sora_video_idpromptdurationmodelaspect_ratioresolutionsource_video_urlsource_duration
Example request
{
"operation": "sora2.video.extend",
"input": {
"sora_video_id": "video_abc123",
"prompt": "Continue the shot as the train doors open and fog rolls across the platform.",
"duration": 20,
"model": "sora-2-pro",
"aspect_ratio": "16:9",
"resolution": "1080p"
}
}curl -X POST https://www.cannonstudio.app/api/v1/requests \
-H "Content-Type: application/json" \
-H "x-api-key: $CANNON_API_KEY" \
-H "x-idempotency-key: sora2-video-extend-001" \
-d @- <<'JSON'
{
"operation": "sora2.video.extend",
"input": {
"sora_video_id": "video_abc123",
"prompt": "Continue the shot as the train doors open and fog rolls across the platform.",
"duration": 20,
"model": "sora-2-pro",
"aspect_ratio": "16:9",
"resolution": "1080p"
}
}
JSONNotes
- Requires the native OpenAI `video_...` ID of the source Sora video.
- Extension duration is normalized to 4, 8, 12, 16, or 20 seconds.
- OpenAI Sora videos can be extended repeatedly; Cannon Studio tracks each extension as its own request.
Success output
{
"task_id": "video_789",
"asset_type": "video",
"status": "succeeded",
"video_url": "https://storage.googleapis.com/.../sora-extension.mp4",
"provider": "sora2",
"model": "sora2"
}