Back to top

Kaiten API

JSON API version: 1

Base URL: https://<your_domain>.kaiten.io/api/v1

Latest API version is always available at https://<your_domain>.kaiten.io/api/latest

If you have any questions or need help with integration feel free to write us at support@kaiten.io or contact us via in-app chat.

All requests must contain basic auth header.

Authorization: Basic <base64 encoded string 'username:password'>

Example:

Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=

API consumes and produces application/json.

Spaces

Create new space

Create new space
POST/spaces

Creates a new Space.

Example URI

POST /spaces
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrue
minLength: 1
maxLength: 256
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    }
  },
  "required": [
    "title"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "title": "Space 1",
  "subspace": false
}

Retrieve list of spaces

Retrieve list of spaces
GET/spaces

Example URI

GET /spaces
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "title": "Space 1",
    "subspace": false
  }
]

Retrieve space

Retrieve space
GET/spaces/{space_id}

Example URI

GET /spaces/space_id
URI Parameters
HideShow
space_id
number (required) 

Space ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "title": "Space 1",
  "subspace": false
}

Update space

Update space
PATCH/spaces/{space_id}

Example URI

PATCH /spaces/space_id
URI Parameters
HideShow
space_id
number (required) 

Space ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrue
minLength: 1
maxLength: 256
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    }
  },
  "required": [
    "title"
  ]
}
Response  200
HideShow
Body
{
  "id": 1,
  "title": "Space 1",
  "subspace": false
}

Boards

Create new board

Create new board
POST/spaces/{space_id}/boards

Example URI

POST /spaces/space_id/boards
URI Parameters
HideShow
space_id
number (required) 

Space ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrueTitle of the new board
minLength: 1
maxLength: 128
description
topintegerY coordinate of the board on space
leftintegerX coordinate of the board on space
subspacebooleanSummary board flag
default_card_type_idintegerDefault card type for new cards on board
first_image_is_coverbooleanAutomatically mark first uploaded card's image as card's cover
reset_lane_spent_timebooleanReset lane spent time when card changed lane
automove_cards_in_subcolumnsbooleanAutomove cards in subcolumns when children is done
backward_moves_enabledbooleanAllow automatic backward movement for summary boards
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Title of the new board"
    },
    "description": {
      "oneOf": [
        {
          "type": "string",
          "description": "Description"
        },
        {
          "type": "null",
          "description": "Description"
        }
      ]
    },
    "top": {
      "type": "integer",
      "description": "Y coordinate of the board on space"
    },
    "left": {
      "type": "integer",
      "description": "X coordinate of the board on space"
    },
    "subspace": {
      "type": "boolean",
      "description": "Summary board flag"
    },
    "default_card_type_id": {
      "type": "integer",
      "description": "Default card type for new cards on board"
    },
    "first_image_is_cover": {
      "type": "boolean",
      "description": "Automatically mark first uploaded card's image as card's cover"
    },
    "reset_lane_spent_time": {
      "type": "boolean",
      "description": "Reset lane spent time when card changed lane"
    },
    "automove_cards_in_subcolumns": {
      "type": "boolean",
      "description": "Automove cards in subcolumns when children is done"
    },
    "backward_moves_enabled": {
      "type": "boolean",
      "description": "Allow automatic backward movement for summary boards"
    }
  },
  "required": [
    "title"
  ]
}
Response  200
HideShow
Body
{
  "id": 1,
  "title": "New board",
  "top": 0,
  "left": 0,
  "subspace": false
}

Get list of boards

Get list of boards
GET/spaces/{space_id}/boards

Example URI

GET /spaces/space_id/boards
URI Parameters
HideShow
space_id
number (required) 

Space ID

Response  200
HideShow
Body
[
  {
    "id": 1,
    "title": "New board",
    "top": 0,
    "left": 0,
    "subspace": false
  }
]

Get board

Get board
GET/spaces/{space_id}/boards/{id}

Example URI

GET /spaces/space_id/boards/id
URI Parameters
HideShow
space_id
number (required) 

Space ID

id
number (required) 

Board ID

Response  200
HideShow
Body
{
  "id": 1,
  "title": "New board",
  "top": 0,
  "left": 0,
  "subspace": false
}

Update board

Update board
PATCH/spaces/{space_id}/boards/{id}

Example URI

PATCH /spaces/space_id/boards/id
URI Parameters
HideShow
space_id
number (required) 

Space ID

id
number (required) 

Board ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringTitle of the new board
minLength: 1
maxLength: 128
description
topintegerY coordinate of the board on space
leftintegerX coordinate of the board on space
cell_wip_limitsarrayJSON containing wip limits rules for cells
default_card_type_idintegerDefault card type for new cards on board
default_tagsstring,nullDefault tags
first_image_is_coverbooleanAutomatically mark first uploaded card's image as card's cover
reset_lane_spent_timebooleanReset lane spent time when card changed lane
automove_cards_in_subcolumnsbooleanAutomove cards in subcolumns when children is done
backward_moves_enabledbooleanAllow automatic backward movement for summary boards
move_parents_to_donebooleanAutomatically move parent cards to done when their children cards on this board is done
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Title of the new board"
    },
    "description": {
      "oneOf": [
        {
          "type": "string",
          "description": "Description"
        },
        {
          "type": "null",
          "description": "Description"
        }
      ]
    },
    "top": {
      "type": "integer",
      "description": "Y coordinate of the board on space"
    },
    "left": {
      "type": "integer",
      "description": "X coordinate of the board on space"
    },
    "cell_wip_limits": {
      "type": "array",
      "description": "JSON containing wip limits rules for cells"
    },
    "default_card_type_id": {
      "type": "integer",
      "description": "Default card type for new cards on board"
    },
    "default_tags": {
      "type": [
        "string",
        "null"
      ],
      "description": "Default tags"
    },
    "first_image_is_cover": {
      "type": "boolean",
      "description": "Automatically mark first uploaded card's image as card's cover"
    },
    "reset_lane_spent_time": {
      "type": "boolean",
      "description": "Reset lane spent time when card changed lane"
    },
    "automove_cards_in_subcolumns": {
      "type": "boolean",
      "description": "Automove cards in subcolumns when children is done"
    },
    "backward_moves_enabled": {
      "type": "boolean",
      "description": "Allow automatic backward movement for summary boards"
    },
    "move_parents_to_done": {
      "type": "boolean",
      "description": "Automatically move parent cards to done when their children cards on this board is done"
    }
  },
  "anyOf": [
    {
      "required": [
        "title"
      ]
    },
    {
      "required": [
        "description"
      ]
    },
    {
      "required": [
        "top"
      ]
    },
    {
      "required": [
        "left"
      ]
    },
    {
      "required": [
        "cell_wip_limits"
      ]
    },
    {
      "required": [
        "default_card_type_id"
      ]
    },
    {
      "required": [
        "default_tags"
      ]
    },
    {
      "required": [
        "first_image_is_cover"
      ]
    },
    {
      "required": [
        "reset_lane_spent_time"
      ]
    },
    {
      "required": [
        "automove_cards_in_subcolumns"
      ]
    },
    {
      "required": [
        "backward_moves_enabled"
      ]
    },
    {
      "required": [
        "move_parents_to_done"
      ]
    }
  ]
}
Response  200
HideShow
Body
{
  "id": 1,
  "title": "New board",
  "top": 0,
  "left": 0,
  "subspace": false
}

Remove board

Remove board
DELETE/spaces/{space_id}/boards/{id}

Example URI

DELETE /spaces/space_id/boards/id
URI Parameters
HideShow
space_id
number (required) 

Space ID

id
number (required) 

Board ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
forcebooleanRemove cascade (all related data will be gone)
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "force": {
      "type": "boolean",
      "description": "Remove cascade (all related data will be gone)"
    }
  }
}
Response  200
HideShow
Body
{
  "id": 1
}

