🏠 首页 🎨 AI生图 🎵 AI生歌 🎧 AI音频 🎬 AI生视频 💬 AI对话 🖼️ 作品库 🔑 API令牌 🏪 模型广场 📖 API文档 👤 个人中心

📖 API文档

所有接口通用:渠道前缀 —— 文本、图片、视频、音乐都支持在 model 前加 渠道ID/ 强制指定渠道,例如 28/firefly-veo31-lite。服务端会自动剥掉前缀,实际转发上游仍使用纯模型名;不传则自动路由。

大西瓜API 提供与 OpenAI 兼容的 文本对话与图像 / 视频 / 音乐生成接口。文本对话提供同步 / 异步两种端点、流式 / 非流式两种模式,支持多轮上下文、多模态(图文)消息、函数调用(tools)、思考强度控制与采样参数透传,并可用「渠道前缀」精确指定供给渠道;图像/视频/音乐生成也支持文生图、图生图、异步任务轮询,并与文本接口一致,可用「渠道ID/模型名」前缀强制指定供给渠道。第三方应用、开源项目、WorkBuddy 等客户端可用 OpenAI 兼容方式直接对接。

提示:使用前请先在 API令牌 页面创建您的 API 密钥。文本按 token 用量计费,图片 / 视频 / 音乐按次(按张)计费;余额不足调用将被拦截并返回 402。

🔑 认证方式

所有 API 请求在 HTTP 头中携带 API 密钥:

Authorization: Bearer sk-xxxxxxxxxxxxxxxx

Base URL:https://image.wxfl.mobi/v1

💬 文本对话(Chat Completions)

提供与 OpenAI Chat Completions 完全兼容的文本对话接口,支持多轮上下文、流式输出(SSE)、多模态(图文)消息、函数调用(tools)与思考强度控制。把 OpenAI SDK 的 base_url 指向本站即可无缝接入。提供同步、异步两个端点:

POST https://image.wxfl.mobi/v1/chat/completions  同步端点(推荐,OpenAI 兼容;流式 / 非流式均支持)
POST https://image.wxfl.mobi/v1/chat/completions/async  异步端点(立即返回 task_id,后台处理,见下文「异步对话」)

主要请求参数

参数类型必填说明
modelstring是文本模型名称,必须是已开放的文本模型。支持渠道前缀 渠道ID/模型名(如 25/deepseek-v4.1-flash)精确指定供给渠道,见下文说明
messagesarray是OpenAI 标准消息数组,每项含 role(system / user / assistant)与 content。content 既可是字符串,也可是多模态分段数组(text / image_url);多轮对话把历史消息按顺序一并传入
streamboolean否true 流式输出(SSE,逐字返回);默认 false 一次性返回。非流式内部同样按流式收集,可绕开上游同步时长限制
max_tokensinteger否最大输出 token 数,原样透传上游;超长文本场景会自动放大输出预算
toolsarray否函数调用(Function Calling)工具定义,tool_choice 一并支持;模型只负责下发指令,具体执行归客户端,见下文「函数调用」
reasoning_effortstring否思考强度,如 low / medium / high;GLM 系列会自动折算为其支持的取值,见下文「思考强度」

可选透传的采样参数

以下 OpenAI 兼容参数,只要调用方显式给出即原样透传上游;未传则保持上游默认,站点不主动注入:

temperature, top_p, top_k, stop, seed, presence_penalty, frequency_penalty, repetition_penalty, logit_bias, response_format, user, parallel_tool_calls
说明:文本按实际 token 用量(usage)计费,分缓存输入 / 输入 / 输出三档,单位为元 / 100 万 tokens。调用成功才扣费,失败立即退款:上游报错、空正文、中断等情况任务标记 failed 并当场释放冻结余额,不依赖客户端是否轮询;n / logprobs / top_logprobs 不在透传范围(站点只返回第一条 choice、不返回概率信息)。

渠道前缀:精确指定供给渠道(重要)

同名模型可能由多个渠道供给(例如 gpt-6.1-sol 同时存在于 mi、codex 福利 / 企业 / 满血等渠道)。直接写模型名时平台自动路由;若要强制走某个渠道,在 model 前加 渠道ID/ 前缀:

# 格式: 渠道ID/模型名 "model": "25/deepseek-v4.1-flash" # 强制渠道 25(deepseek 特价),实际转发模型名 deepseek-v4.1-flash

