Reference · Tools

Monday.com

Manage boards, columns, groups, and items in Monday.com via the GraphQL API.

Action Productivity v1

The Monday.com node manages boards, columns, groups and items through the GraphQL API — creating, reading, updating and deleting work items, adjusting board structure, and searching items by column value. A typical build is creating an item on a board when a form is submitted and moving it between groups as its status changes.

Node type
Action
Parameters
50
Outputs
Output, Error
Credentials
Monday.com

Monday.com

Manage boards, columns, groups, and items in Monday.com.

Overview

The Monday.com tool communicates with the Monday.com work management platform via its GraphQL API (POST https://api.monday.com/v2/). It supports managing boards (create, get, get many, archive), board columns (create, get many), board groups (create, delete, get many), and board items (create, get, get many, get by column value, add update, change column value, change multiple column values, move, delete). Authentication uses either a Monday.com API token (v2) or OAuth2 access token. The API-Version header is set to 2023-10. Board listing uses page-based pagination. Item listing uses cursor-based pagination via items_page and next_items_page. JSON column values are validated before sending.

Category: Productivity
Tool Name: monday_com
Version: 1

Appearance: Icon: lucide-LayoutList | Color: #FF3D57

Node Type

Action — processes input items and produces output

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Monday.com credentials. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Boardboard
Board ColumnboardColumn
Board GroupboardGroup
Board ItemboardItem

Operations

Board (board)

OperationValueDescription
ArchivearchiveArchive a board
CreatecreateCreate a new board
GetgetGet a board
Get ManygetAllGet many boards

Board Column (boardColumn)

OperationValueDescription
CreatecreateCreate a new column
Get ManygetAllGet many columns

Board Group (boardGroup)

OperationValueDescription
CreatecreateCreate a group in a board
DeletedeleteDelete a group in a board
Get ManygetAllGet many groups in a board

Board Item (boardItem)

OperationValueDescription
Add UpdateaddUpdateAdd an update to an item
Change Column ValuechangeColumnValueChange a column value for a board item
Change Multiple Column ValueschangeMultipleColumnValuesChange multiple column values for a board item
CreatecreateCreate an item in a board’s group
DeletedeleteDelete an item
GetgetGet an item
Get By Column ValuegetByColumnValueGet items by column value
Get ManygetAllGet many items
MovemoveMove item to group

Parameters

Board: Archive

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board. Find in Monday.com: click board > look at URL for the board ID number. Supports expressions.

Board: Create

ParameterTypeRequiredDefaultDescription
Name (name)stringYesThe board’s name. Supports expressions.
KindoptionsYesThe board’s kind (public / private / share).
Options: share, public, private
Additional Fields (additionalFields)collectionNo{}Optional extra settings applied when the board is created.
— Template IDnumberNo0Optional board template ID to clone from.

Board: Get

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board. Supports expressions.

Board: Get Many

ParameterTypeRequiredDefaultDescription
Return All (returnAll)booleanNofalseWhether to return all results or only up to a given limit.
Limit (limit)numberNo50Max number of results to return. Accepts 1–100. (shown when Return All is false)

Board Column: Create

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board to add a column to. Supports expressions.
TitlestringYesThe title for the new column. Supports expressions.
Column TypeoptionsYesThe type of column to create.
Options: checkbox, country, date, dropdown, email, hour, Link, longText, numbers, people, person, phone, rating, status, tags, team, text, timeline, timezone, week, worldClock
Additional Fields (additionalFields)collectionNo{}Optional extra settings applied when the column is created.
— DefaultsjsonNoThe new column’s defaults as a JSON string.

Board Column: Get Many

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board to get columns from. Supports expressions.

Board Group: Create

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board to add a group to. Supports expressions.
Name (name)stringYesThe name of the group to create. Supports expressions.

Board Group: Delete

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board containing the group. Supports expressions.
Group ID (groupId)stringYesThe unique identifier of the group to delete. Find by listing groups for the board. Supports expressions.

Board Group: Get Many

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board to get groups from. Supports expressions.

Board Item: Add Update

ParameterTypeRequiredDefaultDescription
Item ID (itemId)stringYesThe unique identifier of the item to add an update to. Supports expressions.
Update TextstringYesThe update text to add to the item. Supports expressions.

Board Item: Change Column Value

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board. Supports expressions.
Item ID (itemId)stringYesThe unique identifier of the item to change column of. Supports expressions.
Column ID (columnId)stringYesThe column’s unique identifier. Find by listing columns for the board. Supports expressions.
ValuejsonYesThe column value in JSON format. See Monday.com API docs for column value formats: https://developer.monday.com/api-reference/docs/column-values-v2

Board Item: Change Multiple Column Values

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board. Supports expressions.
Item ID (itemId)stringYesThe item’s unique identifier. Supports expressions.
Column ValuesjsonYesThe column fields and values in JSON format (object of column_id:value pairs). See Monday.com API docs for column value formats.

Board Item: Create

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board to create the item in. Supports expressions.
Group ID (groupId)stringYesThe unique identifier of the group to create the item in. Find by listing groups for the board. Supports expressions.
Name (name)stringYesThe new item’s name. Supports expressions.
Additional Fields (additionalFields)collectionNo{}Optional extra settings applied when the item is created.
— Column ValuesjsonNoThe column values of the new item as a JSON string.

Board Item: Delete

ParameterTypeRequiredDefaultDescription
Item ID (itemId)stringYesThe item’s unique identifier. Supports expressions.

Board Item: Get

ParameterTypeRequiredDefaultDescription
Item ID (itemId)stringYesItem’s ID. Multiple can be added separated by comma. Supports expressions.

Board Item: Get Many

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board. Supports expressions.
Group ID (groupId)stringYesThe unique identifier of the group. Find by listing groups for the board. Supports expressions.
Return All (returnAll)booleanNofalseWhether to return all results or only up to a given limit.
Limit (limit)numberNo50Max number of results to return. Accepts 1–100. (shown when Return All is false)

Board Item: Get By Column Value

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board. Supports expressions.
Column ID (columnId)stringYesThe column’s unique identifier to search by. Find by listing columns for the board. Supports expressions.
Column ValuestringYesThe column value to search items by. Supports expressions.
Return All (returnAll)booleanNofalseWhether to return all results or only up to a given limit.
Limit (limit)numberNo50Max number of results to return. Accepts 1–100. (shown when Return All is false)

Board Item: Move

ParameterTypeRequiredDefaultDescription
Board ID (boardId)stringYesThe unique identifier of the board (used to look up groups). Supports expressions.
Item ID (itemId)stringYesThe item’s unique identifier. Supports expressions.
Group ID (groupId)stringYesThe unique identifier of the target group to move the item to. Supports expressions.

All Operations

ParameterTypeRequiredDefaultDescription
Max ConcurrencynumberNo10Maximum number of items to process concurrently. Accepts 1–100.

Output Data

The Monday.com response is merged into the item JSON at the top level: the incoming fields pass straight through and the response’s fields are written over them. Binary data on the input item is forwarded unchanged.

Reading operations fan out. Board: Get, Board: Get Many, Board Column: Get Many, Board Group: Get Many, Board Item: Get, Board Item: Get Many and Board Item: Get By Column Value return a list and emit one output item per record. When that list comes back empty, one output item is still emitted, carrying _noResults: true next to the passed-through input fields — check for it before treating the branch as real results. Every other operation emits exactly one output item per input item.

Resource: OperationFields merged onto the item
Board: Archive, Board: Createid
Board: Get, Board: Get Manyid, name, description, state, board_folder_id, board_kind, owners
Board Column: Createid
Board Column: Get Manyid, title, type, settings_str, archived
Board Group: Create, Board Group: Deleteid
Board Group: Get Manyid, title, color, position, archived
Board Item: Add Update, Change Column Value, Change Multiple Column Values, Create, Delete, Moveid
Board Item: Get, Board Item: Get Manyid, name, created_at, state, column_values
Board Item: Get By Column Valueid, name, created_at, state, board, column_values

Each entry in column_values carries id, text, type, value and a nested column with title, archived, description and settings_str.

Reference the result downstream by expression, e.g. {{ $json.id }}.

Usage Examples

  • Create a new board in Monday.com
  • Get all items from a Monday.com board group
  • Create a new item in a Monday.com board
  • Change column values for a Monday.com item
  • Search Monday.com items by column value
  • Move a Monday.com item to a different group
  • Archive a Monday.com board
  • Add an update (comment) to a Monday.com item

Example Configuration

Create a new board, cloned from a template:

{
  "type": "monday_com",
  "parameters": {
    "resource": "board",
    "operation": "create",
    "name": "Marketing Campaign Board",
    "kind": "public",
    "additionalFields": {
      "templateId": 123
    }
  }
}

Get boards, capped at 50:

{
  "type": "monday_com",
  "parameters": {
    "resource": "board",
    "operation": "getAll",
    "returnAll": false,
    "limit": 50
  }
}

Archive a board:

{
  "type": "monday_com",
  "parameters": {
    "resource": "board",
    "operation": "archive",
    "boardId": "123456789"
  }
}

Create a status column with its labels preset. Defaults is a JSON string, so the braces are escaped:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardColumn",
    "operation": "create",
    "boardId": "123456789",
    "title": "Project Status",
    "columnType": "status",
    "additionalFields": {
      "defaults": "{\"labels\":{\"0\":\"Not Started\",\"1\":\"In Progress\",\"2\":\"Complete\"}}"
    }
  }
}

