Dokumentacja dla programistów

Inne typy

Aktualizacja 2026-09-06

Interfejsy API walidacji monday.com umożliwiają tworzenie, odczytywanie i usuwanie kolumn wymaganych pól oraz reguł walidacji na tablicach monday.com.

Poniższe typy są używane przez zapytania i mutacje dotyczące walidacji. Nie można odpytywać ich niezależnie.

RequiredColumns

Obiekt zawierający wymagane kolumny na tablicy. Zwracają go mutacje add_required_column i remove_required_column.

Field Type Description
required_column_ids [String!] Tablica unikalnych identyfikatorów wymaganych kolumn.

ValidationRule

Dostępne tylko w wersjach API 2026-07 i nowszych

Obiekt reprezentujący pojedynczą regułę walidacji na tablicy. Zwracają go mutacje create_validation_rule, update_validation_rule i delete_validation_rule.

Field Type Description
id ID Unikalny identyfikator reguły walidacji (w formacie UUID).
then JSON Klauzula ograniczeń, która musi być spełniona. Zawsze obecna. Zawiera operator (AND/OR) i tablicę groups z ograniczeniami reguły.
if JSON Klauzula warunku, który uruchamia regułę. W przypadku reguł walidacji bez warunku zwraca null. Zawiera operator (AND/OR) i tablicę groups z ograniczeniami reguły.

ValidationRuleInput

Dostępne tylko w wersjach API 2026-07 i nowszych

Obiekt wejściowy używany do definiowania reguły walidacji podczas jej tworzenia lub aktualizowania.

Field Type Description
then GroupInput! Klauzula ograniczeń. Określa warunki, które muszą zostać spełnione. Wymagana.
if GroupInput Klauzula warunku. Jeśli ją podasz, reguła będzie stosowana tylko wtedy, gdy ten warunek zostanie spełniony. Opcjonalna.

GroupInput

Dostępne tylko w wersjach API 2026-07 i nowszych

Obiekt wejściowy reprezentujący grupę ograniczeń reguły połączonych operatorem logicznym. Jest używany zarówno w klauzuli if, jak i then reguły walidacji.

Field Type Description
operator GroupOperator Operator logiczny łączący ograniczenia. Domyślnie: AND.
groups [RuleConstraintInput!]! Tablica pojedynczych ograniczeń dotyczących kolumn. Wymagana.

RuleConstraintInput

Dostępne tylko w wersjach API 2026-07 i nowszych

Obiekt wejściowy definiujący pojedyncze ograniczenie dotyczące wartości kolumny.

Field Type Description
operator RuleOperator! Operator porównania dla tego ograniczenia. Wymagany.
column_id String! Unikalny identyfikator kolumny, która ma być walidowana. Wymagany.
compare_value [CompareValue!] Wartość lub wartości do porównania. Format zależy od typu kolumny i operatora. Nie jest wymagane w przypadku operatorów takich jak IS_EMPTY i IS_NOT_EMPTY.
compare_attribute String Opcjonalny atrybut określający sposób interpretacji wartości do porównania (np. "DATE" w przypadku kolumn dat).

GroupOperator

Dostępne tylko w wersjach API 2026-07 i nowszych

Typ wyliczeniowy określający sposób łączenia wielu ograniczeń w grupie.

Enum Value Description
AND Wszystkie warunki w grupie muszą być spełnione.
OR Musi być spełniony co najmniej jeden warunek w grupie.

RuleOperator

Dostępne tylko w wersjach API 2026-07 i nowszych

Typ wyliczeniowy określający operatory porównania dostępne dla ograniczeń reguł. Nie wszystkie operatory są obsługiwane przez każdy typ kolumny lub reguły. Dostępność operatorów znacznie się różni:

  • Zwykłe reguły (bez klauzuli if) obsługują najmniej operatorów.
  • Warunkowe klauzule IF obsługują operatory o średnim zakresie.
  • Warunkowe klauzule THEN obsługują najwięcej operatorów (w tym IS_EMPTY).

Pełną tabelę obsługiwanych operatorów według typu kolumny i rodzaju klauzuli znajdziesz w przewodniku po regułach walidacji.

