Automate the flow of absences data into SchedulePro

SchedulePro has a leave management module that allows you to fully manage the leave request and approval workflows. SchedulePro automatically applies approved employee absences onto the schedule, allowing users to start back-filling for the open requirements. Employee leave requests are retrievable through the SchedulePro API, and can be fully integrated with 3rd party HR systems.

SchedulePro also provides the freedom for users to utilize their own leave management solution that is well established within their organization. With the use of the SchedulePro API, approved employee absences can be synchronized into SchedulePro, and automatically applied to the schedule.

What is a leave request in SchedulePro?

A leave request or absence in SchedulePro is defined as a period of time where an employee is unavailable to be assigned to shifts for a given date range. Leaves can vary from a few hours to single or multiple days. A leave can go through an approval process, where a schedule manager can approve/decline an employee’s request. Once approved, a leave is applied onto the employee’s schedule, unassigning them from any working requirements within the request’s date range.

 

There are two types of leaves in SchedulePro:

  • Partial: A leave is considered partial if it falls completely within a single working shift. Once approved, a partial leave request will adjust the time range and hours paid of the employee’s original working shift. Ad-hoc requirements can be automatically created to back-fill for the leave portion of the shift. A doctor’s appointment is an example of a partial leave request, where an employee might only need to be absent for the first few hours of their morning shift.

  • Full Day: A leave is considered full-day if the request completely spans an employee’s full day. This request is not dependent on an employee’s working shift, and they are absent for all 24 hours of the day. An employee will be unavailable to work for any shifts within the given date range. The hours paid of a full day leave cannot be modified, and is dependent on the number of working shifts that fall within the given date range.

 

A Leave in SchedulePro also has the following attributes:

  • Employee: The employee that is requesting the leave. Leaves will only hold a unique identifier for the employee.

  • Partial: Defines whether or not the leave request is partial. SchedulePro will evaluate whether or not the given partial leave request falls within a single working shift.

  • Start/End Date: The given date range for the leave. The start and end date for a partial leave request will be the same.

  • Start/End Time: Only applicable to partial leaves. It determines the time span of the request within a working shift.

  • Leave Code: Defines the type of leave (ex. “vacation”, “sick”). Leave codes will determine if a leave is paid, if an employee can be brought back to overtime, or whether or not it applies to a leave bank*. For more information on leave codes, please refer to the LeaveCode documentation.

  • Hours Paid: Only applicable to partial leaves. Determines the hours paid of the leave. These hours are subtracted from the employee’s original working shift.

 

ℹ While there are no date restrictions to a leave, a request must still have a defined start and end date. 

Please refer to the Leave resource for more detailed information about leaves in SchedulePro.

 

* About the leave bank: SchedulePro also offers a leave bank module that allows you to set year allowance hours and carryovers hours for a specific Leave Code. Each Leave Request using a bankable Leave Code will reflect on the respective Bank.

Synchronize leaves managed through the SchedulePro portal

Organizations may have requirements to ensure leave data is synchronized to a 3rd party HR system.

The GetAllLeaveRequest endpoint allows the caller to retrieve a list of absence data for the organization in the specified date range, up to one-year maximum. The endpoint provides optional filters such as absence status and reference id to minimize the data being returned. If the request is successful, the GetLeaveRequest endpoint will return a collection of leave information within the given date range. If the request was unsuccessful, please check out the common error responses in the GetLeaveRequest endpoint.

Manage leaves in a 3rd party system and synchronize to SchedulePro

Organizations may have a requirement that all leave and absence requests are managed in a 3rd party HR system. This data needs to be synchronized into SchedulePro to ensure compliance, overtime equalization, and qualifications are fully up to date. Schedulers can easily identify and back fill the open requirements caused by unplanned absences.

Using the Create and Update Leaves Endpoints

The CreateLeaveRequest endpoint will be used to ensure that all the absences entered on your third-party system will flow in SchedulePro, to keep your schedule updated.

The endpoint requires a request model that holds the leave data. You can find more information on the request model in the CreateLeaveRequest resource. Note that the endpoint accepts a partial model. The only fields required are start/end dateTime and leave Code. Partial Leaves are also supported through the CreateLeaveRequest when passing “true” to the field isPartialLeave. The time passed on the start/end time will be taken into account.

To keep the mapping between the two systems easy, the CreateLeaveRequest endpoint allows you to enter your own leaveReferenceId, which can be used to update the same leave request at a later time. SchedulePro will also generate an unique Id for each successfully created Leave.

To update leaves that exist already in SchedulePro use the UpdateLeaveRequestById or UpdateLeaveRequestByReferenceId. The difference between the two endpoints is the id used to identify the leave. The update endpoint allows you to change the status of the leave to “accepted“ or “declined“. If deep update is needed we suggest you decline the existing leave and create a new one with the new information. You can also manage your leave requests manually through SchedulePro Portal. This allows schedulers to quickly mark employees absent and start the back fill processes.

UpdateLeaveRequestById X UpdateLeaveRequestByReferenceId

To keep the mapping between the two systems easy, the CreateLeaveRequest and UpdateLeaveRequest’s endpoint allows you to enter your own leaveReferenceId, which can be used to update the same leave request later. SchedulePro will also generate an Id for each successfully created Leave.

Best Practice: Use the third-party system Id as a reference Id.

Synchronizing long term absences

Some 3rd party HR systems allow absences to be created without a specified end date, in the case of a long term absence. The recommended approach is to model this absence record as a single corresponding leave request within SchedulePro. The CreateLeaveRequest endpoint enforces that an EndDate is set but this should be set to some future date, for example in +10 years.

When the employee is set to return from their long term absence, use the UpdateLeaveRequestById or UpdateLeaveRequestByReferenceId endpoint to cancel the original leave request and recreate the long term leave request with the correct start and end dates.