Columns

Create new column

Create new column
POST/boards/{board_id}/columns

Example URI

POST /boards/42/columns
URI Parameters
HideShow
board_id
number (required) Example: 42
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrueTitle
minLength: 1
maxLength: 128
sort_ordernumberPosition
type1 - queue, 2 – in progress, 3 – done
last_moved_warning_after_daysintegerWarning appears on stale cards
wip_limitintegerWork in progress recommended limit for column
wip_limit_type1 – card's count, 2 – card's size
col_countintegerWidth
archive_after_daysintegerSpecify amont of days after which cards will be automatically archived. Works only for columns with type **done**
months_to_hide_cardsinteger,nullHide cards not moved for the last N months
rulesintegerBit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Title"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "type": {
      "enum": [
        1,
        2,
        3
      ],
      "description": "1 - queue, 2 – in progress, 3 – done"
    },
    "last_moved_warning_after_days": {
      "type": "integer",
      "description": "Warning appears on stale cards"
    },
    "wip_limit": {
      "type": "integer",
      "description": "Work in progress recommended limit for column"
    },
    "wip_limit_type": {
      "enum": [
        1,
        2
      ],
      "description": "1 – card's count, 2 – card's size"
    },
    "col_count": {
      "type": "integer",
      "description": "Width"
    },
    "archive_after_days": {
      "type": "integer",
      "description": "Specify amont of days after which cards will be automatically archived. Works only for columns with type **done**"
    },
    "months_to_hide_cards": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Hide cards not moved for the last N months"
    },
    "rules": {
      "type": "integer",
      "minimum": 0,
      "description": "Bit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order"
    }
  },
  "required": [
    "title"
  ]
}
Response  200
HideShow
Body
{
  "id": 1,
  "title": "Lane 1",
  "sort_order": 1,
  "wip_limit": 1,
  "wip_limit_type": 1,
  "last_moved_warning_after_days": 1,
  "board_id": 1,
  "col_count": 1,
  "type": 1,
  "archive_after_days": 1,
  "column_id": 0
}

Update column

Update column
PATCH/boards/{board_id}/columns/{id}

Example URI

PATCH /boards/42/columns/421
URI Parameters
HideShow
board_id
number (required) Example: 42
id
number (required) Example: 421

Column ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringTitle
maxLength: 128
sort_ordernumberPosition
type1 - queue, 2 – in progress, 3 – done
wip_limitintegerWork in progress recommended limit for column
wip_limit_type1 – card's count, 2 – card's size
last_moved_warning_after_daysintegerWarning appears on stale cards
col_countintegerWidth
archive_after_daysintegerSpecify amount of days after which cards will be automatically archived. Works only for columns with type **done**
months_to_hide_cardsinteger,nullHide cards not moved for the last N months
rulesintegerBit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order
default_tagsstring,nullDefault tags
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 0,
      "maxLength": 128,
      "description": "Title"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "type": {
      "enum": [
        1,
        2,
        3
      ],
      "description": "1 - queue, 2 – in progress, 3 – done"
    },
    "wip_limit": {
      "type": "integer",
      "description": "Work in progress recommended limit for column"
    },
    "wip_limit_type": {
      "enum": [
        1,
        2
      ],
      "description": "1 – card's count, 2 – card's size"
    },
    "last_moved_warning_after_days": {
      "type": "integer",
      "description": "Warning appears on stale cards"
    },
    "col_count": {
      "type": "integer",
      "description": "Width"
    },
    "archive_after_days": {
      "type": "integer",
      "description": "Specify amount of days after which cards will be automatically archived. Works only for columns with type **done**"
    },
    "months_to_hide_cards": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Hide cards not moved for the last N months"
    },
    "rules": {
      "type": "integer",
      "minimum": 0,
      "description": "Bit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order"
    },
    "default_tags": {
      "type": [
        "string",
        "null"
      ],
      "description": "Default tags"
    }
  },
  "anyOf": [
    {
      "required": [
        "last_moved_warning_after_days"
      ]
    },
    {
      "required": [
        "title"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    },
    {
      "required": [
        "type"
      ]
    },
    {
      "required": [
        "wip_limit"
      ]
    },
    {
      "required": [
        "wip_limit_type"
      ]
    },
    {
      "required": [
        "col_count"
      ]
    },
    {
      "required": [
        "archive_after_days"
      ]
    },
    {
      "required": [
        "months_to_hide_cards"
      ]
    },
    {
      "required": [
        "rules"
      ]
    },
    {
      "required": [
        "default_tags"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "title": "Lane 1",
  "sort_order": 1,
  "wip_limit": 1,
  "wip_limit_type": 1,
  "last_moved_warning_after_days": 1,
  "board_id": 1,
  "col_count": 1,
  "type": 1,
  "archive_after_days": 1,
  "column_id": 0
}

Merge subcolumns

Merge subcolumns
POST/boards/{board_id}/columns/{id}/merge

Example URI

POST /boards/42/columns/421/merge
URI Parameters
HideShow
board_id
number (required) Example: 42
id
number (required) Example: 421

Column ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "title": "Lane 1",
  "sort_order": 1,
  "wip_limit": 1,
  "wip_limit_type": 1,
  "last_moved_warning_after_days": 1,
  "board_id": 1,
  "col_count": 1,
  "type": 1,
  "archive_after_days": 1,
  "column_id": 0
}

Remove column

Remove column
DELETE/boards/{board_id}/columns/{id}

Example URI

DELETE /boards/42/columns/421
URI Parameters
HideShow
board_id
number (required) Example: 42
id
number (required) Example: 421

Column ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
forcebooleanRemove cascade (all related data will be gone)
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "force": {
      "type": "boolean",
      "description": "Remove cascade (all related data will be gone)"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Subcolumn

Create new subcolumn

Create new subcolumn
POST/columns/{column_id}/subcolumns

Example URI

POST /columns/column_id/subcolumns
URI Parameters
HideShow
column_id
number (required) 

Column ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrueTitle
minLength: 1
maxLength: 128
sort_ordernumberPosition
type1 - queue, 2 – in progress, 3 – done
archive_after_daysintegerSpecify amont of days after which cards will be automatically archived. Works only for columns with type **done**
months_to_hide_cardsinteger,nullHide cards not moved for the last N months
col_countintegerWidth
rulesintegerBit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Title"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "type": {
      "enum": [
        1,
        2,
        3
      ],
      "description": "1 - queue, 2 – in progress, 3 – done"
    },
    "archive_after_days": {
      "type": "integer",
      "description": "Specify amont of days after which cards will be automatically archived. Works only for columns with type **done**"
    },
    "months_to_hide_cards": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Hide cards not moved for the last N months"
    },
    "col_count": {
      "type": "integer",
      "description": "Width"
    },
    "rules": {
      "type": "integer",
      "minimum": 0,
      "description": "Bit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order"
    }
  },
  "required": [
    "title"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 0,
  "title": "Lane 1",
  "sort_order": 0,
  "wip_limit": 0,
  "wip_limit_type": 0,
  "last_moved_warning_after_days": 0,
  "board_id": 0,
  "col_count": 0,
  "type": 0,
  "archive_after_days": 0,
  "column_id": 243
}

Get list of subcolumns

Get list of subcolumns
GET/columns/{column_id}/subcolumns

Example URI

GET /columns/column_id/subcolumns
URI Parameters
HideShow
column_id
number (required) 

Column ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 0,
    "title": "Lane 1",
    "sort_order": 0,
    "wip_limit": 0,
    "wip_limit_type": 0,
    "last_moved_warning_after_days": 0,
    "board_id": 0,
    "col_count": 0,
    "type": 0,
    "archive_after_days": 0,
    "column_id": 243
  }
]

Merge subcolumns

Merge subcolumns
POST/columns/{column_id}/merge

