Back to Gitlabhq

API Suggest Changes

doc-locale/fr-fr/api/suggestions.md

19.1.04.6 KB
Original Source

{{< details >}}

  • Édition : Gratuite, GitLab Premium, GitLab Ultimate
  • Offre : GitLab.com, GitLab Self-Managed, GitLab Dedicated

{{< /details >}}

Utilisez cette API pour gérer les suggestions de code.

Les suggestions offrent un moyen de proposer des modifications spécifiques qui peuvent être directement appliquées au code. Vous pouvez créer et appliquer des suggestions de code par programmation dans les discussions de merge request avec cette API. Chaque appel API aux suggestions doit être authentifié.

Créer une suggestion {#create-a-suggestion}

Pour créer une suggestion via l'API, utilisez l'API Discussions pour créer un nouveau fil de discussion dans le diff de la merge request. Le format des suggestions est le suivant :

markdown
```suggestion:-3+0
example text
```

Appliquer une suggestion {#apply-a-suggestion}

Applique un correctif suggéré dans une merge request.

Prérequis :

  • Les utilisateurs doivent avoir le rôle Developer, Maintainer ou Owner.
plaintext
PUT /suggestions/:id/apply

Attributs pris en charge :

AttributTypeObligatoireDescription
idintegerOuiID d'une suggestion.
commit_messagestringNonMessage de commit personnalisé à utiliser à la place du message généré par défaut ou du message par défaut du projet.

En cas de succès, retourne 200 OK et les attributs de réponse suivants :

AttributTypeDescription
applicablebooleanSi true, la suggestion peut être appliquée.
appliedbooleanSi true, la suggestion a été appliquée.
from_contentstringContenu original avant la suggestion.
from_lineintegerNuméro de ligne de début de la suggestion.
idintegerID de la suggestion.
to_contentstringContenu suggéré pour remplacer l'original.
to_lineintegerNuméro de ligne de fin de la suggestion.

Exemple de requête :

shell
curl --request PUT \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/suggestions/5/apply"

Exemple de réponse :

json
{
  "id": 5,
  "from_line": 10,
  "to_line": 10,
  "applicable": true,
  "applied": false,
  "from_content": "This is an example\n",
  "to_content": "This is an example\n"
}

Appliquer plusieurs suggestions {#apply-multiple-suggestions}

Applique plusieurs correctifs suggérés dans une merge request.

Prérequis :

  • Les utilisateurs doivent avoir le rôle Developer, Maintainer ou Owner.
plaintext
PUT /suggestions/batch_apply

Attributs pris en charge :

AttributTypeObligatoireDescription
idsinteger arrayOuiIDs des suggestions à appliquer.
commit_messagestringNonMessage de commit personnalisé à utiliser à la place du message généré par défaut ou du message par défaut du projet.

En cas de succès, retourne 200 OK et un tableau d'objets de suggestion avec les attributs de réponse suivants :

AttributTypeDescription
applicablebooleanSi true, la suggestion peut être appliquée.
appliedbooleanSi true, la suggestion a été appliquée.
from_contentstringContenu original avant la suggestion.
from_lineintegerNuméro de ligne de début de la suggestion.
idintegerID de la suggestion.
to_contentstringContenu suggéré pour remplacer l'original.
to_lineintegerNuméro de ligne de fin de la suggestion.

Exemple de requête :

shell
curl --request PUT \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --header "Content-Type: application/json" \
  --data '{"ids": [5, 6]}' \
  --url "https://gitlab.example.com/api/v4/suggestions/batch_apply"

Exemple de réponse :

json
[
  {
    "id": 5,
    "from_line": 10,
    "to_line": 10,
    "applicable": true,
    "applied": false,
    "from_content": "This is an example\n",
    "to_content": "This is an example\n"
  },
  {
    "id": 6,
    "from_line": 19,
    "to_line": 19,
    "applicable": true,
    "applied": false,
    "from_content": "This is another example\n",
    "to_content": "This is another example\n"
  }
]