Dokumentacja dla programistów

Schematy obiektów

Aktualizacja 2026-09-06

Schematy obiektów definiują strukturę kolumn, którą można stosować spójnie na wielu tablicach na koncie monday.com. Każdy schemat ma unikalną nazwę, opcjonalny opis oraz zestaw typowanych kolumn z konfigurowalnymi zasadami, które określają, które właściwości tablice mogą nadpisywać. Tablice można połączyć ze schematem obiektu, aby dziedziczyły jego definicje kolumn.

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

Zapytania

Pobieranie schematów obiektów

  • Wymagane uprawnienie: manage_account_data_entities
  • Zwraca tablicę zawierającą jeden lub wiele schematów obiektów konta
  • Można wysłać tylko bezpośrednio na poziomie głównym; nie można zagnieżdżać w innym zapytaniu
query {
  get_object_schemas(limit: 10, page: 1) {
    id
    name
    description
    revision
    columns {
      id
      title
      type
    }
    connected_boards_count
  }
}

Argumenty

Argument Typ Opis Wartości enum
exclude_created_by_monday Boolean Gdy ma wartość true, zwraca tylko schematy obiektów utworzone przez użytkowników na tym koncie. Pomija domyślne schematy dodane przez monday.com. W połączeniu z ids lub names zwraca tylko wyniki spełniające oba warunki.
ids [ID] Lista identyfikatorów schematów obiektów, według których mają być filtrowane wyniki. Nie można używać razem z names.
limit Int Liczba schematów obiektów zwracanych na stronę. Domyślnie 25, maksymalnie 100.
names [String] Lista nazw schematów obiektów, według których mają być filtrowane wyniki. Nazwy są unikalnymi identyfikatorami. Nie można używać razem z ids.
page Int Numer strony do pobrania. Numeracja stron zaczyna się od 1. Wartość domyślna to 1.

Pola

Pole Typ Opis Obsługiwane pola podrzędne
account_id ID! Unikalny identyfikator konta, do którego należy schemat obiektu.
columns [ObjectSchemaColumn!]! Kolumny zdefiniowane w tym schemacie obiektu. id title type description settings policy tags
connected_boards_count Int! Liczba tablic obecnie połączonych z tym schematem obiektu.
created_at DateTime! Data i godzina utworzenia schematu obiektu.
created_by ID! Unikalny identyfikator użytkownika, który utworzył schemat obiektu.
description String Opis schematu obiektu. Zwraca null, jeśli nie ustawiono opisu.
id ID! Unikalny identyfikator schematu obiektu.
name String Unikalna nazwa schematu obiektu (slug). Używana jako identyfikator w mutacjach.
parent_id ID Unikalny identyfikator nadrzędnego schematu obiektu. Zwraca null, jeśli schemat nie ma schematu nadrzędnego.
revision Int! Numer bieżącej rewizji. Używany do optymistycznego blokowania podczas aktualizowania schematu.
updated_at DateTime! Data i godzina ostatniej aktualizacji schematu obiektu.

Mutacje

  • Wymagane uprawnienie: manage_account_data_entities

Tworzenie schematu obiektu

Tworzy nowy schemat obiektu konta. Zwraca ObjectSchema.

mutation {
  create_object_schema(
    name: "project_tracker"
    description: "Standard columns for all project boards"
  ) {
    id
    name
    description
    revision
  }
}

Argumenty

Argument Typ Opis Wartości enum
description String Opis schematu obiektu.
name String! Unikalna, czytelna dla użytkownika nazwa schematu obiektu. Musi mieć od 3 do 15 znaków, zawierać co najmniej jedną literę i składać się wyłącznie z małych liter, cyfr oraz podkreśleń (np. my_schema).
parent_id ID Unikalny identyfikator nadrzędnego schematu obiektu.

Aktualizowanie schematu obiektu

Aktualizuje istniejący schemat obiektu konta. Zwraca ObjectSchema.