服务端按首个 / 拆分:前段为纯数字则识别为渠道 ID,后段作为纯模型名转发。不带前缀时按平台调度自动选择可用渠道。

可用文本渠道与模型清单(共 14 个渠道)

渠道ID渠道名称开放模型
11mi 接口gpt-5.6-sol gpt-6-sol gpt-6.1-sol
12腾讯deepseek-v4.1-flash deepseek-v4.1-flash-1017
13DeepSeekdeepseek-v4.1-flash
14智谱glm-5.3-flash glm-5.3-flashx
15Agnesagnes-3.0-flash
19StepFun 对话step-3.7-flash step-5-preview
20ap-claude(kiro 逆向)claude-opus-5 claude-opus-5-5 claude-sonnet-5 claude-sonnet-5-5
21ap-claude(kiro 正价)claude-opus-5 claude-opus-5-5 claude-sonnet-5 claude-sonnet-5-5
22codex · 福利分组gpt-5.6-sol gpt-5.6-terra gpt-6-astra gpt-6-sol gpt-6.1-sol
23codex · 企业分组gpt-6-astra gpt-6-sol gpt-6.1-sol
24codex · 满血分组gpt-5.6-sol gpt-5.6-terra gpt-6-astra gpt-6-sol gpt-6.1-sol
25deepseek · 特价分组deepseek-v4-pro deepseek-v4.1-flash
26ap-grokgrok-4.5 grok-4.6 grok-4.7
27V-geminigemini-3.5-flash-lite gemini-3.6-flash gemini-3.7-flash gemini-3.8-flash gemini-4-argon gemini-4-argon-search 等(含 high / low 变体共 12 个)
价格与清单以实时查询为准:调用 GET /v1/models 可获取全部模型 ID,具体单价见 模型广场。上表为当前快照,新增 / 调整渠道不影响调用方式;逆向 / 代理渠道模型的自我认知名称可能与模型名不同,属上游身份差异、功能正常。

非流式请求(curl)

curl -X POST https://image.wxfl.mobi/v1/chat/completions \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "glm-5.3-flash",
    "messages": [
      {"role": "system", "content": "你是一个乐于助人的助手"},
      {"role": "user", "content": "用一句话介绍你自己"}
    ],
    "stream": false
  }'

非流式响应示例

{
  "id": "chat_xxx",
  "model": "glm-5.3-flash",
  "choices": [
    {"index": 0, "message": {"role": "assistant", "content": "你好!我是……"}, "finish_reason": "stop"}
  ],
  "usage": {"prompt_tokens": 16, "completion_tokens": 5, "total_tokens": 21}
}

流式请求(SSE)

curl -N -X POST https://image.wxfl.mobi/v1/chat/completions \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4.1-flash",
    "messages": [{"role": "user", "content": "写一句晚安"}],
    "stream": true
  }'

流式以 data: {...} 逐行返回增量内容(choices[0].delta.content),结束前返回带 usage 的分片,最后以 data: [DONE] 结束。推理模型(deepseek / glm)的思考过程通过 delta.reasoning_content 原样透传,思考内容不计入正文输出计费。

多轮对话

把历史 user / assistant 消息按顺序放进 messages,模型即可保持上下文:

"messages": [
  {"role": "user",      "content": "帮我写一首伤感的流行歌"},
  {"role": "assistant", "content": "《灯还亮着》……"},
  {"role": "user",      "content": "把副歌改得更释然一些"}
]

Python(OpenAI SDK)示例

from openai import OpenAI

client = OpenAI(
    api_key="sk-xxxxxxxx",
    base_url="https://image.wxfl.mobi/v1",
)

resp = client.chat.completions.create(
    model="glm-5.3-flash",
    messages=[{"role": "user", "content": "你好"}],
    stream=False,
)
print(resp.choices[0].message.content)
print(resp.usage)

多模态(图文)消息

消息的 content 可传分段数组,混合文本与图片。平台会统一提取其中的文本,图片段按 OpenAI image_url 结构透传(请确认所用模型 / 渠道支持视觉):

{
  "model": "claude-sonnet-5",
  "messages": [
    {"role": "user", "content": [
      {"type": "text", "text": "这张图里写了什么?一句话回答"},
      {"type": "image_url", "image_url": {"url": "https://example.com/shot.png"}}
    ]}
  ]
}

函数调用(Function Calling)

