improved

Employee API: added email filter

We just added an email query parameter to the /company/employees endpoint, which allows you to find an employee with their given email address. The response is still a list, containing only the filtered employee.

improved

Absence API: absence type configuration

In Personio, absence types are very customizable. For example, for a given absence type you can specify whether Half days, Substitutes, Absence certificates or similar options are required or possible. (Find more info here)

added

Employee API: absence balance endpoint

You can now retrieve the current balance per absence type for a given employee by calling the /company/employees/{employee_id}/absences/balance endpoint.

improved

Employee API: custom attribute types

The response of the GET /company/employees /company/employees/{employee_id} and /company/employees/custom-attributes endpoints now returns the attribute type for custom attributes.

improved

Employee API: pagination

Added pagination to the GET employees endpoint to make fetching larger sets of employee data easier. This is not a breaking change – all requests that don't contain the offset and limit parameter will still pull all of employees.

improved

Attendance API: added "status" attribute and enabled filtering by "includePending"

  • We just added the attribute "status", which indicates the status of an Attendance Period (“approved”, “pending”).
  • You're now also able to get the results using the parameters "includePending”, which returns Attendance Periods with both “pending” and “approved” status. Find more information in the​​ API reference​.
improved

Attendance API: added "updated_at" attribute and enabled filtering by "updated_at"

Synchronising attendance periods with Personio just became a whole lot easier!

improved

Absence API: added optional "skip_approval" parameter

Absence periods created via the POST /company/time-offs endpoint used to skip the approval process by default, so there was no way to create absence requests using the public API.

fixed

Absence API: fixed breaking change introduced by pagination update

The breaking changes described in the previous post have now been fixed:

fixed

[fixed] Breaking Change: Absence Pagination

We just introduced pagination to the GET Absence API which unfortunately introduced a breaking change (this was not on purpose). Currently, the absence response is limited to 200 entries by default in case no pagination parameters are put in, which might break your implementation given we didn't previously limit the response.