mutation {
  update_object_schema(
    id: "1234567890"
    revision: 1
    description: "Updated description for project boards"
  ) {
    id
    name
    description
    revision
  }
}

Argumenty

Argument Typ Opis Wartości enum
description String Zaktualizowany opis schematu obiektu.
id ID! Unikalny identyfikator schematu obiektu do zaktualizowania.
parent_id ID Unikalny identyfikator nowego nadrzędnego schematu obiektu.
revision Int! Numer bieżącej rewizji schematu obiektu. Służy do optymistycznego blokowania, które zapobiega konfliktom podczas aktualizacji.

Usuwanie schematu obiektu

Usuwa schemat obiektu konta. Zwraca ObjectSchema. Schemat można usunąć tylko wtedy, gdy nie są z nim połączone żadne tablice.

mutation {
  delete_object_schema(id: "1234567890") {
    id
    name
  }
}

Argumenty

Argument Typ Opis Wartości enum
id ID Unikalny identyfikator schematu obiektu do usunięcia. Należy podać id albo name.
name String Nazwa schematu obiektu do usunięcia. Należy podać id albo name.

Tworzenie kolumn schematu obiektu

Tworzy co najmniej jedną kolumnę w schemacie obiektu konta. Zwraca ObjectSchema.

mutation {
  create_object_schema_columns(
    object_schema_id: "1234567890"
    columns: [
      {
        type: status
        title: "Project Status"
        description: "Current phase of the project"
        opt_out_by_default: false
        policy: { can_override: [title, description], cannot_delete: false }
      }
    ]
  ) {
    id
    columns {
      id
      title
      type
    }
  }
}

Argumenty

Argument Typ Opis Wartości enum
columns [CreateObjectSchemaColumnInput!]! Tablica definicji kolumn do utworzenia w schemacie obiektu.
object_schema_id ID Unikalny identyfikator schematu obiektu. Należy podać object_schema_id albo object_schema_name.
object_schema_name String Nazwa schematu obiektu. Należy podać object_schema_id albo object_schema_name.

Aktualizowanie kolumn schematu obiektu

Aktualizuje co najmniej jedną kolumnę w schemacie obiektu konta. Zwraca ObjectSchema.

mutation {
  update_object_schema_columns(
    object_schema_id: "1234567890"
    columns: [
      {
        column_id: "9876543210"
        title: "Updated Status"
        description: "Updated phase tracking column"
      }
    ]
  ) {
    id
    columns {
      id
      title
      description
    }
  }
}

Argumenty

Argument Typ Opis Wartości enum
columns [UpdateObjectSchemaColumnInput!]! Tablica aktualizacji kolumn do zastosowania w schemacie obiektu.
object_schema_id ID Unikalny identyfikator schematu obiektu. Należy podać object_schema_id albo object_schema_name.
object_schema_name String Nazwa schematu obiektu. Należy podać object_schema_id albo object_schema_name.

Usuwanie kolumn schematu obiektu

Usuwa kolumny ze schematu obiektu konta. Zwraca ObjectSchema. Kolumny można usunąć tylko wtedy, gdy ze schematem obiektu nie są połączone żadne tablice.

Dostępne tylko w wersji API dev (eksperymentalnej)

mutation {
  delete_object_schema_columns(
    object_schema_id: "1234567890"
    column_ids: ["9876543210", "1122334455"]
  ) {
    id
    columns {
      id
      title
    }
  }
}

Argumenty

Argument Typ Opis Wartości enum
column_ids [ID!]! Tablica identyfikatorów kolumn do usunięcia ze schematu obiektu.
object_schema_id ID Unikalny identyfikator schematu obiektu. Należy podać object_schema_id albo object_schema_name.
object_schema_name String Nazwa schematu obiektu. Należy podać object_schema_id albo object_schema_name.

Ustawianie stanu aktywności kolumny schematu obiektu

