MigeAPI 文档

MigeAPI 提供统一的 AI 模型调用接口,兼容 OpenAI API 格式,支持文本对话、图像生成、视频生成等能力。

Base URL

https://api.migeapi.com

请求格式

所有请求使用 JSON 格式,请在请求头中设置:

Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

调用模式

MigeAPI 的接口分为两种调用模式:

模式适用接口说明
同步Claude 文本对话 /v1/messagesAnthropic Messages API 格式,请求后直接返回结果
同步GPT/Gemini 文本对话 /v1/chat/completionsOpenAI 兼容格式,请求后直接返回结果
异步图像生成、视频生成请求后返回 task_id,需轮询任务状态获取最终结果

图像和视频生成均为异步任务。完整调用流程如下:

┌─────────────────────────────────────────────────────────────┐
│  1. 提交生成请求 → 获得 task_id                              │
│  2. 使用 task_id 轮询任务状态                                │
│  3. 当 status = "completed" 时,从 result 字段获取下载链接    │
└─────────────────────────────────────────────────────────────┘

图像任务建议轮询间隔 3-5 秒,视频任务建议 10-15 秒。生成链接有效期为 24 小时,请及时下载保存。

认证方式

所有 API 请求需要在 HTTP Header 中携带 API Key 进行认证:

Authorization: Bearer sk-xxxxxxxxxxxxxxxx

API Key 可在控制台中创建和管理。请妥善保管您的 Key,不要在客户端代码中暴露。

文本系列 — 可用模型

Claude 系列(Anthropic)

Claude 系列模型使用 /v1/messages 接口,兼容 Anthropic Messages API 格式。

claude-opus-4-7
Anthropic · 最强推理
claude-opus-4-7-thinking
Anthropic · 深度思考
claude-opus-4-6
Anthropic · 高级推理
claude-opus-4-6-thinking
Anthropic · 深度思考
claude-opus-4-5-20251101
Anthropic · 高级推理
claude-sonnet-4-6
Anthropic · 均衡高效
claude-sonnet-4-6-thinking
Anthropic · 思考模式
claude-sonnet-4-5-20250929
Anthropic · 均衡高效
claude-sonnet-4-5-20250929-thinking
Anthropic · 思考模式
claude-haiku-4-5-20251001
Anthropic · 快速轻量
claude-haiku-4-5-20251001-thinking
Anthropic · 思考模式

GPT / Gemini 系列

以下模型使用 /v1/chat/completions 接口,兼容 OpenAI API 格式。

gpt-5.5
OpenAI · 旗舰模型
gpt-5.4
OpenAI · 高性能
gpt-5.3-codex
OpenAI · 代码专精
gemini-3.1-pro-preview
Google · 最新预览
gemini-3-pro-preview
Google · 稳定版

文本对话接口

Claude 系列 — Anthropic Messages API

POST/v1/messages

Claude 系列模型使用 Anthropic Messages API 格式,需要在请求头中添加 anthropic-version。

请求参数

参数类型必填说明
modelstring是模型名称,见上方 Claude 模型列表
messagesarray是对话消息列表
max_tokensinteger是最大输出 token 数
streamboolean否是否流式输出,默认 false
temperaturenumber否采样温度 0-1,默认 1
systemstring否系统提示词(不放在 messages 中)

请求头

Header必填说明
Authorization是Bearer YOUR_API_KEY
Content-Type是application/json
anthropic-version是2023-06-01

请求示例

cURL
Python
Node.js
curl -X POST https://api.migeapi.com/v1/messages   -H "Authorization: Bearer YOUR_API_KEY"   -H "Content-Type: application/json"   -H "anthropic-version: 2023-06-01"   -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [
      {"role": "user", "content": "你好"}
    ]
  }'
from anthropic import Anthropic

client = Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.migeapi.com"
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "你好"}]
)
print(message.content[0].text)
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  apiKey: "YOUR_API_KEY",
  baseURL: "https://api.migeapi.com"
});

const message = await client.messages.create({
  model: "claude-sonnet-4-6",
  max_tokens: 1024,
  messages: [{ role: "user", content: "你好" }]
});
console.log(message.content[0].text);

响应示例

{
  "id": "msg_20260517155837",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-4-6",
  "content": [
    {
      "type": "text",
      "text": "你好!有什么可以帮助你的吗?"
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 9,
    "output_tokens": 15,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0
  }
}

GPT / Gemini 系列 — OpenAI 兼容接口

POST/v1/chat/completions

GPT 和 Gemini 系列模型使用 OpenAI Chat Completions API 格式。

请求参数

参数类型必填说明
modelstring是模型名称
messagesarray是对话消息列表
streamboolean否是否流式输出,默认 false
temperaturenumber否采样温度 0-2,默认 1
max_tokensinteger否最大输出 token 数
top_pnumber否核采样参数,默认 1

请求示例

cURL
Python
Node.js
curl -X POST https://api.migeapi.com/v1/chat/completions   -H "Authorization: Bearer YOUR_API_KEY"   -H "Content-Type: application/json"   -d '{
    "model": "gpt-5.5",
    "messages": [
      {"role": "user", "content": "你好"}
    ],
    "max_tokens": 1024
  }'
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.migeapi.com/v1"
)

response = client.chat.completions.create(
    model="gpt-5.5",
    messages=[{"role": "user", "content": "你好"}],
    max_tokens=1024
)
print(response.choices[0].message.content)
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: "YOUR_API_KEY",
  baseURL: "https://api.migeapi.com/v1"
});

const response = await client.chat.completions.create({
  model: "gpt-5.5",
  messages: [{ role: "user", content: "你好" }],
  max_tokens: 1024
});
console.log(response.choices[0].message.content);

响应示例

{
  "id": "chatcmpl-xxx",
  "object": "chat.completion",
  "created": 1700000000,
  "model": "gpt-5.5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "你好!有什么可以帮助你的吗?"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 15,
    "total_tokens": 25
  }
}

图像系列 — 可用模型

以下模型使用同一套接口和请求参数,只需更换 model 字段即可切换。

模型说明计费方式
gpt-image-2通用图像生成按张
gpt-image-2-official稳定性最佳,适合批量生产按实际用量
gpt-image-2.5-ext2.5 系列 · 扩展按实际用量
gpt-image-2.5-flare2.5 系列 · 快速按实际用量
gpt-image-2.5-sunburst2.5 系列 · 高画质按实际用量
blt-gpt-image-2经济版,单价最低按张
gemini-3-pro-image-previewGoogle · 图像生成按张
gemini-3.1-flash-image-previewGoogle · 快速图像生成按张

两种计费方式的区别

计费方式含义省钱建议
按张每次调用固定单价,与实际生成长度无关—
按实际用量按本次请求实际消耗计算,随尺寸、画质、生成数量浮动不传 resolution、quality、n 时费用最低

各模型具体单价以控制台「价格」页为准。

图像生成接口

POST/v1/images/generations?async=true

异步接口 — 此接口不会直接返回图片,而是返回一个 task_id。您需要使用该 task_id 轮询查询接口,直到任务完成后获取图片下载链接。生成的图像链接有效期 24 小时,请及时保存。

请求参数

所有图像模型共用以下参数。

参数类型必填说明
modelstring是模型名称,见上方可用模型
promptstring是图像描述文本
sizestring否尺寸比例:1:1 / 2:3 / 3:2 / 16:9 / 9:16
resolutionstring否分辨率:1024(默认)/ 2k / 4k
qualitystring否画质档位:low / medium / high / xhigh / max;不传为自动
ninteger否生成数量:1 / 2 / 4,默认 1
image_urlsarray否参考图像 URL 列表,最多 5 张,单张不超过 10MB

resolution、quality、n 都会影响费用与耗时,都可不传。仅 model 与 prompt 为必填,最省事的调用方式是只传这两个。

请求示例

cURL
Python
Node.js
curl -X POST https://api.migeapi.com/v1/images/generations?async=true \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2",
    "prompt": "一只在星空下奔跑的白色柴犬,赛博朋克风格",
    "size": "16:9",
    "resolution": "2k",
    "n": 1
  }'
import requests

url = "https://api.migeapi.com/v1/images/generations?async=true"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {
    "model": "gpt-image-2",
    "prompt": "一只在星空下奔跑的白色柴犬,赛博朋克风格",
    "size": "16:9",
    "resolution": "2k",
    "n": 1
}

response = requests.post(url, json=payload, headers=headers)
print(response.json())
const response = await fetch("https://api.migeapi.com/v1/images/generations?async=true", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "gpt-image-2",
    prompt: "一只在星空下奔跑的白色柴犬,赛博朋克风格",
    size: "16:9",
    resolution: "2k",
    n: 1
  })
});
const data = await response.json();
console.log(data);

响应示例

提交成功后返回任务 ID,注意字段在顶层,不是包在 data 数组里:

{
  "id": "task_01K8SGYNNNVBQTXNR4MM964S7K",
  "task_id": "task_01K8SGYNNNVBQTXNR4MM964S7K",
  "status": "pending",
  "model": "gpt-image-2"
}

取 task_id 后,用下面的查询接口轮询结果。

查询图像任务

GET/v1/images/tasks/{task_id}

查询图像生成任务的状态和结果。

请求示例

curl https://api.migeapi.com/v1/images/tasks/task_01K8SGYNNNVBQTXNR4MM964S7K \
  -H "Authorization: Bearer YOUR_API_KEY"

响应示例(已完成)

{
  "code": "success",
  "message": "",
  "data": {
    "task_id": "task_01K8SGYNNNVBQTXNR4MM964S7K",
    "status": "SUCCESS",
    "progress": "100%",
    "result_url": "https://api.migeapi.com/v1/videos/task_01K8SGYNNNVBQTXNR4MM964S7K/content?expires=1763174708&sign=9f2c8e...",
    "fail_reason": "",
    "submit_time": 1763088289,
    "finish_time": 1763088308
  }
}

响应字段

字段类型说明
statusstringSUBMITTED / IN_PROGRESS / SUCCESS / FAILURE,全大写
progressstring进度,形如 "100%"(带百分号的字符串)
result_urlstring生成结果下载地址,位于 data 顶层;status 为 SUCCESS 时才有值
fail_reasonstring失败原因,status 为 FAILURE 时才有值

请注意:status 的值是 SUCCESS 而不是 completed,code 是字符串 "success" 而不是数字 200。这两点是最容易踩的坑。

完整调用流程示例(Python)

以下示例展示了从提交图像生成请求到轮询获取结果的完整异步流程,可直接复制运行:

import requests
import time

API_KEY  = "YOUR_API_KEY"
BASE_URL = "https://api.migeapi.com"
headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

# 第一步:提交图像生成请求(?async=true 不能省)
payload = {
    "model": "gpt-image-2",
    "prompt": "一只在星空下奔跑的白色柴犬,赛博朋克风格",
    "size": "16:9",
    "resolution": "2k",
    "n": 1
}
resp = requests.post(f"{BASE_URL}/v1/images/generations?async=true",
                     json=payload, headers=headers, timeout=60).json()
task_id = resp["task_id"]          # 顶层字段,不是 data[0]['task_id']
print(f"任务已提交: {task_id}")

# 第二步:轮询任务状态(建议间隔 3-5 秒)
while True:
    result = requests.get(f"{BASE_URL}/v1/images/tasks/{task_id}",
                          headers=headers, timeout=30).json()
    data = result["data"]
    status = data["status"]        # SUBMITTED / IN_PROGRESS / SUCCESS / FAILURE
    print(f"状态: {status}, 进度: {data.get('progress')}")

    if status == "SUCCESS":
        # 第三步:取结果(链接有效期 24 小时,请及时转存)
        print(f"生成完成: {data['result_url']}")   # 顶层 result_url
        break
    elif status == "FAILURE":
        print(f"生成失败: {data.get('fail_reason')}")
        break

    time.sleep(4)

切换模型只需改 payload["model"],其余代码完全一样。

视频系列 — 可用模型

所有视频模型都用同一个接口 POST /v1/videos 提交,返回任务 ID 后轮询取结果。不同模型接受的参数不一样,务必对照下面两张表。

模型名里带 global 的是宽审核线路(走海外站),真人素材和敏感提示词的通过率明显更高;不带 global 的走国内站,审核更严。两者的调用方式完全一样。

grok-video-3
xAI · 视频生成
grok-video-1.5
xAI · 视频生成
veo3.1-fast
Google · 快速生成
veo3.1-lite
Google · 轻量版

Seedance 2.0 系列(字节跳动)

按「线路 × 档位 × 输入模式」拆成独立模型名。档位决定画质与价格,输入模式决定你能喂什么素材:

seedance-2.0-global-standard-t2v
海外宽审核 · 标准 · 文生视频
seedance-2.0-global-standard-i2v
海外宽审核 · 标准 · 图生视频(首尾帧)
seedance-2.0-global-standard-multi
海外宽审核 · 标准 · 多模态参考
seedance-2.0-global-fast-t2v
海外宽审核 · Fast · 文生视频
seedance-2.0-global-fast-i2v
海外宽审核 · Fast · 图生视频(首尾帧)
seedance-2.0-global-fast-multi
海外宽审核 · Fast · 多模态参考
seedance-2.0-global-mini-t2v
海外宽审核 · Mini · 文生视频
seedance-2.0-global-mini-i2v
海外宽审核 · Mini · 图生视频(首尾帧)
seedance-2.0-global-mini-multi
海外宽审核 · Mini · 多模态参考

三种输入模式的区别

后缀喂什么模型拿它做什么
t2v只有 prompt,不给素材从零生成
i2v顶层 images 数组,1~2 张第 1 张是首帧,第 2 张是尾帧 —— 图是时间轴上的锚点
multimetadata.content 数组:图 ≤9 张、视频 ≤3 段、音频 ≤3 段,至少给 1 个素材是参考资料(角色、风格、动作、口型),不规定起止

三个后缀不能互相替代:multi 强制要求至少一份素材(做不了纯文生视频),且只认 image1~image9 不认首尾帧;i2v 必须有首帧图。选错模型会直接报错或静默忽略你的素材。

视频生成接口

POST/v1/videos

异步接口 —— 不直接返回视频,而是返回一个任务 ID。拿到 ID 后轮询「查询视频任务」直到终态,再从 result_url 下载成片。生成通常 1~5 分钟。

请求参数

参数类型必填说明
modelstring是模型名,见上方模型表。名字后缀决定输入模式
promptstringt2v / multi 必填
i2v 可选
视频描述文本。多模态场景可用 @Image 1、@Video 1 指代第几个素材
secondsstring否时长。字符串,取 "4"~"15",或 "-1" 让模型自选。默认 "5"
durationinteger否时长的整数写法,等价于 seconds(部分老模型用这个)
resolutionstring否分辨率。Seedance 2.0 见下方专用表;其他模型常见 720p / 1080p
imagesarrayi2v 必填图片 URL 数组。只传 1 张 = 首帧;2 张 = 首帧 + 尾帧。单数字段 image 也接受
metadataobject否生成参数集合,见下。字段会原样透传给上游

Seedance 2.0 专用参数

字段取值说明
resolution480p / 720p / 1080p / 2k / 4k / native1080p / native4k默认 720p。1080p 及以上是超分档,另收附加费。native1080p / native4k 仅 standard 档支持
seconds"4"~"15" 或 "-1"-1 = 让模型自选时长
metadata.ratioadaptive / 16:9 / 4:3 / 1:1 / 3:4 / 9:16 / 21:9默认 adaptive(自适应)
metadata.seed-1 ~ 2147483647默认 -1(随机)
metadata.generate_audiotrue / false是否生成配音音效,默认 true
metadata.return_last_frametrue / false是否额外返回最后一帧图片,默认 false
metadata.content素材数组仅 multi 模型。每项形如 {"type":"image_url","image_url":{"url":"..."}},type 可为 image_url / video_url / audio_url

