Документация для разработчиков
API neofashion.ai
Генерируйте фотографии продуктов, видео и изображения кампаний программно. Тот же API, который использует платформа — доступен для вашей интеграции с первого дня.
Базовый URL
Все endpoints версионируются в /api/v1 и доступны по HTTPS. Веб-приложение использует те же endpoints — приватных маршрутов только для UI нет.
https://app.neofashion.ai/api/v1 Аутентификация
Каждый запрос аутентифицируется токеном bearer. Поддерживаются два типа токенов, и оба определяют один и тот же контекст рабочего пространства.
API-ключ
Для серверных интеграций. Создавайте ключи в настройках рабочего пространства; каждый ключ ограничен вашим рабочим пространством. Доступно в планах Enterprise.
Authorization: Bearer ne_live_xxxxxxxxxxxx Сессионный JWT
Выдаётся веб-приложением при входе. Используется интерфейсом платформы и подходит для краткосрочных вызовов с областью действия пользователя.
Authorization: Bearer eyJhbGci... Все запросы включают поле source (ui или api) и необязательный api_key_id для аудита и биллинга.
Endpoints
Основные endpoints для генерации и чтения. Долгие операции, такие как создание видео и пакетная генерация, выполняются асинхронно — проверяйте генерацию или следите за обновлениями статуса в приложении.
| Метод | Endpoint | Описание |
|---|---|---|
| POST | /api/v1/generate/image | Создайте одну фотографию продукта |
| POST | /api/v1/generate/video | Создайте короткое модное видео |
| POST | /api/v1/generate/bulk | Задание асинхронной пакетной генерации |
| POST | /api/v1/sketch-to-photo | Эскиз → фото предвыборного качества |
| GET | /api/v1/generations | Список поколений (постраничный) |
| GET | /api/v1/generations/:id | Детали создания + статус |
| GET | /api/v1/credits/balance | Текущий кредитный баланс |
| GET | /api/v1/personas | Персоны рабочей области |
| GET | /api/v1/models | API ДНК бренда / персонажей |
Формат ответа
Каждый endpoint возвращает единый конверт: data, meta (использованные кредиты, оставшиеся кредиты, id запроса) и error. Устанавливается ровно одно из двух: data или error.
Успешно
{
"data": {
"id": "gen_01hwz...",
"status": "completed",
"output_url": "https://...",
"credits_used": 50
},
"meta": {
"credits_used": 50,
"credits_remaining": 7950,
"request_id": "req_01hwz..."
},
"error": null
} Ошибка
{
"data": null,
"meta": { "request_id": "req_01hwz..." },
"error": {
"code": "INSUFFICIENT_CREDITS",
"message": "Credit balance too low for this operation.",
"details": { "required": 50, "available": 20 }
}
} Лимиты запросов
Лимиты применяются к каждому рабочему пространству. При превышении лимита API возвращает 429 RATE_LIMITED с заголовком retry-after.
| План | Лимит запросов |
|---|---|
| Enterprise | Индивидуально — согласовывается по контракту, с SLA |
Коды ошибок
Ошибки возвращаются в поле error со стабильным code, понятным сообщением и структурированными деталями.
| Код | HTTP | Значение |
|---|---|---|
INSUFFICIENT_CREDITS | 402 | Баланса рабочего пространства недостаточно для запрошенной операции. Пополните баланс или обновите план, чтобы продолжить. |
UNAUTHORIZED | 401 | Токен отсутствует, истёк или недействителен. |
FORBIDDEN | 403 | Токен действителен, но план или роль не позволяют выполнить эту операцию. |
NOT_FOUND | 404 | Ресурс не существует или принадлежит другому рабочему пространству. |
RATE_LIMITED | 429 | Слишком много запросов — повторите попытку после указанного интервала. |
PROVIDER_ERROR | 502 | Внешний ИИ-провайдер завершил работу с ошибкой. Кредиты возвращены, запрос можно повторить. |
Доступ к API
Готовы к интеграции?
Доступ к API доступен в планах Enterprise, с онбордингом и SLA. Закажите демо, и мы разберём вашу интеграцию.