# Monday.com

> Project management platform for managing boards, items, groups, and column values through Monday.com's GraphQL API.

Source: https://cotera.co/docs/reference/tools/individual-tools/monday

---

**Authentication Type:** API Key
**Description:** Project management platform for managing boards, items, groups, and column values through Monday.com's GraphQL API.

***

## Authentication

To authenticate, you'll need a Monday.com API token. Learn how to create one in the [Monday.com documentation](https://developer.monday.com/api-reference/docs/authentication).

You can find your API token in: **Profile Picture > Developers > My Access Tokens**.

***

## Boards

Operations for managing Monday.com boards.

### List Boards

List all accessible boards with optional filtering by state, kind, and workspace.

**Operation Type:** Query (Read)

**Parameters:**

* **state** `string` (nullable): Filter by board state (active, archived, deleted, all). Defaults to active
* **boardKind** `string` (nullable): Filter by board kind (public, private, share)
* **workspaceIds** `array of numbers` (nullable): Filter by workspace IDs
* **limit** `number` (nullable): Maximum number of boards to return (default 25, max 100)
* **page** `number` (nullable): Page number for pagination (default 1)

**Returns:**

* **boards** `array of objects`: Array of boards
  * **id** `string`: Board ID
  * **name** `string`: Board name
  * **state** `string`: Board state (active, archived, deleted)
  * **boardKind** `string`: Board kind (public, private, share)
  * **description** `string` (nullable): Board description
  * **workspaceId** `string` (nullable): Workspace ID
  * **itemsCount** `number`: Number of items on the board

**Example Usage:**

```json
{
  "state": "active",
  "boardKind": null,
  "workspaceIds": null,
  "limit": 25,
  "page": 1
}
```

### Get Board

Get a specific board with its columns and groups.

**Operation Type:** Query (Read)

**Parameters:**

* **boardId** `string` (required): The board ID to retrieve

**Returns:**

* **board** `object`: The board details
  * **id** `string`: Board ID
  * **name** `string`: Board name
  * **state** `string`: Board state
  * **boardKind** `string`: Board kind
  * **description** `string` (nullable): Board description
  * **workspaceId** `string` (nullable): Workspace ID
  * **itemsCount** `number`: Number of items
  * **columns** `array of objects`: Board columns
    * **id** `string`: Column ID
    * **title** `string`: Column display title
    * **type** `string`: Column type (e.g., status, text, date)
    * **description** `string` (nullable): Column description
  * **groups** `array of objects`: Board groups
    * **id** `string`: Group ID
    * **title** `string`: Group display title
    * **color** `string`: Group color hex code

**Example Usage:**

```json
{
  "boardId": "5092968103"
}
```

***

## Items

Operations for managing items on Monday.com boards.

### List Items

List items on a board with their column values. Supports cursor-based pagination.

**Operation Type:** Query (Read)

**Parameters:**

* **boardId** `string` (required): The board ID to list items from
* **groupId** `string` (nullable): Optional group ID to filter items
* **limit** `number` (nullable): Maximum items to return (default 50, max 500)
* **cursor** `string` (nullable): Pagination cursor from a previous response

**Returns:**

* **items** `array of objects`: Array of items
  * **id** `string`: Item ID
  * **name** `string`: Item name
  * **state** `string`: Item state (active, archived, deleted)
  * **groupId** `string`: Group ID the item belongs to
  * **groupTitle** `string`: Group display title
  * **createdAt** `string`: ISO timestamp of creation
  * **updatedAt** `string` (nullable): ISO timestamp of last update
  * **url** `string`: Item URL
  * **columnValues** `array of objects`: Column values
    * **id** `string`: Column ID
    * **title** `string`: Column title
    * **type** `string`: Column type
    * **text** `string` (nullable): Human-readable text value
    * **value** `string` (nullable): Raw JSON value
* **cursor** `string` (nullable): Cursor for next page, null if no more results

**Example Usage:**

```json
{
  "boardId": "5092968103",
  "groupId": null,
  "limit": 50,
  "cursor": null
}
```

### Get Item

