Sora 2
sora-2 与 sora-2-pro:文生/图生视频,4–20 秒,异步,用 GET /v1/tasks/{task_id} 查询
Sora 2 系列当前暂未开放调用。本页字段说明仅供接入预览,实际可用状态以模型列表为准。
POST/v1/videos/generations
GET/v1/tasks/{task_id}
Sora 2 通过 /v1 统一异步视频接口调用,请求体为统一扁平字段。提交、轮询、任务对象与错误见接口说明。
| 项 | 值 |
|---|---|
| 模型 | sora-2(720p)、sora-2-pro(720p / 1024p / 1080p) |
| 模式 | 异步(提交 → 轮询 GET /v1/tasks/{task_id}) |
| 计费 | 按模型、时长、分辨率档位,先预扣后结算,价格以定价页为准 |
| 媒体保留 | video_url 最长保留至任务完成后 72 小时 |
快速开始
curl https://api.vibelab.me/v1/videos/generations \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "sora-2",
"prompt": "A waterfall cascading down forming a rainbow",
"duration": 8,
"resolution": "720p",
"aspect_ratio": "16:9"
}'响应示例(HTTP 202):
{
"task_id": "vt_019c8d85-75fd-7a31-b33f-8cf90e83a62b",
"model": "sora-2",
"status": "pending",
"created_at": 1772942400,
"duration": 8,
"resolution": "720p"
}用 task_id 调用 GET /v1/tasks/{task_id} 查询结果,见响应。
模式选择
| 模式 | 怎么传参 |
|---|---|
| 文生视频 | 只传 prompt 与控制字段 |
| 图生视频 | image_urls 传 1 张公网图片 URL |
请求参数
| 参数 | 类型 | 必填 | 默认 | 说明 |
|---|---|---|---|---|
model | string | 是 | - | sora-2 或 sora-2-pro |
prompt | string | 是 | - | 视频内容描述 |
duration | integer | 否 | 4 | 4、8、12、16、20 秒 |
resolution | string | 否 | 720p | sora-2 仅支持 720p;sora-2-pro 支持 720p、1024p、1080p |
aspect_ratio | string | 否 | 横屏 | 16:9、landscape、9:16、portrait;不传默认横屏 |
image_urls | string[] | 否 | - | 图生视频传 1 张公网图片 URL;支持 .jpeg、.jpg、.png、.webp,单图最大 10MB |
callback_url | string | 否 | - | 任务到达终态后的 HTTPS 回调地址 |
请求示例
图生视频:
{
"model": "sora-2-pro",
"prompt": "镜头缓慢推进,画面中的人物转身微笑",
"duration": 8,
"resolution": "1080p",
"image_urls": ["https://example.com/reference.jpg"]
}响应
用 GET /v1/tasks/{task_id} 查询,状态依次为 pending → running → succeeded / failed(终态)。成功后 video_url 为视频下载地址:
{
"task_id": "vt_019c8d85-75fd-7a31-b33f-8cf90e83a62b",
"model": "sora-2",
"status": "succeeded",
"progress": 100,
"created_at": 1772942400,
"completed_at": 1772942468,
"duration": 8,
"resolution": "720p",
"credits_charged": 6.4,
"video_url": "https://media.example.com/video.mp4",
"expires_at": 1773028868
}| 字段 | 类型 | 说明 |
|---|---|---|
video_url | string | 视频下载地址,仅 succeeded 返回,尽快转存 |
expires_at | integer | video_url 失效时间,Unix 秒 |
credits_charged | number | 本次实际扣费(积分) |
error | object | 仅 failed 返回:{"code": "timeout" | "upstream_error", "message": "..."} |
完整任务对象字段见接口说明。
计费
- 提交时按顶层
duration、resolution预扣,未传时按4秒、720p。 - 终态按实际结果结算,多退少补;失败全额退回预扣。
错误
通用错误见接口说明。
| HTTP | code | 触发场景 | 处理 |
|---|---|---|---|
| 404 | model_not_found | duration / resolution 组合没有对应售价档位(例如 sora-2 只有 720p) | 按请求参数调整 |
本模型的字段范围由上游校验,不合规的请求可能在 202 之后表现为异步 failed。
注意事项
- 传入
image_urls→ 画面方向根据参考图自动判断,aspect_ratio可省略。