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

# Ming Image — Séparation en calques

`ming-image-0.1-design-layer` prend uniquement en charge la séparation en calques à l’aide du protocole de modification d’images d’OpenAI.

## En-têtes de la requête

<ParamField header="Content-Type" type="string" required={true}>
  Format pris en charge : `multipart/form-data`
</ParamField>

<ParamField header="Authorization" type="string" required={true}>
  Format d’authentification Bearer, par exemple : Bearer \{\{API Key}}.
</ParamField>

## Corps de la requête

<ParamField body="model" type="enum" required={true}>
  Nom du modèle. Valeurs disponibles : `ming-image-0.1-design-layer`
</ParamField>

<ParamField body="image" type="Files" required={true}>
  Image d’entrée : 1 image. Le champ du formulaire est `image[]`.

  `ming-image-0.1-design-layer` n’accepte qu’une seule image en entrée.
</ParamField>

<ParamField body="prompt" type="string" required={true}>
  Description textuelle de l’image.
</ParamField>

<ParamField body="output_format" type="string" default="png" required={false}>
  Format de l’image de sortie. Doit être `png` ou `webp`.
</ParamField>

<ParamField body="response_format" type="string" default="b64_json" required={false}>
  Format dans lequel l’image est renvoyée ; la valeur par défaut est `b64_json`. Valeurs disponibles : `url`, `b64_json`. Remarque : `url` est valide pendant 24 heures.
</ParamField>

<ParamField body="size" type="string" default="auto" required={false}>
  Taille de l’image de sortie. La valeur par défaut `auto` sélectionne automatiquement la taille selon le modèle. Format : `"{w}x{h}"`, par exemple `"1024x1024"`.
</ParamField>

<ParamField body="watermark" type="boolean" default={false} required={false}>
  Détermine si un filigrane est ajouté à l’image générée par IA. `true` : active le filigrane visible et le filigrane numérique implicite sur les images générées par IA, conformément aux exigences des politiques applicables. `false` : désactive tous les filigranes.
</ParamField>

## Réponse

<ResponseField name="created" type="integer" required={true}>
  Horodatage Unix (en secondes) de la création de la réponse.
</ResponseField>

<ResponseField name="data" type="array" required={true}>
  Tableau des images renvoyées, contenant plusieurs calques (par exemple, un calque de premier plan, un calque d’arrière-plan, etc.), avec un élément par calque.

  <Expandable title="propriétés">
    <ResponseField name="b64_json" type="string">
      Données de l’image du calque encodées en base64.
    </ResponseField>

    <ResponseField name="data[0].revised_prompt" type="string">
      Chaîne JSON décrivant la structure des calques, avec la taille du canevas et les informations de chaque région.

      <Expandable title="propriétés">
        <ResponseField name="revised_prompt.canvas" type="array">
          Taille du canevas : `[width, height]`.
        </ResponseField>

        <ResponseField name="revised_prompt.regions" type="array">
          Liste des régions des calques.

          <Expandable title="propriétés">
            <ResponseField name="revised_prompt.regions[].category" type="string">
              Catégorie du calque, par exemple `Image` (calque de premier plan), `BackgroundImage` (calque d’arrière-plan).
            </ResponseField>

            <ResponseField name="revised_prompt.regions[].bbox" type="array">
              Rectangle englobant du calque sur le canevas : `[x1, y1, x2, y2]`.
            </ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="output_format" type="string" required={true}>
  Format de l’image de sortie (les calques sont toujours renvoyés au format png).
</ResponseField>

<ResponseField name="size" type="string">
  `null`
</ResponseField>

<ResponseField name="usage" type="object" required={true}>
  Statistiques d’utilisation des tokens.

  <Expandable title="propriétés">
    <ResponseField name="input_tokens" type="integer">
      Nombre total de tokens d’entrée (y compris les tokens de l’image importée).
    </ResponseField>

    <ResponseField name="input_tokens_details" type="object">
      Détails des tokens d’entrée.

      <Expandable title="propriétés">
        <ResponseField name="image_tokens" type="integer">
          Nombre de tokens consommés par l’image d’entrée.
        </ResponseField>

        <ResponseField name="text_tokens" type="integer">
          Nombre de tokens consommés par le texte d’entrée.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="output_tokens" type="integer">
      Nombre total de tokens de sortie (somme sur plusieurs calques, par exemple 3 calques × 4096 = 12288).
    </ResponseField>

    <ResponseField name="total_tokens" type="integer">
      Somme des tokens d’entrée et de sortie.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="model" type="string" required={true}>
  Nom du modèle qui a effectivement traité la requête.
</ResponseField>

<ResponseField name="id" type="string" required={true}>
  Identifiant unique de cette requête.
</ResponseField>

## Exemple

`Requête :`

```bash theme={"system"}
curl --location --request POST 'https://api.novita.ai/v1/images/edits' \
--header 'Authorization: Bearer {{API Key}}' \
--form 'model="ming-image-0.1-design-layer"' \
--form 'prompt="Split into three layers"' \
--form 'image[]=@"{The Path of Your Image File}"' \
--form 'size="1024x1024"'
```

`Réponse :`

```js theme={"system"}
{
  "created": 1789642431,
  "data": [
    {
      "b64_json": "...",
      "revised_prompt": "{\"canvas\": [1024, 1024], \"regions\": [{\"category\": \"Image\", \"bbox\": [1.4, 3.3, 1023.0, 1022.0]}, {\"category\": \"BackgroundImage\", \"bbox\": [1.4, 3.3, 1023.0, 1022.0]}]}"
    },
    {
      "b64_json": "..."
    },
    {
      "b64_json": "..."
    }
  ],
  "output_format": "png",
  "size": null,
  "usage": {
    "input_tokens": 4096,
    "input_tokens_details": {
      "image_tokens": 4096,
      "text_tokens": 0
    },
    "output_tokens": 12288,
    "total_tokens": 16384
  },
  "model": "Ming-Image-0.1-Design-Layer-StressTest",
  "id": "218edba617896423893976485e4f35"
}
```
