Portfolio
Portfolios allow you to group and manage multiple projects under a common umbrella.
Portfolio
The Portfolio entity represents a project portfolio.
Data Model
| Property | Type | Description |
|---|---|---|
PortfolioId | guid | Unique ID of the portfolio. |
Name | string | Name of the portfolio. |
Description | string | Free-text description of the portfolio. |
PortfolioManagerContactId | guid | Contact ID of the portfolio manager. |
Endpoints
List all portfolios
GET
/odata/PortfolioSupports OData query options.
Get a single portfolio by ID
GET
/odata/Portfolio({key})| Parameter | Type | Required | Description |
|---|---|---|---|
key | guid | ✅ | The PortfolioId of the portfolio to retrieve. |
Create a new portfolio
POST
/odata/Portfolio| Parameter | Type | Required | Description |
|---|---|---|---|
Body | Delta<ApiPortfolio> | ✅ | JSON object with the portfolio properties. |
Pass the portfolio properties in the request body. The PortfolioId is generated automatically if not specified.
Update an existing portfolio
PATCH
/odata/Portfolio({key})| Parameter | Type | Required | Description |
|---|---|---|---|
key | guid | ✅ | The PortfolioId of the portfolio to update. |
Body | Delta<ApiPortfolio> | ✅ | JSON object with the fields to update. |
Delete a portfolio
DELETE
/odata/Portfolio({key})| Parameter | Type | Required | Description |
|---|---|---|---|
key | guid | ✅ | The PortfolioId of the portfolio to delete. |
Returns 204 No Content on success.
warning
Deleting a portfolio is permanent and cannot be undone.
OData Query Examples
List all portfolios
GET /odata/Portfolio?$orderby=Name&$top=10
Filter portfolio by name
GET /odata/Portfolio?$filter=Name eq 'Digital Transformation 2025'
Get portfolio targets for a portfolio
GET /odata/PortfolioTarget?$filter=PortfolioId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Create a portfolio
POST /odata/Portfolio
Content-Type: application/json
{
"Name": "Digital Transformation 2025",
"Description": "All projects related to digital transformation.",
"PortfolioManagerContactId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}