Xing.com Job Scraper
Pricing
from $1.50 / 1,000 results
Xing.com Job Scraper
Scrape job listings from Xing.com — Germany's leading professional network. Extract title, company, city, salary, Kununu rating, remote type and full description. Filters for keywords, location, contract type and more.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Actor stats
1
Bookmarked
4
Total users
2
Monthly active users
a day ago
Last modified
Categories
Share
Xing Job Scraper

Scrape job listings from Xing.com — Germany's leading professional network with over 22 million members and tens of thousands of active job postings. Extract structured vacancy data for recruitment research, talent market analysis, salary benchmarking, and job trend monitoring.
Features
- Keyword & location search — find jobs by title, skills, city, or region
- Contract type filter — Full-time, Part-time, Freelance, Internship, and more
- Remote filter — Fully remote, Hybrid, or On-site
- Date filter — limit results to jobs published within N days
- Salary extraction — structured min/max salary with period (hourly/monthly/yearly)
- 3 description formats — HTML, plain text, and Markdown for RAG/LLM pipelines
- Cross-run repost detection — fingerprinting identifies duplicate postings across runs (90-day window)
- startUrls support — pass any Xing job search URL directly
Input
| Parameter | Type | Description |
|---|---|---|
keywords | String | Job title or skills to search for |
location | String | City or region, e.g. Berlin, München |
radius | Integer | Search radius in km (default: 30) |
employmentType | Select | Full-time, Part-time, Freelance, Internship, etc. |
remoteOption | Select | Fully remote, Hybrid, On-site |
daysOld | Integer | Only return jobs published within N days |
maxItems | Integer | Maximum number of results (default: 100) |
skipReposts | Boolean | Exclude reposted jobs (cross-run dedup) |
startUrls | Array | Custom Xing search URLs to scrape |
Example input
{"keywords": "Software Engineer","location": "Berlin","radius": 30,"employmentType": "full-time","remoteOption": "hybrid","daysOld": 14,"maxItems": 100,"skipReposts": false}
Output
Each result is a structured JSON object with 29 fields:
| Field | Type | Description |
|---|---|---|
url | String | Direct link to the job on xing.com |
jobId | String | Xing's internal job identifier |
source | String | Always xing.com |
title | String | Full job title |
company | String | Hiring company name |
companyUrl | String | Company website |
companyLogo | String | Company logo URL |
city | String | Job location city |
location | String | Full location string |
country | String | ISO country code (usually DE) |
remoteType | String | FULLY_REMOTE, HYBRID, or NO_REMOTE |
contractType | String | FULL_TIME, PART_TIME, FREELANCER, etc. |
careerLevel | String | Required experience level |
salary | String | Salary range (human-readable) |
salaryMin | Number | Minimum salary as a number |
salaryMax | Number | Maximum salary as a number |
salaryType | String | hourly, monthly, or yearly |
publishDate | String | Publication date (YYYY-MM-DD) |
publishDateISO | String | Full ISO 8601 timestamp |
daysOld | Integer | Days since publication |
expiryDate | String | Listing expiry date (if available) |
description | String | Full description in HTML |
descriptionText | String | Plain text description |
descriptionMarkdown | String | Markdown description for LLM/RAG use |
applyUrl | String | External apply URL (null if Xing modal) |
isRepost | Boolean | Whether this is a reposted job |
originalPublishDate | String | Original date (for reposts) |
contentHash | String | Hash for workflow deduplication |
scrapedAt | String | Scrape timestamp (ISO 8601) |
Example output
{"url": "https://www.xing.com/jobs/berlin-senior-software-engineer-techcorp-129410640","jobId": "129410640","source": "xing.com","title": "Senior Software Engineer (m/w/d)","company": "TechCorp GmbH","companyUrl": "https://www.techcorp.de","companyLogo": "https://www.xing.com/imagecache/...","city": "Berlin","location": "Berlin, Germany","country": "DE","remoteType": "HYBRID","contractType": "FULL_TIME","careerLevel": "Professional","salary": "EUR 70000 – 90000","salaryMin": 70000,"salaryMax": 90000,"salaryType": "yearly","publishDate": "2025-03-20","publishDateISO": "2025-03-20T08:17:33Z","daysOld": 7,"expiryDate": "2025-04-20","description": "<p>We are looking for a <strong>Senior Software Engineer</strong>...</p>","descriptionText": "We are looking for a Senior Software Engineer...","descriptionMarkdown": "We are looking for a **Senior Software Engineer**...","applyUrl": null,"isRepost": false,"originalPublishDate": null,"originalUrl": null,"contentHash": "a3f9c12e","scrapedAt": "2025-03-27T10:30:00.000Z"}
Performance
| Metric | Value |
|---|---|
| Typical speed | ~3–7 seconds per job |
| Recommended memory | 512 MB (default) |
| Rate limit handling | Automatic retries with exponential backoff |
| Repost detection window | 90 days (cross-run) |
Pricing
$1.50 per 1,000 results
You only pay for successful results. Compute is included at no extra charge.
Use cases
- Recruitment — monitor new vacancies across companies or sectors in the DACH region
- Market research — track demand for specific roles, skills, or locations over time
- Salary benchmarking — aggregate compensation data from structured salary fields
- Competitive intelligence — monitor competitor hiring activity
- LLM/RAG pipelines — use
descriptionMarkdownfor structured AI-ready output - HR analytics — track job market trends in Germany, Austria, and Switzerland
Notes
- applyUrl may be
nullfor jobs that use Xing's built-in application modal - salary is only populated when Xing/the employer has provided salary information
- Results respect Xing's search relevance ranking; use
startUrlsfor custom sorting
Maintained by unfenced-group · Part of the DACH job board scraper portfolio