How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

OpenProject Projects API

Projects 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 can be used in a classic project management approach but also when structuring work by departments.As containers, they also control behaviour of the elements within them. One of the most important aspects of this is that projects limit permissions by having members with a certain permission set (roles) assigned to them.Prior to OpenProject 17.0, only projects existed and the concept of workspaces wasn't implemented in the API. With 17.0 the other workspace types (program and portfolio) exist and might be returned in places where before, only projects were.## Actions| Link | Description | Condition ||:--------------------------: |----------------------------------------------------------------------| --------------------------------- || update | Form endpoint that aids in updating this project | **Permission**: edit workspace || updateImmediately | Directly update this project | **Permission**: edit workspace || delete | Delete this project | **Permission**: admin || favor | Mark this project as favorited by the current user | **Permission**: none but login is required, only present if the project is not yet favorited || disfavor | Mark this project as no longer favorited by the current user | **Permission**: none but login is required, only present if the project 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 project | **Permission**: add work packages |## Linked Properties| Link | Description | Type | Constraints | Supported operations |Condition || :----------: | ------------- | ---- | ----------- | -------------------- |----------------------------------------- || self | This project | Project | not null | READ | || ancestors | Array of all ancestors of the project, down from the root node (first element) to the parent (last element). | Collection | not null | READ | **Permission** any permission on the ancestor project. Non visible projects will be omitted || categories | Categories available in this project | Collection | not null | READ | || types | Types available in this project | Collection | not null | READ | **Permission**: view work packages or manage types || versions | Versions available in this project | Collection | not null | READ | **Permission**: view work packages or manage versions || memberships | Memberships in the project | Collection | not null | READ | **Permission**: view members || workPackages | Work Packages of this project | Collection | not null | READ | || parent | Parent project of the project | Project | | READ/WRITE | **Permission** edit workspace || status | Denotes the status of the project, so whether the project is on track, at risk or is having trouble. | ProjectStatus | | READ/WRITE | **Permission** edit workspace |Depending on custom fields defined for projects, additional links might exist.Note, that the parent and ancestor links may contain the "undisclosed uri" `urn:openproject-org:api:v3:undisclosed` in case anancestor project is defined but the client lacks permission to see it. See the[general introduction into links' properties](https://www.openproject.org/docs/api/basic-objects/#local-properties) for more information.## Local Properties| Property | Description | Type | Constraints | Supported operations || :---------------------:| ------------- | ---- | ----------- | -------------------- || id | Projects' id | Integer | x > 0 | READ/WRITE || identifier | | String | | READ/WRITE || name | | String | | READ/WRITE || active | Indicates whether the project is currently active or already archived | Boolean | | READ/WRITE || favorited | Indicates whether the project is favorited by the current user | Boolean | | READ || statusExplanation | A text detailing and explaining why the project has the reported status | Formattable | | READ/WRITE || public | Indicates whether the project 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 project | DateTime | | READ |Depending on custom fields defined for projects, additional properties might exist.

OpenProject Projects API is one of 62 APIs that OpenProject publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Project. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 17 operations across 13 paths, and defines 20 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.

17 operations 13 paths 20 schemas 2 DELETE8 GET1 PATCH6 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.2
API Version
3
Base URL
https://community.openproject.org/api/v3
Authentication
HTTP Basic
Resource Areas
1

Authentication & Security 1

OpenProject Projects API declares 1 security scheme for authenticating requests. It accepts HTTP basic authentication (BasicAuth). By default, every request must be authenticated.

Paths & Operations 17

Across 13 paths, the API surfaces 17 operations — 2 DELETE, 8 GET, 1 PATCH, 6 POST. Each is listed below with its method, path, parameters, and response codes.

Projects 17

Projects 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) int…

GET
/api/v3/projects
List projects
list_projects 3 params → 200400
POST
/api/v3/projects
Create project
create_project body → 201400403406415422
POST
/api/v3/projects/form
Project create form
Project_create_form body → 200400403406415
GET
/api/v3/projects/schema
View project schema
View_project_schema → 200
DELETE
/api/v3/projects/{id}
Delete Project
Delete_Project 1 param → 204403404406415422
GET
/api/v3/projects/{id}
View project
View_project 1 param → 200404
PATCH
/api/v3/projects/{id}
Update Project
Update_Project 1 param body → 200400403404406415422
POST
/api/v3/projects/{id}/form
Project update form
Project_update_form 1 param body → 200400403406415
POST
/api/v3/projects/{id}/copy
Create project copy
Create_project_copy 1 param → 302400403406415422
POST
/api/v3/projects/{id}/copy/form
Project copy form
Project_copy_form 1 param → 200400403406415
GET
/api/v3/project_statuses/{id}
View project status
View_project_status 1 param → 200404
GET
/api/v3/projects/available_parent_projects
List available parent project candidates
List_available_parent_project_candidates 4 params → 200403
DELETE
/api/v3/projects/{id}/favorite
Unfavorite Project
Unfavorite_Project 1 param → 204404403
POST
/api/v3/projects/{id}/favorite
Favorite Project
Favorite_Project 1 param → 204404403
GET
/api/v3/projects/{id}/configuration
View project configuration
View_project_configuration 1 param → 200404
GET
/api/v3/versions/{id}/projects
List projects having version
List_projects_with_version 1 param → 200404
GET
/api/v3/versions/{id}/workspaces
List workspaces having version
List_workspaces_with_version 1 param → 200404

Schemas 20

The contract defines 20 schemas that model the data the API accepts and returns. The most detailed are Workspaces_schemaModel (15 properties), SchemaPropertyModel (9 properties), Link (7 properties), ConfigurationModel (5 properties). Each schema is shown below with its type and property counts.

CollectionModel
object
4 properties 4 required
Link
object
7 properties 1 required
ProjectConfigurationModel
List_available_parent_project_candidatesModel
PortfolioModel
View_project_statusModel
object
SchemaPropertyModel
object
9 properties 5 required
Workspaces_schemaModel
object
A schema for a workspace. This schema defines the attributes of a workspace.
15 properties
CollectionLinks
object
1 property 1 required
List_workspaces_by_versionModel
object
ConfigurationModel
object
5 properties
Formattable
object
3 properties 1 required
OffsetPaginatedCollectionModel
ErrorResponse
object
4 properties 3 required
ProjectCollectionModel
ProgramModel
CustomCommentProperties
object
ProjectModel
OffsetPaginatedCollectionLinks
CustomFieldProperties
object

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

openproject-projects-api-openapi.yml Raw ↑

Other APIs OpenProject publishes across the network.

OpenProject Actions & Capabilities API
OpenProject Activities API
OpenProject Attachments API
OpenProject Budgets API
OpenProject Categories API
OpenProject Collections API
OpenProject Configuration API
OpenProject Custom actions API
OpenProject Custom Field Items API
OpenProject Custom Fields API
OpenProject Custom Options API
OpenProject Documents API
Where this information came from

This is an independent, third-party profile of OpenProject Projects 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.