> ## Documentation Index
> Fetch the complete documentation index at: https://evolink.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Midjourney V8.1 Génération d'images

> - Le modèle Midjourney V8.1 prend en charge la génération d'images de haute qualité via des prompts en langage naturel. Le mode Fast renvoie 4 images par génération ; le mode Draft renvoie 24 images d'esquisse légères en 0.5K en une seule exécution
- Prend en charge le texte-vers-image et l'image-vers-image (en référençant des URL d'images dans le prompt)
- Points forts de V8.1 : sortie HD native (`quality=hd`), vitesse de génération environ 5x supérieure à la génération précédente, rendu de texte amélioré (le texte entre guillemets est rendu plus fidèlement) et meilleure adhérence aux prompts
- Compatible avec les ressources V7 : la référence de style (`--sref`) et la référence d'objet (`--oref`) sont prises en charge, voir le [guide des paramètres de prompt](/fr/api-manual/image-series/midjourney/midjourney-v8-1-prompt-guide)
- Mode de traitement asynchrone, utilisez l'ID de tâche retourné pour [effectuer une requête](/fr/api-manual/task-management/get-task-detail)
- Les liens d'images générées sont valides pendant 30 jours, veuillez les sauvegarder rapidement
- Délai d'expiration : environ 20 minutes
- Note sur les paramètres : cette interface fonctionne sur V8.1 et ne prend pas en charge niji ; définissez le mode de vitesse via `model_params.speed` et la qualité de sortie via le paramètre de premier niveau `quality`

<Note>
  Midjourney dispose d'un système de modération de contenu intégré. Si certaines images générées sont filtrées par la modération, les crédits consommés pour cette requête ne seront pas remboursés. Veuillez vous assurer que vos prompts respectent les directives de contenu.
</Note>


## OpenAPI

````yaml fr/api-manual/image-series/midjourney/mj-v8-1-image-generate.json POST /v1/images/generations
openapi: 3.1.0
info:
  title: Interface de génération d'images Midjourney V8.1
  description: Créer des tâches de génération d'images avec le modèle Midjourney V8.1
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: Production
security:
  - bearerAuth: []
