AI 图像生成 - 支持文生图、图生图、多图参考、风格迁移、图像扩展。
在所有请求中添加 Bearer Token 认证头:
Authorization: Bearer YOUR_API_KEY
| 模型 | API 名称 | 支持操作 | 价格 (9折) |
|---|---|---|---|
| Kling V2 | kling-v2 | 文生图 / 图生图 / 多图参考 | 0.076 / 0.151 / 0.302 |
| Kling V2 New | kling-v2-new | 风格迁移 图生图 | 0.151 |
| Kling V2.1 | kling-v2-1 | 文生图 / 多图参考 | 0.076 / 0.302 |
| Kling V3 Image | kling-v3-image | 文生图 / 图生图 (1K/2K) | 0.151 |
| Kling Multi-Image | kling-multi-image | 多图参考 | 0.302 |
| Kling Expand | kling-expand | 图像扩展 | 0.151 |
| Kling Omni-Image | kling-image-o1 | 文生图 / 图像编辑 / 多图输入 (1K/2K) | 1.80 |
| 模型 | 操作 | 积分/张 |
|---|---|---|
kling-v2 | 文生图 | 0.076 |
kling-v2 | 图生图 | 0.151 |
kling-v2 | 多图参考 | 0.302 |
kling-v2-new | 风格迁移 图生图 | 0.151 |
kling-v2-1 | 文生图 | 0.076 |
kling-v2-1 | 多图参考 | 0.302 |
kling-v3-image | 文生图 / 图生图 (1K/2K) | 0.151 |
kling-multi-image | 多图参考 | 0.302 |
kling-expand | 图像扩展 | 0.151 |
kling-image-o1 | 文生图 / 图像编辑 / 多图输入 (1K/2K) | 1.80 |
/api/v1/images/generations创建可灵图像生成任务。根据 model 参数自动路由到文生图、图生图、多图参考、风格迁移或图像扩展。
/api/v1/images/generations?task_id=xxx查询任务状态并获取图像链接
curl -X POST https://apimodels.app/api/v1/images/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3-image",
"prompt": "A majestic snow-capped mountain at sunrise with golden light",
"aspect_ratio": "16:9",
"resolution": "2k",
"n": 1
}'{
"code": 200,
"msg": "success",
"data": {
"taskId": "clxxx...",
"state": "pending",
"model": "kling-image-gen/kling-v3"
}
}{
"code": 200,
"msg": "success",
"data": {
"taskId": "clxxx...",
"state": "completed",
"model": "kling-image-gen/kling-v3",
"resultUrls": ["https://...image.png"],
"createTime": 1705123450000,
"completeTime": 1705123500000
}
}{
"code": 200,
"msg": "success",
"data": {
"taskId": "clxxx...",
"state": "failed",
"model": "kling-image-gen/kling-v3",
"failMsg": "Content policy violation"
}
}在创建请求中传入 callback_url 后,任务进入 completed 或 failed 终态时,我们会向该地址发起一次 HTTP POST。请求头仅包含 Content-Type: application/json,无签名头。失败会自动重试 3 次(指数退避 1s/2s/4s,单次超时 10s);如果仍未成功,后台会在 30 分钟内继续补偿重发,直到接收端返回 2xx。
POST {your callback_url}
Content-Type: application/json
{
"code": 200,
"msg": "success",
"data": {
"taskId": "clxxx...",
"model": "kling-image-gen/kling-v3",
"state": "completed" | "failed",
"param": "<JSON string>", // request params, JSON.parse once
"resultJson": "<JSON string> | null", // result object, JSON.parse once
"failCode": null | "string",
"failMsg": null | "string",
"costTime": 12345, // duration in ms
"completeTime": 1705123500000, // ms epoch
"createTime": 1705123450000 // ms epoch
}
}注意:data.param 与 data.resultJson 都是 JSON 字符串,使用前必须 JSON.parse 一次。
{
"resultUrls": [
"https://r2.apimodels.app/images/xxx.png"
]
}resultUrls 为已上传至 Cloudflare R2 的图片 URL 数组,多图运行会返回多张。state=failed 时 resultJson 通常为 null 或 {"resultUrls":[]},请不要假设一定有链接。
app.post('/webhook/kling-image', express.json(), (req, res) => {
const { taskId, state, resultJson, failMsg } = req.body.data
if (state === 'completed') {
const { resultUrls } = JSON.parse(resultJson)
console.log('image ready', taskId, resultUrls[0])
} else {
console.warn('image failed', taskId, failMsg)
}
res.status(200).end() // must be 2xx, otherwise we retry
})pending任务已排队,等待处理processing图像生成中completed图像生成成功failed图像生成失败400请求错误 - 参数缺失或无效401未授权 - API 密钥无效402余额不足 - 积分不够404未找到 - 任务 ID 不存在500服务器内部错误