Enum Value Description Clause Context
ANY_OF Wartość jest zgodna z dowolną z podanych wartości. Zwykła reguła, IF, THEN; działa z status, dropdown, rating
NOT_ANY_OF Wartość nie jest zgodna z żadną z podanych wartości. Zwykła reguła, IF, THEN; działa z status, dropdown, rating
EQUALS Wartość jest równa podanej wartości. Tylko klauzula IF (nie działa w zwykłych regułach ani w THEN); działa z numbers, date
NOT_EQUALS Wartość nie jest równa podanej wartości. Zwykła reguła, IF, THEN; działa z numbers, date
IS_EMPTY Wartość jest pusta lub nie została ustawiona. Tylko klauzula THEN; działa z status, dropdown, checkbox, people
IS_NOT_EMPTY Wartość nie jest pusta. Tylko klauzule IF i THEN (nie działa w zwykłych regułach); obsługiwany przez wiele typów kolumn
GREATER_THAN Wartość jest większa od podanej wartości. Zwykła reguła, IF, THEN; działa z numbers, date
GREATER_THAN_OR_EQUALS Wartość jest większa od podanej wartości lub jej równa. Zwykła reguła, IF, THEN; działa z numbers, date
LOWER_THAN Wartość jest mniejsza od podanej wartości. Zwykła reguła, IF, THEN; działa z numbers, date
LOWER_THAN_OR_EQUAL Wartość jest mniejsza od podanej wartości lub jej równa. Zwykła reguła, IF, THEN; działa z numbers, date
CONTAINS_TEXT Wartość zawiera podany tekst. Zwykła reguła, IF, THEN; działa z text, long_text, email, phone, link, country
NOT_CONTAINS_TEXT Wartość nie zawiera podanego tekstu. Zwykła reguła, IF, THEN; działa z text, long_text, email, phone, link, country
STARTS_WITH_TEXT Wartość zaczyna się od podanego tekstu. Zwykła reguła, IF, THEN; działa z text, long_text, email, phone, link, country
BETWEEN Wartość mieści się w zakresie wyznaczonym przez dwie podane wartości (włącznie). Zwykła reguła, IF, THEN; działa tylko z date (NIE jest obsługiwany przez numbers)

CompareValue

Dostępne tylko w wersjach API 2026-07 i nowszych

Własny typ skalarny, który przyjmuje ciąg znaków lub liczbę do porównania. Wymagany format zależy od typu kolumny i operatora. Format jest ściśle określony - API odrzuca nieprawidłowo sformatowane wartości do porównania.

Format według typu kolumny i operatora

Column Type Operator Example compare_value Notes
status ANY_OF, NOT_ANY_OF [1, 2] Używaj indeksów etykiet (liczb całkowitych), a nie ich nazw.
dropdown ANY_OF, NOT_ANY_OF [1, 2] Używaj indeksów etykiet (liczb całkowitych), a nie ich nazw.
rating ANY_OF, NOT_ANY_OF [4, 5] Wartości oceny podawaj jako liczby całkowite.
numbers NOT_EQUALS, GREATER_THAN, GREATER_THAN_OR_EQUALS, LOWER_THAN, LOWER_THAN_OR_EQUAL [5] Pojedyncza wartość liczbowa
date BETWEEN ["2026-01-01", "2026-12-31"] Dwie daty w formacie YYYY-MM-DD; w przypadku BETWEEN NIE dodawaj prefiksu EXACT
date GREATER_THAN, GREATER_THAN_OR_EQUALS, LOWER_THAN, LOWER_THAN_OR_EQUAL, NOT_EQUALS, EQUALS ["EXACT", "2026-01-01"] Wymagane: dodaj prefiks "EXACT", a następnie datę w formacie YYYY-MM-DD
text, long_text, email, phone, link, country CONTAINS_TEXT, NOT_CONTAINS_TEXT, STARTS_WITH_TEXT ["search term"] Pojedynczy ciąg znaków
Dowolny IS_EMPTY, IS_NOT_EMPTY (pomiń) lub [] Nie trzeba podawać wartości
timeline (tak samo jak w przypadku date) ["EXACT", "2026-01-01"] W kolumnach osi czasu obowiązują te same zasady formatu co w kolumnach dat

Częste błędy

# ❌ WRONG: Using label name instead of index
compare_value: ["Done"]

# ✅ CORRECT: Use label index
compare_value: [1]

# ❌ WRONG: Omitting EXACT prefix on date comparison
compare_value: ["2026-01-01"]

# ✅ CORRECT: Include EXACT prefix (except for BETWEEN)
compare_value: ["EXACT", "2026-01-01"]

# ❌ WRONG: Using EXACT prefix with BETWEEN
compare_value: ["EXACT", "2026-01-01", "EXACT", "2026-12-31"]

# ✅ CORRECT: BETWEEN uses plain dates without EXACT
compare_value: ["2026-01-01", "2026-12-31"]

ValidationsEntityType

Typ wyliczeniowy określający typy obiektów obsługujące walidacje.

Enum Value Description
board Walidacje na tablicy.