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

# Midjourney V7 Retouche

> - Regenere des zones specifiques d'une image, en gardant le reste inchange
- Prend en charge deux methodes de masque : coordonnees polygonales ou image de masque noir et blanc
- Mode de traitement asynchrone, utilisez l'ID de tache retourne pour [effectuer une requete](/fr/api-manual/task-management/get-task-detail)

<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-v7-inpaint.json POST /v1/images/generations
openapi: 3.1.0
info:
  title: Interface mj-v7-inpaint
  version: 1.0.0
  description: >-
    - Regenere des zones specifiques d'une image, en gardant le reste inchange

    - Prend en charge deux methodes de masque : coordonnees polygonales ou image
    de masque noir et blanc

    - Mode de traitement asynchrone, utilisez l'ID de tache retourne pour
    [effectuer une requete](/fr/api-manual/task-management/get-task-detail)
servers:
  - url: https://api.evolink.ai
security: []
paths:
  /v1/images/generations:
    post:
      summary: Midjourney V7 Repeinture de zone
      description: >-
        - Regenere des zones specifiques d'une image, en gardant le reste
        inchange

        - Prend en charge deux methodes de masque : coordonnees polygonales ou
        image de masque noir et blanc

        - Mode de traitement asynchrone, utilisez l'ID de tache retourne pour
        [effectuer une requete](/fr/api-manual/task-management/get-task-detail)
      operationId: mjV7Inpaint
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MjV7InpaintRequest'
            examples:
              polygon_mask:
                summary: Repeinture par coordonnees polygonales
                value:
                  model: mj-v7-inpaint
                  prompt: Ajouter un cerisier en fleurs
                  model_params:
                    task_id: task-unified-xxx
                    image_number: 0
                    mask:
                      areas:
                        - width: 200
                          height: 200
                          points:
                            - 50
                            - 50
                            - 50
                            - 250
                            - 250
                            - 250
                            - 250
                            - 50
              image_mask:
                summary: Repeinture par image de masque
                value:
                  model: mj-v7-inpaint
                  model_params:
                    task_id: task-unified-xxx
                    image_number: 0
                    mask:
                      url: https://example.com/mask.png
      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'
        '401':
          description: Non authentifié
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '402':
          description: Quota insuffisant
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Accès refusé
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Limite de débit dépassée
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - bearerAuth: []
components:
  schemas:
    MjV7InpaintRequest:
      type: object
      required:
        - model
        - model_params
      properties:
        model:
          type: string
          enum:
            - mj-v7-inpaint
          default: mj-v7-inpaint
          description: Nom du modèle
        prompt:
          type: string
          description: Décrire le contenu souhaité pour la zone de retouche
          example: Ajouter un cerisier en fleurs
        model_params:
          type: object
          required:
            - task_id
            - mask
          description: Paramètres du modèle
          properties:
            task_id:
              type: string
              description: ID de la tâche source
              example: task-unified-xxx
            image_number:
              type: integer
              enum:
                - 0
                - 1
                - 2
                - 3
              default: 0
              description: Sélectionner l'image (0-3)
            mask:
              type: object
              description: Définition de la zone de retouche, deux méthodes supportées
              oneOf:
                - type: object
                  description: Methode par coordonnees polygonales
                  required:
                    - areas
                  properties:
                    areas:
                      type: array
                      description: >-
                        Methode par coordonnees polygonales, prend en charge
                        plusieurs zones de repeinture
                      items:
                        type: object
                        properties:
                          width:
                            type: integer
                            description: Largeur de la boite englobante du polygone
                          height:
                            type: integer
                            description: Hauteur de la boite englobante du polygone
                          points:
                            type: array
                            items:
                              type: integer
                            description: >-
                              Paires de coordonnees aplaties [x1,y1,x2,y2,...]
                              formant un polygone ferme
                - type: object
                  description: >-
                    URL de l'image de masque noir et blanc, zone blanche = zone
                    de repeinture, zone noire = zone conservee
                  required:
                    - url
                  properties:
                    url:
                      type: string
                      format: uri
                      description: >-
                        URL de l'image de masque noir et blanc, zone blanche =
                        zone de repeinture, zone noire = zone conservee
            speed:
              type: string
              enum:
                - fast
                - turbo
              default: fast
              description: |-
                Mode de vitesse（effectif uniquement lorsqu'un prompt est fourni）

                **Informations sur les couts :** Le mode turbo coûte plus cher
        callback_url:
          type: string
          format: uri
          description: URL de rappel après achèvement
    ImageGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: Horodatage de création
          example: 1757165031
        id:
          type: string
          description: ID de la tâche
          example: task-unified-1757165031-mjv7
        model:
          type: string
          description: Nom du modèle utilisé
        object:
          type: string
          enum:
            - image.generation.task
          description: Type de tâche
        progress:
          type: integer
          description: Pourcentage de progression (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'
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          example: image
        usage:
          $ref: '#/components/schemas/Usage'
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
            type:
              type: string
    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
      properties:
        billing_rule:
          type: string
          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
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Toutes les interfaces necessitent une authentification par Bearer
        Token##


        **Obtenir une cle API :**


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


        **Ajoutez dans l'en-tete de la requete :**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````