Paycode Value Profile Assignments

Paycode value profile assignments help determine the applicable paycode values for a person.

You can assign, update, delete, and retrieve details about paycode value profile assignments using operations against the /v1/commons/persons/pay_code_value_profiles resource.

Prerequisites

A person's person ID is the same as the personKey and employee ID, and is not the same as the person number.

The person in this example has a person ID of 100 and a person number of 20190.

Example

In this example, we retrieve a list of available paycode value profiles and then assign, verify, update, and delete a person's paycode value profile assignments.

Retrieve available paycode value profiles

Call GET /v1/scheduling/pay_code_value_profiles to retrieve a list of all available paycode value profiles. The response returned will resemble the example below.

[
    {
        "id": 201,
        "name": "Default Paycode Value Profile",
        "description": "The system default paycode value profile.",
        "active": true,
        "version": 2,
        "payCodeValueProfileElements": [
            {
                "id": 303,
                "payCode": {
                    "id": 316,
                    "qualifier": "Absent"
                },
                "symbolicSourceType": {
                    "id": -4,
                    "qualifier": "FIXED"
                },
                "fullDayAmount": true,
                "halfDayAmount": true,
                "hoursAmount": true,
                "fixedDurationMinimumQuantity": 60,
                "firstHalfDayAmount": true,
                "secondHalfDayAmount": true,
                "holidayRequestSetting": {
                    "id": -1,
                    "qualifier": "Default Generate PCE"
                }
            },
            {
                "id": 304,
                "payCode": {
                    "id": 149,
                    "qualifier": "Vacation"
                },
                "symbolicSourceType": {
                    "id": -4,
                    "qualifier": "FIXED"
                },
                "fullDayAmount": true,
                "halfDayAmount": true,
                "hoursAmount": false,
                "fixedDurationMinimumQuantity": 60,
                "firstHalfDayAmount": true,
                "secondHalfDayAmount": true,
                "holidayRequestSetting": {
                    "id": -2,
                    "qualifier": "Default Not Generate PCE"
                }
            }
        ]
    }
]

Create the assignment

The create request:

  • uses personId in the URL and personIdentity in the request body to identify the person using both their person ID and person number
  • uses payCodeValueProfile to define the paycode value profile to assign

Example request

Call PUT /v1/commons/persons/pay_code_value_profiles/100 with the following request payload. The URL requires a {personId}.

{
  "personIdentity" : {
    "personNumber" : 20190
  },
  "payCodeValueProfile" : {
    "qualifier" : "Default Paycode Value Profile"
  }
}

Example response

A success response returns HTTP status code 200 and a response body similar to the following example.

{
    "personIdentity": {
        "personId": 100,
        "personKey": 100,
        "personNumber": "20190"
    },
    "payCodeValueProfile": {
        "qualifier": "Default Paycode Value Profile"
    }
}

Verify the assignment

To verify, you can call GET /v1/commons/persons/pay_code_value_profiles?person_number={personNumber} or GET /v1/commons/persons/pay_code_value_profiles/{personId}.

Calling GET /v1/commons/persons/pay_code_value_profiles?person_number=20190 or GET /v1/commons/persons/pay_code_value_profiles/100 returns:

{
    "personIdentity": {
        "personId": 100,
        "personKey": 100,
        "personNumber": "20190"
    },
    "payCodeValueProfile": {
        "id": 201,
        "qualifier": "Default Paycode Value Profile"
    }
}

Update the assignment

To update the person's paycode value profile assignments, call PUT /v1/commons/persons/pay_code_value_profiles/100 with the following request payload. The URL requires a {personId}.

Example request

{
  "personIdentity" : {
    "personNumber" : 20190
  },
  "payCodeValueProfile" : {
    "qualifier" : "Healthcare Group Paycode Value Profile"
  }
}

Example response

{
    "personIdentity": {
        "personId": 100,
        "personKey": 100,
        "personNumber": "20190"
    },
    "payCodeValueProfile": {
        "qualifier": "Healthcare Group Paycode Value Profile"
    }
}

Delete an assignment

To delete a person's paycode value profile assignment, call DELETE /v1/commons/persons/pay_code_value_profiles/100. The URL requires a {personId}.

The system returns HTTP status 204 with no response body.