List every column on a board — useful for discovering the column IDs the item operations need:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardColumn",
    "operation": "getAll",
    "boardId": "123456789"
  }
}

Create a group:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardGroup",
    "operation": "create",
    "boardId": "123456789",
    "name": "Q1 Tasks"
  }
}

Delete a group:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardGroup",
    "operation": "delete",
    "boardId": "123456789",
    "groupId": "group_12345"
  }
}

Create an item with its column values already filled in:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "create",
    "boardId": "123456789",
    "groupId": "group_12345",
    "name": "Design Homepage Mockup",
    "additionalFields": {
      "columnValues": "{\"status\":{\"label\":\"In Progress\"},\"date4\":{\"date\":\"2024-03-15\"}}"
    }
  }
}

Change a single column value:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "changeColumnValue",
    "boardId": "123456789",
    "itemId": "987654321",
    "columnId": "status",
    "value": "{\"label\":\"Complete\"}"
  }
}

Change several column values in one call:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "changeMultipleColumnValues",
    "boardId": "123456789",
    "itemId": "987654321",
    "columnValues": "{\"status\":{\"label\":\"Complete\"},\"date4\":{\"date\":\"2024-03-20\"},\"numbers\":100}"
  }
}

Find every item whose status column reads “In Progress”:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "getByColumnValue",
    "boardId": "123456789",
    "columnId": "status",
    "columnValue": "In Progress",
    "returnAll": true
  }
}

