Préparation de la page…
▥ Seedance 2.5 est disponible ! ›
TarifsDocsMises à jourCompte
GuidesVue d'ensembleAPI ImageAPI Vidéo
Sur cette pageEndpointsExemple de requêteParamètresIdentifiants des modèlesRéponseRequêtes asynchrones
RessourcesCatalogue de modèlesTarifsClés APIEndpoints de webhookSpécification OpenAPIÉtat du serviceMises à jour produit
Vue d'ensembleAPI ImageAPI Vidéo
Image API

Générer et modifier des images

Exécutez GPT Image 2, GPT Image 2.5 Flare, GPT Image 2.5 Sunburst, Nano Banana, Nano Banana 2, Nano Banana 2 Lite, Nano Banana 2.1, Nano Banana Pro, Seedream 4.0, Seedream 4.5, Seedream 5.0, Seedream 5 Pro avec un format de requête unique.

Endpoints

Utilisez /v1/images/generations pour créer des images à partir d'un prompt. Accepte le format JSON.

POSThttps://api.mlmux.com/v1/images/generations

Utilisez /v1/images/edits pour modifier ou combiner des images. Envoyez les URL des images en JSON, ou importez des fichiers avec les champs multipart image et mask. Jusqu'à 16 images de 50 Mo chacune sont acceptées.

POSThttps://api.mlmux.com/v1/images/edits

Exemple de requête

curl https://api.mlmux.com/v1/images/generations \
  -H "Authorization: Bearer $MLMUX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "nano-banana-2",
  "prompt": "Editorial product photo of a ceramic mug on linen, soft window light",
  "aspect_ratio": "4:3",
  "resolution": "2K",
  "output_format": "png",
  "route_mode": "official-cheap"
}'

Les requêtes sont synchrones par défaut et renvoient les images dans la réponse. Ajoutez "async": true pour obtenir une tâche à la place.

Paramètres

ChampTypeRequisDescription
modelstringOuiUn identifiant de modèle du tableau ci-dessous. Le préfixe du fournisseur peut être omis lorsque le nom court est unique, par exemple gpt-image-2.
promptstringOuiCe qu'il faut générer ou modifier, jusqu'à 20 000 caractères.
image_urlsmodifications uniquementstring[]OuiURL http(s) publiques des images d'entrée, dans l'ordre. image_url est également accepté pour une seule image.
mask_urlmodifications uniquementstringNonURL d'une image de masque pour les modèles prenant en charge les modifications avec masque.
route_modestringNonofficial ou official-cheap. Défini par défaut sur le mode de routage de la clé, puis sur official-cheap.
resolutionstringNon1K, 2K ou 4K sur les modèles Gemini qui le prennent en charge. Nano Banana et Nano Banana 2 Lite n'ont pas de paramètre de résolution.
sizestringNonTaille de sortie pour GPT Image et Seedream, par exemple 1024x1024, 2K ou auto.
aspect_ratiostringNonPar exemple 1:1, 16:9 ou match_input_image. Les valeurs autorisées dépendent du modèle.
output_formatstringNonpng, jpg, jpeg ou webp, si le modèle le prend en charge.
nintegerNonNombre d'images, de 1 à 4. Défini sur 1 par défaut.
asyncbooleanNontrue renvoie une tâche (HTTP 202) à interroger au lieu d'attendre les images.

Identifiants des modèles

Utilisez ces valeurs dans model. GET /v1/models renvoie les identifiants disponibles pour votre compte.

ModèleID du modèle
GPT Image 2openai/gpt-image-2
GPT Image 2.5 Flareweavy/gpt-image-2.5-flare
GPT Image 2.5 Sunburstweavy/gpt-image-2.5-sunburst
Nano Banananano-banana
Nano Banana 2nano-banana-2
Nano Banana 2 Litenano-banana-2-lite
Nano Banana 2.1google/gemini-nano-banana-2.1
Nano Banana Pronano-banana-pro
Seedream 4.0weavy/doubao-seedream-4-0-250828
Seedream 4.5weavy/doubao-seedream-4-5-251128
Seedream 5.0weavy/doubao-seedream-5-0-260128
Seedream 5 Proweavy/doubao-seedream-5-0-pro-260628

GPT Image 2, GPT Image 2.5 Flare et GPT Image 2.5 Sunburst fonctionnent actuellement uniquement sur official. Envoyez "route_mode": "official" avec ces modèles ; sinon, la requête utilise la valeur par défaut official-cheap et échoue.

Réponse

Une requête synchrone renvoie un code HTTP 200 avec une URL par image dans data et le nombre de tokens dans usage. Les URL de sortie sont hébergées par MLMux ; téléchargez les fichiers que vous souhaitez conserver.

200 OK
{
  "created": 1767225600,
  "data": [
    { "url": "https://.../generated/9f2c....png" }
  ],
  "usage": {
    "input_tokens": 18,
    "output_tokens": 1120,
    "total_tokens": 1138,
    "input_tokens_details": { "text_tokens": 18, "image_tokens": 0 }
  }
}

Requêtes asynchrones

Avec "async": true, la requête renvoie un code HTTP 202 et une tâche. Interrogez son poll_url jusqu'à ce que status passe à succeeded ; les images sont ensuite listées dans data.

GEThttps://api.mlmux.com/v1/images/generations/{task_id}
202 Accepted
{
  "id": "task_7c1e...",
  "object": "image.generation.task",
  "status": "queued",
  "created": 1767225600,
  "model": "nano-banana-2",
  "api_method": "images.generations.create",
  "poll_url": "/v1/images/generations/task_7c1e...",
  "progress": 0,
  "message": "queued",
  "estimated_charge_credits": 0.067
}
Réussi
{
  "id": "task_7c1e...",
  "object": "image.generation.task",
  "status": "succeeded",
  "progress": 100,
  "message": "completed",
  "estimated_charge_credits": 0.067,
  "data": [
    { "url": "https://.../generated/7c1e....png" }
  ]
}

Les tâches de modification d'image sont interrogées sur /v1/images/edits/{task_id}. GET /v1/tasks/{task_id} fonctionne pour toutes les tâches.

PrécédentVue d'ensembleSuivantAPI Vidéo