Dezaktywuje lub ponownie aktywuje kolumnę w schemacie obiektu konta. Zwraca ObjectSchema. Użyj DEACTIVATE, aby oznaczyć kolumnę jako wycofywaną, lub REACTIVATE, aby ją przywrócić.

mutation {
  set_object_schema_column_active_state(
    object_schema_id: "1234567890"
    column_id: "9876543210"
    action: DEACTIVATE
  ) {
    id
    columns {
      id
      title
      tags {
        deprecated
      }
    }
  }
}

Argumenty

Argument Typ Opis Wartości enum
action ColumnActiveStateAction! Akcja do wykonania na kolumnie. DEACTIVATE (oznacza kolumnę jako wycofywaną)
REACTIVATE (przywraca wycofaną kolumnę)
column_id ID! Unikalny identyfikator kolumny do dezaktywowania lub ponownego aktywowania.
object_schema_id ID Unikalny identyfikator schematu obiektu. Należy podać object_schema_id albo object_schema_name.
object_schema_name String Nazwa schematu obiektu. Należy podać object_schema_id albo object_schema_name.

Zbiorcze akcje dotyczące kolumn schematu obiektu

Wykonuje wiele akcji dotyczących kolumn schematu obiektu konta w jednym żądaniu. Zwraca [ObjectSchemaActionResult]. Akcje są wykonywane kolejno, w podanej kolejności. Jeśli dowolna akcja się nie powiedzie, wykonywanie zostaje przerwane i zwracany jest błąd. Każdy typ akcji może wystąpić w żądaniu najwyżej raz.

mutation {
  bulk_object_schema_column_actions(
    object_schema_id: "1234567890"
    actions: [
      {
        action: CREATE_OBJECT_SCHEMA_COLUMNS
        create_object_schema_columns: {
          columns: [
            {
              type: text
              title: "Notes"
              policy: { can_override: [title, description], cannot_delete: false }
            }
          ]
        }
      },
      {
        action: UPDATE_OBJECT_SCHEMA_COLUMNS
        update_object_schema_columns: {
          columns: [
            {
              column_id: "9876543210"
              title: "Updated Status"
            }
          ]
        }
      }
    ]
  ) {
    action
    object_schema {
      id
      columns {
        id
        title
      }
    }
  }
}

Argumenty

Argument Typ Opis Wartości enum
actions [ObjectSchemaActionInput!]! Tablica akcji do wykonania kolejno na kolumnach schematu obiektu.
object_schema_id ID Unikalny identyfikator schematu obiektu. Należy podać object_schema_id albo object_schema_name.
object_schema_name String Nazwa schematu obiektu. Należy podać object_schema_id albo object_schema_name.

Łączenie tablicy ze schematem obiektu

Łączy tablicę ze schematem obiektu, dzięki czemu tablica dziedziczy definicje jego kolumn. Zwraca BoardConnection.

mutation {
  connect_board_to_object_schema(
    board_id: "1234567890"
    object_schema_id: "9876543210"
  ) {
    id
    object_schema_id
  }
}

Argumenty

Argument Typ Opis Wartości enum
board_id ID! Unikalny identyfikator tablicy do połączenia ze schematem obiektu.
object_schema_id ID Unikalny identyfikator schematu obiektu. Należy podać object_schema_id albo object_schema_name.
object_schema_name String Nazwa schematu obiektu. Należy podać object_schema_id albo object_schema_name.

Odłączanie tablic od schematu obiektu

Odłącza co najmniej jedną tablicę od jej schematu obiektu. Zwraca [BulkDetachBoardResult].

mutation {
  detach_boards_from_object_schema(
    board_ids: ["1234567890", "9876543210"]
  ) {
    board_id
    success
    error
  }
}

Argumenty

Argument Typ Opis
board_ids [ID!]! Tablica identyfikatorów tablic do odłączenia od schematów obiektów.