Face Swap Plus (Image & Video)
Multi-face swap for images and videos
Documentation Index
Fetch the complete documentation index at: https://docs.akool.com/llms.txt
Use this file to discover all available pages before exploring further.
Features
Face Swap Plus supports advanced face swapping scenarios:- Image and Video: Unified API for both image and video face swap
- Multi-Face: Swap multiple faces at once via
face_mapping - Single Face Mode: Use
single_face_modefor simplified single-face swap - Style Options: Choose between
realistic,beautify, orlosslessstyles
Which API Should I Use?
| Scenario | Recommended API |
|---|---|
| Highest quality image face swap (single face) | Face Swap Pro |
| Multi-face swap (image/video) | Face Swap Plus ✅ |
| Video face swap | Face Swap Plus ✅ (Recommended) |
| V3 compatibility required | Video Faceswap |
Parameters
Core Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
source_url | string | Yes | Source (new) face image URL |
target_url | string | Yes | Target material URL (image or video) |
webhookUrl | string | No | Callback URL for result notification |
face_enhance | boolean | No | Enable face enhancement (default: false) |
model_style | string | No | realistic (default), beautify, or lossless |
single_face_mode | boolean | No | false (default) for multi-face mode, true for single-face mode |
Multi-Face Mode (default)
Whensingle_face_mode is false (default), use face_mapping to define multiple source-target face pairs:
| Parameter | Type | Required | Description |
|---|---|---|---|
face_mapping | array | Yes | Array of face mapping objects |
face_mapping[].source_face_info | object | Yes | Source face info |
face_mapping[].source_face_info.face_url | string | Yes | Source face image URL |
face_mapping[].source_face_info.bbox | number[] | No | Bounding box [x1, y1, x2, y2]. See bbox rules |
face_mapping[].target_face_info | object | Yes | Target face info |
face_mapping[].target_face_info.face_url | string | No | Target face image URL |
face_mapping[].target_face_info.bbox | number[] | No | Bounding box [x1, y1, x2, y2]. See bbox rules |
Single Face Mode
Whensingle_face_mode is true, enables simplified single-face swap mode:
| Parameter | Type | Required | Description |
|---|---|---|---|
single_face_mode | boolean | Yes | Set to true for single-face mode |
When is bbox required?
Thebbox parameter in source_face_info and target_face_info depends on where face_url comes from:
| face_url source | bbox required? | Description |
|---|---|---|
face_urls from Face Detection API | No | The URL is already a cropped face image, no bbox needed |
| User-uploaded original image URL | Yes | Provide bbox from crop_region of the Face Detection API response |
crop_region from Face Detection API returns [x, y, width, height]. Convert it to bbox format [x1, y1, x2, y2]:
x1 = x,y1 = y,x2 = x + width,y2 = y + height
Image Face Swap
Example: Simple Single Face Image Swap
Example: Multi-Face Image Swap with face_urls (no bbox needed)
When usingface_urls from the Face Detection API response, bbox is not required:
Example: Multi-Face Image Swap with original URLs (bbox required)
When using user-uploaded original image URLs, provide bbox fromcrop_region:
Video Face Swap
webhookUrl or poll the Get Result API to check processing status.Video Requirements
- Duration: Keep videos under 60 seconds for optimal processing time
- Format: MP4, MOV, AVI supported
- Resolution: Higher resolution videos may take longer to process
- Encoding: H.264 recommended
- Face Count: For best results, limit to 8 or fewer faces
Example: Single Face Video Swap
Example: Multi-Face Video Swap
Example: Video Swap with Webhook
Checking Results
After submitting a face swap request, use the Get Result API to check the status:| Status | Description |
|---|---|
| 1 | In Queue - Your request is waiting to be processed |
| 2 | Processing - Face swap is currently being generated |
| 3 | Success - Face swap completed, result URL is available |
| 4 | Failed - Face swap failed, please check your input |
Authorizations
Your API Key used for request authorization. If both Authorization and x-api-key have values, Authorization will be used first and x-api-key will be discarded.
Body
Source (new) face image URL
Target material URL (image or video)
Callback URL for result notification
Whether to enable face enhancement (default false)
Model style: realistic (default), beautify, or lossless
realistic, beautify, lossless Face mapping array for multi-face swap (required when single_face_mode is false).
Each item maps one source face to one target face.
When true, enables single-face mode for simplified single-face swap.
When false (default), uses face_mapping for multi-face swap.