Developers · API v1

One API.
Every model.

Images, video, audio and 3D behind one API. Call it from Node, Python or curl, or script it from the terminal with the Genlaxy CLI, all paid from the same balance as the studio.

$npm i -g @genlaxy/cli
Models
641
Endpoints
9
Minimum top-up
€5
01 · Examples

Same call, any output

Swap the model ID to switch between image, video and speech. The fields follow the model.

1import { writeFile } from "node:fs/promises";2 3const API = "https://genlaxy.ai/api/v1/api/catalog";4const auth = { Authorization: `Bearer ${process.env.GENLAXY_API_KEY}` };5 6// 1. Generate an image7const res = await fetch(`${API}/generations`, {8  method: "POST",9  headers: { ...auth, "Content-Type": "application/json", "Idempotency-Key": crypto.randomUUID() },10  body: JSON.stringify({11    modelId: "luma/uni-v1/text-to-image",12    inputs: { prompt: "Neon city street after rain, cinematic night", size: "16:9" },13  }),14});15let { generation } = await res.json();16 17// 2. Wait for the result18while (generation.status === "queued" || generation.status === "generating") {19  await new Promise((r) => setTimeout(r, 3000));20  ({ generation } = await (await fetch(`${API}/generations/${generation.id}`, { headers: auth })).json());21}22 23// 3. Save the file24const file = await fetch(`${API}/generations/${generation.id}/content`, { headers: auth });25await writeFile("result.jpeg", Buffer.from(await file.arrayBuffer()));
Example renderluma/uni-v1/text-to-image
02 · Quickstart

First render in three steps

  1. 01Create an API keySign in with your email, open Settings, API keys and create a key. Top up from €5 in Billing.export GENLAXY_API_KEY="gl_live_..."
  2. 02Install the CLIOne command, Node.js 18.3 or newer. Or skip it and call the API with any HTTP client.npm i -g @genlaxy/cli
  3. 03Make your first renderPick a model ID from the catalog and send a prompt. Add --dry-run to see the price without spending anything.genlaxy run luma/uni-v1/text-to-image -p "violet neon fox" -o ./out/
03 · CLINew

Render from the terminal

Run any model from a shell, a CI job or a coding agent. Every render is priced before it starts and drawn from the same balance.

Scripts and CIEvery field of a model is a flag; a local file is uploaded for you.
JSON on stdoutOne JSON document per run, progress and errors on stderr, a non-zero exit on failure.
Coding agentsA skill file teaches your agent to check the price first and cap it.
Full CLI guide →
CommandWhat it does
genlaxy loginPaste your API key once; it is checked and saved
genlaxy whoamiThe key's name and your balance
genlaxy models --type videoEvery video model with its starting price
genlaxy run <model> -hA model's fields, fetched live: type, default, allowed values
genlaxy run <model> -p "<prompt>" -o ./out/Render and save the result in a folder
genlaxy run <model> -p "..." --dry-runThe exact price, without spending anything
genlaxy run <model> -p "..." --max-price 0.50Refuse to run if the price is higher
genlaxy run <model> -p "..." --json -o ./out/One JSON result, ready for the next step
genlaxy skill installTeach your coding agent to use the CLI
04 · API essentials

Built for production

Authentication

A Bearer token in the Authorization header. Create keys in Settings and revoke any of them at any time.

Authorization: Bearer gl_live_...

Background renders

Starting a render answers at once with status queued. Poll the render until it has succeeded, failed or been refunded.

{ "status": "queued" }

Price first

Ask for the exact price of your inputs without starting anything. Every amount is in euro cents.

POST /api/v1/api/catalog/quote

Safe retries

Send an Idempotency-Key header and a retried request never charges twice.

Idempotency-Key: render-042

Limits

Each key has a per-minute limit and an optional daily cap. Past the limit the API answers 429.

429 Too Many Requests

Errors and refunds

JSON errors with a code and a message. A render that fails is refunded to your balance automatically.

{ "status": "refunded" }
05 · Reference

Endpoints

Base URL https://genlaxy.ai/api/v1/api/catalog

Full API reference →
GET/meYour key and balance
GET/modelsEvery model
GET/models/detail?id=MODEL_IDOne model and its fields
POST/quotePrice for exact inputs
POST/generationsStart a render
GET/generationsYour recent renders
GET/generations/IDOne render's status
GET/generations/ID/contentThe result file
DELETE/generations/IDDelete a render

Top up €5 and ship today

The API, the CLI and the studio share one balance. Failed renders are refunded.