OpenProject Portfolios API
Portfolios are one of the types of [workspaces](https://www.openproject.org/docs/api/endpoints/workspaces) in OpenProject structuring the information (e.g. work packages, wikis) into smaller sets. They are typically used to group, structure and manage sub-portfolios, programs and projects thattarget similar strategic goals of the organization. As containers, they also control behaviour of the elements within them. One of the most important aspects of this is that portfolios limit permissions by having members with a certain permission set (roles) assigned to them.## Actions| Link | Description | Condition ||:--------------------------: |----------------------------------------------------------------------| --------------------------------- || update | Form endpoint that aids in updating this portfolio | **Permission**: edit workspace || updateImmediately | Directly update this portfolio | **Permission**: edit workspace || delete | Delete this portfolio | **Permission**: admin || favor | Mark this portfolio as favorited by the current user | **Permission**: none but login is required, only present if the portfolio is not yet favorited || disfavor | Mark this portfolio as no longer favorited by the current user | **Permission**: none but login is required, only present if the portfolio is favorited || createWorkPackage | Form endpoint that aids in preparing and creating a work package | **Permission**: add work packages || createWorkPackageImmediately | Directly creates a work package in the portfolio | **Permission**: add work packages |## Linked Properties| Link | Description | Type | Constraints | Supported operations |Condition || :----------: | ------------- | ---- | ----------- | -------------------- |----------------------------------------- || self | This portfolio | Portfolio | not null | READ | || ancestors | Array of all ancestors of the portfolio, down from the root node (first element) to the parent (last element). | Collection | not null | READ | **Permission** view portfolio on the ancestor portfolio. Non visible portfolios will be omitted || categories | Categories available in this portfolio | Collection | not null | READ | || types | Types available in this portfolio | Collection | not null | READ | **Permission**: view work packages or manage types || versions | Versions available in this portfolio | Collection | not null | READ | **Permission**: view work packages or manage versions || memberships | Memberships in the portfolio | Collection | not null | READ | **Permission**: view members || workPackages | Work Packages of this portfolio | Collection | not null | READ | || parent | Parent portfolio of the portfolio | Portfolio | | READ/WRITE | **Permission** edit workspace || status | Denotes the status of the portfolio, so whether the portfolio is on track, at risk or is having trouble. | PortfolioStatus | | READ/WRITE | **Permission** edit workspace |Depending on custom fields defined for portfolios, additional links might exist.Note, that the parent and ancestor links may contain the "undisclosed uri" `urn:openportfolio-org:api:v3:undisclosed` in case anancestor portfolio is defined but the client lacks permission to see it. See the[general introduction into links' properties](https://www.openportfolio.org/docs/api/basic-objects/#local-properties) for more information.## Local Properties| Property | Description | Type | Constraints | Supported operations || :---------------------:| ------------- | ---- | ----------- | -------------------- || id | Portfolios' id | Integer | x > 0 | READ/WRITE || identifier | | String | | READ/WRITE || name | | String | | READ/WRITE || active | Indicates whether the portfolio is currently active or already archived | Boolean | | READ/WRITE || favorited | Indicates whether the portfolio is favorited by the current user | Boolean | | READ || statusExplanation | A text detailing and explaining why the portfolio has the reported status | Formattable | | READ/WRITE || public | Indicates whether the portfolio is accessible for everybody | Boolean | | READ/WRITE || description | | Formattable | | READ/WRITE || createdAt | Time of creation | DateTime | | READ || updatedAt | Time of the most recent change to the portfolio | DateTime | | READ |Depending on custom fields defined for portfolios, additional properties might exist.
OpenProject Portfolios API is one of 62 APIs that OpenProject publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Portfolio. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.
This API exposes 5 operations across 3 paths, and defines 11 schemas. It is described by OpenAPI 3.1.2, at version 3.
Requests are made against 3 base URLs: https://qa.openproject-edge.com, https://qa.openproject-stage.com, https://community.openproject.org.
Metadata
The identity and technical contract details declared by the specification.
Authentication & Security 1
OpenProject Portfolios API declares
1 security scheme
for authenticating requests.
It accepts HTTP basic authentication (BasicAuth).
By default, every request must be authenticated.
Paths & Operations 5
Across 3 paths, the API surfaces 5 operations — 1 DELETE, 2 GET, 1 PATCH, 1 POST. Each is listed below with its method, path, parameters, and response codes.
Portfolios are one of the types of [workspaces](https://www.openproject.org/docs/api/endpoints/workspaces) in OpenProject structuring the information (e.g. work packages, wikis) i…
Schemas 11
The contract defines 11 schemas that model the data the API accepts and returns. The most detailed are Link (7 properties), CollectionModel (4 properties), ErrorResponse (4 properties), Formattable (3 properties). Each schema is shown below with its type and property counts.
Specification
The full machine-readable OpenAPI contract behind this narrative.
Source
More from OpenProject 12
Other APIs OpenProject publishes across the network.
This is an independent, third-party profile of OpenProject Portfolios API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.