使用前沿 AI 模型生成视频。提供 first_frame(可选 end_frame)进行图生视频,提供 refs 进行多模态文生视频,两者都不提供则进行纯文生视频。提交时扣除点数,生成失败时自动退还。通过轮询 GET /api/v1/ai_video 查询进度。
Beta:所有有效付费订阅账户均可使用。Beta 期间每个 API Key 的并发数受限,超限提交会被拒绝,不会排队。
请求头
X-API-Keystring必填你的 VisionStory API Key(sk-vs-...),请仅保存在服务端。可在 API Key 管理 中创建或管理,需要 Pro 或更高方案。
请求体
application/json必填aspect_ratiostring | null可为空宽高比,例如 16:9 / 9:16 / 1:1,或使用 adaptive 让模型跟随输入素材。可选值因模型而异,默认使用模型默认值。wan-3.0 设置 refs 时始终跟随参考素材,因此同时指定两者会返回 400。
client_request_idstring | null可为空可选的幂等键。24 小时内使用相同值重复提交,会返回原任务,不会创建新任务或再次扣费,可用于安全重试。
duration_secinteger | null可为空视频时长,单位为秒。可选值因模型而异(请查询 GET /api/v1/ai_video/models),默认使用模型默认值。时长越长,消耗的点数越多。
end_frameMediaRef | null可为空媒体引用,必须且只能提供以下一种:asset_id(素材库中的素材,可跨请求复用)、url(单次使用的公开 URL)或 inline_data(单次使用的 base64 数据,不保存)。
asset_idstring | null可为空POST /api/v1/asset 返回的素材 ID,用于跨请求复用素材。
inline_dataInlineDataModel | null可为空仅供本次使用的内嵌 base64 媒体数据,不会加入素材库。图像支持 image/jpeg、image/jpg、image/png、image/webp、image/bmp、image/tiff、image/gif;音频支持 audio/wav、audio/x-wav、audio/wave、audio/mpeg、audio/mp3;视频支持 video/mp4、video/quicktime、video/mov。
datastring必填文件原始字节编码后的 base64 字符串,不包含 data: URI 前缀。
mime_typestring必填内嵌数据的 MIME 类型,网关据此区分图像、音频和视频。可接受的类型取决于具体接口,请参阅包含此对象的字段说明。数字人视频接受音频 ['audio/avi', 'audio/mpeg', 'audio/mp3', 'audio/mp4', 'audio/m4a', 'audio/wav'] 和图像 ['image/jpeg', 'image/jpg', 'image/png', 'image/webp', 'image/heic']。
urlstring | null可为空仅供本次使用的公开可访问媒体 URL,不会加入素材库。
first_frameMediaRef | null可为空媒体引用,必须且只能提供以下一种:asset_id(素材库中的素材,可跨请求复用)、url(单次使用的公开 URL)或 inline_data(单次使用的 base64 数据,不保存)。
asset_idstring | null可为空POST /api/v1/asset 返回的素材 ID,用于跨请求复用素材。
inline_dataInlineDataModel | null可为空仅供本次使用的内嵌 base64 媒体数据,不会加入素材库。图像支持 image/jpeg、image/jpg、image/png、image/webp、image/bmp、image/tiff、image/gif;音频支持 audio/wav、audio/x-wav、audio/wave、audio/mpeg、audio/mp3;视频支持 video/mp4、video/quicktime、video/mov。
datastring必填文件原始字节编码后的 base64 字符串,不包含 data: URI 前缀。
mime_typestring必填内嵌数据的 MIME 类型,网关据此区分图像、音频和视频。可接受的类型取决于具体接口,请参阅包含此对象的字段说明。数字人视频接受音频 ['audio/avi', 'audio/mpeg', 'audio/mp3', 'audio/mp4', 'audio/m4a', 'audio/wav'] 和图像 ['image/jpeg', 'image/jpg', 'image/png', 'image/webp', 'image/heic']。
urlstring | null可为空仅供本次使用的公开可访问媒体 URL,不会加入素材库。
generate_audioboolean | null可为空是否生成原生音轨;所有模型均默认为 true,且不影响价格。kling-3.0-omni 不允许同时启用此选项并提供视频参考素材,否则返回 400。
model_idstring必填用于生成的模型。请使用 GET /api/v1/ai_video/models 返回的 ID,例如 seedance-2.0。
promptstring必填描述要生成的视频的提示词。图生视频时,用于描述施加于 first_frame 的运动。
refsMediaRef[] | null可为空用于引导文生视频的多模态参考素材(图像/视频/音频)。仅当 GET /api/v1/ai_video/models 中该模型的 refs.max 大于 0 时才支持;其中的 refs.max_per_kind 和 refs.total_duration_sec_max 给出了各类型限制。参考素材不影响价格。与 first_frame 互斥。
asset_idstring | null可为空POST /api/v1/asset 返回的素材 ID,用于跨请求复用素材。
inline_dataInlineDataModel | null可为空仅供本次使用的内嵌 base64 媒体数据,不会加入素材库。图像支持 image/jpeg、image/jpg、image/png、image/webp、image/bmp、image/tiff、image/gif;音频支持 audio/wav、audio/x-wav、audio/wave、audio/mpeg、audio/mp3;视频支持 video/mp4、video/quicktime、video/mov。
datastring必填文件原始字节编码后的 base64 字符串,不包含 data: URI 前缀。
mime_typestring必填内嵌数据的 MIME 类型,网关据此区分图像、音频和视频。可接受的类型取决于具体接口,请参阅包含此对象的字段说明。数字人视频接受音频 ['audio/avi', 'audio/mpeg', 'audio/mp3', 'audio/mp4', 'audio/m4a', 'audio/wav'] 和图像 ['image/jpeg', 'image/jpg', 'image/png', 'image/webp', 'image/heic']。
urlstring | null可为空仅供本次使用的公开可访问媒体 URL,不会加入素材库。
resolutionstring | null可为空输出分辨率,例如 480p / 720p / 1080p / 4k。可选值因模型而异:4K 仅限 kling-3.0;所有 Seedance 和 Wan 模型均支持 480p,Kling 不支持。默认使用模型默认值:仅 kling-3.0-omni 默认 1080p,其他模型均默认 720p。分辨率越高,消耗的点数越多。
响应
200请求成功
application/json
dataCreateAiVideoResponse | null必填可为空当前接口的响应数据,字段定义见该接口的响应结构。仅当操作不返回数据时为 null。
cost_creditinteger提交任务时扣除的点数;生成失败时自动退还。
statusstring初始任务状态,创建后始终为 queued。
video_idstring必填已创建任务的标识符。使用此 ID 轮询 GET /api/v1/ai_video 以查询进度。
messagestring便于阅读的状态消息;调用成功时为 "success"。
server_timestring · date-time必填服务端生成响应时的时间戳,使用 ISO 8601 格式(UTC)。
default错误响应。所有失败均使用统一结构:error 对象包含数字错误码 code、便于阅读的 message、可选的 details 字符串,以及提供后续处理建议的可选 hint(便于 AI Agent 使用)。
application/json
errorErrorDetail必填codeinteger必填机器可读的错误码。传输层失败时对应 HTTP 状态码(例如 401、404、422、500),其他情况可能使用业务专用错误码。
detailsstring | null可为空可选的结构化错误详情,例如 422 响应中逐字段校验错误的 JSON 字符串。无补充信息时不返回。
hintstring | null可为空供用户和 AI Agent 参考的错误处理建议,例如如何修正请求或在哪里获取 API Key。可能不返回此字段。
messagestring必填便于阅读的错误原因说明,可安全记录到日志或展示给最终用户;此返回值未本地化。