LogoLogoDocumentation API
LogoLogoDocumentation API
Accueil
Vue d'ensembleAuthentification et idempotenceGénération d'imagesModification d'imagesConversion d'imagesGénération de graphiquesJobs et attente bornéeCréditsErreursLimites de débit et concurrenceJournal des versions de l'API
Documentation API

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

ChampTypeObligatoireDéfautRègles
promptstringoui—espaces retirés, 5 à 2 000 caractères
aspect_ratiostringnon1:11:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 5:4, 4:5 ou 21:9
resolutionstringnon2K2K ou 4K
countintegernon11 à 4

Les champs inconnus sont rejetés. La requête publique ne propose aucune option d'acheminement de capacité.

Crédits

RésolutionCrédits par image
2K5
4K20

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.

Authentification et idempotence

Clés API, portées, identifiants de requête et reprises sûres

Modification d'images

Modifier une image envoyée à l'aide d'instructions en langage naturel

Table des matières

Corps JSON
Crédits
cURL
JavaScript
Python
Dimensions de sortie

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_ratio2K4K
1:12048×20482880×2880
16:92560×14403840×2160
9:161440×25602160×3840
4:32304×17283264×2448
3:41728×23042448×3264
3:22496×16643504×2336
2:31664×24962336×3504
5:42240×17923200×2560
4:51792×22402560×3200
21:93136×13443808×1632