doc-locale/fr-fr/api/invitations.md
{{< details >}}
{{< /details >}}
Utilisez cette API pour gérer les invitations et ajouter des utilisateurs à un groupe ou à un projet.
Ajoute un nouveau membre. Vous pouvez spécifier un ID utilisateur ou inviter un utilisateur par e-mail.
Prérequis :
POST /groups/:id/invitations
POST /projects/:id/invitations
| Attribut | Type | Obligatoire | Description |
|---|---|---|---|
id | entier ou chaîne de caractères | oui | L'ID ou le chemin encodé par URL du projet ou du groupe |
email | string | oui (si user_id n'est pas fourni) | L'e-mail du nouveau membre ou plusieurs e-mails séparés par des virgules. |
user_id | entier ou chaîne de caractères | oui (si email n'est pas fourni) | L'ID du nouveau membre ou plusieurs ID séparés par des virgules. |
access_level | integer | oui | Un niveau d'accès valide. Valeurs possibles : 0 (Aucun accès), 5 (Accès minimum), 10 (Guest), 15 (Planificateur), 20 (Reporter), 25 (Responsable sécurité), 30 (Developer), 40 (Maintainer) ou 50 (Owner). Par défaut : 30. |
expires_at | string | non | Une chaîne de date au format YEAR-MONTH-DAY |
invite_source | string | non | La source de l'invitation qui lance le processus de création de membre. |
member_role_id | integer | non | Attribue le nouveau membre au rôle personnalisé fourni. (Introduit) dans GitLab 16.6. Ultimate uniquement. |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/:id/invitations" \
--data "[email protected]&user_id=1&access_level=30"
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/:id/invitations" \
--data "[email protected]&user_id=1&access_level=30"
Exemples de réponses :
Lorsque tous les e-mails ont été envoyés avec succès :
{ "status": "success" }
Lorsque des erreurs se sont produites lors de l'envoi de l'e-mail :
{
"status": "error",
"message": {
"[email protected]": "Invite email has already been taken",
"[email protected]": "User already exists in source",
"test_username": "Access level is not included in the list"
}
}
Pour activer Manage non-billable promotions, vous devez d'abord activer le paramètre d'application enable_member_promotion_management.
Exemple de réponse :
{
"queued_users": {
"username_1": "Request queued for administrator approval."
},
"status": "success"
}
Liste toutes les invitations en attente visibles par l'utilisateur authentifié. Renvoie les invitations aux membres directs uniquement, et non via les groupes d'ancêtres hérités.
Cette fonction utilise les paramètres de pagination page et per_page pour restreindre la liste des membres.
GET /groups/:id/invitations
GET /projects/:id/invitations
| Attribut | Type | Obligatoire | Description |
|---|---|---|---|
id | entier ou chaîne de caractères | oui | L'ID ou le chemin encodé par URL du projet ou du groupe |
page | integer | non | Page à récupérer |
per_page | integer | non | Nombre d'invitations de membres à retourner par page |
query | string | non | Une chaîne de requête pour rechercher des membres invités par e-mail d'invitation. Le texte de la requête doit correspondre exactement à l'adresse e-mail. Lorsqu'elle est vide, retourne toutes les invitations. |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/:id/[email protected]"
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/:id/[email protected]"
Exemple de réponse :
[
{
"id": 1,
"invite_email": "[email protected]",
"created_at": "2020-10-22T14:13:35Z",
"access_level": 30,
"expires_at": "2020-11-22T14:13:35Z",
"user_name": "Raymond Smith",
"created_by_name": "Administrator"
},
]
Met à jour une invitation en attente à un groupe ou à un projet.
PUT /groups/:id/invitations/:email
PUT /projects/:id/invitations/:email
| Attribut | Type | Obligatoire | Description |
|---|---|---|---|
id | entier ou chaîne de caractères | oui | L'ID ou le chemin encodé par URL du projet ou du groupe. |
email | string | oui | L'adresse e-mail à laquelle l'invitation a été précédemment envoyée. |
access_level | integer | non | Un niveau d'accès valide. Valeurs possibles : 0 (Aucun accès), 5 (Accès minimum), 10 (Guest), 15 (Planificateur), 20 (Reporter), 25 (Responsable sécurité), 30 (Developer), 40 (Maintainer) ou 50 (Owner). Par défaut : 30. |
expires_at | string | non | Une chaîne de date au format ISO 8601 (YYYY-MM-DDTHH:MM:SSZ). |
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/55/invitations/[email protected]?access_level=40"
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/55/invitations/[email protected]?access_level=40"
Exemple de réponse :
{
"expires_at": "2012-10-22T14:13:35Z",
"access_level": 40,
}
Supprime une invitation en attente à l'adresse e-mail spécifiée.
DELETE /groups/:id/invitations/:email
DELETE /projects/:id/invitations/:email
| Attribut | Type | Obligatoire | Description |
|---|---|---|---|
id | entier ou chaîne de caractères | oui | L'ID ou le chemin encodé par URL du projet ou du groupe |
email | string | oui | L'adresse e-mail à laquelle l'invitation a été précédemment envoyée |
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/55/invitations/[email protected]"
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/55/invitations/[email protected]"
204 et aucun contenu en cas de succès.403 forbidden si non autorisé à supprimer l'invitation.404 not found si autorisé et qu'aucune invitation n'est trouvée pour cette adresse e-mail.409 si la requête était valide mais que l'invitation n'a pas pu être supprimée.