Example URI

POST /columns/column_id/merge
URI Parameters
HideShow
column_id
number (required) 

Column ID

Request
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json

Update subcolumn

Update subcolumn
PATCH/columns/{column_id}/subcolumns/{id}

Example URI

PATCH /columns/column_id/subcolumns/id
URI Parameters
HideShow
column_id
number (required) 

Column ID

id
number (required) 

Subcolumn ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringTitle
minLength: 1
maxLength: 128
sort_ordernumberPosition
type1 - queue, 2 – in progress, 3 – done
archive_after_daysintegerSpecify amont of days after which cards will be automatically archived. Works only for columns with type **done**
months_to_hide_cardsinteger,nullHide cards not moved for the last N months
col_countintegerWidth
rulesintegerBit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order
default_tagsstring,nullDefault tags
last_moved_warning_after_daysintegerWarning appears on stale cards
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Title"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "type": {
      "enum": [
        1,
        2,
        3
      ],
      "description": "1 - queue, 2 – in progress, 3 – done"
    },
    "archive_after_days": {
      "type": "integer",
      "description": "Specify amont of days after which cards will be automatically archived. Works only for columns with type **done**"
    },
    "months_to_hide_cards": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Hide cards not moved for the last N months"
    },
    "col_count": {
      "type": "integer",
      "description": "Width"
    },
    "rules": {
      "type": "integer",
      "minimum": 0,
      "description": "Bit mask for column rules. Rules: 1 - checklists must be checked, 2 - display FIFO order"
    },
    "default_tags": {
      "type": [
        "string",
        "null"
      ],
      "description": "Default tags"
    },
    "last_moved_warning_after_days": {
      "type": "integer",
      "description": "Warning appears on stale cards"
    }
  },
  "anyOf": [
    {
      "required": [
        "title"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    },
    {
      "required": [
        "type"
      ]
    },
    {
      "required": [
        "col_count"
      ]
    },
    {
      "required": [
        "rules"
      ]
    },
    {
      "required": [
        "archive_after_days"
      ]
    },
    {
      "required": [
        "months_to_hide_cards"
      ]
    },
    {
      "required": [
        "default_tags"
      ]
    },
    {
      "required": [
        "last_moved_warning_after_days"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 0,
  "title": "Lane 1",
  "sort_order": 0,
  "wip_limit": 0,
  "wip_limit_type": 0,
  "last_moved_warning_after_days": 0,
  "board_id": 0,
  "col_count": 0,
  "type": 0,
  "archive_after_days": 0,
  "column_id": 243
}

Remove subcolumn

Remove subcolumn
DELETE/columns/{column_id}/subcolumns/{id}

Example URI

DELETE /columns/column_id/subcolumns/id
URI Parameters
HideShow
column_id
number (required) 

Column ID

id
number (required) 

Subcolumn ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
forcebooleanRemove cascade (all related data will be gone)
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "force": {
      "type": "boolean",
      "description": "Remove cascade (all related data will be gone)"
    }
  }
}
Response  200
HideShow
Body
{
  "id": 1
}

Lanes

Create new lane

Create new lane
POST/boards/{board_id}/lanes

Example URI

POST /boards/483/lanes
URI Parameters
HideShow
board_id
number (required) Example: 483
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrueTitle
minLength: 1
maxLength: 128
sort_ordernumberPosition
wip_limitintegerWork in progress recommended limit for lane
wip_limit_type1 – card's count, 2 – card's size
last_moved_warning_after_daysintegerWarning appears on stale cards
row_countintegerHeight
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Title"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "wip_limit": {
      "type": "integer",
      "description": "Work in progress recommended limit for lane"
    },
    "wip_limit_type": {
      "enum": [
        1,
        2
      ],
      "description": "1 – card's count, 2 – card's size"
    },
    "last_moved_warning_after_days": {
      "type": "integer",
      "description": "Warning appears on stale cards"
    },
    "row_count": {
      "type": "integer",
      "description": "Height"
    }
  },
  "required": [
    "title"
  ]
}
Response  200
HideShow
Body
{
  "id": 1,
  "title": "Lane 1",
  "sort_order": 1,
  "wip_limit": 1,
  "wip_limit_type": 1,
  "last_moved_warning_after_days": 1,
  "board_id": 1,
  "row_count": 1
}

Update lane

Update lane
PATCH/boards/{board_id}/lanes/{id}

Example URI

PATCH /boards/483/lanes/id
URI Parameters
HideShow
board_id
number (required) Example: 483
id
number (required) 

