DEV Community

Pirate Prentice
Pirate Prentice

Posted on

n8n Monday.com Node: Automate Boards, Items, and Updates [Free Workflow JSON]

n8n Monday.com Node: Automate Boards, Items, and Updates [Free Workflow JSON]

Monday.com is one of the most popular project management and work OS platforms, and n8n's Monday.com node lets you create boards, add items, update columns, and post updates programmatically. This guide covers every operation, the unique gotchas of Monday's GraphQL-based API, and three workflow patterns ready to import.


What the Monday.com Node Does

The n8n Monday.com node exposes four primary resources:

Resource Operations
Board Archive, Create, Get, Get All
Board Column Create, Get All
Board Group Create, Delete, Get All
Board Item Create, Create (From Template), Delete, Get, Get All, Get By Column Value, Move to Group, Update
Board Subscriber Add, Delete, Get All
Board Update Create, Delete, Get All

Authentication: Monday.com API Token (v2). Find it in Monday.com → Profile Picture (bottom-left) → Developers → My Access Tokens → Show.


Setting Up the Credential

  1. In Monday.com, click your avatar (bottom-left) → Developers → My Access Tokens
  2. Click Show to reveal your personal API token
  3. In n8n, add a Monday.com credential and paste the token

For team use, create a service account user in Monday and use its token so actions are attributed to "n8n Bot" rather than a personal user.


Key Operations

Board Item (the Core Resource)

Board Items are the rows in your Monday boards. Most workflows center on these.

Create Item — adds a new row to a board:

  • boardId: the numeric board ID (from the URL: monday.com/boards/1234567890)
  • groupId: which group (column/section) to add the item to
  • name: the item's display name
  • columnValues (JSON): values for each column

Column Values use a JSON object with column IDs as keys. Column IDs are the short lowercase strings visible in column settings. Example:

{
  "status": {"label": "Working on it"},
  "date4": {"date": "2026-07-21"},
  "person": {"personsAndTeams": [{"id": 12345678, "kind": "person"}]},
  "text0": "Some text value"
}
Enter fullscreen mode Exit fullscreen mode

Update Item — same column values format. Pass only the columns you want to change.

Get By Column Value — search items by a specific column value (e.g. find by email, by ID, by status). Useful for dedup before creating a new item.

Board Updates

Updates are comments/notes posted to an item:

{
  "boardId": "1234567890",
  "itemId": "9876543210",
  "value": "Stripe payment confirmed: $99 — auto-logged by n8n"
}
Enter fullscreen mode Exit fullscreen mode

6 Gotchas

  1. Column IDs, not column names. Every column has an internal ID like status, date4, text_1, or a hash like hs3fs9k. Find these in Monday.com → Board Settings → column settings, or via the API Explorer at developer.monday.com. Using the display name ("Status") will fail silently.

  2. Status column values use labels, not IDs. For Status and Label columns, pass {"label": "Done"} not {"index": 1}. The label must match exactly (case-sensitive) one of the configured status options. New labels added to the board don't automatically work until the board's status column has them.

  3. People columns need user IDs, not emails. To assign a person, you need their Monday user ID ({"personsAndTeams": [{"id": 12345, "kind": "person"}]}). Get user IDs with the Monday API query { users { id name email } } via HTTP Request node.

  4. Board groups are required for item creation. You must specify a groupId. The default group is usually "topics" but varies. Use "Get All Board Groups" first if you're not sure.

  5. Monday uses GraphQL under the hood. n8n abstracts this, but when you need an operation the node doesn't support (e.g., sub-items, automations, complex queries), fall back to the HTTP Request node with Monday's GraphQL API endpoint: https://api.monday.com/v2 with Content-Type: application/json and a query field.

  6. Rate limits: 60 requests/minute (API v2). For bulk item creation or updates, add a Wait node (1-2 seconds) between iterations or use Monday's batch mutations via HTTP Request.


3 Workflow Patterns

Pattern 1: Form Submission → Monday Board Item (Project Intake)

Every new project request from a form lands on the Monday board with correct assignments and due dates.

Trigger: Webhook Trigger (Typeform, Tally, or custom form)
Steps:

  1. Parse project name, requester email, priority, and desired deadline from payload
  2. Monday node → Get By Column Value: search existing items by project name to avoid duplicates
  3. IF node → exists: add Update to existing item. New: create item.
  4. Monday node → Create Item:
    • name: project title
    • columnValues: status = "New Request", date = deadline, person = PM's user ID
  5. Monday node → Create Update on item: include full form details as a note
  6. Gmail node → confirm receipt to requester

Pattern 2: GitHub PR Merged → Move Monday Item to "Done"

Link GitHub pull requests to Monday items and auto-close them when code ships.

Trigger: Webhook Trigger (GitHub pull_request event, action = closed, merged = true)
Steps:

  1. Code node → extract Monday item ID from PR body or branch name (convention: include [MON-12345] in PR description)
  2. Monday node → Get Item by ID: verify it exists and is in the right board
  3. Monday node → Update Item: status column = "Done", date = today
  4. Monday node → Create Update: "PR #{pr_number} merged by @{author}. Auto-closed."
  5. Slack node → notify team channel

Pattern 3: Weekly Status Report from Monday Board

Pull all in-progress items and generate a Slack digest every Friday.

Trigger: Schedule Trigger — every Friday at 4 PM
Steps:

  1. Monday node → Get All Items from board, filter by status = "Working on it"
  2. Code node — group items by assignee, format as markdown list
  3. Slack node → post to #status-updates:
   *Weekly Status — {date}*
   *In Progress (n items):*
   - [Item Name] — Owner: Ada — Due: Jul 25
   - ...
Enter fullscreen mode Exit fullscreen mode
  1. Monday node → Create Update on each item: "Included in weekly status report {date}"

Footer

Monday.com + n8n automates the friction points that make project management painful: intake forms that don't land in the board, PRs that close without updating tickets, and status reports that nobody has time to write.

Need this built for your team? I offer a done-for-you n8n workflow build — you describe what you need, I build and test it, you import and run it. $99 flat. → Book here

Or grab the n8n Workflow Pack (30+ pre-built automations): → pirateprentice.gumroad.com/l/sxcoe ($29)

Related Articles


Free: n8n Integration Checklist

25 production checks before you ship any n8n workflow — credentials, error handling, dedup, and integration-specific gotchas. Takes 2 minutes to run.

Get the free checklist


Want this workflow ready-to-import? Get the n8n Monday.com → Slack Alert Workflow JSON ($9) — 4-node workflow, setup instructions included. Copy, import, and you're live in 5 minutes.

Top comments (1)

Collapse
 
pirateprentice profile image
Pirate Prentice

Are you using the Monday.com node to automate board updates, sync items from forms, or post status digests to Slack? Drop your use case in the comments — would love to see what people are building.