Bjud in användare till projekt eller företag med specifika åtkomstnivåer och anpassade roller.
Bjud in en användare
Mutation inviteUser
låter dig bjuda in användare till dina Blue-projekt eller företag. Användare kan tilldelas fördefinierade åtkomstnivåer eller anpassade roller med specifika behörigheter.
Grundläggande exempel
Bjud in en användare med en standardåtkomstnivå:
mutation InviteUserToProject {
inviteUser(
input: {
email: "newuser@example.com"
projectId: "web-redesign"
accessLevel: MEMBER
}
)
}
Avancerat exempel
Bjud in en användare med en anpassad roll till flera projekt:
mutation InviteUserWithCustomRole {
inviteUser(
input: {
email: "contractor@example.com"
projectIds: ["web-redesign", "mobile-app", "api-v2"]
accessLevel: MEMBER
roleId: "role_contractor_123"
}
)
}
Inmatningsparametrar
InviteUserInput
Parameter | Typ | Obligatorisk | Beskrivning |
---|---|---|---|
email |
String! | ✅ Ja | E-postadress till användaren som ska bjudas in |
accessLevel |
UserAccessLevel! | ✅ Ja | Åtkomstnivå att bevilja (se tabell nedan) |
projectId |
String | Nej | Enstaka projekt-ID (ömsesidigt uteslutande med companyId) |
projectIds |
[String!] | Nej | Flera projekt-ID när companyId används |
companyId |
String | Nej | Företags-ID för företagsinbjudan (ömsesidigt uteslutande med projectId) |
roleId |
String | Nej | Anpassad roll-ID (kräver accessLevel: MEMBER) |
UserAccessLevel-värden
Värde | Beskrivning |
---|---|
OWNER |
Full kontroll över projekt/företag |
ADMIN |
Administrativ åtkomst, kan hantera användare och inställningar |
MEMBER |
Standardmedlemsåtkomst med full funktionalitet |
CLIENT |
Begränsad åtkomst för externa klienter |
COMMENT_ONLY |
Kan endast se och kommentera poster |
VIEW_ONLY |
Endast läsbehörighet till projekt |
Svarsfält
Fält | Typ | Beskrivning |
---|---|---|
success |
Boolean! | Om inbjudan skickades framgångsrikt |
Obligatoriska behörigheter
Användare måste ha tillräckliga behörigheter för att bjuda in andra. Behörighetshierarkin upprätthålls:
Din roll | Kan bjuda in |
---|---|
OWNER |
✅ Alla åtkomstnivåer |
ADMIN |
✅ ADMIN, MEMBER, CLIENT, COMMENT_ONLY, VIEW_ONLY (kan inte bjuda in OWNER) |
MEMBER |
✅ MEMBER, CLIENT, COMMENT_ONLY, VIEW_ONLY (kan inte bjuda in OWNER eller ADMIN) |
CLIENT |
✅ Endast CLIENT |
COMMENT_ONLY |
❌ Kan inte bjuda in |
VIEW_ONLY |
❌ Kan inte bjuda in |
Notera: För företagsinbjudningar (använder companyId
) kan endast företags ÄGARE bjuda in användare.
Inbjudningstyper
Projektinbjudan
Bjud in en användare till ett enstaka projekt:
- Använd
projectId
-parametern - Kan inte använda
companyId
samtidigt - Inbjudaren måste ha åtkomst till projektet
- Åtkomstnivåbegränsningar gäller
Företagsinbjudan
Bjud in en användare till ett företag (och eventuellt specifika projekt):
- Använd
companyId
-parametern - Kan inte använda
projectId
samtidigt - Endast företags ÄGARE kan använda denna metod
- Använd
projectIds
-arrayen för att specificera vilka projekt som ska inkluderas - Om
projectIds
utelämnas får användaren endast företagsåtkomst
Anpassade roller
När du använder anpassade roller:
- Ställ in
accessLevel
tillMEMBER
- Ange
roleId
för din anpassade roll - Användaren kommer att ärva alla behörigheter som definieras i den anpassade rollen
- Anpassade roller är projekt-specifika
För att hämta tillgängliga anpassade roller, använd projectUserRoles
fråga.
Felmeddelanden
Användare redan i projektet
{
"errors": [{
"message": "User is already in the project.",
"extensions": {
"code": "USER_ALREADY_IN_THE_PROJECT"
}
}]
}
Otillräckliga behörigheter
{
"errors": [{
"message": "You don't have permission to invite users with this access level",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
Ogiltigt projekt
{
"errors": [{
"message": "Project not found",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Inbjudningsgräns överskriden
{
"errors": [{
"message": "Unable to invite more people.",
"extensions": {
"code": "INVITATION_LIMIT"
}
}]
}
Kan inte bjuda in dig själv
{
"errors": [{
"message": "You are not allowed to add yourself.",
"extensions": {
"code": "ADD_SELF"
}
}]
}
Ogiltig anpassad roll
{
"errors": [{
"message": "Project user role was not found.",
"extensions": {
"code": "PROJECT_USER_ROLE_NOT_FOUND"
}
}]
}
Företag förbjudet
{
"errors": [{
"message": "Company is banned",
"extensions": {
"code": "COMPANY_BANNED"
}
}]
}
Viktiga anteckningar
- E-postvalidering: E-postadresser normaliseras och valideras innan inbjudningar skickas
- Inbjudningens utgång: Inbjudningar går ut efter 7 dagar och måste skickas igen om de inte accepteras
- Automatiska meddelanden: Blue skickar automatiskt inbjudnings-e-post till nya användare
- Företagsägare: Företagsägare får automatiskt ADMIN-åtkomst i alla projekt
- Faktureringspåverkan: Att lägga till användare kan påverka din prenumeration om du har prissättning per användare
- Aktivitetsloggning: Alla användarinbjudningar loggas för revisionsändamål
- Parameterexklusivitet: Du måste ange antingen
projectId
ELLERcompanyId
, inte båda - Företagsbegränsningar: Endast företagsägare kan använda
companyId
-parametern - Självinbjudan: Användare kan inte bjuda in sig själva (kommer att ge ett
ADD_SELF
-fel)
Relaterade operationer
- Lista användare - Visa alla användare i ett projekt eller företag
- Ta bort användare - Ta bort användare från projekt
- Anpassade roller - Hantera anpassade användarroller