API замены лица
Добавьте замену лица на фото и видео в свой продукт простой REST API. Отправьте задачу, опросите результат и получите размещённый URL выхода.
Доступ к API входит во все планы подписки. Запросы тратят те же кредиты, что веб-приложение: отдельного счёта за API нет.
Как это работает
1
Создайте ключ API
Оформите любой план и создайте ключ в панели, в разделе «Ключи API». Ключ показывается один раз, поэтому сохраните его в безопасном месте.
2
Загрузите файлы
Запросите предварительно подписанный URL загрузки и затем сделайте PUT исходного лица и целевого изображения или видео.
3
Замените и опросите
Отправьте задачу замены лица, опрашивайте её, пока статус не станет succeeded, и скачайте URL выхода.
Аутентификация
Отправляйте ключ API в заголовке x-api-key с каждым запросом. Ключи принадлежат аккаунту и тратят кредиты аккаунта. Держите их в секрете и меняйте из панели, если они утекли.
x-api-key: adf_YOUR_API_KEYЭндпоинты
POST /api/v1/uploads
Создаёт предварительно подписанный URL загрузки для исходного или целевого файла. Сделайте PUT файла на uploadUrl с тем же Content-Type и затем используйте url в запросе замены лица. Поддерживаемые типы: JPEG, PNG, WebP, MP4, QuickTime, WebM.
curl -X POST https://aideepfake.io/api/v1/uploads \
-H "x-api-key: adf_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"fileName": "target.jpg", "contentType": "image/jpeg"}'
# → { "success": true, "data": { "uploadUrl": "...", "url": "https://...", "expiresIn": 600 } }
curl -X PUT "UPLOAD_URL_FROM_RESPONSE" \
-H "Content-Type: image/jpeg" \
--data-binary @target.jpgPOST /api/v1/face-swap
Запускает задачу замены лица. Замена на изображении стоит 15 кредитов, на видео — 20 кредитов, те же цены, что в веб-приложении. Задайте targetType как image или video. Необязательные поля: faceEnhance, frameEnhance, watermark и targetDurationSeconds для видео.
curl -X POST https://aideepfake.io/api/v1/face-swap \
-H "x-api-key: adf_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"sourceUrl": "https://.../source.jpg",
"targetUrl": "https://.../target.jpg",
"targetType": "image"
}'
# → { "success": true, "data": { "taskId": "...", "creditsCost": 15 } }Лимиты видео: до 300 секунд для простой замены и до 90 секунд, когда включён faceEnhance или frameEnhance.
GET /api/v1/face-swap/{taskId}
Опрашивает статус задачи. Поле status переходит из processing в succeeded или failed. При успехе outputUrl содержит размещённый результат. Неудачные задачи возвращаются автоматически.
curl https://aideepfake.io/api/v1/face-swap/TASK_ID \
-H "x-api-key: adf_YOUR_API_KEY"
# → { "success": true, "data": { "taskId": "...", "status": "succeeded",
# "outputUrl": "https://...", "targetType": "image" } }GET /api/v1/credits
Показывает текущий баланс кредитов и план до отправки задач.
curl https://aideepfake.io/api/v1/credits \
-H "x-api-key: adf_YOUR_API_KEY"
# → { "success": true, "data": { "credits": 1000, "subscriptionCredits": 985,
# "oneTimeCredits": 15, "planId": "...", "currentPeriodEnd": "..." } }Цены и квота
У API нет отдельного тарифа. Каждый запрос тратит кредиты плана подписки: 15 кредитов за замену на изображении и 20 кредитов за замену на видео, ровно как в веб-приложении. Месячную квоту кредитов задаёт ваш план.
Сравнить планыКоды ошибок
| HTTP | Код | Значение |
|---|---|---|
| 401 | INVALID_API_KEY | Ключ API отсутствует, недействителен, отключён или срок его действия истёк. |
| 403 | API_REQUIRES_SUBSCRIPTION | У аккаунта нет активной подписки. Оформите план, чтобы пользоваться API. |
| 402 | INSUFFICIENT_CREDITS | На аккаунте недостаточно кредитов для этой задачи. Повысьте план или купите пакет кредитов. |
| 400 | VIDEO_TOO_LONG | Видео длиннее лимита длительности для выбранных опций. |
| 429 | RATE_LIMITED | Слишком много запросов. Снизьте темп и повторите после короткой паузы. |
Частые вопросы
Кто может пользоваться API замены лица?
Любой аккаунт с активным планом подписки. Бесплатные аккаунты могут пользоваться веб-приложением, но не API.
Сколько стоят запросы к API?
Столько же, сколько веб-приложение: 15 кредитов за замену на изображении и 20 кредитов за замену на видео. Запросы тратят тот же баланс кредитов, что и использование в вебе.
Поддерживает ли API замену лица на видео?
Да. Задайте targetType как video. Простые замены на видео принимают до 300 секунд; замены с улучшением лица или кадра — до 90 секунд.
Как получить результат?
Опрашивайте GET /api/v1/face-swap/{taskId}, пока status не станет succeeded. В ответе будет outputUrl с размещённым файлом результата.
Что происходит, когда задача падает?
Неудачные задачи возвращаются автоматически. Ответ статуса содержит поле error с причиной.
Что происходит, когда подписка заканчивается?
Ключи API сразу перестают работать. Они снова заработают, когда вы продлите подписку: новые ключи не нужны.
Начните собирать
Создайте ключ API и запустите первую замену лица за минуты.
Создать ключ API