🏷️ API version: 2025-10

We've added two new mutations to create status and dropdown columns. These mutations are strongly typed to better validate complex settings.

mutation {
  create_dropdown_column(
    board_id: 1234567890,
    id: "project_category",
    title: "Project Category",
    defaults: {
      label_limit_count: 1, 
      limit_select: true,
      labels: [
        {label: "HR"},
        {label: "R&D"},
        {label: "IT"}
      ]
    },
    description: "The project's category."
  ) {
    description
    id
    title
  }
}
mutation {
  create_status_column(
    board_id: 1234567890,
    id: "project_status",
    title: "Project Status",
    defaults: {
      labels: [
        { color: working_orange, label: "On Hold", index: 2},
        { color: done_green, label: "Done", index: 1},
        { color: sky, label: "Working On It", index: 3}
      ]
    },
    description: "The project's status."
  ) {
    description
    id
		title
  }
}
🏷️ API version: 2025-10

You can now return additional data about apps via the API using the following new fields:

  • account_id
  • collaborators
  • created_by
  • description
  • permissions
  • slug
  • status
  • webhook_url
query {
  app (id: 123456) {
    account_id
    collaborators {
      id
      name
    }
    created_by
    description
    permissions
    slug
    status
    webhook_url
  }
}
🏷️ API version: 2025-10

You can now use the delete_widget mutation to delete a widget on a dashboard or board view via the API.

mutation {
  delete_widget (id: 12345)
}
{
  "data": {
    "delete_widget": true
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}
🏷️ API version: 2025-10

You can now update an existing column using the new update_column mutation.

mutation{
  update_column(
    board_id: 1234567890, 
    id: "status", 
    title: "Work Status", 
    revision: "a73d19e54f82c0b7d1e348f5ac92b6de", 
    description: "This is my updated work status column", 
    column_type:status
	) {
    id
    title
    description
  }
}
{
  "data": {
    "update_column": {
      "id": "status",
      "title": "Work Status",
      "description": "This is my work status column"
    }
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}
🏷️ API version: 2025-10

The platform API now supports boards with multiple levels of subitems and rollup columns that summarize values across child items. This guide provides a detailed explanation of the functionality and how to adapt your queries

Initially, only project boards within the Portfolio solution will support this board layout.

Related API schema changes

Backwards compatibility

No breaking changes. Until 2026-04, boards returns only classic boards by default. Use the hierarchy_types argument to include multi-level boards.

Other changes

The behavior of some endpoints depends on the board type (e.g., on multi-level boards, rollup columns on parent items are read-only when subitems exist). See the full guide for details.

🏷️ API version: 2025-10

The settings_str field on columns queries is now deprecated. You can use the new settings field to return the column's settings as a JSON object.

query {
  boards (ids: 1234567890) {
    columns {
      settings
    }
  }
}
{
  "data": {
    "boards": [
      {
        "columns": [
          {
            "settings": {}
          },
          {
            "settings": {}
          },
          {
            "settings": {
              "labels": [
                {
                  "id": 0,
                  "color": 0,
                  "label": "Working on it",
                  "index": 0,
                  "is_done": false,
                  "is_deactivated": false
                },
                {
                  "id": 1,
                  "color": 1,
                  "label": "Done",
                  "index": 2,
                  "is_done": false,
                  "is_deactivated": false
                },
                {
                  "id": 2,
                  "color": 2,
                  "label": "Stuck",
                  "index": 1,
                  "is_done": false,
                  "is_deactivated": false
                }
              ]
            }
          },
          {
            "settings": {}
          },
          {
            "settings": {}
          },
          {
            "settings": {
              "hide_footer": false
            }
          },
          {
            "settings": {}
          }
        ]
      }
    ]
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}
🏷️ API version: 2025-10

You can now query a column's settings, revision data, and capabilities with the following new fields:

  • settings
  • revision
  • capabilities
query {
  boards (ids: 1234567890) {
    columns {
      settings
      revision
      capabilities {
        calculated {
          function
          calculated_type
        }
      }
    }
  }
}
🏷️ API version: 2025-10

Using the new validations endpoint, you can now query a board's required field columns. This query returns a JSON object containing metadata about a collection of required field columns.

query {
  validations(
    id: 1234567890
	) {
    required_column_ids
		rules
  }
}

You can also add and remove required field columns via the API using the following mutations: