One connection. Every model.
Route image and video through a single generate path. Credits, usage, and files are built in.
Image and video on one path.
Pick a model, run the job, get the file back. The list grows. The request does not change.
flux-2-flex · nano-banana-2 · seedream-v5-lite · ltx-2-19b · kling-v3-pro · kling-v3-standard · xai-grok-imagine-video · sync-lipsync-v2
Same shape. Wait or come back later.
Send a generate. Get the file, or a request id you can poll. Auth, credits, and storage stay the same either way.
generate
curl -X POST "$GATEWAY_BASE_URL/v1/generate" \ -H "Authorization: Bearer $GATEWAY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "flux-2-flex", "input": { "prompt": "a product shot on void" } }'Credits, usage, and files — already in the path.
One generate path
Wait for the result or come back later. Same key. Same credits.
Credits that stop overspend
Balance is checked before a job runs. No surprise bills from a loop.
Usage you can read
See spend by day, model, and key. No spreadsheet.
Files that stay yours
Uploads and outputs live in your workspace, with links that expire.
Keys for your team
Organizations and server keys ready for production generate.
Python you can ship
Generate, wait, and file helpers in Python. A command line for quick checks.
Stop rebuilding the same path.
A new SDK per media vendor
One generate request
Home-grown wait loops
Wait now, or poll later
Spend tracked in a spreadsheet
Credits and usage in one place
Files in random buckets
Workspace files with signed links