NextGen APIs

PATCH /workforce/resources/r1/resources/{resourceId}/qualifications/{qualificationId}/{startDate}

Http Verb

PATCH

Url

/workforce/resources/r1/resources/{resourceId}/qualifications/{qualificationId}/{startDate}

Permissions required

RESOURCE_EDIT:fsm.core.resource.edit

Personally Identifiable Information (PII)

No

Sensitive Information

No

Last Modified Version

r1

Released since

2026 W3 (FSM 24.0)

Deprecated since


Removed since


Tech Tags

 

Business Logic

This API updates an existing relationship between a resource and a qualification.
Validations:

  • resource is required (validateNotNullField).

  • qualification is required (validateNotNullField).

  • End date is optional and if not omitted must be after start date; if omitted, the association is valid from the start date indefinitely

  • startDate and endDate are normalized to day precision (DateUtils.getDayFromDate).

  • The target record must exist for the given resource + qualification + startDate; otherwise it throws GC_NOT_FOUND.

  • startDate cannot be changed during update; if it differs from the stored value, it throws INVALID_PROPERTY_VALUE ("start date")

  • Update is rejected with VALID_QUALIFICATION_ALREADY_PRESENT when the new interval conflicts with another existing qualification period.

  • If qualification alignment (company.fsm.qualifications.enableAlignment) is enabled, updates are blocked for loan users with AUSECOPYCOMPETENCES = true (C270_1622).

Path Parameters

Field

Note

resourceId


qualificationId


startDate


Header Parameters

Default. 

Request Body Parameters

Field

Validations

Note

endDate


The time is discarded and set to midnight because the validity field relates to the day, not the hour.

When setting a qualification end date to X via PATCH, send X + 1 day.
This keeps API write/read behavior consistent.
Why: in the database, end dates are stored as an exclusive upper bound at midnight.
So, to represent validity for the full day of the 15th, we store 16th 00:00:00.

 

Response documentation

Response error codes

BASE_0001, NOT_FOUND, BASE_0003, RESOURCE_011,