Skill: Create a New Portfolio
Learn how to create a portfolio board and retrieve its ID by polling workspace boards
The create_portfolio mutation creates a new portfolio board, but it doesn't return a board ID directly. Instead, it returns a success flag and a solution_live_version_id that can't be used to look up the board. To get the portfolio board ID, you need to record a timestamp before creation and then poll the workspace boards.
This guide walks through the full workflow.
Step 1 — Record a timestamp and create the portfolio
Record the current UTC timestamp immediately before calling the mutation, then create the portfolio:
mutation {
create_portfolio(
boardName: "My Portfolio",
boardPrivacy: "public",
destinationWorkspaceId: WORKSPACE_ID
) {
success
message
}
}The boardPrivacy argument accepts "public" or "private".
Step 2 — Poll for the portfolio board
Wait approximately 20 seconds, then fetch boards created after your recorded timestamp:
{
boards(workspace_ids: [WORKSPACE_ID], limit: 20, order_by: created_at) {
id
name
board_kind
created_at
groups { title }
}
}Filter the results client-side to identify the new portfolio board:
created_atis after your recorded timestamp- The board has a single group named
Projects - The
namematches the portfolio name you provided
This combination reliably identifies the newly created portfolio board.
Important notes
create_portfolioreturnssolution_live_version_id— this is not a board ID and cannot be used to look up the board directly.- The
boardsquery has no name filter, so identification must be done client-side after polling. - If multiple portfolios could be created concurrently in the same workspace, the timestamp filter is the most reliable differentiator.
Updated 3 days ago
