Référence complète de l'API pour la gestion des utilisateurs, des invitations, des rôles et des permissions dans les projets et entreprises Blue
Aperçu
L'API de gestion des utilisateurs fournit des outils complets pour gérer les membres de l'équipe, contrôler les permissions d'accès et organiser votre main-d'œuvre à travers les projets et entreprises Blue. Que vous ajoutiez de nouveaux membres à l'équipe, gériez des utilisateurs existants ou définissiez des structures de permissions personnalisées, ces API gèrent tous les aspects de la gestion du cycle de vie des utilisateurs.
La gestion des utilisateurs dans Blue fonctionne à deux niveaux :
- Niveau projet : Gérer les utilisateurs au sein de projets spécifiques avec des permissions spécifiques au projet
- Niveau entreprise : Gérer les utilisateurs à travers toute votre organisation avec un accès à l'échelle de l'entreprise
Opérations disponibles
Gestion des utilisateurs de base
Opération | Description | Lien |
---|---|---|
Invite User | Envoyer des invitations à de nouveaux utilisateurs avec des niveaux d'accès spécifiques | View Details → |
List Users | Interroger et filtrer les utilisateurs dans des projets ou des entreprises | View Details → |
Remove User | Retirer des utilisateurs des projets ou des entreprises | View Details → |
Gestion des rôles et des permissions
Opération | Description | Lien |
---|---|---|
Custom Roles | Créer et gérer des rôles personnalisés avec des permissions granulaires | View Details → |
Niveaux d'accès
Blue fournit un système de permissions hiérarchique avec des niveaux d'accès prédéfinis :
Niveaux d'accès standard
Niveau | Description | Capacités |
---|---|---|
OWNER | Contrôle total sur le projet/l'entreprise | All permissions, can transfer ownership |
ADMIN | Accès administratif | User management, settings, billing |
MEMBER | Membre standard de l'équipe | Full project functionality, limited admin access |
CLIENT | Accès client externe | Limited project visibility, focused on deliverables |
COMMENT_ONLY | Accès en lecture seule | Peut visualiser et commenter, ne peut pas modifier |
VIEW_ONLY | Accès en lecture seule | Can view content only |
Hiérarchie des permissions
Les utilisateurs ne peuvent inviter ou gérer que les utilisateurs à leur niveau ou en dessous :
- PROPRIÉTAIRES peuvent gérer tous les niveaux d'accès
- ADMINISTRATEURS peuvent gérer ADMIN, MEMBRE, CLIENT, COMMENTAIRE_SEUL, LECTURE_SEULE
- MEMBRES peuvent gérer MEMBRE, CLIENT, COMMENTAIRE_SEUL, LECTURE_SEULE
- CLIENTS ne peuvent gérer que d'autres CLIENTS
Concepts clés
Invitations d'utilisateurs
- Basé sur l'email : Les utilisateurs sont invités via une adresse email
- Attribution de rôle : Définir le niveau d'accès et un rôle personnalisé optionnel lors de l'invitation
- Multi-projet : Une seule invitation peut accorder l'accès à plusieurs projets
- Expiration : Les invitations expirent après 7 jours
- Notifications automatiques : Blue envoie des invitations par email automatiquement
Accès projet vs entreprise
- Invitation de projet : Accorde l'accès à un projet spécifique uniquement
- Invitation d'entreprise : Accorde un accès au niveau de l'entreprise, incluant éventuellement des projets spécifiques
- Propriétaires d'entreprise : Obtiennent automatiquement un accès ADMIN à tous les projets de l'entreprise
- Restrictions de portée : Ne peut pas combiner les paramètres d'invitation de projet et d'entreprise
Rôles personnalisés
- Permissions granulaires : Définir des capacités spécifiques au-delà des niveaux d'accès standard
- Spécifique au projet : Les rôles personnalisés sont limités à des projets individuels
- Contrôle au niveau des champs : Contrôler l'accès à des champs personnalisés spécifiques
- Restrictions d'action : Limiter des actions spécifiques (créer, modifier, supprimer, etc.)
Modèles communs
Inviter un nouveau membre de l'équipe
mutation InviteTeamMember {
inviteUser(input: {
email: "john.doe@company.com"
projectId: "web-redesign"
accessLevel: MEMBER
})
}
Créer une invitation à l'échelle de l'entreprise
mutation InviteToCompany {
inviteUser(input: {
email: "manager@company.com"
companyId: "company_123"
projectIds: ["project_1", "project_2", "project_3"]
accessLevel: ADMIN
})
}
Lister les utilisateurs du projet
query ProjectUsers {
projectUsers(projectId: "web-redesign") {
id
user {
name
email
avatar
}
accessLevel
role {
name
permissions
}
invitedAt
joinedAt
}
}
Retirer un utilisateur
mutation RemoveProjectUser {
removeUser(input: {
userId: "user_456"
projectId: "web-redesign"
})
}
Créer un rôle personnalisé
mutation CreateCustomRole {
createProjectUserRole(input: {
projectId: "web-redesign"
name: "Content Reviewer"
permissions: {
canCreateRecords: false
canEditOwnRecords: true
canEditAllRecords: false
canDeleteRecords: false
canManageUsers: false
canViewReports: true
}
}) {
id
name
permissions
}
}
Gestion des permissions
Matrice des permissions standard
Action | PROPRIÉTAIRE | ADMIN | MEMBRE | CLIENT | COMMENTAIRE_SEUL | LECTURE_SEULE |
---|---|---|---|---|---|---|
Invite Users | ✅ Tous les niveaux | ✅ ADMIN et en dessous | ✅ MEMBRE et en dessous | ✅ CLIENT uniquement | ❌ Non | ❌ Non |
Remove Users | ✅ Tous les utilisateurs | ✅ ADMIN et en dessous | ✅ MEMBRE et en dessous | ✅ CLIENT uniquement | ❌ Non | ❌ Non |
Modify Project Settings | ✅ Oui | ✅ Oui | ❌ Non | ❌ Non | ❌ Non | ❌ Non |
Create Records | ✅ Oui | ✅ Oui | ✅ Oui | ✅ Limité | ❌ Non | ❌ Non |
Edit All Records | ✅ Oui | ✅ Oui | ✅ Oui | ❌ Non | ❌ Non | ❌ Non |
Delete Records | ✅ Oui | ✅ Oui | ✅ Oui | ❌ Non | ❌ Non | ❌ Non |
View Reports | ✅ Oui | ✅ Oui | ✅ Oui | ✅ Limité | ❌ Non | ❌ Non |
Capacités des rôles personnalisés
- Permissions au niveau des champs : Contrôler l'accès à des champs personnalisés spécifiques
- Règles spécifiques aux actions : Autoriser/interdire des opérations spécifiques (créer, modifier, supprimer)
- Restrictions de vue : Limiter quels enregistrements les utilisateurs peuvent voir
- Bascules de fonctionnalités : Activer/désactiver des fonctionnalités spécifiques par rôle
Meilleures pratiques
Intégration des utilisateurs
- Commencer par des rôles standard - Utiliser des niveaux d'accès prédéfinis pour la plupart des utilisateurs
- Permissions progressives - Commencer avec un accès limité, élargir si nécessaire
- Communication claire - Inclure le contexte lors de l'envoi d'invitations
- Revisions régulières - Auditer l'accès des utilisateurs périodiquement
Considérations de sécurité
- Principe du moindre privilège - Accorder les permissions minimales nécessaires
- Audits d'accès réguliers - Revoir les permissions des utilisateurs trimestriellement
- Processus de départ - Retirer l'accès immédiatement lorsque les utilisateurs partent
- Documentation des rôles personnalisés - Documenter les objectifs et les limitations des rôles personnalisés
Organisation de l'équipe
- Nommage cohérent - Utiliser des noms de rôles clairs et descriptifs
- Consolidation des rôles - Éviter de créer trop de rôles personnalisés similaires
- Structure de l'entreprise - Aligner les permissions avec la hiérarchie organisationnelle
- Héritage de projet - Considérer comment les rôles d'entreprise affectent l'accès au projet
Gestion des erreurs
Erreurs courantes lors de la gestion des utilisateurs :
Code d'erreur | Description | Solution |
---|---|---|
USER_ALREADY_IN_THE_PROJECT |
L'utilisateur a déjà accès au projet | Check current user list before inviting |
UNAUTHORIZED |
Permissions insuffisantes pour effectuer l'action | Verify your access level and permissions |
PROJECT_NOT_FOUND |
Le projet n'existe pas ou pas d'accès | Confirm project ID and access rights |
INVITATION_LIMIT |
Limite d'invitation atteinte pour le niveau de facturation | Upgrade plan or remove inactive users |
ADD_SELF |
Impossible de s'inviter soi-même | Utilisez un autre email ou demandez à un autre administrateur de vous inviter |
COMPANY_BANNED |
Le compte de l'entreprise est suspendu | Contact support to resolve account status |
Limites de taux
Les opérations de gestion des utilisateurs ont les limites de taux suivantes :
- Invitations : 100 par heure par entreprise
- Requêtes d'utilisateurs : 1000 par heure par utilisateur
- Modifications de rôle : 50 par heure par projet
Ressources connexes
- API des projets - Gestion des projets contenant des utilisateurs
- API des enregistrements - Comprendre comment les permissions des utilisateurs affectent l'accès aux enregistrements
- API des automatisations - Automatiser les flux de travail de gestion des utilisateurs
- API des champs personnalisés - Gestion des permissions au niveau des champs pour les rôles personnalisés