传入 tools 定义工具,模型在需要时通过 tool_calls 下发调用指令;平台与模型不执行函数,具体调用由客户端完成,再把结果作为 role: "tool" 消息回传以继续对话。

{
  "model": "gpt-6.1-sol",
  "messages": [{"role": "user", "content": "南宁现在天气怎么样?"}],
  "tool_choice": "auto",
  "tools": [
    {"type": "function", "function": {
      "name": "get_weather",
      "description": "查询指定城市的当前天气",
      "parameters": {
        "type": "object",
        "properties": {"city": {"type": "string", "description": "城市名"}},
        "required": ["city"]
      }
    }}
  ]
}

模型响应的 message 中会带 tool_calls:

"message": {
  "role": "assistant",
  "content": null,
  "tool_calls": [
    {"id": "call_abc", "type": "function",
     "function": {"name": "get_weather", "arguments": "{\"city\": \"南宁\"}"}}
  ]
}

思考强度(reasoning_effort)

用 reasoning_effort 控制推理模型的思考投入。调用方显式指定时优先采用;非 GLM 系列原样透传,GLM 系列仅支持 low / high / max,平台会把 minimal / none / disabled 折算为 low、medium 折算为 high,避免上游报错。未指定时平台按任务难度与输出长度自动判断。

{
  "model": "deepseek-v4.1-flash",
  "messages": [{"role": "user", "content": "证明根号2是无理数"}],
  "reasoning_effort": "high"
}

异步对话(Async)

异步端点的请求体与同步端点完全一致(同样支持渠道前缀、多模态、tools、采样参数),提交后立即返回,后台线程处理,适合不希望长连接等待的场景。

curl -X POST https://image.wxfl.mobi/v1/chat/completions/async \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "25/deepseek-v4.1-flash",
    "messages": [{"role": "user", "content": "写一篇两千字的短文"}]
  }'

提交成功立即返回(此时已按预估费用冻结余额):

{
  "success": true,
  "task_id": "chat_1793456789a1b2c3",
  "status": "running",
  "message": "任务已创建,正在后台处理"
}
异步结果查询说明:任务结果通过 GET /api/user/tasks/<task_id> 查询(返回任务状态、output_data 正文、reasoning_data 思考与 usage),该接口当前使用网页登录态(session cookie)认证,更适合站内或带登录态的客户端;纯 API Key(Bearer)对接建议直接使用同步端点(含流式)。任务失败时同样自动标记 failed 并退款,无需客户端干预。

🧩 WorkBuddy 对接指南

WorkBuddy 是一个 OpenAI 兼容的客户端 / 连接器,通过本平台统一接入各家大模型,并在客户端侧完成多模态消息组装与函数(工具)执行。平台后端已针对 WorkBuddy 的消息形态与调用方式做了完整兼容,按下表配置即可对接,无需额外适配。

一、基础连接配置

「添加模型」字段填写内容
供应商选择 「自定义」(仅支持 OpenAI 兼容协议 API)
接口地址完整端点:https://image.wxfl.mobi/v1/chat/completions
API Key在 API 令牌 页创建,以 sk- 开头;填入后可点「测试连接」验证
模型名称直接填模型名(平台自动路由),或填 渠道ID/模型名(如 25/deepseek-v4.1-flash)强制指定渠道
高级配置按需开启:工具调用、图像输入、显式模式、自定义参数(对应平台的 tools、多模态、reasoning_effort 与采样参数)
WorkBuddy 添加模型(已填好信息)
WorkBuddy「添加模型」各字段填好后的效果(图中密钥仅为示意,请替换为你自己的 sk- 密钥)
接口地址必须填「完整端点」(关键):WorkBuddy 的「接口地址」字段是直接拿来发请求的完整 URL,输入框占位提示即为 https://api.example.com/v1/chat/completions。因此要完整填到 /v1/chat/completions 结尾;不要只填根域名 https://image.wxfl.mobi,也不要只填到 /v1,否则会因地址不完整 / 路径不对而「连不上」。该完整端点已实测:非流式与流式(stream=true)均返回 200,可正常使用。
与标准 OpenAI SDK 的区别:标准 OpenAI Python / Node SDK 的 base_url 填 https://image.wxfl.mobi/v1(SDK 只拼 /chat/completions);而 WorkBuddy 这一字段直接填完整端点 https://image.wxfl.mobi/v1/chat/completions。两者字段语义不同,按客户端实际要求填写。

