Dokumentacja dla programistów

Link

Aktualizacja 2026-09-06

Kolumna linku przechowuje adres URL i opcjonalny tekst wyświetlany dla elementu. Obsługuje adresy URL z protokołem http:// lub https:// i wyświetla je jako klikalne linki w interfejsie tablicy.

Za pomocą API możesz odczytywać i filtrować wartości kolumny linku, aktualizować je oraz usuwać.

Typ kolumny Typ implementacji Obsługiwane operacje
link LinkValue
  • Odczyt: Tak
  • Filtrowanie: Tak
  • Aktualizacja: Tak
  • Usuwanie: Tak

Zapytania

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

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

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

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

Pola

Możesz użyć następujących pól, aby określić, jakie informacje zwróci implementacja LinkValue.

Pole Opis
column Column! Kolumna, do której należy ta wartość.
id ID! Unikalny identyfikator kolumny.
text String Wartość kolumny w postaci tekstu. Zwraca "display_text - url", gdy ustawiono oba pola, lub " - url", gdy podano tylko adres URL. Jeśli kolumna nie ma wartości, zwraca "".
type ColumnType! Typ kolumny.
updated_at Date Data ostatniej aktualizacji kolumny.
url String Zapisany adres URL. Zwraca null, jeśli kolumna jest pusta.
url_text String Tekst wyświetlany dla linku. Zwraca null, jeśli kolumna jest pusta, lub "", jeśli ustawiono tylko adres URL, bez tekstu wyświetlanego.
value JSON Surowa wartość kolumny w postaci ciągu JSON. Zwraca {"url": "...", "text": "...", "changed_at": "..."}.

Przykładowa odpowiedź

{
  "data": {
    "items": [
      {
        "name": "Task A",
        "column_values": [
          {
            "id": "link",
            "url": "https://monday.com",
            "url_text": "Go to monday!",
            "text": "Go to monday! - https://monday.com",
            "value": "{\"url\":\"https://monday.com\",\"text\":\"Go to monday!\",\"changed_at\":\"2026-03-20T12:00:00.000Z\"}",
            "updated_at": "2026-03-20T12:00:00Z"
          }
        ]
      }
    ]
  }
}

Filtrowanie

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

Operator Wartość porównania Opis
any_of Tablica zawierająca dokładny tekst wyświetlany lub "" dla pustych wartości Zwraca elementy, których tekst wyświetlany linku jest zgodny z dowolną z podanych wartości.
not_any_of Tablica zawierająca dokładny tekst wyświetlany lub "" dla pustych wartości Pomija elementy, których tekst wyświetlany linku jest zgodny z dowolną z podanych wartości.
contains_text Fragment lub cały tekst wyświetlany Zwraca elementy, których tekst wyświetlany linku zawiera podany fragment.
not_contains_text Fragment lub cały tekst wyświetlany Pomija elementy, których tekst wyświetlany linku zawiera podany fragment.
is_empty [] Zwraca elementy z pustą (nieustawioną) wartością linku.
is_not_empty [] Zwraca elementy, dla których ustawiono wartość linku.

Operatory any_of, not_any_of, contains_text i not_contains_text dopasowują tekst wyświetlany linku, a nie adres URL.

  • Jeśli ustawiono tekst wyświetlany, filtr dopasowuje ten tekst.
  • Jeśli zapisano tylko adres URL (bez tekstu wyświetlanego), link jest traktowany tak, jakby miał pusty tekst wyświetlany. Użyj any_of z wartością "" albo operatora is_empty / is_not_empty, aby znaleźć takie elementy.

Przykłady

Filtrowanie według tekstu wyświetlanego (dokładne dopasowanie)

Ten przykład zwraca elementy, których tekst wyświetlany linku to dokładnie „monday.com”:

query {
  boards(ids: 1234567890) {
    items_page(
      query_params: {
        rules: [
          {
            column_id: "link"
            compare_value: ["monday.com"]
            operator: any_of
          }
        ]
      }
    ) {
      items {
        id
        name
      }
    }
  }
}

Filtrowanie według tekstu wyświetlanego (częściowe dopasowanie)

Ten przykład zwraca elementy, których tekst wyświetlany linku zawiera słowo „monday”:

query {
  boards(ids: 1234567890) {
    items_page(
      query_params: {
        rules: [
          {
            column_id: "link"
            compare_value: ["monday"]
            operator: contains_text
          }
        ]
      }
    ) {
      items {
        id
        name
      }
    }
  }
}
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 }
      }
    }
  }
