▶FluAPI Video developer docsBASE · new.fluapi.com/v1
FluAPI · Video API

Video API
create, poll, download.

通过 https://new.fluapi.com/v1 创建异步视频任务,调用 7 个可用视频模型,并使用统一的任务状态接口获取最终视频。

Base URL https://new.fluapi.com/v1创建 POST /videos查询 GET /videos/:task_id鉴权 Bearer API key

快速开始

视频生成是异步流程:创建任务 → 保存 task_id → 轮询状态 → 下载视频。所有请求都带同一个 Bearer Token。

POSThttps://new.fluapi.com/v1/videos
curl · text-to-video
curl https://new.fluapi.com/v1/videos \
  -H "Authorization: Bearer $FLU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sd-2-c8",
    "prompt": "海边日落,镜头缓慢向前推进",
    "duration": 15,
    "ratio": "16:9",
    "resolution": "720p",
    "audio": true
  }'
创建响应:保存返回的 task_id(或 id)和 status。随后请求 GET /videos/{task_id},直到状态变为 completed、succeeded 或 done。

7 个可用模型

模型 ID 必须原样传递,大小写也要保持一致。

01 · SEEDANCE

sd-2-c8

10 / 15 秒;支持文字、图片、视频、音频参考。

02 · SEEDANCE FAST

sd-2-c5

4–15 秒;支持文字、图片、视频、音频参考。

03 · SEEDANCE

sd-2.5-c1

固定 30 秒;最多 10 张图片参考。

04 · CSEADANCO

Cseadanco2.5K

10 / 15 / 30 秒;最多 9 张图片参考。

05 · FLOW

flow-omni-1.1-flash

固定 8 秒;支持多图和 1 个视频编辑参考。

06 · FLOW

flow-veo-3-1

固定 8 秒;支持图片参考和首尾帧。

07 · SD

OOsd2.5

5 / 10 / 15 秒;支持图片参考。

GET · optional model discovery
curl https://new.fluapi.com/v1/models \
  -H "Authorization: Bearer $FLU_API_KEY"

参数矩阵

所有模型都接受 model、prompt、duration、ratio、resolution;不同模型的合法组合如下。

模型durationratioresolution / size参考素材
sd-2-c810、15 秒16:9、9:16、1:1720p · 1280x720 / 720x1280 / 720x720图片 9 · 视频 3 · 音频 3
sd-2-c54–15 秒16:9、9:16、1:1、4:3、3:4、21:9、9:21720p · 按比例输出图片 9 · 视频 3 · 音频 3
sd-2.5-c130 秒16:9、9:16、1:1、4:3、3:4、21:9、9:21720p · 按比例输出图片 10
Cseadanco2.5K10、15、30 秒16:9、9:16、1:1、4:3、3:4、21:9、9:21720p · 按比例输出图片 9
flow-omni-1.1-flash4、6、8、10 秒16:9、9:16360p / 720p / 1080p / 4K
640x360 至 3840x2160
图片 6 · 视频 1
flow-veo-3-14、6、8 秒;1080p / 4K 仅 8 秒16:9、9:16720p / 1080p / 4K
1280x720 至 3840x2160
图片 3 · 首帧 + 尾帧
OOsd2.55、10、15 秒16:9、9:16、1:1、4:3、3:4、21:9、9:21720p · 按比例输出图片 9
分辨率规则:flow-omni-1.1-flash 支持 360p、720p、1080p、4K;flow-veo-3-1 不支持 360p。其余 5 个模型固定使用 720p,传其他值不会改变上游输出。

创建任务

标准创建接口是 JSON。图片、视频、音频参考素材会以 URL 数组或 data URL 写入对应字段;如果你的客户端直接上传文件,请先把素材放到可访问的 URL。

