Tworzenie projektów za pomocą API Blue.


Utwórz nowy projekt

Aby utworzyć nowy projekt, możesz użyć następującej mutacji:

mutation {
  createProject(
    input: {
      name: "YOUR PROJECT NEW NAME"
      companyId: "YOUR COMPANY ID OR SLUG"
      description: "Project description"
      color: "#3B82F6"
      icon: "briefcase"
      category: GENERAL
    }
  ) {
    id
    name
    slug
    description
    color
    icon
    category
  }
}
icon: lightbulb

Pamiętaj, aby dołączyć wymagane nagłówki w swoim żądaniu:

- `X-Bloo-Token-ID`: Twój identyfikator tokena API
- `X-Bloo-Token-Secret`: Twój sekret tokena API
- `X-Bloo-Company-ID`: Twój identyfikator firmy
- `Content-Type: application/json`

Przykład odpowiedzi

Po pomyślnym wykonaniu, mutacja zwróci szczegóły nowo utworzonego projektu:

{
  "data": {
    "createProject": {
      "id": "newly-created-project-id",
      "name": "YOUR PROJECT NEW NAME",
      "slug": "your-project-new-name",
      "description": "Project description",
      "color": "#3B82F6",
      "icon": "briefcase",
      "category": "GENERAL"
    }
  }
}

Utwórz z szablonu

Aby utworzyć projekt z istniejącego szablonu, możesz dodać opcjonalny templateId do mutacji.

mutation {
  createProject(
    input: {
      templateId: "YOUR TEMPLATE ID OR SLUG"
      name: "YOUR PROJECT NEW NAME"
      companyId: "YOUR COMPANY ID OR SLUG"
    }
  ) {
    id
  }
}
Tworzenie projektu z szablonu nie spowoduje natychmiastowego utworzenia projektu. Zamiast tego, tworzenie projektu zostanie umieszczone w kolejce.

Zaawansowany przykład z szablonu

Oto kompletny przykład pokazujący wszystkie dostępne opcje podczas tworzenia z szablonu:

mutation {
  createProject(
    input: {
      templateId: "marketing-template"
      name: "Q1 Marketing Campaign"
      companyId: "acme-corp"
      description: "Marketing initiatives for Q1 2024"
      color: "#10B981"
      icon: "megaphone"
      category: MARKETING
      coverConfig: {
        enabled: true
        fit: COVER
        imageSelectionType: FIRST
        source: DESCRIPTION
      }
    }
  ) {
    id
    name
    slug
    description
    color
    icon
    category
  }
}
icon: warning
Parametr `coverConfig` obecnie działa tylko podczas tworzenia projektu z szablonu. Dla projektów tworzonych od podstaw, będziesz musiał użyć mutacji `editProject` po utworzeniu, aby skonfigurować obrazy okładek zadań.

Sprawdź status tworzenia

Aby sprawdzić status tworzenia swojego projektu w kolejce, możesz użyć następującego zapytania:

query {
  copyProjectStatus {
    newProjectName
    isTemplate
    isActive
    queuePosition
    totalQueues
  }
}

To zapytanie zwróci status tworzenia twojego projektu w kolejce.

Parametry wejściowe

CreateProjectInput

Parametr Typ Wymagany Opis
name String ✅ Tak Nazwa projektu. URL-e zostaną usunięte z nazwy.
companyId String ✅ Tak Identyfikator lub slug firmy, w której projekt zostanie utworzony.
description String Nie Opis projektu.
color String Nie Kolor projektu w formacie hex (np. "#3B82F6").
icon String Nie Identyfikator ikony dla projektu (np. "teczka", "rakieta").
category ProjectCategory Nie Kategoria projektu. Domyślnie ustawiona na GENERAL, jeśli nie określono.
templateId String Nie Identyfikator istniejącego projektu, który ma być użyty jako szablon.
coverConfig TodoCoverConfigInput Nie Konfiguracja dla obrazów okładek zadań (obecnie działa tylko z tworzeniem na podstawie szablonu).

