Dokumentacja dla programistów

Szablony

Aktualizacja 2026-09-06

monday.com szablony pozwalają tworzyć gotowe tablice (i rozwiązania obejmujące wiele tablic) na podstawie zdefiniowanej struktury. Mutacja use_template instaluje szablon jako zadanie w tle i od razu zwraca process_id. Ponieważ instalacja może trwać od kilku sekund do kilku minut, odpytuj template_installation_status, używając tego process_id, aby śledzić postęp i pobrać identyfikatory utworzonych tablic.

Dostępne tylko w wersji API 2026-10 i nowszych

Jak znaleźć identyfikator szablonu

Obecnie nie ma publicznego zapytania, które pozwala wyświetlić listę szablonów dostępnych do instalacji. Aby uzyskać template_id:

  • W interfejsie monday.com: Otwórz szablon w Centrum szablonów (Template Center) i skopiuj numeryczny identyfikator z adresu strony. To identyfikator AppFeature, który przekazujesz jako template_id.
  • Jeśli jesteś autoryzowanym partnerem: Użyj wewnętrznego zapytania app_features, jeśli masz do niego dostęp. Publiczny interfejs API do wyszukiwania szablonów nie jest jeszcze dostępny.

Zapytania

Pobieranie statusu instalacji szablonu

  • Wymagany zakres: brak dodatkowych wymagań poza prawidłowym tokenem API
  • Zwraca obiekt TemplateInstallationStatusResult, który opisuje bieżący stan instalacji szablonu, lub null, jeśli process_id jest nieznany, wygasł albo należy do innego konta
  • Można wykonać bezpośrednio w głównym obiekcie zapytania
query {
  template_installation_status(process_id: "c072acaf68e0be9fd0e451f0884383b6") {
    process_id
    status
    is_complete
    is_failed
    board_ids
    board_ids_map {
      source_board_id
      created_board_id
    }
  }
}

Argumenty

Argument Typ Opis Wartości wyliczeniowe
process_id ID! Wartość zwrócona przez mutację use_template.

Pola

Pole Typ Opis Wartości wyliczeniowe
board_ids [ID]! Identyfikatory tablic utworzonych do tej pory. Lista jest uzupełniana w trakcie instalacji ze statusem IN_PROGRESS.
board_ids_map [BoardIdMapping]! Przyporządkowuje identyfikator każdej tablicy źródłowej szablonu do identyfikatora nowo utworzonej tablicy. source_board_id created_board_id
is_complete Boolean! Skrócony zapis dla status == COMPLETE.
is_failed Boolean! Skrócony zapis dla status == FAILED.
process_id ID! Kopia wejściowej wartości process_id.
status TemplateInstallationStatus! Status instalacji. PENDING IN_PROGRESS COMPLETE FAILED

Mutacje

Używanie szablonu

Wymagany zakres: workspaces:write

Instaluje szablon jako zadanie w tle. Zwraca obiekt Template, który zawiera process_id. Przekaż ten process_id do template_installation_status, aby cyklicznie sprawdzać, czy instalacja została zakończona, i pobrać identyfikatory utworzonych tablic.

mutation {
  use_template(template_id: 1234567890, destination_workspace_id: 9876543210) {
    process_id
  }
}

Argumenty

Argument Typ Opis Wartości wyliczeniowe
template_id Int! Identyfikator AppFeature szablonu do zainstalowania.
board_kind BoardKind Typ widoczności tworzonych tablic. private
public
share
board_owner_ids [Int] Identyfikatory użytkowników, którzy mają zostać właścicielami tworzonych tablic.
board_owner_team_ids [Int] Identyfikatory zespołów, które mają zostać właścicielami tworzonych tablic.
board_subscriber_ids [Int] Identyfikatory użytkowników, którzy mają obserwować tworzone tablice.
board_subscriber_teams_ids [Int] Identyfikatory zespołów, które mają obserwować tworzone tablice.
callback_url_on_complete String Adres URL webhooka, pod który monday.com wysyła identyfikatory utworzonych tablic i obszarów roboczych po zakończeniu instalacji.
destination_folder_id Int Identyfikator folderu, w którym ma zostać zainstalowany szablon.
destination_folder_name String Nazwa folderu, który ma zostać utworzony dla szablonu obejmującego wiele tablic.
destination_name String Nazwa tworzonej instancji.
destination_workspace_id Int Identyfikator obszaru roboczego, w którym ma zostać zainstalowany szablon. Domyślnie jest to główny obszar roboczy.
skip_target_folder_creation Boolean Jeśli ma wartość true, pomija tworzenie folderu dla szablonów obejmujących wiele obiektów.
solution_extra_options JSON Dodatkowe opcje instalacji szablonu.

