API Documentation
Boards ¶
Boards ¶
The Board object represents a board within the project management system. It sits between Projects and Task lists, meaning it belongs to a project and contains multiple task lists.
In the application, boards are currently referred to as folders.
You can find out more about boards in our Help documentation: Boards
Following diagram shows boards in our data hierarchy:
Supported filter params
-
id
-
project_id (array)
-
status (active: 1, archived: 2)
Supported relationship filter params
- project
GET /api/v2/boards?filter[project_id]=10
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonHeaders
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": [],
"links": {
"first": "http://api-test.productive.io/api/v2/boards?filter%5Bproject_id%5D=10&page%5Bnumber%5D=1&page%5Bsize%5D=30",
"last": "http://api-test.productive.io/api/v2/boards?filter%5Bproject_id%5D=10&page%5Bnumber%5D=0&page%5Bsize%5D=30"
},
"meta": {
"current_page": 1,
"total_pages": 0,
"total_count": 0,
"page_size": 30,
"max_page_size": 200
}
}Get boardsGET/api/v2/boards
GET /api/v2/boards/10
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonHeaders
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "10",
"type": "boards",
"attributes": {
"name": "board name",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "85"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}POST /api/v2/boards
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": "test name"
},
"relationships": {
"project": {
"data": {
"type": "projects",
"id": "12"
}
}
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "12",
"type": "boards",
"attributes": {
"name": "test name",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "86"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}POST /api/v2/boards
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": ""
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "can't be blank",
"source": {
"pointer": "data/attributes/name"
}
}
]
}PATCH /api/v2/boards/13
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": "new name"
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "13",
"type": "boards",
"attributes": {
"name": "new name",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "89"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}PATCH /api/v2/boards/14
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": ""
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "can't be blank",
"source": {
"pointer": "data/attributes/name"
}
}
]
}PATCH /api/v2/boards/16/archive
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonHeaders
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "16",
"type": "boards",
"attributes": {
"name": "board name",
"position": null,
"placement": null,
"archived_at": "2025-11-15T05:03:30.000+01:00",
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "92"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}Archives a boardPATCH/api/v2/boards/{id}/archive
- id
number(required) Example: 1board id
PATCH /api/v2/boards/17/restore
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonHeaders
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "17",
"type": "boards",
"attributes": {
"name": "board name",
"position": null,
"placement": 1010000,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "93"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}Restores a boardPATCH/api/v2/boards/{id}/restore
- id
number(required) Example: 1board id
POST /api/v2/boards/copy
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": "copy board",
"template_id": 18,
"project_id": 18,
"copy_task_lists": true,
"copy_open_tasks": true,
"copy_assignees": true
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "19",
"type": "boards",
"attributes": {
"name": "copy board",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "94"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}POST /api/v2/boards/copy
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": "copy board",
"template_id": 20,
"project_id": 20,
"copy_task_lists": true,
"copy_open_tasks": true,
"copy_assignees": true
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "21",
"type": "boards",
"attributes": {
"name": "copy board",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "95"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}POST /api/v2/boards/copy
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": "copy board",
"template_id": 22,
"project_id": 22,
"copy_task_lists": true,
"copy_open_tasks": true,
"copy_assignees": true
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "24",
"type": "boards",
"attributes": {
"name": "copy board",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "96"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}POST /api/v2/boards/copy
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"name": "copy board",
"template_id": 25,
"project_id": 25,
"copy_task_lists": true,
"copy_open_tasks": true,
"copy_assignees": true
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "27",
"type": "boards",
"attributes": {
"name": "copy board",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "97"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}PATCH /api/v2/boards/28/move
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"project_id": 28
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "28",
"type": "boards",
"attributes": {
"name": "board name",
"position": null,
"placement": null,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "98"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}PATCH /api/v2/boards/29/move
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"project_id": ""
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "attribute is invalid",
"source": {
"pointer": "data/attributes/project_id"
}
}
]
}PATCH /api/v2/boards/30/reposition
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+jsonBody
{
"data": {
"type": "boards",
"attributes": {
"move_before_id": 31
}
}
}Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": {
"id": "30",
"type": "boards",
"attributes": {
"name": "board name",
"position": null,
"placement": 90000,
"archived_at": null,
"hidden": false
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "100"
}
},
"project": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}Repoisition a boardPATCH/api/v2/boards/{id}/reposition
- id
number(required) Example: 1board id
Generated by aglio on 15 Nov 2025