6.1.7. Commentaires

6.1.7.1. Obtention des commentaires

Ceci permet d'obtenir des données sur les commentaires en fonction d'un numéro de bogue ou de commentaire.

Requête

Pour obtenir tous les commentaires pour un bogue particulier en utilisant le numéro de bogue ou son alias :

GET /rest/bug/(id_or_alias)/comment

Pour obtenir un commentaire spécifique en se basant sur le numéro de commentaire :

GET /rest/bug/comment/(comment_id)
nom type description
id_or_alias mixed Un numéro de bogue unique (entier) ou son alias.
comment_id int Un numéro de commentaire (entier).
new_since datetime Si spécifié, la méthode ne renverra que les commentaires postérieurs à cet horodatage. Ceci n'affecte que les commentaires renvoyés par l'argument ids. Vous obtiendrez toujours tous les commentaires de l'argument comment_ids, même si ceux-ci sont antérieurs à cet horodatage.

Réponse

{
  "bugs": {
    "35": {
      "comments": [
        {
          "time": "2000-07-25T13:50:04Z",
          "text": "Bogue de test pour corriger un problème de suppression dans la liste Copie à.",
          "bug_id": 35,
          "count": 0,
          "attachment_id": null,
          "is_private": false,
          "tags": [],
          "creator": "user@bugzilla.org",
          "creation_time": "2000-07-25T13:50:04Z",
          "id": 75
        }
      ]
    }
  },
  "comments": {}
}

Deux éléments sont renvoyés :

bugs Ceci est utilisé pour les bogues spécifiés dans ids. Ceci est un objet dont les clés sont les numéros de bogues, et la valeur est un objet avec une seule clé, comments, qui est un tableau de commentaires. (Le format des commentaires est décrit ci-dessous).

Chaque bogue individuel ne sera renvoyé qu'une seule fois, donc, si vous indiquez un numéro plusieurs fois dans ids, il ne sera renvoyé qu'une seule fois.

comments Chaque commentaire individuel demandé dans comment_ids est renvoyé ici, dans un objet où le numéro de commentaire est la clé et la valeur est le commentaire lui-même. (Le format des commentaires est décrit ci-dessous).

Un commentaire, comme indiqué ci-dessus, est un objet qui contient deux éléments :

nom type description
id int Le numéro global unique du commentaire.
bug_id int Le numéro du bogue auquel se rapporte le commentaire.
attachment_id int Si le commentaire a été fait sur un fichier joint, ce sera le numéro du fichier joint. Sinon, il sera nul.
count int Le numéro d'ordre du commentaire dans le bogue. La description porte le numéro 0, les commentaires commencent à 1.
text string Le texte du commentaire.
creator string L'identifiant de connexion de l'auteur du commentaire.
time datetime L'horodatage (dans le fuseau horaire de Bugzilla) de l'ajout du commentaire.
creation_time datetime

C'est exactement la même chose que la clé time. Utilisez ce champ plutôt que time pour la cohérence avec les autres méthodes, comprenant Obtention d'un bogue et Obtention d'un fichier joint.

Pour des raisons de compatibilité, time est toujours utilisable. Cependant, veuillez noter que time pourrait être rendu obsolète et supprimé dans une future version.

is_private boolean true si ce commentaire est confidentiel (seulement visible par le groupe insidergroup), false dans le cas contraire.

Erreurs

Cette méthode peut renvoyer les mêmes erreurs que Obtention d'un bogue. De plus, elle peut aussi renvoyer les erreurs suivantes :

  • 110 (Le commentaire est confidentiel) Vous avez spécifié l'identifiant d'un commentaire confidentiel dans l'argument 'comment_ids' et vous ne faites pas partie du groupe 'insider' qui peut voir les commentaires confidentiels.
  • 111 (Identifiant de commentaire invalide) Vous avez indiqué un identifiant dans l'argument 'comment_ids' qui est invalide : vous avez indiqué une valeur qui n'est pas un nombre ou il n'existe pas de commentaire ayant cet identifiant.

6.1.7.2. Création de commentaires

