GLM-5.2 est maintenant disponibleEn savoir plus
Utiliser l'API Midjourney V8.1 avec EvoLink : payload, polling et callback
guide

Utiliser l'API Midjourney V8.1 avec EvoLink : payload, polling et callback

EvoLink Team
EvoLink Team
Product Team
21 juin 2026
5 min de lecture

Pour utiliser Midjourney V8.1 depuis du code, il ne suffit pas de connaître l'endpoint. Il faut aussi savoir créer une tâche, suivre son état, maîtriser le coût et garder la possibilité de tester d'autres modèles d'image dans EvoLink.

Sur EvoLink, la génération principale passe par POST https://api.evolink.ai/v1/images/generations avec model: "mj-v8.1". La réponse est une tâche asynchrone. Vous pouvez ensuite interroger GET https://api.evolink.ai/v1/tasks/{task_id} ou utiliser callback_url.

Réponse rapide

curl --request POST \
  --url https://api.evolink.ai/v1/images/generations \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "mj-v8.1",
    "prompt": "a premium product photo of a matte black espresso machine on a marble counter --ar 16:9 --s 250",
    "quality": "standard",
    "model_params": {
      "speed": "fast"
    },
    "callback_url": "https://your-domain.com/webhooks/evolink-image-task"
  }'
Conservez l'id renvoyé. C'est le task_id utilisé pour le polling, les callbacks et le diagnostic.
curl --request GET \
  --url https://api.evolink.ai/v1/tasks/<task_id> \
  --header 'Authorization: Bearer YOUR_API_KEY'
SujetÉtat actuel
EndpointPOST /v1/images/generations
Modèlemj-v8.1
AuthAuthorization: Bearer YOUR_API_KEY
Champs requismodel, prompt
QualitéChamp top-level quality : standard ou hd
Vitessemodel_params.speed : draft, fast
Statut asyncGET /v1/tasks/{task_id}
SortieFast jusqu'à 4 images ; Draft jusqu'à 24 croquis légers 0.5K
LiensLes URLs générées sont valables 30 jours

Champs de requête

ChampRequisExempleNote
modelOuimj-v8.1Sélectionne la route Midjourney V8.1
promptOuia product photo... --ar 16:9Texte et paramètres MJ pris en charge
qualityNonstandard, hdhd applique un multiplicateur 1.5x
model_params.speedNondraft, fastdraft et hd sont incompatibles
callback_urlNonhttps://...Callback HTTPS pour les événements finaux
Ne placez pas quality dans model_params. Sur cette route EvoLink, quality est un champ top-level.

Texte vers image et image vers image

Exemple texte vers image :

{
  "model": "mj-v8.1",
  "prompt": "a cinematic product photo of a titanium travel mug on wet black stone --ar 16:9 --s 250",
  "quality": "standard",
  "model_params": {
    "speed": "fast"
  }
}
Pour l'image vers image, placez les URLs d'image au début du prompt. Les formats pris en charge sont PNG, GIF, WebP, JPG et JPEG. Une seule URL sans texte est invalide ; utilisez une image avec texte, plusieurs images, ou plusieurs images avec texte.
{
  "model": "mj-v8.1",
  "prompt": "https://your-cdn.example.com/reference-sofa.jpg a luxury living room campaign image --ar 4:3 --iw 1.2",
  "quality": "standard",
  "model_params": {
    "speed": "fast"
  }
}

Callback en production

callback_url doit utiliser HTTPS, rester sous 2048 caractères et ne pas pointer vers des plages d'IP privées comme 127.0.0.1, 10.x.x.x, 172.16-31.x.x ou 192.168.x.x. EvoLink envoie le callback lorsque la tâche est terminée, échouée ou annulée. Timeout : 10 secondes, jusqu'à 3 tentatives.
Un handler de production doit répondre rapidement en 2xx, vérifier l'état final via GET /v1/tasks/{task_id}, dédupliquer les callbacks répétés et copier les résultats dans votre propre stockage avant expiration.

Coûts et routing

ChoixImpactRecommandation
fastMode standardBon défaut pour la production
draftCroquis légers ; ne pas combiner avec hdExploration de composition
standardQualité de basePreviews et sorties d'application
hdMultiplicateur 1.5xAssets finaux ou campagnes

L'intérêt d'EvoLink ne se limite pas à exposer Midjourney V8.1. Vous pouvez garder la même authentification, la même logique de tâches et la même facturation pour tester des routes comme Midjourney V7, Nano Banana Pro ou GPT Image 2.

Checklist de production

ZoneComportement attendu
API KeyStockage uniquement côté serveur
LogsModèle, hash du prompt, quality, model_params.speed, utilisateur et task_id
UIAfficher pending, processing, completed, failed
PollingRalentir après les premiers essais
CallbackRépondre vite en 2xx, traiter ensuite en async
StockageSauvegarder les images avant 30 jours
CoûtsContrôler l'accès à hd

FAQ

Utilisez POST /v1/images/generations pour créer la tâche et GET /v1/tasks/{task_id} pour consulter son état.

Quel est le nom du modèle ?

Le modèle principal de génération est mj-v8.1.

Où placer quality ?

quality est un champ top-level. Les valeurs valides sont standard et hd.

Quelles valeurs accepte model_params.speed ?

La route documente draft et fast.

Peut-on combiner quality: "hd" avec speed: "draft" ?

Non. Les docs EvoLink indiquent que quality: "hd" et model_params.speed: "draft" sont mutuellement exclusifs.

Midjourney V8.1 prend-il en charge l'image vers image ?

Oui. Placez l'URL d'image au début du prompt et ajoutez du texte si vous utilisez une seule image.

Combien de temps les URLs générées restent-elles valables ?

Les URLs générées restent valables 30 jours. Copiez les résultats dans votre propre stockage.

Polling ou callback ?

Le polling convient aux tests et outils internes. En production, utilisez callback_url et confirmez l'état final via l'endpoint de tâche.

Sources et références

Testez d'abord le prompt dans le playground Midjourney V8.1, puis reprenez la même structure de payload dans votre backend.
Ouvrir Midjourney V8.1 sur EvoLink

Prêt à réduire vos coûts IA de 89 % ?

Commencez avec EvoLink dès aujourd'hui et découvrez la puissance du routage intelligent des API.