Post an update (comment) on an item:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "addUpdate",
    "itemId": "987654321",
    "value": "Completed the initial design review. Moving to development phase."
  }
}

Setting up a new project board takes four nodes in sequence. First create the board:

{
  "type": "monday_com",
  "parameters": {
    "resource": "board",
    "operation": "create",
    "name": "Website Redesign Project",
    "kind": "private"
  }
}

Then add the custom columns you need:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardColumn",
    "operation": "create",
    "boardId": "123456789",
    "title": "Priority",
    "columnType": "status"
  }
}

Then create the groups that will hold the work:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardGroup",
    "operation": "create",
    "boardId": "123456789",
    "name": "Design Phase"
  }
}

Finally add the tasks to a group:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "create",
    "boardId": "123456789",
    "groupId": "group_12345",
    "name": "Create wireframes"
  }
}

Read a page of items out of one group:

{
  "type": "monday_com",
  "parameters": {
    "resource": "boardItem",
    "operation": "getAll",
    "boardId": "123456789",
    "groupId": "group_12345",
    "returnAll": false,
    "limit": 100
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Manages Monday.com boards, columns, groups, and items via GraphQL API — create, read, update, and delete work items, manage board structure, and search items by column values.

Parameter Dependencies

  • limit only appears when returnAll is set to false
  • additionalFields structure varies by operation type
  • Column value formats must follow Monday.com API specifications for JSON fields
  • Board IDs, group IDs, and column IDs must be obtained from previous API calls or the Monday.com interface

Frequently asked questions

When does the Limit field appear?

Only when Return All is off. With Return All on the node fetches everything and there is nothing to limit.

Where do I get board, group and column IDs?

From previous API calls or the Monday.com interface. They are not guessable, so most workflows fetch them once and reference the values rather than hard-coding.

How should column values be formatted?

Following Monday.com's API specifications for JSON column values — each column type has its own expected shape, and a mismatched shape is rejected.

Does Additional Fields have a fixed structure?

No, its structure varies by operation type, so check what applies to the operation you selected rather than reusing a shape from a different one.

Build with the Monday.com node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Monday.com credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.