Lane ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringTitle
maxLength: 128
sort_ordernumberPosition
wip_limitintegerWork in progress recommended limit for lane
wip_limit_type1 – card's count, 2 – card's size
last_moved_warning_after_daysintegerWarning appears on stale cards
row_countintegerHeight
default_tagsstring,nullDefault tags
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 0,
      "maxLength": 128,
      "description": "Title"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "wip_limit": {
      "type": "integer",
      "description": "Work in progress recommended limit for lane"
    },
    "wip_limit_type": {
      "enum": [
        1,
        2
      ],
      "description": "1 – card's count, 2 – card's size"
    },
    "last_moved_warning_after_days": {
      "type": "integer",
      "description": "Warning appears on stale cards"
    },
    "row_count": {
      "type": "integer",
      "description": "Height"
    },
    "default_tags": {
      "type": [
        "string",
        "null"
      ],
      "description": "Default tags"
    }
  },
  "anyOf": [
    {
      "required": [
        "last_moved_warning_after_days"
      ]
    },
    {
      "required": [
        "title"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    },
    {
      "required": [
        "wip_limit"
      ]
    },
    {
      "required": [
        "wip_limit_type"
      ]
    },
    {
      "required": [
        "row_count"
      ]
    },
    {
      "required": [
        "default_tags"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "title": "Lane 1",
  "sort_order": 1,
  "wip_limit": 1,
  "wip_limit_type": 1,
  "last_moved_warning_after_days": 1,
  "board_id": 1,
  "row_count": 1
}

Remove lane

Remove lane
DELETE/boards/{board_id}/lanes/{id}

Example URI

DELETE /boards/483/lanes/id
URI Parameters
HideShow
board_id
number (required) Example: 483
id
number (required) 

Lane ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
forcebooleanRemove cascade (all related data will be gone)
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "force": {
      "type": "boolean",
      "description": "Remove cascade (all related data will be gone)"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Company users

List of users

Retrieve list of users
GET/users

Example URI

GET /users
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "full_name": "John Doe",
    "username": "johnny",
    "email": "johnyy@example.com",
    "initials": "Hello, world!",
    "skype": "Hello, world!",
    "lng": "Hello, world!",
    "activated": true,
    "role": 1
  }
]

Cards

Retrieve card list

Retrieve card list
GET/cards

Example URI

GET /cards
URI Parameters
HideShow
query
String (optional) Example: Card name

Search strings

limit
Number (optional) Example: 10

maximum amount of

skip
Number (optional) 

amount of cards to skip

space_id
Number (optional) 

Space ID

board_id
Number (optional) 

Board ID

column_id
Number (optional) 

Column ID

lane_id
Number (optional) 

Lane ID

condition
Number (optional) 

1 - on board, 2 - archived

type_id
Number (optional) 

Card Type ID

created_before
string (required) Example: 2015

01-01 (String, Optional) - Created before date (format: ISO 8601)

created_after
string (required) Example: 2016

02-04T22:44:30.652Z (String, Optional) - Created after date (format: ISO 8601)

updated_before
string (required) Example: 2015

01-01 (String, Optional) - Updated before date (format: ISO 8601)

updated_after
string (required) Example: 2016

02-04T22:44:30.652Z (String, Optional) - Updated after date (format: ISO 8601)

Create new card
POST/cards

Creates a new Card.

To create a card at the beginning of the cell send position: 1 and position: 2 to place the card in the end.

Example URI

POST /cards
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringtrueTitle
minLength: 1
maxLength: 1024
board_idintegertrueBoard ID
column_idintegertrueColumn ID
lane_idintegertrueLane ID
owner_idintegerOwner ID
owner_emailstringOwner email address. Only works if email belongs to company user
asapbooleanASAP marker
due_datestringDeadline. ISO 8601 format
due_date_time_presentbooleanFlag indicating that deadline is specified up to hours and minutes
sort_orderintegerNumber of card in the cell (board_id, column_id, lane_id)
position1 - first in cell, 2 – last in cell. Overrides sort_order if present
descriptionstringDescription for card
maxLength: 32768
business_valuestringBusiness value description
maxLength: 32768
expires_laterbooleanFixed deadline or not. Date dependant flag in terms of Kanban
size_textstringSize. Example of acceptable values: '1', '23.45', '.5', 'S', '3 M', 'L', 'XL', etc...
type_idintegerCard type ID
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024,
      "description": "Title"
    },
    "board_id": {
      "type": "integer",
      "description": "Board ID"
    },
    "column_id": {
      "type": "integer",
      "description": "Column ID"
    },
    "lane_id": {
      "type": "integer",
      "description": "Lane ID"
    },
    "owner_id": {
      "type": "integer",
      "description": "Owner ID"
    },
    "owner_email": {
      "type": "string",
      "description": "Owner email address. Only works if email belongs to company user"
    },
    "asap": {
      "type": "boolean",
      "description": "ASAP marker",
      "default": false
    },
    "due_date": {
      "type": "string",
      "description": "Deadline. ISO 8601 format"
    },
    "due_date_time_present": {
      "type": "boolean",
      "description": "Flag indicating that deadline is specified up to hours and minutes"
    },
    "sort_order": {
      "type": "integer",
      "description": "Number of card in the cell (board_id, column_id, lane_id)"
    },
    "position": {
      "enum": [
        1,
        2
      ],
      "description": "1 - first in cell, 2 – last in cell. Overrides sort_order if present"
    },
    "description": {
      "type": "string",
      "maxLength": 32768,
      "description": "Description for card"
    },
    "business_value": {
      "type": "string",
      "maxLength": 32768,
      "description": "Business value description"
    },
    "expires_later": {
      "type": "boolean",
      "description": "Fixed deadline or not. Date dependant flag in terms of Kanban"
    },
    "size_text": {
      "type": "string",
      "description": "Size. Example of acceptable values: '1', '23.45', '.5', 'S', '3 M', 'L', 'XL', etc..."
    },
    "type_id": {
      "type": "integer",
      "description": "Card type ID"
    }
  },
  "required": [
    "title",
    "board_id",
    "lane_id",
    "column_id"
  ]
}
Response  200
HideShow
Body
{
  "id": 42,
  "title": "New task",
  "asap": true,
  "due_date": "2016-03-14T03:14:15.926Z",
  "description": "Task description",
  "business_value": "This will increase profits by 20%",
  "expires_later": true,
  "size_text": "1 SP",
  "board_id": 1,
  "column_id": 1,
  "lane_id": 1,
  "owner_id": 1,
  "type_id": 1,
  "project_id": 1,
  "milestone_id": 1,
  "sort_order": 1,
  "state": 1,
  "parents_count": 1,
  "children_count": 1,
  "children_done": 1,
  "goals_total": 1,
  "goals_done": 1,
  "blocking_card": true,
  "blocked": true,
  "version": 1,
  "updater_id": 1,
  "completed_on_time": true,
  "completed_at": "2016-03-14T03:14:15.926Z",
  "last_moved_at": "2016-03-14T03:14:15.926Z",
  "due_date_time_present": true,
  "size": 1,
  "size_unit": "SP"
}

Retrieve card

Retrieve card
GET/cards/{card_id}

Example URI

GET /cards/123
URI Parameters
HideShow
card_id
number (required) Example: 123

Card ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 42,
  "title": "New task",
  "asap": true,
  "due_date": "2016-03-14T03:14:15.926Z",
  "description": "Task description",
  "business_value": "This will increase profits by 20%",
  "expires_later": true,
  "size_text": "1 SP",
  "board_id": 1,
  "column_id": 1,
  "lane_id": 1,
  "owner_id": 1,
  "type_id": 1,
  "project_id": 1,
  "milestone_id": 1,
  "sort_order": 1,
  "state": 1,
  "parents_count": 1,
  "children_count": 1,
  "children_done": 1,
  "goals_total": 1,
  "goals_done": 1,
  "blocking_card": true,
  "blocked": true,
  "version": 1,
  "updater_id": 1,
  "completed_on_time": true,
  "completed_at": "2016-03-14T03:14:15.926Z",
  "last_moved_at": "2016-03-14T03:14:15.926Z",
  "due_date_time_present": true,
  "size": 1,
  "size_unit": "SP"
}

Update card

Update card
PATCH/cards/{card_id}

Example URI

PATCH /cards/123
URI Parameters
HideShow
card_id
number (required) Example: 123

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
titlestringTitle
minLength: 1
maxLength: 1024
asapbooleanASAP marker
due_datestringDeadline. ISO 8601 format
due_date_time_presentbooleanFlag indicating that deadline is specified up to hours and minutes
sort_orderintegerNumber of card in the cell (board_id, column_id, lane_id)
descriptionstringDescription for card
maxLength: 32768
business_valuestringBusiness value description
maxLength: 32768
expires_laterbooleanFixed deadline or not. Date dependant flag in terms of Kanban
size_textstringSize. Example of acceptable values: '1', '23.45', '.5', 'S', '3 M', 'L', 'XL', etc...
board_idintegerBoard ID
column_idintegerColumn ID
lane_idintegerLane ID
owner_idintegerOwner ID
type_idintegerCard type ID
blockedbooleanSend false to release all blocks related to this card
condition1 - live, 2 - archived
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024,
      "description": "Title"
    },
    "asap": {
      "type": "boolean",
      "description": "ASAP marker",
      "default": false
    },
    "due_date": {
      "type": "string",
      "description": "Deadline. ISO 8601 format"
    },
    "due_date_time_present": {
      "type": "boolean",
      "description": "Flag indicating that deadline is specified up to hours and minutes"
    },
    "sort_order": {
      "type": "integer",
      "description": "Number of card in the cell (board_id, column_id, lane_id)"
    },
    "description": {
      "type": "string",
      "maxLength": 32768,
      "description": "Description for card"
    },
    "business_value": {
      "type": "string",
      "maxLength": 32768,
      "description": "Business value description"
    },
    "expires_later": {
      "type": "boolean",
      "description": "Fixed deadline or not. Date dependant flag in terms of Kanban"
    },
    "size_text": {
      "type": "string",
      "description": "Size. Example of acceptable values: '1', '23.45', '.5', 'S', '3 M', 'L', 'XL', etc..."
    },
    "board_id": {
      "type": "integer",
      "description": "Board ID"
    },
    "column_id": {
      "type": "integer",
      "description": "Column ID"
    },
    "lane_id": {
      "type": "integer",
      "description": "Lane ID"
    },
    "owner_id": {
      "type": "integer",
      "description": "Owner ID"
    },
    "type_id": {
      "type": "integer",
      "description": "Card type ID"
    },
    "blocked": {
      "type": "boolean",
      "description": "Send false to release all blocks related to this card"
    },
    "condition": {
      "enum": [
        1,
        2
      ],
      "description": "1 - live, 2 - archived"
    }
  }
}
Response  200
HideShow
Body
{
  "id": 42,
  "title": "New task",
  "asap": true,
  "due_date": "2016-03-14T03:14:15.926Z",
  "description": "Task description",
  "business_value": "This will increase profits by 20%",
  "expires_later": true,
  "size_text": "1 SP",
  "board_id": 1,
  "column_id": 1,
  "lane_id": 1,
  "owner_id": 1,
  "type_id": 1,
  "project_id": 1,
  "milestone_id": 1,
  "sort_order": 1,
  "state": 1,
  "parents_count": 1,
  "children_count": 1,
  "children_done": 1,
  "goals_total": 1,
  "goals_done": 1,
  "blocking_card": true,
  "blocked": true,
  "version": 1,
  "updater_id": 1,
  "completed_on_time": true,
  "completed_at": "2016-03-14T03:14:15.926Z",
  "last_moved_at": "2016-03-14T03:14:15.926Z",
  "due_date_time_present": true,
  "size": 1,
  "size_unit": "SP"
}

