Skip to content

wan3.0-video ​

wan3.0-video 请求参数与示例。

POST /v1/async/videos/generations

发送 JSON,请求头填写 Authorization: Bearer <PIXAPI_KEY> 和 Content-Type: application/json。

请求字段 ​

通用字段放在请求体一级,下面列出的模型专用参数放进 providerOptions。

字段类型必填说明
modelstring是wan3.0-video
promptstring否描述动作、场景、镜头和对白,最多 20,000 字符。 有有效素材时可省略;提示词与素材至少提供一种。
secondsinteger是2–30 秒的整数,必须明确填写。
resolutionstring否480p / 720p / 1080p. Pixapi 默认:1080p。
ninteger否默认 1,只支持整数 1。
imagestring / string[]否一张公网首帧图片 URL,JPEG/PNG/WebP/BMP。
providerOptionsobject否模型专用选项,详见下表。

providerOptions ​

本表所有字段都写在 providerOptions 内,不要与 model 并列。

字段类型说明
aspect_ratiostringadaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16. 默认 adaptive;图生视频按输入图比例。
seedinteger-1(随机)或 0–2147483647,同种子不保证结果完全相同。
prompt_extendboolean是否优化和扩展提示词,默认 true。
watermarkboolean是否添加 AI 可见水印,默认 false。
audioboolean默认 true;false 生成无声视频,不使用提供的音频。
last_frame_urlstring公网尾帧图 URL,必须有首帧;不要在 media 中重复指定同一帧。
mediaobject[]每项包含 type 和公网 url,详见下方素材规则。

输入规则 ​

所有素材必须是公网 HTTP(S) URL,不支持 Base64、本地路径、外部资产 ID。seconds 必须是正整数。

media.type:first_frame ≤1、last_frame ≤1;或 reference_image ≤10、reference_video ≤5、reference_audio ≤5、file ≤1、link ≤1。首尾帧不能和参考素材/文件/网页混用;尾帧必须配首帧,且不要用 image/last_frame_url 重复指定。

参考视频:MP4/MOV,每段 1–15 秒,合计 ≤15 秒,≥16fps、240–4096px、每段 ≤100 MB;输入视频总时长加 seconds ≤30 秒。音频:WAV/MP3,每段 1–15 秒,合计 ≤15 秒,每段 ≤15 MB。

file、link 二选一,必须 prompt_extend=true。文件 ≤100 MB,支持 DOC/DOCX、XLS/XLSX、PPT/PPTX、PDF、TXT、KEY、PAGES、NUMBERS、MD;PDF/Word/演示/KEY/PAGES ≤50 页。网页无需登录即可访问。

参考图片:JPEG/PNG(无透明通道)/BMP/WebP,宽高各 240–8000px,比例 1:8–8:1,≤20 MB。提示词用“图1”“视频1”或 Image 1、Video 1,按素材类型分别编号。

示例 ​

bash
curl https://api.pixapi.ai/v1/async/videos/generations \
  -H "Authorization: Bearer $PIXAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "wan3.0-video",
  "prompt": "A cinematic scene with smooth camera motion",
  "seconds": 5,
  "resolution": "720p",
  "n": 1,
  "providerOptions": {
    "prompt_extend": true,
    "watermark": false
  }
}'
py
import os
import requests

response = requests.post(
    "https://api.pixapi.ai/v1/async/videos/generations",
    headers={"Authorization": f"Bearer {os.environ['PIXAPI_KEY']}"},
    json={
  "model": "wan3.0-video",
  "prompt": "A cinematic scene with smooth camera motion",
  "seconds": 5,
  "resolution": "720p",
  "n": 1,
  "providerOptions": {
    "prompt_extend": True,
    "watermark": False
  }
},
)
response.raise_for_status()
print(response.json())
js
const response = await fetch('https://api.pixapi.ai/v1/async/videos/generations', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.PIXAPI_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
  "model": "wan3.0-video",
  "prompt": "A cinematic scene with smooth camera motion",
  "seconds": 5,
  "resolution": "720p",
  "n": 1,
  "providerOptions": {
    "prompt_extend": true,
    "watermark": false
  }
}),
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
go
package main

import (
  "bytes"
  "fmt"
  "io"
  "net/http"
  "os"
)

func main() {
  body := []byte(`{
  "model": "wan3.0-video",
  "prompt": "A cinematic scene with smooth camera motion",
  "seconds": 5,
  "resolution": "720p",
  "n": 1,
  "providerOptions": {
    "prompt_extend": true,
    "watermark": false
  }
}`)
  req, err := http.NewRequest("POST", "https://api.pixapi.ai/v1/async/videos/generations", bytes.NewBuffer(body))
  if err != nil { panic(err) }
  req.Header.Set("Authorization", "Bearer " + os.Getenv("PIXAPI_KEY"))
  req.Header.Set("Content-Type", "application/json")
  resp, err := http.DefaultClient.Do(req)
  if err != nil { panic(err) }
  defer resp.Body.Close()
  result, err := io.ReadAll(resp.Body)
  if err != nil { panic(err) }
  if resp.StatusCode >= 400 { panic(string(result)) }
  fmt.Println(string(result))
}

异步请求保存返回的 id,用 GET /v1/tasks/{id} 查询至 completed 或 failed。参阅查询结果和计费说明。