paths:
  /v1/images/generations:
    post:
      tags:
        - Génération d'images
      summary: Interface de génération d'images Midjourney V8.1
      description: >-
        - Le modèle Midjourney V8.1 prend en charge la génération d'images de
        haute qualité via des prompts en langage naturel. Le mode Fast renvoie 4
        images par génération ; le mode Draft renvoie 24 images d'esquisse
        légères en 0.5K en une seule exécution

        - Prend en charge le texte-vers-image et l'image-vers-image (en
        référençant des URL d'images dans le prompt)

        - Points forts de V8.1 : sortie HD native (`quality=hd`), vitesse de
        génération environ 5x supérieure à la génération précédente, rendu de
        texte amélioré (le texte entre guillemets est rendu plus fidèlement) et
        meilleure adhérence aux prompts

        - Compatible avec les ressources V7 : la référence de style (`--sref`)
        et la référence d'objet (`--oref`) sont prises en charge, voir le [guide
        des paramètres de
        prompt](/fr/api-manual/image-series/midjourney/midjourney-v8-1-prompt-guide)

        - Mode de traitement asynchrone, utilisez l'ID de tâche retourné pour
        [effectuer une requête](/fr/api-manual/task-management/get-task-detail)

        - Les liens d'images générées sont valides pendant 30 jours, veuillez
        les sauvegarder rapidement

        - Délai d'expiration : environ 20 minutes

        - Note sur les paramètres : cette interface fonctionne sur V8.1 et ne
        prend pas en charge niji ; définissez le mode de vitesse via
        `model_params.speed` et la qualité de sortie via le paramètre de premier
        niveau `quality`
      operationId: createMjV81ImageGeneration
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImageGenerationRequest'
            examples:
              text_to_image:
                summary: Texte vers image
                value:
                  model: mj-v8.1
                  prompt: >-
                    A cinematic shot of a Maine Coon cat on a neon-lit balcony
                    --ar 16:9 --s 500
                  quality: standard
                  model_params:
                    speed: fast
              text_to_image_hd:
                summary: Texte vers image (Fast + HD)
                value:
                  model: mj-v8.1
                  prompt: >-
                    A cinematic shot of a Maine Coon cat on a neon-lit balcony
                    --ar 16:9 --s 500
                  quality: hd
                  model_params:
                    speed: fast
              image_to_image:
                summary: Image vers image
                value:
                  model: mj-v8.1
                  prompt: >-
                    https://example.com/ref.jpg A sunset landscape in watercolor
                    style --iw 1.5 --ar 16:9
                  quality: standard
                  model_params:
                    speed: fast
      responses:
        '200':
          description: Tâche créée avec succès
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImageGenerationResponse'
        '400':
          description: Paramètres de requête invalides
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: invalid_request
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: Non authentifié, token invalide ou expiré
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Quota insuffisant, veuillez recharger
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: Accès refusé
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: 'Token does not have access to model: mj-v8.1'
                  type: invalid_request_error
        '429':
          description: Limite de débit dépassée
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
components:
  schemas:
    ImageGenerationRequest:
      type: object
      required:
        - model
        - prompt
      properties:
        model:
          type: string
          enum:
            - mj-v8.1
          default: mj-v8.1
          description: Nom du modèle
        prompt:
          type: string
          description: >-
            Prompt, prend en charge toute la syntaxe native des paramètres
            Midjourney V8.1 (ex. --ar 16:9 --s 500).


            **Image-vers-image :** Placez les URL d'images au début du prompt.
            Formats pris en charge : .png, .gif, .webp, .jpg, .jpeg


            **Règles image-vers-image :**

            - 1 image + pas de texte = **invalide** (retournera une erreur)

            - 1 image + description textuelle = valide

            - 2+ images + pas de texte = valide

            - 2+ images + description textuelle = valide
          maxLength: 1024
          example: >-
            A cinematic shot of a Maine Coon cat on a neon-lit balcony --ar 16:9
            --s 500
        quality:
          type: string
          enum:
            - standard
            - hd
          default: standard
          description: >-
            Qualité de sortie


            - `standard` : résolution standard (par défaut), multiplicateur 1x

            - `hd` : sortie HD native, multiplicateur 1.5x. Mutuellement
            exclusif avec `speed: draft`


            **Note de tarification :** le multiplicateur de qualité est combiné
            (multiplié) avec le multiplicateur `speed`.
        model_params:
          type: object
          description: Paramètres du modèle
          properties:
            speed:
              type: string
              enum:
                - draft
                - fast
              default: fast
              description: >-
                Mode de vitesse


                - `draft` : mode esquisse. Renvoie 24 images d'esquisse légères
                en 0.5K en une seule exécution (au lieu de 4), idéal pour
                explorer rapidement des idées de composition. Mutuellement
                exclusif avec `quality: hd`

                - `fast` : mode standard (par défaut)


                **Note de tarification :** `draft` et `fast` partagent le même
                multiplicateur de vitesse (1x). Ce multiplicateur de vitesse est
                ensuite combiné (multiplié) avec le multiplicateur `quality`.
        callback_url:
          type: string
          description: >-
            Adresse de rappel HTTPS après l'achèvement de la tâche


            **Moment du rappel :**

            - Déclenché lorsque la tâche est terminée, échouée ou annulée

            - Envoyé après la confirmation de facturation


            **Restrictions de sécurité :**

            - Seul le protocole HTTPS est pris en charge

            - Les rappels vers les adresses IP privées sont interdits
            (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)

            - La longueur de l'URL ne doit pas dépasser `2048` caractères


            **Mécanisme de rappel :**

            - Délai d'expiration : `10` secondes

            - Jusqu'à `3` tentatives après un échec (respectivement
            `1`s/`2`s/`4`s après l'échec)

            - Le format du corps de la réponse de rappel est identique à celui
            de l'interface de requête de tâche

            - Un code de statut 2xx est considéré comme un succès, tout autre
            code de statut déclenche une nouvelle tentative
          format: uri
          example: https://your-domain.com/webhooks/image-task-completed
    ImageGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: Horodatage de création de la tâche
          example: 1757165031
        id:
          type: string
          description: ID de la tâche
          example: task-unified-1757165031-mjv81
        model:
          type: string
          description: Nom du modèle réellement utilisé
          example: mj-v8.1
        object:
          type: string
          enum:
            - image.generation.task
          description: Type d'objet de la tâche
        progress:
          type: integer
          description: Pourcentage de progression de la tâche (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: Statut de la tâche
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/TaskInfo'
          description: Informations de tâche asynchrone
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          description: Type de sortie de la tâche
          example: image
        usage:
          $ref: '#/components/schemas/Usage'
          description: Informations d'utilisation et de facturation
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Identifiant du code d'erreur
            message:
              type: string
              description: Message d'erreur
            type:
              type: string
              description: Type d'erreur
    TaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: Si la tâche peut être annulée
          example: true
        estimated_time:
          type: integer
          description: Temps d'achèvement estimé (secondes)
          minimum: 0
          example: 45
    Usage:
      type: object
      description: Informations d'utilisation et de facturation
      properties:
        billing_rule:
          type: string
          description: Règle de facturation
          enum:
            - per_call
            - per_token
            - per_second
          example: per_call
        credits_reserved:
          type: number
          description: Crédits estimés consommés
          minimum: 0
          example: 1.8
        user_group:
          type: string
          description: Groupe d'utilisateurs
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ## Toutes les interfaces nécessitent une authentification par Bearer
        Token ##


        **Obtenir une clé API :**


        Visitez la [page de gestion des clés
        API](https://evolink.ai/dashboard/keys) pour obtenir votre clé API


        **Ajoutez dans l'en-tête de la requête :**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````