Pas membre
type | https://docs.frem.sh/reference/api/errors/not-a-member |
| Statut HTTP | 403 Forbidden |
Ce que cela signifie
Le login indiqué dans le chemin de la requête n’est pas membre de l’organisation indiquée dans ce même chemin : la requête a donc été refusée sans qu’aucune action soit effectuée.
Il s’agit d’une limite délibérée, pas d’un problème de permissions de votre jeton : un endpoint limité aux membres n’agit que sur les membres de l’organisation à laquelle vous vous êtes adressé. Cela évite de modifier un paramètre pour un utilisateur qui se trouve partager son login avec quelqu’un d’une autre organisation.
Que faire
Vérifiez l’orthographe du login, et confirmez que l’utilisateur est membre de cette organisation :
curl -H "Authorization: Bearer $FREMFORGE_TOKEN" \
https://frem.sh/api/v1/orgs/<org>/membersAjoutez-le d’abord à l’organisation s’il n’en fait pas partie. Le login est comparé sans tenir compte de la casse : la casse seule n’est donc pas en cause.
Ne pas confondre avec
| Erreur | Signification |
|---|---|
not-found | Cet utilisateur n’existe nulle part sur l’instance. |
forgejo-unavailable | L’appartenance n’a pas pu être vérifiée du tout : c’est une panne transitoire, pas une réponse sur l’appartenance. Réessayez. |
Cette dernière distinction compte dans un script : un 403 est une réponse définitive et réessayer ne la changera pas, tandis qu’un 503 doit être réessayé.
Forme de la réponse
Toutes les erreurs de l’API fremforge sont au format problem+json de la RFC 9457 :
{
"type": "https://docs.frem.sh/reference/api/errors/not-a-member",
"title": "Forbidden",
"status": 403,
"detail": "<login> is not a member of this organisation."
}Basez votre logique sur type, et non sur title ou detail : ces champs sont destinés à être lus par un humain et peuvent être reformulés.