`;

const variables = {
  boardId: 1234567890,
  columnId: "link",
  compareValue: ["monday"],
  operator: "contains_text"
};

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

Filtrowanie według pustego linku

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

Mutacje

Aktualizowanie wartości

Możesz zaktualizować kolumnę linku za pomocą change_simple_column_value lub change_multiple_column_values. W zależności od wybranej mutacji możesz przesłać wartości jako zwykłe ciągi tekstowe lub obiekty JSON.

change_simple_column_value

Prześlij adres URL (z protokołem http:// lub https://), a po nim spację i tekst wyświetlany jako ciąg znaków w polu value. Tekst wyświetlany jest wymagany i może zawierać spacje.

Mutacja change_simple_column_value wymaga adresu URL i tekstu wyświetlanego, oddzielonych spacją. Jeśli prześlesz adres URL bez tekstu wyświetlanego, pojawi się błąd.

mutation {
  change_simple_column_value(
    item_id: 9876543210
    board_id: 1234567890
    column_id: "link"
    value: "https://monday.com Go to monday!"
  ) {
    id
  }
}
const query = `
  mutation ($boardId: ID!, $itemId: ID!, $columnValue: String!, $columnId: String!) {
    change_simple_column_value(
      item_id: $itemId
      board_id: $boardId
      column_id: $columnId
      value: $columnValue
    ) {
      id
    }
  }
`;

const variables = {
  boardId: 1234567890,
  itemId: 9876543210,
  columnId: "link",
  columnValue: "https://monday.com Go to monday!"
};

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

change_multiple_column_values

Prześlij klucze url (z protokołem http:// lub https://) i text jako obiekt JSON w polu column_values. Klucz text jest opcjonalny - możesz przekazać pusty ciąg znaków, aby ustawić tylko adres URL.

mutation {
  change_multiple_column_values(
    item_id: 9876543210
    board_id: 1234567890
    column_values: "{\"link\": {\"url\": \"https://monday.com\", \"text\": \"Go to monday!\"}}"
  ) {
    id
  }
}
const query = `
  mutation ($boardId: ID!, $itemId: ID!, $columnValues: JSON!) {
    change_multiple_column_values(
      item_id: $itemId
      board_id: $boardId
      column_values: $columnValues
    ) {
      id
    }
  }
`;

const variables = {
  boardId: 1234567890,
  itemId: 9876543210,
  columnValues: JSON.stringify({
    link: {
      url: "https://monday.com",
      text: "Go to monday!"
    }
  })
};

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

Ustawianie linku podczas tworzenia elementu

Możesz ustawić wartość linku podczas tworzenia elementu, przekazując wartość kolumny linku w argumencie column_values.

mutation {
  create_item(
    board_id: 1234567890
    item_name: "New task"
    column_values: "{\"link\": {\"url\": \"https://monday.com\", \"text\": \"Go to monday!\"}}"
  ) {
    id
    name
  }
}

Usuwanie wartości

Możesz wyczyścić kolumnę linku za pomocą change_simple_column_value lub change_multiple_column_values.

change_simple_column_value

Przekaż pusty ciąg znaków w polu value.

mutation {
  change_simple_column_value(
    item_id: 9876543210
    board_id: 1234567890
    column_id: "link"
    value: ""
  ) {
    id
  }
}

change_multiple_column_values

Przekaż null w polu column_values.

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

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

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

Odczytywanie konfiguracji kolumny

Aby sprawdzić ustawienia kolumny linku, możesz pobrać jej konfigurację za pomocą pola settings kolumny.

Pole settings_str jest przestarzałe od wersji API 2025-10. Zamiast niego użyj obiektu settings z określonym typem. Zwraca on uporządkowany JSON, a nie ciąg znaków zakodowany w formacie JSON.

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

Struktura odpowiedzi settings

Pole settings zwraca obiekt JSON z określonym typem i następującymi kluczami:

Klucz Typ Opis
defaultText string Domyślny tekst wyświetlany, gdy dla adresu URL nie podano tekstu wyświetlanego.
disableAutoTitle boolean Jeśli ma wartość true, wyłącza automatyczne generowanie tytułu linku na podstawie adresu URL.
hide_footer boolean Określa, czy ukryć stopkę w komórce linku.

Przykładowa odpowiedź settings

Domyślna kolumna linku zwraca pusty obiekt:

{}

Kolumna linku z własnymi ustawieniami:

{
  "defaultText": "Click here",
  "disableAutoTitle": true
}

Pobieranie schematu typu kolumny

Możesz programowo pobrać schemat JSON ustawień kolumny linku 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: link
  )
}
{
  "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": {
              "defaultText": {
                "type": "string",
                "description": "Default text to display when no text is provided"
              },
              "disableAutoTitle": {
                "type": "boolean",
                "description": "If true, prevents automatic generation of a link title from the URL"
              },
              "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 użyć tych informacji do walidacji ustawień kolumny, dynamicznego generowania interfejsów użytkownika lub przekazywania kontekstu agentom AI. Dowiedz się więcej o formacie odpowiedzi schematu.