Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Monday.com connector

OAuth 2.0Project ManagementCollaborationProductivity

Connect to Monday.com. Manage boards, tasks, workflows, teams, and project collaboration

Monday.com connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Register your Monday.com credentials with Scalekit so it handles the token lifecycle. You do this once per environment.

    Dashboard setup steps

    Register your Scalekit environment with the Monday.com connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. You’ll need your app credentials from the Monday.com Developer Center.

    1. Set up auth redirects

      • In Scalekit dashboard, go to AgentKit > Connections > Create Connection.

      • Find Monday.com from the list of providers and click Create. Copy the redirect URI. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

        Copy redirect URI from Scalekit dashboard

      • In the Monday.com Developer Center, open your app and go to the OAuth tab.

      • Add the copied URI under Redirect URLs and save.

        Add redirect URL in Monday.com Developer Center

    2. Get client credentials

      • In the Monday.com Developer Center, open your app and go to the Basic Information tab:
        • Client ID — listed under Client ID
        • Client Secret — listed under Client Secret
    3. Add credentials in Scalekit

      • In Scalekit dashboard, go to AgentKit > Connections and open the connection you created.

      • Enter your credentials:

        • Client ID (from your Monday.com app)
        • Client Secret (from your Monday.com app)
        • Permissions — select the scopes your app needs (see Monday.com OAuth scopes)

        Add credentials in Scalekit dashboard

      • Click Save.

  4. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'monday'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Monday:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first API call through the proxy
    const result = await actions.request({
    connectionName: connector,
    identifier,
    path: '/v2',
    method: 'POST',
    body: JSON.stringify({ query: '{ boards (limit: 5) { id name } }' }),
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Manage boards — create, update, archive, duplicate, and delete boards across workspaces
  • Manage items — create, update, move, duplicate, archive, and delete items (rows) on any board
  • Update column values — set single or multiple column values including status, date, people, and custom types
  • Manage groups — create, rename, reorder, duplicate, archive, and delete groups within a board
  • Post updates — add, edit, and delete comments and activity updates on items
  • Manage structure — create and delete columns, manage subitems, webhooks, workspaces, teams, and tags
Proxy API call
const result = await actions.request({
connectionName: 'monday',
identifier: 'user_123',
path: '/v2',
method: 'POST',
body: JSON.stringify({ query: '{ boards (limit: 5) { id name } }' }),
});
console.log(result);
Execute a tool
const result = await actions.executeTool({
connector: 'monday',
identifier: 'user_123',
toolName: 'monday_list',
toolInput: {},
});
console.log(result);

Most Monday.com tools require one or more resource IDs. Run list/read tools first to discover real IDs — never guess them.

ResourceTool to get IDField in response
Board IDmonday_boards_listdata.boards[].id
Item IDmonday_items_list (requires board_id)data.boards[].items_page.items[].id
Group IDmonday_items_listdata.boards[].items_page.items[].group.id
Column IDmonday_items_listdata.boards[].items_page.items[].column_values[].id
User IDmonday_users_list or monday_me_getdata.users[].id / data.me.id
Workspace IDmonday_workspaces_listdata.workspaces[].id
Update IDmonday_updates_listdata.updates[].id
Tag IDmonday_tags_listdata.tags[].id
Team IDmonday_teams_listdata.teams[].id
Webhook IDmonday_webhooks_list (requires board_id)data.webhooks[].id
Doc IDmonday_docs_listdata.docs[].id
Subitem IDmonday_subitem_create responsedata.create_subitem.id

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

monday_board_archive#Archive a board in Monday.com.1 param

Archive a board in Monday.com.

NameTypeRequiredDescription
board_idstringrequiredID of the board to archive
monday_board_create#Create a new board in Monday.com.6 params

Create a new board in Monday.com.

NameTypeRequiredDescription
board_kindstringrequiredBoard type: public, private, or share
board_namestringrequiredName for the new board
descriptionstringoptionalDescription for the board
folder_idintegeroptionalFolder ID to place the board in
template_idintegeroptionalTemplate ID to base the board on
workspace_idintegeroptionalID of the workspace to create the board in
monday_board_delete#Permanently delete a board from Monday.com.1 param

Permanently delete a board from Monday.com.

NameTypeRequiredDescription
board_idstringrequiredID of the board to delete
monday_board_duplicate#Create a copy of an existing board.5 params

Create a copy of an existing board.

NameTypeRequiredDescription
board_idstringrequiredID of the board to duplicate
duplicate_typestringrequiredWhat to duplicate: duplicate_board_with_structure, duplicate_board_with_pulses, or duplicate_board_with_pulses_and_updates
board_namestringoptionalName for the duplicated board
keep_subscribersbooleanoptionalWhether to keep board subscribers
workspace_idstringoptionalDestination workspace ID
monday_board_subscribers_add#Subscribe users to a board so they receive notifications.3 params

Subscribe users to a board so they receive notifications.

NameTypeRequiredDescription
board_idstringrequiredID of the board to add subscribers to
user_idsarrayrequiredArray of user IDs to subscribe
kindstringoptionalRole: subscriber or owner
monday_board_update#Update a board's name, description, or communication settings.3 params

Update a board's name, description, or communication settings.

NameTypeRequiredDescription
board_attributestringrequiredAttribute to update: name, description, or communication
board_idstringrequiredID of the board to update
new_valuestringrequiredNew value for the attribute
monday_boards_list#Retrieve a list of boards from your Monday.com account with optional filtering.6 params

Retrieve a list of boards from your Monday.com account with optional filtering.

NameTypeRequiredDescription
board_kindstringoptionalFilter by kind: public, private, share
limitintegeroptionalNumber of boards to return (default 10)
order_bystringoptionalSort order: created_at or used_at
pageintegeroptionalPage number for pagination
statestringoptionalFilter by state: active, archived, deleted, all
workspace_idsarrayoptionalFilter by workspace IDs
monday_column_create#Add a new column to a Monday.com board.6 params

Add a new column to a Monday.com board.

NameTypeRequiredDescription
board_idstringrequiredID of the board to add the column to
column_typestringrequiredColumn type: text, long_text, numbers, status, dropdown, date, timeline, people, checkbox, email, phone, link, file, color_picker, rating, time_tracking, formula, auto_number, etc.
titlestringrequiredTitle/name for the new column
after_column_idstringoptionalColumn ID to insert this column after
defaultsstringoptionalJSON of default settings for the column
descriptionstringoptionalOptional description for the column
monday_column_delete#Permanently delete a column from a board.2 params

Permanently delete a column from a board.

NameTypeRequiredDescription
board_idstringrequiredID of the board
column_idstringrequiredID of the column to delete
monday_column_title_change#Rename a column on a board.3 params

Rename a column on a board.

NameTypeRequiredDescription
board_idstringrequiredID of the board
column_idstringrequiredID of the column to rename
titlestringrequiredNew title for the column
monday_docs_list#List documents (monday Docs) in your account.4 params

List documents (monday Docs) in your account.

NameTypeRequiredDescription
idsarrayoptionalFilter by specific doc IDs
limitintegeroptionalNumber of docs to return
pageintegeroptionalPage number for pagination
workspace_idsarrayoptionalFilter by workspace IDs
monday_group_archive#Archive a group on a board.2 params

Archive a group on a board.

NameTypeRequiredDescription
board_idstringrequiredID of the board
group_idstringrequiredID of the group to archive
monday_group_create#Create a new group on a Monday.com board.4 params

Create a new group on a Monday.com board.

NameTypeRequiredDescription
board_idstringrequiredID of the board to add the group to
group_namestringrequiredName of the group to create
position_relative_methodstringoptionalPositioning: before_at or after_at
relative_tostringoptionalGroup ID to position this group relative to
monday_group_delete#Permanently delete a group from a board.2 params

Permanently delete a group from a board.

NameTypeRequiredDescription
board_idstringrequiredID of the board
group_idstringrequiredID of the group to delete
monday_group_duplicate#Create a copy of a group on a board.3 params

Create a copy of a group on a board.

NameTypeRequiredDescription
board_idstringrequiredID of the board
group_idstringrequiredID of the group to duplicate
add_to_topbooleanoptionalWhether to add the duplicate at the top of the board
monday_group_update#Update a group's name, color, or position on a board.4 params

Update a group's name, color, or position on a board.

NameTypeRequiredDescription
attributestringrequiredAttribute to update: title or color
board_idstringrequiredID of the board
group_idstringrequiredID of the group to update
new_valuestringrequiredNew value for the attribute
monday_item_archive#Archive an item on a Monday.com board.1 param

Archive an item on a Monday.com board.

NameTypeRequiredDescription
item_idstringrequiredID of the item to archive
monday_item_column_value_change#Update the value of a single column on an item.5 params

Update the value of a single column on an item.

NameTypeRequiredDescription
board_idstringrequiredID of the board the item belongs to
column_idstringrequiredID of the column to update (e.g., status, date4, text)
item_idstringrequiredID of the item to update
valuestringrequiredNew value as a JSON string. Format varies by column type.
create_labels_if_missingbooleanoptionalAuto-create labels if they don't exist
monday_item_column_values_change#Update multiple column values on an item in a single request (up to 50 columns).4 params

Update multiple column values on an item in a single request (up to 50 columns).

NameTypeRequiredDescription
board_idstringrequiredID of the board the item belongs to
column_valuesstringrequiredJSON object mapping column IDs to their new values
item_idstringrequiredID of the item to update
create_labels_if_missingbooleanoptionalAuto-create labels if they don't exist
monday_item_create#Create a new item (row) on a Monday.com board.5 params

Create a new item (row) on a Monday.com board.

NameTypeRequiredDescription
board_idstringrequiredID of the board to create the item on
item_namestringrequiredName of the item to create
column_valuesstringoptionalJSON string of column values to set
create_labels_if_missingbooleanoptionalAuto-create status/dropdown labels if they don't exist
group_idstringoptionalID of the group to add the item to
monday_item_delete#Permanently delete an item from a Monday.com board.1 param

Permanently delete an item from a Monday.com board.

NameTypeRequiredDescription
item_idstringrequiredID of the item to delete
monday_item_duplicate#Create a copy of an item on the same board.3 params

Create a copy of an item on the same board.

NameTypeRequiredDescription
board_idstringrequiredID of the board the item belongs to
item_idstringrequiredID of the item to duplicate
with_updatesbooleanoptionalWhether to copy the item's updates/comments
monday_item_move_to_board#Transfer an item to a different board.4 params

Transfer an item to a different board.

NameTypeRequiredDescription
board_idstringrequiredID of the destination board
group_idstringrequiredID of the group on the destination board
item_idstringrequiredID of the item to move
columns_mappingstringoptionalJSON array mapping source column IDs to destination column IDs
monday_item_move_to_group#Move an item to a different group on the same board.2 params

Move an item to a different group on the same board.

NameTypeRequiredDescription
group_idstringrequiredID of the destination group
item_idstringrequiredID of the item to move
monday_items_list#Retrieve items from a Monday.com board. Returns items with their column values, group, and creator details.4 params

Retrieve items from a Monday.com board. Returns items with their column values, group, and creator details.

NameTypeRequiredDescription
board_idstringrequiredID of the board to list items from
cursorstringoptionalPagination cursor from a previous response
group_idstringoptionalFilter by group ID
limitintegeroptionalNumber of items to return per page (max 500)
monday_me_get#Retrieve the profile of the currently authenticated Monday.com user.0 params

Retrieve the profile of the currently authenticated Monday.com user.

monday_notification_create#Send a notification to a user in Monday.com.4 params

Send a notification to a user in Monday.com.

NameTypeRequiredDescription
target_idstringrequiredID of the target item or board for context
target_typestringrequiredTarget type: Project (board) or Post (item)
textstringrequiredNotification message text
user_idstringrequiredID of the user to notify
monday_subitem_create#Create a subitem (child item) under a parent item.4 params

Create a subitem (child item) under a parent item.

NameTypeRequiredDescription
item_namestringrequiredName of the subitem
parent_item_idstringrequiredID of the parent item
column_valuesstringoptionalJSON object of column values to set on creation
create_labels_if_missingbooleanoptionalAuto-create labels if they don't exist
monday_tag_create_or_get#Create a new tag or retrieve an existing one by name.2 params

Create a new tag or retrieve an existing one by name.

NameTypeRequiredDescription
tag_namestringrequiredName of the tag to create or retrieve
board_idstringoptionalID of the board to associate the tag with
monday_tags_list#Retrieve tags from Monday.com.1 param

Retrieve tags from Monday.com.

NameTypeRequiredDescription
idsarrayoptionalFilter by specific tag IDs
monday_team_users_add#Add one or more users to a Monday.com team.2 params

Add one or more users to a Monday.com team.

NameTypeRequiredDescription
team_idstringrequiredID of the team to add users to
user_idsarrayrequiredArray of user IDs to add to the team
monday_team_users_remove#Remove one or more users from a Monday.com team.2 params

Remove one or more users from a Monday.com team.

NameTypeRequiredDescription
team_idstringrequiredID of the team to remove users from
user_idsarrayrequiredArray of user IDs to remove from the team
monday_teams_list#List teams in your Monday.com account.1 param

List teams in your Monday.com account.

NameTypeRequiredDescription
idsarrayoptionalFilter by specific team IDs
monday_update_create#Post a comment or update on a Monday.com item.2 params

Post a comment or update on a Monday.com item.

NameTypeRequiredDescription
bodystringrequiredContent of the update/comment (HTML supported)
item_idstringrequiredID of the item to post the update on
monday_update_delete#Delete an update/comment from an item.1 param

Delete an update/comment from an item.

NameTypeRequiredDescription
idstringrequiredID of the update to delete
monday_update_edit#Edit the text of an existing update/comment.2 params

Edit the text of an existing update/comment.

NameTypeRequiredDescription
bodystringrequiredNew content for the update
idstringrequiredID of the update to edit
monday_updates_list#Retrieve updates (comments/activity posts) from Monday.com.3 params

Retrieve updates (comments/activity posts) from Monday.com.

NameTypeRequiredDescription
item_idstringoptionalFilter updates by item ID
limitintegeroptionalNumber of updates to return
pageintegeroptionalPage number for pagination
monday_users_list#List users in your Monday.com account.7 params

List users in your Monday.com account.

NameTypeRequiredDescription
emailsarrayoptionalFilter by email addresses
idsarrayoptionalFilter by specific user IDs
kindstringoptionalUser kind: all, non_guests, guests, non_pending
limitintegeroptionalNumber of users to return
namestringoptionalFilter by name (partial match)
newest_firstbooleanoptionalSort newest users first
pageintegeroptionalPage number for pagination
monday_webhook_create#Register a new webhook for a board event.4 params

Register a new webhook for a board event.

NameTypeRequiredDescription
board_idstringrequiredID of the board to watch
eventstringrequiredEvent to trigger on: change_column_value, create_item, delete_item, create_update, change_status_column_value, change_subitem_column_value, create_subitem, move_item_to_group, etc.
urlstringrequiredURL to send webhook payloads to
configstringoptionalOptional JSON configuration for the event (e.g., specific column filter)
monday_webhook_delete#Delete a webhook registration.1 param

Delete a webhook registration.

NameTypeRequiredDescription
idstringrequiredID of the webhook to delete
monday_webhooks_list#List all webhooks registered for a board.2 params

List all webhooks registered for a board.

NameTypeRequiredDescription
board_idstringrequiredID of the board to list webhooks for
app_webhooks_onlybooleanoptionalReturn only webhooks created by the current app
monday_workspace_create#Create a new workspace in Monday.com.3 params

Create a new workspace in Monday.com.

NameTypeRequiredDescription
kindstringrequiredWorkspace type: open or closed
namestringrequiredName for the new workspace
descriptionstringoptionalOptional description for the workspace
monday_workspaces_list#List all workspaces in your Monday.com account.5 params

List all workspaces in your Monday.com account.

NameTypeRequiredDescription
idsarrayoptionalFilter by specific workspace IDs
kindstringoptionalWorkspace kind: open or closed
limitintegeroptionalNumber of workspaces to return
pageintegeroptionalPage number for pagination
statestringoptionalWorkspace state: all, active, archived, deleted