Portfolio

Learn how to create portfolio boards using the platform API

The monday.com portfolio solution provides a structure for managing projects at both a high-level and granular level. A solution is made up of two board types:

  • Portfolio board: Connects multiple project boards to give a consolidated, interactive overview of all projects.
  • Project board: Used for managing individual project details. Updates sync automatically to the portfolio board.

Note: Portfolio solutions are only available on Enterprise plans.

Mutations

🚧 These mutations are only available in API versions 2025-10 and later

Create a portfolio board

Required scope: boards:write

The create_portfolio mutation creates a new portfolio board via the API. It returns the CreatePortfolioResult type which allows you to specify what fields to query when you run it.

This mutation is only available for Enterprise plans.

mutation {
  create_portfolio (
    boardName: "New Portfolio Board"
    boardPrivacy: "private"
    destinationWorkspaceId: 12345,
  ) {
    success
    message
    solution_live_version_id
  }
}

Arguments

You can use the following arguments to define the new portfolio board's characteristics.

ArgumentDescriptionAccepted values
boardName String!The new portfolio board's name.
boardPrivacy String!The new portfolio board's privacy settings. "private"
"share"
destinationWorkspaceId IntThe unique identifier of the workspace to create the portfolio board in.

Convert board to project

Required scope:boards:write

The convert_board_to_project mutation converts an existing board into a project board via the API. It returns the ConvertBoardToProjectResult type which allows you to specify what fields to query when you run it.

This mutation is only available for Enterprise plans.

mutation {
  convert_board_to_project(
    input: {
      board_id: 1234567890
      column_mappings: {
        project_status: "status_column_id"
        project_owner: "person_column_id"
        project_timeline: "date_column_id"
      }
      callback_url: "https://your-callback-url.com"
    }
  )  {
    success
    message
    process_id
    projectId
  } 
}

Arguments

You can use the following arguments to define which boards to convert.

ArgumentDescription
input ConvertBoardToProjectInput!The unique identifier of the portfolio board to connect.

Connect project to portfolio

Required scope: boards:write

The connect_project_to_portfolio mutation connects an existing project board to a portfolio board via the API by creating a linked item in the portfolio. It returns the ConnectProjectResult type which allows you to specify what fields to query when you run it.

This mutation is only available for Enterprise plans.

🚧

Mutation-specific rate limit

This mutation has an additional rate limit of 15 mutations per minute.

mutation {
  connect_project_to_portfolio (
    projectBoardId: 1234567890
    portfolioBoardId: 9876543210
  ) {
    portfolio_item_id 
    message
    success
  }
}

Arguments

You can use the following arguments to define which boards to connect.

ArgumentDescription
portfolioBoardId ID!The unique identifier of the portfolio board to connect.
projectBoardId ID!The unique identifier of the project board to connect.