素材大小限制:图片 ≤30MB;视频 ≤50MB;音频 ≤50MB。传了 metadata.content 就会整体覆盖顶层 images,多模态场景请把图片也写进 content 数组,不要再单独传 images。

请求示例

cURL
Python
Node.js
# 文生视频
curl -X POST https://api.migeapi.com/v1/videos \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-global-fast-t2v",
    "prompt": "一只白色纸飞机在窗台上缓缓旋转,阳光斜照,写实风格",
    "seconds": "5",
    "metadata": { "resolution": "720p" }
  }'

# 图生视频(首帧 → 视频)
curl -X POST https://api.migeapi.com/v1/videos \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-global-fast-i2v",
    "prompt": "镜头缓慢推近",
    "images": ["https://your-cdn.example.com/first-frame.png"],
    "seconds": "5",
    "metadata": { "resolution": "720p" }
  }'

# 多模态参考(把视频里的人换成图里的人)
curl -X POST https://api.migeapi.com/v1/videos \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-global-standard-multi",
    "prompt": "把 @Video 1 中的人物替换成 @Image 1 中的人物",
    "seconds": "5",
    "metadata": {
      "resolution": "1080p",
      "content": [
        { "type": "image_url", "image_url": { "url": "https://your-cdn.example.com/person.png" } },
        { "type": "video_url", "video_url": { "url": "https://your-cdn.example.com/source.mp4" } }
      ]
    }
  }'
import requests

url = "https://api.migeapi.com/v1/videos"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {
    "model": "seedance-2.0-global-fast-t2v",
    "prompt": "一只白色纸飞机在窗台上缓缓旋转,阳光斜照,写实风格",
    "seconds": "5",                      # 注意是字符串
    "metadata": {"resolution": "720p"}
}

response = requests.post(url, json=payload, headers=headers)
print(response.json())
const response = await fetch("https://api.migeapi.com/v1/videos", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "seedance-2.0-global-fast-t2v",
    prompt: "一只白色纸飞机在窗台上缓缓旋转,阳光斜照,写实风格",
    seconds: "5",                        // 注意是字符串
    metadata: { resolution: "720p" }
  })
});
const data = await response.json();
console.log(data);

响应示例

提交成功返回 HTTP 200,body 是一个 JSON 对象(注意:不是 {"code":200,"data":[...]} 那种包裹结构)。字段名在不同上游渠道下略有差异,取 id 或 task_id 任意一个即可:

{
  "id": "task_WZ1y4kancyYEOGydWAaiCyeMOqIbAdEq",
  "task_id": "task_WZ1y4kancyYEOGydWAaiCyeMOqIbAdEq",
  "status": "pending",
  "model": "seedance-2.0-global-fast-t2v"
}

稳妥的取值写法:task_id = resp["id"] or resp["task_id"]

查询视频任务

GET/v1/video/generations/{task_id}

推荐用这个接口。它对所有渠道、所有模型返回同一种结构,字段齐全且有 fail_reason,是最省事的轮询方式。

另有一个 OpenAI 风格的 GET /v1/videos/{task_id},但它的返回结构依渠道而变(有的渠道只返回 {"id":"..."}),除非你确实需要 OpenAI 格式,否则不要用它。

请求示例

curl https://api.migeapi.com/v1/video/generations/task_WZ1y4kancyYEOGydWAaiCyeMOqIbAdEq \
  -H "Authorization: Bearer YOUR_API_KEY"

响应示例