Unblock card

Unblock card
PATCH/cards/{card_id}

Example URI

PATCH /cards/123
URI Parameters
HideShow
card_id
number (required) Example: 123

Card ID

Request
Headers
Content-Type: application/json
Body
{
    blocked: false
}
Response  200
HideShow
Body
{
  "id": 42,
  "title": "New task",
  "asap": true,
  "due_date": "2016-03-14T03:14:15.926Z",
  "description": "Task description",
  "business_value": "This will increase profits by 20%",
  "expires_later": true,
  "size_text": "1 SP",
  "board_id": 1,
  "column_id": 1,
  "lane_id": 1,
  "owner_id": 1,
  "type_id": 1,
  "project_id": 1,
  "milestone_id": 1,
  "sort_order": 1,
  "state": 1,
  "parents_count": 1,
  "children_count": 1,
  "children_done": 1,
  "goals_total": 1,
  "goals_done": 1,
  "blocking_card": true,
  "blocked": true,
  "version": 1,
  "updater_id": 1,
  "completed_on_time": true,
  "completed_at": "2016-03-14T03:14:15.926Z",
  "last_moved_at": "2016-03-14T03:14:15.926Z",
  "due_date_time_present": true,
  "size": 1,
  "size_unit": "SP"
}

Archive card

Archive card
PATCH/cards/{card_id}

Example URI

PATCH /cards/123
URI Parameters
HideShow
card_id
number (required) Example: 123

Card ID

Request
Headers
Content-Type: application/json
Body
{
    condition: 2
}
Response  200
HideShow
Body
{
  "id": 42,
  "title": "New task",
  "asap": true,
  "due_date": "2016-03-14T03:14:15.926Z",
  "description": "Task description",
  "business_value": "This will increase profits by 20%",
  "expires_later": true,
  "size_text": "1 SP",
  "board_id": 1,
  "column_id": 1,
  "lane_id": 1,
  "owner_id": 1,
  "type_id": 1,
  "project_id": 1,
  "milestone_id": 1,
  "sort_order": 1,
  "state": 1,
  "parents_count": 1,
  "children_count": 1,
  "children_done": 1,
  "goals_total": 1,
  "goals_done": 1,
  "blocking_card": true,
  "blocked": true,
  "version": 1,
  "updater_id": 1,
  "completed_on_time": true,
  "completed_at": "2016-03-14T03:14:15.926Z",
  "last_moved_at": "2016-03-14T03:14:15.926Z",
  "due_date_time_present": true,
  "size": 1,
  "size_unit": "SP"
}

Restore card from archive

Restore card from archive
PATCH/cards/{card_id}

Example URI

PATCH /cards/123
URI Parameters
HideShow
card_id
number (required) Example: 123

Card ID

Request
Headers
Content-Type: application/json
Body
{
    condition: 1
}
Response  200
HideShow
Body
{
  "id": 42,
  "title": "New task",
  "asap": true,
  "due_date": "2016-03-14T03:14:15.926Z",
  "description": "Task description",
  "business_value": "This will increase profits by 20%",
  "expires_later": true,
  "size_text": "1 SP",
  "board_id": 1,
  "column_id": 1,
  "lane_id": 1,
  "owner_id": 1,
  "type_id": 1,
  "project_id": 1,
  "milestone_id": 1,
  "sort_order": 1,
  "state": 1,
  "parents_count": 1,
  "children_count": 1,
  "children_done": 1,
  "goals_total": 1,
  "goals_done": 1,
  "blocking_card": true,
  "blocked": true,
  "version": 1,
  "updater_id": 1,
  "completed_on_time": true,
  "completed_at": "2016-03-14T03:14:15.926Z",
  "last_moved_at": "2016-03-14T03:14:15.926Z",
  "due_date_time_present": true,
  "size": 1,
  "size_unit": "SP"
}

Card blockers

Block card

Block card
POST/cards/{card_id}/blockers

Example URI

POST /cards/12/blockers
URI Parameters
HideShow
card_id
number (required) Example: 12

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
reasonstringBlock reason
minLength: 1
maxLength: 4096
blocker_card_idintegerBlocker card ID
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "reason": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Block reason"
    },
    "blocker_card_id": {
      "type": "integer",
      "description": "Blocker card ID"
    }
  },
  "oneOf": [
    {
      "required": [
        "reason"
      ]
    },
    {
      "required": [
        "blocker_card_id"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "reason": "Hello, world!",
  "card_id": 1,
  "blocker_id": 1,
  "blocker_card_id": 1,
  "released": false,
  "released_by_id": 1
}

Card tags

Add tag

Add tag
POST/cards/{card_id}/tags

Example URI

POST /cards/123/tags
URI Parameters
HideShow
card_id
number (required) Example: 123

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringtrueTag's name
minLength: 1
maxLength: 128
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Tag's name"
    }
  },
  "required": [
    "name"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "reason": "Hello, world!",
  "card_id": 1,
  "blocker_id": 1,
  "blocker_card_id": 1,
  "released": false,
  "released_by_id": 1
}

Remove tag from card

Remove tag from card
DELETE/cards/{card_id}/tags/{tag_id}

Example URI

DELETE /cards/2134/tags/436
URI Parameters
HideShow
card_id
number (required) Example: 2134

Card ID

tag_id
number (required) Example: 436

Tag ID

Response  200

Card comments

Add comment

Add comment
POST/cards/{card_id}/comments

Example URI

POST /cards/1723/comments
URI Parameters
HideShow
card_id
number (required) Example: 1723

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringtrueComment
minLength: 1
maxLength: 4096
attachmentsarray
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Comment"
    },
    "attachments": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "card_id": {
            "type": "integer"
          },
          "size": {
            "oneOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ]
          },
          "type": {
            "type": "integer"
          }
        },
        "required": [
          "name",
          "url",
          "card_id",
          "type"
        ]
      }
    }
  },
  "required": [
    "text"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "author_id": 1,
  "edited": true,
  "card_id": 1,
  "text": "Comment text"
}

Update comment

Update comment
PATCH/cards/{card_id}/comments/{comment_id}

Example URI

PATCH /cards/4732/comments/16
URI Parameters
HideShow
card_id
number (required) Example: 4732

Card ID

comment_id
number (required) Example: 16

Comment ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringComment
minLength: 1
maxLength: 4096
attachmentsarray
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Comment"
    },
    "attachments": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "card_id": {
            "type": "integer"
          },
          "size": {
            "oneOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ]
          },
          "type": {
            "type": "integer"
          }
        },
        "required": [
          "name",
          "url",
          "card_id",
          "type"
        ]
      }
    }
  },
  "anyOf": [
    {
      "required": [
        "text"
      ]
    },
    {
      "required": [
        "attachments"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "author_id": 1,
  "edited": true,
  "card_id": 1,
  "text": "Comment text"
}

Remove comment

Remove comment
DELETE/cards/{card_id}/comments/{comment_id}

Example URI

DELETE /cards/2173/comments/273
URI Parameters
HideShow
card_id
number (required) Example: 2173

Card ID

comment_id
number (required) Example: 273

Comment ID

Response  200

Card children

Add children

Add children
POST/cards/{card_id}/children

Example URI

POST /cards/12/children
URI Parameters
HideShow
card_id
number (required) Example: 12

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
card_idintegertrueID of child card
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "card_id": {
      "type": "integer",
      "description": "ID of child card"
    }
  },
  "required": [
    "card_id"
  ]
}
Response  200

