Génération d'images
Créer des jobs de texte vers image
POST /api/v1/images/generations crée une à quatre images à partir d'une
description textuelle. Portée requise : images:generate.
Corps JSON
| Champ | Type | Obligatoire | Défaut | Règles |
|---|---|---|---|---|
prompt | string | oui | — | espaces retirés, 5 à 2 000 caractères |
aspect_ratio | string | non | 1:1 | 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 5:4, 4:5 ou 21:9 |
resolution | string | non | 2K | 2K ou 4K |
count | integer | non | 1 | 1 à 4 |
Les champs inconnus sont rejetés. La requête publique ne propose aucune option d'acheminement de capacité.
Crédits
| Résolution | Crédits par image |
|---|---|
2K | 5 |
4K | 20 |
La réservation totale vaut le coût unitaire multiplié par count. Les crédits
sont réservés de façon atomique à l'acceptation du job, réglés en cas de succès
et libérés en cas d'échec définitif.
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"]Renvoie 202 tant que le job est en attente ou en cours, et 200 si l'attente
bornée atteint un état terminal. Voir Jobs pour le schéma de réponse et
la boucle d'interrogation.
Dimensions de sortie
2K et 4K sont des niveaux de taille, pas des longueurs de côté fixes. Le tableau indique les dimensions réelles en pixels. Les proportions non prises en charge renvoient HTTP 400 (INVALID_REQUEST) avant la création du travail ou la réservation de crédits.
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 |

Documentation API