Sora 2 image-to-video API reference and live playground — multipart upload of input_reference to animate a static image.
Bearer sk-xxx), upload a reference image, enter a prompt, choose model / size / seconds, and send.| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
model | string | Yes | — | sora-2 (720p only) or sora-2-pro (720p / 1024p / 1080p tiers) |
prompt | string | Yes | — | Video description; focus on how the static image should animate (camera motion, object motion, lighting changes) |
seconds | string | No | "4" | Duration as string enum: "4" / "8" / "12" |
size | string | No | 720x1280 | Output resolution, must equal the input_reference image dimensions exactly |
input_reference | file | Yes | — | Reference image file: image/jpeg / image/png / image/webp, dimensions must equal size |
Pick the target resolution
size first based on your use case: portrait 720x1280, landscape 1280x720, Pro 1080p landscape 1920x1080, etc.Crop locally to exact pixels
Pick the right format
Focus the prompt on "motion" not "appearance"
"Camera slowly pushes in, leaves gently swaying, sunlight flickering through branches".id + status: "queued", polling reports progress, completion downloads via /v1/videos/{id}/content as MP4.
seconds); uploading a reference image does not cost extra. See the pricing table.API Key from the APIYI console (must use Sora2官转 group + usage-based billing)
Model ID. sora-2 supports 720p only; sora-2-pro supports 720p / 1024p / 1080p
sora-2, sora-2-pro Video generation prompt. Focus on how the image should animate: camera motion, object motion, lighting changes
"Animate this scene: gentle waves lapping, leaves swaying, cinematic camera push-in"
Reference image file used as the video's starting frame / visual anchor.
image/jpeg / image/png / image/webpsize, otherwise you get Inpaint image must match the requested width and heightinput_referenceVideo duration as string enum: "4" / "8" / "12"
4, 8, 12 Output resolution. Must exactly match the input_reference image dimensions:
sora-2 (720p only): 720x1280 / 1280x720sora-2-pro additionally: 1024x1792 / 1792x1024 / 1080x1920 / 1920x1080720x1280, 1280x720, 1024x1792, 1792x1024, 1080x1920, 1920x1080 Task submitted, returns video_id with queued status
Task ID for subsequent polling and download
"video_abc123def456"
Object type, fixed video
"video"
Model ID used for this task
"sora-2"
Task status:
queued — submitted, waiting in queuein_progress — generatingcompleted — done, ready to download (/v1/videos/{id}/content)failed — failed (not billed), safe to retryqueued, in_progress, completed, failed "queued"
Generation progress percentage (0–100), not strictly linear
0
Task creation Unix timestamp (seconds)
1712697600
Task completion Unix timestamp (seconds), present only on completed status
1712697900
Actual output resolution (matches the requested size)
"1280x720"
Actual duration generated (matches the requested seconds)
"8"
Quality tier (standard for sora-2, high for sora-2-pro)
"standard"