POST Full-Time Absence

Updated by Oscar Combes

Api-docs for RC: https://api-rc.quinyx.com/v2/docs (select "schedule" definition)

Api-docs: (will be made available as of version 0185) https://api.quinyx.com/v2/docs (select "schedule" definition)

Base URL can be found on links above for both environments. The remainder of this article should be considered a complement to the above Open API documentation.

Path properties

POST /groups/{groupId}/absences

Posting full-time absence for domain group

  • groupId - Group id for the Quinyx unit you want to POST data for. Note that if you input a section id, said section's parent id will be applied.
Query parameters
  • overlapAbsences = Optional. This is when there’s an absence already and you should choose what to do with it. Depends on Allow overlapping absences unit setting. Inputting true will Overlap any existing absence (note that True will throw a warning if the above-mentioned setting is set to false). Inputting false will Replace any existing. If omitted, false will be applied. Note that Quinyx supports a maximum of two overlapping absences.
  • ignoreOverridableValidations = Optional. This controls whether, when validations are thrown, the absence is created despite the warnings (true) or not (false). Note that this paramete only applies to overridable warnings - for warnings that aren’t overridable, the same warning will be thrown again (until appropriate action is taken). If omitted, false will be applied.
Request body
  • absenceTypeId
  • employeeId
Note that you'll need to use our Mapping API to convert/map any external system's employee ID to their Quinyx one.
  • begin
  • end
  • employeeAttested = Optional value. If the agreement setting auto attest for absences is true, and employeeAttested is omitted, then true will be applied. If said agreement setting is false, and employeeAttested is omitted, then false will be applied.
  • managerAttested = Optional value. If the agreement setting auto attest for absences is true, and managerAttested is omitted, then true will be applied. If said agreement setting is false, and employeeAttested is omitted, then false will be applied.
  • absenceScheduleId = Optional. If omitted, and the absence type used uses a default absence schedule, that absenceScheduleId will be applied.
  • shiftsInThisPeriod = Optional. If omitted, the current value of the “Absence type affects schedule” setting (unassign/delete) of the absence type selected in absenceTypeId will be applied.
  • managerComment

Possible validation errors

Key

Meaning

Overridable

ERROR_FIND_SHIFT_INPUT_VALIDATION

This error will be returned at the time of fetching shifts for the request as a result of any of the following reasons: 

  • Not all employees belong to same customer.
  • Not all leave reasons belong to same customer.
  • Not all leave reason types belong to same customer.
  • Not all absence schedules belong to same customer.
  • Not all shift types belong to same customer.
  • Not all agreements belong to same customer.
  • Not all agreement templates belong to same customer.
  • Not all time trackers belong to same customer.
  • Not all shifts belong to same customer.
  • Not all restaurants belong to same customer.
  • Not all sections belong to same customer.
  • Not all leave applications belong to same customer.
  • Not all cost centres belong to same customer.
  • Not all projects belong to same customer.
  • Not all punches belong to same customer.
  • Not all tasks belong to same customer.
  • Not all unit groups belong to same customer.
  • Not all entities belong to same customer.

This description is being improved short term, but for now the input data needs to be crosschecked with each one of the above definitions if the key to the left appears.

No

INACTIVE_EMPLOYEE

You cannot add absence(s) when an employee's employment has ended

No

INVALID_EMPLOYEE

You can't add absence to an employee that doesn't have a role

No

START_MUST_BE_BEFORE_END

Start time of absence needs to be before its end time

No

GROUP_NOT_RESTAURANT_OR_SECTION

You can only create an absence on unit level, so this validation will be returned if you’ve submitted a district id or domain id as opposed to a unit id.

No

ABSENCE_LONGER_THAN_24_MONTH

An absence is not allowed to be longer than 24 months

No

LEAVE_PUNCH_EXISTS

There are unapproved punches in this leave period which will be partly or fully deleted

Yes

PUNCH_APPROVED_AND_NOT_TRANSFERRED_TO_PAYROLL

There are approved punches during this leave period that are not transferred to payroll

No

SALARY_PERIOD_LOCKED

Schedule period is locked

No

SHIFT_ALREADY_TRANSFERRED_TO_PAYROLL

The shift cannot be changed, it has already been transferred to payroll

No

EGENMELDING_FAIL_EGENMELDING_DAYS_USED_UP

All self-certified sick leave days has already been used

No

EGENMELDING_FAIL_AGP_USED_UP

Self-certified sick days can only be utilized within the employer period

No

LEAVEAPP_PRECEEDING_LEAVE_WITHOUT_WORK

No work time has been registered following the preceding absence

No

LEAVEAPP_MAX_TWO_OVERLAPPING_ABSENCE_IN_PERIOD

Quinyx supports no more than two overlapping absences

No

LEAVEAPP_OVERLAPPING_ABSENCE_IN_PERIOD

Overlapping absence in period, absence rejected

No

PUNCH_ALREADY_TRANSFERED_TO_PAYROL

Action could not be performed as data within the selected period has been transferred to payroll

No

LEAVE_SHIFT_ALREADY_TRANSFERRED_TO_PAYROLL

Action could not be performed as data within the selected period has been transferred to payroll

No

LEAVE_MAX_OCCASIONS

Max occasions per absence type

No

LEAVE_MAX_DAYS_IN_PERIOD

Max leave days for the period has been reached

No

LEAVE_MAX_CONSECUTIVE_DAYS

Max consecutive days has been reached

No

LEAVE_MIN_DAYS_BETWEEN

Less than minimum allowed days between absence occasions

No

NO_ROLE_ON_ABSENCE_SCHEDULE_SHIFT

Absence schedule shift is on group on which employee doesn't have a role

No

MISSING_AGREEMENT

You can't add absence to an employee that doesn't have a valid agreement

No

LEAVEAPP_NOT_ATTESTABLE_BY_MANAGER

Absence not attestable by manager

No

LEAVEAPP_NOT_ATTESTABLE_BY_EMPLOYEE

Absence not attestable by employee

No

INVALID_LEAVE_REASON

Absence type id not valid for this domain.

No

INVALID_ABSENCE_SCHEDULE

Absence schedule id not valid for this domain.

No

error.schedule.forbidden

This error message occurs as a result of the employee id not being valid for this group

No

ACCRUAL_BALANCE_EXCEEDED

This employee’s Time Tracker balance is lower than that needed for the absence you’re attempting to create. This validation being run/returned is subject to configuration.

Note that the validation object contains a field called “Text” which in turn contains the name of the TimeTracker that’s not containing the needed absence balance.

No


How Did We Do?