Generazione di immagini
Creare job da testo a immagine
POST /api/v1/images/generations crea da una a quattro immagini a partire da una
descrizione testuale. Ambito richiesto: images:generate.
Corpo JSON
| Campo | Tipo | Obbligatorio | Predefinito | Regole |
|---|---|---|---|---|
prompt | string | sì | — | senza spazi ai bordi, 5–2.000 caratteri |
aspect_ratio | string | no | 1:1 | 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 5:4, 4:5 o 21:9 |
resolution | string | no | 2K | 2K o 4K |
count | integer | no | 1 | 1–4 |
I campi sconosciuti vengono rifiutati. La richiesta pubblica non prevede opzioni di instradamento delle capacità.
Crediti
| Risoluzione | Crediti per immagine |
|---|---|
2K | 5 |
4K | 20 |
La riserva totale è il costo per immagine moltiplicato per count. I crediti
vengono riservati in modo atomico quando il job è accettato, liquidati in caso di
successo e rilasciati in caso di fallimento definitivo.
cURL
curl https://sci-draw.com/api/v1/images/generations \
-H 'Authorization: Bearer sd_YOUR_KEY' \
-H 'Idempotency-Key: manuscript-42-panel-a' \
-H 'Prefer: wait=10' \
-H 'Content-Type: application/json' \
-d '{"prompt":"A labeled plant cell diagram","aspect_ratio":"4:3","resolution":"2K","count":1}'JavaScript
const response = await fetch('https://sci-draw.com/api/v1/images/generations', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.SCIDRAW_API_KEY}`,
'Idempotency-Key': crypto.randomUUID(),
'Content-Type': 'application/json',
},
body: JSON.stringify({ prompt: 'A labeled plant cell diagram' }),
});
const body = await response.json();Python
import os, uuid, requests
response = requests.post(
"https://sci-draw.com/api/v1/images/generations",
headers={
"Authorization": f"Bearer {os.environ['SCIDRAW_API_KEY']}",
"Idempotency-Key": str(uuid.uuid4()),
},
json={"prompt": "A labeled plant cell diagram", "resolution": "2K"},
)
job = response.json()["data"]Restituisce 202 finché il job è in coda o in lavorazione, e 200 se l'attesa
limitata raggiunge uno stato terminale. Per lo schema della risposta e il flusso
di polling vedi Job.
Dimensioni di uscita
2K e 4K sono livelli di dimensione, non lunghezze fisse dei lati. La tabella mostra i pixel effettivi. Le proporzioni non supportate restituiscono HTTP 400 (INVALID_REQUEST) prima di creare il processo o riservare crediti.
aspect_ratio | 2K | 4K |
|---|---|---|
| 1:1 | 2048×2048 | 2880×2880 |
| 16:9 | 2560×1440 | 3840×2160 |
| 9:16 | 1440×2560 | 2160×3840 |
| 4:3 | 2304×1728 | 3264×2448 |
| 3:4 | 1728×2304 | 2448×3264 |
| 3:2 | 2496×1664 | 3504×2336 |
| 2:3 | 1664×2496 | 2336×3504 |
| 5:4 | 2240×1792 | 3200×2560 |
| 4:5 | 1792×2240 | 2560×3200 |
| 21:9 | 3136×1344 | 3808×1632 |

Documentazione API