Skip to content

Video-to-Video

Sora video-to-video remix API for modifying an existing video task.


Overview

  • Method: POST
  • Path: /v1/videos/{task_id}/remix
  • Content-Type: application/json
  • Category: Video Models (Video) / Sora Video

Authentication

  • Header: Authorization: Bearer <token>

Path Parameters

ParameterTypeRequiredDescription
task_idstringYesVideo task ID to remix

Request Parameters

FieldTypeRequiredDescription
promptstringYesText prompt describing how to modify the original video
01K7P7689TQP1E80YN3Q7G4AR4stringYesTarget video task ID used as the remix source

Request Example

curl Example

bash
curl -X POST "https://api.gpt.ge/v1/videos/your_task_id/remix" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $YOUR_TOKEN" \
  -d '{
    "prompt": "Change the video background to a living room scene",
    "01K7P7689TQP1E80YN3Q7G4AR4": "your_source_video_task_id"
  }'

JavaScript (fetch) Example

javascript
fetch('https://api.gpt.ge/v1/videos/your_task_id/remix', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_TOKEN'
  },
  body: JSON.stringify({
    prompt: 'Change the video background to a living room scene',
    '01K7P7689TQP1E80YN3Q7G4AR4': 'your_source_video_task_id'
  })
})
  .then(res => res.json())
  .then(console.log)

Python Example (requests)

python
import requests

resp = requests.post(
    'https://api.gpt.ge/v1/videos/your_task_id/remix',
    headers={
        'Content-Type': 'application/json',
        'Authorization': 'Bearer YOUR_TOKEN'
    },
    json={
        'prompt': 'Change the video background to a living room scene',
        '01K7P7689TQP1E80YN3Q7G4AR4': 'your_source_video_task_id'
    }
)
print(resp.json())

Response Fields

FieldTypeDescription
idstringVideo task ID
objectstringReturned object type, usually video
created_atintegerCreation timestamp
statusstringTask status
completed_atnullCompletion time, null if not finished
errornullError information, null on success
expires_atnullExpiration time, currently null
modelstringModel used
progressintegerTask progress
remixed_from_video_idnullRemix source video ID, currently null if unused
secondsstringVideo duration
sizestringVideo size

Success Response Example (200)

json
{
  "id": "video_68f082321ed08193a4eaf01376fa10bc0284bd663de64dc5",
  "object": "video",
  "created_at": 1760592434,
  "status": "queued",
  "completed_at": null,
  "error": null,
  "expires_at": null,
  "model": "sora-2",
  "progress": 0,
  "remixed_from_video_id": null,
  "seconds": "8",
  "size": "1280x720"
}