跳转到主要内容
POST
/
v1
/
videos
/
generations
curl --request POST \
  --url https://api.evolink.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "wan2.7-image-to-video",
  "generation_mode": "first_frame",
  "prompt": "一只猫在弹钢琴",
  "image_start": "https://example.com/first_frame.jpg"
}
'
{
  "created": 1757169743,
  "id": "task-unified-1757169743-7cvnl5zw",
  "model": "wan2.7-image-to-video",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 120
  },
  "type": "video",
  "usage": {
    "billing_rule": "per_call",
    "credits_reserved": 5,
    "user_group": "default"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.evolink.ai/llms.txt

Use this file to discover all available pages before exploring further.

授权

Authorization
string
header
必填

##所有接口均需要使用Bearer Token进行认证##

获取 API Key :

访问 API Key 管理页面 获取您的 API Key

使用时在请求头中添加:

Authorization: Bearer YOUR_API_KEY

请求体

application/json
model
enum<string>
必填

模型名称,固定为 wan2.7-image-to-video

可用选项:
wan2.7-image-to-video
示例:

"wan2.7-image-to-video"

generation_mode
enum<string>

生成模式,决定素材组合的合法性。推荐显式指定

取值说明:

  • first_frame:首帧生视频。必传 image_start;可选 audio_urls;不接受 image_endvideo_urls
  • first_last_frame:首尾帧生视频。必传 image_start + image_end;可选 audio_urls;不接受 video_urls
  • video_continuation:视频续写。必传 video_urls[0];可选 image_end(作为尾帧);不接受 image_startaudio_urls

未传时的兼容行为: 未传 generation_mode 时,将根据请求中的素材类型自动选择合适的模式;建议显式指定以避免歧义

可用选项:
first_frame,
first_last_frame,
video_continuation
示例:

"first_frame"

prompt
string

视频生成的文本提示词。支持中英文,每个汉字/字母占 1 个字符,超过部分会自动截断。最大长度 5000 字符

Maximum string length: 5000
示例:

"一只猫在弹钢琴"

negative_prompt
string

负面提示词,描述不希望在视频画面中出现的内容。支持中英文,最大长度 500 字符,超过部分会自动截断

Maximum string length: 500
示例:

"模糊, 低质量"

image_start
string<uri>

首帧图片 URL

模式约束:

  • first_frame 模式:必传
  • first_last_frame 模式:必传
  • video_continuation 模式:禁止传入

图像限制:

  • 格式:JPEG、JPG、PNG(不支持透明通道)、BMP、WEBP
  • 分辨率:宽和高的范围为 [240, 8000] 像素
  • 宽高比:1:8 ~ 8:1
  • 文件大小:不超过 20MB
示例:

"https://example.com/first_frame.jpg"

image_end
string<uri>

尾帧图片 URL

模式约束:

  • first_last_frame 模式:必传
  • video_continuation 模式:可选(作为视频续写的目标尾帧)
  • first_frame 模式:禁止传入(如需首尾帧,请使用 first_last_frame

图像限制:

  • 格式:JPEG、JPG、PNG(不支持透明通道)、BMP、WEBP
  • 分辨率:宽和高的范围为 [240, 8000] 像素
  • 宽高比:1:8 ~ 8:1
  • 文件大小:不超过 20MB
示例:

"https://example.com/last_frame.jpg"

video_urls
string<uri>[]

视频续写 URL 数组,仅支持 1 个元素

模式约束:

  • video_continuation 模式:必传
  • first_frame / first_last_frame 模式:禁止传入
  • 不能与 audio_urls 同时使用

视频限制:

  • 格式:mp4、mov
  • 时长:2 ~ 10 秒(输入片段本身长度)
  • 分辨率:宽和高的范围为 [240, 4096] 像素
  • 宽高比:1:8 ~ 8:1
  • 文件大小:不超过 100MB

续写时长规则:

  • duration 参数表示最终输出视频的总时长(包含原始输入片段 + 模型续写部分)
  • 模型续写的部分 = duration − 输入视频时长
  • duration 必须 ≥ 输入视频时长
  • 计费按最终输出视频总时长(即 duration)结算

示例:

输入视频时长duration续写生成最终输出计费时长
3 秒1512 秒15 秒15 秒
5 秒105 秒10 秒10 秒
8 秒80 秒(仅原片输出)8 秒8 秒
示例:
["https://example.com/clip.mp4"]
audio_urls
string<uri>[]

驱动音频文件 URL 数组。当前仅支持 1 个元素。模型将以该音频为驱动源生成视频(如口型同步、动作卡点等)

模式约束:

  • first_frame 模式:可选
  • first_last_frame 模式:可选
  • video_continuation 模式:禁止传入(不能与 video_urls 同时使用)

格式要求:

  • 支持格式:wavmp3
  • 时长范围:2 ~ 30
  • 文件大小:不超过 15MB

截断处理:

  • 若音频长度超过 duration 值,自动截取前 N 秒,其余部分丢弃
  • 若音频长度不足视频时长,超出音频长度部分为无声视频。例如:音频为 3 秒、视频时长为 5 秒,输出视频前 3 秒有声、后 2 秒无声
Required array length: 1 element
示例:
["https://example.com/audio.mp3"]
quality
enum<string>
默认值:720p

视频清晰度,默认为720p

说明:

  • 720p: 标准清晰度,标准价格,此为默认值
  • 1080p: 高清晰度,价格会提升
可用选项:
720p,
1080p
示例:

"720p"

duration
number
默认值:5

视频时长(秒),整数,范围 2 ~ 15,默认 5

含义说明:

  • first_frame / first_last_frame 模式:表示生成视频的总时长
  • video_continuation 模式:表示最终输出视频的总时长(= 原始输入片段 + 模型续写部分)

video_continuation 模式额外约束:

  • duration 必须 ≥ 输入视频时长(否则报错)
  • 续写生成的时长 = duration − 输入视频时长
  • duration = 输入视频时长时,不进行续写,仅原样输出输入片段
  • 详见 video_urls 字段中的续写时长规则与示例

计费说明: 实际扣费以生成视频的秒数为准

必填范围: 2 <= x <= 15
示例:

5

seed
integer

随机种子,默认随机

说明:

  • 取值范围:1 ~ 2147483647
  • 固定 seed 可在调试 prompt 时降低参数变化的干扰,提升结果可复现性
必填范围: 1 <= x <= 2147483647
示例:

42

prompt_extend
boolean
默认值:false

是否开启prompt智能改写,开启后将使用大模型优化正向提示词,对描述性不足、较为简单的prompt提升效果较明显。

注意: 默认值为 false,不传或传 false 时不会触发改写,如需开启请显式传 true

示例:

false

callback_url
string<uri>

任务完成后的HTTPS回调地址

回调时机:

  • 任务完成(completed)、失败(failed)或取消(cancelled)时触发
  • 在计费确认完成后发送

安全限制:

  • 仅支持HTTPS协议
  • 禁止回调到内网IP地址(127.0.0.1、10.x.x.x、172.16-31.x.x、192.168.x.x等)
  • URL长度不超过2048字符

回调机制:

  • 超时时间:10
  • 失败后最多重试3次(会分别在失败的1秒/2秒/4秒后进行重试)
  • 回调响应体格式与任务查询接口返回的格式一致
  • 回调地址若返回2xx状态码视为成功,其他状态码会触发重试
示例:

"https://your-domain.com/webhooks/video-task-completed"

响应

视频任务创建成功

created
integer

任务创建时间戳

示例:

1757169743

id
string

任务ID

示例:

"task-unified-1757169743-7cvnl5zw"

model
string

实际使用的模型名称

示例:

"wan2.7-image-to-video"

object
enum<string>

任务的具体类型

可用选项:
video.generation.task
progress
integer

任务进度百分比 (0-100)

必填范围: 0 <= x <= 100
示例:

0

status
enum<string>

任务状态

可用选项:
pending,
processing,
completed,
failed
示例:

"pending"

task_info
object

视频任务详细信息

type
enum<string>

任务的输出类型

可用选项:
text,
image,
audio,
video
示例:

"video"

usage
object

使用量和计费信息