The Genlaxy API
Every model in the catalog, from your own code. One key, one balance, the same prices as the studio.
1 · Authenticate
Create a key in Settings, API keys. Send it with every request as a Bearer token. Keys start with gl_live_ and work only on Genlaxy; keep them on your server, never in a browser or an app.
curl https://genlaxy.ai/api/v1/api/catalog/me \
-H 'Authorization: Bearer gl_live_...'2 · Pick a model
Choose a model to see a ready request built from its own fields. Required fields are filled in; every optional setting uses the model's default.
pixverse/pixverse-v4.5-t2v-fast| Name | Type | Required | Default |
|---|---|---|---|
| prompt | text | yes | - |
| aspect_ratio | 16:9 | 4:3 | 1:1 | 3:4 | 9:16 | yes | 16:9 |
| resolution | 360p | 540p | 720p | yes | 540p |
| duration | 5 | no | 5 |
| negative_prompt | text | no | - |
| seed | number | no | - |
3 · Start a render
One call prices your exact inputs and charges your balance. The response comes back at once with status queued; the render runs in the background. Send an Idempotency-Key header so a retried request never charges twice.
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": "pixverse/pixverse-v4.5-t2v-fast",
"inputs": {
"prompt": "a lighthouse on a cliff at dusk, soft light",
"aspect_ratio": "16:9",
"resolution": "540p"
}
}'Check the price first (optional)
The same inputs, priced without starting anything. The answer is in cents.
curl -X POST https://genlaxy.ai/api/v1/api/catalog/quote \
-H 'Authorization: Bearer gl_live_...' \
-H 'Content-Type: application/json' \
-d '{"modelId":"pixverse/pixverse-v4.5-t2v-fast","inputs":{"prompt":"a lighthouse on a cliff at dusk, soft light","aspect_ratio":"16:9","resolution":"540p"}}'4 · Poll and download
Ask for the render every few seconds until status is succeeded, failed or refunded. On success, download the file from contentUrl with the same key. A text model returns its answer in textOutput instead.
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.mp4Endpoints
Base URL: https://genlaxy.ai/api/v1/api/catalog
| GET | /me | Your key and balance |
| GET | /models | Every model |
| GET | /models/detail?id=MODEL_ID | One model and its fields |
| POST | /quote | Price for exact inputs |
| POST | /generations | Start a render |
| GET | /generations | Your recent renders |
| GET | /generations/ID | One render's status |
| GET | /generations/ID/content | The result file |
| DELETE | /generations/ID | Delete a render |
Prices and balance
API renders use the same balance as the studio and cost the same. Every amount in the API is in euro cents: costCents is what a render charged, balanceCents what is left.
Errors and limits
Errors come back as JSON with a code and a message. 401: missing, wrong or revoked key. 400: a field is invalid (the details name it). 402: not enough balance. 409 API_KEY_DAILY_CAP: the key's own daily cap is reached. 429: too many requests, slow down. A failed render is refunded automatically.