# OpenProject Grids API

**Canonical:** https://apis.io/apis/openproject/openproject-grids-api/  
**Provider:** OpenProject — https://apis.io/providers/openproject/  
**Base URL:** https://community.openproject.org/api/v3  
**Documentation:** https://www.openproject.org/docs/api/

OpenProject Grids API is one of 62 APIs that [OpenProject](https://apis.io/providers/openproject/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. Tagged areas include Grids. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

A grid is a layout for a page or a part of the page of the OpenProject application. It defines the structure (number of rows and number of columns) as well as the contents of the page. The contents is defined by `GridWidget`s. While a `GridWidget` is its own type, it is not a resource in its own right as it is an intrinsic part of a `Grid`. Depending on what page a grid is defined for, different widgets may be eligible to be placed on the grid. The page might also define the permissions needed for accessing, creating or modifying the grid. Currently, the following pages employ grids: + /my/page: The My page every user has. Only a user can access or modify their "My page". *The delete action is not yet supported* ## Actions | Link | Description | Condition | |:-------------------:| -------------------------------------------------------------------- | ---------------------------------------------------------------- | | updateImmediately | Directly perform edits on this grid | **Permission**: depends on the page the grid is defined for | | update | Validate edits on the grid via a form resource before committing | **Permission**: depends on the page the grid is defined for | ## Linked Properties | Link | Description | Type | Constraints | Supported operations | Condition | | :-----------: | -------------------------------------------------------------- | ------------- | --------------------- | -------------------- | ----------------------------------------- | | self | This grid | Grid | not null | READ | | | page | The url of the page the grid is defined for | url | not null | READ / WRITE | The page cannot be changed after the creation | ## Local Properties | Property | Description | Type | Constraints | Supported operations | Condition | | :----------: | --------------------------------------------------------- | -------- | ---------------------------------------------------- | -------------------- | -------------- | | id | Grid's id | Integer | x > 0 | READ | | | rowCount | The number of rows the grid has | Integer | x > 0 | READ/WRITE | | | columnCount | The number of columns the grid has | Integer | x > 0 | READ/WRITE | | | widgets | The set of `GridWidget`s selected for the grid | []GridWidget | | READ/WRITE | The widgets cannot overlap | | createdAt | The time the grid was created | DateTime | | READ | | | updatedAt | The time the grid was last updated | DateTime | | READ | | ## GridWidget Properties | Property | Description | Type | Constraints | Supported operations | Condition | | :----------: | --------------------------------------------------------- | -------- | ---------------------------------------------------- | -------------------- | -------------- | | identifier | The kind of widget | String | not null | READ/WRITE | | | startRow | The row the widget starts at (1 based) | Integer | x > 0, x < rowCount of the grid, x < endRow | READ/WRITE | | | endRow | The row the widget ends. The widget's area does not include the row itself. | Integer | x > 0, x <= rowCount of the grid, x > startRow | READ/WRITE | | | startColumn | The column the widget starts at (1 based) | Integer | x > 0, x < columnCount of the grid, x < endColumn | READ/WRITE | | | endColumn | The column the widget ends. The widget's area does not include the column itself. | Integer | x > 0, x <= columnCount of the grid, x > startColumn | READ/WRITE | | | options | An options hash of values customizable by the widget | JSON | | READ/WRITE | |

## Machine-readable artifacts (5)

- **OpenAPI** — https://raw.githubusercontent.com/api-evangelist/openproject/refs/heads/main/openapi/openproject-grids-api-openapi.yml
- **Documentation** — https://www.openproject.org/docs/api/
- **Introduction** — https://www.openproject.org/docs/api/introduction/
- **Endpoints** — https://www.openproject.org/docs/api/endpoints/
- **GitHub** — https://github.com/opf/openproject

## Other OpenProject APIs (12)

- [OpenProject Actions & Capabilities API](https://apis.io/apis/openproject/openproject-actions-capabilities-api/)
- [OpenProject Activities API](https://apis.io/apis/openproject/openproject-activities-api/)
- [OpenProject Attachments API](https://apis.io/apis/openproject/openproject-attachments-api/)
- [OpenProject Budgets API](https://apis.io/apis/openproject/openproject-budgets-api/)
- [OpenProject Categories API](https://apis.io/apis/openproject/openproject-categories-api/)
- [OpenProject Collections API](https://apis.io/apis/openproject/openproject-collections-api/)
- [OpenProject Configuration API](https://apis.io/apis/openproject/openproject-configuration-api/)
- [OpenProject Custom actions API](https://apis.io/apis/openproject/openproject-custom-actions-api/)
- [OpenProject Custom Field Items API](https://apis.io/apis/openproject/openproject-custom-field-items-api/)
- [OpenProject Custom Fields API](https://apis.io/apis/openproject/openproject-custom-fields-api/)
- [OpenProject Custom Options API](https://apis.io/apis/openproject/openproject-custom-options-api/)
- [OpenProject Documents API](https://apis.io/apis/openproject/openproject-documents-api/)

## Tags

Grids

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/openproject/openproject-grids-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/openproject/.
