Link
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 |
|
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_ofz wartością""albo operatorais_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.