role
Définit la raison d'être, le domaine, les redevabilités et d'autres aspects d'une position ou fonction au sein d'une organisation. Chaque cercle est associé à un rôle.
Champs
| Champ | Type | Description |
|---|---|---|
id | uuid | Identifiant unique du rôle |
orgId | uuid | Référence à l'organisation |
name | String | Nom du rôle |
purpose | String | Raison d'être ou mission du rôle |
domain | String | Domaines d'autorité et de contrôle |
accountabilities | String | Liste des redevabilités |
checklist | String | Liste de vérification des responsabilités récurrentes |
indicators | String | Indicateurs de performance à suivre |
notes | String | Notes supplémentaires |
archived | Boolean | Indique si le rôle est archivé (par défaut : false) |
base | Boolean | Indique si c'est un rôle de base (par défaut : false) |
singleMember | Boolean | Indique si le rôle ne peut avoir qu'un seul membre (par défaut : false) |
parentLink | Boolean | Indique si le rôle peut être lié aux cercles parents (par défaut : false) |
colorHue | Smallint | Teinte de couleur pour la représentation visuelle (optionnel) |
Relations
Relations objet :
org— L’organisation à laquelle ce rôle appartient
Relations tableau :
circles— Cercles qui utilisent ce rôle
Exemples de requêtes
Lister les rôles d’une organisation
query GetRoles($orgId: uuid!) {
role(where: { orgId: { _eq: $orgId } }) {
id
name
}
}
Obtenir un rôle spécifique avec tous les détails
query GetRole($id: uuid!) {
role_by_pk(id: $id) {
id
name
purpose
domain
accountabilities
checklist
indicators
notes
}
}
Exemples de mutations
Créer un rôle
mutation CreateRole {
insert_role_one(
object: {
orgId: "your-org-id"
name: "Software Engineer"
purpose: "Develop and maintain software applications"
domain: "Application codebase and development tools"
accountabilities: "Write clean code, Review PRs, Debug issues"
checklist: "Daily code review, Weekly status updates"
indicators: "Code quality metrics, Bug resolution time"
notes: "Focus on maintainable and scalable code"
singleMember: false
}
) {
id
name
purpose
}
}
Mettre à jour un rôle
mutation UpdateRole {
update_role_by_pk(
pk_columns: { id: "role-id" }
_set: {
name: "Senior Software Engineer"
accountabilities: "Lead development, Mentor team members, Architect solutions"
}
) {
id
name
accountabilities
}
}
Permissions
- Consultation — Tous les membres de l’organisation peuvent consulter les rôles
- Création — Les propriétaires peuvent créer tous les rôles. Les administrateurs et membres peuvent créer les rôles non-base
- Modification — Les propriétaires peuvent modifier tous les rôles. Pour les rôles non-base : si l’organisation a
protectGovernancedésactivé, les administrateurs et membres peuvent les modifier. Les leaders de cercle peuvent également modifier les rôles au sein de leurs cercles - Suppression — Uniquement disponible via l’API admin Hasura
Notes
Les rôles de base (base: true) sont fondamentaux pour l’organisation et ne
peuvent être modifiés que par les propriétaires. L’indicateur singleMember
restreint l’attribution à une seule personne. La combinaison de la raison
d’être, du domaine et des redevabilités définit le périmètre complet du rôle.