Passer au contenu

Members

Les membres de l’organisation sont des utilisateurs qui ont accès à votre organisation Capgo. Chaque membre a un rôle spécifique qui détermine ses autorisations au sein de l’organisation. La gestion efficace des membres est cruciale pour maintenir la sécurité et la collaboration au sein de votre équipe.

  • lire : peut afficher les ressources mais ne peut pas apporter de modifications
  • télécharger : peut télécharger de nouveaux bundles et afficher les ressources
  • écrire : peut modifier les ressources et télécharger des bundles
  • admin : peut gérer les paramètres et les membres de l’organisation
  • super_admin : a un contrôle total sur l’organisation
  • invite_read : invitation en attente pour un accès en lecture
  • invite_upload : invitation en attente pour l’accès au téléchargement
  • invite_write : invitation en attente pour un accès en écriture
  • invite_admin : invitation en attente pour l’accès administrateur
  • invite_super_admin : invitation en attente pour un accès super-administrateur

## meilleures pratiques

  1. Attribution des rôles : suivez le principe du moindre privilège lors de l’attribution des rôles
  2. Audits réguliers : examinez périodiquement l’accès des membres et supprimez les comptes inutilisés
  3. Intégration : disposez d’un processus clair pour ajouter de nouveaux membres et attribuer des rôles
  4. Désintégration : supprimez rapidement l’accès aux membres qui quittent l’organisation.

https://api.capgo.app/organization/members/

Ajoutez un nouveau membre à une organisation ou mettez à jour le rôle d’un membre existant. Notez que vous ne pouvez inviter que des utilisateurs qui possèdent déjà un compte Capgo - l’e-mail doit correspondre à un utilisateur Capgo existant.

interface MemberCreate {
orgId: string
email: string
role: "read" | "upload" | "write" | "admin" | "super_admin"
}
Terminal window
curl -X POST \
-H "authorization: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"orgId": "org_123",
"email": "newmember@example.com",
"role": "write"
}' \
https://api.capgo.app/organization/members/
{
"status": "OK",
"data": {
"uid": "user_789",
"email": "newmember@example.com",
"role": "invite_write",
"image_url": null
}
}

Remarques :

  • Lors de l’ajout d’un nouveau membre, celui-ci recevra un email d’invitation. Leur rôle sera préfixé par « invite_ » jusqu’à ce qu’ils acceptent l’invitation.
  • L’utilisateur doit déjà disposer d’un compte Capgo avant de pouvoir être invité. S’ils n’ont pas de compte, ils doivent d’abord en créer un sur https://console.capgo.app/register/.

https://api.capgo.app/organization/members/

Récupérer tous les membres d’une organisation.

interface MemberQuery {
orgId: string
}
interface Member {
uid: string;
email: string;
image_url: string;
role: "invite_read" | "invite_upload" | "invite_write" | "invite_admin" | "invite_super_admin" | "read" | "upload" | "write" | "admin" | "super_admin";
}
Terminal window
curl -H "authorization: your-api-key" \
"https://api.capgo.app/organization/members/?orgId=org_123"
{
"data": [
{
"uid": "user_123",
"email": "john@example.com",
"image_url": "https://example.com/avatar.png",
"role": "admin"
},
{
"uid": "user_456",
"email": "jane@example.com",
"image_url": "https://example.com/avatar2.png",
"role": "write"
},
{
"uid": "user_789",
"email": "bob@example.com",
"image_url": null,
"role": "invite_read"
}
]
}

https://api.capgo.app/organization/members/

Supprimer un membre d’une organisation. Cela révoquera immédiatement leur accès.

interface MemberDelete {
orgId: string
email: string
}
Terminal window
curl -X DELETE \
-H "authorization: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"orgId": "org_123",
"email": "user@example.com"
}' \
https://api.capgo.app/organization/members/
{
"status": "OK"
}

Scénarios d’erreur courants et leurs réponses :

// Member not found
{
"error": "Member not found",
"status": "KO"
}
// Invalid role
{
"error": "Invalid role specified",
"status": "KO"
}
// Permission denied
{
"error": "Insufficient permissions to manage members",
"status": "KO"
}
// Cannot remove last admin
{
"error": "Cannot remove the last admin from the organization",
"status": "KO"
}
// Invalid email
{
"error": "Invalid email format",
"status": "KO"
}
// Member already exists
{
"error": "Member already exists in organization",
"status": "KO"
}
  1. Expansion de l’équipe : ajout de nouveaux membres de l’équipe avec les rôles appropriés
  2. Contrôle d’accès : gestion des autorisations des membres à mesure que les responsabilités changent
  3. Audit de sécurité : examen périodique de la liste des membres et des rôles
  4. Restructuration de l’équipe : mise à jour des rôles lors des changements organisationnels