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:
▶︎ Pull employee data from Personio.
▶︎ Create new employees in Personio
▶︎ Update existing employee data in Personio.
You can use the MS Teams integration to inform your employees of a selected channel about anniversaries and birthdays.
▶︎ Pull attendance data (incl. project ID) from Personio.
▶︎ Create new attendances in Personio (with both start and end time, or only with start time).
▶︎ Update existing attendances in Personio.
▶︎ Delete attendances in Personio.
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.
▶︎ 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).
You can use the Slack integration to enable your employees to request an absence directly from Slack.
▶︎ Pull document categories data from Personio.
▶︎ Send a document to a Personio employee profile (only possible after pulling document categories data).
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.
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.
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.