Remove children

Remove children
DELETE/cards/{card_id}/children/{id}

Example URI

DELETE /cards/26/children/726
URI Parameters
HideShow
card_id
number (required) Example: 26
id
number (required) Example: 726
Response  200
HideShow
Body
{
  "id": 1
}

Card users

Add user to card

Add user to card
POST/cards/{card_id}/users

Example URI

POST /cards/53/users
URI Parameters
HideShow
card_id
number (required) Example: 53

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
user_idintegertrueUser ID
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "user_id": {
      "type": "integer",
      "description": "User ID"
    }
  },
  "required": [
    "user_id"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "full_name": "John Doe",
  "username": "johnny",
  "email": "johnyy@example.com",
  "initials": "Hello, world!",
  "skype": "Hello, world!",
  "lng": "Hello, world!",
  "activated": true,
  "type": 1
}

Update user role

Update user role
PATCH/cards/{card_id}/users/{id}

Example URI

PATCH /cards/12/users/15
URI Parameters
HideShow
card_id
number (required) Example: 12

Card ID

id
number (required) Example: 15

User ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
typeintegertrueMake user responsible for card
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "type": {
      "type": "integer",
      "minimum": 2,
      "maximum": 2,
      "description": "Make user responsible for card"
    }
  },
  "required": [
    "type"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "full_name": "John Doe",
  "username": "johnny",
  "email": "johnyy@example.com",
  "initials": "Hello, world!",
  "skype": "Hello, world!",
  "lng": "Hello, world!",
  "activated": true,
  "type": 1
}

Remove user from card

Remove user from card
DELETE/cards/{card_id}/users/{id}

Example URI

DELETE /cards/12/users/15
URI Parameters
HideShow
card_id
number (required) Example: 12

Card ID

id
number (required) Example: 15

User ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Card time logs, NOT STABLE YET

Get time logs

Get time logs
GET/cards/{card_id}/time-logs

Example URI

GET /cards/43425/time-logs
URI Parameters
HideShow
card_id
number (required) Example: 43425

Card ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "created": "2016-03-14T03:14:15.926Z",
    "updated": "2016-03-14T03:14:15.926Z",
    "card_id": 1,
    "user_id": 1,
    "role_id": 1,
    "author_id": 1,
    "updater_id": 1,
    "time_spent": 1,
    "for_date": "2016-03-14",
    "comment": "Hello, world!"
  }
]

Add time log

Add time log
POST/cards/{card_id}/time-logs

Example URI

POST /cards/43425/time-logs
URI Parameters
HideShow
card_id
number (required) Example: 43425

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
role_idintegertrueRole id, predefined role is: -1 - Employee
time_spentintegertrueMinutes to log
for_datestringtrueLog date in format YYYY-MM-DD, for example 2025-12-24
commentstringAnything you would like to comment along with time log
maxLength: 4096
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "role_id": {
      "type": "integer",
      "description": "Role id, predefined role is: -1 - Employee"
    },
    "time_spent": {
      "type": "integer",
      "description": "Minutes to log"
    },
    "for_date": {
      "type": "string",
      "description": "Log date in format YYYY-MM-DD, for example 2025-12-24"
    },
    "comment": {
      "type": "string",
      "maxLength": 4096,
      "description": "Anything you would like to comment along with time log"
    }
  },
  "required": [
    "role_id",
    "time_spent",
    "for_date"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "created": "2016-03-14T03:14:15.926Z",
  "updated": "2016-03-14T03:14:15.926Z",
  "card_id": 1,
  "user_id": 1,
  "role_id": 1,
  "author_id": 1,
  "updater_id": 1,
  "time_spent": 1,
  "for_date": "2016-03-14",
  "comment": "Hello, world!"
}

Update log record

Update log record
PATCH/cards/{card_id}/time-logs/{id}

Example URI

PATCH /cards/234/time-logs/2384
URI Parameters
HideShow
card_id
number (required) Example: 234

Card ID

id
number (required) Example: 2384

Time log ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
role_idintegerRole id, predefined role is: -1 - Employee
time_spentintegerMinutes to log
for_datestringLog date in format YYYY-MM-DD, for example 2025-12-24
commentstringAnything you would like to comment along with time log
maxLength: 4096
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "role_id": {
      "type": "integer",
      "description": "Role id, predefined role is: -1 - Employee"
    },
    "time_spent": {
      "type": "integer",
      "description": "Minutes to log"
    },
    "for_date": {
      "type": "string",
      "description": "Log date in format YYYY-MM-DD, for example 2025-12-24"
    },
    "comment": {
      "type": "string",
      "maxLength": 4096,
      "description": "Anything you would like to comment along with time log"
    }
  },
  "anyOf": [
    {
      "required": [
        "role_id"
      ]
    },
    {
      "required": [
        "time_spent"
      ]
    },
    {
      "required": [
        "for_date"
      ]
    },
    {
      "required": [
        "comment"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "created": "2016-03-14T03:14:15.926Z",
  "updated": "2016-03-14T03:14:15.926Z",
  "card_id": 1,
  "user_id": 1,
  "role_id": 1,
  "author_id": 1,
  "updater_id": 1,
  "time_spent": 1,
  "for_date": "2016-03-14",
  "comment": "Hello, world!"
}

Remove time log

Remove time log
DELETE/cards/{card_id}/time-logs/{id}

Example URI

DELETE /cards/2348/time-logs/627
URI Parameters
HideShow
card_id
number (required) Example: 2348

Card ID

id
number (required) Example: 627

Time log ID

Response  200

Tags

List of tags

Retrieve list of tags
GET/tags

Example URI

GET /tags
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "name": "Tag 1"
  }
]

Card checklists

Add checklist to card

Add checklist to card
POST/cards/{card_id}/checklists

Example URI

POST /cards/65/checklists
URI Parameters
HideShow
card_id
number (required) Example: 65
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringtrueName
minLength: 1
maxLength: 1024
sort_ordernumberPosition
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024,
      "description": "Name"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    }
  },
  "required": [
    "name"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "name": "Checklist 1",
  "sort_order": 1
}

Update checklist

Update checklist
PATCH/cards/{card_id}/checklists/{id}

Example URI

PATCH /cards/81/checklists/59
URI Parameters
HideShow
card_id
number (required) Example: 81
id
number (required) Example: 59
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringName
minLength: 1
maxLength: 1024
sort_ordernumberPosition
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024,
      "description": "Name"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    }
  },
  "anyOf": [
    {
      "required": [
        "name"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "name": "Checklist 1",
  "sort_order": 1
}

Remove checklist from card

Remove checklist from card
DELETE/cards/{card_id}/checklists/{id}

Example URI

DELETE /cards/81/checklists/59
URI Parameters
HideShow
card_id
number (required) Example: 81

Card ID

id
number (required) Example: 59

Checklist ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Card Checklist items

Add item to checklist

Add item to checklist
POST/cards/{card_id}/checklists/{checklist_id}/items

Example URI

POST /cards/213/checklists/62/items
URI Parameters
HideShow
card_id
number (required) Example: 213

Card ID

checklist_id
number (required) Example: 62

Checklist ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringtrueContent of item
minLength: 1
maxLength: 4096
sort_ordernumberPosition
checkedbooleanState
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Content of item"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "checked": {
      "type": "boolean",
      "description": "State"
    }
  },
  "required": [
    "text"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "text": "Checklist item 1",
  "sort_order": 1,
  "checked": true,
  "checklist_id": 1,
  "checker_id": 1,
  "user_id": 1
}

