Skip to main content
OpenOpen8 supports video generation through several upstream providers, including Kling, Jimeng (即梦), Doubao Video, Vidu, and any Sora-compatible provider that uses the OpenAI Responses format. Video generation is asynchronous: you submit a task and receive a task ID, then poll for status until the video is ready.
Video generation requires at least one video channel configured in the admin dashboard. Contact your OpenOpen8 administrator if video endpoints return a 503 error.

Sora-compatible format

Providers that implement the OpenAI Responses API — including Sora — use the /v1/responses endpoint. You submit a video generation task and receive a response object you can poll until the output is complete.

Submit a video task

POST /v1/responses
{
  "model": "sora-1.0-turbo",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "A timelapse of a cherry blossom tree blooming in spring"
        }
      ]
    }
  ]
}
The response contains a status field. When status is completed, the output includes a URL to the generated video.

Example

# Submit the task
curl https://openopen8.ai/v1/responses \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sora-1.0-turbo",
    "input": [
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "A timelapse of a cherry blossom tree blooming in spring"
          }
        ]
      }
    ]
  }'

Supported providers

ProviderFormatNotes
SoraOpenAI Responses (/v1/responses)Async task; poll for completion
KlingKling native formatConfigure a Kling channel in the dashboard
Jimeng (即梦)Jimeng native formatConfigure a Jimeng channel in the dashboard
Doubao VideoDoubao native formatConfigure a Doubao channel in the dashboard
ViduVidu native formatConfigure a Vidu channel in the dashboard
Each provider accepts different parameters such as duration, aspect ratio, and style. Refer to the upstream provider’s documentation for provider-specific options, and pass them through the request body. OpenOpen8 forwards supported fields to the upstream provider.

Task lifecycle

Video generation tasks move through the following states:
StatusMeaning
in_progressThe task has been submitted and is being processed.
completedThe video is ready. The response includes the output URL.
failedThe task failed. The response includes an error message.
cancelledThe task was cancelled before completion.
Poll the task status by retrieving the response object again. For Sora-compatible providers, use the response id returned from the initial request.