Szablony
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 jakotemplate_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, lubnull, jeśliprocess_idjest 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. | privatepublicshare |
| 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:
- Wywołaj
use_templatei zapisz zwróconyprocess_id. - Odpytuj
template_installation_statusz tymprocess_idco 2–5 sekund. - Zakończ odpytywanie, gdy
is_completema wartośćtrue,is_failedma wartośćtruealbo 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). Listaboard_idsjest uzupełniana w miarę tworzenia tablic, ale podczas instalacji ze statusemIN_PROGRESStablice 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ókistatus == COMPLETE. - Rekordy wygasają po godzinie. Jeśli zaczniesz odpytować
template_installation_statusponad godzinę po wywołaniuuse_template, zapytanie zwrócinull. - Zabezpieczenie przed przekroczeniem limitu czasu. Rekord ze statusem
IN_PROGRESS, który utknął, zmienia status naFAILEDpo 30 minutach, aby zapobiec niekończącemu się odpytywaniu. - Zabezpieczenia między kontami. Zapytanie o
process_idnależący do innego konta zwracanull. Tego wyniku nie można odróżnić od wygasłego lub nieprawidłowegoprocess_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. |