Pełna dokumentacja API do zarządzania projektami w Blue - tworzenie, aktualizowanie, usuwanie i zapytywanie o projekty


Przegląd

Projekty są podstawową jednostką organizacyjną w Blue. Zawierają listy, zadania, pola niestandardowe, automatyzacje oraz wszystkie inne dane związane z pracą. Projekty należą do firm i mają swoje własne systemy uprawnień, szablony i konfiguracje.

Dostępne operacje

Podstawowe operacje projektowe

Operacja Opis Link
Create Project Utwórz nowy projekt lub z szablonu View Details →
List Projects Zapytaj i filtruj projekty View Details →
Delete Project Trwale usuń projekt View Details →
Archive Project Archiwizuj/odarchiwizuj projekty View Details →
Rename Project Zaktualizuj nazwę projektu i slug View Details →
Copy Project Duplikuj istniejący projekt View Details →

Komponenty projektu

Komponent Opis Link
Lists Zarządzaj listami zadań w projektach View Details →
Templates Pracuj z szablonami projektów View Details →
Activity Śledź aktywność i zmiany w projekcie View Details →

Kluczowe pojęcia

Struktura projektu

  • Projekty należą do firm
  • Każdy projekt może mieć wiele list
  • Listy zawierają zadania
  • Projekty wspierają pola niestandardowe, tagi i automatyzacje

Model uprawnień

Projekty mają wielopoziomowy system uprawnień:

Poziom Uprawnienia
OWNER Full control, can delete project
ADMIN Manage project settings, users, and content
MEMBER Create and edit content
CLIENT Limited edit access
VIEW_ONLY Read-only access
COMMENT_ONLY Can only comment

Kategorie projektów

Projekty mogą być kategoryzowane dla lepszej organizacji:

  • CRM
  • CROSS_FUNCTIONAL
  • CUSTOMER_SUCCESS
  • DESIGN
  • ENGINEERING
  • GENERAL (domyślnie)
  • HR
  • IT
  • MARKETING
  • OPERATIONS
  • PERSONAL
  • PROCUREMENT
  • PRODUCT
  • SALES

Wspólne wzorce

Tworzenie podstawowego projektu

mutation CreateProject {
  createProject(input: {
    name: "Q1 Marketing Campaign"
    companyId: "company-123"
    category: MARKETING
  }) {
    id
    name
    slug
  }
}

Zapytania o projekty z filtrami

query GetProjects {
  projectList(
    filter: {
      companyIds: ["company-123"]
      isArchived: false
      categories: [MARKETING, SALES]
    }
    sort: [{ field: updatedAt, direction: DESC }]
    take: 20
  ) {
    items {
      id
      name
      category
      todosCount
      todosDoneCount
    }
    pageInfo {
      hasNextPage
      total
    }
  }
}

Uwaga: Zapytanie projectList jest zalecaną metodą zapytywania o projekty. Istnieje starsze zapytanie projects, ale nie powinno być używane w nowych implementacjach.

Zarządzanie listami projektów

# Get all lists in a project
query GetProjectLists {
  todoLists(projectId: "project-123") {
    id
    title
    position
    todosCount
  }
}

# Create a new list
mutation CreateList {
  createTodoList(input: {
    projectId: "project-123"
    title: "To Do"
    position: 1.0
  }) {
    id
    title
  }
}

Najlepsze praktyki

  1. Nazwa projektu

    • Używaj jasnych, opisowych nazw
    • Unikaj znaków specjalnych, które mogą wpłynąć na slugi
    • Utrzymuj nazwy poniżej 50 znaków
  2. Zarządzanie uprawnieniami

    • Zacznij od minimalnych uprawnień
    • Używaj roli CLIENT dla zewnętrznych interesariuszy
    • Regularnie audytuj dostęp do projektów
  3. Organizacja

    • Używaj kategorii do grupowania podobnych projektów
    • Archiwizuj zakończone projekty zamiast je usuwać
    • Używaj szablonów dla powtarzalnych typów projektów
  4. Wydajność

    • Używaj paginacji dla dużych list projektów
    • Filtruj według statusu aktywnego/archiwizowanego
    • Ogranicz liczbę list w projekcie (maks. 50)

Obsługa błędów

Typowe błędy, na które możesz natrafić:

Kod błędu Opis Rozwiązanie
PROJECT_NOT_FOUND Projekt nie istnieje lub brak dostępu Verify project ID and permissions
COMPANY_NOT_FOUND Firma nie istnieje Check company ID
FORBIDDEN Niewystarczające uprawnienia Ensure proper role level
BAD_USER_INPUT Błąd walidacji (np. zbyt długa nazwa) Check input validation requirements

Powiązane zasoby

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ć