Nodig gebruikers uit voor projecten of bedrijven met specifieke toegangslevels en aangepaste rollen.
Nodig een Gebruiker Uit
De inviteUser
mutatie stelt je in staat om gebruikers uit te nodigen voor je Blue-projecten of bedrijven. Gebruikers kunnen vooraf gedefinieerde toegangslevels of aangepaste rollen met specifieke machtigingen krijgen.
Basisvoorbeeld
Nodig een gebruiker uit met een standaard toegangslevel:
mutation InviteUserToProject {
inviteUser(
input: {
email: "newuser@example.com"
projectId: "web-redesign"
accessLevel: MEMBER
}
)
}
Geavanceerd Voorbeeld
Nodig een gebruiker met een aangepaste rol uit voor meerdere projecten:
mutation InviteUserWithCustomRole {
inviteUser(
input: {
email: "contractor@example.com"
projectIds: ["web-redesign", "mobile-app", "api-v2"]
accessLevel: MEMBER
roleId: "role_contractor_123"
}
)
}
Invoervelden
InviteUserInput
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
email |
String! | ✅ Ja | E-mailadres van de uit te nodigen gebruiker |
accessLevel |
UserAccessLevel! | ✅ Ja | Toegangslevel dat verleend moet worden (zie tabel hieronder) |
projectId |
String | Nee | Enkele project-ID (mutueel exclusief met companyId) |
projectIds |
[String!] | Nee | Meerdere project-ID's bij gebruik van companyId |
companyId |
String | Nee | Bedrijfs-ID voor uitnodiging op bedrijfsniveau (mutueel exclusief met projectId) |
roleId |
String | Nee | Aangepaste rol-ID (vereist accessLevel: LID) |
Waarden voor UserAccessLevel
Waarde | Beschrijving |
---|---|
OWNER |
Volledige controle over project/bedrijf |
ADMIN |
Administratieve toegang, kan gebruikers en instellingen beheren |
MEMBER |
Standaard lidtoegang met volledige functionaliteit |
CLIENT |
Beperkte toegang voor externe klanten |
COMMENT_ONLY |
Kan alleen records bekijken en opmerkingen maken |
VIEW_ONLY |
Alleen-lezen toegang tot project |
Responsvelden
Veld | Type | Beschrijving |
---|---|---|
success |
Boolean! | Of de uitnodiging succesvol is verzonden |
Vereiste Machtigingen
Gebruikers moeten voldoende machtigingen hebben om anderen uit te nodigen. De machtigingenhiërarchie wordt gehandhaafd:
Jouw Rol | Kan Uitnodigen |
---|---|
OWNER |
✅ Alle toegangslevels |
ADMIN |
✅ ADMIN, LID, KLANT, ENKEL_COMMENTAAR, ENKEL_BEKIJKEN (kan geen EIGENAAR uitnodigen) |
MEMBER |
✅ LID, KLANT, ENKEL_COMMENTAAR, ENKEL_BEKIJKEN (kan geen EIGENAAR of ADMIN uitnodigen) |
CLIENT |
✅ Alleen KLANT |
COMMENT_ONLY |
❌ Kan niet uitnodigen |
VIEW_ONLY |
❌ Kan niet uitnodigen |
Opmerking: Voor bedrijfsuitnodigingen (met gebruik van companyId
) kunnen alleen bedrijfs EIGENAARS gebruikers uitnodigen.
Uitnodigingstypen
Projectuitnodiging
Nodig een gebruiker uit voor een enkel project:
- Gebruik
projectId
parameter - Kan
companyId
niet gelijktijdig gebruiken - De uitnodiger moet toegang hebben tot het project
- Toegangslevelbeperkingen zijn van toepassing
Bedrijfsuitnodiging
Nodig een gebruiker uit voor een bedrijf (en optioneel specifieke projecten):
- Gebruik
companyId
parameter - Kan
projectId
niet gelijktijdig gebruiken - Alleen bedrijfs EIGENAARS kunnen deze methode gebruiken
- Gebruik
projectIds
array om aan te geven welke projecten moeten worden opgenomen - Als
projectIds
wordt weggelaten, krijgt de gebruiker alleen toegang tot het bedrijf
Aangepaste Rollen
Bij het gebruik van aangepaste rollen:
- Stel
accessLevel
in opMEMBER
- Geef de
roleId
van je aangepaste rol op - De gebruiker zal alle machtigingen erven die in de aangepaste rol zijn gedefinieerd
- Aangepaste rollen zijn project-specifiek
Om beschikbare aangepaste rollen op te halen, gebruik de projectUserRoles
query.
Foutreacties
Gebruiker Al In Project
{
"errors": [{
"message": "User is already in the project.",
"extensions": {
"code": "USER_ALREADY_IN_THE_PROJECT"
}
}]
}
Onvoldoende Machtigingen
{
"errors": [{
"message": "You don't have permission to invite users with this access level",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
Ongeldig Project
{
"errors": [{
"message": "Project not found",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Uitnodigingslimiet Overschreden
{
"errors": [{
"message": "Unable to invite more people.",
"extensions": {
"code": "INVITATION_LIMIT"
}
}]
}
Kan Jezelf Niet Uitnodigen
{
"errors": [{
"message": "You are not allowed to add yourself.",
"extensions": {
"code": "ADD_SELF"
}
}]
}
Ongeldige Aangepaste Rol
{
"errors": [{
"message": "Project user role was not found.",
"extensions": {
"code": "PROJECT_USER_ROLE_NOT_FOUND"
}
}]
}
Bedrijf Verbannen
{
"errors": [{
"message": "Company is banned",
"extensions": {
"code": "COMPANY_BANNED"
}
}]
}
Belangrijke Opmerkingen
- E-mailvalidatie: E-mailadressen worden genormaliseerd en gevalideerd voordat uitnodigingen worden verzonden
- Uitnodiging Expiratie: Uitnodigingen vervallen na 7 dagen en moeten opnieuw worden verzonden als ze niet zijn geaccepteerd
- Automatische Meldingen: Blue verzendt automatisch uitnodigings-e-mails naar nieuwe gebruikers
- Bedrijfseigenaren: Bedrijfseigenaren ontvangen automatisch ADMIN-toegang in alle projecten
- Factureringsimpact: Het toevoegen van gebruikers kan invloed hebben op je abonnement als je per-gebruiker-prijzen hebt
- Activiteitenlogging: Alle gebruikersuitnodigingen worden gelogd voor auditdoeleinden
- Parameter Exclusiviteit: Je moet ofwel
projectId
OFcompanyId
opgeven, niet beide - Bedrijfsbeperkingen: Alleen bedrijfseigenaren kunnen de
companyId
parameter gebruiken - Zelfuitnodiging: Gebruikers kunnen zichzelf niet uitnodigen (zal
ADD_SELF
fout genereren)
Gerelateerde Operaties
- Lijst Gebruikers - Bekijk alle gebruikers in een project of bedrijf
- Verwijder Gebruiker - Verwijder gebruikers uit projecten
- Aangepaste Rollen - Beheer aangepaste gebruikersrollen