Faceswap
Swap the face on a target image with the face on a provided image. Each image must contain only one face.
POST
https://api.apiframe.pro/faceswap
Headers
Content-Type
application/json
Authorization*
Your APIFRAME API Key
Body
target_image_url
*
string
The URL of the image where the face will be swapped
swap_image_url
*
string
The url of the image where the new face should be taken from.
webhook_url
string
The final result of this task will be posted at this URL.
webhook_secret
string
Will be passed as x-webhook-secret
in the webhook call headers for authentication.
Response
// Success, the task has been submitted
{
"task_id": "29e983ca-7e86-4017-a9e3-ef6fe9cd5f2a"
}
This endpoint doesn't generate images instantly, you can use the Fetch endpoint to fetch the result or use webhooks.
The result (posted to the webhook_url
or retrieved with the Fetch endpoint) looks like this:
{
"task_id": "29e983ca-7e86-4017-a9e3-ef6fe9cd5f2a",
"image_url": "https://............./xxxxx.png",
"task_type": "faceswap"
}
If the job is not completed, you will get a result like this:
{
"task_id": "29e983ca-7e86-4017-a9e3-ef6fe9cd5f2a",
"task_type": "faceswap",
"status": "processing",
"percentage": "80"
}
Code samples
const axios = require('axios');
let data = JSON.stringify({
"target_image_url": "https://xxxxxxxxxxxxxxxxx/target.png",
"swap_image_url": "https://xxxxxxxxxxxxxxxxx/swap.png"
});
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.apiframe.pro/faceswap',
headers: {
'Content-Type': 'application/json',
'Authorization': 'YOUR_API_KEY'
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
Last updated
Was this helpful?