二、平台已兼容的 WorkBuddy 能力

WorkBuddy 行为平台处理方式
发送多模态 / 分段内容(content 为 list,含 text、image_url)后端统一解析分段数组、提取文本并透传图片,兼容字符串 / 数组 / 空值三种形态,不会再因 list 拼接触发 500
函数调用:下发 tools / tool_choice原样透传,模型返回 tool_calls;工具执行由 WorkBuddy 客户端负责,平台只做指令中转
设置思考强度 reasoning_effort非 GLM 直传;GLM 自动折算为 low/high/max,避免上游 400
采样参数(temperature、top_p、max_tokens、response_format 等)显式给出即原样透传,未传保持上游默认
需要指定特定供给渠道model 加 渠道ID/ 前缀,如 25/deepseek-v4.1-flash

三、对接请求示例

curl -X POST https://image.wxfl.mobi/v1/chat/completions \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "25/deepseek-v4.1-flash",
    "messages": [
      {"role": "system", "content": "你是 WorkBuddy 的助手"},
      {"role": "user", "content": [
        {"type": "text", "text": "读取这张图并调用工具汇总"}
      ]}
    ],
    "stream": true,
    "tools": [
      {"type": "function", "function": {
        "name": "summarize",
        "description": "汇总内容",
        "parameters": {"type": "object", "properties": {"text": {"type": "string"}}}
      }}
    ],
    "tool_choice": "auto",
    "reasoning_effort": "medium"
  }'
鉴权与计费:WorkBuddy 与普通第三方调用使用同一套密钥与计费,按实际 token 用量扣费;调用失败自动退款、释放冻结,函数 / 工具本身的执行结果由 WorkBuddy 回传后再继续对话。若使用异步端点 /v1/chat/completions/async,结果查询需网页登录态,纯连接器模式建议使用同步流式接口。

💰 查询账户余额

GET https://image.wxfl.mobi/api/v1/balance

携带 API 密钥查询该密钥所属账户的余额(元)。

curl https://image.wxfl.mobi/api/v1/balance \
  -H "Authorization: Bearer sk-xxxxxxxx"

# 返回示例
# {"balance": 6.39, "quota": 100000000, "used_quota": 0}

🖼️ 文生图 / 图生图

POST https://image.wxfl.mobi/v1/images/generations

请求参数

参数类型必填说明
modelstring是模型名称,必须是已开放的模型。多档模型用后缀 -1k/-2k/-4k 指定档次;同名模型多渠道时可用渠道前缀 渠道ID/模型名(如 28/firefly-veo31-lite)强制指定渠道;未开放的模型/档次返回 404
promptstring是图片描述提示词
sizestring否图片尺寸/比例,如 1024x1024 或 1:1 / 9:16 / 16:9(自动适配)
ninteger否生成数量,默认 1,仅接受 1–10 的正整数(小数 / 0 / 负数 / 超限 / 非数字均返回 400);费用 = 单价 × n
display_namestring否请勿传入。这是内部字段,即使传了也会被忽略、档次只能用后缀表达
image_urlsarray否图生图专用,参考图 URL 数组,如 ["https://.../a.png"]。自动下载并适配格式;渠道 3 tt-image-2 最多 14 张,其余已验证图片模型最多 16 张
response_formatstring否url 或 b64_json,默认 url

渠道前缀:强制指定供给渠道(图片/视频通用)

和文本接口一致,同名模型多渠道时,在 model 前加 渠道ID/ 即可强制走指定渠道;服务端会自动剥掉前缀,实际转发上游仍使用纯模型名。

# 格式: 渠道ID/模型名
"model": "28/firefly-veo31-lite" # 强制走渠道 28,实际模型 firefly-veo31-lite
"model": "28/gpt-image-2-vip-1k" # 渠道前缀可与分辨率后缀组合

不带前缀时继续按平台自动路由;令牌若已绑定渠道,前缀必须与令牌渠道一致。

文生图请求示例

curl -X POST https://image.wxfl.mobi/v1/videos/generations \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-vip-1k",
    "prompt": "一只戴墨镜的可爱小熊,3D卡通风格",
    "size": "1:1",
    "n": 1,
    "response_format": "url"
  }'

图生图请求示例

curl -X POST https://image.wxfl.mobi/v1/videos/generations \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-vip-1k",
    "prompt": "把这只小熊改成戴墨镜的酷炫风格",
    "size": "1:1",
    "n": 1,
    "image_urls": ["https://example.com/reference.png"]
  }'