{
  "code": "success",
  "message": "",
  "data": {
    "task_id": "task_WZ1y4kancyYEOGydWAaiCyeMOqIbAdEq",
    "action": "generate",
    "status": "SUCCESS",
    "fail_reason": "",
    "result_url": "https://api.migeapi.com/v1/videos/task_WZ1y4kancyYEOGydWAaiCyeMOqIbAdEq/content?expires=1792595215&sign=6e0ab501b1a718eb051344471e4a376077f2a7e4a1dda9c9b81ff4b9824ac192",
    "submit_time": 1791989009,
    "start_time": 1791989024,
    "finish_time": 1791989061,
    "progress": "100%"
  }
}

响应字段

字段说明
status任务状态,见下方状态表。SUCCESS / FAILURE 是终态
progress进度字符串,如 "42%"
result_url成片下载地址(仅成功后存在)。直接 GET 这个地址即可下载,不需要再带 API Key(地址里已带签名)
fail_reason失败原因(仅失败时有值)
submit_time / start_time / finish_time提交 / 开始 / 完成时刻的 Unix 秒

成片链接有效期 7 天,过期后需要重新生成。链接指向站内代理地址,不会暴露上游,也无需鉴权。

完整调用流程示例(Python)

从提交到下载的完整异步流程,可直接运行:

import time
import requests

API_KEY  = "YOUR_API_KEY"
BASE_URL = "https://api.migeapi.com"
headers  = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json",
}

# ── 第一步:提交 ──────────────────────────────────────────────
payload = {
    "model": "seedance-2.0-global-fast-t2v",
    "prompt": "一只白色纸飞机在窗台上缓缓旋转,阳光斜照,写实风格",
    "seconds": "5",                 # 字符串!不是数字
    "metadata": {"resolution": "720p"},
}
resp = requests.post(f"{BASE_URL}/v1/videos", json=payload, headers=headers)
resp.raise_for_status()
body = resp.json()

# 不同渠道返回的字段名不同,两个都试一下
task_id = body.get("id") or body.get("task_id")
if not task_id:
    raise RuntimeError(f"提交失败,返回内容:{body}")
print(f"任务已提交: {task_id}")

# ── 第二步:轮询(视频较慢,建议间隔 10 秒)────────────────────
while True:
    time.sleep(10)
    r = requests.get(f"{BASE_URL}/v1/video/generations/{task_id}", headers=headers)
    r.raise_for_status()
    data = r.json()["data"]

    status = data["status"]
    print(f"状态: {status}  进度: {data.get('progress', '')}")

    if status == "SUCCESS":
        video_url = data["result_url"]
        print(f"生成完成: {video_url}")

        # ── 第三步:下载(链接自带签名,无需 API Key)──────────
        video = requests.get(video_url, timeout=300).content
        with open("out.mp4", "wb") as f:
            f.write(video)
        print(f"已保存 out.mp4({len(video)} 字节)")
        break

    if status == "FAILURE":
        print(f"生成失败: {data.get('fail_reason', '未知原因')}")
        break

任务状态说明

图像和视频生成都是异步任务,提交后需轮询查询结果。状态值大小写和写法在不同接口之间不一样,不要混用。

含义通用查询接口
/v1/video/generations/{id}
/v1/images/tasks/{id}
OpenAI 兼容接口
/v1/videos/{id}
未开始 / 排队 / 已提交NOT_START / SUBMITTED / QUEUEDqueued
处理中IN_PROGRESSin_progress
已完成SUCCESScompleted
已失败FAILUREfailed

轮询时只判断 SUCCESS 和 FAILURE 两个终态,其余任何值都继续等待即可(不要按具体中间状态写分支,上游可能新增状态值)。任务失败时系统会自动退还预扣费用,不会产生扣费。

建议轮询间隔:图像任务 3~5 秒,视频任务 10~15 秒。视频任务耗时通常 1~5 分钟,请把超时设得宽松一些(建议 ≥10 分钟)。

账号与余额

登录控制台可查看账号余额、使用记录和 API Key 管理。

如需充值或有其他问题,请联系管理员。