The XING E-Recruiting API allows to post job postings on XING Jobs as well as monitoring their status and performance. This guide is designed to help you get up and running quickly with the XING E-Recruiting API by outlining the most important steps.

First things first: Only XING customers with a valid contract are able to post job ads on XING via API. If you don’t have an organization-id and an order-id from a contract yet, please e-mail

Getting started

  1. If you haven’t already done so, sign up and confirm your personal XING account.
  2. After that, upgrade your account to a developer account by just logging in to this developer portal:
    Log in to the XING developer portal
  3. In order for you to use the API, we need to create an app submission for you which you then fill out and submit:
    • Write an email with your intention and the name of the used developer account to
    • We will create an app for you, which will appear in your dashboard.
    • You’ll need to apply for a production key as you can’t use a test application for the vendor part of the API. Fill out the submission. You will not be able to find the necessary access right 'vendor_jobs' on your own. Please choose a basic one like 'Users/Id card' we will do the rest then.
    • We will check your app and approve it if it is following our policies.
    • You can start developing and testing against our XING E-Recruiting API now. Please check the following sections for further technical information.

Product overview

The XING E-Recruiting API allows you to post Standard, Professional, Professional+ and Campus postings. Some products may have different available and mandatory fields than other products do. The following table is intended to give you an overview of these technical characteristics:

Please note campus postings require you to set the student_classification parameter when submitting or updating a posting (either thesis, internship or part-time). This is the only posting type with an additional mandatory parameter.
Please see here for terms, click limits, performance and other characteristics of our products:

XING Jobs product overview

Authentication and basic information

The XING E-Recruiting API uses OAuth 2.0 for authenticating with the API server. Further details about that are available here:
OAuth Authentication

Examples on how to implement the OAuth handshake with the XING APIs using different programming languages can be found here. Most of these examples use a third-party OAuth library, meaning that you generally don’t need to implement the OAuth handshake on your own.

Accept headers

Using the following API resources requires you to set suitable accept headers to one of these:
  • Accept: application/
  • Accept: */*


To create postings on XING Jobs you'll need a valid contract providing you order_id and organization_id. We provide test IDs that enable you to use the XING E-Recruiting API to test your integration independently of a valid contract. These IDs will create your postings in the public accessible XING Jobs. Please do not create and activate postings unnecessary. Test postings will be archived after five clicks automatically. Use the following test IDs until your application is production ready:

Product Order ID Organization ID
Campus 1042042 5160
Basic 1087615 5160
Basic+ 1087614 5160
Standard 968181 5160
Professional 968182 5160
Professional+ 1022232 5160

Posting life cycle

As soon as you post a job posting, it will be available in your XING Job Manager, but not yet active. After activating the posting, it will be visible to everyone on XING Jobs. You can switch your posting between the active and deactivated state during the whole term. When the posting expires it will be archived. An archived posting can not be reactivated. Please see the following state diagram for a complete overview:

API resources

These calls allow you to create, update, delete, activate, deactivate and archive postings, and to get status information about your posting or orders.

Description Verb Resource
Create a new posting POST /vendor/jobs/postings
Update an existing posting PUT /vendor/jobs/postings/:id
Activate a posting PUT /vendor/jobs/postings/:id/activate
Deactivate a posting PUT /vendor/jobs/postings/:id/deactivate
Archive a posting PUT /vendor/jobs/postings/:id/archive
Delete a posting DELETE /vendor/jobs/postings/:id
Get a list of postings GET /vendor/jobs/postings
Get a list of postings performance GET /vendor/jobs/postings/performance
Get a list of postings states GET /vendor/jobs/postings/status
Get a list of orders information GET /vendor/jobs/orders
Get a list of applications GET /vendor/jobs/organizations/applications

Frequently asked questions

Are there business accounts to use the XING E-Recruiting API?
The XING E-Recruiting API is using a user based authentication. It is not possible to use a company account to access the API. Please do not create XING user accounts for your company as they may be perceived as fake accounts and get disabled.
Can I provide multiple locations for a job posting?
Currently XING Jobs supports one location per job posting. Please create separate jobs for every location to make sure the location search in XING Jobs will work correctly.
I've identified a problem. Could you fix it?
In order to fix potential problems it is essential for us to get logfiles about the failed requests. Please follow the guideline on "How to provide logfiles" to make sure your issue can be addressed in time.