Haal aangepaste gebruikersrollen op, maak ze aan, werk ze bij en verwijder ze met gedetailleerde machtigingen.
Aangepaste Rollen
Aangepaste rollen in Blue stellen je in staat om nauwkeurige machtigingssets te definiëren die zijn afgestemd op de behoeften van je team. Naast de standaard toegangslevels (EIGENAAR, ADMIN, LID, enz.) bieden aangepaste rollen gedetailleerde controle over wat gebruikers kunnen zien en doen binnen projecten.
Basisvoorbeeld - Lijst Aangepaste Rollen
Haal alle aangepaste rollen voor een project op:
query GetProjectRoles {
projectUserRoles(filter: { projectId: "web-redesign" }) {
id
name
description
allowInviteOthers
canDeleteRecords
}
}
Geavanceerd Voorbeeld - Maak Aangepaste Rol
Maak een aannemersrol met specifieke machtigingen:
mutation CreateContractorRole {
createProjectUserRole(
input: {
projectId: "web-redesign"
name: "External Contractor"
description: "Limited access for external contractors"
allowInviteOthers: false
allowMarkRecordsAsDone: true
canDeleteRecords: false
showOnlyAssignedTodos: true
isActivityEnabled: true
isFormsEnabled: false
isWikiEnabled: true
isChatEnabled: false
isDocsEnabled: true
isFilesEnabled: true
isRecordsEnabled: true
isPeopleEnabled: false
}
) {
id
name
}
}
Beschikbare Operaties
Query: projectUserRoles
Haal alle aangepaste rollen voor een project op.
Invoergegevens
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
filter.projectId |
String | Nee | Project-ID of slug (als niet opgegeven, retourneert rollen voor alle toegankelijke projecten) |
Mutatie: createProjectUserRole
Maak een nieuwe aangepaste rol met specifieke machtigingen.
Invoergegevens
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
projectId |
String! | ✅ Ja | Project-ID of slug |
name |
String! | ✅ Ja | Rolnaam |
description |
String | Nee | Rolbeschrijving |
Permission Flags | |||
allowInviteOthers |
Boolean | Nee | Kan nieuwe gebruikers uitnodigen (standaard: false) |
allowMarkRecordsAsDone |
Boolean | Nee | Kan taken voltooien (standaard: false) |
canDeleteRecords |
Boolean | Nee | Kan records verwijderen (standaard: true) |
Feature Access | |||
isActivityEnabled |
Boolean | Nee | Toegang tot Activiteit sectie (standaard: true) |
isChatEnabled |
Boolean | Nee | Toegang tot Chat (standaard: true) |
isDocsEnabled |
Boolean | Nee | Toegang tot Docs (standaard: true) |
isFilesEnabled |
Boolean | Nee | Toegang tot Bestanden (standaard: true) |
isFormsEnabled |
Boolean | Nee | Toegang tot Formulieren (standaard: true) |
isWikiEnabled |
Boolean | Nee | Toegang tot Wiki (standaard: true) |
isRecordsEnabled |
Boolean | Nee | Toegang tot Records (standaard: true) |
isPeopleEnabled |
Boolean | Nee | Toegang tot Mensen sectie (standaard: true) |
Visibility Settings | |||
showOnlyAssignedTodos |
Boolean | Nee | Alleen toegewezen taken zien (standaard: false) |
showOnlyMentionedComments |
Boolean | Nee | Alleen genoemde opmerkingen zien (standaard: false) |
Mutatie: updateProjectUserRole
Werk een bestaande aangepaste rol bij.
Invoergegevens
Zelfde als createProjectUserRole
, plus:
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
roleId |
String! | ✅ Ja | ID van de rol die moet worden bijgewerkt |
Mutatie: deleteProjectUserRole
Verwijder een aangepaste rol.
Invoergegevens
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
roleId |
String! | ✅ Ja | ID van de rol die moet worden verwijderd |
projectId |
String! | ✅ Ja | Project-ID of slug |
Antwoordvelden
ProjectUserRole Object
Veld | Type | Beschrijving |
---|---|---|
id |
String! | Unieke rolidentificatie |
name |
String! | Rolnaam |
description |
String | Rolbeschrijving |
createdAt |
DateTime! | Aanmaak tijdstempel |
updatedAt |
DateTime! | Laatste update tijdstempel |
Permissions | ||
allowInviteOthers |
Boolean! | Kan gebruikers uitnodigen |
allowMarkRecordsAsDone |
Boolean! | Kan taken voltooien |
canDeleteRecords |
Boolean! | Kan records verwijderen |
Feature Flags | ||
isActivityEnabled |
Boolean! | Toegang tot Activiteit sectie |
isChatEnabled |
Boolean! | Toegang tot Chat |
isDocsEnabled |
Boolean! | Toegang tot Docs |
isFilesEnabled |
Boolean! | Toegang tot Bestanden |
isFormsEnabled |
Boolean! | Toegang tot Formulieren |
isWikiEnabled |
Boolean! | Toegang tot Wiki |
isRecordsEnabled |
Boolean! | Toegang tot Records |
isPeopleEnabled |
Boolean! | Toegang tot Mensen sectie |
Visibility | ||
showOnlyAssignedTodos |
Boolean! | Taak zichtbaarheid filter |
showOnlyMentionedComments |
Boolean! | Opmerking zichtbaarheid filter |
Vereiste Machtigingen
Operatie | Vereiste Machtiging |
---|---|
projectUserRoles |
Any project member |
createProjectUserRole |
Project OWNER or ADMIN |
updateProjectUserRole |
Project OWNER or ADMIN |
deleteProjectUserRole |
Project OWNER or ADMIN |
Foutreacties
Onvoldoende Machtigingen
{
"errors": [{
"message": "You don't have permission to manage custom roles",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
Rol Niet Gevonden
{
"errors": [{
"message": "Custom role not found",
"extensions": {
"code": "PROJECT_USER_ROLE_NOT_FOUND"
}
}]
}
Rol Limiet Bereikt
{
"errors": [{
"message": "Project user role limit reached.",
"extensions": {
"code": "PROJECT_USER_ROLE_LIMIT"
}
}]
}
Belangrijke Notities
- Standaard Machtigingen: Bij het aanmaken van rollen hebben niet opgegeven boolean machtigingen standaard de waarde false, behalve voor
canDeleteRecords
, dat standaard true is. - Roltoewijzing: Wijs aangepaste rollen toe door
accessLevel: MEMBER
in te stellen en deroleId
in deinviteUser
mutatie te verstrekken. - Hiërarchie: Aangepaste rollen worden behandeld als LID-niveau voor hiërarchiedoeleinden.
- Rol Limieten: Elk project kan maximaal 20 aangepaste rollen hebben.
- Functie Toegang: De functie-vlaggen regelen de toegang tot hele secties van de applicatie.
Gebruikscases
Aannemersrol
{
name: "Contractor",
allowInviteOthers: false,
canDeleteRecords: false,
showOnlyAssignedTodos: true,
isActivityEnabled: true,
isChatEnabled: false,
isPeopleEnabled: false
}
Afdelingsleider
{
name: "Department Lead",
allowInviteOthers: true,
allowMarkRecordsAsDone: true,
canDeleteRecords: true,
isActivityEnabled: true,
isWikiEnabled: true,
isPeopleEnabled: true
}
Alleen-lezen Waarnemer
{
name: "Observer",
allowMarkRecordsAsDone: false,
canDeleteRecords: false,
allowInviteOthers: false,
showOnlyMentionedComments: true,
isFormsEnabled: false
}
Gerelateerde Operaties
- Nodig Gebruiker Uit - Wijs aangepaste rollen toe aan gebruikers
- Lijst Gebruikers - Bekijk gebruikers en hun rollen
- Verwijder Gebruiker - Verwijder gebruikers uit projecten