Ceci permet d'ajouter un commentaire à un bogue dans Bugzilla.

Requête

Pour créer un commentaire sur un bogue existant :

POST /rest/bug/(id)/comment
{
  "comment" : "Ceci est un nouveau commentaire",
  "is_private" : false
}
nom type description
id int Le numéro ou l'alias du bogue auquel ajouter le commentaire.
comment string Le commentaire à ajouter au bogue. S'il est vide ou ne contient que des espaces, une erreur sera renvoyée indiquant que vous n'avez pas défini le paramètre comment.
is_private boolean Si défini à true, le commentaire est confidentiel, sinon, il est supposé être public.
work_time double Ajoute ce nombre d'heure dans les Heures travaillées du bogue. Si vous ne faites pas partie du groupe timetracking, cette valeur sera ignorée.

Réponse

{
  "id" : 789
}
nom type description
id int Numéro du commentaire nouvellement créé.

Erreurs

  • 54 (Nombre d'heures travaillées trop grand) Vous avez spécifié une valeur pour l'argument 'work_time' supérieure à la valeur maximale autorisée (99999,99).
  • 100 (Alias de bogue invalide) Vous avez indiqué un alias qui n'est associé à aucun bogue.
  • 101 (Identifiant de bogue invalide) L'identifiant que vous avez indiqué n'existe pas dans la base de données.
  • 109 (Modification de bogue refusée) Vous ne disposez pas des autorisations nécessaires pour modifier ce bogue.
  • 113 (Confidentialité sur les commentaires refusée) Vous avez essayé de rendre un commentaire confidentiel mais vous ne disposez pas des droits nécessaires pour le faire.
  • 114 (Commentaire trop long) Vous avez tenté d'ajouter un commentaire plus long que la valeur maximale autorisée (65535 caractères).
  • 140 (Markdown désactivé) Vous avez essayé de définir l'étiquette 'is_markdown' d'un commentaire à 'true' mais la fonctionnalité Markdown est désactivée.

6.1.7.3. Recherche d'étiquette de commentaire

Recherche des étiquettes de commentaire contenant la chaîne.

Request

Pour rechercher des étiquettes de commentaire :

GET /rest/bug/comment/tags/(query)

Exemple :

GET /rest/bug/comment/tags/spa
nom type description
query string Seules les étiquettes contenant cette chaîne seront renvoyées.
limit int Si fourni, ne renverra pas plus que limit étiquettes. Par défaut limité à 10.

Réponse

[
  "spam"
]

Un tableau des étiquettes correspondantes.

Erreurs

Cette méthode peut renvoyer les mêmes erreurs que Obtention d'un bogue, plus :

  • 125 (Étiquettes de commentaires désactivée) La gestion d'étiquette des commentaires n'est pas disponible ou activée.

6.1.7.4. Mise à jour des étiquettes de commentaires

Ajoute ou supprime les étiquettes d'un commentaire.

Requête

Pour mettre à jour les étiquettes de commentaire attachées à un commentaire :

PUT /rest/bug/comment/(comment_id)/tags

Exemple :

{
  "comment_id" : 75,
  "add" : ["spam", "bad"]
}
nom type description
comment_id int Le numéro du commentaire à mettre à jour.
add array Les étiquettes à attacher au commentaire.
remove array Les étiquettes à retirer du commentaire.

Réponse

[
  "bad",
  "spam"
]

Un tableau de chaînes contenant les étiquettes mises à jour du commentaire.

Erreurs

Cette méthode peut renvoyer les mêmes erreurs que Obtention d'un bogue, plus :

  • 125 (Étiquette de commentaire désactivée) La gestion d'étiquette de commentaires n'est pas disponible ou activée.
  • 126 (Étiquette de commentaire invalide) L'étiquette de commentaire fournie n'est pas valide (elle contient des caractères invalides).
  • 127 (Étiquette de commentaire trop courteComment ) L'étiquette de commentaire fournie est inférieure à la longueur minimale requise.
  • 128 (Étiquette de commentaire trop longue) L'étiquette de commentaire fournie est supérieure à la longueur maximale autorisée.