Perfect AI API

Документация по использованию API для интеграции с нашей платформой

Быстрый старт

Все API запросы требуют аутентификации через Bearer токен. Получите токен после регистрации и входа в систему.

// Пример базового запроса
fetch('https://your-domain.com/api/generations', {
  headers: {
    'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
})

POST /api/generate/image
Требует авторизации

Генерация изображения

Запрос:

{
  "modelId": "model_id",
  "prompt": "Красивый закат над океаном",
  "negativePrompt": "размытие, низкое качество",
  "width": 1024,
  "height": 1024,
  "steps": 30,
  "cfgScale": 7.5,
  "seed": 12345,
  "sampler": "euler"
}

Ответ:

{
  "success": true,
  "data": {
    "id": "generation_id",
    "status": "QUEUED",
    "cost": 5.0
  }
}

POST /api/generate/video
Требует авторизации

Генерация видео

Запрос:

{
  "modelId": "model_id",
  "prompt": "Красивый закат над океаном",
  "negativePrompt": "размытие",
  "width": 720,
  "height": 480,
  "duration": 5,
  "fps": 24,
  "steps": 50,
  "cfgScale": 7.5,
  "seed": 12345
}

GET /api/generations
Требует авторизации

Получить список генераций пользователя

// Query параметры:
// ?page=1&limit=20&type=IMAGE&status=COMPLETED

{
  "success": true,
  "data": {
    "items": [...],
    "total": 100,
    "page": 1,
    "pages": 5,
    "limit": 20
  }
}

GET /api/generations/[id]
Требует авторизации

Получить информацию о конкретной генерации

{
  "success": true,
  "data": {
    "id": "generation_id",
    "type": "IMAGE",
    "status": "COMPLETED",
    "outputUrl": "https://...",
    "progress": 100,
    "cost": 5.0
  }
}

Обработка ошибок

Все ошибки возвращаются в едином формате:

{
  "success": false,
  "error": "Описание ошибки"
}

Коды статусов:

  • 200 - Успешный запрос
  • 201 - Ресурс создан
  • 400 - Неверный запрос
  • 401 - Не авторизован
  • 403 - Доступ запрещен
  • 404 - Не найдено
  • 500 - Ошибка сервера

Ограничения

  • Лимит запросов: 100 запросов в минуту на пользователя
  • Максимальный размер запроса: 10MB
  • Токен доступа действителен 24 часа
  • Токен обновления действителен 30 дней