API замены лица

Добавьте замену лица на фото и видео в свой продукт простой REST API. Отправьте задачу, опросите результат и получите размещённый URL выхода.

Доступ к API входит во все планы подписки. Запросы тратят те же кредиты, что веб-приложение: отдельного счёта за API нет.

Как это работает

  1. 1

    Создайте ключ API

    Оформите любой план и создайте ключ в панели, в разделе «Ключи API». Ключ показывается один раз, поэтому сохраните его в безопасном месте.

  2. 2

    Загрузите файлы

    Запросите предварительно подписанный URL загрузки и затем сделайте PUT исходного лица и целевого изображения или видео.

  3. 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.jpg

POST /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КодЗначение
401INVALID_API_KEYКлюч API отсутствует, недействителен, отключён или срок его действия истёк.
403API_REQUIRES_SUBSCRIPTIONУ аккаунта нет активной подписки. Оформите план, чтобы пользоваться API.
402INSUFFICIENT_CREDITSНа аккаунте недостаточно кредитов для этой задачи. Повысьте план или купите пакет кредитов.
400VIDEO_TOO_LONGВидео длиннее лимита длительности для выбранных опций.
429RATE_LIMITEDСлишком много запросов. Снизьте темп и повторите после короткой паузы.

Частые вопросы

Кто может пользоваться API замены лица?

Любой аккаунт с активным планом подписки. Бесплатные аккаунты могут пользоваться веб-приложением, но не API.

Сколько стоят запросы к API?

Столько же, сколько веб-приложение: 15 кредитов за замену на изображении и 20 кредитов за замену на видео. Запросы тратят тот же баланс кредитов, что и использование в вебе.

Поддерживает ли API замену лица на видео?

Да. Задайте targetType как video. Простые замены на видео принимают до 300 секунд; замены с улучшением лица или кадра — до 90 секунд.

Как получить результат?

Опрашивайте GET /api/v1/face-swap/{taskId}, пока status не станет succeeded. В ответе будет outputUrl с размещённым файлом результата.

Что происходит, когда задача падает?

Неудачные задачи возвращаются автоматически. Ответ статуса содержит поле error с причиной.

Что происходит, когда подписка заканчивается?

Ключи API сразу перестают работать. Они снова заработают, когда вы продлите подписку: новые ключи не нужны.

Начните собирать

Создайте ключ API и запустите первую замену лица за минуты.

Создать ключ API