Views

Learn how to read, create, update, and delete monday.com board views using the platform API

monday.com board views allow you to visualize your board data differently through colors, shapes, and graphs.

Queries

Get views

  • Returns an array containing metadata about a collection of board views
  • Must be nested inside a boards query
query {
  boards(
    ids: [1234567890]
	) {
    views {
      type
      settings_str
      view_specific_data_str
      name
      id
    }
  }
}
import { ApiClient } from "@mondaydotcomorg/api";
const mondayApiClient = new ApiClient({ token: myToken });

const query = `query ($board: [ID!]) { boards (ids: $board) { views { id name type } } }`
const variables = {
  board: 1234567
}
const response = await mondayApiClient.request(query, variables);

Arguments

ArgumentTypeDescription
ids[ID!]The specific board IDs to return views for.
typeStringThe specific type of views to return.

Fields

FieldTypeDescriptionEnum Values
access_levelBoardViewAccessLevel!The user's board view access level.edit
view
filterJSONThe view's filter metadata.
filter_team_idIntThe team ID the view is filtered by.
filter_user_idIntThe user ID the view is filtered by.
idID!The view's unique identifier.
nameString!The view's name.
settingsJSONThe view's settings. The structure varies by view type.
settings_strString!The view's settings.
sortJSONThe view's sort metadata.
source_view_idIDThe unique identifier of the original view this was duplicated from (if applicable).
tags[String!]The view's tags.
typeString!The view's type.
view_specific_data_strString!Specific board view data (only supported for forms).

Mutations

Required scope:boards:write

Create view

Creates a new board view. Returns BoardView.

mutation {
  create_view(
    board_id: 1234567890
    type: APP
    name: "My app view"
    settings: {
      app_feature_id: 54321
    }
  ) {
    id
    name
  }
}
{
  "data": {
    "create_view": {
      "id": "9876543210",
      "name": "My app view"
    }
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}

Arguments

ArgumentTypeDescriptionEnum Values
board_idID!The board's unique identifier.
filterItemsQueryGroupThe view's filters.
filter_user_idIDThe user ID to filter by.
filter_team_idIDThe team ID to filter by.
nameStringThe view's name.
settingsJSONThe view's type-specific configuration settings. Query get_view_schema_by_type to see available properties.
sort[ItemsQueryOrderBy!]The view's sort order.
tags[String!]The view's tags.
typeViewKind!The type of view to create.APP
DASHBOARD
FORM
TABLE

Create view table

Creates a new table board view. Returns BoardView.

mutation {
  create_view_table(
    board_id: 1234567890
    name: "My new table view"
  ) {
    id
    name
  }
} 
{
  "data": {
    "create_view_table": {
      "id": "9876543210",
      "name": "My new table view"
    }
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}

Arguments

ArgumentTypeDescription
board_idID!The board's unique identifier.
filterItemsQueryGroupThe table view's filters.
filter_user_idIDThe user ID to filter by.
filter_team_idIDThe team ID to filter by.
nameStringThe table view's name.
settingsTableViewSettingsInputThe table view's configuration settings.
sort[ItemsQueryOrderBy!]The table view's sort order.
tags[String!]The table view's tags.

Update view

Updates a board view. Returns BoardView.

mutation {
  update_view(
    board_id: 1234567890
    view_id: 54321
    sort: {
      column_id: "name"
      direction: asc
    }
    type:TABLE
  ) {
    id
    sort
  }
}
{
  "data": {
    "update_view": {
      "id": "54321",
      "sort": [
        {
          "column_id": "name",
          "direction": "ASC"
        }
      ]
    }
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}

Arguments

ArgumentTypeDescriptionEnum Values
board_idID!The board's unique identifier.
filterItemsQueryGroupThe view's filters.
filter_user_idIDThe user ID to filter by.
filter_team_idIDThe team ID to filter by.
nameStringThe view's name.
settingsJSONThe view's type-specific configuration settings. Query get_view_schema_by_type to see available properties.
sort[ItemsQueryOrderBy!]The view's sort order.
tags[String!]The view's tags.
typeViewKind!The view's type.APP
DASHBOARD
FORM
TABLE
view_idID!The view's unique identifier.

Update view table

Updates a table board view. Returns BoardView.

mutation {
  update_view_table(
    board_id: 1234567890
    view_id: 54321
    settings: {
      columns:{
        column_properties:{
          column_id:"date",
          visible: false
        }
      }
    }
  ) {
    id
    sort
  }
}

Arguments

ArgumentTypeDescription
board_idID!The board's unique identifier.
filterItemsQueryGroupThe table view's filters.
filter_user_idIDThe user ID to filter by.
filter_team_idIDThe team ID to filter by.
nameStringThe table view's name.
settingsTableViewSettingsInputThe table view's configuration settings.
sort[ItemsQueryOrderBy!]The table view's sort order.
tags[String!]The table view's tags.
view_idID!The view's unique identifier.

Delete view

Deletes a board view. Returns BoardView.

mutation {
  delete_view(
    board_id: 1234567890
    view_id: 54321
  ) {
    name
  }
}
{
  "data": {
    "delete_view": {
      "name": "Deleted Form"
    }
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}

Arguments

ArgumentTypeDescription
board_idID!The board's unique identifier.
view_idID!The view's unique identifier.