Dokumentacja dla programistów

Pole wyboru

Aktualizacja 2026-09-06

Kolumna pola wyboru przechowuje prostą wartość logiczną na tablicy: zaznaczone albo niezaznaczone.

Za pomocą API możesz odczytywać, filtrować, aktualizować i czyścić wartości kolumny pola wyboru.

Typ kolumny Typ implementacji Obsługiwane operacje
checkbox CheckboxValue
  • Odczyt: Tak
  • Filtrowanie: Tak
  • Aktualizacja: Tak
  • Czyszczenie: Tak

Zapytania

Możesz pobierać wartości z kolumn pola wyboru za pomocą pola column_values w zapytaniach items, używając wbudowanego fragmentu dla CheckboxValue.

query {
  items(ids: [1234567890, 9876543210]) {
    name
    column_values {
      ... on CheckboxValue {
        id
        checked
        text
        value
        updated_at
      }
    }
  }
}
const query = `
  query ($itemIds: [ID!]) {
    items(ids: $itemIds) {
      name
      column_values {
        ... on CheckboxValue {
          id
          checked
          text
          value
          updated_at
        }
      }
    }
  }
`;

const variables = { itemIds: [1234567890, 9876543210] };

const response = await mondayApiClient.request(query, variables);

Pola

Możesz użyć poniższych pól, aby określić, jakie informacje zwróci implementacja CheckboxValue.

Pole Opis
checked Boolean Informuje, czy pole wyboru jest zaznaczone. Zwraca true, jeśli jest zaznaczone, i false, jeśli nie jest.
column Column! Kolumna, do której należy wartość.
id ID! Unikalny identyfikator kolumny.
text String Wartość kolumny w postaci tekstu. Zwraca "v", jeśli pole jest zaznaczone, albo "", jeśli nie jest.
type ColumnType! Typ kolumny.
updated_at Date Data ostatniej aktualizacji kolumny. Zwraca null, jeśli pole wyboru nigdy nie było zaznaczone.
value JSON Surowa wartość kolumny w formacie JSON. Zwraca {"checked": true} albo {"checked": false}.

Przykładowa odpowiedź

{
  "data": {
    "items": [
      {
        "name": "Task A",
        "column_values": [
          {
            "id": "checkbox",
            "checked": true,
            "text": "v",
            "value": "{\"checked\":true,\"changed_at\":\"2026-03-20T12:00:00.000Z\"}",
            "updated_at": "2026-03-20T12:00:00+00:00"
          }
        ]
      },
      {
        "name": "Task B",
        "column_values": [
          {
            "id": "checkbox",
            "checked": false,
            "text": "",
            "value": "{\"checked\":false}",
            "updated_at": null
          }
        ]
      }
    ]
  }
}

Pole text zwraca "v" (symbol zaznaczenia), gdy pole wyboru jest zaznaczone, a pusty ciąg "", gdy nie jest. Do operacji logicznych w kodzie używaj pola checked.


Filtrowanie

Możesz filtrować elementy według wartości pola wyboru za pomocą obiektu items_page. Kolumna pola wyboru obsługuje następujące operatory:

Operator Wartość porównania Opis
is_empty [] Zwraca elementy, w których pole wyboru nie jest zaznaczone.
is_not_empty [] Zwraca elementy, w których pole wyboru jest zaznaczone.

Filtry kolumny pola wyboru używają pustej tablicy jako wartości porównania, ponieważ kolumna przechowuje jeden z dwóch stanów: zaznaczone albo niezaznaczone.

Przykłady

Filtrowanie zaznaczonych elementów

Poniższe zapytanie zwraca wszystkie elementy, w których pole wyboru jest zaznaczone:

query {
  boards(ids: 1234567890) {
    items_page(
      query_params: {
        rules: [
          {
            column_id: "checkbox"
            compare_value: []
            operator: is_not_empty
          }
        ]
      }
    ) {
      items {
        id
        name
        column_values {
          ... on CheckboxValue {
            checked
          }
        }
      }
    }
  }
}
const query = `
  query ($boardId: [ID!], $columnId: ID!, $operator: ItemsQueryRuleOperator!, $compareValue: CompareValue!) {
    boards(ids: $boardId) {
      items_page(
        query_params: {
          rules: [
            { column_id: $columnId, compare_value: $compareValue, operator: $operator }
          ]
        }
      ) {
        items {
          id
          name
          column_values {
            ... on CheckboxValue {
              checked
            }
          }
        }
      }
    }
  }
`;

const variables = {
  boardId: 1234567890,
  columnId: "checkbox",
  compareValue: [null],
  operator: "is_not_empty",
};

const response = await mondayApiClient.request(query, variables);

Filtrowanie niezaznaczonych elementów

Poniższe zapytanie zwraca wszystkie elementy, w których pole wyboru nie jest zaznaczone:

query {
  boards(ids: 1234567890) {
    items_page(
      query_params: {
        rules: [
          {
            column_id: "checkbox"
            compare_value: []
            operator: is_empty
          }
        ]
      }
    ) {
      items {
        id
        name
      }
    }
  }
}

Mutacje

Tworzenie kolumny

Wymagany zakres uprawnień: boards:write

Możesz utworzyć kolumnę pola wyboru za pomocą ogólnej mutacji create_column. Nie ma osobnej mutacji create_checkbox_column o określonym typie.