Update checklist item

Update checklist item
PATCH/cards/{card_id}/checklists/{checklist_id}/items/{id}

Example URI

PATCH /cards/826/checklists/826/items/82
URI Parameters
HideShow
card_id
number (required) Example: 826

Card ID

checklist_id
number (required) Example: 826

Checklist ID

id
number (required) Example: 82

Checklist item ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
text
sort_ordernumberPosition
checklist_idintegerID of new checklist
checkedbooleanState
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 4096,
          "description": "Content of item"
        },
        {
          "type": "null",
          "description": "Content of item"
        }
      ]
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "checklist_id": {
      "type": "integer",
      "description": "ID of new checklist"
    },
    "checked": {
      "type": "boolean",
      "description": "State"
    }
  },
  "anyOf": [
    {
      "required": [
        "text"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    },
    {
      "required": [
        "checklist_id"
      ]
    },
    {
      "required": [
        "checked"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "text": "Checklist item 1",
  "sort_order": 1,
  "checked": true,
  "checklist_id": 1,
  "checker_id": 1,
  "user_id": 1
}

Remove checklist item

Remove checklist item
DELETE/cards/{card_id}/checklists/{checklist_id}/items/{id}

Example URI

DELETE /cards/826/checklists/826/items/82
URI Parameters
HideShow
card_id
number (required) Example: 826

Card ID

checklist_id
number (required) Example: 826

Checklist ID

id
number (required) Example: 82

Checklist item ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Card Definition of Done (Acceptance Criteria)

Add DoD item to card

Add DoD item to card
POST/cards/{card_id}/definition-of-done

Example URI

POST /cards/266/definition-of-done
URI Parameters
HideShow
card_id
number (required) Example: 266

Card ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringtrueContent of item
minLength: 1
maxLength: 4096
sort_ordernumberPosition
checkedbooleanState
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Content of item"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "checked": {
      "type": "boolean",
      "description": "State"
    }
  },
  "required": [
    "text"
  ]
}
Response  200
HideShow
Body
{
  "id": 1,
  "text": "Checklist item 1",
  "sort_order": 1,
  "checked": true,
  "checklist_id": 1,
  "checker_id": 1,
  "user_id": 1
}

Update DoD item

Update DoD item
PATCH/cards/{card_id}/definition-of-done/{id}

Example URI

PATCH /cards/2189/definition-of-done/736
URI Parameters
HideShow
card_id
number (required) Example: 2189

Card ID

id
number (required) Example: 736

Definition of done item ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringContent of item
minLength: 1
maxLength: 4096
sort_ordernumberPosition
checkedbooleanState
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Content of item"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    },
    "checked": {
      "type": "boolean",
      "description": "State"
    }
  },
  "anyOf": [
    {
      "required": [
        "text"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    },
    {
      "required": [
        "checked"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "text": "Checklist item 1",
  "sort_order": 1,
  "checked": true,
  "checklist_id": 1,
  "checker_id": 1,
  "user_id": 1
}

Remove DoD item from card

Remove DoD item from card
DELETE/cards/{card_id}/definition-of-done/{id}

Example URI

DELETE /cards/263/definition-of-done/726
URI Parameters
HideShow
card_id
number (required) Example: 263

Card ID

id
number (required) Example: 726
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Card types

Create new card type

Create new card type
POST/card-types

Example URI

POST /card-types
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
letterstringtrueCharacter that represents type
minLength: 1
maxLength: 1
namestringtrueType name
minLength: 1
maxLength: 64
colorintegertrueColor number
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "letter": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1,
      "description": "Character that represents type"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "Type name"
    },
    "color": {
      "type": "integer",
      "minimum": 2,
      "maximum": 25,
      "description": "Color number"
    }
  },
  "required": [
    "letter",
    "name",
    "color"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "name": "Feature",
  "color": 20,
  "letter": "F"
}

Get list of card types

Get list of card types
GET/card-types

Example URI

GET /card-types
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "name": "Feature",
    "color": 20,
    "letter": "F"
  }
]

Update card type

Update card type
PATCH/card-types/{id}

Example URI

PATCH /card-types/27
URI Parameters
HideShow
id
number (required) Example: 27

Card type ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
letterstringCharacter that represents type
minLength: 1
maxLength: 1
namestringType name
minLength: 1
maxLength: 64
colorintegerColor number
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "letter": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1,
      "description": "Character that represents type"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "Type name"
    },
    "color": {
      "type": "integer",
      "minimum": 2,
      "maximum": 25,
      "description": "Color number"
    }
  },
  "anyOf": [
    {
      "required": [
        "letter"
      ]
    },
    {
      "required": [
        "name"
      ]
    },
    {
      "required": [
        "color"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "name": "Feature",
  "color": 20,
  "letter": "F"
}

Remove card type

Remove card type
DELETE/card-types/{id}

Example URI

DELETE /card-types/716
URI Parameters
HideShow
id
number (required) Example: 716

Card type ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Space users

Get list of users

Get list of users
GET/spaces/{space_id}/users

Example URI

GET /spaces/162/users
URI Parameters
HideShow
space_id
number (required) Example: 162

Space ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "full_name": "John Doe",
    "username": "johnny",
    "email": "johnyy@example.com",
    "initials": "Hello, world!",
    "skype": "Hello, world!",
    "lng": "Hello, world!",
    "activated": true,
    "role": 1
  }
]

Get user

Get user
GET/spaces/{space_id}/users/{id}

Example URI

GET /spaces/726/users/id
URI Parameters
HideShow
space_id
number (required) Example: 726

Space ID

id
number (required) 

User ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "full_name": "John Doe",
  "username": "johnny",
  "email": "johnyy@example.com",
  "initials": "Hello, world!",
  "skype": "Hello, world!",
  "lng": "Hello, world!",
  "activated": true,
  "role": 1
}

Change user role and notification settings

Change user role and notification settings
PATCH/spaces/{space_id}/users/{id}

Example URI

PATCH /spaces/277/users/id
URI Parameters
HideShow
space_id
number (required) Example: 277

Space ID

id
number (required) 

User ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
roletrue1 - reader, 2 - writer, 3 - admin
notifications_enabledbooleanEnabled or disable notifications for space events
favouritebooleanSpace marked as favourite
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "role": {
      "enum": [
        1,
        2,
        3
      ],
      "description": "1 - reader, 2 - writer, 3 - admin"
    },
    "notifications_enabled": {
      "type": "boolean",
      "description": "Enabled or disable notifications for space events"
    },
    "favourite": {
      "type": "boolean",
      "description": "Space marked as favourite"
    }
  },
  "required": [
    "role"
  ]
}
Response  200

Remove user from space

Remove user from space
DELETE/spaces/{space_id}/users/{id}

Example URI

DELETE /spaces/648/users/id
URI Parameters
HideShow
space_id
number (required) Example: 648

Space ID

id
number (required) 

User ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Column policies

Create new policy

Create new policy
POST/columns/{column_id}/policies

Example URI

POST /columns/112/policies
URI Parameters
HideShow
column_id
number (required) Example: 112
Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringtruename
minLength: 1
maxLength: 512
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "description": "name"
    }
  },
  "required": [
    "name"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "name": "Hello, world!",
  "column_id": 1
}

Get list of policies

Get list of policies
GET/columns/{column_id}/policies

Example URI

GET /columns/78/policies
URI Parameters
HideShow
column_id
number (required) Example: 78
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "name": "Hello, world!",
    "column_id": 1
  }
]

Update policy

Update policy
PATCH/columns/{column_id}/policies/{id}

Example URI

PATCH /columns/172/policies/817
URI Parameters
HideShow
column_id
number (required) Example: 172

Column ID

id
number (required) Example: 817

