6.1.11. Groupes¶
L'API pour créer, modifier et obtenir des informations sur les groupes.
6.1.11.1. Création de groupe¶
Ceci permet de créer un nouveau groupe dans Bugzilla. Vous devez être authentifié et dans le groupe creategroups pour réaliser cette action.
Requête
POST /rest/group
{
"name" : "secret-group",
"description" : "Trop secret pour vous !",
"is_active" : true
}
Certains paramètres doivent être définis sans quoi une erreur est renvoyée. Les paramètres obligatoires sont indiqués en bold.
nom | type | description |
---|---|---|
name | string | Un nom court pour ce groupe. Il doit être unique. Ceci n'apparaît généralement pas dans l'interface utilisateur excepté dans certains endroits. |
description | string | Un nom compréhensible pour ce groupe. Il doit être relativement court. C'est ce qui apparaît dans l'interface utilisateur comme nom du groupe. |
user_regexp | string | Une expression régulière. Tout utilisateur de Bugzilla dont le nom correspond à cette expression régulière sera automatiquement membre de ce groupe. |
is_active | boolean | true si le nouveau groupe peut être utilisé pour les
bogues, false si le groupe contient uniquement des
utilisateurs et ne sert pas à restreindre l'accès à des
bogues. |
icon_url | string | Une URL pointant vers une petite icône utilisée pour identifier le groupe. Cette icône s'affichera à côté des noms d'utilisateur dans divers endroits de Bugzilla s'ils sont membres de ce groupe. |
Réponse
{
"id": 22
}
nom | type | description |
---|---|---|
id | int | Identifiant du nouveau groupe créé. |
6.1.11.2. Mise à jour d'un groupe¶
Ceci permet de mettre à jour un groupe dans Bugzilla. Vous devez être authentifié et dans le groupe creategroups pour réaliser cette action.
Requête
Pour mettre à jour un groupe en utilisant l'identifiant du groupe ou son nom :
PUT /rest/group/(id_or_name)
{
"name" : "secret-group",
"description" : "Trop secret pour vous ! (description mise à jour)",
"is_active" : false
}
Vous pouvez modifier un groupe en passant son identifiant ou son nom dans
l'URL. Pour modifier plusieurs groupes, vous devez indiquer des identifiants ou des noms de
groupes additionneles en utilisant les paramètres ids
ou names
respectivement.
Au moins un des trois éléments suivants doit être spécifié.
nom | type | description |
---|---|---|
id_or_name | mixed | Identifiant ou nom de groupe. |
ids | array | Identifiants des groupes à mettre à jour. |
names | array | Noms des groupes à mettre à jour. |
Les paramètres suivants spécifient les nouvelles valeurs que vous voulez définir pour le(s) groupe(s) à mettre à jour.
nom | type | description |
---|---|---|
name | string | Un nouveau nom pour le groupe . Si vous essayez de définir ceci en mettant à jour plusieurs groupes, une erreur sera renvoyée, car les noms de groupe doivent être uniques. |
description | string | Une nouvelle description pour les groupes. C'est ce qui sera visible dans l'interface utilisateur comme nom des groupes. |
user_regexp | string | Une nouvelle expression régulière pour l'adresse électronique. Les adresses correspondant à cette expression régulière seront automatiquement membres de ces groupes. |
is_active | boolean | Définit si le groupe est actif et éligible pour les bogues.
true si les bogues peuvent être restreints à ce groupe,
sinon false . |
icon_url | string | Une URL pointant vers une icône apparaîtra à côté des noms des utilisateurs membres de ce groupe. |
Réponse
{
"groups": [
{
"changes": {
"description": {
"added": "Trop secret pour vous ! (description mise à jour)",
"removed": "Trop secret pour vous !"
},
"is_active": {
"removed": "1",
"added": "0"
}
},
"id": "22"
}
]
}
groups
(array) Objets de modification de groupe, chacun contenant les éléments suivants :
nome | type | description |
---|---|---|
id | int | L'identifiant du groupe mis à jour. |
changes | object | Les modifications qui sont intervenues dans ce groupe. Les clés sont les noms des champs modifiés et les valeurs sont un objet contenant deux éléments :
|
6.1.11.3. Obtention d'un groupe¶
Renvoie des informations sur les groupes de Bugzilla.
Requête
Pour obtenir des informations sur un identifiant ou un nom de groupe spécifique :
GET /rest/group/(id_or_name)
Vous pouvez aussi obtenir des informations sur plus d'un groupe en utilisant ce qui suit dans votre requête :
GET /rest/group?ids=1&ids=2&ids=3
GET /group?names=ProductOne&names=Product2
Si aucun identifiant ou nom de groupe n'est passé et que vous êtes membre du groupe creategroups ou du groupe editusers, tous les groupes seront renvoyés. Sinon, seuls les groupes pour lesquels vous avez des droits d'édition seront renvoyés.
nom | type | description |
---|---|---|
id_or_name | mixed | Identifiant (entier) ou nom de groupe. |
ids | array | Identifiants (entiers) des groupes. |
names | array | Noms des groupes. |
membership | boolean | Si défini à 1, une liste des identifiants ou noms de groupes passés sera renvoyée. |
Réponse
{
"groups": [
{
"membership": [
{
"real_name": "Utilisateur Bugzilla",
"can_login": true,
"name": "user@bugzilla.org",
"login_denied_text": "",
"id": 85,
"email_enabled": false,
"email": "user@bugzilla.org"
},
],
"is_active": true,
"description": "Groupe de test",
"user_regexp": "",
"is_bug_group": true,
"name": "TestGroup",
"id": 9
}
]
}
Si l'utilisateur est membre du groupe creategroups, il recevra des informations sur tous les groupes ou les groupes correspondant au critère qui a été passé. Vous devez être membre du groupe creategroups à moins que vous ne recherchiez des informations sur l'appartenance d'un groupe.
Si l'utilisateur n'est pas membre du groupe creategroups, mais est membre du groupe editusers ou a des droits d'édition sur les groupes dont il veut obtenir des informations d'appartenance, les valeurs is_active, is_bug_group et user_regexp ne sont pas fournies.
Le résultat renvoyé est un objet contenant les noms de groupe sous forme de clés ; chaque valeur sera un objet décrivant le groupe et contenant les éléments suivants :
nom | type | description |
---|---|---|
id | int | L'identifiant entier unique qu'utilise Bugzilla pour identifier ce groupe. Même si le nom du groupe change, cet identifiant restera le même. |
name | string | Le nom du groupe. |
description | string | La description du groupe. |
is_bug_group | int | Si ce groupe est destiné aux rapports de bogues ou à des fin d'administration seulement. |
user_regexp | string | Une expression régulière qui permet aux utilisateurs d'être ajoutés à ce groupe si les identifiants correspondent. |
is_active | int | Si le groupe est actif ou pas. |
users | array | Objets utilisateur qui sont membres de ce groupe ; renvoyés
seulement si l'utilisateur définit le paramètre membership
à 1. Chaque objet utilisateur contient les éléments indiqués
ci-dessous. |
Objet utilisateur :
nom | type | description |
---|---|---|
id | int | L'identifiant de l'utilisateur. |
real_name | string | Le nom de l'utilisateur. |
string | L'adresse électronique de l'utilisateur. | |
name | string | L'identifiant de connexion de l'utilisateur. Veuillez noter que dans certaines situations, celui-ci est différent de son adresse électronique. |
can_login | boolean | Une valeur booléenne pour indiquer si l'utilisateur peut se connecter à Bugzilla. |
email_enabled | boolean | Une valeur booléenne pour indiquer si les courriels relatifs aux bogues seront envoyés ou pas. |
disabled_text | string | Un champ texte contenant la raison de la désactivation du compte de l'utilisateur. Si vide, le compte de l'utilisateur est actif, sinon, il est désactivé/fermé. |
Cette documentation contient très probablement des bogues ; si vous en découvrez, veuillez les signaler ici.