API Genlaxy
Все модели каталога прямо из вашего кода. Один ключ, один баланс, те же цены, что и в студии.
1 · Авторизация
Создайте ключ в разделе Настройки, API-ключи. Передавайте его в каждом запросе как Bearer-токен. Ключи начинаются с gl_live_ и работают только на Genlaxy; храните их на своём сервере, а не в браузере или приложении.
curl https://genlaxy.ai/api/v1/api/catalog/me \
-H 'Authorization: Bearer gl_live_...'2 · Выберите модель
Выберите модель, чтобы увидеть готовый запрос, собранный из её собственных полей. Обязательные поля заполнены, все необязательные настройки берут значения модели по умолчанию.
kwaivgi/kling-v1.6-multi-i2v-pro| Имя | Тип | Обязательное | По умолчанию |
|---|---|---|---|
| prompt | text | да | - |
| images | url (image) | да | - |
| negative_prompt | text | нет | - |
| duration | 5 | 10 | нет | 5 |
| aspect_ratio | 1:1 | 16:9 | 9:16 | нет | 1:1 |
3 · Запустите генерацию
Один вызов рассчитывает цену именно ваших входных данных и списывает её с баланса. Ответ приходит сразу со статусом queued, а генерация идёт в фоне. Передавайте заголовок Idempotency-Key, чтобы повторный запрос никогда не списал деньги дважды.
curl -X POST https://genlaxy.ai/api/v1/api/catalog/generations \
-H 'Authorization: Bearer gl_live_...' \
-H 'Content-Type: application/json' \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"modelId": "kwaivgi/kling-v1.6-multi-i2v-pro",
"inputs": {
"prompt": "a lighthouse on a cliff at dusk, soft light",
"images": [
"https://example.com/input.png"
]
}
}'Сначала узнайте цену (необязательно)
Те же входные данные, оценённые без запуска генерации. Ответ в центах.
curl -X POST https://genlaxy.ai/api/v1/api/catalog/quote \
-H 'Authorization: Bearer gl_live_...' \
-H 'Content-Type: application/json' \
-d '{"modelId":"kwaivgi/kling-v1.6-multi-i2v-pro","inputs":{"prompt":"a lighthouse on a cliff at dusk, soft light","images":["https://example.com/input.png"]}}'4 · Опрос и загрузка
Запрашивайте генерацию каждые несколько секунд, пока статус не станет succeeded, failed или refunded. При успехе скачайте файл по contentUrl тем же ключом. Текстовая модель вместо этого возвращает ответ в textOutput.
curl https://genlaxy.ai/api/v1/api/catalog/generations/GENERATION_ID \
-H 'Authorization: Bearer gl_live_...'curl https://genlaxy.ai/api/v1/api/catalog/generations/GENERATION_ID/content \
-H 'Authorization: Bearer gl_live_...' \
-o result.mp4Эндпоинты
Базовый URL: https://genlaxy.ai/api/v1/api/catalog
| GET | /me | Ваш ключ и баланс |
| GET | /models | Все модели |
| GET | /models/detail?id=MODEL_ID | Одна модель и её поля |
| POST | /quote | Цена для конкретных входных данных |
| POST | /generations | Запустить генерацию |
| GET | /generations | Ваши последние генерации |
| GET | /generations/ID | Статус одной генерации |
| GET | /generations/ID/content | Файл результата |
| DELETE | /generations/ID | Удалить генерацию |
Цены и баланс
Генерации через API используют тот же баланс, что и студия, и стоят столько же. Все суммы в API указаны в евроцентах: costCents показывает, сколько списано за генерацию, balanceCents показывает остаток.
Ошибки и лимиты
Ошибки возвращаются в JSON с кодом и сообщением. 401: ключ не передан, неверен или отозван. 400: недопустимое поле (оно указано в деталях). 402: недостаточно средств на балансе. 409 API_KEY_DAILY_CAP: достигнут дневной лимит этого ключа. 429: слишком много запросов, снизьте частоту. Неудачная генерация возвращается на баланс автоматически.