NAV
shell python

Introduction

This documentation will take you through XingZap's search API.

All you need to get started is a search URL or the field map via the /fields route given in this doc.

You can get request an access key by filling this form !

Xing and limitations

XingZap simply automates what you would be able to do on Xing.

According to Xing's Terms of Service, Xing only returns 300 results per search at maximum. See more details here.

Here's an article posted on our blog to help you overcome this limit.

Moreover, XingZap mines Xing everytime a search is made, no data is kept in databases to respect GDPR regulation. For this reason, a search can take up to 30s.

Rate limit

Authentication

All the requests should be authenticated with the X-Api-Key header:

import requests

response = requests.post("https://api.v2.xingzap.com/search",
json={
    "keywords":"Head of sales",
    "languageFilter":["German"]
  },
  headers= {
    'X-Api-Key':'XINGZAP_API_KEY'
    }
    )
# With shell, you can just pass the correct header with each request
curl --location --request POST 'https://api.v2.xingzap.com/search' \
  -H 'X-Api-Key: XINGZAP_API_KEY'
  --data-raw '{
    "keywords":"Head of sales",
    "languageFilter":["German"]
  }'

Make sure to replace XINGZAP_API_KEY with your API key.

You can get a test key by filling our access request form..

XingZap expects for the API key to be included in all API requests to the server in a header that looks like the following:

X-Api-Key: XINGZAP_API_KEY

Search

The above command returns the current version of the fields, their usable search_parameter names and their values:

[
  {
    "field_name": "Search",
    "search_parameter": "keywords",
    "type": "text"
  },
  {
    "field_name": "Name",
    "search_parameter": "name",
    "type": "text"
  },
  {
    "field_name": "Company",
    "search_parameter": "company",
    "type": "text"
  },
  {
    "field_name": "Position",
    "search_parameter": "title",
    "type": "text"
  },
  {
    "field_name": "Company (previous)",
    "search_parameter": "previousCompany",
    "type": "text"
  },
  {
    "field_name": "Position (previous)",
    "search_parameter": "previousTitle",
    "type": "text"
  },
  {
    "field_name": "Skills",
    "search_parameter": "haves",
    "type": "text"
  },
  {
    "field_name": "City",
    "search_parameter": "city",
    "type": "text"
  },
  {
    "field_name": "University",
    "search_parameter": "education",
    "type": "text"
  },
  {
    "field_name": "Discipline",
    "search_parameter": "disciplineFilter",
    "type": "array",
    "possible_values": [
      "Analysis and statistics",
      "Administration",
      "Consulting",
      "Customer service",
      "Purchasing, materials management & logistics",
      "Finance, accounting & controlling",
      "Teaching, R&D",
      "Health, medical and social",
      "Graphic design and architecture",
      "Engineering and technical",
      "IT and software development",
      "Management and corporate development",
      "Marketing and advertising",
      "HR",
      "PR and journalism",
      "Production and manufacturing",
      "Product management",
      "Project management",
      "Process planning & QA",
      "Legal",
      "Sales and commerce",
      "Other"
    ]
  },
  {
    "field_name": "Industry",
    "search_parameter": "industryFilter",
    "type": "array",
    "possible_values": [
      "Architecture and planning",
      "Automotive and vehicle manufacturing",
      "Banking and financial services",
      "Consulting",
      "Energy, water and environment",
      "Education and science",
      "Health and social",
      "Real Estate",
      "Industry and mechanical engineering",
      "Internet and IT",
      "Consumer goods and trade",
      "Art, culture and sport",
      "Marketing, PR and design",
      "Media and publishing",
      "Civil service, associations and institutions",
      "HR services",
      "Medical services",
      "Telecommunication",
      "Tourism and food service",
      "Transport and logistics",
      "Insurance",
      "Auditing, tax and law",
      "Other industries"
    ]
  },
  {
    "field_name": "Career level",
    "search_parameter": "levelFilter",
    "type": "array",
    "possible_values": [
      "Professional/Experienced",
      "Manager",
      "Executive",
      "Senior",
      "Entry",
      "Student/Intern"
    ]
  },
  {
    "field_name": "Employment type",
    "search_parameter": "currentStatusCodeFilter",
    "type": "array",
    "possible_values": [
      "Full time employee",
      "Self employed",
      "Owner",
      "Part time employee",
      "Partner",
      "Intern",
      "Volunteer",
      "Board member",
      "Recruiter",
      "Civil servant"
    ]
  },
  {
    "field_name": "Language",
    "search_parameter": "languageFilter",
    "type": "array",
    "possible_values": [
      "English",
      "German",
      "French",
      "Spanish",
      "Italian",
      "Russian",
      "Turkish",
      "Chinese",
      "Arabic",
      "Dutch"
    ]
  },
  {
    "field_name": "Country",
    "search_parameter": "countryFilter",
    "type": "array",
    "possible_values": [
      "Austria",
      "China",
      "Germany",
      "India",
      "Italy",
      "Spain",
      "Switzerland",
      "Turkey",
      "United Kingdom",
      "United States of America"
    ]
  }
]

Get Xing leads

Search for highly targeted Xing leads in one call.

HTTP Request

