Koozee API 接入文档
版本:V1 | 更新日期:2026-10-26
Koozee 提供服装试穿、图像编辑、图像生成、视频生成、画质增强及图像识别等 49 项能力。本文介绍 API 鉴权、请求参数、结果查询,以及 Python、Go、PHP、Java 接入示例。
示例中的媒体 URL、凭证和输出尺寸占位符需替换为实际值。调用前请确认账号已开通相应能力。
目录
接入准备
获取 AK 和 SK
- 登录 MeituHub 控制台,确认当前账号已开通 API 调用权限。
- 获取当前账号的 API Key(AK)和 API Secret(SK)。在展示“当前账号认证凭据”的 API 文档页面中,可直接复制这两个值;如未展示可用凭证,请联系平台支持。
- 在服务端配置以下环境变量:
export MEITU_OPENAPI_ACCESS_KEY='YOUR_ACCESS_KEY'
export MEITU_OPENAPI_SECRET_KEY='YOUR_SECRET_KEY'SK 仅用于服务端签名,请勿放入浏览器代码、移动端、公开仓库或日志。
请求签名
提交和查询请求均需使用 AK/SK 签名。使用官方签名 SDK 对完整 URL、HTTP 方法、请求头和请求体进行签名,并发送 SDK 生成的请求;签名后请勿修改请求体。
签名规则见 开放平台接口签名。
提交任务
POST https://openapi.meitu.com/api/v1/sdk/sync/push
Content-Type: application/json请求参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| task | string | 是 | 能力标识,取值见能力列表。 |
| task_type | string | 是 | 固定为 formula。 |
| init_images | object[] | 是 | 输入媒体列表。媒体类型、数量及顺序见各能力说明;无需素材时传 []。 |
| params | string | 是 | 能力参数的 JSON 字符串,结构见下文。 |
| sync_timeout | integer | 否 | 同步等待时间,单位秒;示例使用 30 秒。 |
媒体输入
init_images 中的每个元素使用以下结构:
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}| 字段 | 类型 | 说明 |
|---|---|---|
| url | string | 可访问的媒体 URL。 |
| profile.version | string | 固定为 v1。 |
| profile.media_profiles.media_data_type | string | 固定为 url。 |
按能力说明依次传入图片、视频或音频。多图能力的素材顺序具有业务含义,请勿交换服装图与模特图、原图与 mask,或首帧与尾帧的位置。
能力参数
将参数放入 parameter 对象,再将整个对象序列化为 params 字符串。以泳衣内衣试穿为例,序列化前的对象为:
{
"parameter": {
"cloth_type_list": "cloth"
}
}请求体中的 params 字段为:
{
"params": "{\"parameter\":{\"cloth_type_list\":\"cloth\"}}"
}无额外参数时,params 使用字符串 {"parameter":{}}。必填字段须完整提供,枚举值区分大小写。
返回结果
返回字段
| 字段 | 类型 | 说明 |
|---|---|---|
| status | integer | 任务状态,见任务状态表。 |
| task_id | string | 任务 ID,用于后续查询。 |
| progress | number | 任务进度,通常为 0–1。 |
| result | object / null | 任务结果;未完成或失败时可能为空。 |
| result.id | string | 结果关联的任务 ID。 |
| result.media_info_list | object[],可选 | 输出媒体列表,可包含一个或多个结果。 |
| result.media_info_list[].media_data | string | 输出媒体 URL。 |
| result.media_info_list[].media_profiles | object | 媒体描述;URL 结果的 media_data_type 为 url。 |
| result.media_info_list[].media_extra | object / null,可选 | 媒体附加信息。 |
| result.parameters | JSON 值,可选 | 能力相关的附加业务数据。 |
任务状态
| status | 含义 | 处理方式 |
|---|---|---|
| -1 | 未找到任务 | 检查任务 ID 和查询有效期。 |
| 0 | 已创建 | 继续查询。 |
| 1 | 执行中 | 继续查询。 |
| 2 | 执行失败 | 根据错误信息处理。 |
| 9 | 同步等待超时 | 保存任务 ID,继续查询。 |
| 10 | 执行成功 | 读取 result。 |
HTTP 200 仅表示 HTTP 请求已完成。请结合 status 判断任务是否成功,不要仅以 progress=1 或存在 task_id 作为成功依据。
成功示例
{
"progress": 1,
"result": {
"id": "example-task-id",
"media_info_list": [
{
"media_data": "https://example.com/result.jpg",
"media_extra": {},
"media_profiles": {
"media_data_type": "url"
}
}
],
"parameters": {}
},
"status": 10,
"task_id": "example-task-id"
}图片和视频结果均通过 media_info_list 返回。请按返回列表处理全部媒体,并及时下载保存结果文件。
同步等待超时示例
{
"progress": 0,
"result": {
"id": "example-task-id"
},
"status": 9,
"task_id": "example-task-id"
}status=9 不代表任务执行失败。使用返回的 task_id 查询后续结果。
失败示例
{
"progress": 0,
"result": null,
"status": 2,
"task_id": "example-task-id"
}鉴权失败、限流或参数错误时,响应可能不包含 task_id。请同时检查 HTTP 状态和错误信息。通用错误码见 API 错误码。
查询任务
GET https://openapi.meitu.com/api/v1/sdk/status?task_id=example-task-id| 参数 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| task_id | Query | string | 是 | 提交任务后返回的任务 ID。 |
使用有效 AK/SK 对包含 task_id 的完整 URL 和 GET 方法签名,请求体为空字符串。查询返回的任务字段与状态含义见“返回结果”。
建议逐步延长查询间隔,例如 2 秒、5 秒、10 秒,并设置业务超时时间。任务 24 小时后过期,请及时查询和保存结果。
若提交请求发生网络超时且未获得 task_id,请先核实任务是否已创建,避免直接重复提交。
多语言接入示例
四种语言示例共用 request.json:从对应能力章节复制完整请求体,替换媒体 URL 和其他占位值后保存为该文件。
SDK 准备
| 语言 | 官方接入文档 | 依赖 |
|---|---|---|
| Python | Python SDK | sign_sdk、requests |
| Go | Go SDK | github.com/mtlab/api/signer |
| PHP | PHP SDK | 官方 signer.php、cURL 扩展,PHP 7.3+ |
| Java | Java SDK | 官方签名 SDK,JDK 11+ |
Python 签名包可通过 SDK 下载地址 获取。解压后将 sign_sdk 加入导入路径,并安装 requests:
python -m pip install requests运行配置
提交任务:
export MEITU_OPENAPI_ACTION='push'
export MEITU_REQUEST_FILE='request.json'查询任务时,改为以下配置:
export MEITU_OPENAPI_ACTION='status'
export MEITU_TASK_ID='example-task-id'每次运行仅执行所选操作。示例不会自动重试提交请求;获取响应后,按任务状态处理结果。
Python
保存为 client.py,运行 python client.py:
import json
import os
from pathlib import Path
from urllib.parse import urlencode
import requests
from sign_sdk import sign
HOST = "openapi.meitu.com"
ACTION = os.environ.get("MEITU_OPENAPI_ACTION", "push")
ak = os.environ["MEITU_OPENAPI_ACCESS_KEY"]
sk = os.environ["MEITU_OPENAPI_SECRET_KEY"]
if not ak or not sk:
raise ValueError("Missing AK/SK")
if ACTION == "push":
payload = json.loads(Path(os.environ.get("MEITU_REQUEST_FILE", "request.json")).read_text(encoding="utf-8"))
if not isinstance(payload.get("params"), str):
raise ValueError("params must be a JSON string")
json.loads(payload["params"])
method = "POST"
url = f"https://{HOST}/api/v1/sdk/sync/push"
body = json.dumps(payload, ensure_ascii=False, separators=(",", ":"))
elif ACTION == "status":
task_id = os.environ["MEITU_TASK_ID"]
if not task_id:
raise ValueError("Missing task_id")
method = "GET"
url = f"https://{HOST}/api/v1/sdk/status?" + urlencode({"task_id": task_id})
body = ""
else:
raise ValueError("MEITU_OPENAPI_ACTION must be push or status")
headers = {"Content-Type": "application/json", sign.HeaderHost: HOST}
signed_request = sign.Signer(ak, sk).sign(url, method, headers, body)
with requests.Session() as session:
response = session.send(signed_request, timeout=(10, 100), verify=True, allow_redirects=False)
print("HTTP", response.status_code)
print(response.text)
response.raise_for_status()Go
保存为 main.go,在已引入签名 SDK 的 Go 模块中运行 go run main.go:
package main
import (
"encoding/json"
"fmt"
"io"
"net/http"
"net/url"
"os"
"time"
"github.com/mtlab/api/signer"
)
func main() {
if err := run(); err != nil {
fmt.Fprintln(os.Stderr, err)
os.Exit(1)
}
}
func run() error {
ak, sk := os.Getenv("MEITU_OPENAPI_ACCESS_KEY"), os.Getenv("MEITU_OPENAPI_SECRET_KEY")
if ak == "" || sk == "" {
return fmt.Errorf("missing AK/SK")
}
method, endpoint, body := http.MethodPost, "https://openapi.meitu.com/api/v1/sdk/sync/push", ""
switch os.Getenv("MEITU_OPENAPI_ACTION") {
case "", "push":
filename := os.Getenv("MEITU_REQUEST_FILE")
if filename == "" {
filename = "request.json"
}
raw, err := os.ReadFile(filename)
if err != nil {
return err
}
var payload map[string]interface{}
if err = json.Unmarshal(raw, &payload); err != nil {
return err
}
params, ok := payload["params"].(string)
if !ok || !json.Valid([]byte(params)) {
return fmt.Errorf("params must be a JSON string")
}
body = string(raw)
case "status":
taskID := os.Getenv("MEITU_TASK_ID")
if taskID == "" {
return fmt.Errorf("missing task_id")
}
method = http.MethodGet
endpoint = "https://openapi.meitu.com/api/v1/sdk/status?" + url.Values{"task_id": {taskID}}.Encode()
default:
return fmt.Errorf("MEITU_OPENAPI_ACTION must be push or status")
}
headers := make(http.Header)
headers.Set("Content-Type", "application/json")
headers.Set(signer.HeaderHost, "openapi.meitu.com")
req, err := signer.NewSigner(ak, sk).Sign(endpoint, method, headers, body)
if err != nil {
return err
}
client := &http.Client{Timeout: 100 * time.Second, CheckRedirect: func(*http.Request, []*http.Request) error { return http.ErrUseLastResponse }}
resp, err := client.Do(req)
if err != nil {
return err
}
defer resp.Body.Close()
raw, err := io.ReadAll(resp.Body)
if err != nil {
return err
}
fmt.Println("HTTP", resp.StatusCode)
fmt.Println(string(raw))
if resp.StatusCode < 200 || resp.StatusCode >= 300 {
return fmt.Errorf("HTTP request failed")
}
return nil
}PHP
将官方 signer.php 放在同一目录,保存为 client.php,运行 php client.php:
<?php
require_once __DIR__ . '/signer.php';
$ak = getenv('MEITU_OPENAPI_ACCESS_KEY');
$sk = getenv('MEITU_OPENAPI_SECRET_KEY');
if (!$ak || !$sk) { throw new RuntimeException('Missing AK/SK'); }
$action = getenv('MEITU_OPENAPI_ACTION') ?: 'push';
$body = '';
if ($action === 'push') {
$file = getenv('MEITU_REQUEST_FILE') ?: 'request.json';
$body = file_get_contents($file);
if ($body === false) { throw new RuntimeException('Cannot read request.json'); }
$payload = json_decode($body, true, 512, JSON_THROW_ON_ERROR);
if (!isset($payload['params']) || !is_string($payload['params'])) { throw new RuntimeException('params must be a JSON string'); }
json_decode($payload['params'], true, 512, JSON_THROW_ON_ERROR);
$method = 'POST';
$url = 'https://openapi.meitu.com/api/v1/sdk/sync/push';
} elseif ($action === 'status') {
$taskId = getenv('MEITU_TASK_ID');
if (!$taskId) { throw new RuntimeException('Missing task_id'); }
$method = 'GET';
$url = 'https://openapi.meitu.com/api/v1/sdk/status?' . http_build_query(['task_id' => $taskId], '', '&', PHP_QUERY_RFC3986);
} else {
throw new RuntimeException('MEITU_OPENAPI_ACTION must be push or status');
}
$headers = ['Content-Type' => 'application/json', 'Host' => 'openapi.meitu.com'];
$curl = (new Signer($ak, $sk))->sign($url, $method, $headers, $body);
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 100,
CURLOPT_FOLLOWLOCATION => false,
CURLOPT_SSL_VERIFYPEER => true,
CURLOPT_SSL_VERIFYHOST => 2,
]);
$response = curl_exec($curl);
if ($response === false) {
$error = curl_error($curl);
curl_close($curl);
throw new RuntimeException($error);
}
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
echo 'HTTP ' . $status . PHP_EOL . $response . PHP_EOL;
if ($status < 200 || $status >= 300) { throw new RuntimeException('HTTP request failed'); }Java
将官方 SDK 加入 classpath,保存为 Main.java,使用 JDK 11+ 编译运行。request.json 使用 UTF-8 编码:
import com.meitu.openai.common.Signer;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URI;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.HashMap;
import java.util.Map;
public class Main {
private static String requiredEnv(String name) {
String value = System.getenv(name);
if (value == null || value.isBlank()) throw new IllegalArgumentException("Missing " + name);
return value;
}
public static void main(String[] args) throws Exception {
String ak = requiredEnv("MEITU_OPENAPI_ACCESS_KEY");
String sk = requiredEnv("MEITU_OPENAPI_SECRET_KEY");
String action = System.getenv().getOrDefault("MEITU_OPENAPI_ACTION", "push");
String method;
String url;
String body = "";
if ("push".equals(action)) {
String filename = System.getenv().getOrDefault("MEITU_REQUEST_FILE", "request.json");
body = Files.readString(Path.of(filename), StandardCharsets.UTF_8);
method = "POST";
url = "https://openapi.meitu.com/api/v1/sdk/sync/push";
} else if ("status".equals(action)) {
method = "GET";
url = "https://openapi.meitu.com/api/v1/sdk/status?task_id="
+ URLEncoder.encode(requiredEnv("MEITU_TASK_ID"), StandardCharsets.UTF_8);
} else {
throw new IllegalArgumentException("MEITU_OPENAPI_ACTION must be push or status");
}
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put(Signer.HeaderHost, "openapi.meitu.com");
Map<String, String> signedHeaders = new Signer(ak, sk).sign(url, method, headers, body);
HttpURLConnection connection = (HttpURLConnection) URI.create(url).toURL().openConnection();
try {
connection.setRequestMethod(method);
connection.setConnectTimeout(10000);
connection.setReadTimeout(100000);
connection.setInstanceFollowRedirects(false);
for (Map.Entry<String, String> header : signedHeaders.entrySet()) connection.setRequestProperty(header.getKey(), header.getValue());
if ("POST".equals(method)) {
byte[] bytes = body.getBytes(StandardCharsets.UTF_8);
connection.setDoOutput(true);
connection.setFixedLengthStreamingMode(bytes.length);
try (OutputStream output = connection.getOutputStream()) { output.write(bytes); }
}
int status = connection.getResponseCode();
System.out.println("HTTP " + status);
InputStream stream = status >= 400 ? connection.getErrorStream() : connection.getInputStream();
if (stream != null) {
try (InputStream input = stream) { System.out.println(new String(input.readAllBytes(), StandardCharsets.UTF_8)); }
}
if (status < 200 || status >= 300) throw new IllegalStateException("HTTP request failed");
} finally {
connection.disconnect();
}
}
}能力列表
| 序号 | 能力 | task |
|---|---|---|
| 1 | 服装试穿 | koozee-ai-clothing-tryon |
| 2 | 泳衣内衣试穿 | koozee-clothing-tryon-beauty |
| 3 | 模特换姿势 | koozee-ai-change-model-position |
| 4 | 服装图生视频 | koozee-ai-video-generation |
| 5 | 单件服装穿搭视频 | koozee-video-ootd-single-clothes |
| 6 | 穿搭卡点视频 | koozee-video-ootd-card-point |
| 7 | 提示词消除 | koozee-prompt-removal |
| 8 | 服装换印花 | koozee-clothing-pattern-change |
| 9 | 服饰线稿绘制 | koozee-ai-clothing-line-drawing |
| 10 | 鞋子线稿绘制 | koozee-ai-shoe-line-drawing |
| 11 | 平铺转3D | koozee-ai-3d-flat-v2 |
| 12 | 提取主图 | koozee-ai-clothing-extraction-v2 |
| 13 | 标准平铺 | koozee-ai-standard-flat-v3 |
| 14 | 换模特 | koozee-ai-change-model |
| 15 | 模特换背景 | koozee-ai-change-model-background |
| 16 | 模特换角度 | koozee-ai-change-model-perspective |
| 17 | 商品换背景 | koozee-ai-change-product-background |
| 18 | 服装细节图 | koozee-ai-clothing-detail |
| 19 | 服装提取印花 | koozee-ai-print-extraction |
| 20 | 鞋子提取 | koozee-ai-shoe-extraction |
| 21 | 鞋子试穿 | koozee-ai-shoe-tryon |
| 22 | 衣服去褶皱 | koozee-wrinkle-removal |
| 23 | HD 画质修复 | koozee-image-enhance-hd |
| 24 | 人像画质增强 | koozee-image-enhance-human |
| 25 | AI 超清画质修复 | koozee-image-enhance-ai-super-clear |
| 26 | 算法消除 | koozee-algorithm-removal |
| 27 | 视频 4K 超分 | koozee-video-4k |
| 28 | 视频 AI 超清 2.0(4K) | koozee-video-4k-pro |
| 29 | 视频人像画质修复 | koozee-video-enhance-portrait |
| 30 | 提示词生成 | koozee-prompt-generation |
| 31 | Nano Banana 文生图/图像编辑 | koozee-nano-banana |
| 32 | Flux 3 文生图/图像编辑 | koozee-flux-3 |
| 33 | Nano Lite 文生图/图像编辑 | koozee-nano-lite |
| 34 | Nano 2/Nano 2 Lite 文生图/图像编辑 | koozee-plugin-nano |
| 35 | 提示词视频-首尾帧 | koozee-prompt-video-generation-frame |
| 36 | Seedance 首尾帧生视频 | koozee-seedance-frame |
| 37 | Seedance 多模态参考生视频 | koozee-seedance-omni |
| 38 | Seedance 2.5 首尾帧生视频 | koozee-seedance2-5-frame |
| 39 | Seedance 2.5 多模态参考生视频 | koozee-seedance2-5-omni |
| 40 | Dreamina Seedance 2.5 首尾帧生视频 | koozee-dreamina-seedance2-5-frame |
| 41 | Dreamina Seedance 2.5 多模态参考生视频 | koozee-dreamina-seedance2-5-omni |
| 42 | ChatGPT Images 2 | koozee-chatgpt-images-2 |
| 43 | GPT Image | koozee-gpt-image |
| 44 | 人物口播视频 | koozee-ai-speak-video |
| 45 | 图像去背景 | koozee-image-remove-background |
| 46 | 路人识别 | koozee-recognition-passerby |
| 47 | 水印/文字识别 | koozee-recognition-watermark |
| 48 | 衣服分割 | koozee-clothing-segmentation |
| 49 | RAW 转 PNG | koozee-raw-to-png |
能力参数与请求示例
各能力共用前述鉴权、提交、查询及返回格式。下表中的 parameter 字段位于 params 解码后的对象中;嵌套字段仅在父对象或数组元素存在时要求提供。
1. 服装试穿
task:koozee-ai-clothing-tryon。
媒体输入
至少 2 张图片。第 1 张为原图,第 2 张起为参考图。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-clothing-tryon",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/clothing-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}2. 泳衣内衣试穿
task:koozee-clothing-tryon-beauty。
媒体输入
固定 2 张图片。第 1 张为服装参考图(泳装或内衣),第 2 张为模特图(姿势图)。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.cloth_type_list | string | 是 | "cloth"、"upper"、"coat"、"skirt"、"pants"、"dress"、"jumpsuit" | 服装区域:cloth 整套,upper 上衣,coat 外套,skirt 裙子,pants 裤子,dress 连衣裙,jumpsuit 连体衣。 |
请求示例
{
"task": "koozee-clothing-tryon-beauty",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/swimwear-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/model-pose.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"cloth_type_list\":\"cloth\"}}",
"sync_timeout": 30
}3. 模特换姿势
task:koozee-ai-change-model-position。
媒体输入
固定 2 张图片。第 1 张为原图,第 2 张为姿势参考图。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-change-model-position",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/pose-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}4. 服装图生视频
task:koozee-ai-video-generation。
媒体输入
至少 1 张原图,按顺序传入。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.cloth_prompt | string | 是 | 最少 1 字符 | 视频提示词。 |
| parameter.video_length | number | 是 | — | 视频时长,单位秒。 |
请求示例
{
"task": "koozee-ai-video-generation",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"cloth_prompt\":\"模特自然转身,展示服装细节\",\"video_length\":5}}",
"sync_timeout": 30
}5. 单件服装穿搭视频
task:koozee-video-ootd-single-clothes。
媒体输入
至少 1 张服装图片,按顺序传入。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.video_length | number | 是 | 10、15 | 只允许 10 或 15,单位秒。 |
请求示例
{
"task": "koozee-video-ootd-single-clothes",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/clothing.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"video_length\":10}}",
"sync_timeout": 30
}6. 穿搭卡点视频
task:koozee-video-ootd-card-point。
媒体输入
至少 1 张穿搭图片,按顺序传入;num 与图片张数保持一致。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.num | number | 是 | — | 等于图片张数。 |
请求示例
{
"task": "koozee-video-ootd-card-point",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/outfit-1.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/outfit-2.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/outfit-3.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"num\":3}}",
"sync_timeout": 30
}7. 提示词消除
task:koozee-prompt-removal。
媒体输入
至少 1 张需要消除内容的图片,按顺序传入。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.word | string | 是 | 最少 1 字符 | 要消除的内容,例如删除图中的人。 |
请求示例
{
"task": "koozee-prompt-removal",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"word\":\"移除背景中的路人\"}}",
"sync_timeout": 30
}8. 服装换印花
task:koozee-clothing-pattern-change。
媒体输入
至少 2 张图片。第 1 张为原图,其余为印花参考图。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.clothes_category | string | 是 | "Full Set"、"Top"、"Coat"、"Skirt"、"Pants"、"Dress"、"Jumpsuit"、"Scarf"、"shawl" | Full Set 整套,Top 上衣,Coat 外套,Skirt 裙子,Pants 裤子,Dress 连衣裙,Jumpsuit 连体衣,Scarf 围巾,shawl 披肩。 |
| parameter.size | string | 否 | "1024x1024"、"1536x1024"、"1024x1536"、"2048x2048"、"2048x1152"、"3840x2160"、"2160x3840"、"auto" | 输出尺寸。 |
请求示例
{
"task": "koozee-clothing-pattern-change",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/pattern-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"clothes_category\":\"Top\",\"size\":\"auto\"}}",
"sync_timeout": 30
}9. 服饰线稿绘制
task:koozee-ai-clothing-line-drawing。
媒体输入
按顺序传入服装图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.multi_list | number[] | 否 | 元素取值:0、1、2、3 | 生成选项编号列表。 |
请求示例
{
"task": "koozee-ai-clothing-line-drawing",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"multi_list\":[0]}}",
"sync_timeout": 30
}10. 鞋子线稿绘制
task:koozee-ai-shoe-line-drawing。
媒体输入
按顺序传入鞋子图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.multi_list | number[] | 否 | 元素取值:0、1、2、3、4 | 生成选项编号列表。 |
请求示例
{
"task": "koozee-ai-shoe-line-drawing",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"multi_list\":[0]}}",
"sync_timeout": 30
}11. 平铺转3D
task:koozee-ai-3d-flat-v2。
媒体输入
传入服装图片;每个目标视角分别提交一次请求。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.cloth_image | string | 否 | 最少 1 字符 | 服装图片地址。 |
| parameter.angle | string | 是 | "正面"、"背面"、"正侧45度"、"背侧45度" | 正面、背面、正侧45度、背侧45度。对应视角序号 0、1、2、3。 |
| parameter.size | string | 否 | "auto"、"2048x2048"、"1024x1536"、"1536x1024"、"1728x2304"、"2304x1728"、"1536x1920"、"1920x1536"、"2160x3840"、"3840x2160" | 按宽高比取值:auto,1:1 为 2048x2048,2:3 为 1024x1536,3:2 为 1536x1024,3:4 为 1728x2304,4:3 为 2304x1728,4:5 为 1536x1920,5:4 为 1920x1536,9:16 为 2160x3840,16:9 为 3840x2160。 |
请求示例
{
"task": "koozee-ai-3d-flat-v2",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"angle\":\"正面\",\"size\":\"auto\"}}",
"sync_timeout": 30
}12. 提取主图
task:koozee-ai-clothing-extraction-v2。
媒体输入
按顺序传入服装图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.cloth_image | string | 否 | 最少 1 字符 | 服装图片地址。 |
| parameter.clothes_category | string | 是 | "Full outfit"、"Top"、"Outerwear/Jacket"、"Skirt"、"Pants"、"Dress"、"Jumpsuit"、"Scarf"、"Shoes"、"Bag"、"Accessories" | Full outfit 整套,Top 上衣,Outerwear/Jacket 外套,Skirt 裙子,Pants 裤子,Dress 连衣裙,Jumpsuit 连体衣,Scarf 围巾,Shoes 鞋子,Bag 包包,Accessories 配饰。 |
| parameter.size | string | 否 | "auto"、"2048x2048"、"1024x1536"、"1536x1024"、"1728x2304"、"2304x1728"、"1536x1920"、"1920x1536"、"2160x3840"、"3840x2160" | 按宽高比取值:auto,1:1 为 2048x2048,2:3 为 1024x1536,3:2 为 1536x1024,3:4 为 1728x2304,4:3 为 2304x1728,4:5 为 1536x1920,5:4 为 1920x1536,9:16 为 2160x3840,16:9 为 3840x2160。 |
请求示例
{
"task": "koozee-ai-clothing-extraction-v2",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"clothes_category\":\"Top\",\"size\":\"auto\"}}",
"sync_timeout": 30
}13. 标准平铺
task:koozee-ai-standard-flat-v3。
媒体输入
按顺序传入服装图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.cloth_image | string | 否 | 最少 1 字符 | 服装图片地址。 |
| parameter.clothes_category | string | 是 | "Full outfit"、"Top"、"Outerwear/Jacket"、"Skirt"、"Pants"、"Dress"、"Jumpsuit"、"Scarf"、"Shoes"、"Bag"、"Accessories" | Full outfit 整套,Top 上衣,Outerwear/Jacket 外套,Skirt 裙子,Pants 裤子,Dress 连衣裙,Jumpsuit 连体衣,Scarf 围巾,Shoes 鞋子,Bag 包包,Accessories 配饰。 |
| parameter.size | string | 否 | "auto"、"2048x2048"、"1024x1536"、"1536x1024"、"1728x2304"、"2304x1728"、"1536x1920"、"1920x1536"、"2160x3840"、"3840x2160" | 按宽高比取值:auto,1:1 为 2048x2048,2:3 为 1024x1536,3:2 为 1536x1024,3:4 为 1728x2304,4:3 为 2304x1728,4:5 为 1536x1920,5:4 为 1920x1536,9:16 为 2160x3840,16:9 为 3840x2160。 |
请求示例
{
"task": "koozee-ai-standard-flat-v3",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"clothes_category\":\"Top\",\"size\":\"auto\"}}",
"sync_timeout": 30
}14. 换模特
task:koozee-ai-change-model。
媒体输入
至少 2 张图片。第 1 张为原图,其余为模特参考图。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-change-model",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/model-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}15. 模特换背景
task:koozee-ai-change-model-background。
媒体输入
至少 2 张图片。第 1 张为原图,其余为背景参考图。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-change-model-background",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/background-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}16. 模特换角度
task:koozee-ai-change-model-perspective。
媒体输入
按顺序传入模特图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.multi_list | number[] | 否 | 元素取值:0、1、2、3 | 生成选项编号列表。 |
请求示例
{
"task": "koozee-ai-change-model-perspective",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"multi_list\":[0]}}",
"sync_timeout": 30
}17. 商品换背景
task:koozee-ai-change-product-background。
媒体输入
至少 2 张图片。第 1 张为商品原图,其余为背景参考图。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-change-product-background",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/product.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/background-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}18. 服装细节图
task:koozee-ai-clothing-detail。
媒体输入
按顺序传入服装图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.need_sr | string | 否 | "yes"、"no" | 是否进行超分处理,使用 yes 或 no。 |
请求示例
{
"task": "koozee-ai-clothing-detail",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"need_sr\":\"yes\"}}",
"sync_timeout": 30
}19. 服装提取印花
task:koozee-ai-print-extraction。
媒体输入
按顺序传入带印花的服装图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-print-extraction",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}20. 鞋子提取
task:koozee-ai-shoe-extraction。
媒体输入
按顺序传入鞋子图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.multi_list | number[] | 否 | 元素取值:0、1、2、3 | 生成选项编号列表。 |
请求示例
{
"task": "koozee-ai-shoe-extraction",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"multi_list\":[0]}}",
"sync_timeout": 30
}21. 鞋子试穿
task:koozee-ai-shoe-tryon。
媒体输入
至少 2 张图片。第 1 张为鞋子或脚部原图,其余为参考图。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-ai-shoe-tryon",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/foot-original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/shoe-reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}22. 衣服去褶皱
task:koozee-wrinkle-removal。
媒体输入
1 张服装图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-wrinkle-removal",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}23. HD 画质修复
task:koozee-image-enhance-hd。
媒体输入
1 张需要修复的图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-image-enhance-hd",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}24. 人像画质增强
task:koozee-image-enhance-human。
媒体输入
1 张人像图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-image-enhance-human",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}25. AI 超清画质修复
task:koozee-image-enhance-ai-super-clear。
媒体输入
1 张需要增强的图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-image-enhance-ai-super-clear",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}26. 算法消除
task:koozee-algorithm-removal。
媒体输入
固定 2 张图片。第 1 张为原图,第 2 张为 mask 图。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.media_info_list | object[] | 是 | — | 原图与 mask 媒体列表。 |
| parameter.media_info_list[].media_data | string | 是(父项存在时) | 最少 1 字符 | 媒体 URL。 |
| parameter.text_remove_param | object | 否 | — | 文字/水印消除选项。 |
| parameter.text_remove_param.is_text | boolean | 否 | — | 是否为文字。 |
| parameter.text_remove_param.is_translucent_watermark | boolean | 否 | — | 是否为半透明水印。 |
请求示例
{
"task": "koozee-algorithm-removal",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/original.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/mask.png",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"media_info_list\":[{\"media_data\":\"https://example.com/original.jpg\"},{\"media_data\":\"https://example.com/mask.png\"}],\"text_remove_param\":{\"is_text\":false,\"is_translucent_watermark\":false}}}",
"sync_timeout": 30
}27. 视频 4K 超分
task:koozee-video-4k。
媒体输入
1 条需要超分处理的视频。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-video-4k",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.mp4",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}28. 视频 AI 超清 2.0(4K)
task:koozee-video-4k-pro。
媒体输入
1 条需要超分处理的视频。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-video-4k-pro",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.mp4",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}29. 视频人像画质修复
task:koozee-video-enhance-portrait。
媒体输入
1 条需要修复的人像视频。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-video-enhance-portrait",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/portrait.mp4",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}30. 提示词生成
task:koozee-prompt-generation。
媒体输入
可不传图片;有图时按顺序传入参考图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.resolution | string | 是 | "1k"、"2k"、"4k" | 输出分辨率。 |
| parameter.aspect_ratio | string | 否 | "1:1"、"2:3"、"3:2"、"3:4"、"4:3"、"4:5"、"5:4"、"9:16"、"16:9"、"21:9" | 输出宽高比。 |
请求示例
{
"task": "koozee-prompt-generation",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"一件简约白色衬衫,电商产品摄影\",\"resolution\":\"2k\",\"aspect_ratio\":\"1:1\"}}",
"sync_timeout": 30
}31. Nano Banana 文生图/图像编辑
task:koozee-nano-banana。
媒体输入
可不传图片;gemini-3-pro-image 最多 5 张参考图,nanobanana2.1 最多 14 张。
resolution 使用大写 2K 或 4K。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.model | string | 是 | "gemini-3-pro-image"、"nanobanana2.1" | gemini-3-pro-image 是 Pro,nanobanana2.1 是 2.1。 |
| parameter.resolution | string | 是 | "2K"、"4K" | 输出分辨率。 |
| parameter.aspect_ratio | string | 否 | "1:1"、"2:3"、"3:2"、"3:4"、"4:3"、"4:5"、"5:4"、"9:16"、"16:9"、"21:9" | 输出宽高比。 |
请求示例
{
"task": "koozee-nano-banana",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"生成一张简约服装产品图\",\"model\":\"gemini-3-pro-image\",\"resolution\":\"2K\",\"aspect_ratio\":\"1:1\"}}",
"sync_timeout": 30
}32. Flux 3 文生图/图像编辑
task:koozee-flux-3。
媒体输入
可不传图片;有图时进行图像编辑,最多 10 张参考图。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.resolution | string | 否 | "1k"、"2k"、"4k" | 输出分辨率。 |
| parameter.aspect_ratio | string | 否 | "auto"、"21:9"、"2:1"、"16:9"、"3:2"、"7:5"、"4:3"、"5:4"、"1:1"、"4:5"、"3:4"、"5:7"、"2:3"、"9:16"、"1:2" | 输出宽高比。 |
请求示例
{
"task": "koozee-flux-3",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"生成一张简约服装产品图\",\"resolution\":\"2k\",\"aspect_ratio\":\"1:1\"}}",
"sync_timeout": 30
}33. Nano Lite 文生图/图像编辑
task:koozee-nano-lite。
媒体输入
可不传图片;有图时进行图像编辑,最多 1 张参考图。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.aspect_ratio | string | 否 | "1:1"、"2:3"、"3:2"、"3:4"、"4:3"、"4:5"、"5:4"、"9:16"、"16:9"、"21:9" | 输出宽高比。 |
请求示例
{
"task": "koozee-nano-lite",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"生成一张简约服装产品图\",\"aspect_ratio\":\"1:1\"}}",
"sync_timeout": 30
}34. Nano 2/Nano 2 Lite 文生图/图像编辑
task:koozee-plugin-nano。
媒体输入
可不传图片;有图时进行图像编辑。
gemini-3.1-flash-image-preview 支持 1K、2K、4K;gemini-3.1-flash-lite-image 固定使用 1K。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.model | string | 是 | "gemini-3.1-flash-image-preview"、"gemini-3.1-flash-lite-image" | gemini-3.1-flash-image-preview 是 nano2,gemini-3.1-flash-lite-image 是 nano2-lite。 |
| parameter.resolution | string | 是 | "1K"、"2K"、"4K" | nano2 为 1K、2K、4K,缺省 1K。nano2-lite 固定 1K。 |
请求示例
{
"task": "koozee-plugin-nano",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"生成一张简约服装产品图\",\"model\":\"gemini-3.1-flash-image-preview\",\"resolution\":\"1K\"}}",
"sync_timeout": 30
}35. 提示词视频-首尾帧
task:koozee-prompt-video-generation-frame。
媒体输入
可不传图片;使用首尾帧时最多 2 张,第 1 张为首帧,第 2 张为尾帧。
以下示例为文生视频,init_images 为空数组。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.image_list | object[] | 否 | — | 首尾帧图片列表。 |
| parameter.image_list[].image_url | string | 是(父项存在时) | 最少 1 字符 | 图片 URL。 |
| parameter.image_list[].type | string | 是(父项存在时) | "first_frame"、"end_frame" | 帧类型。 |
| parameter.mode | string | 是 | "std"、"pro" | 720p 填 std,1080p 填 pro。缺省按 1080p,即 pro。 |
| parameter.duration | number | 是 | — | 时长,单位秒。 |
| parameter.sound | string | 是 | "on"、"off" | on 生成声音,off 不生成。缺省按有声,即 on。 |
请求示例
{
"task": "koozee-prompt-video-generation-frame",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"阳光下的服装展示,镜头缓慢推进\",\"mode\":\"pro\",\"duration\":5,\"sound\":\"on\"}}",
"sync_timeout": 30
}36. Seedance 首尾帧生视频
task:koozee-seedance-frame。
媒体输入
1–2 张图片。第 1 张为首帧,第 2 张为尾帧。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.generate_audio | boolean | 否 | — | 是否生成音频。 |
| parameter.resolution | string | 是 | "480p"、"720p"、"1080p"、"4k" | 输出分辨率。 |
| parameter.prompt | string | 否 | — | 提示词。 |
| parameter.video_duration | number | 否 | — | 视频时长,单位秒。 |
| parameter.ratio | string | 否 | "16:9"、"4:3"、"1:1"、"3:4"、"9:16"、"21:9"、"adaptive" | 输出宽高比。 |
请求示例
{
"task": "koozee-seedance-frame",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/first-frame.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/end-frame.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"generate_audio\":true,\"resolution\":\"720p\",\"prompt\":\"人物自然转身展示服装\",\"video_duration\":5,\"ratio\":\"9:16\"}}",
"sync_timeout": 30
}37. Seedance 多模态参考生视频
task:koozee-seedance-omni。
媒体输入
可不传素材;有素材时按顺序传入参考图片、视频或音频。无素材时为文生视频。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.generate_audio | boolean | 否 | — | 是否生成音频。 |
| parameter.resolution | string | 是 | "480p"、"720p"、"1080p"、"4k" | 输出分辨率。 |
| parameter.video_duration | number | 是 | — | 4 到 15 秒。 |
| parameter.prompt | string | 否 | — | 提示词。 |
| parameter.ratio | string | 否 | "16:9"、"4:3"、"1:1"、"3:4"、"9:16"、"21:9"、"adaptive" | 输出宽高比。 |
请求示例
{
"task": "koozee-seedance-omni",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/reference.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/reference.mp4",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/reference.wav",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"generate_audio\":true,\"resolution\":\"720p\",\"video_duration\":5,\"prompt\":\"结合参考素材生成服装展示视频\",\"ratio\":\"9:16\"}}",
"sync_timeout": 30
}38. Seedance 2.5 首尾帧生视频
task:koozee-seedance2-5-frame。
媒体输入
1–2 张图片。第 1 张为首帧,第 2 张为尾帧。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.generate_audio | boolean | 否 | — | 是否生成音频。 |
| parameter.resolution | string | 否 | "480p"、"720p"、"1080p" | 输出分辨率。 |
| parameter.video_duration | number | 否 | — | 视频时长,单位秒。 |
| parameter.prompt | string | 否 | — | 提示词。 |
请求示例
{
"task": "koozee-seedance2-5-frame",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/first-frame.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/end-frame.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"generate_audio\":true,\"resolution\":\"720p\",\"video_duration\":5,\"prompt\":\"人物自然转身展示服装\"}}",
"sync_timeout": 30
}39. Seedance 2.5 多模态参考生视频
task:koozee-seedance2-5-omni。
媒体输入
可不传图片;init_images 仅传入参考图片。参考视频和音频分别使用 parameter.reference_video_urls、parameter.reference_audio_urls。
以下示例为文生视频,不包含参考素材。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.reference_image_urls | string[] | 否 | — | 参考图片 URL 列表。 |
| parameter.reference_video_urls | string[] | 否 | — | 参考视频 URL 列表。 |
| parameter.reference_audio_urls | string[] | 否 | — | 参考音频 URL 列表。 |
| parameter.generate_audio | boolean | 否 | — | 是否生成音频。 |
| parameter.resolution | string | 否 | "480p"、"720p"、"1080p" | 输出分辨率。 |
| parameter.video_duration | number | 是 | — | 4 到 30 秒。 |
| parameter.ratio | string | 否 | "16:9"、"4:3"、"1:1"、"3:4"、"9:16"、"21:9"、"adaptive" | 输出宽高比。 |
| parameter.prompt | string | 否 | — | 提示词。 |
请求示例
{
"task": "koozee-seedance2-5-omni",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"generate_audio\":true,\"resolution\":\"720p\",\"video_duration\":5,\"prompt\":\"生成一段服装展示视频\",\"ratio\":\"9:16\"}}",
"sync_timeout": 30
}40. Dreamina Seedance 2.5 首尾帧生视频
task:koozee-dreamina-seedance2-5-frame。
媒体输入
1–2 张图片。第 1 张为首帧,第 2 张为尾帧。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.generate_audio | boolean | 否 | — | 是否生成音频。 |
| parameter.resolution | string | 否 | "480p"、"720p"、"1080p" | 输出分辨率。 |
| parameter.video_duration | number | 否 | — | 视频时长,单位秒。 |
| parameter.prompt | string | 否 | — | 提示词。 |
请求示例
{
"task": "koozee-dreamina-seedance2-5-frame",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/first-frame.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
},
{
"url": "https://example.com/end-frame.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"generate_audio\":true,\"resolution\":\"720p\",\"video_duration\":5,\"prompt\":\"人物自然转身展示服装\"}}",
"sync_timeout": 30
}41. Dreamina Seedance 2.5 多模态参考生视频
task:koozee-dreamina-seedance2-5-omni。
媒体输入
可不传图片;init_images 仅传入参考图片。参考视频和音频分别使用 parameter.reference_video_urls、parameter.reference_audio_urls。
以下示例为文生视频,不包含参考素材。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.reference_image_urls | string[] | 否 | — | 参考图片 URL 列表。 |
| parameter.reference_video_urls | string[] | 否 | — | 参考视频 URL 列表。 |
| parameter.reference_audio_urls | string[] | 否 | — | 参考音频 URL 列表。 |
| parameter.generate_audio | boolean | 否 | — | 是否生成音频。 |
| parameter.resolution | string | 否 | "480p"、"720p"、"1080p" | 输出分辨率。 |
| parameter.video_duration | number | 是 | — | 4 到 30 秒。 |
| parameter.prompt | string | 否 | — | 提示词。 |
| parameter.ratio | string | 否 | "16:9"、"4:3"、"1:1"、"3:4"、"9:16"、"21:9"、"adaptive" | 输出宽高比。 |
请求示例
{
"task": "koozee-dreamina-seedance2-5-omni",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"generate_audio\":true,\"resolution\":\"720p\",\"video_duration\":5,\"prompt\":\"生成一段服装展示视频\",\"ratio\":\"9:16\"}}",
"sync_timeout": 30
}42. ChatGPT Images 2
task:koozee-chatgpt-images-2。
媒体输入
无图时为文生图;有图时为图像编辑,支持 1–9 张图片。
无图时 path_scene 使用 text2img;有图时使用 imgEdit。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.path_scene | string | 是 | "imgEdit"、"text2img" | 有图时为 imgEdit,无图时为 text2img。 |
| parameter.prompt | string | 是 | 最少 1 字符 | 提示词。 |
| parameter.size | string | 是 | "auto"、"1024x1536"、"1536x1024"、"2048x2048"、"3840x2160"、"2160x3840"、"2304x1728"、"1728x2304" | auto、1024x1536、1536x1024、2048x2048、3840x2160、2160x3840、2304x1728、1728x2304。 |
| parameter.quality | string | 是 | "medium"、"high" | 2k 填 medium,4k 填 high。 |
请求示例
{
"task": "koozee-chatgpt-images-2",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"path_scene\":\"text2img\",\"prompt\":\"生成一张简约服装产品图\",\"size\":\"2048x2048\",\"quality\":\"medium\"}}",
"sync_timeout": 30
}43. GPT Image
task:koozee-gpt-image。
媒体输入
无图时为文生图;有图时为图像编辑,最多 16 张图片,格式为 PNG 或 JPG。
将示例中的 YOUR_OUTPUT_SIZE 替换为所选宽高比与像素档对应的输出尺寸。
仅 gpt-image-2.5 系列支持 quality=xhigh。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.prompt | string | 是 | 最少 1 字符;最多 4000 字符 | 1-4000 字符。 |
| parameter.model | string | 是 | "gpt-image-2"、"gpt-image-2.5-sunburst"、"gpt-image-2.5-flare" | gpt-image-2、gpt-image-2.5-sunburst、gpt-image-2.5-flare。缺省按 gpt-image-2.5-sunburst。 |
| parameter.size | string | 是 | 最少 1 字符 | 由宽高比和像素档决定。宽高比 1:1、9:16、16:9、3:4、4:3、3:2、2:3、21:9、9:21,缺省 9:16。像素档 1K、2K、4K,缺省 2K。 |
| parameter.quality | string | 是 | "medium"、"high"、"xhigh" | medium、high。只有 gpt-image-2.5 可以填 xhigh。 |
请求示例
{
"task": "koozee-gpt-image",
"task_type": "formula",
"init_images": [],
"params": "{\"parameter\":{\"prompt\":\"生成一张简约服装产品图\",\"model\":\"gpt-image-2.5-sunburst\",\"size\":\"YOUR_OUTPUT_SIZE\",\"quality\":\"high\"}}",
"sync_timeout": 30
}44. 人物口播视频
task:koozee-ai-speak-video。
媒体输入
至少 1 张人物图片,按顺序传入。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.video_length | number | 是 | — | 口播时长,单位秒。 |
| parameter.language | string | 是 | 最少 1 字符 | 口播语言,例如 English。 |
| parameter.prompt | string | 是 | 最少 1 字符 | 口播内容。 |
请求示例
{
"task": "koozee-ai-speak-video",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"video_length\":5,\"language\":\"English\",\"prompt\":\"Welcome to our new collection.\"}}",
"sync_timeout": 30
}45. 图像去背景
task:koozee-image-remove-background。
媒体输入
传入需要去除背景的图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-image-remove-background",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}46. 路人识别
task:koozee-recognition-passerby。
媒体输入
1 张需要识别的图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-recognition-passerby",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}47. 水印/文字识别
task:koozee-recognition-watermark。
媒体输入
1 张需要识别的图片。
参数说明
| 字段 | 类型 | 必填 | 取值/约束 | 说明 |
|---|---|---|---|---|
| parameter.target | string | 是 | "watermark"、"text" | watermark 识别水印,text 识别文字。 |
请求示例
{
"task": "koozee-recognition-watermark",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{\"target\":\"watermark\"}}",
"sync_timeout": 30
}48. 衣服分割
task:koozee-clothing-segmentation。
媒体输入
1 张服装图片。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-clothing-segmentation",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.jpg",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}49. RAW 转 PNG
task:koozee-raw-to-png。
媒体输入
传入 1 个 RAW 文件的可访问 URL。
参数说明
无需额外参数,params 使用字符串 {"parameter":{}}。
请求示例
{
"task": "koozee-raw-to-png",
"task_type": "formula",
"init_images": [
{
"url": "https://example.com/input.raw",
"profile": {
"version": "v1",
"media_profiles": {
"media_data_type": "url"
}
}
}
],
"params": "{\"parameter\":{}}",
"sync_timeout": 30
}