The YouCam Online Editor AI APIs are series of AI effects that let you beautify your photos, as well as generate amazing aesthetic creations beyond human imagination. Let the magic begin.
PLEASE NOTE that by reading this API documentation, or by setting up code pursuant to the instructions in this API documentation, you acknowledge it adheres to Perfect Corp's Privacy policy, and Terms of Service. And If you have any issue, please contact: YouCamOnlineEditor_API@perfectcorp.com
YouCam Online Editor is a powerful and easy-to-use AI platform that provides beautiful and true-to-life visual effects thanks to the latest AI technology. This API document will briefly introduce how to integrate these awesome AI effects into your business. YouCam Online Editor AI APIs are standard RESTful APIs to let you easily integrate to your website, e-commerce platforms, iOS/Android APP, applets, mini-programs, and more.
The YouCam Online Editor AI APIs are built on top of RESTful web APIs. The API server is the host of all APIs. Once you complete the authentication, you can start your AI tasks through the API Server.
To ensure fair usage and prevent abuse, our API implements rate limiting. There are two types of rate limits:
Each IP address is allowed a maximum of 100 requests per 5 minutes. If this limit is exceeded, subsequent requests will receive a 429 Too Many Requests
error.
Each access token is allowed a maximum of 100 requests per minute. If this limit is exceeded, subsequent requests will receive a 429 Too Many Requests
error.
Both conditions must be met for a request to be accepted. If either condition is not met, the request will receive a 429 Too Many Requests
error. Please note that each query related to credit will be processed real-time. Other APIs can use the access token util expired.
It is recommended that you handle rate limit errors gracefully in your application by implementing the appropriate backoff and retry mechanisms.
First, you need to register a YouCam Online Editor account for free at https://yce.perfectcorp.com/. You can then purchase or subscribe to get your credits to use the service. You can see your subscription plan, pay as you go credits, and your usage record at https://yce.perfectcorp.com/account. You can go to the API Key tab under your account page to generate and maintain your API keys to start using the YouCam Online Editor AI APIs.
To complete the authentication and start using the AI APIs, you need:
Go to https://yce.perfectcorp.com/account/apikey and create the API Key.
Upon creation is completed, it will show the API Key and the Secret key. Where your API Key is the client_id and the Secret key is the client_secret in this document to complete the authentication process.
:warning: Warning: Please kindly note that your Secret key can only be copied at step #2. Once the dialog is closed, there is no method to obtain the Secret key again unless create an another API Key.
To obtain id_token, you need to follow the method below and convert client_secret into id_token
Encrypt
client_id=<client_id>×tamp=<timestamp in millisecond>
with RSA X.509 format Base64 encoded client_secret to obtain id_token
Sample code using JavaScript:
Calling the authentication API to obtain the access_token to start using the YouCam Online Editor AI APIs.
Please note that your credits will be consumed when the resulting image was successfully generated. You may refer to the pricing page regarding the price of each task and how to obtain credits.
Now, let's consider an example usage flow of an AI Photo Enhance API calling sequence. After successfully authorizing and getting the access_token, you can call 'file/enhance' to acquire the upload URL and a File ID associated with it. So that You can upload your photo to the upload URL and use the File ID to run a AI task.
Subsequently, calling POST 'task/enhance' with the File ID executes the enhance task and obtains a task ID.
This task ID is used to monitor the task's status through polling GET 'task/enhance' to retrieve the current engine status. Until the engine completes the task, the status will remain 'running', and no credits will be consumed during this stage.
The task will change to the 'success' status after the engine successfully processes your input file and generates the resulting image. Your credits will only be consumed in this case. If the engine fails to process the task, the task's status will change to 'error' and no credits will be consumed.
When deducting credits, the system will prioritize those nearing expiration. If the expiration date is the same, it will deduct the credits obtained on the earliest date.
All uploaded files are kept on the server for one day and deleted automatically after they are expired. The resulting files generated by the system are kept on the server for 30 days and deleted automatically after they are generated.
AI Editing & Enhance | Supported Dimensions | Supported File Size | Supported Formats |
---|---|---|---|
AI Photo Enhance | 4096x4096 (long side <= 4096) | < 10MB | jpg/png/heic |
AI Video Enhance | input: long side <= 1920; output: max 2x input resolution | <100MB | container: mov, mp4; video codec: MPEG-4, H.264 AVC; audio codec: aac, mp3 |
AI Object Removal | 4096x4096 (long side <= 4096) | < 10MB | jpg/png/heic |
Al Photo Background Removal | 4096x4096 (long side <= 4096) | < 10MB | jpg/png/heic |
AI Photo Background Change | 4096x4096 (long side <= 4096) | < 10MB | jpg/png/heic |
AI Photo Background Blur | 4096x4096 (long side <= 4096) | < 10MB | jpg/png/heic |
AI Photo Colorize | 4096x4096 (long side <= 4096) | < 10MB | jpg/png |
AI Photo Lighting | 4096x4096 (long side <= 4096, short side >= 256) | < 10MB | jpg/png |
AI Photo Color Correction | 4096x4096 (long side <= 4096) | < 10MB | jpg/png |
AI Replace | long side <= 2048, short side <= 1024 | < 10MB | jpg/png |
Generative AI | Supported Dimensions | Supported File Size | Supported Formats |
---|---|---|---|
AI Image Generator | 1024x1024 (long side <= 1024) | < 10MB | jpg/png |
AI Hairstyle Generator | long side <= 1024, face width >= 128, face pose: -10 < pitch < +10, -45 < yaw < +45, -15 < roll < +15 | < 10MB | jpg |
AI Hair Extension | long side <= 1024, face width >= 128, face pose: -10 < pitch < +10, -45 < yaw < +45, -15 < roll < +15 | < 10MB | jpg/png |
AI Hair Bang Generator | long side <= 1024, face width >= 128, face pose: -10 < pitch < +10, -45 < yaw < +45, -15 < roll < +15 | < 10MB | jpg/png |
AI Hair Volume Generator | long side <= 1024, face width >= 128, face pose: -10 < pitch < +10, -45 < yaw < +45, -15 < roll < +15 | < 10MB | jpg/png |
Face AI | Supported Dimensions | Supported File Size | Supported Formats |
---|---|---|---|
AI Makeup Transfer | 1024x1024 (long side <= 1024) | < 10MB | jpg/png/heic |
AI Face Swap | 4096x4096 (long side <= 4096) | < 10MB | jpg/png |
Error Code | description |
---|---|
exceed_max_filesize | Input file size exceeds the maximum limit |
invalid_parameter | Invalid parameter value |
error_download_image | Download source image error |
error_download_mask | Download mask image error |
error_decode_image | Decode source image error |
error_decode_mask | Decode mask image error |
error_nsfw_content_detected | NSFW content detected in source image |
error_no_face | No face detected on source image |
error_pose | Failed to detect pose on source image |
error_face_parsing | Failed to do face segmentation on source image |
error_inference | Inference pipeline error |
exceed_nsfw_retry_limits | Exceed the retry limits to avoid generated NSFW image |
error_upload | Upload result image error |
error_multiple_people | Multiple people detected in the source image |
error_no_shoulder | Shoulders are not visible in the source image |
error_large_face_angle | The face angle in the uploaded image is too large |
unknown_internal_error | Others |
For more information and questions, please refer to our blog page and the FAQ page. Or send an e-mail to YouCamOnlineEditor_API@perfectcorp.com. Our customer success team are very happy to help. ;)
Last modified: 29 Oct. 2024
client_id required | string Your api key |
id_token required | string Encrypt |
status | integer Response status | ||
object | |||
|
{- "client_id": "BMIL1PIJjCV96JlSl64RlVksHK1cD0PQ",
- "id_token": "dMtD+7WpLVe8Z1sdJAQ6GhuJBI+YeR79+FVNspLjEsfMIpfiXmdyskjAPEFgCwseJJozqZeIPjtZi8f5ttSHjCYjnZaYI5mhGU4IGdGofAVcwIBA5UJ/FQcoXh29S2ZG66uKUcnyNnbEW9iu1vha/juy7IRvafOQ3Yx4nxbmrEM="
}
{- "status": 200,
- "result": {
- "access_token": "AQcCGQ+lAAAAEjQwNTQ4ODQ5MDc1NzYyMTc4MgAAAABBAAABAfpZPqyABAE=.10MGh73dMVN6zjfQMRLPPfvxmNG="
}
}
status | integer Response status | ||||||||
Array of objects | |||||||||
Array
|
{- "status": 200,
- "results": [
- {
- "id": 13105541279084536,
- "type": "SubsToken",
- "amount": 10,
- "expiry": 1704789135000
}
]
}
page_size | integer Example: page_size=20 Number of results to return in a page. Valid value should be between 1 and 30. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
status | integer Response status | ||||||||||||||||||||||||||
object | |||||||||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "history": [
- {
- "id": 38173479337460984,
- "timestamp": 1703146067000,
- "action": "photo_enhance",
- "target_id": "7TWFkuE2Z9uR0NOxSmQ1rh4PJ5Zx7YJ5U9SAz51q0QHVwMP+Jb1XbjPsf7ZgUgLY",
- "info": {
- "credits": [
- {
- "id": 24409059381740548,
- "amount": -2
}, - {
- "id": 27297116883780870,
- "amount": 0
}
]
}
}
]
}
}
Sharpen, upscale, denoise, and fix colors to transform low-resolution images into high-quality masterpieces.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||
required | object | ||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0,
- "params": {
- "scale": 1
}
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 1000,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Remove unwanted objects with precision from your photos while preserving intricate details.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||
required | object | ||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
], - "mask_ids": [
- "eA1CCL3kG4w2s0kpbo2pkah59VfxzIjxahJD2wWm7zw="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 600,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Remove background from photo with impeccable accuracy, ensuring the high quality of images.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Repeated requests with the same request ID will be ignored by the server. This ID should remain consistent for retries due to connection issues. This is to prevent duplicate deduction of credits caused by running the same task repeatedly. For instance, if the same | ||||||||||||
required | object | ||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
The AI Photo Background Change tool enhances photos by effortlessly isolating the subject from the background image, allowing for various application, including in business, to sharpen the focus on product subjects.
By using this API, you can easily extract a foreground mask from a input image. So that you can change the background using the mask by any other images or colors.
Sample Before:
After:
Before:
After:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Repeated requests with the same request ID will be ignored by the server. This ID should remain consistent for retries due to connection issues. This is to prevent duplicate deduction of credits caused by running the same task repeatedly. For instance, if the same | ||||||||||||
required | object | ||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 1000,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
The AI Photo Background Blur tool enhances photos by effortlessly isolating the subject from the background image, allowing for various application, including in bokeh simulation, to sharpen the focus on product subjects.
By using this API, you can easily extract a foreground mask from a input image. So that you can blur the background using the mask by any image blur algorithms like the gaussian blur or custom blur kernels.
Sample Before:
After:
Before:
After:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Repeated requests with the same request ID will be ignored by the server. This ID should remain consistent for retries due to connection issues. This is to prevent duplicate deduction of credits caused by running the same task repeatedly. For instance, if the same | ||||||||||||
required | object | ||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 1000,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Using the latest AI technology to colorize black and white photos, old images, or repair them.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||
required | object | ||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Transform words into vivid visuals with our cutting-edge AI text-to-image feature.
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
status | integer Response status | ||||||||||||||
object | |||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "groups": [
- {
- "id": 18213963761051864,
- "info": {
- "title": "Cartoon"
}
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
style_group_id | integer Example: style_group_id=18213963761051864 The id of style group |
status | integer Response status | ||||||||||||||||
object | |||||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "styles": [
- {
- "id": 22205685004925400,
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||
required | object | ||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "actions": [
- {
- "id": 0,
- "params": {
- "prompt": "A little cat",
- "style_group_id": 18213963761051864,
- "style_ids": [
- 22205685004925400
]
}
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 100,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Using the latest AI technology to try a wide variety of hairstyles, catering to both women and men, meeting different gender and style preference. Discover a world of styles: curly, long, buzz cut, and more. Our AI-powered hair changer lets you experiment effortlessly. Find your ideal hairstyle now!
Want to see more Hair styles? Please refer to https://yce.perfectcorp.com/ai-hairstyle-generator.
Use case:
Suggestions for How to Shoot:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
status | integer Response status | ||||||||||||||
object | |||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "groups": [
- {
- "id": 18213963761051864,
- "info": {
- "title": "Female"
}
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
style_group_id | integer Example: style_group_id=18213963761051864 The id of style group |
status | integer Response status | ||||||||||||||||
object | |||||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "styles": [
- {
- "id": 22205685004925400,
- "info": {
- "title": "Long Wave",
}
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||
required | object | ||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0,
- "params": {
- "style_group_id": 18213963761051864,
- "style_ids": [
- 22205685004925400
]
}
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "string",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Discover Your Perfect Hair Extension Match with AI Experiment with a variety of lengths—from long to extra-long—styles, colors, and bangs, all from the comfort of your device. No more guessing games—see exactly how each hair extension style looks on you with the advanced Generative AI. Make informed styling decisions before committing to a new look. With the advanced Hair Extension Try-On, which naturally blends with your current hair length, it’s the perfect time to experiment with super-long styles.
Use case:
Suggestions for How to Shoot:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
status | integer Response status | ||||||||||||||
object | |||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "groups": [
- {
- "id": 18213963761051864,
- "info": {
- "title": "Female"
}
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
style_group_id | integer Example: style_group_id=18213963761051864 The id of style group |
status | integer Response status | ||||||||||||||||
object | |||||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "styles": [
- {
- "id": 22205685004925400,
- "info": {
- "title": "Long Wave",
}
}
]
}
}
request_id | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||
object | |||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "actions": [
- {
- "id": 0,
- "params": {
- "style_group_id": 18213963761051864,
- "style_ids": [
- 22205685004925400
]
}
}
], - "file_sets": {
- "src_ids": [
- "string"
]
}
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "string",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Try on Your Perfect Hair Bangs with AI Realistic Looks: Experiment with realistic bangs and discover the style that best complements your face. Versatile Styling Options: Explore a wide range of bangs styles to suit every personality and occasion. Effortless Experience: Enjoy a user-friendly interface that makes trying new bangs easy and fun.
Want to see more Hair Bang styles? Please refer to https://yce.perfectcorp.com/bangs-filter.
Use case:
Suggestions for How to Shoot:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
status | integer Response status | ||||||||||||||
object | |||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "groups": [
- {
- "id": 18213963761051864,
- "info": {
- "title": "Female"
}
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
style_group_id | integer Example: style_group_id=18213963761051864 The id of style group |
status | integer Response status | ||||||||||||||||
object | |||||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "styles": [
- {
- "id": 22205685004925400,
- "info": {
- "title": "Long Wave",
}
}
]
}
}
request_id | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||
object | |||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "actions": [
- {
- "id": 0,
- "params": {
- "style_group_id": 18213963761051864,
- "style_ids": [
- 22205685004925400
]
}
}
], - "file_sets": {
- "src_ids": [
- "string"
]
}
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "string",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Enhance Your Look with Fuller, More Voluminous Hair Instantly! Add natural volume to fine or thinning hair. Seamlessly fill gaps or add hair with AI. Works for all hair types: straight, curly, thin. Perfect for dating profiles, resumes & more. Our AI tool helps you achieve perfect hair volume and density in all your photos, whether for personal, professional, or social use. Say goodbye to bad hair days in pictures and hello to fresh, voluminous hair every time.
Use case:
Suggestions for How to Shoot:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
status | integer Response status | ||||||||||||||
object | |||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "groups": [
- {
- "id": 18213963761051864,
- "info": {
- "title": "Female"
}
}
]
}
}
page_size | integer Example: page_size=20 Number of results to return in this page. Valid value should be between 1 and 20. Default 20. |
starting_token | string Example: starting_token=13045969587275114 Token for current page. Start with |
style_group_id | integer Example: style_group_id=18213963761051864 The id of style group |
status | integer Response status | ||||||||||||||||
object | |||||||||||||||||
|
{- "status": 200,
- "result": {
- "next_token": 13045969587275114,
- "styles": [
- {
- "id": 22205685004925400,
- "info": {
- "title": "Long Wave",
}
}
]
}
}
request_id | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||
object | |||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "actions": [
- {
- "id": 0,
- "params": {
- "style_group_id": 18213963761051864,
- "style_ids": [
- 22205685004925400
]
}
}
], - "file_sets": {
- "src_ids": [
- "string"
]
}
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "string",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Expand your photos with our AI Image Extender. Seamlessly broaden visuals for all ratios.
Whether you're aiming for Instagram glory or framing a digital masterpiece, select from a variety of sizes and ratios for that perfect fit. As you tweak and transform, our AI seamlessly weaves its magic, ensuring the expanded areas blend flawlessly with your original photo.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||||||||||||||||||
required | object | ||||||||||||||||||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0,
- "params": {
- "output_width": 960,
- "output_height": 1280,
- "input_x": 240,
- "input_y": 320,
- "input_width": 480,
- "input_height": 640,
- "crop_input_x": 0,
- "crop_input_y": 0,
- "crop_input_width": 480,
- "crop_input_height": 640
}
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 1000,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Brighten your images with Our AI image brightening tool effortlessly. With the legendary AI technology, lighten up any image of your choice. Brighten your dark photos or images with our AI Photo Lighting tool, illuminating your memories in a flash.
Before After Brighten low-light photos effortlessly using AI tool, bringing out stunning details and vibrant colors.
Before After Brighten your product pictures with AI Lighting tool for a captivating and stunning presentation.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||
required | object | ||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0,
- "params": { }
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 1000,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Perfect AI Color Correction let you automatically adjust saturation, temperature, and hue of photos with ease. Adjust white balance to correct color temperature, enhance saturation and make it vibrant, correct exposure level to balance brightness, remove color casts or tints, improve skin tones for a nature-looking portrait, enhance shadow and highlight details, remove noise and improve clarity, or even apply creative color grading effects all in one touch.
Sample Before:
After:
Before:
After
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||
required | object | ||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Replace unwanted elements with new objects using AI Replace. By using this API, you can instantly remove unwanted object from your photo and replace it with a new one just by using text. Eliminate anything from bags to cars and beyond.
Sample:
For content creators aiming to perfect their social media presence, AI Replace offers a hassle-free way to polish travel photos or promotional images. Remove and replace elements with ease, ensuring your content stands out.
Create stunning room mockups with AI Replace by filling empty spaces with aesthetically pleasing furniture and objects, transforming the perception of any space.
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||
required | object | ||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
], - "msk_ids": [
- "g1tyvBDXW7kx8lg2hh5i2MP2GfB3pUeBdC3JTOrYOW5kR+52vpZpLmOG1d5gfBWm"
]
}, - "actions": [
- {
- "id": 0,
- "params": {
- "prompt": "a cute cate"
}
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 1000,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Just Upload a Desired Photo with the Look You Like! AI Makeup Transfer makes it easy and fun to experiment with different looks by letting you to upload desired photo to try them one by one. Have any makeup look you want to try now? Let us amaze you with AI Makeup Transfer!
First, upload a photo of yourself where your face and its features are clearly visible as the target image.
Then, upload a photo of your favorite makeup look as the reference image.
There you have it - an AI Makeup Transferred photo.
Samples:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||
required | object | ||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
], - "ref_ids": [
- "ligsPdfZTgNrbXnAOsPMFCiKyqGEJWl7SkYBBv6mHUac8ywz/bnMOrhVtlbo86Mc"
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Using AI Face Swap for hyper-realistic effect with multiple faces supported. Our face swap artificial intelligence supports swapping one or multiple faces. Either for creating funny pictures of faces, or need a professional tool, we've got you covered.
Multiple faces swap sample:
Single face swap sample:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||
required | object | ||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||||
object | |||||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
- "faces": [
- {
- "bbox": [
- 0,
- 0,
- 100,
- 100
]
}
]
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||||||||||
required | object | ||||||||||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
], - "ref_ids": [
- "ligsPdfZTgNrbXnAOsPMFCiKyqGEJWl7SkYBBv6mHUac8ywz/bnMOrhVtlbo86Mc"
]
}, - "actions": [
- {
- "id": 0,
- "params": {
- "face_mapping": [
- {
- "index": 0,
- "position": 0
}
]
}
}
]
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}
Fix blur, adjust sharpness and brightness, and instantly transform low-quality videos into clear, high-quality content with AI. From 480p to 4K, unblur, upscale, and boost quality with the video enhancer—no skills needed.
Supported format: .mp4,.mov,.m4v are supported. Please keep the duration under 1 minute. Maximun output resolution: up to 4K.
Sample:
required | Array of objects | ||||
Array
|
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg"
}
]
}
{- "status": 200,
- "result": {
- "files": [
- {
- "content_type": "image/jpg",
- "file_name": "my-selfie.jpg",
- "file_id": "U8aqJbsXGT537jtGnEDFHqxdDXqh8+oTF/cSkLimzuvVwMP+Jb1XbjPsf7ZgUgLY",
- "requests": [
- {
- "headers": {
- "Content-Type": "image/jpg"
}, - "method": "PUT"
}
]
}
]
}
}
request_id required | integer Incremental request number starting from 0. Requests with the same | ||||||||||||||||||
required | object | ||||||||||||||||||
|
status | integer Response status | ||
object | |||
|
{- "request_id": 0,
- "payload": {
- "file_sets": {
- "src_ids": [
- "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
]
}, - "actions": [
- {
- "id": 0
}
], - "custom": {
- "dst_duration": 0
}
}
}
{- "status": 200,
- "result": {
- "task_id": "SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID"
}
}
task_id | string Example: task_id=SX9ALF1Z+KIiNa+GaFRp4bI5gijoc/ckI2teebLq35Bo1Nwc++3iXXdKqnU4/LID ID of task to check |
status | integer Response status | ||||||||||||||||||||
object | |||||||||||||||||||||
|
{- "status": 200,
- "result": {
- "polling_interval": 500,
- "status": "running",
- "error": "exceed_max_filesize",
- "results": [
- {
- "id": 0,
- "data": [
- {
- "dst_id": "Iq4cbOV90rXJHSTfBGBTTYXBF9p1B0xCmy8nIrjTa10=",
}
]
}
]
}
}