video-v1 开发者文档 https://api.zgbhwzj.cn/v1
New API 视频生成接口

video-v1

通过 OpenAI 风格的任务接口提交 5、10 或 15 秒视频生成请求,轮询任务状态,并在完成后下载 MP4 内容。

接口概览

video-v1 使用异步任务模式。创建任务时返回 task_...,客户端按间隔查询状态,状态为 completed 后再下载视频内容。

Base URL https://api.zgbhwzj.cn/v1
模型 video-v1
支持时长 5 / 10 / 15 秒
认证方式:所有 /v1/videos 请求都使用 Authorization: Bearer YOUR_API_KEY。不要把真实 key 写进浏览器前端代码,生产环境应由后端服务代发请求。
时长限制:真实测试中上游只接受 duration=5duration=10duration=15
文生视频

POST /v1/videos,请求体使用 UTF-8 JSON,核心字段为 promptdurationsecondssize

图生视频

POST /v1/videos,请求体使用 multipart/form-data,参考图通过 file 字段上传,时长只传 seconds

快速开始

一次完整调用包含创建、轮询、下载三步。创建请求体必须使用 UTF-8 JSON,并带上 Content-Type: application/json; charset=utf-8。时长只能选择 51015 秒。

创建视频任务

/videos 提交 modelpromptdurationsecondssize,响应里的 idtask_id 就是后续查询用的任务 ID。

查询任务状态

/videos/{task_id} 发起 GET。queuedrunningprocessing 继续等待;completed 进入下载;failed 读取错误信息并停止。

下载 MP4 内容

任务完成后访问 /videos/{task_id}/content,把响应体保存为 .mp4 文件。

POST https://api.zgbhwzj.cn/v1/videos
GET https://api.zgbhwzj.cn/v1/videos/{task_id}
GET https://api.zgbhwzj.cn/v1/videos/{task_id}/content

文生视频

文生视频使用 POST /v1/videos,请求方式为 application/json; charset=utf-8。下面是已验证通过的参数组合,真实测试显示上游目前只接受 5、10、15 秒。

调用方式:文生视频不上传文件,直接在 JSON 请求体里传 modelpromptdurationsecondssize
字段 类型 必填 示例 说明
model string video-v1 视频生成模型名。
prompt string 城市黄昏街头,电影级动态运镜... 视频描述。中文提示词需要按 UTF-8 JSON 提交。
duration number 推荐 5 / 10 / 15 视频时长,单位秒。4、6、7、8、9、11、12、13、14 秒会被上游拒绝。
seconds string 推荐 "5" / "10" / "15" 上游兼容字段。和 duration 同时传时保持一致。
size string 推荐 3840x2160 目标分辨率。4K 使用 3840x2160

图生视频

图生视频使用同一个 POST /v1/videos 入口,但请求方式改为 multipart/form-data,把参考图作为 file 文件字段上传。实测可用时长仍然只有 51015 秒。

关键兼容点:multipart 图生视频请求里只传 seconds,不要传 duration。表单里的 duration=10 会被解析为字符串,可能触发上游类型错误:duration of type int
POST https://api.zgbhwzj.cn/v1/videos
字段 类型 必填 示例 说明
model form field video-v1 视频模型名。
prompt form field 让小狗自然向前走... 图生视频提示词。建议描述保持参考图主体、环境和动作幅度。
file file @reference.png 参考图文件字段。已验证 PNG 可用。
seconds form field 5 / 10 / 15 图生视频时长。4、6、7、8、9、11、12、13、14 秒会被上游拒绝。
aspect_ratio form field 推荐 16:9 参考 seedance2test 文档参数,作为上游生成比例传入。
size form field 推荐 1920x1080 中转侧会根据尺寸推导比例;和 aspect_ratio 保持一致。

curl 图生视频示例

multipart/form-data
curl -X POST "https://api.zgbhwzj.cn/v1/videos" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "model=video-v1" \
  -F "prompt=以参考图为首帧,生成10秒写实自然风格宠物视频。保持主体一致,动作自然流畅,无畸变。" \
  -F "seconds=10" \
  -F "aspect_ratio=16:9" \
  -F "size=1920x1080" \
  -F "file=@reference.png;type=image/png"

PowerShell 图生视频示例

Windows PowerShell
$base = "https://api.zgbhwzj.cn/v1"
$key = "YOUR_API_KEY"
$image = "C:\path\to\reference.png"

