API V3 Documentation – ALC

PQFORCE 4.26.6 Preview

Diese Dokumentation gibt es nur auf Englisch.

Vorschau: Diese Dokumentation beschreibt PQFORCE 4.26.6, das noch nicht veröffentlicht ist.

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x7F\p{IsLatin}](?:[\x20-\x7F\p{IsLatin}]{0,30}?[\x21-\x7F\p{IsLatin}])??(?::(?:asc\|desc))?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x7F\p{IsLatin}](?:[\x20-\x7F\p{IsLatin}]{0,30}?[\x21-\x7F\p{IsLatin}])??(?::(?:asc\|desc))?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x7F\p{IsLatin}](?:[\x20-\x7F\p{IsLatin}]{0,30}?[\x21-\x7F\p{IsLatin}])??(?::(?:asc\|desc))?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x7F\p{IsLatin}](?:[\x20-\x7F\p{IsLatin}]{0,30}?[\x21-\x7F\p{IsLatin}])??(?::(?:asc\|desc))?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x7F\p{IsLatin}](?:[\x20-\x7F\p{IsLatin}]{0,30}?[\x21-\x7F\p{IsLatin}])??(?::(?:asc\|desc))?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x7F\p{IsLatin}](?:[\x20-\x7F\p{IsLatin}]{0,30}?[\x21-\x7F\p{IsLatin}])??(?::(?:asc\|desc))?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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:

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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}])?(?:/[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}])?)?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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.getResourceAllocationVersion

Based on

Members

Name Type Inherited Description Assertion
type UUID ✔️ The type of the object (used for change notifications) non-null & matches '[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}])?(?:/[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}])?)?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}])?(?:/[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x2E\x30-\x3B\x3D\x3F-\x7E\p{IsLatin}])?)?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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 '[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}](?:[\x20-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}]{0,30}[\x21-\x25\x27-\x3B\x3D\x3F-\x7E\p{IsLatin}])?' (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
↑

Benachrichtigung

Portal-Tour

Eine geführte Tour zeigt Ihnen die Seite Schritt für Schritt: Sie hebt jeweils ein Bedienelement hervor und erklärt, wofür es da ist. Sie können jederzeit abbrechen und später weitermachen.