🏷️ API version: 2025-07

When querying updates at the root, you can now filter the results by a specific date range using the new from_date and to_date arguments. These arguments must be used together—using only one will return an error.

👉 Read more about updates here!

query {
  updates (limit: 50, to_date: "2025-06-04", from_date: "2025-01-01") {
    body
      id
      created_at
      creator {
        name
        id
    }
  }
}
🏷️ API version: 2025-07

You can now mention users, teams, boards, and projects when creating updates using the new mentions_list argument in the create_update mutation.

👉 Read more here!

mutation {
  create_update (item_id: 9876543210, body: "This update will mention user 1234567890 on an item", mentions_list: [{id: 1234567890, type: User}]) {
    id
  }
}
🏷️ API version: 2025-07

We've simplified the complexity budget exhausted error response to better align with other rate and limit errors. The response no longer includes budget-related fields such as complexity, complexity_budget_left, or status_code.

If you still need access to this data, you can retrieve it using the complexity endpoint.

Here’s a comparison of the old and new responses:

{
  "errors": [
    {
      "message": "Complexity budget exhausted",
      "extensions": {
        "code": "COMPLEXITY_BUDGET_EXHAUSTED",
        "retry_in_seconds": 60
      }
    }
  ]
}
{
  "errors": [
    {
      "message": "Complexity budget exhausted",
      "extensions": {
        "code": "COMPLEXITY_BUDGET_EXHAUSTED",
        "retry_in_seconds": 7,
        "complexity": 11,
        "complexity_budget_left": 4999967,
        "complexity_budget_limit": 5000000,
        "status_code": 429
      }
    }
  ]
}

This Sunday, the API will briefly be read-only for scheduled maintenance. Only accounts in the AU region will be affected. We estimate the maintenance will take less than 5 minutes.

During this time, queries will operate normally, but mutations will return an error. If you receive an error, please retry your API calls after a few minutes.

The maintenance will be at 12 am AEST or 2 pm UTC.

You can subscribe to updates on our status page: Maintenance on May 25th

🏷️ API version: 2025-07

Enterprise customers can now programmatically create, read, update, and delete managed status and dropdown columns via the API. Learn more here!

query {
  managed_column (state: active) {
    created_by
    revision
    settings {
      ...on StatusColumnSettings { 
        type
        labels {
          id
          description
        }
      }
    }
  }
}
🏷️ API versions: 2024-10 and later

All API responses now contain a unique request ID to help measure performance, track the full request lifecycle across services, and simplify troubleshooting. When debugging issues with our support team, you can share this ID to quickly locate the problem without needing to search through your logs.

{
  "data": {
    "timeline_item": null
  },
  "errors": [
    {
      "message": "User is not allowed to read timelineItem.",
      "locations": [
        {
          "line": 1,
          "column": 2
        }
      ],
      "path": [
        "timeline_item"
      ],
      "extensions": {
        "code": "UNAUTHORIZED"
      }
    }
  ],
  "extensions": {
    "request_id": "152b0dgb-d38c-067c-9f79-dd0c0d7238ed"
  }
}
🏷️ API version: 2025-07

You can now retrieve an item's description using the new description field on items queries. This field returns the item's ID and content blocks where the description is stored. Check out the example below:

query {
  items(ids: [1234567890]) {
    name
    description {
      id
      blocks {
        id
        content
      }
    }
  }
}
🏷️ API version: 2025-07

You can now query assets attached to an update’s replies using the new assets field. Learn more about the available fields on the Reply object here.

query {
  items (ids: 1234567890) {
    updates {
      replies {
        assets {
          id
        }
      }
    }
  }
}
🏷️ API versions: 2025-07, 2025-04, 2025-01, and 2024-10

ColumnValueException errors return the column_type property to indicate the type of column that caused the error. Previously, this property returned the column type with the word "Column" appended:

For example: "ColorColumn", "StatusColumn", "DateColumn"

After this update, the column_type property now returns just the column type without "Column" appended. You can find the full list of supported column types here.

For example: "color", "status", "date"

Here’s an example of an updated error response:

{
  "message": "invalid value - label does not exist in column. Please check our API documentation for the correct data structure for this column. https://developer.monday.com/api-reference/docs/change-column-values",
  "locations": [
    {
      "line": 1, 
      "column": 10
    }
    ],
  "path": [
    "change_column_value"
    ],
  "extensions": {
    "code": "ColumnValueException", 
    "status_code": 200, 
    "error_data": {
      "column_type": "color", 
    }
  }
}
🏷️ API version: 2025-07

You can now create a workspace within a specific product by using the new account_product_id argument in the create_workspace mutation.

mutation {
  create_workspace (name:"New Workspace", kind: open, description: "This is a new workspace in the CRM product.", account_product_id: 505616) {
    id
    description
  }
}