Below is a GET example in Postman.
The person is allocated 1 FTE in May23, Jun23, July23, Sep23.
After issue GET request in Postman,
https://<host>/ppm/rest/v1/custMitLeaves/5700006/teams/6272387?fields=allocationCurve
The response is as follows, the value you assume would be 1 FTE, but it changes with a different type.
"allocationCurve": {
"isFiscal": false,
"curveType": "value",
"total": 2252340,
"dataType": "numeric",
"_type": "tsv",
"start": "2023-03-23T00:00:00",
"finish": "2023-09-29T11:04:00",
"segmentList": {
"total": 2252340,
"defaultValue": 0,
"segments": [
{
"start": "2023-03-23T00:00:00",
"finish": "2023-04-02T00:00:00",
"value": 0
},
{
"start": "2023-05-01T00:00:00",
"finish": "2023-07-30T00:00:00",
"value": 1621140
},
{
"start": "2023-07-31T00:00:00",
"finish": "2023-08-27T00:00:00",
"value": 0
},
{
"start": "2023-08-28T00:00:00",
"finish": "2023-10-01T11:02:30",
"value": 631200
}
]
}
}
Using PATCH and the JSON above, it is expected to save 1 FTE as the original.
However, the allocation is changed to 3600, it looks like it gets saved as a different TSV
Release : 16.0.0, 16.1.0, 16.1.1
As part of your GET request, try adding ",(workEffortUnit=fte)" to the end of your URL
For example:
GET
https://HOSTNAME/ppm/rest/v1/projects/5078206/teams/5083496?&tsvParams=(periods=(actualsCurve,months,4,2023-03-01T08:00:00,fiscal),(allocationCurve,months,4,2023-03-01T08:00:00,fiscal),(estimatesCurve,months,4,2023-03-01T08:00:00,fiscal),(hardAllocationCurve,months,4,2023-03-01T08:00:00,fiscal)),(workEffortUnit=fte)
For the PATCH, include "(workEffortUnit=fte)" in the body:
PATCH
https://HOSTNAME/ppm/rest/v1/projects/5078206/teams/5083496
body
{
"allocationCurve": {
"workEffortUnit": "fte",
"pattern": "uniform",
"periodList": [
{
"periods": [
{
"start": "2023-03-01T00:00:00",
"finish": "2023-03-31T00:00:00",
"value": 4.4444
}
]
}
]
},
"_internalId": 5083496
}