Home / Developers
For developersThree endpoints.
That is the whole API.
Generate, fetch, list. No SDK you are forced to use, no webhook maze. Every response hands back the settings, so any result can be rebuilt exactly.

Getting started
Bearer token, POST a prompt, get a URL
- REST over HTTPS, JSON in and out
- Deterministic seeds for reproducible output
- Batch generation and webhook delivery
- Usage-based pricing, per-key rate limits
// Generate an image const res = await fetch("https://api.paintune.com/v1/images", { method: "POST", headers: { "Authorization": `Bearer ${process.env.PAINTUNE_KEY}`, "Content-Type": "application/json" }, body: JSON.stringify({ prompt: "a brass lighthouse at golden hour", size: "1248x832", steps: 32, guidance: 6.5, seed: 41882 }) }); const image = await res.json(); // -> { id, url, seed, steps, guidance, model, created }
Reference
Endpoints and parameters
| Method | Path | Does |
|---|---|---|
| POST | /v1/images | Generate one image, or a batch when count is set. |
| GET | /v1/images/:id | Fetch a generation and its settings. |
| GET | /v1/images | List generations, filterable by style, date and status. |
| Field | Type | Notes |
|---|---|---|
| prompt | string | Required. The image described in ordinary language. |
| size | string | "1024x1024", "1248x832" and other ratios to 2048 px. |
| steps | integer | 4–50. Defaults to 32. |
| guidance | number | 1–12. Prompt adherence. |
| seed | integer | Omit for random. Supply to reproduce exactly. |
| style | string | A saved Style Lock preset id. |
| count | integer | Batch size. Each result gets its own seed. |
| webhook | string | URL to POST results to when a batch finishes. |
Endpoint shapes describe the intended API surface. Confirm against the shipped service before publishing.
Request lifecycle
Four messages, start to file
Generation is asynchronous: you get an id immediately and the image when it is ready, so a slow render never holds your request open.
No client needed
The same call, from the shell
curl https://api.paintune.com/v1/images \ -H "Authorization: Bearer $PAINTUNE_KEY" \ -H "Content-Type: application/json" \ -d '{"prompt":"a brass lighthouse at golden hour","size":"1248x832","steps":32}'
Get a key
Create a key from your account page and make your first call today.