Employee API: added supervisor_id field

Added the feature to set/update Employee's Supervisors.

Employee API: added status field

Added the feature to set/update Employee's Status.


Added Custom Reports Public API Endpoints

Three new endpoints were added to the Personio API around retrieving Custom Reports. After users have created a Custom Report in the Personio web app, the endpoints allow them to pull the data contained within this report in JSON format:

Absences API : Endpoint for fetching hourly absences added

In Personio, it was already possible to fetch daily absence periods. We've added a new endpoint that allows customers to fetch hourly periods, along with daily breakdowns for those periods.


Employees API: Currency is now exposed

In Personio, it is already possible to retrieve salary data for employees. That salary data currently does not include the currency of a particular employee’s salary. From now on we are adding the currency attribute to the salary model in the employee endpoint.


Documents API: Post documents endpoints

Two new endpoints were added to the Personio public API.


Employee API: renamed the /custom-attributes endpoint with backward compatibility

The endpoint GET v1/employees/custom-attributes was originally created to support custom attributes only.
It evolved to more than that and now also returns information about regular attributes. To ensure correct naming we are renaming it to GET v1/employees/attributes.
Both endpoints will remain available to ensure compatibility.


Employees API: Universal ID is now exposed

The employee object now has the Universal ID (UID) exposed.


Attendances API: added optional "skip_approval" parameter

Attendances periods created via the POST /company/attendances, the updates via PATCH company/attendances and deletions via DELETE company/attendances endpoints used to skip the approval process by default, so there was no way to create attendances requests using the public API.


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.