Get a specific item by ID with all column values and subitems.

**Operation Type:** Query (Read)

**Parameters:**

* **itemId** `string` (required): The item ID to retrieve

**Returns:**

* **item** `object`: The item details
  * **id** `string`: Item ID
  * **name** `string`: Item name
  * **state** `string`: Item state
  * **groupId** `string`: Group ID
  * **groupTitle** `string`: Group title
  * **boardId** `string`: Board ID this item belongs to
  * **createdAt** `string`: ISO timestamp of creation
  * **updatedAt** `string` (nullable): ISO timestamp of last update
  * **url** `string`: Item URL
  * **creatorId** `string`: Creator's user ID
  * **columnValues** `array of objects`: Column values
    * **id** `string`: Column ID
    * **title** `string`: Column title
    * **type** `string`: Column type
    * **text** `string` (nullable): Human-readable text value
    * **value** `string` (nullable): Raw JSON value
  * **subitems** `array of objects`: Subitems
    * **id** `string`: Subitem ID
    * **name** `string`: Subitem name
    * **state** `string`: Subitem state

**Example Usage:**

```json
{
  "itemId": "7654321098"
}
```

### Create Item

Create a new item on a Monday.com board.

**Operation Type:** Mutation (Write)

**Parameters:**

* **boardId** `string` (required): The board ID to create the item on
* **itemName** `string` (required): Name for the new item
* **groupId** `string` (nullable): Group ID to place the item in
* **columnValues** `string` (nullable): JSON string of column values (e.g., `{"status": {"label": "Working on it"}, "date": {"date": "2024-01-15"}}`)

**Returns:**

* **item** `object`: The created item
  * **id** `string`: Item ID
  * **name** `string`: Item name
  * **state** `string`: Item state
  * **createdAt** `string`: ISO timestamp of creation
  * **url** `string`: Item URL

**Example Usage:**

```json
{
  "boardId": "5092968103",
  "itemName": "Design review meeting",
  "groupId": "new_group",
  "columnValues": "{\"status\": {\"label\": \"Working on it\"}, \"date\": {\"date\": \"2024-03-15\"}}"
}
```

### Update Item

Update column values on an existing item.

**Operation Type:** Mutation (Write)

**Parameters:**

* **boardId** `string` (required): The board ID the item belongs to
* **itemId** `string` (required): The item ID to update
* **columnValues** `string` (required): JSON string of column values to update

**Returns:**

* **item** `object`: The updated item
  * **id** `string`: Item ID
  * **name** `string`: Item name
  * **state** `string`: Item state
  * **url** `string`: Item URL

**Example Usage:**

```json
{
  "boardId": "5092968103",
  "itemId": "7654321098",
  "columnValues": "{\"status\": {\"label\": \"Done\"}, \"date\": {\"date\": \"2024-03-20\"}}"
}
```

### Move Item to Group

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

**Operation Type:** Mutation (Write)

**Parameters:**

* **itemId** `string` (required): The item ID to move
* **groupId** `string` (required): The target group ID

**Returns:**

* **item** `object`: The moved item
  * **id** `string`: Item ID
  * **name** `string`: Item name
  * **groupId** `string`: New group ID
  * **groupTitle** `string`: New group title

**Example Usage:**

```json
{
  "itemId": "7654321098",
  "groupId": "completed_group"
}
```

***

## Common Use Cases

**Project Management:**

* List all boards to get an overview of active projects
* Create items for new tasks and assign them to groups
* Move items between groups to reflect workflow stages (e.g., To Do → In Progress → Done)

**Status Tracking:**

* Get board details with columns and groups to understand project structure
* List items with column values to track task status, assignments, and deadlines
* Update item column values to change status, dates, or other fields

**Automation & Integration:**

* Create items automatically from external triggers (e.g., form submissions, emails)
* Sync item status with other tools when column values change
* Generate reports by listing items and aggregating column values

**Team Coordination:**

* Get item details including subitems for detailed task breakdowns
* Update items to reflect progress from other systems
* Use cursor-based pagination to process large boards efficiently