POST https://api.v2.xingzap.com/search

A request using only keywords

[
  {
    "firstName": "Harish",
    "lastName": "Govindarajalu",
    "fullName": "Harish Govindarajalu",
    "title": "Strategic Business Analyst",
    "location": "Berlin, Germany",
    "previousTitle": "",
    "company": "Apar Technologies",
    "xingId": "35511063.e8307c",
    "pageName": "Harish_Govindarajalu2"
  },
  {
    "firstName": "Dvir",
    "lastName": "Lifshits",
    "fullName": "Dvir Lifshits",
    "title": "Online Marketing & Growth Consultant - Hands-On Expert",
    "location": "Berlin, Germany",
    "previousTitle": "Acquisition/Growth Team Leader (Social)",
    "company": "Dvir Lifshits Online Marketing",
    "xingId": "34834626.d2ff1d",
    "pageName": "Dvir_Lifshits"
  }
]

A request using a searchUrl looks like this:

import requests

response = requests.post("https://api.v2.xingzap.com/search",
json={
    "searchUrl":"https://www.xing.com/search/members?keywords=anas%20el%20mhamdi"
  },
  headers= {
    'X-Api-Key':'XINGZAP_API_KEY'
    }
    )
curl --location --request POST 'https://api.v2.xingzap.com/scrap' \
  -H 'X-Api-Key: XINGZAP_API_KEY'
  --data-raw '{
    "searchUrl":"https://www.xing.com/search/members?keywords=anas%20el%20mhamdi"
  }'
Parameter Required Default Description
keywords One of keywords or searchUrl Keywords to search for leads in Xing
searchUrl One of keywords or searchUrl Required if no other parameters are used. The search URL must contain the keywords query parameter.
any searchable field No Any search_parameter from the /scrap/fields route

Scrap

Scrap a single profile

Scrapes the public information of a given pageName or Xing profileUrl.

HTTP Request

POST https://api.v2.xingzap.com/scrap

import requests

response = requests.post("https://api.v2.xingzap.com/scrap",
json={
    "pageName":"Anas_ElMhamdi"
  },
  headers= {
    'X-Api-Key':'XINGZAP_API_KEY'
    }
    )
curl --location --request POST 'https://api.v2.xingzap.com/scrap' \
  -H 'X-Api-Key: XINGZAP_API_KEY'
  --data-raw '{
    "pageName":"Anas_ElMhamdi"
  }'

A request using a profileUrl looks like this:

import requests

response = requests.post("https://api.v2.xingzap.com/scrap",
json={
    "profileUrl":"https://www.xing.com/profile/Anas_ElMhamdi/cv"
  },
  headers= {
    'X-Api-Key':'XINGZAP_API_KEY'
    }
    )
curl --location --request POST 'https://api.v2.xingzap.com/scrap' \
  -H 'X-Api-Key: XINGZAP_API_KEY'
  --data-raw '{
    "profileUrl":"https://www.xing.com/profile/Anas_ElMhamdi/cv"
  }'

Request parameters

Parameter Required Description
pageName One of pageName or profileUrl The shorthand name for a Xing profile
profileUrl One of pageName or profileUrl A Xing profile URL

Response description

Response parameter Description
fullName The user's full name
currentPosition A list of the current positions held by the users
workPositionTimeline A list of all the positions held by the users
description the user's about section (if available)
private A boolean indicating the user's profile is private
premiumProfile A boolean indicating the user's profile is a user of Xing Premium
profileImg The user's Xing avatar
xingUrl The user's Xing URL

The scraped data is sent in response:

{
  "fullName": "Anas El Mhamdi",
  "currentPosition": [
    {
      "jobtitle": "CEO",
      "company": "XingZap",
      "date": "8 months, since May 2021"
    },
    {
      "jobtitle": "Growth Engineer",
      "company": "Quable",
      "date": "1 year and 3 months, since Oct 2020"
    }
  ],
  "workPositionTimeline": [
    {
      "jobtitle": "CEO",
      "company": "XingZap",
      "date": "8 months, since May 2021",
      "startDate": "May 2021",
      "endDate": null,
      "daysInPosition": 240
    },
    {
      "jobtitle": "Growth engineer",
      "company": "Quable",
      "date": "1 year and 3 months, since Oct 2020",
      "startDate": "Oct 2020",
      "endDate": null,
      "daysInPosition": 452
    }
  ],
  "description": "I'm a growth engineer with a mission of making marketing exciting !\n\nI'm also the co-founder of XingZap, the only Xing automation tool of the market :)\n \nContact me for more information !",
  "profileImg": "https://profile-images.xing.com/images/441458d2037e2bd7e33de0b693ef528d-1/anas-el-mhamdi.256x256.jpg",
  "xingUrl": "https://xing.com/profile/Anas_ElMhamdi",
  "private": false,
  "premiumProfile": true
}

Errors

The XingZap API uses the following error codes:

Error Code Meaning
400 Bad Request -- Your request is invalid.
403 Forbidden -- The kitten requested is hidden for administrators only.
429 Too Many Requests -- You're exceeding the rate limit
500 Internal Server Error -- We had a problem with our server. Please contact us !