Wartości ProjectCategory

Wartość Opis
CRM Projekty zarządzania relacjami z klientami
CROSS_FUNCTIONAL Projekty zespołów międzyfunkcyjnych
CUSTOMER_SUCCESS Inicjatywy sukcesu klienta
DESIGN Projekty projektowe i kreatywne
ENGINEERING Projekty inżynieryjne i rozwojowe
GENERAL Projekty ogólne (domyślnie)
HR Projekty zasobów ludzkich
IT Projekty technologii informacyjnej
MARKETING Kampanie marketingowe i inicjatywy
OPERATIONS Projekty operacyjne i logistyczne
PRODUCT Projekty zarządzania produktem
SALES Projekty sprzedaży i rozwoju biznesu

TodoCoverConfigInput

Jeśli chcesz skonfigurować, jak działają obrazy okładek zadań w twoim projekcie, możesz podać parametr coverConfig:

Parametr Typ Wymagany Opis
enabled Boolean ✅ Tak Czy obrazy okładek są włączone dla zadań
fit ImageFit ✅ Tak Jak obrazy powinny pasować do obszaru okładki
imageSelectionType ImageSelectionType ✅ Tak Który obraz wybrać z dostępnych opcji
source ImageSource ✅ Tak Skąd pobierać obrazy
sourceId String Nie Identyfikator konkretnego źródła (np. identyfikator pola niestandardowego)

Wartości ImageFit: COVER, CONTAIN, FILL, SCALE_DOWN

Wartości ImageSelectionType: FIRST (pierwszy obraz), LAST (ostatni obraz)

Wartości ImageSource: DESCRIPTION (z opisu zadania), COMMENTS (z komentarzy), CUSTOM_FIELD (z pola niestandardowego)

Pola odpowiedzi

Mutacja createProject zwraca obiekt projektu z następującymi dostępnymi polami:

Pole Typ Opis
id ID! Unikalny identyfikator projektu
name String! Nazwa projektu
slug String! Identyfikator projektu przyjazny dla URL
description String Opis projektu
color String Kolor projektu w formacie hex
icon String Identyfikator ikony
category ProjectCategory Wartość enum kategorii projektu
companyId String! Identyfikator firmy
createdAt DateTime! Znacznik czasu utworzenia
updatedAt DateTime! Znacznik czasu ostatniej aktualizacji
archived Boolean! Czy projekt jest zarchiwizowany
isTemplate Boolean! Czy to jest projekt szablonowy

Uwaga: Możesz zażądać dowolnej kombinacji tych pól w swojej odpowiedzi.

Ważne uwagi

  • Musisz mieć dostęp na poziomie OWNER, ADMIN lub MEMBER do firmy, aby tworzyć projekty
  • Podczas tworzenia z szablonu, szablon nie może mieć więcej niż 250 000 zadań
  • Użytkownik tworzący jest automatycznie przypisywany jako OWNER projektu
  • Nazwy projektów są automatycznie przycinane z białych znaków
  • Parametr coverConfig obecnie działa tylko podczas tworzenia z szablonu

Odpowiedzi błędów

Firma nie znaleziona

{
  "errors": [{
    "message": "Company not found",
    "extensions": {
      "code": "NOT_FOUND"
    }
  }]
}

Szablon nie znaleziony

{
  "errors": [{
    "message": "Template not found",
    "extensions": {
      "code": "NOT_FOUND"
    }
  }]
}

Szablon za duży

{
  "errors": [{
    "message": "Template cannot have more than 250000 todos",
    "extensions": {
      "code": "VALIDATION_ERROR"
    }
  }]
}

Odrzucone uprawnienia

{
  "errors": [{
    "message": "You do not have permission to create projects in this company",
    "extensions": {
      "code": "FORBIDDEN"
    }
  }]
}

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ć