MigeAPI 文档
MigeAPI 提供统一的 AI 模型调用接口,兼容 OpenAI API 格式,支持文本对话、图像生成、视频生成等能力。
Base URL
https://api.migeapi.com
请求格式
所有请求使用 JSON 格式,请在请求头中设置:
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
调用模式
MigeAPI 的接口分为两种调用模式:
| 模式 | 适用接口 | 说明 |
|---|---|---|
| 同步 | 文本对话 /v1/chat/completions | 请求后直接返回结果(或流式推送),无需轮询 |
| 异步 | 图像生成、视频生成 | 请求后返回 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,不要在客户端代码中暴露。
文本系列 — 可用模型
带 -thinking 后缀的模型支持深度思考能力,适合复杂推理任务。
文本对话接口
POST/v1/chat/completions
兼容 OpenAI Chat Completions API 格式,支持流式和非流式响应。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 是 | 模型名称,见上方模型列表 |
| messages | array | 是 | 对话消息列表 |
| stream | boolean | 否 | 是否流式输出,默认 false |
| temperature | number | 否 | 采样温度 0-2,默认 1 |
| max_tokens | integer | 否 | 最大输出 token 数 |
| top_p | number | 否 | 核采样参数,默认 1 |
请求示例
curl -X POST https://api.migeapi.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"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="claude-sonnet-4-6",
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: "claude-sonnet-4-6",
messages: [{ role: "user", content: "你好" }],
max_tokens: 1024
});
console.log(response.choices[0].message.content);
响应示例
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"created": 1700000000,
"model": "claude-sonnet-4-6",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!有什么可以帮助你的吗?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 15,
"total_tokens": 25
}
}
图像系列 — 可用模型
图像生成接口
POST/v1/images/generations
异步接口 — 此接口不会直接返回图片,而是返回一个 task_id。您需要使用该 task_id 轮询查询接口,直到任务完成后获取图片下载链接。生成的图像链接有效期 24 小时,请及时保存。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 是 | 模型名称:gpt-image-2 / gemini-3-pro-image-preview / gemini-3.1-flash-image-preview |
| prompt | string | 是 | 图像描述文本 |
| size | string | 否 | 尺寸比例:1:1 / 2:3 / 3:2 / 16:9 / 9:16 |
| n | integer | 否 | 生成数量:1、2、4,默认 1 |
| resolution | string | 否 | 分辨率:1024(默认)/ 2k / 4k |
| image_urls | array | 否 | 参考图像 URL 列表,最多 5 张,单张不超过 10MB |
请求示例
curl -X POST https://api.migeapi.com/v1/images/generations \
-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"
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", {
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);
响应示例
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01K8SGYNNNVBQTXNR4MM964S7K"
}
]
}
查询图像任务
GET/v1/images/tasks/{task_id}
查询图像生成任务的状态和结果。
请求示例
curl https://api.migeapi.com/v1/images/tasks/task_01K8SGYNNNVBQTXNR4MM964S7K \
-H "Authorization: Bearer YOUR_API_KEY"
响应示例(已完成)
{
"code": 200,
"data": {
"id": "task_01K8SGYNNNVBQTXNR4MM964S7K",
"status": "completed",
"progress": 100,
"result": {
"images": [
{
"url": ["https://example.com/generated-image.png"],
"expires_at": 1763174708
}
]
},
"created": 1763088289,
"completed": 1763088308,
"estimated_time": 60,
"actual_time": 19
}
}
完整调用流程示例(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"
}
# 第一步:提交图像生成请求
payload = {
"model": "gpt-image-2",
"prompt": "一只在星空下奔跑的白色柴犬,赛博朋克风格",
"size": "16:9",
"resolution": "2k",
"n": 1
}
resp = requests.post(f"{BASE_URL}/v1/images/generations", json=payload, headers=headers)
task_id = resp.json()["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).json()
status = result["data"]["status"]
progress = result["data"].get("progress", 0)
print(f"状态: {status}, 进度: {progress}%")
if status == "completed":
# 第三步:获取结果(链接有效期 24 小时)
image_url = result["data"]["result"]["images"][0]["url"][0]
print(f"生成完成: {image_url}")
break
elif status == "failed":
print(f"生成失败: {result['data'].get('error', '未知错误')}")
break
time.sleep(5)
视频系列 — 可用模型
视频生成接口
POST/v1/videos
异步接口 — 此接口不会直接返回视频,而是返回一个 task_id。您需要使用该 task_id 轮询查询接口,直到任务完成后获取视频下载链接。视频生成通常需要 1-5 分钟,生成的链接有效期 24 小时。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| model | string | 是 | 模型名称 |
| prompt | string | 是 | 视频描述文本 |
| duration | integer | 否 | 视频时长(秒),默认模型决定 |
| aspect_ratio | string | 否 | 画面比例:16:9(横屏)/ 9:16(竖屏) |
| resolution | string | 否 | 分辨率:720p(默认)/ 1080p |
| image_urls | array | 否 | 参考图像 URL,用于图生视频 |
请求示例
curl -X POST https://api.migeapi.com/v1/videos \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "veo3.1-fast",
"prompt": "海豚在碧蓝海洋中跳跃,阳光洒在水面上",
"duration": 8,
"aspect_ratio": "16:9"
}'
import requests
url = "https://api.migeapi.com/v1/videos"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"model": "veo3.1-fast",
"prompt": "海豚在碧蓝海洋中跳跃,阳光洒在水面上",
"duration": 8,
"aspect_ratio": "16:9"
}
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: "veo3.1-fast",
prompt: "海豚在碧蓝海洋中跳跃,阳光洒在水面上",
duration: 8,
aspect_ratio: "16:9"
})
});
const data = await response.json();
console.log(data);
响应示例
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01K9S419324DREZFBWNSVXYR6H"
}
]
}
查询视频任务
GET/v1/videos/{task_id}
查询视频生成任务的状态和结果。
请求示例
curl https://api.migeapi.com/v1/videos/task_01K9S419324DREZFBWNSVXYR6H \
-H "Authorization: Bearer YOUR_API_KEY"
响应示例(已完成)
{
"code": 200,
"data": {
"id": "task_01K9S419324DREZFBWNSVXYR6H",
"status": "completed",
"progress": 100,
"result": {
"videos": [
{
"url": ["https://example.com/generated-video.mp4"],
"expires_at": 1762940095
}
]
},
"created": 1762853430,
"completed": 1762853695,
"estimated_time": 600,
"actual_time": 265
}
}
完整调用流程示例(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"
}
# 第一步:提交视频生成请求
payload = {
"model": "veo3.1-fast",
"prompt": "海豚在碧蓝海洋中跳跃,阳光洒在水面上",
"duration": 8,
"aspect_ratio": "16:9"
}
resp = requests.post(f"{BASE_URL}/v1/videos", json=payload, headers=headers)
task_id = resp.json()["data"][0]["task_id"]
print(f"任务已提交: {task_id}")
# 第二步:轮询任务状态(视频生成较慢,建议间隔 10-15 秒)
while True:
result = requests.get(f"{BASE_URL}/v1/videos/{task_id}", headers=headers).json()
status = result["data"]["status"]
progress = result["data"].get("progress", 0)
print(f"状态: {status}, 进度: {progress}%")
if status == "completed":
# 第三步:获取结果(链接有效期 24 小时)
video_url = result["data"]["result"]["videos"][0]["url"][0]
print(f"生成完成: {video_url}")
break
elif status == "failed":
print(f"生成失败: {result['data'].get('error', '未知错误')}")
break
time.sleep(15)
任务状态说明
图像和视频生成均为异步任务,提交后需轮询查询结果。
| 状态 | 说明 |
|---|---|
| submitted | 任务已提交,等待处理 |
| pending | 任务排队中 |
| processing | 任务处理中 |
| completed | 任务完成,可获取结果 |
| failed | 任务失败,查看 error 字段 |
建议轮询间隔:图像任务 3-5 秒,视频任务 10-15 秒。
账号与余额
登录控制台可查看账号余额、使用记录和 API Key 管理。
如需充值或有其他问题,请联系管理员。