С чего начать?
Для работы с API необходим ключ. Получить ключ YOUR_API_KEY вы можете по запросу через телеграм.
Необходимые исходные данные
Для замены лица необходимо отправить ссылки на две фотографии:
source — это ссылка на фото, откуда нужно взять лицо.
target — это ссылка на фото, где будет производиться замена лица, т.е. на это фото будем ставить лицо из source.
Форматы файлов в url для source и target должны быть: jpg, jpeg, png или webp
Выполнение запроса на замену лица
Запрос выполняется через отправку CURL
Пример запроса
curl --request POST \
--location 'https://api.faceswap.ru/v2/faces/swap' \
--header 'Authorization: Token YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
{
"source": "https://...",
"target": "https://...",
"upscale": true
}'
Параметр upscale улучшает качество изображения source.
upscale: true
или false
Пример ответа в формате JSON
{
"status": 200,
"error": false,
"route": "api.faceswap.ru/v2/faces/swap",
"data": {
"output": "https://replicate.delivery/pbxt/..."
},
"billing": {
"charged": true,
"amount": 1
},
"server": "DP/API/V2",
"uuid": null
}
Результат замены лица
После выполнения замены лица вы получаете в ответ ссылку на готовое фото output, которое можете сохранить себе и использовать в своем сервисе.
Приневозможности выполнить замену лица отдается «status»: 500
Вероятность замены лица 99%, которая зависит от нескольких факторов:
- видна ли полностью голова на обоих фото source и target, она должна быть полностью входить в кадр;
- на лице не должно быть посторонних предметов. Например, прозрачные очки могут испортить результат замены, также рисунок или татуировка на лице затрудняют генерацию;
- желательно в случае поворота головы, чтобы были видны глаза, нос и рот полностью.
Процесс выполнения замены лица обычно занимает 5-15 секунд, но в какие-то моменты может доходить до 1 минуты в зависимости от текущей нагрузки.
Проверка остатка
Остаток токенов соответствует тому, сколько генераций с заменой лица доступно для указанного API ключа.
Пример запроса
curl --request GET \
--location 'https://api.faceswap.ru/v2/faces/swap' \
--header 'Authorization: Token YOUR_API_KEY' \
--header 'Content-Type: application/json' \
Пример ответа в формате JSON
{
"status": 200,
"error": false,
"route": "api.faceswap.ru/v2/account/quota",
"data": {
"token": {
"activated": true,
"usage": 20,
"limits": 500
}
},
"server": "DP/API/V2",
"uuid": null
}
usage — количество успешно выполненных замен лица,
limits — доступное количество замены лиц для этого API ключа.
Если остались вопросы
Обратитесь в поддержку через телеграм.