Column policy ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringtruename
minLength: 1
maxLength: 512
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "description": "name"
    }
  },
  "required": [
    "name"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "name": "Hello, world!",
  "column_id": 1
}

Remove policy

Remove policy
DELETE/columns/{column_id}/policies/{id}

Example URI

DELETE /columns/726/policies/726
URI Parameters
HideShow
column_id
number (required) Example: 726

Column ID

id
number (required) Example: 726

Column policy ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Column policy items

Create new item

Create new item
POST/columns/{column_id}/policies/{policy_id}/items

Example URI

POST /columns/42/policies/12/items
URI Parameters
HideShow
column_id
number (required) Example: 42

Column ID

policy_id
number (required) Example: 12

Column policy ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringtrueContent of item
minLength: 1
maxLength: 4096
sort_ordernumberPosition
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Content of item"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    }
  },
  "required": [
    "text"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "text": "Hello, world!",
  "sort_order": 1,
  "policy_id": 1,
  "user_id": 1
}

Update policy item

Update policy item
PATCH/columns/{column_id}/policies/{policy_id}/items/{id}

Example URI

PATCH /columns/56/policies/33/items/91
URI Parameters
HideShow
column_id
number (required) Example: 56

Column ID

policy_id
number (required) Example: 33

Column policy ID

id
number (required) Example: 91

Column policy item ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
textstringContent of item
minLength: 1
maxLength: 4096
sort_ordernumberPosition
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096,
      "description": "Content of item"
    },
    "sort_order": {
      "type": "number",
      "description": "Position"
    }
  },
  "anyOf": [
    {
      "required": [
        "text"
      ]
    },
    {
      "required": [
        "sort_order"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "text": "Hello, world!",
  "sort_order": 1,
  "policy_id": 1,
  "user_id": 1
}

Remove policy item

Remove policy item
DELETE/columns/{column_id}/policies/{policy_id}/items/{id}

Example URI

DELETE /columns/12/policies/52/items/85
URI Parameters
HideShow
column_id
number (required) Example: 12

Column ID

policy_id
number (required) Example: 52

Column policy ID

id
number (required) Example: 85

Column policy item ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1
}

Timesheet, NOT STABLE YET

List of card time logs

Get list
GET/time-logs

Example URI

GET /time-logs
URI Parameters
HideShow
tag_ids
String (optional) Example: 234,2342,6435

Tag ids, comma-separated

user_ids
String (optional) Example: 34,345,345345

User ids, comma-separated

space_ids
String (optional) Example: 453,238945,2

Space ids, comma-separated

board_ids
String (optional) Example: 654,24,243

Board ids, comma-separated

from
String (optional) Example: 2025-12-01

Date from, format YYYY-MM-DD

to
String (optional) Example: 2025-12-30

Date from, format YYYY-MM-DD

export
String (optional) Example: true

0 or false won’t return XLS report, every other value will result in XLS file instead of JSON

Company groups, NOT STABLE YET

Add user to group. Group will be created if not exists

Add user to group
POST/api/users/{user_id}/groups

Example URI

POST /api/users/7/groups
URI Parameters
HideShow
user_id
number (required) Example: 7

User ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringtrueGroup name
minLength: 1
maxLength: 128
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Group name"
    }
  },
  "required": [
    "name"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "user": {
    "id": 1,
    "full_name": "John Doe",
    "username": "johnny",
    "email": "johnyy@example.com",
    "initials": "Hello, world!",
    "skype": "Hello, world!",
    "lng": "Hello, world!",
    "activated": true
  },
  "group": {
    "id": 1,
    "company_id": 1,
    "created": "2016-03-14T03:14:15.926Z",
    "updated": "2016-03-14T03:14:15.926Z",
    "name": "Hello, world!"
  }
}

Remove user from group

Remove user from group
DELETE/api/users/{user_id}/groups/{group_id}

Example URI

DELETE /api/users/7/groups/42
URI Parameters
HideShow
user_id
number (required) Example: 7

User ID

group_id
number (required) Example: 42

User ID

Request
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "user": {
    "id": 1,
    "full_name": "John Doe",
    "username": "johnny",
    "email": "johnyy@example.com",
    "initials": "Hello, world!",
    "skype": "Hello, world!",
    "lng": "Hello, world!",
    "activated": true
  }
}

Rename group

Update group
PATCH/api/company/groups/{group_id}

Example URI

PATCH /api/company/groups/42
URI Parameters
HideShow
group_id
number (required) Example: 42

Group ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
namestringGroup name
minLength: 1
maxLength: 128
permissionsnumberBitmap of user permissions
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Group name"
    },
    "permissions": {
      "type": "number",
      "description": "Bitmap of user permissions"
    }
  },
  "anyOf": [
    {
      "required": [
        "name"
      ]
    },
    {
      "required": [
        "permissions"
      ]
    }
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "company_id": 1,
  "created": "2016-03-14T03:14:15.926Z",
  "updated": "2016-03-14T03:14:15.926Z",
  "name": "Hello, world!"
}

Remove group

Remove group
DELETE/api/company/groups/{group_id}

Example URI

DELETE /api/company/groups/42
URI Parameters
HideShow
group_id
number (required) Example: 42

Group ID

Request
Headers
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "company_id": 1,
  "created": "2016-03-14T03:14:15.926Z",
  "updated": "2016-03-14T03:14:15.926Z",
  "name": "Hello, world!"
}

Invite all group users to space

Invite group
POST/api/spaces/{space_id}/groups

Example URI

POST /api/spaces/42/groups
URI Parameters
HideShow
space_id
number (required) Example: 42

Space ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
group_idintegertrueGroup ID
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "group_id": {
      "type": "integer",
      "description": "Group ID"
    }
  },
  "required": [
    "group_id"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "full_name": "John Doe",
    "username": "johnny",
    "email": "johnyy@example.com",
    "initials": "Hello, world!",
    "skype": "Hello, world!",
    "lng": "Hello, world!",
    "activated": true
  }
]

Add space to group

Add space to group
POST/company/groups/{group_id}/spaces/{space_id}

Example URI

POST /company/groups/7/spaces/42
URI Parameters
HideShow
group_id
number (required) Example: 7

Group ID

space_id
number (required) Example: 42

Space ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "company_id": 1,
  "created": "2016-03-14T03:14:15.926Z",
  "updated": "2016-03-14T03:14:15.926Z",
  "name": "Hello, world!"
}

Update space role for group

Update space role for group
PATCH/company/groups/{group_id}/spaces/{space_id}

Example URI

PATCH /company/groups/7/spaces/42
URI Parameters
HideShow
group_id
number (required) Example: 7

Group ID

space_id
number (required) Example: 42

Space ID

Request
Headers
Content-Type: application/json
Attribute nameTypeRequiredDescriptionConstraints
roleintegertrueGroup role on space
HideShow
Schema
{
  "$schema": "http://json-schema.org/draft-06/schema",
  "type": "object",
  "properties": {
    "role": {
      "type": "integer",
      "description": "Group role on space"
    }
  },
  "required": [
    "role"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "id": 1,
  "company_id": 1,
  "created": "2016-03-14T03:14:15.926Z",
  "updated": "2016-03-14T03:14:15.926Z",
  "name": "Hello, world!"
}

Remove space from group

Remove space from group
DELETE/company/groups/{group_id}/spaces/{space_id}

Example URI

DELETE /company/groups/7/spaces/42
URI Parameters
HideShow
group_id
number (required) Example: 7

Group ID

space_id
number (required) Example: 42

Space ID

Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "id": 1,
    "full_name": "John Doe",
    "username": "johnny",
    "email": "johnyy@example.com",
    "initials": "Hello, world!",
    "skype": "Hello, world!",
    "lng": "Hello, world!",
    "activated": true
  }
]

Generated by aglio on 23 May 2018