SpyBara
Go Premium

java/resources/videos/methods/remix/index.md 2026-06-10 15:48 UTC to 2026-06-12 00:01 UTC

206 added, 0 removed.

2026
Fri 26 17:57 Thu 25 20:59 Wed 24 22:02 Tue 23 22:00 Wed 17 18:02 Tue 16 21:57 Fri 12 00:01 Wed 10 15:48 Tue 9 06:34 Fri 5 06:45 Thu 4 06:52 Tue 2 06:51

Remix video

Video videos().remix(VideoRemixParamsparams, RequestOptionsrequestOptions = RequestOptions.none())

post /videos/{video_id}/remix

Create a remix of a completed video using a refreshed prompt.

Parameters

  • VideoRemixParams params

    • Optional<String> videoId

    • String prompt

      Updated text prompt that directs the remix generation.

Returns

  • class Video:

    Structured information describing a generated video job.

    • String id

      Unique identifier for the video job.

    • Optional<Long> completedAt

      Unix timestamp (seconds) for when the job completed, if finished.

    • long createdAt

      Unix timestamp (seconds) for when the job was created.

    • Optional<VideoCreateError> error

      Error payload that explains why generation failed, if applicable.

      • String code

        A machine-readable error code that was returned.

      • String message

        A human-readable description of the error that was returned.

    • Optional<Long> expiresAt

      Unix timestamp (seconds) for when the downloadable assets expire, if set.

    • VideoModel model

      The video generation model that produced the job.

      • SORA_2("sora-2")

      • SORA_2_PRO("sora-2-pro")

      • SORA_2_2025_10_06("sora-2-2025-10-06")

      • SORA_2_PRO_2025_10_06("sora-2-pro-2025-10-06")

      • SORA_2_2025_12_08("sora-2-2025-12-08")

    • JsonValue; object_ "video"constant

      The object type, which is always video.

      • VIDEO("video")
    • long progress

      Approximate completion percentage for the generation task.

    • Optional<String> prompt

      The prompt that was used to generate the video.

    • Optional<String> remixedFromVideoId

      Identifier of the source video if this video is a remix.

    • VideoSeconds seconds

      Duration of the generated clip in seconds. For extensions, this is the stitched total duration.

      • _4("4")

      • _8("8")

      • _12("12")

    • VideoSize size

      The resolution of the generated video.

      • _720X1280("720x1280")

      • _1280X720("1280x720")

      • _1024X1792("1024x1792")

      • _1792X1024("1792x1024")

    • Status status

      Current lifecycle status of the video job.

      • QUEUED("queued")

      • IN_PROGRESS("in_progress")

      • COMPLETED("completed")

      • FAILED("failed")

Example

package com.openai.example;

import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.videos.Video;
import com.openai.models.videos.VideoRemixParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.fromEnv();

        VideoRemixParams params = VideoRemixParams.builder()
            .videoId("video_123")
            .prompt("x")
            .build();
        Video video = client.videos().remix(params);
    }
}

Response

{
  "id": "id",
  "completed_at": 0,
  "created_at": 0,
  "error": {
    "code": "code",
    "message": "message"
  },
  "expires_at": 0,
  "model": "sora-2",
  "object": "video",
  "progress": 0,
  "prompt": "prompt",
  "remixed_from_video_id": "remixed_from_video_id",
  "seconds": "4",
  "size": "720x1280",
  "status": "queued"
}

Example

package com.openai.example;

import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.videos.Video;
import com.openai.models.videos.VideoRemixParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.fromEnv();

        VideoRemixParams params = VideoRemixParams.builder()
            .videoId("video_123")
            .prompt("Extend the scene with the cat taking a bow to the cheering audience")
            .build();
        Video video = client.videos().remix(params);
    }
}

Response

{
  "id": "video_456",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1712698600,
  "size": "720x1280",
  "seconds": "8",
  "remixed_from_video_id": "video_123"
}