JSON · Seedance with references
curl https://new.fluapi.com/v1/videos \
  -H "Authorization: Bearer $FLU_API_KEY" -H "Content-Type: application/json" \
  -d '{
    "model": "sd-2-c5",
    "prompt": "城市夜景中的汽车追逐",
    "duration": 10,
    "ratio": "21:9",
    "resolution": "720p",
    "audio": true,
    "images": ["https://cdn.example.com/car.png"],
    "video_reference": ["https://cdn.example.com/style.mp4"],
    "audio_reference": ["https://cdn.example.com/engine.mp3"]
  }'
JSON · Omni / Veo special fields
{
  "model": "flow-veo-3-1",
  "prompt": "从白天过渡到夜晚",
  "seconds": "8",
  "duration": 8,
  "size": "1280x720",
  "resolution": "720p",
  "resolution_name": "720p",
  "quality": "720p",
  "ratio": "16:9",
  "aspect_ratio": "16:9",
  "first_image_url": "data:image/png;base64,...",
  "last_image_url": "data:image/png;base64,..."
}

Omni 使用 seconds(字符串)和 duration(数字)双字段;Veo 的首尾帧使用 first_image_url 与 last_image_url。这些字段按模型分支传递。

轮询结果与下载

创建接口返回的任务 ID 用于查询任务。建议每 4 秒轮询一次,设置总超时;不要高频打满接口。

GEThttps://new.fluapi.com/v1/videos/{task_id}
JavaScript · poll until complete
const base = 'https://new.fluapi.com/v1'
async function waitForVideo(taskId) {
  for (let i = 0; i < 180; i++) {
    const r = await fetch(`${base}/videos/${encodeURIComponent(taskId)}`, {
      headers: { Authorization: `Bearer ${process.env.FLU_API_KEY}` }
    })
    const body = await r.json()
    if (!r.ok) throw new Error(body.error?.message || body.error || `HTTP ${r.status}`)
    const status = String(body.status || body.data?.status || '').toLowerCase()
    if (['completed','succeeded','success','done'].includes(status)) return body
    if (['failed','error','cancelled','canceled','expired','rejected'].includes(status)) throw new Error(body.error || body.message || 'video task failed')
    await new Promise(resolve => setTimeout(resolve, 4000))
  }
  throw new Error('video task timeout')
}
完成响应:视频地址可能在 url、video_url、download_url、data.url 或 metadata.url。如果返回 /videos/{task_id}/content,使用同一个 Bearer Token 下载。

参考素材

不同模型读取不同字段。URL 必须能被上游访问;Veo 和 Omni 的图片/视频参考也可以使用 data URL。

用途字段适用模型值形状
普通图片参考images7 个模型图片 URL 数组
视频参考video_referencesd-2-c8、sd-2-c5;Omni 使用 input_reference视频 URL 数组 / 单个 data URL
音频参考audio_referencesd-2-c8、sd-2-c5音频 URL 数组或单个 URL
Veo 首帧first_image_url、first_frameflow-veo-3-1图片 URL 或 data URL
Veo 尾帧last_image_url、last_frameflow-veo-3-1图片 URL 或 data URL
参考素材校验:模型不支持的素材类型会被拒绝。例如 sd-2.5-c1 不接受视频参考,Veo 不能使用视频参考,Omni 只接受最多 1 个视频编辑参考。

错误处理

状态含义处理方式
400模型、时长、比例、分辨率或参考字段不合法。按参数矩阵修正后再提交。
401Invalid token / API Key 无效。检查 Bearer Token 和账户权限。
413请求体或参考素材过大。压缩素材、减少数量或改用 URL。
429触发限流或账户额度限制。降低创建并发,按 Retry-After 或指数退避。
500–504上游任务创建或状态服务暂时失败。创建阶段最多重试 2–3 次;轮询阶段继续退避。

上线检查

Key 管理只在后端调用,使用环境变量或密钥管理器注入。
任务状态保存 task_id、模型、请求参数和创建时间,避免丢失任务。
轮询节奏建议 4 秒一次,设置总超时并识别失败终态。
视频归档任务完成后及时下载视频;上游临时 URL 可能有时效。