The Personio Recruiting API


This article contains useful information and links to understand what you can do with the Recruiting Application Programming Interface (API) provided by Personio, and how to set it up. For further information on the different APIs in Personio, you can also have a look at our overview of the Personio Recruiting and Personal Data API.

Please note that you should consult an IT expert for integrating the Recruiting API.


What can you do with the Personio Recruiting API?

The Personio Recruiting API allows you to transmit applications to Personio (POST) and retrieve positions (GET). Your credentials, which you need for each request, can be found in Settings > API credentials > Recruiting API key. There, you can find both your company ID and your recruiting API access token.



Retrieving Positions From Personio

Use a GET request to retrieve information about your published positions from your XML feed and integrate this information into your website. The URL for doing this is

Once your jobs are displayed on your career page, incoming applications need to be transmitted to Personio in the form of requests and responses:



Transmitting Applications to Personio

To send a POST request to Personio, use the following URL:

Mandatory parameters for the body of the POST request are: 

  • company_id (found at: Settings > API > Credentials
  • access_token (found at: Settings > API > Credentials
  • job_position_id (shown at: – or for Personio accounts created on or after November 25, 2020, use the URL
  • first_name (transferred via the candidate form)
  • last_name (transferred via the candidate form)
  • email (transferred via the candidate form)

We recommend that you retrieve the job_position_id automatically from the activated XML feed (GET) and integrate it into the POST request.

Personio also accepts optional parameters such as: 

  • birthday (transferred via the candidate form) or
  • documents (transferred via the candidate form)

You can transmit candidate documents either in bulk in a so-called array or individually. Click here for further details. 

You can also use the API to import values for all of the candidate attributes you have individually created in Settings > Recruiting > Attributes into Personio. To do this, you need to link the candidate attribute via the API attribute name. You can find this name in the edit mode for the candidate attribute:


You can also transmit the channel from which the application was received.

To do this, integrate the parameter recruiting_channel_id into your POST request. You can find the channel ID at Settings > Recruiting > Channels:



Technical Documentation

A full list of all parameters and further relevant information can be found in our Developer Hub.


Can't find what you're looking for?

We are happy to help you! Just write us a message with your questions and we will get back to you as soon as possible.

Submit a request



Article is closed for comments.

    Topics of this article