Fullständig API-referens för att hantera användare, inbjudningar, roller och behörigheter i Blue-projekt och företag
Översikt
Användarhanterings-API:et tillhandahåller omfattande verktyg för att hantera teammedlemmar, kontrollera åtkomsträttigheter och organisera din arbetskraft över Blue-projekt och företag. Oavsett om du lägger till nya teammedlemmar, hanterar befintliga användare eller definierar anpassade behörighetsstrukturer, hanterar dessa API:er alla aspekter av användarlivscykelhantering.
Användarhantering i Blue fungerar på två nivåer:
- Projekt-nivå: Hantera användare inom specifika projekt med projektspecifika behörigheter
- Företags-nivå: Hantera användare över hela din organisation med företagsomfattande åtkomst
Tillgängliga operationer
Kärn användarhantering
Operation | Beskrivning | Länk |
---|---|---|
Invite User | Skicka inbjudningar till nya användare med specifika åtkomstnivåer | View Details → |
List Users | Fråga och filtrera användare i projekt eller företag | View Details → |
Remove User | Ta bort användare från projekt eller företag | View Details → |
Roll- och behörighetshantering
Operation | Beskrivning | Länk |
---|---|---|
Custom Roles | Skapa och hantera anpassade roller med detaljerade behörigheter | View Details → |
Åtkomstnivåer
Blue tillhandahåller ett hierarkiskt behörighetssystem med fördefinierade åtkomstnivåer:
Standardåtkomstnivåer
Nivå | Beskrivning | Möjligheter |
---|---|---|
OWNER | Full kontroll över projekt/företag | All permissions, can transfer ownership |
ADMIN | Administrativ åtkomst | User management, settings, billing |
MEMBER | Standard teammedlem | Full project functionality, limited admin access |
CLIENT | Extern kundåtkomst | Limited project visibility, focused on deliverables |
COMMENT_ONLY | Endast kommentera åtkomst | Kan se och kommentera, kan inte redigera |
VIEW_ONLY | Endast läs åtkomst | Can view content only |
Behörighetshierarki
Användare kan endast bjuda in eller hantera användare på sin nivå eller lägre:
- ÄGARE kan hantera alla åtkomstnivåer
- ADMIN kan hantera ADMIN, MEDLEM, KUND, ENDAST_KOMMENTAR, ENDAS_SE
- MEDLEMMAR kan hantera MEDLEM, KUND, ENDAST_KOMMENTAR, ENDAS_SE
- KUNDER kan endast hantera andra KUNDER
Nyckelkoncept
Användarinbjudningar
- E-postbaserat: Användare bjuds in via e-postadress
- Rolltilldelning: Ställ in åtkomstnivå och valfri anpassad roll under inbjudan
- Flera projekt: En enda inbjudan kan ge åtkomst till flera projekt
- Utgång: Inbjudningar går ut efter 7 dagar
- Automatiska meddelanden: Blue skickar e-postinbjudningar automatiskt
Projekt vs Företagsåtkomst
- Projekinbjudan: Ger åtkomst till specifikt projekt endast
- Företagsinbjudan: Ger företagsnivå åtkomst, eventuellt inklusive specifika projekt
- Företagsägare: Får automatiskt ADMIN-åtkomst till alla företagsprojekt
- Omfångsbegränsningar: Kan inte kombinera projekt- och företagsinbjudningsparametrar
Anpassade roller
- Detaljerade behörigheter: Definiera specifika möjligheter utöver standardåtkomstnivåer
- Projektspecifika: Anpassade roller är avgränsade till individuella projekt
- Fältnivåkontroll: Kontrollera åtkomst till specifika anpassade fält
- Åtgärdsbegränsningar: Begränsa specifika åtgärder (skapa, redigera, ta bort, etc.)
Vanliga mönster
Bjuda in en ny teammedlem
mutation InviteTeamMember {
inviteUser(input: {
email: "john.doe@company.com"
projectId: "web-redesign"
accessLevel: MEMBER
})
}
Skapa en företagsomfattande inbjudan
mutation InviteToCompany {
inviteUser(input: {
email: "manager@company.com"
companyId: "company_123"
projectIds: ["project_1", "project_2", "project_3"]
accessLevel: ADMIN
})
}
Lista projektanvändare
query ProjectUsers {
projectUsers(projectId: "web-redesign") {
id
user {
name
email
avatar
}
accessLevel
role {
name
permissions
}
invitedAt
joinedAt
}
}
Ta bort en användare
mutation RemoveProjectUser {
removeUser(input: {
userId: "user_456"
projectId: "web-redesign"
})
}
Skapa en anpassad roll
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
}
}
Behörighetshantering
Standardbehörighetsmatris
Åtgärd | ÄGARE | ADMIN | MEDLEM | KUND | ENDAST_KOMMENTAR | ENDAS_SE |
---|---|---|---|---|---|---|
Invite Users | ✅ Alla nivåer | ✅ ADMIN och lägre | ✅ MEDLEM och lägre | ✅ KUND endast | ❌ Nej | ❌ Nej |
Remove Users | ✅ Alla användare | ✅ ADMIN och lägre | ✅ MEDLEM och lägre | ✅ KUND endast | ❌ Nej | ❌ Nej |
Modify Project Settings | ✅ Ja | ✅ Ja | ❌ Nej | ❌ Nej | ❌ Nej | ❌ Nej |
Create Records | ✅ Ja | ✅ Ja | ✅ Ja | ✅ Begränsad | ❌ Nej | ❌ Nej |
Edit All Records | ✅ Ja | ✅ Ja | ✅ Ja | ❌ Nej | ❌ Nej | ❌ Nej |
Delete Records | ✅ Ja | ✅ Ja | ✅ Ja | ❌ Nej | ❌ Nej | ❌ Nej |
View Reports | ✅ Ja | ✅ Ja | ✅ Ja | ✅ Begränsad | ❌ Nej | ❌ Nej |
Anpassade rollmöjligheter
- Fältnivåbehörigheter: Kontrollera åtkomst till specifika anpassade fält
- Åtgärdsspecifika regler: Tillåt/avvisa specifika operationer (skapa, redigera, ta bort)
- Visningsbegränsningar: Begränsa vilka poster användare kan se
- Funktionsväxlar: Aktivera/inaktivera specifika funktioner per roll
Bästa praxis
Användarintroduktion
- Börja med standardroller - Använd fördefinierade åtkomstnivåer för de flesta användare
- Progressiva behörigheter - Börja med begränsad åtkomst, utöka vid behov
- Tydlig kommunikation - Inkludera sammanhang när du skickar inbjudningar
- Regelbundna granskningar - Granska användartillgångar periodiskt
Säkerhetsöverväganden
- Principen om minimiåtkomst - Ge minimi nödvändiga behörigheter
- Regelbundna åtkomstgranskningar - Granska användarbehörigheter kvartalsvis
- Avslutningsprocess - Ta bort åtkomst omedelbart när användare lämnar
- Dokumentation av anpassade roller - Dokumentera syften och begränsningar för anpassade roller
Teamorganisation
- Konsistent namngivning - Använd tydliga, beskrivande rollnamn
- Rollsammanställning - Undvik att skapa för många liknande anpassade roller
- Företagsstruktur - Justera behörigheter med den organisatoriska hierarkin
- Projektarv - Tänk på hur företagsroller påverkar projektåtkomst
Felhantering
Vanliga fel vid hantering av användare:
Felkod | Beskrivning | Lösning |
---|---|---|
USER_ALREADY_IN_THE_PROJECT |
Användaren har redan projektåtkomst | Check current user list before inviting |
UNAUTHORIZED |
Otillräckliga behörigheter för att utföra åtgärden | Verify your access level and permissions |
PROJECT_NOT_FOUND |
Projektet existerar inte eller ingen åtkomst | Confirm project ID and access rights |
INVITATION_LIMIT |
Nått inbjudningsgräns för faktureringsnivå | Upgrade plan or remove inactive users |
ADD_SELF |
Kan inte bjuda in dig själv | Använd en annan e-post eller låt en annan administratör bjuda in dig |
COMPANY_BANNED |
Företagskontot är suspenderat | Contact support to resolve account status |
Hastighetsbegränsningar
Användarhanteringsoperationer har följande hastighetsbegränsningar:
- Inbjudningar: 100 per timme per företag
- Användarfrågor: 1000 per timme per användare
- Rollmodifieringar: 50 per timme per projekt
Relaterade resurser
- Projekt-API - Hantera projekt som innehåller användare
- Post-API - Förstå hur användarbehörigheter påverkar poståtkomst
- Automations-API - Automatisera arbetsflöden för användarhantering
- Anpassade fält-API - Hantera fältnivåbehörigheter för anpassade roller