Capacity Tracker exposes a REST API than can be used to get capacity reports programmatically.
Jira Cloud
When replacing parameters indicated by <PARAMETER_NAME>, be sure to remove the ‘<' '>’ characters as well.
For example:
<MY_API_KEY> replaced by CT_API_xxx
<active_only> replaced by true or false
Authorization
Navigate to Capacity Tracker configuration screen (Jira settings > Apps > Capacity Tracker).
Create a new API Key, and save it somewhere. For security reason, we will not be able to give it back to you if you lose it.You can now call the different API endpoints with your API Key (replace <MY_API_KEY> with the previously created key).
curl -H "Authorization: Bearer <MY_API_KEY>" -H "Content-Type: application/json" https://prod-api-tk.inprowiseraws.net/public/api/v1/capacity-report/board/<my_board_id>?workPeriodId=<my_work_period_id>
Endpoints
Get capacity report
Returns the capacity report for a specific work period. In case none were specified, the most recent active one will be used.
Method | Endpoint |
---|---|
GET | https://prod-api-tk.inprowiseraws.net/public/api/v1/capacity-report/board/<my_board_id>?workPeriodId=<my_work_period_id> |
Parameter | Type | Required | Default Value | Description |
---|---|---|---|---|
<board_id> | Number | Yes | ID of your Jira Board (or RapidView). | |
<my_work_period_id> | Number | No | 0 | ID of your sprint or version. |
Get consolidated capacity report
Returns the consolidated capacity report including all work periods.
Method | Endpoint |
---|---|
GET | https://prod-api-tk.inprowiseraws.net/public/api/v1/capacity-report/board/<my_board_id>/consolidated?activeOnly=<active_only> |
Parameter | Type | Required | Default Value | Description |
---|---|---|---|---|
<board_id> | Number | Yes | ID of your Jira Board (or RapidView). | |
<active_only> | Boolean | No | false | Only return active work periods (i.e. future work periods will not be included in the results). |
Get consolidated capacity report (flat)
Returns the consolidated capacity report including all work periods in a flat schema (the report will be returned as a list of records with all necessary columns instead of a nested JSON object).
This call is mostly used to integrate with Excel/PowerBI.
Method | Endpoint |
---|---|
GET | https://prod-api-tk.inprowiseraws.net/public/api/v1/capacity-report/board/<my_board_id>/consolidated-flat?activeOnly=<active_only>&includeUnassigned=<include_unassigned>&filterDaysOff=<filter_days_off> |
Parameter | Type | Required | Default Value | Description |
---|---|---|---|---|
<board_id> | Number | Yes | ID of your Jira Board (or RapidView). | |
<active_only> | Boolean | No | false | Only return active work periods (i.e. future work periods will not be included in the results). |
<include_unassigned> | Boolean | No | false | Include unassigned issues in your capacity report. |
<filter_days_off> | Boolean | No | false | Filter days off based on the work period start/end dates. |
Get user days off
Returns the full list of user days off.
Method | Endpoint |
---|---|
GET | https://prod-api-tk.inprowiseraws.net/public/api/v1/user-days-off |
Update user days off
Updates the user days off directly without using the Capacity Tracker UI.
Method | Endpoint | Request Body |
---|---|---|
PUT | https://prod-api-tk.inprowiseraws.net/public/api/v1/user-days-off | Capacity Tracker supports two different kinds of days off:
YYYY-MM-DD or YYYY-MM-DD F
YYYY-MM-DD H Two modes are supported: Set { "set": { "jira_user_account_id_1": [ "2023-06-05", "2023-06-06 H", "2023-06-07 H", "2023-06-08" ], "jira_user_account_id_2": [ "2023-06-05", "2023-06-06 H", "2023-06-07 H", "2023-06-08" ] } } This mode will completely replace the days off for the given user account IDs (all existing days off will be removed). Add / remove { "remove": { "jira_user_account_id_1": [ "2023-06-05", "2023-06-06 H", "2023-06-07 H", "2023-06-08" ] "jira_user_account_id_2": [ "2023-06-05", "2023-06-06 H", "2023-06-07 H", "2023-06-08" ] }, "add": { "jira_user_account_id_1": [ "2023-06-31" ] "jira_user_account_id_2": [ "2023-06-31" ] } } This mode will always execute the operations in this order: Remove, then Add.
|
Jira Server / Jira DataCenter
When replacing parameters indicated by <PARAMETER_NAME>, be sure to remove the ‘<' '>’ characters as well.
For example:
<MY_API_KEY> replaced by CT_API_xxx
<active_only> replaced by true or false
Authorization
Compute the base64 of
<my_jira_user>:<my_jira_password>
(you can use https://www.base64encode.org/ for simplicity).
For example, if your username isfred
and your passwordtoto
, you should compute the base64 offred:toto
, which isZnJlZDp0b3Rv
Call the API:
curl -H "Authorization: Basic ZnJlZDp0b3Rv" -H "Content-Type: application/json" https://<my_jira_url>/rest/capacity-tracker/latest/public/api/v1/capacity-report/board/<my_board_id>?workPeriodId=<my_work_period_id>
Endpoints
All endpoints must be prefixed by:
https://<my_jira_url>/rest/capacity-tracker/latest/public/api/
Method | Endpoint | Description |
---|---|---|
GET | v1/capacity-report?boardId=<my_board_id>&workPeriodId=<my_work_period_id> | DEPRECATED |
GET | v1/capacity-report/board/<my_board_id>?workPeriodId=<my_work_period_id> | Will return the capacity report for a specific sprint/version. In case none were specified, the most recent active one will be used.
|
GET | v1/capacity-report/board/<my_board_id>/consolidated?activeOnly=<active_only> | Will return the consolidated capacity report including all sprints/versions.
|
GET | v1/capacity-report/board/<my_board_id>/consolidated-flat?activeOnly=<active_only>&includeUnassigned=<include_unassigned> | Will return the consolidated capacity report including all sprints/versions in a flat schema. This call is mostly used to integrate with Excel/PowerBI.
|