跳转至

OpenAI 视频格式

调用OpenAI视频生成接口生成视频,支持 Sora 等模型,也支持使用 OpenAI 视频格式调用可灵,即梦和 vidu。

生成视频

API 端点

POST /v1/videos

请求头

参数 类型 必填 描述
Authorization string 用户认证令牌 (Bearer: sk-xxxx)
Content-Type string multipart/form-data

请求参数

参数 类型 必填 描述
prompt string 描述要生成视频的文本提示词
model string 视频生成模型,默认为 sora-2
seconds string 视频时长(秒),默认为 4 秒
size string 输出分辨率,格式为宽度x高度,默认为 720x1280
input_reference file 可选图片参考,用于指导生成

请求示例

curl https://你的newapi服务器地址/v1/videos \
  -H "Authorization: Bearer sk-xxxx" \
  -F "model=sora-2" \
  -F "prompt=A calico cat playing a piano on stage"

响应格式

200 - 成功响应

{
  "id": "video_123",
  "object": "video",
  "model": "sora-2",
  "status": "queued",
  "progress": 0,
  "created_at": 1712697600,
  "size": "1024x1808",
  "seconds": "8",
  "quality": "standard"
}

响应字段说明

字段 类型 描述
id string 视频任务ID
object string 对象类型,固定为 "video"
model string 使用的模型名称
status string 任务状态(queued: 排队中, processing: 处理中, completed: 完成, failed: 失败)
progress integer 处理进度(0-100)
created_at integer 创建时间戳
size string 视频分辨率
seconds string 视频时长(秒)
quality string 视频质量

查询视频

根据任务ID查询视频生成任务的状态和结果

API 端点

GET /v1/videos/{video_id}

路径参数

参数 类型 必填 描述
video_id string 视频任务ID

请求示例

curl 'https://你的newapi服务器地址/v1/videos/video_123' \
  -H "Authorization: Bearer sk-xxxx"

响应格式

200 - 成功响应

{
  "id": "video_123",
  "object": "video",
  "model": "sora-2",
  "status": "completed",
  "progress": 100,
  "created_at": 1712697600,
  "size": "1024x1808",
  "seconds": "8",
  "quality": "standard",
  "url": "https://example.com/video.mp4"
}

响应字段说明

字段 类型 描述
id string 视频任务ID
object string 对象类型,固定为 "video"
model string 使用的模型名称
status string 任务状态(queued: 排队中, processing: 处理中, completed: 完成, failed: 失败)
progress integer 处理进度(0-100)
created_at integer 创建时间戳
size string 视频分辨率
seconds string 视频时长(秒)
quality string 视频质量
url string 视频下载链接(完成时)

获取视频任务状态

根据任务ID获取视频生成任务的详细信息

API 端点

GET /v1/videos/{video_id}

路径参数

参数 类型 必填 描述
video_id string 要获取的视频任务标识符

请求示例

curl 'https://你的newapi服务器地址/v1/videos/video_123' \
  -H "Authorization: Bearer sk-xxxx"

响应格式

200 - 成功响应

{
  "id": "video_123",
  "object": "video",
  "model": "sora-2",
  "status": "completed",
  "progress": 100,
  "created_at": 1712697600,
  "completed_at": 1712698000,
  "expires_at": 1712784400,
  "size": "1024x1808",
  "seconds": "8",
  "quality": "standard",
  "remixed_from_video_id": null,
  "error": null
}

响应字段说明

字段 类型 描述
id string 视频任务的唯一标识符
object string 对象类型,固定为 "video"
model string 生成视频的模型名称
status string 视频任务的当前生命周期状态
progress integer 生成任务的近似完成百分比
created_at integer 任务创建时的Unix时间戳(秒)
completed_at integer 任务完成时的Unix时间戳(秒),如果已完成
expires_at integer 可下载资源过期时的Unix时间戳(秒),如果已设置
size string 生成视频的分辨率
seconds string 生成视频片段的时长(秒)
quality string 视频质量
remixed_from_video_id string 如果此视频是混音,则为源视频的标识符
error object 如果生成失败,则包含错误信息的对象

获取视频内容

下载已完成的视频内容

API 端点

GET /v1/videos/{video_id}/content

路径参数

参数 类型 必填 描述
video_id string 要下载的视频标识符

查询参数

参数 类型 必填 描述
variant string 要返回的可下载资源类型,默认为MP4视频

请求示例

curl 'https://你的newapi服务器地址/v1/videos/video_123/content' \
  -H "Authorization: Bearer sk-xxxx" \
  -o "video.mp4"

响应格式

200 - 成功响应

直接返回视频文件流,Content-Type为 video/mp4

响应头说明

字段 类型 描述
Content-Type string 视频文件类型,通常为 video/mp4
Content-Length string 视频文件大小(字节)
Content-Disposition string 文件下载信息

错误响应

400 - 请求参数错误

{
  "error": {
    "message": "Invalid request parameters",
    "type": "invalid_request_error",
    "code": "invalid_parameter"
  }
}

401 - 未授权

{
  "error": {
    "message": "Invalid API key",
    "type": "authentication_error",
    "code": "invalid_api_key"
  }
}

403 - 无权限

{
  "error": {
    "message": "Insufficient permissions",
    "type": "permission_error",
    "code": "insufficient_permissions"
  }
}

429 - 请求频率限制

{
  "error": {
    "message": "Rate limit exceeded",
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded"
  }
}

500 - 服务器内部错误

{
  "error": {
    "message": "Internal server error",
    "type": "server_error",
    "code": "internal_error"
  }
}