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
You can use the views query to retrieve app data via the API.
- Returns an array containing metadata about a collection of board views
- Must be nested inside a
boardsquery
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
You can use the following arguments to reduce the number of results returned in your views query.
| Argument | Description |
|---|---|
ids [ID!] | The specific board IDs to return views for. |
type String | The specific type of views to return. |
Fields
You can use the following fields to specify what information your views query will return.
Field | Description | Enum Values |
|---|---|---|
access_level | The user's board view access level. |
|
filter | The view's filter metadata. Only available in API versions | |
filter_team_id | The team ID the view is filtered by. Only available in API versions | |
filter_user_id | The user ID the view is filtered by. Only available in API versions | |
id | The view's unique identifier. | |
name | The view's name. | |
settings | The view's settings. The structure varies by view type. Only available in API versions | |
settings_str | The view's settings. | |
sort | The view's sort metadata. Only available in API versions | |
source_view_id | The unique identifier of the original view this was duplicated from (if applicable). | |
tags | The view's tags. Only available in API versions | |
type | The view's type. | |
view_specific_data_str | Specific board view data (only supported for forms). |
Mutations
The API allows you to create, update, and delete board views using the following mutations. These operations let you programmatically control a view's full lifecycle.
🚧 These mutations are only available in API versions 2025-10 and later
Create view
Required scope:boards:write
The create_view mutation creates a new board view via the platform API. You can specify which fields to return in the mutation response.
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
You can use the following arguments to define the new board view's characteristics.
Argument | Description | Enum Values | Supported Fields |
|---|---|---|---|
board_id | The board's unique identifier. | ||
filter | The view's filters. | groups | |
filter_user_id | The user ID to filter by. | ||
filter_team_id | The team ID to filter by. | ||
name | The view's name. | ||
settings | The view's type-specific configuration settings. Query | ||
sort | The view's sort order. | column_id | |
tags | The view's tags. | ||
type | The type of view to create. |
|
Create view table
Required scope:boards:write
The create_view_table mutation creates a new table board view via the platform API. You can specify which fields to return in the mutation response.
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
You can use the following arguments to define the new table board view's characteristics.
Argument | Description | Supported Fields |
|---|---|---|
board_id | The board's unique identifier. | |
filter | The table view's filters. | groups |
filter_user_id | The user ID to filter by. | |
filter_team_id | The team ID to filter by. | |
name | The table view's name. | |
settings | The table view's configuration settings. | columns |
sort | The table view's sort order. | column_id |
tags | The table view's tags. |
Update view
Required scope:boards:write
The update_view mutation updates a board view via the platform API. You can specify which fields to return in the mutation response.
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
You can use the following arguments to define the updated board view's characteristics.
Argument | Description | Enum Values | Supported Fields |
|---|---|---|---|
board_id | The board's unique identifier. | ||
filter | The view's filters. | groups | |
filter_user_id | The user ID to filter by. | ||
filter_team_id | The team ID to filter by. | ||
name | The view's name. | ||
settings | The view's type-specific configuration settings. Query | ||
sort | The view's sort order. | column_id | |
tags | The view's tags. | ||
type | The view's type. |
| |
view_id | The view's unique identifier. |
Update view table
Required scope:boards:write
The update_view_table mutation updates a table board view via the platform API. You can specify which fields to return in the mutation response.
mutation {
update_view_table(
board_id: 1234567890
view_id: 54321
settings: {
columns:{
column_properties:{
column_id:"date",
visible: false
}
}
}
) {
id
sort
}
}Arguments
You can use the following arguments to define the updated table board view's characteristics.
Argument | Description | Supported fields |
|---|---|---|
board_id | The board's unique identifier. | |
filter | The table view's filters. | groups |
filter_user_id | The user ID to filter by. | |
filter_team_id | The team ID to filter by. | |
name | The table view's name. | |
settings | The table view's configuration settings. | columns |
sort | The table view's sort order. | column_id |
tags | The table view's tags. | |
view_id | The view's unique identifier. |
Delete view
Required scope:boards:write
The delete_view mutation deletes a board view via the platform API. You can specify which fields to return in the mutation response.
mutation {
delete_view (
board_id: 1234567890
view_id: 54321
) {
name
}
}{
"data": {
"delete_view": {
"name": "Deleted Form"
}
},
"extensions": {
"request_id": "YOUR_REQUEST_ID"
}
}Arguments
You can use the following arguments to specify which board view to delete.
| Argument | Description |
|---|---|
board_id ID! | The board's unique identifier. |
view_id ID! | The view's unique identifier. |