gpt-image-2.5 系列请求示例

curl -X POST https://image.wxfl.mobi/v1/videos/generations \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2.5",
    "prompt": "赛博朋克风格的城市夜景,霓虹灯光",
    "size": "1:1",
    "n": 1
  }'
# model 可选:gpt-image-2.5、gpt-image-2.5-flare、gpt-image-2.5-sunburst

异步响应示例(提交成功)

{
  "id": "tsk_img_01M2JCZWNDC4G38HSR049K2TK1",
  "model": "gpt-image-2-vip",
  "status": "pending",
  "progress": 0,
  "object": "generation.task"
}
注意:生图为异步任务,提交后返回 task_id,需用下方查询接口轮询获取最终图片。TT接口(tt-image-2)为同步返回,直接返回图片数据。

🔄 查询异步任务结果

GET https://image.wxfl.mobi/v1/images/generations/{task_id}

用提交时返回的 task_id 轮询任务状态,直到 status 为 completed 即可拿到图片 URL。

请求示例

curl https://image.wxfl.mobi/v1/images/generations/tsk_img_01M2JCZWNDC4G38HSR049K2TK1 \
  -H "Authorization: Bearer sk-xxxxxxxx"

完成响应示例

{
  "id": "tsk_img_01M2JCZWNDC4G38HSR049K2TK1",
  "status": "completed",
  "progress": 100,
  "result": {
    "data": [{"url": "https://your-domain.com/generated/xxx.png"}]
  }
}
轮询建议:每 3-5 秒查询一次,通常 10-60 秒内完成。TT接口同步返回无需查询。

📋 模型列表

GET https://image.wxfl.mobi/v1/models

获取当前已开放的全部模型列表(含文本、图片、视频、音乐)。其中文本模型用于 /v1/chat/completions,其余用于生成接口。

curl https://image.wxfl.mobi/v1/models \
  -H "Authorization: Bearer sk-xxxxxxxx"

🎯 模型可用性与分档计费(重要)

本站采用白名单机制:只有已配置价格的「模型 + 档次」才会开放调用;未配置价格的模型或档次,即使支持也会被拦截,返回 404 model_not_found,不会生成、不会扣费。模型广场与站内 AI 生图也只展示已开放的模型。

三种指定模型 / 档次的方式

方式怎么传示例说明
① 分辨率后缀model 名加 -1k/-2k/-4kgpt-image-2-vip-2k按该分辨率档计价;自动去掉后缀并注入对应分辨率参数
② 渠道前缀model 名加 渠道ID/28/firefly-veo31-lite强制走指定渠道,并按该渠道下的模型/价格记录计价;自动剥掉前缀
③ 单档模型直接用模型名gpt-image-2、tt-image-2该模型只有一个档次,直接调用按其单价计费
规则:多档模型必须在 model 名后加 -1k/-2k/-4k 后缀指定档次。裸调(不带后缀)会返回 404,请务必带档次。
计费:费用 = 该「模型 + 档次」单价 × 张数 n,提交时校验余额,余额不足返回 402 insufficient_quota;生成失败自动退款(平台每 60 秒主动对账一次,失败 / 超时任务自动退款,不依赖你是否轮询)。请勿传 display_name(内部字段,会被忽略且)。

🚦 错误码

HTTP含义处理建议
400请求参数错误(prompt 为空、model 非字符串、n 非 1–10 整数、尺寸/参数非法等)按返回提示修正请求体
401API 密钥无效或缺失(invalid_request_error)检查 Authorization: Bearer 令牌是否正确、是否已启用
402余额不足(insufficient_quota)充值后再调用
404模型或档次未开放(model_not_found)该模型 / 后缀 未开放,更换为已开放项
5xx / 服务端失败服务端报错或超时不扣费或自动退款,可稍后重试或更换模型

💰 模型与价格

