Subitems

Learn how to query subitems on monday boards using the platform API

Subitems are special items that are "nested" under the items on your board. They can be accessed via the subitem column, which can be added from the column's center or by right-clicking an item to expose its dropdown menu. Like items, subitems store data within their columns.

Queries

Get subitems

  • Required scope:boards:read
  • Returns an array containing metadata about one or a collection of subitems
  • Can only be nested within another query (e.g., items); can't be queried directly at the root
query {
  items(ids: 1234567890) {
    subitems {
      id
      column_values {
        value
        text
      }
    }
  }
}

Fields

FieldTypeDescriptionEnum Values
assets[Asset]The subitem's assets/files.
boardBoardThe board that contains the subitem.
column_values[ColumnValue]The subitem's column values.
created_atDateThe subitem's creation date.
creatorUserThe subitem's creator.
creator_idString!The unique identifier of the user who created the subitem. Returns null if the item was created by default on the board.
emailString!The subitem's email.
groupGroupThe subitem's group.
idID!The subitem's unique identifier.
linked_items[Item!]!The subitem's linked items.
nameString!The subitem's name.
parent_itemItemA subitem's parent item. If used for a parent item, it will return null.
relative_linkStringThe subitem's relative path.
stateStateThe subitem's state.active
all
archived deleted
subitems[Item]The subitem's subitems.
subscribers[User]!The subitem's subscribers.
updated_atDateThe date the subitem was last updated.
updates[Update]The subitem's updates.
urlString!The subitem's link.

Mutations

Required scope:boards:write

Create subitem

Creates a new subitem via the API. Returns Item.

The data of each subitem is stored in the subitem board columns (same as items), each of which holds a particular piece of information. Each column has a specific type, and different column types expect a different set of parameters to update their values. When sending data to a particular column, use a JSON-formatted string. If you're using JavaScript, you can use JSON.stringify() to convert a JSON object into a string.

You can also use simple values in this mutation or combine them with regular values. Read more about sending data for each column in our column types reference.

mutation {
  create_subitem(
    parent_item_id: 1234567890, 
    item_name: "New subitem", 
    column_values: "{\"date0\":\"2023-05-25\"}"
	) {
    id
    board {
      id
    }
  }
}

Arguments

ArgumentTypeDescription
column_valuesJSONThe column values of the new subitem.
create_labels_if_missingBooleanCreates status/dropdown labels if they're missing. Requires permission to change the board structure.
item_nameString!The new subitem's name.
parent_item_idID!The parent item's unique identifier. Can reference an item or subitem for multi-level boards.
🚧

For multi-level boards:

  • Subitems can be nested up to 5 levels deep.
  • parent_item_id can reference an item or subitem.
  • When you create the first subitem under a parent:
    • For rollup-eligible columns:
      • If no values are provided, the parent’s values are copied to the subitem and then cleared from the parent.
      • If values are provided, the parent’s values are not copied, but they are still cleared.
  • For any additional subitems, values are not copied; the parent instead shows a calculated rollup.