This article explains what a Public Application Programming Interface (API) is, what can you use the different Personnel Data APIs for, and how to generate API credentials for them.
What is a Public API in Personio?
APIs allow data to be exchanged between Personio and another service or tool. This way, you can build connections between Personio and your own databases, or set up integrations with third-party providers that are available in the Personio Marketplace.
Personio currenlty offers several public APIs: the Recruiting API, the Custom Reports API and the four Personnel Data APIs (Employees, Absences, Attendances, and Documents).
What can you do with the different Personnel Data APIs?
The Personnel Data APIs, in particular, allow the exchange of information concerning employee data, documents, attendances, and absences, respectively.
Depending on the specific API, they allow you to do the following:
-
Employees API
▶︎ Pull employee data from Personio.
▶︎ Create new employees in Personio
▶︎ Update existing employee data in Personio.
Example
You can use the MS Teams integration to inform your employees of a selected channel about anniversaries and birthdays. -
Attendances API
▶︎ Pull attendance data (incl. project ID) from Personio.
▶︎ Create new attendances in Personio.
▶︎ Update existing attendances in Personio.
▶︎ Delete attendances in Personio.
Example
You can use the askDante integration to track your employees attendances. Data tracked in this application on start- and end-times, as well as the breaks from the attendance, can then be transferred into Personio. -
Absences API
▶︎ Pull absence data from Personio (available for absences tracked both in hours and in days).
▶︎ Create new absences in Personio (available for absences tracked both in hours and in days).
▶︎ Delete absences in Personio (available for absences tracked both in hours and in days).
Example
You can use the Slack integration to enable your employees to request an absence directly from Slack. -
Documents API
▶︎ Pull document categories data from Personio.
▶︎ Send a document to a Personio employee profile (only possible after pulling document categories data).
Example
You can use the Pento integration to receive payslips from Pento and store them in the respective employee profile.
Generate API Credentials
-
- Go to Settings > Integrations > API credentials.
- Click Generate new credential.
- The Add new credential sidebar will appear. In the Name field, enter a meaningful name (for example, Document Data Credentials) for the API credentials.
- If applicable, select an integration from the Integration drop-down menu. If not, select Other.
- Select either the Read checkbox, the Write checkbox, or both for the relevant Personnel Data API (Employees, Attendances, Absences, Documents). If you select the Read checkbox for the Employees API, select also the custom attributes to be transferred via the API.
Tip
Read more about the different checkboxes in the article Generate and manage API credentials. - Click Generate new credential.
- A message will display confirming that the new API credentials have been created.
Technical documentation
All the documentation for the different Personnel Data APIs, including endpoints, information about the precise data transferred and technical tutorials, is available in our Developer Hub.
For POST and PATCH, only specific system attributes are supported. The supported system attributes are listed in our Developer Hub in the example Create an employee. All other system attributes cannot be POSTed or PATCHed.