跳转到主要内容
POST
/
api
/
v1
/
client
/
job
/
CreateTask
图片多人换脸
curl --request POST \
  --url https://api.crun.ai/api/v1/client/job/CreateTask \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "model": "image-face-swap-multi",
  "callback_url": "https://your-domain.com/api/callback",
  "input": {
    "detect_id": "m1oZzqYp9dN",
    "image_url": "https://example.com/group-photo.png",
    "faces": [
      {
        "face_id": 0,
        "target": "https://example.com/new-face-0.jpg"
      },
      {
        "face_id": 1,
        "target": "https://example.com/detected-face-1.jpg"
      }
    ],
    "disable_safety_checker": false
  }
}
'
{
  "code": 200,
  "message": "success",
  "data": {
    "task_id": "task_12345678"
  }
}

概述

多人图片换脸用于按人脸 ID 替换图片中的一个或多个人脸。先创建人脸检测任务,再查询检测结果获得 detect_idfaces 列表,最后在换脸请求中用 faces 数组指定每张人脸的目标图片。
detect_id 有效期为 1 小时。换脸时传入的资源地址必须和检测时使用的图片地址相同。

流程

1

创建检测任务

调用人脸检测接口,提交需要换脸的图片地址。
2

查询检测结果

调用人脸检测结果接口,获取 result.id 作为 detect_id,并读取 result.faces 中的人脸 ID 和人脸图片。
3

提交多人换脸

faces 数组中为每个 face_id 设置目标图片 URL。

请求示例

{
  "model": "image-face-swap-multi",
  "callback_url": "https://your-domain.com/api/callback",
  "input": {
    "detect_id": "m1oZzqYp9dN",
    "image_url": "https://example.com/group-photo.png",
    "faces": [
      {
        "face_id": 0,
        "target": "https://example.com/new-face-0.jpg"
      },
      {
        "face_id": 1,
        "target": "https://example.com/detected-face-1.jpg"
      }
    ]
  }
}
如果不想替换某张人脸,请将对应 face_idtarget 保持为上一步检测结果中的原人脸图片 URL。

参数说明

detect_id
string
必填
人脸检测结果 ID,由人脸检测结果接口的 data.result.id 返回。
image_url
string
必填
需要换脸的图片 URL,必须与检测时传入的资源地址一致。
faces
array
必填
描述应该替换哪些人脸的数组。每一项包含 face_idtarget
faces[].face_id
integer
必填
检测结果中人脸的 ID。
faces[].target
string
必填
目标人脸图片 URL。要替换人脸时传入新人脸图片;不替换时保留检测结果中的原人脸图片 URL。

查询任务状态

提交任务后,使用统一查询接口检查进度并获取结果:

获取任务信息

了解如何查询任务状态并获取生成结果
生产环境建议使用 callback_url 在任务完成时接收自动通知,而不是轮询状态接口。

相关资源

人脸检测

提交图片进行人脸检测

人脸检测结果

查询检测状态并获取 detect_id 与人脸列表

通用 API

查看账户剩余积分

授权

x-api-key
string
header
必填

所有 API 都需要通过 API Key 认证。

获取 API Key:

  1. 访问 API Key 管理页面 获取你的 API Key

使用方式: 添加到请求头:

x-api-key: YOUR_API_KEY

注意:

  • 请妥善保管你的 API Key,不要分享给他人
  • 如果怀疑 API Key 已泄露,请立即在管理页面重置

请求体

application/json
model
enum<string>
必填

此接口使用的模型名称,必须为 image-face-swap-multi

可用选项:
image-face-swap-multi
input
object
必填

多人换脸输入参数。

callback_url
string<uri>

可选。用于接收任务完成通知的回调地址。

示例:

"https://your-domain.com/api/callback"

响应

请求成功

code
enum<integer>

响应状态码

  • 200:成功 - 请求已成功处理
  • 401:未授权 - 认证凭据缺失或无效
  • 402:余额不足 - 账户积分不足,无法执行操作
  • 404:未找到 - 请求的资源或接口不存在
  • 422:验证错误 - 请求参数未通过校验
  • 429:请求过多 - 已超过该资源的请求限制
  • 455:服务不可用 - 系统正在维护
  • 500:服务器错误 - 处理请求时发生意外错误
  • 501:生成失败 - 内容生成任务失败
  • 505:功能已禁用 - 请求的功能当前不可用
可用选项:
200,
401,
402,
404,
422,
429,
455,
500,
501,
505
message
string

响应消息,失败时为错误描述

示例:

"success"

data
object