mutation {
  create_column(
    board_id: 1234567890
    title: "Approved"
    column_type: checkbox
  ) {
    id
    title
    type
  }
}
const query = `
  mutation ($boardId: ID!, $title: String!, $columnType: ColumnType!) {
    create_column(
      board_id: $boardId
      title: $title
      column_type: $columnType
    ) {
      id
      title
      type
    }
  }
`;

const variables = {
  boardId: 1234567890,
  title: "Approved",
  columnType: "checkbox",
};

const response = await mondayApiClient.request(query, variables);

Aktualizowanie wartości

Możesz zaktualizować kolumnę pola wyboru za pomocą change_multiple_column_values, przekazując obiekt JSON w column_values.

Aby zaznaczyć pole, wyślij {"checked": "true"}:

mutation {
  change_multiple_column_values(
    item_id: 1234567890
    board_id: 9876543210
    column_values: "{\"checkbox\": {\"checked\": \"true\"}}"
  ) {
    id
    name
  }
}
const query = `
  mutation ($boardId: ID!, $itemId: ID!, $columnValues: JSON!) {
    change_multiple_column_values(
      item_id: $itemId
      board_id: $boardId
      column_values: $columnValues
    ) {
      id
      name
    }
  }
`;

const variables = {
  boardId: 9876543210,
  itemId: 1234567890,
  columnValues: JSON.stringify({
    checkbox: { checked: "true" }
  })
};

const response = await mondayApiClient.request(query, variables);

Kolumna pola wyboru nie obsługuje change_simple_column_value. Do aktualizacji jej wartości musisz użyć change_multiple_column_values.

Czyszczenie wartości

Możesz wyczyścić wartość kolumny pola wyboru (odznaczyć pole) za pomocą change_multiple_column_values, przekazując null w column_values.

mutation {
  change_multiple_column_values(
    item_id: 1234567890
    board_id: 9876543210
    column_values: "{\"checkbox\": null}"
  ) {
    id
    name
  }
}
const query = `
  mutation ($boardId: ID!, $itemId: ID!, $columnValues: JSON!) {
    change_multiple_column_values(
      item_id: $itemId
      board_id: $boardId
      column_values: $columnValues
    ) {
      id
      name
    }
  }
`;

const variables = {
  boardId: 9876543210,
  itemId: 1234567890,
  columnValues: JSON.stringify({
    checkbox: null
  })
};

const response = await mondayApiClient.request(query, variables);

Ustawianie wartości podczas tworzenia elementu

Możesz ustawić wartość pola wyboru podczas tworzenia elementu, przekazując wartość kolumny w argumencie column_values mutacji create_item.

mutation {
  create_item(
    board_id: 1234567890
    item_name: "New task"
    column_values: "{\"checkbox\": {\"checked\": \"true\"}}"
  ) {
    id
    name
  }
}
const query = `
  mutation ($boardId: ID!, $itemName: String!, $columnValues: JSON!) {
    create_item(
      board_id: $boardId
      item_name: $itemName
      column_values: $columnValues
    ) {
      id
      name
    }
  }
`;

const variables = {
  boardId: 1234567890,
  itemName: "New task",
  columnValues: JSON.stringify({
    checkbox: { checked: "true" }
  })
};

const response = await mondayApiClient.request(query, variables);

Odczytywanie konfiguracji kolumny

Aby sprawdzić konfigurację kolumny pola wyboru, pobierz jej ustawienia za pomocą pola settings.

Pole settings_str jest przestarzałe od wersji API 2025-10. Zamiast niego używaj typowanego obiektu settings, który zwraca uporządkowany obiekt JSON, a nie ciąg znaków zakodowany w formacie JSON.

query {
  boards(ids: 1234567890) {
    columns(ids: ["checkbox"]) {
      id
      title
      settings
    }
  }
}

Struktura odpowiedzi settings

Pole settings zwraca typowany obiekt JSON z następującymi kluczami:

Klucz Typ Opis
color string Kod koloru w formacie szesnastkowym, używany do wyświetlania pola wyboru (np. "#ff158a"). Pojawia się tylko wtedy, gdy ustawiono kolor niestandardowy.
hide_footer boolean Określa, czy ukryć podsumowanie w stopce kolumny.

Przykładowa odpowiedź settings

Domyślna kolumna pola wyboru zwraca pusty obiekt ustawień:

{}

Kolumna pola wyboru z niestandardowym kolorem:

{
  "color": "#ff158a"
}

Pobieranie schematu typu kolumny

Możesz programowo pobrać schemat JSON ustawień kolumny pola wyboru za pomocą zapytania get_column_type_schema. Zwraca ono strukturę, reguły walidacji i dostępne właściwości konfiguracji kolumny.

query {
  get_column_type_schema(
    type: checkbox
  )
}
{
  "data": {
    "get_column_type_schema": {
      "schema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "object",
        "properties": {
          "settings": {
            "type": "object",
            "description": "Column specific settings",
            "properties": {
              "color": {
                "type": "string",
                "description": "Hex color code for the boolean column display (e.g., #fdab3d)",
                "minLength": 7,
                "maxLength": 7
              },
              "hide_footer": {
                "type": "boolean",
                "description": "Whether to hide the footer"
              }
            },
            "additionalProperties": false
          }
        }
      }
    }
  }
}

Odpowiedź zawiera nazwy właściwości, typy, ograniczenia (takie jak maksymalna długość i dozwolone wartości) oraz opisy poszczególnych ustawień. Możesz jej użyć do walidacji ustawień kolumny, dynamicznego generowania interfejsów użytkownika lub dostarczania kontekstu agentom AI. Dowiedz się więcej o formacie odpowiedzi schematu.