curl.exe -X POST "$base/videos" `
  -H "Authorization: Bearer $key" `
  -F "model=video-v1" `
  -F "prompt=以参考图为首帧,生成10秒写实自然风格宠物视频。保持主体一致,动作自然流畅,无畸变。" `
  -F "seconds=10" `
  -F "aspect_ratio=16:9" `
  -F "size=1920x1080" `
  -F "file=@$image;type=image/png"
路由说明:当前外部中转站没有暴露 /v1/media/upload/v1/media/generate,这两条路径实测返回 HTTP 404。对外调用图生视频请使用 /v1/videos multipart。

文生视频代码示例

下面的示例用于文生视频 JSON 调用。示例中的 YOUR_API_KEY 需要替换为你的真实 key。静态网页里只放占位符,不存放真实密钥。

请求体 payload.json

JSON
{
  "model": "video-v1",
  "prompt": "时长 15 秒,4K 60fps,电影级动态运镜,城市黄昏街头场景,地面积水镜面反光,车流动态光轨,霓虹灯光持续闪烁。",
  "duration": 15,
  "seconds": "15",
  "size": "3840x2160"
}

curl

Shell
curl -X POST "https://api.zgbhwzj.cn/v1/videos" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Accept: application/json" \
  --data-binary @payload.json

Windows PowerShell

PowerShell
$base = "https://api.zgbhwzj.cn/v1"
$key = "YOUR_API_KEY"
$payloadPath = ".\payload.json"
$body = @{
  model = "video-v1"
  prompt = "时长 15 秒,4K 60fps,电影级动态运镜,城市黄昏街头场景。"
  duration = 15
  seconds = "15"
  size = "3840x2160"
} | ConvertTo-Json -Depth 5

$utf8NoBom = [System.Text.UTF8Encoding]::new($false)
[System.IO.File]::WriteAllText($payloadPath, $body, $utf8NoBom)

curl.exe -X POST "$base/videos" `
  -H "Authorization: Bearer $key" `
  -H "Content-Type: application/json; charset=utf-8" `
  -H "Accept: application/json" `
  --data-binary "@$payloadPath"

JavaScript fetch

Node.js 或后端环境
const base = "https://api.zgbhwzj.cn/v1";
const apiKey = process.env.NEWAPI_API_KEY;

const create = await fetch(`${base}/videos`, {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json; charset=utf-8",
    "Accept": "application/json"
  },
  body: JSON.stringify({
    model: "video-v1",
    prompt: "时长 15 秒,4K 60fps,电影级动态运镜,城市黄昏街头场景。",
    duration: 15,
    seconds: "15",
    size: "3840x2160"
  })
});

if (!create.ok) {
  throw new Error(await create.text());
}

const job = await create.json();
console.log(job.id || job.task_id);

轮询与下载

创建响应只表示任务已进入队列,不表示视频已经完成。建议服务端保存任务 ID,并使用后台任务轮询。

查询状态
curl "https://api.zgbhwzj.cn/v1/videos/task_xxx" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"
下载 MP4
curl "https://api.zgbhwzj.cn/v1/videos/task_xxx/content" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  --output video-v1-output.mp4
继续等待

queuedrunningprocessing 表示任务仍在生成,保持轮询。

可以下载

completed 表示任务完成,可使用 /content 下载。

停止重试

failederrorcancelled 表示任务失败,读取响应里的错误字段。

短暂异常

刚创建后如果上游暂时查不到任务,等待 15-30 秒后再查,不要立即重复创建。

中文编码

中文提示词乱码通常不是模型参数问题,而是请求体编码或请求头不一致。按下面两点处理。

  • 请求头固定使用 Content-Type: application/json; charset=utf-8
  • Windows PowerShell 中优先把 JSON 写成 UTF-8 文件,再用 curl.exe --data-binary @payload.json 提交。
  • 不要用浏览器前端直连真实 key。中文请求可以在后端统一编码、记录和重试。

计费

当前 video-v1 按每次创建视频任务固定 100 USD 的计费标准处理。业务侧应在创建任务前确认用户余额,避免用户重复点击造成多次创建。

防重复建议:为每次生成请求生成业务订单号或幂等键。前端按钮进入提交中状态,后端在任务完成或失败前拒绝同一订单重复创建。

验证结果

本页参数已在 2026-07-06 使用真实 key 对 https://api.zgbhwzj.cn/v1/videos 做创建、轮询和下载验证。创建返回 HTTP 200,最终状态为 completed,下载文件为有效 MP4。

检查项 结果
model video-v1 已通过
duration 51015 已通过
seconds "5""10""15" 已通过
size 3840x2160 已通过
请求编码 application/json; charset=utf-8 已通过
状态查询 GET /videos/{task_id} 已通过,最终 progress=100
视频下载 GET /videos/{task_id}/content 已通过,样例文件 sample-video-v1.mp4
文生视频入口 POST /v1/videos JSON 已通过,51015 秒均可生成并下载。
时长范围 4-15 秒真实测试中,只有 51015 秒成功;其他秒数创建阶段返回 HTTP 400,上游提示“视频时长必须是5、10、15秒之一”。
图生视频入口 POST /v1/videos multipart 已通过。文件字段使用 file,时长字段使用 seconds
图生视频时长 51015 秒均已完成并下载 MP4;其他 4-15 秒内的时长创建阶段返回 HTTP 400
图生视频限制 multipart 请求不要传 duration;外部 /v1/media/upload/v1/media/generate 当前返回 HTTP 404