Zaproś użytkowników do projektów lub firm z określonymi poziomami dostępu i niestandardowymi rolami.


Zaproś Użytkownika

Mutacja inviteUser pozwala na zapraszanie użytkowników do Twoich projektów lub firm w Blue. Użytkownicy mogą otrzymać przypisane zdefiniowane poziomy dostępu lub niestandardowe role z określonymi uprawnieniami.

Podstawowy Przykład

Zaproś użytkownika z standardowym poziomem dostępu:

mutation InviteUserToProject {
  inviteUser(
    input: {
      email: "newuser@example.com"
      projectId: "web-redesign"
      accessLevel: MEMBER
    }
  )
}

Zaawansowany Przykład

Zaproś użytkownika z niestandardową rolą do wielu projektów:

mutation InviteUserWithCustomRole {
  inviteUser(
    input: {
      email: "contractor@example.com"
      projectIds: ["web-redesign", "mobile-app", "api-v2"]
      accessLevel: MEMBER
      roleId: "role_contractor_123"
    }
  )
}

Parametry Wejściowe

InviteUserInput

Parametr Typ Wymagane Opis
email String! ✅ Tak Adres e-mail użytkownika do zaproszenia
accessLevel UserAccessLevel! ✅ Tak Poziom dostępu do przyznania (zobacz tabela poniżej)
projectId String Nie ID pojedynczego projektu (wzajemnie wykluczające się z companyId)
projectIds [String!] Nie Wiele ID projektów przy użyciu companyId
companyId String Nie ID firmy do zaproszenia na poziomie firmy (wzajemnie wykluczające się z projectId)
roleId String Nie ID niestandardowej roli (wymaga accessLevel: MEMBER)

Wartości UserAccessLevel

Wartość Opis
OWNER Pełna kontrola nad projektem/firmą
ADMIN Dostęp administracyjny, może zarządzać użytkownikami i ustawieniami
MEMBER Standardowy dostęp członka z pełną funkcjonalnością
CLIENT Ograniczony dostęp dla zewnętrznych klientów
COMMENT_ONLY Może tylko przeglądać i komentować rekordy
VIEW_ONLY Tylko do odczytu dostęp do projektu

Pola Odpowiedzi

Pole Typ Opis
success Boolean! Czy zaproszenie zostało wysłane pomyślnie

Wymagane Uprawnienia

Użytkownicy muszą mieć wystarczające uprawnienia, aby zapraszać innych. Hierarchia uprawnień jest egzekwowana:

Twoja Rola Może Zapraszać
OWNER ✅ Wszystkie poziomy dostępu
ADMIN ✅ ADMIN, MEMBER, CLIENT, COMMENT_ONLY, VIEW_ONLY (nie może zapraszać OWNER)
MEMBER ✅ MEMBER, CLIENT, COMMENT_ONLY, VIEW_ONLY (nie może zapraszać OWNER ani ADMIN)
CLIENT ✅ Tylko CLIENT
COMMENT_ONLY ❌ Nie może zapraszać
VIEW_ONLY ❌ Nie może zapraszać

Uwaga: W przypadku zaproszeń do firmy (używając companyId), tylko WŁAŚCICIELE firmy mogą zapraszać użytkowników.

Typy Zaproszeń

Zaproszenie do Projektu

Zaproś użytkownika do pojedynczego projektu:

  • Użyj parametru projectId
  • Nie można używać companyId jednocześnie
  • Osoba zapraszająca musi mieć dostęp do projektu
  • Ograniczenia poziomu dostępu mają zastosowanie

Zaproszenie do Firmy

Zaproś użytkownika do firmy (i opcjonalnie do konkretnych projektów):

  • Użyj parametru companyId
  • Nie można używać projectId jednocześnie
  • Tylko WŁAŚCICIELE firmy mogą używać tej metody
  • Użyj tablicy projectIds, aby określić, które projekty uwzględnić
  • Jeśli projectIds jest pominięte, użytkownik otrzymuje tylko dostęp do firmy

Niestandardowe Role

Podczas korzystania z niestandardowych ról:

  1. Ustaw accessLevel na MEMBER
  2. Podaj roleId swojej niestandardowej roli
  3. Użytkownik odziedziczy wszystkie uprawnienia zdefiniowane w niestandardowej roli
  4. Niestandardowe role są specyficzne dla projektu

Aby pobrać dostępne niestandardowe role, użyj projectUserRoles zapytania.

Odpowiedzi Błędów

Użytkownik Już w Projekcie

{
  "errors": [{
    "message": "User is already in the project.",
    "extensions": {
      "code": "USER_ALREADY_IN_THE_PROJECT"
    }
  }]
}

Niewystarczające Uprawnienia

{
  "errors": [{
    "message": "You don't have permission to invite users with this access level",
    "extensions": {
      "code": "UNAUTHORIZED"
    }
  }]
}

Nieprawidłowy Projekt

{
  "errors": [{
    "message": "Project not found",
    "extensions": {
      "code": "PROJECT_NOT_FOUND"
    }
  }]
}

Przekroczono Limit Zaproszeń

{
  "errors": [{
    "message": "Unable to invite more people.",
    "extensions": {
      "code": "INVITATION_LIMIT"
    }
  }]
}

Nie Można Zaprosić Siebie

{
  "errors": [{
    "message": "You are not allowed to add yourself.",
    "extensions": {
      "code": "ADD_SELF"
    }
  }]
}

Nieprawidłowa Niestandardowa Rola

{
  "errors": [{
    "message": "Project user role was not found.",
    "extensions": {
      "code": "PROJECT_USER_ROLE_NOT_FOUND"
    }
  }]
}

Firma Zbanowana

{
  "errors": [{
    "message": "Company is banned",
    "extensions": {
      "code": "COMPANY_BANNED"
    }
  }]
}

Ważne Uwagi

  • Walidacja E-maili: Adresy e-mail są normalizowane i walidowane przed wysłaniem zaproszeń
  • Wygasanie Zaproszeń: Zaproszenia wygasają po 7 dniach i muszą być ponownie wysłane, jeśli nie zostaną zaakceptowane
  • Automatyczne Powiadomienia: Blue automatycznie wysyła e-maile zapraszające do nowych użytkowników
  • Właściciele Firm: Właściciele firm automatycznie otrzymują dostęp ADMIN w wszystkich projektach
  • Wpływ na Rozliczenia: Dodanie użytkowników może wpłynąć na Twoją subskrypcję, jeśli masz ceny za użytkownika
  • Rejestrowanie Aktywności: Wszystkie zaproszenia użytkowników są rejestrowane w celach audytowych
  • Ekskluzywność Parametrów: Musisz podać albo projectId LUB companyId, nie oba
  • Ograniczenia Firmy: Tylko właściciele firm mogą używać parametru companyId
  • Samo-Zaproszenie: Użytkownicy nie mogą zapraszać siebie (spowoduje błąd ADD_SELF)

Powiązane Operacje

Asystent AI

Odpowiedzi są generowane przy użyciu sztucznej inteligencji i mogą zawierać błędy.

Jak mogę Ci pomóc?

Zapytaj mnie o cokolwiek dotyczącego Blue lub tej dokumentacji.

Wciśnij Enter, aby wysłać • Shift+Enter, aby dodać nową linię • ⌘I, aby otworzyć