Schemat odpytywania

Instalacja działa asynchronicznie, dlatego zalecany przebieg wygląda następująco:

  1. Wywołaj use_template i zapisz zwrócony process_id.
  2. Odpytuj template_installation_status z tym process_id co 2–5 sekund.
  3. Zakończ odpytywanie, gdy is_complete ma wartość true, is_failed ma wartość true albo wynik ma wartość null (rekord wygasł).
# Step 1: start the installation
mutation {
  use_template(template_id: 1234567890, destination_workspace_id: 9876543210) {
    process_id
  }
}

# Step 2: poll until done (every ~3 seconds)
query {
  template_installation_status(process_id: "c072acaf68e0be9fd0e451f0884383b6") {
    status
    is_complete
    is_failed
    board_ids
    board_ids_map {
      source_board_id
      created_board_id
    }
  }
}

Przykładowa odpowiedź po pomyślnym zakończeniu instalacji (COMPLETE):

{
  "data": {
    "template_installation_status": {
      "status": "COMPLETE",
      "is_complete": true,
      "is_failed": false,
      "board_ids": ["1234567890", "1234567891", "1234567892"],
      "board_ids_map": [
        { "source_board_id": "9876543210", "created_board_id": "1234567890" },
        { "source_board_id": "9876543211", "created_board_id": "1234567891" },
        { "source_board_id": "9876543212", "created_board_id": "1234567892" }
      ]
    }
  }
}

Odpytuj co 2–5 sekund. Odpytywanie częściej niż raz na sekundę może spowodować osiągnięcie limitu (domyślnie 60 żądań na minutę na konto).


Ważne zastrzeżenia

  • Zawartość tablic nie jest gotowa w trakcie instalacji (IN_PROGRESS). Lista board_ids jest uzupełniana w miarę tworzenia tablic, ale podczas instalacji ze statusem IN_PROGRESS tablice są puste - nie zawierają elementów, kolumny lustrzane nie działają i nie ma automatyzacji. Możesz bezpiecznie zapisać identyfikatory wcześniej, ale nie odczytuj ani nie zapisuj zawartości tablic, dopóki status == COMPLETE.
  • Rekordy wygasają po godzinie. Jeśli zaczniesz odpytować template_installation_status ponad godzinę po wywołaniu use_template, zapytanie zwróci null.
  • Zabezpieczenie przed przekroczeniem limitu czasu. Rekord ze statusem IN_PROGRESS, który utknął, zmienia status na FAILED po 30 minutach, aby zapobiec niekończącemu się odpytywaniu.
  • Zabezpieczenia między kontami. Zapytanie o process_id należący do innego konta zwraca null. Tego wyniku nie można odróżnić od wygasłego lub nieprawidłowego process_id.
  • Limity liczby żądań. Domyślnie można wysłać maksymalnie 60 żądań na minutę na konto.

Przypadki błędów

Mutacja use_template może zwrócić następujące błędy:

Błąd Opis
ManagedTemplateMaxInstancesForTemplateError Konto osiągnęło limit instancji danego szablonu.
ManagedTemplateMaxInstancesForAccountError Konto osiągnęło globalny limit instancji szablonów.
USER_UNAUTHORIZED (HTTP 403) Użytkownik nie ma dostępu do wybranego szablonu lub zakresu workspaces:write.