API V3 Documentation – ALC
Preview: this documents PQFORCE 4.26.6, which has not been released yet.
Endpoints
GET /API/V3/ALC/AbsenceType/:absenceTypeId
Returns a specific type of absence
HTTP syntax
GET /API/V3/ALC/AbsenceType/:absenceTypeId
<- application/json : RES.AbsenceType
JavaScript syntax
Pqf.alc.getAbsenceType(absenceTypeId) // returns RES.AbsenceType
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
absenceTypeId |
UUID | The absence type's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: RES.AbsenceType
GET /API/V3/ALC/AbsenceType/:absenceTypeId/WithTranslations
Returns a specific type of absence with translations
HTTP syntax
GET /API/V3/ALC/AbsenceType/:absenceTypeId/WithTranslations
<- application/json : RES.AbsenceTypeTranslated
JavaScript syntax
Pqf.alc.getAbsenceTypeTranslated(absenceTypeId) // returns RES.AbsenceTypeTranslated
Required permission
Requires permission 20992979D2E34BE59C715B21AAA40DFE.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
absenceTypeId |
UUID | The absence type's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: RES.AbsenceTypeTranslated
PUT /API/V3/ALC/AbsenceType/:absenceTypeId/WithTranslations
Creates or updates a specific type of absence with translations
HTTP syntax
PUT /API/V3/ALC/AbsenceType/:absenceTypeId/WithTranslations
-> application/json : RES.AbsenceTypeTranslated
JavaScript syntax
Pqf.alc.putAbsenceTypeTranslated(absenceTypeId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Required permission
Requires permission 20992979D2E34BE59C715B21AAA40DFE.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
absenceTypeId |
UUID | The absence type's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
requestJson |
RES.AbsenceTypeTranslated | JSON object of type AbsenceTypeTranslated | ✔️ |
DELETE /API/V3/ALC/AbsenceType/:absenceTypeId/WithTranslations
Deletes a specific type of absence
HTTP syntax
DELETE /API/V3/ALC/AbsenceType/:absenceTypeId/WithTranslations
JavaScript syntax
Pqf.alc.delAbsenceTypeTranslated(absenceTypeId) // returns Number - the return code (HTTP 2xx code) of the call
Required permission
Requires permission 20992979D2E34BE59C715B21AAA40DFE.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
absenceTypeId |
UUID | The absence type's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
GET /API/V3/ALC/AbsenceTypes
Returns references to all types of absence that are available
HTTP syntax
GET /API/V3/ALC/AbsenceTypes?sort=...
<- application/json
JavaScript syntax
Pqf.alc.getAllAbsenceTypes(sort) // returns PF.Reference[]
// Overloads for optional parameters
Pqf.alc.getAllAbsenceTypes() // returns PF.Reference[]
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
sort |
array of string | Array which defines ordering. Syntax of an element: propertyname, propertyname:asc or propertyname:desc. Possible properties: type, id, name, code, description, color, availabilityPercentage, presencePercentage, category | pqforce.performance.sort.max >= length > 0;non-null & matches '[ (The array, if present, must contain at least one element and at most the configured "pqforce.performance.sort.max" elements. Each element must not be null and must be a property name of at most 32 characters, optionally followed by ":asc" or ":desc".) |
Result
This endpoint returns the following data: array of PF.Reference
GET /API/V3/ALC/AbsenceTypes/:absenceTypeIds
Returns some types of absence specified by their IDs
HTTP syntax
GET /API/V3/ALC/AbsenceTypes/:absenceTypeIds
<- application/json
JavaScript syntax
Pqf.alc.getAbsenceTypes(absenceTypeIds) // returns RES.AbsenceType[]
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
absenceTypeIds |
array of UUID | The absence types' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: array of RES.AbsenceType
GET /API/V3/ALC/AbsenceTypes/:absenceTypeIds/WithTranslations
Returns some types of absence specified by their IDs with translations
HTTP syntax
GET /API/V3/ALC/AbsenceTypes/:absenceTypeIds/WithTranslations
<- application/json
JavaScript syntax
Pqf.alc.getAbsenceTypesTranslated(absenceTypeIds) // returns RES.AbsenceTypeTranslated[]
Required permission
Requires permission 20992979D2E34BE59C715B21AAA40DFE.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
absenceTypeIds |
array of UUID | The absence types' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: array of RES.AbsenceTypeTranslated
GET /API/V3/ALC/Project/:projectId/InvolvedResources
Returns the references of all resources involved in a project, by allocation or by reported actuals
HTTP syntax
GET /API/V3/ALC/Project/:projectId/InvolvedResources?sort=...
<- application/json
JavaScript syntax
Pqf.alc.getInvolvedResources(projectId, sort) // returns PF.Reference[]
// Overloads for optional parameters
Pqf.alc.getInvolvedResources(projectId) // returns PF.Reference[]
Required permission
Requires permission IDENTIFY on object of type Project and ID specified in parameter projectId.
The returned array is filtered and contains only objects with permission IDENTIFY.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
projectId |
UUID | The project's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
sort |
array of string | Array which defines ordering. Syntax of an element: propertyname, propertyname:asc or propertyname:desc. Possible properties: type, id, name, code, description, color, createdAt, modifiedAt and dynamic properties with sortable semantics (String, UUID, Integer, Long, Double, Boolean, Duration, PointInTime, Day, CurrencyAmount, URI, Color). Dynamic properties can only be used if the request concerns a single object type, otherwise only the fixed properties are sortable | pqforce.performance.sort.max >= length > 0;non-null & matches '[ (The array, if present, must contain at least one element and at most the configured "pqforce.performance.sort.max" elements. Each element must not be null and must be a property name of at most 32 characters, optionally followed by ":asc" or ":desc".) |
Result
This endpoint returns the following data: array of PF.Reference
GET /API/V3/ALC/Project/:projectId/ResourceAllocations
Returns references to all resource allocations of a project's active scenario (or of its single scenario if that is not active), each one with the project work item it belongs to as its parent; read them in full with getResourceAllocations. A project without such a scenario is answered with 404
HTTP syntax
GET /API/V3/ALC/Project/:projectId/ResourceAllocations?sort=...
<- application/json
JavaScript syntax
Pqf.alc.getAllResourceAllocationsOfProject(projectId, sort) // returns PF.ReferenceWithParent[]
// Overloads for optional parameters
Pqf.alc.getAllResourceAllocationsOfProject(projectId) // returns PF.ReferenceWithParent[]
Required permission
Requires permission READ on object of type Project and ID specified in parameter projectId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
projectId |
UUID | The project's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
sort |
array of string | Array which defines ordering. Syntax of an element: propertyname, propertyname:asc or propertyname:desc. Possible properties: type, id, createdAt, modifiedAt, resourceId, state, amount | pqforce.performance.sort.max >= length > 0;non-null & matches '[ (The array, if present, must contain at least one element and at most the configured "pqforce.performance.sort.max" elements. Each element must not be null and must be a property name of at most 32 characters, optionally followed by ":asc" or ":desc".) |
Result
This endpoint returns the following data: array of PF.ReferenceWithParent
GET /API/V3/ALC/ProjectScenario/:projectScenarioId/ResourceAllocations
Returns references to all resource allocations of a project scenario, each one with the project work item it belongs to as its parent; read them in full with getResourceAllocations
HTTP syntax
GET /API/V3/ALC/ProjectScenario/:projectScenarioId/ResourceAllocations?sort=...
<- application/json
JavaScript syntax
Pqf.alc.getAllResourceAllocationsOfProjectScenario(projectScenarioId, sort) // returns PF.ReferenceWithParent[]
// Overloads for optional parameters
Pqf.alc.getAllResourceAllocationsOfProjectScenario(projectScenarioId) // returns PF.ReferenceWithParent[]
Required permission
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
sort |
array of string | Array which defines ordering. Syntax of an element: propertyname, propertyname:asc or propertyname:desc. Possible properties: type, id, createdAt, modifiedAt, resourceId, state, amount | pqforce.performance.sort.max >= length > 0;non-null & matches '[ (The array, if present, must contain at least one element and at most the configured "pqforce.performance.sort.max" elements. Each element must not be null and must be a property name of at most 32 characters, optionally followed by ":asc" or ":desc".) |
Result
This endpoint returns the following data: array of PF.ReferenceWithParent
GET /API/V3/ALC/ProjectWorkItem/:projectWorkItemId/ResourceAllocations
Returns references to all resource allocations of a project work item, each one with the work item as its parent; read them in full with getResourceAllocations
HTTP syntax
GET /API/V3/ALC/ProjectWorkItem/:projectWorkItemId/ResourceAllocations?sort=...
<- application/json
JavaScript syntax
Pqf.alc.getAllResourceAllocationsOfProjectWorkItem(projectWorkItemId, sort) // returns PF.ReferenceWithParent[]
// Overloads for optional parameters
Pqf.alc.getAllResourceAllocationsOfProjectWorkItem(projectWorkItemId) // returns PF.ReferenceWithParent[]
Required permission
Requires permission READ on object of type ProjectWorkItem and ID specified in parameter projectWorkItemId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
projectWorkItemId |
UUID | The project work item's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
sort |
array of string | Array which defines ordering. Syntax of an element: propertyname, propertyname:asc or propertyname:desc. Possible properties: type, id, createdAt, modifiedAt, resourceId, state, amount | pqforce.performance.sort.max >= length > 0;non-null & matches '[ (The array, if present, must contain at least one element and at most the configured "pqforce.performance.sort.max" elements. Each element must not be null and must be a property name of at most 32 characters, optionally followed by ":asc" or ":desc".) |
Result
This endpoint returns the following data: array of PF.ReferenceWithParent
POST /API/V3/ALC/ProjectWorkItem/:projectWorkItemId/ResourceAllocations/Add
Allocates a resource to a project work item and returns the reference to the new resource allocation. A resource can be allocated to a work item only once, so a resource already allocated to it is answered with 400. It requires the ALLOCATE permission on the project work item and, unless the allocation workflow is enabled, also on the resource, in which case the new allocation is approved at once
HTTP syntax
POST /API/V3/ALC/ProjectWorkItem/:projectWorkItemId/ResourceAllocations/Add?resourceId=...&amount=...&amountUnit=...&amountType=...
<- application/json : PF.Reference
JavaScript syntax
Pqf.alc.addResourceAllocation(projectWorkItemId, resourceId, amount, amountUnit, amountType) // returns PF.Reference
// Overloads for optional parameters
Pqf.alc.addResourceAllocation(projectWorkItemId, resourceId, amount, amountUnit) // returns PF.Reference
Pqf.alc.addResourceAllocation(projectWorkItemId, resourceId, amount) // returns PF.Reference
Pqf.alc.addResourceAllocation(projectWorkItemId, resourceId) // returns PF.Reference
Required permission
Requires permission ALLOCATE on object of type ProjectWorkItem and ID specified in parameter projectWorkItemId.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
projectWorkItemId |
UUID | The project work item's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
resourceId |
UUID | The ID of the resource to allocate (required) | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
amount |
double | The amount that is allocated, measured as amountType tells | n >= 0 (The value must be at least 0.) |
0 |
|
amountUnit |
string | The unit of an absolute amount: h (hours), d (days), w (weeks), m (months) or a (years); must be omitted for any other amount type | matches '[hdwmaHDWMA]' (The value, if present, must match the regular expression shown.) |
||
amountType |
ResourceAllocationAmountType | How the amount is measured | Absolute |
Result
This endpoint returns the following data: PF.Reference
GET /API/V3/ALC/Resource/:resourceId/InvolvedProjects
Returns the references of all projects a resource is involved in, by allocation or by reported actuals
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/InvolvedProjects?sort=...
<- application/json
JavaScript syntax
Pqf.alc.getInvolvedProjects(resourceId, sort) // returns PF.Reference[]
// Overloads for optional parameters
Pqf.alc.getInvolvedProjects(resourceId) // returns PF.Reference[]
Required permission
Requires permission IDENTIFY on object of type Resource and ID specified in parameter resourceId.
The returned array is filtered and contains only objects with permission IDENTIFY.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
sort |
array of string | Array which defines ordering. Syntax of an element: propertyname, propertyname:asc or propertyname:desc. Possible properties: type, id, name, code, description, color, createdAt, modifiedAt and dynamic properties with sortable semantics (String, UUID, Integer, Long, Double, Boolean, Duration, PointInTime, Day, CurrencyAmount, URI, Color) | pqforce.performance.sort.max >= length > 0;non-null & matches '[ (The array, if present, must contain at least one element and at most the configured "pqforce.performance.sort.max" elements. Each element must not be null and must be a property name of at most 32 characters, optionally followed by ":asc" or ":desc".) |
Result
This endpoint returns the following data: array of PF.Reference
GET /API/V3/ALC/Resource/:resourceId/PlannedTimeSlot/ByProject
Returns the planned time of a resource as one single slot over exactly the requested time span, grouped by project. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance. Every project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one; select the projects of interest from the answer. The time planned on projects the caller may not identify is added to the base load, which also contains the base load of the resource's worktime model; it is referenced by the type BaseLoad and an ID derived from the resource's ID
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/PlannedTimeSlot/ByProject?beg=...&end=...
<- application/json : PF.GroupedDurationSlot
JavaScript syntax
Pqf.alc.getResourcePlannedTimeSlotByProject(resourceId, beg, end) // returns PF.GroupedDurationSlot
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: PF.GroupedDurationSlot
GET /API/V3/ALC/Resource/:resourceId/PlannedTimeSlots/ByProject
Returns the planned time of a resource in time slots, grouped by project. Every project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one; select the projects of interest from the answer. The time planned on projects the caller may not identify is added to the base load, which also contains the base load of the resource's worktime model; it is referenced by the type BaseLoad and an ID derived from the resource's ID
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/PlannedTimeSlots/ByProject?beg=...&end=...&zoom=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcePlannedTimeSlotsByProject(resourceId, beg, end, zoom) // returns PF.GroupedDurationSlot[]
// Overloads for optional parameters
Pqf.alc.getResourcePlannedTimeSlotsByProject(resourceId, beg, end) // returns PF.GroupedDurationSlot[]
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
zoom |
PF.CalendarGranularity | The calendar unit of the slots. If set, all slots are of this unit, only the first and the last one may be cut by the time span. If omitted, the server chooses the slots, which may then differ in width |
Result
This endpoint returns the following data: array of PF.GroupedDurationSlot
GET /API/V3/ALC/Resource/:resourceId/Project/:projectId/PlannedTimeSlot/ByProjectWorkItem
Returns the time one project plans for a resource as one single slot over exactly the requested time span, grouped by work item. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance. The project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one. Work items without time within the slot are omitted; the time on work items the caller may not identify is answered under the reference of the project itself
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/Project/:projectId/PlannedTimeSlot/ByProjectWorkItem?beg=...&end=...
<- application/json : PF.GroupedDurationSlot
JavaScript syntax
Pqf.alc.getResourceProjectPlannedTimeSlotByProjectWorkItem(resourceId, projectId, beg, end) // returns PF.GroupedDurationSlot
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Requires permission READ on object of type Project and ID specified in parameter projectId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectId |
UUID | The project's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: PF.GroupedDurationSlot
GET /API/V3/ALC/Resource/:resourceId/ProjectScenario/:projectScenarioId/PlannedTimeSlot
Returns the time a project scenario plans for a resource as one single slot over exactly the requested time span. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance, whether the scenario is active or not
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ProjectScenario/:projectScenarioId/PlannedTimeSlot?beg=...&end=...
<- application/json : PF.DurationSlot
JavaScript syntax
Pqf.alc.getResourceScenarioPlannedTimeSlot(resourceId, projectScenarioId, beg, end) // returns PF.DurationSlot
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: PF.DurationSlot
GET /API/V3/ALC/Resource/:resourceId/ProjectScenario/:projectScenarioId/PlannedTimeSlot/ByProjectWorkItem
Returns the time a project scenario plans for a resource as one single slot over exactly the requested time span, grouped by work item. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance. The scenario counts whether it is active or not. Work items without time within the slot are omitted; the time on work items the caller may not identify is answered under the reference of the scenario itself
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ProjectScenario/:projectScenarioId/PlannedTimeSlot/ByProjectWorkItem?beg=...&end=...
<- application/json : PF.GroupedDurationSlot
JavaScript syntax
Pqf.alc.getResourceScenarioPlannedTimeSlotByProjectWorkItem(resourceId, projectScenarioId, beg, end) // returns PF.GroupedDurationSlot
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: PF.GroupedDurationSlot
GET /API/V3/ALC/Resource/:resourceId/ProjectScenario/:projectScenarioId/PlannedTimeSlots
Returns the time a project scenario plans for a resource in time slots, whether the scenario is active or not
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ProjectScenario/:projectScenarioId/PlannedTimeSlots?beg=...&end=...&zoom=...
<- application/json
JavaScript syntax
Pqf.alc.getResourceScenarioPlannedTimeSlots(resourceId, projectScenarioId, beg, end, zoom) // returns PF.DurationSlot[]
// Overloads for optional parameters
Pqf.alc.getResourceScenarioPlannedTimeSlots(resourceId, projectScenarioId, beg, end) // returns PF.DurationSlot[]
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
zoom |
PF.CalendarGranularity | The calendar unit of the slots. If set, all slots are of this unit, only the first and the last one may be cut by the time span. If omitted, the server chooses the slots, which may then differ in width |
Result
This endpoint returns the following data: array of PF.DurationSlot
GET /API/V3/ALC/Resource/:resourceId/ResourceAllocations/Changes
Returns the changes to the allocations of a resource on work items that lie within a range of days, newest first. Every project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one. Changes to allocations the caller may not read are left out
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ResourceAllocations/Changes?beg=...&end=...&from=...&until=...&limit=...
<- application/json
JavaScript syntax
Pqf.alc.getResourceAllocationChangesOfResource(resourceId, beg, end, from, until, limit) // returns ResourceAllocationChange[]
// Overloads for optional parameters
Pqf.alc.getResourceAllocationChangesOfResource(resourceId, beg, end, from, until) // returns ResourceAllocationChange[]
Pqf.alc.getResourceAllocationChangesOfResource(resourceId, beg, end, from) // returns ResourceAllocationChange[]
Pqf.alc.getResourceAllocationChangesOfResource(resourceId, beg, end) // returns ResourceAllocationChange[]
Required license
This endpoint requires the following licenses:
- allocationhistory
Required permission
Requires permission READ on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day the work item of an allocation has to reach (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day the work item of an allocation may start on (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
from |
datetime | The earliest point in time a change was made | ||
until |
datetime | The latest point in time a change was made | ||
limit |
int? | Limits the number of changes, the newest first | i > 0 (The value, if present, must be greater than 0.) |
Result
This endpoint returns the following data: array of ResourceAllocationChange
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan
Returns the shift plan of a resource, a matrix of days and resource shifts whose slots each hold an absence and a reservation, either of them possibly empty. The range must not span more than the days pqforce.dayrange.max allows, which is what one call may be answered day by day
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan?beg=...&end=...
<- application/json : ResourceShiftPlan
JavaScript syntax
Pqf.alc.getResourceShiftPlan(resourceId, beg, end) // returns ResourceShiftPlan
Required permission
Requires permission READ_ACTUALS on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: ResourceShiftPlan
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan/Absences/Changes
Returns the changes to the absences of a resource's shift plan within a range of days, newest first. Slots are not versioned, so a slot changed in place shows only its latest state. The range must not span more than the days pqforce.dayrange.max allows
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan/Absences/Changes?beg=...&end=...&from=...&until=...&limit=...
<- application/json
JavaScript syntax
Pqf.alc.getResourceShiftPlanAbsenceChanges(resourceId, beg, end, from, until, limit) // returns ResourceShiftPlanChange[]
// Overloads for optional parameters
Pqf.alc.getResourceShiftPlanAbsenceChanges(resourceId, beg, end, from, until) // returns ResourceShiftPlanChange[]
Pqf.alc.getResourceShiftPlanAbsenceChanges(resourceId, beg, end, from) // returns ResourceShiftPlanChange[]
Pqf.alc.getResourceShiftPlanAbsenceChanges(resourceId, beg, end) // returns ResourceShiftPlanChange[]
Required license
This endpoint requires the following licenses:
- allocationhistory
Required permission
Requires permission READ_ACTUALS on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the slots (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the slots (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
from |
datetime | The earliest point in time a change was made | ||
until |
datetime | The latest point in time a change was made | ||
limit |
int? | Limits the number of changes, the newest first | i > 0 (The value, if present, must be greater than 0.) |
Result
This endpoint returns the following data: array of ResourceShiftPlanChange
POST /API/V3/ALC/Resource/:resourceId/ShiftPlan/ByProjectWorkItem/:projectWorkItemId/Assign
Reserves a resource for one single project work item along the shift plan of that work item, which is a pattern of days and resource shifts laid out from the work item's start onwards. It is the counterpart of unassignResourceShiftPlanByProjectWorkItem, and like it leaves the absences of the shift plan and the reservations of every other work item untouched. A work item without a start has no days to lay the pattern onto and is answered with 400. Unless force is set, a day and shift another reservation already occupies is kept. It requires the RESERVE permission on the resource and the UPDATE permission on the project work item
HTTP syntax
POST /API/V3/ALC/Resource/:resourceId/ShiftPlan/ByProjectWorkItem/:projectWorkItemId/Assign?force=...
JavaScript syntax
Pqf.alc.assignResourceShiftPlanByProjectWorkItem(resourceId, projectWorkItemId, force) // returns Number - the return code (HTTP 2xx code) of the call
// Overloads for optional parameters
Pqf.alc.assignResourceShiftPlanByProjectWorkItem(resourceId, projectWorkItemId) // returns Number - the return code (HTTP 2xx code) of the call
Required permission
Requires permission RESERVE on object of type Resource and ID specified in parameter resourceId.
Requires permission UPDATE on object of type ProjectWorkItem and ID specified in parameter projectWorkItemId.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
projectWorkItemId |
UUID | The project work item's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
force |
boolean | Whether the assignment overwrites the reservations the resource already holds on the days and shifts the pattern covers | false |
POST /API/V3/ALC/Resource/:resourceId/ShiftPlan/ByProjectWorkItem/:projectWorkItemId/Delete
Deletes every reservation the shift plan of a resource holds for one single project work item, over the whole time the plan spans; the absences of the shift plan stay untouched. It requires the RESERVE permission on the resource and the UPDATE permission on the project work item
HTTP syntax
POST /API/V3/ALC/Resource/:resourceId/ShiftPlan/ByProjectWorkItem/:projectWorkItemId/Delete
JavaScript syntax
Pqf.alc.unassignResourceShiftPlanByProjectWorkItem(resourceId, projectWorkItemId) // returns Number - the return code (HTTP 2xx code) of the call
Required permission
Requires permission RESERVE on object of type Resource and ID specified in parameter resourceId.
Requires permission UPDATE on object of type ProjectWorkItem and ID specified in parameter projectWorkItemId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectWorkItemId |
UUID | The project work item's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan/Reservations/Changes
Returns the changes to the reservations of a resource's shift plan within a range of days, newest first. Slots are not versioned, so a slot changed in place shows only its latest state. The range must not span more than the days pqforce.dayrange.max allows
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan/Reservations/Changes?beg=...&end=...&from=...&until=...&limit=...
<- application/json
JavaScript syntax
Pqf.alc.getResourceShiftPlanReservationChanges(resourceId, beg, end, from, until, limit) // returns ResourceShiftPlanChange[]
// Overloads for optional parameters
Pqf.alc.getResourceShiftPlanReservationChanges(resourceId, beg, end, from, until) // returns ResourceShiftPlanChange[]
Pqf.alc.getResourceShiftPlanReservationChanges(resourceId, beg, end, from) // returns ResourceShiftPlanChange[]
Pqf.alc.getResourceShiftPlanReservationChanges(resourceId, beg, end) // returns ResourceShiftPlanChange[]
Required license
This endpoint requires the following licenses:
- allocationhistory
Required permission
Requires permission READ_ACTUALS on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the slots (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the slots (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
from |
datetime | The earliest point in time a change was made | ||
until |
datetime | The latest point in time a change was made | ||
limit |
int? | Limits the number of changes, the newest first | i > 0 (The value, if present, must be greater than 0.) |
Result
This endpoint returns the following data: array of ResourceShiftPlanChange
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan/Statistics
Returns the statistics of the shift plan of a resource over a time span: how many slots, each of them one day of one resource shift, are occupied by absences of each absence type, how many are reserved for work items of each project, how many fall on a bank holiday, and how many the resource is available or unavailable in. A slot counts as available if the resource is present in it by its own shift plan, the presence getResourceShiftPlan reports for the slot, which weighs the worktime model, the absences and the reservations of the day against its standard availability
HTTP syntax
GET /API/V3/ALC/Resource/:resourceId/ShiftPlan/Statistics?beg=...&end=...
<- application/json : ResourceShiftPlanStatistics
JavaScript syntax
Pqf.alc.getResourceShiftPlanStatistics(resourceId, beg, end) // returns ResourceShiftPlanStatistics
Required permission
Requires permission READ_ACTUALS on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: ResourceShiftPlanStatistics
POST /API/V3/ALC/Resource/:resourceId/ShiftPlan/Update
Writes the shift plan of a resource over the days its first day and the length of its slot arrays span. The two writable dimensions of the matrix, the absences and the reservations, are written independently of each other, each of them as its own update mode tells. The ref of an absence must be of type AbsenceType, the ref of a reservation of type ProjectWorkItem, otherwise the request is answered with 422. The X-Detail-Codes response header reports one status per slot, row by row and within a row day by day, 400 for every slot an update mode refused to write. The slot arrays must not be longer than pqforce.dayrange.max, which is what one call may write day by day. Writing the absences requires the PLAN permission on the resource and the UPDATE permission on every actuals period the shift plan spans, writing the reservations requires the RESERVE permission on the resource
HTTP syntax
POST /API/V3/ALC/Resource/:resourceId/ShiftPlan/Update?absences=...&reservations=...
-> application/json : ResourceShiftPlan
JavaScript syntax
Pqf.alc.updateResourceShiftPlan(resourceId, absences, reservations, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
// Overloads for optional parameters
Pqf.alc.updateResourceShiftPlan(resourceId, absences, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Pqf.alc.updateResourceShiftPlan(resourceId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Required permission
Requires permission READ_ACTUALS on object of type Resource and ID specified in parameter resourceId.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
absences |
ResourceShiftPlanUpdateMode | How the write treats the absences of the shift plan | UpdateOrDelete |
||
reservations |
ResourceShiftPlanUpdateMode | How the write treats the reservations of the shift plan | UpdateOrDelete |
||
requestJson |
ResourceShiftPlan | JSON object of type ResourceShiftPlan | ✔️ |
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId
Get a resource allocation
HTTP syntax
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId
<- application/json : ResourceAllocation
JavaScript syntax
Pqf.alc.getResourceAllocation(resourceAllocationId) // returns ResourceAllocation
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: ResourceAllocation
PUT /API/V3/ALC/ResourceAllocation/:resourceAllocationId
Update an existing resource allocation
HTTP syntax
PUT /API/V3/ALC/ResourceAllocation/:resourceAllocationId
-> application/json : ResourceAllocation
JavaScript syntax
Pqf.alc.putResourceAllocation(resourceAllocationId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission ALLOCATE on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
requestJson |
ResourceAllocation | JSON object of type ResourceAllocation | ✔️ |
DELETE /API/V3/ALC/ResourceAllocation/:resourceAllocationId
Delete a resource allocation
HTTP syntax
DELETE /API/V3/ALC/ResourceAllocation/:resourceAllocationId
JavaScript syntax
Pqf.alc.delResourceAllocation(resourceAllocationId) // returns Number - the return code (HTTP 2xx code) of the call
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission ALLOCATE on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Approve
Approves a resource allocation in the allocation workflow (moves it to the state Approved). It requires the ALLOCATE permission on the allocated resource; a move the workflow does not allow from the current state is answered with 400. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Approve
JavaScript syntax
Pqf.alc.approveResourceAllocation(resourceAllocationId) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Approve/WithRemark
Approves a resource allocation in the allocation workflow (moves it to the state Approved). It requires the ALLOCATE permission on the allocated resource; a move the workflow does not allow from the current state is answered with 400. The remark is stored with the workflow entry. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Approve/WithRemark
-> application/json : LCY.LifecycleUpgradeRemark
JavaScript syntax
Pqf.alc.approveResourceAllocationWithRemark(resourceAllocationId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
requestJson |
LCY.LifecycleUpgradeRemark | JSON object of type LifecycleUpgradeRemark | ✔️ |
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Identification
Get a resource allocation identification
HTTP syntax
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Identification?deleted=...
<- application/json : PF.IdentificationExtended
JavaScript syntax
Pqf.alc.getResourceAllocationIdentification(resourceAllocationId, deleted) // returns PF.IdentificationExtended
// Overloads for optional parameters
Pqf.alc.getResourceAllocationIdentification(resourceAllocationId) // returns PF.IdentificationExtended
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
deleted |
boolean | Allow deleted objects to be returned | false |
Result
This endpoint returns the following data: PF.IdentificationExtended
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Reject
Rejects a resource allocation in the allocation workflow (moves it to the state Rejected). It requires the ALLOCATE permission on the allocated resource; a move the workflow does not allow from the current state is answered with 400. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Reject
JavaScript syntax
Pqf.alc.rejectResourceAllocation(resourceAllocationId) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Reject/WithRemark
Rejects a resource allocation in the allocation workflow (moves it to the state Rejected). It requires the ALLOCATE permission on the allocated resource; a move the workflow does not allow from the current state is answered with 400. The remark is stored with the workflow entry. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Reject/WithRemark
-> application/json : LCY.LifecycleUpgradeRemark
JavaScript syntax
Pqf.alc.rejectResourceAllocationWithRemark(resourceAllocationId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
requestJson |
LCY.LifecycleUpgradeRemark | JSON object of type LifecycleUpgradeRemark | ✔️ |
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Remark/Add
Adds a remark to the workflow of a resource allocation without changing its state; the remark is required (422 without it). It requires the ALLOCATE permission on the allocation's work item or on the allocated resource. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Remark/Add
-> application/json : LCY.LifecycleUpgradeRemark
JavaScript syntax
Pqf.alc.addResourceAllocationRemark(resourceAllocationId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
requestJson |
LCY.LifecycleUpgradeRemark | JSON object of type LifecycleUpgradeRemark | ✔️ |
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Request
Requests a resource allocation in the allocation workflow (moves it to the state Requested). It requires the ALLOCATE permission on the allocation's work item; a move the workflow does not allow from the current state is answered with 400. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Request?autoApprove=...
JavaScript syntax
Pqf.alc.requestResourceAllocation(resourceAllocationId, autoApprove) // returns Number - the return code (HTTP 2xx code) of the call
// Overloads for optional parameters
Pqf.alc.requestResourceAllocation(resourceAllocationId) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission ALLOCATE on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
autoApprove |
boolean | Approves the allocation right away, if the caller may approve it as well | true |
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Request/WithRemark
Requests a resource allocation in the allocation workflow (moves it to the state Requested). It requires the ALLOCATE permission on the allocation's work item; a move the workflow does not allow from the current state is answered with 400. The remark is stored with the workflow entry. If the allocation workflow is not enabled, it is answered with 400
HTTP syntax
POST /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Request/WithRemark?autoApprove=...
-> application/json : LCY.LifecycleUpgradeRemark
JavaScript syntax
Pqf.alc.requestResourceAllocationWithRemark(resourceAllocationId, autoApprove, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
// Overloads for optional parameters
Pqf.alc.requestResourceAllocationWithRemark(resourceAllocationId, requestJson) // returns Number - the return code (HTTP 2xx code) of the call
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission ALLOCATE on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
autoApprove |
boolean | Approves the allocation right away, if the caller may approve it as well | true |
||
requestJson |
LCY.LifecycleUpgradeRemark | JSON object of type LifecycleUpgradeRemark | ✔️ |
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Timeline
Get a resource allocation's version timeline
HTTP syntax
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Timeline?limit=...&until=...&from=...&granularity=...
<- application/json : PF.VersionTimeline
JavaScript syntax
Pqf.alc.getResourceAllocationTimeline(resourceAllocationId, limit, until, from, granularity) // returns PF.VersionTimeline
// Overloads for optional parameters
Pqf.alc.getResourceAllocationTimeline(resourceAllocationId, limit, until, from) // returns PF.VersionTimeline
Pqf.alc.getResourceAllocationTimeline(resourceAllocationId, limit, until) // returns PF.VersionTimeline
Pqf.alc.getResourceAllocationTimeline(resourceAllocationId, limit) // returns PF.VersionTimeline
Pqf.alc.getResourceAllocationTimeline(resourceAllocationId) // returns PF.VersionTimeline
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
limit |
int? | Limits the number of slots | i > 0 (The value, if present, must be greater than 0.) |
|
until |
datetime | Latest date of the timeline | ||
from |
datetime | Earliest date of the timeline | ||
granularity |
PF.CalendarGranularity | The granularity of the timeline |
Result
This endpoint returns the following data: PF.VersionTimeline
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Version/:versionId
Get a resource allocation's specific (historic) version
HTTP syntax
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Version/:versionId
<- application/json : ResourceAllocation
JavaScript syntax
Pqf.alc.getResourceAllocationVersion(resourceAllocationId, versionId) // returns ResourceAllocation
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
versionId |
UUID | the version to retrieve | ✔️ | matches '[0-9A-F]{32}' (The value must be a UUID written as 32 upper-case hexadecimal digits.) |
Result
This endpoint returns the following data: ResourceAllocation
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Workflow/History
Returns the workflow history of a resource allocation, its states and remarks, newest entry first. If the allocation workflow is not enabled, it is answered with 404
HTTP syntax
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Workflow/History?until=...
<- application/json
JavaScript syntax
Pqf.alc.getResourceAllocationWorkflowHistory(resourceAllocationId, until) // returns ResourceAllocationWorkflowEntry[]
// Overloads for optional parameters
Pqf.alc.getResourceAllocationWorkflowHistory(resourceAllocationId) // returns ResourceAllocationWorkflowEntry[]
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
until |
datetime | The latest point in time of the history |
Result
This endpoint returns the following data: array of ResourceAllocationWorkflowEntry
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Workflow/Transitions
Returns the states the caller may move a resource allocation to from its current state; Changed is never among them, since only an edit of the allocation sets it. If the allocation workflow is not enabled, it is answered with 404
HTTP syntax
GET /API/V3/ALC/ResourceAllocation/:resourceAllocationId/Workflow/Transitions
<- application/json
JavaScript syntax
Pqf.alc.getResourceAllocationWorkflowTransitions(resourceAllocationId) // returns ResourceAllocationWorkflowTransition[]
Required license
This endpoint requires the following licenses:
- allocationworkflow
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID specified in parameter resourceAllocationId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationId |
UUID | The resource allocation's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: array of ResourceAllocationWorkflowTransition
GET /API/V3/ALC/ResourceAllocations/:resourceAllocationIds
Get multiple resource allocations
HTTP syntax
GET /API/V3/ALC/ResourceAllocations/:resourceAllocationIds
<- application/json
JavaScript syntax
Pqf.alc.getResourceAllocations(resourceAllocationIds) // returns ResourceAllocation[]
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get multiple resource allocation identificationsALC/ ResourceAllocations/ :resourceAllocationIds/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID in specified in parameter resourceAllocationIds.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceAllocationIds |
array of UUID | The resource allocation IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
Result
This endpoint returns the following data: array of ResourceAllocation
GET /API/V3/ALC/ResourceAllocations/:resourceAllocationIds/Identification
Get multiple resource allocation identifications
HTTP syntax
GET /API/V3/ALC/ResourceAllocations/:resourceAllocationIds/Identification?deleted=...
<- application/json
JavaScript syntax
Pqf.alc.getResourceAllocationIdentifications(resourceAllocationIds, deleted) // returns PF.IdentificationExtended[]
// Overloads for optional parameters
Pqf.alc.getResourceAllocationIdentifications(resourceAllocationIds) // returns PF.IdentificationExtended[]
Other endpoints for objects of type resource allocation
This endpoint is part of a group of endpoints manipulating objects of type resource allocation. The following endpoints belong to the same group:
- GET /API/
V3/ : Get a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get multiple resource allocationsALC/ ResourceAllocations/ :resourceAllocationIds - PUT /API/
V3/ : Update an existing resource allocationALC/ ResourceAllocation/ :resourceAllocationId - DELETE /API/
V3/ : Delete a resource allocationALC/ ResourceAllocation/ :resourceAllocationId - GET /API/
V3/ : Get a resource allocation identificationALC/ ResourceAllocation/ :resourceAllocationId/ Identification - GET /API/
V3/ : Get a resource allocation's version timelineALC/ ResourceAllocation/ :resourceAllocationId/ Timeline - GET /API/
V3/ : Get a resource allocation's specific (historic) versionALC/ ResourceAllocation/ :resourceAllocationId/ Version/ :versionId
Required permission
Requires permission READ on parent with type ProjectWorkItemobject of type MacroAllocation and ID in specified in parameter resourceAllocationIds.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceAllocationIds |
array of UUID | The resource allocation IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
deleted |
boolean | Allow deleted objects to be returned | false |
Result
This endpoint returns the following data: array of PF.IdentificationExtended
GET /API/V3/ALC/Resources/:resourceIds/PlannedTimeSlot/ByProject
Returns the planned time of one or more resources as one single slot over exactly the requested time span, grouped by project. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance. Every project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one; select the projects of interest from the answer. The time planned on projects the caller may not identify is added to the base load, which also contains the base load of the resource's worktime model; it is referenced by the type BaseLoad and an ID derived from the resource's ID. All resources share the same slot
HTTP syntax
GET /API/V3/ALC/Resources/:resourceIds/PlannedTimeSlot/ByProject?beg=...&end=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcesPlannedTimeSlotByProject(resourceIds, beg, end) // returns PF.GroupedDurationSlot[]
Required permission
Requires permission READ on object of type Resource and ID in specified in parameter resourceIds.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceIds |
array of UUID | The resources' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: array of PF.GroupedDurationSlot
GET /API/V3/ALC/Resources/:resourceIds/PlannedTimeSlots/ByProject
Returns the planned time of one or more resources in time slots, grouped by project. Every project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one; select the projects of interest from the answer. The time planned on projects the caller may not identify is added to the base load, which also contains the base load of the resource's worktime model; it is referenced by the type BaseLoad and an ID derived from the resource's ID. All resources share the same slots
HTTP syntax
GET /API/V3/ALC/Resources/:resourceIds/PlannedTimeSlots/ByProject?beg=...&end=...&zoom=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcesPlannedTimeSlotsByProject(resourceIds, beg, end, zoom) // returns PF.GroupedDurationSlot[][]
// Overloads for optional parameters
Pqf.alc.getResourcesPlannedTimeSlotsByProject(resourceIds, beg, end) // returns PF.GroupedDurationSlot[][]
Required permission
Requires permission READ on object of type Resource and ID in specified in parameter resourceIds.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceIds |
array of UUID | The resources' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
zoom |
PF.CalendarGranularity | The calendar unit of the slots. If set, all slots are of this unit, only the first and the last one may be cut by the time span. If omitted, the server chooses the slots, which may then differ in width |
Result
This endpoint returns the following data: array of array of PF.GroupedDurationSlot
GET /API/V3/ALC/Resources/:resourceIds/Project/:projectId/PlannedTimeSlot/ByProjectWorkItem
Returns the time one project plans for one or more resources as one single slot over exactly the requested time span, grouped by work item. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance. The project counts, whatever its state, with its active scenario, or with its single inactive scenario if it has no active one. Work items without time within the slot are omitted; the time on work items the caller may not identify is answered under the reference of the project itself. All resources share the same slot
HTTP syntax
GET /API/V3/ALC/Resources/:resourceIds/Project/:projectId/PlannedTimeSlot/ByProjectWorkItem?beg=...&end=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcesProjectPlannedTimeSlotByProjectWorkItem(resourceIds, projectId, beg, end) // returns PF.GroupedDurationSlot[]
Required permission
Requires permission READ on object of type Resource and ID in specified in parameter resourceIds.
Requires permission READ on object of type Project and ID specified in parameter projectId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceIds |
array of UUID | The resources' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectId |
UUID | The project's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: array of PF.GroupedDurationSlot
GET /API/V3/ALC/Resources/:resourceIds/ProjectScenario/:projectScenarioId/PlannedTimeSlot
Returns the time a project scenario plans for one or more resources as one single slot over exactly the requested time span. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance, whether the scenario is active or not. All resources share the same slot
HTTP syntax
GET /API/V3/ALC/Resources/:resourceIds/ProjectScenario/:projectScenarioId/PlannedTimeSlot?beg=...&end=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcesScenarioPlannedTimeSlot(resourceIds, projectScenarioId, beg, end) // returns PF.DurationSlot[]
Required permission
Requires permission READ on object of type Resource and ID in specified in parameter resourceIds.
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceIds |
array of UUID | The resources' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: array of PF.DurationSlot
GET /API/V3/ALC/Resources/:resourceIds/ProjectScenario/:projectScenarioId/PlannedTimeSlot/ByProjectWorkItem
Returns the time a project scenario plans for one or more resources as one single slot over exactly the requested time span, grouped by work item. Its unit is the smallest calendar unit one instance of which contains the whole span (a day, a week, a month, a quarter or a year), and it is complete if the span is exactly that instance. The scenario counts whether it is active or not. Work items without time within the slot are omitted; the time on work items the caller may not identify is answered under the reference of the scenario itself. All resources share the same slot
HTTP syntax
GET /API/V3/ALC/Resources/:resourceIds/ProjectScenario/:projectScenarioId/PlannedTimeSlot/ByProjectWorkItem?beg=...&end=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcesScenarioPlannedTimeSlotByProjectWorkItem(resourceIds, projectScenarioId, beg, end) // returns PF.GroupedDurationSlot[]
Required permission
Requires permission READ on object of type Resource and ID in specified in parameter resourceIds.
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceIds |
array of UUID | The resources' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
Result
This endpoint returns the following data: array of PF.GroupedDurationSlot
GET /API/V3/ALC/Resources/:resourceIds/ProjectScenario/:projectScenarioId/PlannedTimeSlots
Returns the time a project scenario plans for one or more resources in time slots, whether the scenario is active or not. All resources share the same slots
HTTP syntax
GET /API/V3/ALC/Resources/:resourceIds/ProjectScenario/:projectScenarioId/PlannedTimeSlots?beg=...&end=...&zoom=...
<- application/json
JavaScript syntax
Pqf.alc.getResourcesScenarioPlannedTimeSlots(resourceIds, projectScenarioId, beg, end, zoom) // returns PF.DurationSlot[][]
// Overloads for optional parameters
Pqf.alc.getResourcesScenarioPlannedTimeSlots(resourceIds, projectScenarioId, beg, end) // returns PF.DurationSlot[][]
Required permission
Requires permission READ on object of type Resource and ID in specified in parameter resourceIds.
Requires permission READ on object of type Scenario and ID specified in parameter projectScenarioId.
Parameters
| Name | Type | Description | Required | Assertion |
|---|---|---|---|---|
resourceIds |
array of UUID | The resources' IDs | ✔️ | pqforce.performance.bulk.max >= length > 0;non-null & matches '[ (The array must contain at least one element and at most the configured "pqforce.performance.bulk.max" elements. Each element must not be null and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
projectScenarioId |
UUID | The project scenario's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
beg |
date | The first day of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
end |
date | The day after the last day of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
zoom |
PF.CalendarGranularity | The calendar unit of the slots. If set, all slots are of this unit, only the first and the last one may be cut by the time span. If omitted, the server chooses the slots, which may then differ in width |
Result
This endpoint returns the following data: array of array of PF.DurationSlot
GET /API/V3/ALC/UnoptimizedResources/ByParent/:resourceId
Returns unoptimized resources that are descendants of a specific resource
HTTP syntax
GET /API/V3/ALC/UnoptimizedResources/ByParent/:resourceId?beg=...&end=...&count=...&fewerWorkWeight=...
<- application/json
JavaScript syntax
Pqf.alc.getUnoptimizedResourcesByParent(resourceId, beg, end, count, fewerWorkWeight) // returns PF.ReferenceFactor[]
// Overloads for optional parameters
Pqf.alc.getUnoptimizedResourcesByParent(resourceId, beg, end, count) // returns PF.ReferenceFactor[]
Pqf.alc.getUnoptimizedResourcesByParent(resourceId, beg, end) // returns PF.ReferenceFactor[]
Required permission
Requires permission ALLOCATE on object of type Resource and ID specified in parameter resourceId.
The returned array is filtered and contains only objects with permission ALLOCATE.
Parameters
| Name | Type | Description | Required | Assertion | Default, if omitted |
|---|---|---|---|---|---|
resourceId |
UUID | The resource's ID | ✔️ | matches '[ (The value must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
beg |
date | The start of the time span (inclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
|
end |
date | The end of the time span (exclusive, required) | ✔️ | '2099-12-31' >= d >= '2000-01-01' (The value must be between 2000-01-01 and 2099-12-31, both inclusive.) |
|
count |
int? | The maximum number of resources to return | n > 0 (The value, if present, must be greater than 0.) |
||
fewerWorkWeight |
double | The factor to weight slots with fewer workload in deviation from optimum calculation | .25 |
Result
This endpoint returns the following data: array of PF.ReferenceFactor
Data types
ALC.AllocationWorkflowState
This is an enumeration data contract.
The state of a resource allocation in the allocation workflow
Enum values
| ID | Description |
|---|---|
New |
The allocation is new and has not been requested yet |
Changed |
The allocation has been changed since it was last requested |
Requested |
The allocation has been requested |
Rejected |
The allocation has been rejected |
Approved |
The allocation has been approved |
ALC.ResourceAllocation
This is a structure data contract.
The allocation of a resource to a project work item
Based on
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
type |
UUID | ✔️ | The type of the object (used for change notifications) | non-null & matches '[ (The value is required and must be a type: a UUID written as 32 upper-case hexadecimal digits, or a name of 1 to 32 printable ASCII characters or Latin letters other than "/", "&", "<" and ">", neither starting nor ending with a space, optionally followed by "/" and a sub-type of the same form.) |
id |
UUID | ✔️ | The ID of the object (often a UUID, but not necessarily) | non-null & matches '[ (The value is required and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
versionId |
UUID | ✔️ | A unique identifier for the version, a UUID | matches '[0-9A-F]{32}' (The value, if present, must be a UUID written as 32 upper-case hexadecimal digits.) |
historic |
boolean | ✔️ | true, if there is a more recent version of this object; false, if this is the most recent version of this object | |
createdAt |
datetime | ✔️ | The point in time when the object was created | |
createdBy |
PF.Reference | ✔️ | Reference to the user that created this object | |
modifiedAt |
datetime | ✔️ | The point in time when the object was modified | |
modifiedBy |
PF.Reference | ✔️ | Reference to the user that modified this object | |
parent |
PF.Reference | A reference to the object the allocation belongs to, currently always a project work item; read-only, it is set when the allocation is added | ||
resourceId |
UUID | The ID of the allocated resource; read-only, it is set when the allocation is added | matches '[ (The value, if present, must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
state |
AllocationWorkflowState | The state in the allocation workflow (read-only) | ||
amount |
double | The amount that is allocated, measured as amountType tells | n >= 0 (The value must be at least 0.) |
|
amountMin |
double? | The minimal allocated amount that is requested / approved (depending on the state); only stored if the allocation workflow or its thresholds are enabled | ||
amountMax |
double? | The maximal allocated amount that is requested / approved (depending on the state); only stored if the allocation workflow or its thresholds are enabled | ||
amountUnit |
string | The unit of an absolute amount: h (hours), d (days), w (weeks), m (months) or a (years); null for any other amount type | matches '[hdwmaHDWMA]' (The value, if present, must match the regular expression shown.) |
|
amountType |
ResourceAllocationAmountType | How the amount is measured | non-null (The value is required.) |
|
startEarliest |
date | The earliest start that is requested / approved (depending on the state); only stored if the allocation workflow or its thresholds are enabled | ||
startLatest |
date | The latest start that is requested / approved (depending on the state); only stored if the allocation workflow or its thresholds are enabled | ||
endEarliest |
date | The earliest end that is requested / approved (depending on the state); only stored if the allocation workflow or its thresholds are enabled | ||
endLatest |
date | The latest end that is requested / approved (depending on the state); only stored if the allocation workflow or its thresholds are enabled | ||
remark |
string | The remark that was set at the last change of state | ||
effectiveDuration |
duration | The effective planned duration, equal to the amount if that is absolute (read-only) |
ALC.ResourceAllocationAmountType
This is an enumeration data contract.
How the amount of a resource allocation is measured
Enum values
| ID | Description |
|---|---|
Absolute |
The amount is an absolute duration in the unit amountUnit tells |
OfCapacity |
The amount is a percentage of the resource's capacity |
OfAvailability |
The amount is a percentage of the resource's availability |
OfFte |
The amount is the number of full time equivalents (FTE) |
OfProjectWorkItem |
The amount is a percentage of the project work item's planned effort |
ALC.ResourceAllocationChange
This is a structure data contract.
A change to a resource allocation: the allocation as reference with its work item as parent, and the version the change wrote. Read the allocation as it was with alc.
Based on
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
type |
UUID | ✔️ | The type of the object (used for change notifications) | non-null & matches '[ (The value is required and must be a type: a UUID written as 32 upper-case hexadecimal digits, or a name of 1 to 32 printable ASCII characters or Latin letters other than "/", "&", "<" and ">", neither starting nor ending with a space, optionally followed by "/" and a sub-type of the same form.) |
id |
UUID | ✔️ | The ID of the object (often a UUID, but not necessarily) | non-null & matches '[ (The value is required and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
parent |
PF.Reference | ✔️ | A reference to a parent (if any) | |
versionId |
UUID | The version of the allocation the change wrote | non-null & matches '[ (The value is required and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
previousVersionId |
UUID | The version of the allocation before the change; absent if the change created the allocation | matches '[ (The value, if present, must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
deleted |
boolean | true, if the change deleted the allocation | ||
modifiedAt |
datetime | When the change was made | non-null (The value is required.) |
|
modifiedBy |
PF.Reference | Who made the change |
ALC.ResourceAllocationWorkflowEntry
This is a structure data contract.
An entry of the workflow history of a resource allocation: a state it reached or a remark added to it
Based on
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
type |
UUID | ✔️ | The type of the object (used for change notifications) | non-null & matches '[ (The value is required and must be a type: a UUID written as 32 upper-case hexadecimal digits, or a name of 1 to 32 printable ASCII characters or Latin letters other than "/", "&", "<" and ">", neither starting nor ending with a space, optionally followed by "/" and a sub-type of the same form.) |
id |
UUID | ✔️ | The ID of the object (often a UUID, but not necessarily) | non-null & matches '[ (The value is required and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
versionId |
UUID | The version ID of the entry | matches '[ (The value, if present, must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
state |
AllocationWorkflowState | The state that was reached; for an added remark, the state the allocation was in | non-null (The value is required.) |
|
timestamp |
datetime | The point in time the entry was written | non-null (The value is required.) |
|
initiatedBy |
PF.Reference | A reference to the user that wrote the entry | ||
remark |
string | A remark that describes the reason of or any other information about the entry |
ALC.ResourceAllocationWorkflowTransition
This is a structure data contract.
A state a resource allocation may be moved to in the allocation workflow
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
state |
AllocationWorkflowState | The state the allocation may be moved to | non-null (The value is required.) |
ALC.ResourceShiftPlan
This is a structure data contract.
The shift plan of a resource: a matrix of days and resource shifts whose slots each hold an absence and a reservation, either of them possibly empty
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
beg |
date | The first day the shift plan covers; the slots of every row start at this day, one slot per following day | non-null (The value is required.) |
|
rows |
array of ResourceShiftPlanRow | One row per resource shift of the resource, all of them with slot arrays of the same length | non-null (The value is required.) |
ALC.ResourceShiftPlanChange
This is a structure data contract.
A change to one slot of a resource's shift plan. Slots are not versioned: a slot changed in place shows only its latest state
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
day |
date | The day of the slot | non-null (The value is required.) |
|
shiftId |
UUID | The ID of the resource shift of the slot | non-null & matches '[ (The value is required and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
current |
ResourceShiftPlanEntry | The entry of the slot after the change; absent if the change removed it | ||
previous |
ResourceShiftPlanEntry | The entry of the slot before the change; absent if the slot was empty | ||
modifiedAt |
datetime | When the change was made | non-null (The value is required.) |
|
modifiedBy |
PF.Reference | Who made the change |
ALC.ResourceShiftPlanEntry
This is a structure data contract.
What occupies a slot of a resource shift plan in one of its two dimensions, an absence or a reservation
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
ref |
PF.Reference | The absence type of an absence, the project work item of a reservation | non-null (The value is required.) |
|
remark |
string | A comment on the absence or the reservation |
ALC.ResourceShiftPlanRow
This is a structure data contract.
One row of a resource shift plan, holding the slots of one single resource shift over the days the shift plan covers
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
shiftId |
UUID | The resource shift the row plans | non-null & matches '[ (The value is required and must be an ID: a UUID written as 32 upper-case hexadecimal digits, or a key of 1 to 32 printable ASCII characters or Latin letters other than "&", "<" and ">", neither starting nor ending with a space.) |
|
slots |
array of ResourceShiftPlanSlot | One slot per day, the first one for the first day the shift plan covers | non-null (The value is required.) |
ALC.ResourceShiftPlanSlot
This is a structure data contract.
One single slot of a resource shift plan, being one day of one resource shift, with its two independent dimensions: an absence and a reservation, each of which may be empty. An absence does not necessarily keep the resource from working, so a slot may hold both
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
absence |
ResourceShiftPlanEntry | The absence that occupies the slot, its ref naming an absence type; null if the resource is not absent | ||
reservation |
ResourceShiftPlanEntry | The reservation that occupies the slot, its ref naming a project work item; null if the slot is not reserved |
ALC.ResourceShiftPlanSlotCount
This is a structure data contract.
The number of slots of a resource shift plan that one single absence type or project occupies
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
ref |
PF.Reference | Either the absence type of the absences or the project whose work items the reservations are for | non-null (The value is required.) |
|
count |
int | The number of slots the absence type or project occupies | n >= 1 (The value must be at least 1.) |
ALC.ResourceShiftPlanStatistics
This is a structure data contract.
The statistics of the shift plan of a resource over a time span, counting slots, each of them one day of one resource shift
Members
| Name | Type | Inherited | Description | Assertion |
|---|---|---|---|---|
slotCounts |
array of ResourceShiftPlanSlotCount | One entry per absence type and per project occupying at least one slot, in no particular order | non-null;non-null (The array is required. Each element must not be null.) |
|
holidaySlots |
int | The number of slots on a bank holiday of the resource's holiday locale, whether or not the resource is available in them | n >= 0 (The value must be at least 0.) |
|
availableSlots |
int | The number of slots the resource is available in, being present by its own shift plan | n >= 0 (The value must be at least 0.) |
|
unavailableSlots |
int | The number of slots the resource is unavailable in | n >= 0 (The value must be at least 0.) |
ALC.ResourceShiftPlanUpdateMode
This is an enumeration data contract.
Tells how a write of a resource shift plan treats one of its two writable dimensions, the absences and the reservations
Enum values
| ID | Description |
|---|---|
Keep |
Leaves the dimension untouched, reporting every slot the request would have changed as 400 in the X-Detail-Codes response header |
UpdateOnly |
Creates and changes entries, but keeps an entry the request leaves empty, reporting every such slot as 400 in the X-Detail-Codes response header |
UpdateOrDelete |
Makes the dimension match the request exactly, deleting the entries the request leaves empty |
ACT
API V3 Documentation
ATM