模型名(调用时使用)价格说明
gpt-image-20.05元/张标准版
gpt-image-2-plus0.10元/张增强版
gpt-image-2-pro0.15元/张专业版
gpt-image-2-vip-1k0.03元/张1K分辨率
gpt-image-2-vip-2k0.06元/张2K分辨率
gpt-image-2-vip-4k0.10元/张4K分辨率
tt-image-20.08元/张同步返回b64_json
gpt-image-2.50.03元/张2.5 高清版
gpt-image-2.5-flare0.03元/张2.5 Flare
gpt-image-2.5-sunburst0.03元/张2.5 Sunburst
多档模型后缀说明:gpt-image-2-vip 基础模型有 1K/2K/4K 三档,通过 model 名后缀 -1k / -2k / -4k 区分,自动匹配对应价格。直接裸调 gpt-image-2-vip(不带后缀)会返回 404,请务必带档次。
注意:以上为示例价格,实际以模型广场为准;未配置价格的模型/档次不会开放。调用成功才扣费,失败自动退款。

⚠️ 各渠道注意事项

异步接口(需轮询)

同步接口(直接返回)

🐍 Python 调用示例

import requests, time

API_KEY = "sk-xxxxxxxx"
BASE = "https://image.wxfl.mobi/v1"

# 1. 提交生图任务
resp = requests.post(f"{BASE}/images/generations", headers={"Authorization": f"Bearer {API_KEY}"}, json={
    "model": "gpt-image-2-vip-1k",
    "prompt": "一只可爱的小猫",
    "size": "1:1",
    "n": 1
}).json()

task_id = resp["id"]
print("任务已提交:", task_id)

# 2. 轮询结果(TT接口同步返回,跳过此步)
for _ in range(30):
    time.sleep(3)
    r = requests.get(f"{BASE}/images/generations/{task_id}", headers={"Authorization": f"Bearer {API_KEY}"}).json()
    if r["status"] == "completed":
        print("图片URL:", r["result"]["data"][0]["url"])
        break
    print("进度:", r.get("progress", 0), "%")

\U0001f3ac 文生视频 / 图生视频

视频提交接口为 POST /v1/videos/generations,同时兼容部分软件使用的单数路径 POST /v1/video/generations;通过 model 参数指定视频模型即可。默认按同步模式等待任务完成并直接返回完整视频地址;需要异步轮询的客户端可显式传 "async": true 或 "wait": false。

请求地址

POST https://image.wxfl.mobi/v1/videos/generations

参数说明

参数类型必填说明
modelstring是视频模型名称,如 H3-769p-竖-15s;同名模型多渠道时可用 渠道ID/模型名 前缀,如 28/firefly-veo31-lite
promptstring是视频描述,英文效果更佳
imagestring否图生视频专用,参考图 URL

yy 渠道固定参数模型

模型名固定分辨率固定时长参考图上限比例
firefly-veo31-lite1080p8秒最多2张9:16 竖屏 / 16:9 横屏
muse-video-cdn720p10秒最多4张9:16 竖屏 / 16:9 横屏

这两个模型在服务端锁死分辨率和时长;size 仅用于推导竖屏/横屏,多余参考图会被 400 拦截。推荐调用:28/firefly-veo31-lite 或 28/muse-video-cdn。

视频时长统一规则:模型名带 -Ns 的固定按 N 秒锁死;模型名含「多参高动态」的统一锁 15 秒;客户端传 duration/seconds 会被服务端覆盖。数字人仍按上传音频实际时长结算。
多模态 content 兼容:若软件提交 content 数组,网关会自动把文本部分转为 prompt,把 image_url 转为 image_urls,并识别末尾的 =VideoRatio: 9:16。
同步/异步选择:默认 POST 会等待成片并返回完整公网 URL;传 "async": true、"background": true 或 "wait": false 时立即返回 task_id,再通过 GET 轮询。

文生视频请求示例

curl -X POST https://image.wxfl.mobi/v1/videos/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "28/firefly-veo31-lite",
    "prompt": "一艘红色玩具帆船在平静水面上摇晃,固定镜头,自然光",
    "size": "9:16"
  }'

图生视频请求示例

curl -X POST https://image.wxfl.mobi/v1/videos/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "28/muse-video-cdn",
    "prompt": "参考图中的小猫转身看镜头,固定镜头",
    "size": "16:9",
    "image_urls": ["https://example.com/reference.jpg"]
  }'

同步完成响应(默认)

{
  "id": "task_abc123",
  "task_id": "task_abc123",
  "object": "video",
  "status": "completed",
  "progress": 100,
  "url": "https://image.wxfl.mobi/static/generated/video/video_abc.mp4",
  "video_url": "https://image.wxfl.mobi/static/generated/video/video_abc.mp4",
  "content_url": "https://image.wxfl.mobi/static/generated/video/video_abc.mp4",
  "data": [
    {"object": "video", "url": "https://image.wxfl.mobi/static/generated/video/video_abc.mp4"}
  ]
}

