You can use the public API endpoints to set up integration between BigPicture and external tools. To get responses, you need to have admin permissions.
...
Operation | Request type: URL | Additional info | Example of response |
---|---|---|---|
Get absence for a particular Resource | GET baseUrl/public/ppm/resources/{individualId}/absences Accept: application/json Authorization: APIToken <token> Cookie: JSESSIONID=sessionId | Replace baseUrl with your real URL, for example: https://qa.softwareplant.com/prod/rest/softwareplant-bigpicture/1.0 For {individualId}, use a pattern: EXT_USER@<extplatform_id>@<user_id_in_extplatform> Replace <extplatform_id> with an ID for an external platform you use data from. If your default external platform is Jira Server, enter 2. To check <extplatform_id>, go to App Configuration → Integrations → Connections. Click F12 to see a side window on the right. Go to "Network" → "Fetch/XHR". Refresh the page, click "extplatform" and navigate to the "Preview" section. The <extplatform_id> will be visible there, as presented below. Copy an ID for the platform you want to use. Next, replace <user_id_in_extplatform> with a real ID of the user from the external platform you want to use (for Jira Server, enter a user ID in Jira, for another extplatform like Trello, provide a user ID in Trello). You can generate an APIToken in BigPicture -> My settings -> API tokens. For more info, click here. The token is valid for 1 year. To catch your sessionId, you can: | Example of API response for Resource absence: |
Create absence for a particular Resource | POST baseUrl/public/ppm/resources/{individualId}/absences Content-Type: application/json Authorization: APIToken <token> Cookie: JSESSIONID=sessionId Request Body: { "startDate": "2022-12-02", "endDate": "2022-12-02", "absenceType": "HOLIDAY", "comment": "new comment content", "percentageUnavailability": 100 } | There are 5 different absenceType you can use:
You can set percentageUnavailability to 50 or 100. To provide data, use the pattern: YYYY-MM-dd. | |
Update absence for a particular Resource | PUT baseUrl/public/ppm/resources/{individualId}/absences?startDate={startDate} Content-Type: application/json Authorization: APIToken <token> Cookie: JSESSIONID=sessionId Request Body: { "startDate": "2024-07-21", "endDate": "2024-09-21", "absenceType": "OTHER REASON", "comment": "updated comment content", "percentageUnavailability": 50 } | ||
Delete absence for a particular Resource | DELETE baseUrl/public/ppm/resources/{individualId}/absences?startDate={startDate} Content-Type: application/json Authorization: APIToken <token> Cookie: JSESSIONID=sessionId |
...
Operation | Request type: URL | Additional info |
---|---|---|
Get all Box IDs associated with a selected task in the scope | GET {baseURL}/public/ppm/boxarea/task/{taskIdorExtPlatformTaskKey}/boxes Accept: application/json Authorization: APIToken <token> Cookie: JSESSIONID=sessionId | Replace baseUrl with your real URL, for example: https://qa.softwareplant.com/prod/rest/softwareplant-bigpicture/1.0 You can find taskId in BigPicture, for example, "108".
For ExtPlatformTaskKey, use this pattern {extplatformId}@{extTaskType}@{extTaskId}, for example, "2@1@1034407".
Make sure that the WBS widget is enabled. You can generate an APIToken in BigPicture -> My settings -> API tokens. For more info, click here. The token is valid for 1 year. To catch your sessionId, you can: |
...
Parameter | Location | Type | Description |
---|---|---|---|
taskIdOrExtPlatformTaskKey | Path | String | Providing taskId or ExtPlatformTaskKey is mandatory. You can find taskId in BigPicture, for example, "108".
For ExtPlatformTaskKey, use this pattern {extplatformId}@{extTaskType}@{extTaskId}, for example, "2@1@1034407".
Make sure that the WBS widget is enabled. |
fieldId | Query String | String or Integer | Providing taskFieldId or globalFieldName is mandatory. Enter taskFieldId - TaskFieldId (integer) used to identify a field in BigPicture, for example, "518". Enter globalFieldName - GlobalFieldName (String) used to identify global field names, for example, "Story Points". |
aggregationType | Query String | String | Providing aggregationType is mandatory. Possible values: - MIN |
boxId | Query String | String | Providing boxId is optional. This parameter can be used as a context for aggregation. You can find your boxId in the URL bar or next to the status of the Box, for example, "PROG-30". |
...