Skip to Content
DocumentationModelsVideoSora 2 Official

Sora 2 Official

Use sora-2-official to create video output. This page contains the complete request needed for this model.

Model facts

PropertyValue
Model IDsora-2-official
EndpointPOST /api/v1/generation/create
OutputVideo
Modestext-to-video, image-to-video
PricingView current pricing 

Minimal request

curl -X POST https://api.api-stock.com/api/v1/generation/create \ -H "Authorization: Bearer $API_STOCK_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "sora-2-official", "input": { "prompt": "A quiet street after summer rain", "aspectRatio": "16:9" } }'

The create response contains a task ID:

{ "code": 200, "data": { "taskId": "019ca881-9503-7270-a560-f00fc2b15785", "status": "not_started", "createdAt": "2026-08-22T12:00:00.000Z" } }

Parameters

Parameters belong inside the top-level input object. Unknown fields are rejected.

ParameterTypeRequiredDefaultDescription
promptstringYesUser’s prompt
aspectRatio“16:9” | “9:16”No"16:9"Aspect ratio
urlsstring[]NoReference image URLs (max 1)
duration4 | 8 | 12 | 16 | 20No4Video duration in seconds

Modes

Minimal generation

{ "model": "sora-2-official", "input": { "prompt": "A quiet street after summer rain", "aspectRatio": "16:9" } }

With urls

{ "model": "sora-2-official", "input": { "prompt": "A quiet street after summer rain", "aspectRatio": "16:9", "urls": [ "https://example.com/input.jpg" ] } }

Constraints

  • aspectRatio: allowed: 16:9, 9:16.
  • duration: allowed: 4, 8, 12, 16, 20.

Invalid types, unsupported enum values, out-of-range numbers, and missing required fields return HTTP 400 with error.code: "invalid_input". Correct the request rather than retrying it unchanged.

Result

Poll the task or provide a top-level webhook URL in the create request:

curl https://api.api-stock.com/api/v1/task/status/$TASK_ID \ -H "Authorization: Bearer $API_STOCK_KEY"

A successful media task returns one or more files:

{ "code": 200, "data": { "taskId": "019ca881-9503-7270-a560-f00fc2b15785", "status": "finished", "files": [ { "fileUrl": "https://storage.api-stock.com/result.mp4", "fileType": "video" } ], "createdTime": "2026-08-22T12:00:00.000Z" } }

See Tasks and webhooks for terminal statuses, retries and webhook delivery.