异步提交响应(显式 async=true)

{
  "task_id": "task_abc123",
  "status": "RUNNING",
  "model": "firefly-veo31-lite"
}
渠道前缀:视频模型同样支持 渠道ID/模型名,例如 28/firefly-veo31-lite;响应里的 model 会自动显示剥掉前缀后的纯模型名。

\U0001f3b5 文生音乐(AI生歌)

使用 POST /v1/images/generations,指定音乐模型即可;同名模型多渠道时同样可用 渠道ID/模型名 前缀强制指定渠道。音乐生成约需 1-3 分钟。

参数说明

参数类型必填说明
modelstring是音乐模型名称,如 YuE2;同名模型多渠道时可写 渠道ID/YuE2 强制指定渠道
promptstring是歌词内容

请求示例

curl -X POST https://image.wxfl.mobi/v1/images/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YuE2",
    "prompt": "[verse]\n阳光洒满操场\n笑声回荡在角落\n[chorus]\n青春永远不会散场"
  }'

📡 图片 / 视频 / 音乐渠道与模型清单

调用同名模型时,可按上方“渠道ID/模型名”前缀强制走对应渠道;下表为当前配置快照,实时可用模型请以 GET /v1/models 和模型广场为准。

渠道ID渠道名称类型开放模型
1F接口-1-image图片gpt-image-2、gpt-image-2-plus、gpt-image-2-pro
2T接口-1-image图片gpt-image-2-vip-1k/-2k/-4k、gpt-image-2.5-sunburst、gpt-image-2.5-flare
3TT接口-1-image图片tt-image-2
6ag接口-1-image图片gpt-image-2.6、gpt-image-2.5、gpt-image-2.5-flare、gpt-image-2.5-sunburst、gpt-image-2
7jm接口-1-Image图片gpt-image-2.5、image-2.5、gpt-image-2.6-sunburst、gpt-image-2.6-flare
15Agnes图片/视频agnes-image-2.5-flash、agnes-video-2.5-flash
4R音1音乐YuE2
18StepFun音频生成音乐stepaudio-3-gen-preview
5R视频1视频H3-769p-竖-15s、H3-480p-竖/横-15s、H3-800p-竖/横-15s
8R数字人-1视频音乐数字人、H3音乐数字人
9R视频-2视频H3-718p-首尾帧、H3-1K以上-多参高动态打斗、H3-800P/600P-多参高动态
16Au接口1视频H3-9图3音参考
28yy渠道视频muse-video-cdn、firefly-veo31-lite
示例:强制走渠道 28 调用 firefly,请求体里写 "model": "28/firefly-veo31-lite";不带前缀则平台自动路由。

❓ 常见问题

1. 如何获取 API 密钥?

登录后进入 API令牌 页面,点击"创建令牌"即可获取。

2. 提交后多久能拿到图片?

F接口和T接口为异步任务,通常 10-60 秒完成,用 task_id 轮询即可。TT接口同步返回,请求后直接拿到图片。

3. 图生图怎么用?

在请求中加 image_urls 参数(参考图 URL 数组),自动下载并适配格式。渠道 3 tt-image-2 最多 14 张;渠道 6、7 带参考图时由网关自动转 multipart edits;其他已验证模型最多 16 张。Agnes 渠道当前密钥无效,上限待确认。

生成图存储:无论上游返回 URL 还是 b64_json,网关都会把生成图保存到数据盘 /data/unified-api/static/generated/image,最终只返回 https://image.wxfl.mobi/static/generated/image/... 本机地址。

4. 调用失败会扣费吗?

不会,只有成功生成才扣费。轮询到失败会立即自动退款;即使你提交后不主动查询,平台也会每 60 秒主动核对在途任务,对失败或超时(约 30 分钟仍无结果)的任务自动退款,款项原路退回账户余额,可在「余额流水」中查看。

5. 余额不足怎么办?

请联系管理员充值,或在个人中心查看充值方式。余额不足时调用会被拦截并返回错误。

6. 为什么返回 404 model_not_found?

说明该模型或你指定的档次未开放。多档模型请在模型名后加 -1k/-2k/-4k 后缀,调用前可先通过 GET /v1/models 或模型广场确认当前可用的模型与档次。