XING Jobs Scraper avatar

XING Jobs Scraper

Pricing

$0.99 / 1,000 job saveds

Go to Apify Store
XING Jobs Scraper

XING Jobs Scraper

[πŸ’° $0.99 / 1K] Extract public XING job listings across the DACH region for recruiting research, market analysis, salary benchmarking, and hiring intelligence.

Pricing

$0.99 / 1,000 job saveds

Rating

0.0

(0)

Developer

Fetch Finch

Fetch Finch

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 hours ago

Last modified

Share

Collect structured job listings from XING for recruiting research, hiring intelligence, salary benchmarking, and DACH job-market analysis.

The Actor searches XING's public jobs feed and saves one dataset item per listing. Search by keyword, location, date, or a prepared XING search URL. Results include job, company, location, compensation, application, search metadata, and optional full-description data.

Ready-to-run examples

Try the published task configurations:

Pricing

The Actor costs $0.99 per 1,000 saved job listings ($0.00099 per saved job). Pricing is based on jobs saved to the run's default dataset; see the Actor's Pricing tab for the current rate and any applicable Apify subscription discounts.

Why use this Actor?

  • Fast collection - Uses XING's public JSON feed directly, without launching a browser.
  • Flexible search - Filter by keyword, city, region, country, or a saved XING jobs URL.
  • Freshness controls - Collect jobs from the last 24 hours, week, or month.
  • English and German support - Run one language mutation or the same search in both languages.
  • Controlled result sizes - Set both the maximum number of records and result pages.
  • Optional descriptions - Enrich feed results with public job-page HTML and plain text.
  • Apify-ready output - Export the dataset as JSON, CSV, Excel, or XML, or connect it to your own workflow through the Apify API.

Typical use cases

  • Build recruiting and talent-market datasets for Germany, Austria, and Switzerland.
  • Monitor new job postings for a role, skill, company, or location.
  • Compare job volume, employment types, salaries, and demand signals.
  • Send structured job records to spreadsheets, databases, dashboards, alerts, or hiring tools.

Input

The Actor accepts the following input. Field names shown in the Apify Console use camelCase; the runtime also accepts the compatible aliases date_posted, results_wanted, and max_pages.

FieldTypeDefaultDescription
keywordString-Job title, skill, or search term, such as Data Analyst or Python Developer.
locationString-City, region, or country, such as Berlin, Bavaria, or Germany.
startUrlString-A prepared XING jobs search URL. Explicit keyword and location values take priority over filters read from the URL.
startUrlsArray-A list of prepared XING search URLs. The first non-empty URL is used. Entries may be URL strings or objects containing url.
urlString-Compatibility alias for startUrl.
languageen or deenLanguage mutation for localized XING fields.
languagesArray-Run the search once per language, for example ["en", "de"]. Each result includes its language.
datePostedStringANY_TIMEOne of ANY_TIME, LAST_24_HOURS, LAST_WEEK, or LAST_MONTH.
resultsWantedInteger20Maximum records to save per selected language. Range: 1-1000.
maxPagesInteger20Maximum XING result pages to process per language. Range: 1-100.
includeDetailsBooleanfalseFetch each public job page and add descriptionText and descriptionHtml. This adds requests and runtime.
proxyConfigurationObject-Optional Apify Proxy configuration for larger or recurring runs, or when XING returns HTTP 403.
{
"keyword": "Data Analyst",
"location": "Berlin",
"datePosted": "LAST_WEEK",
"resultsWanted": 50,
"maxPages": 5
}

German search with full descriptions

{
"keyword": "Softwareentwickler",
"location": "Deutschland",
"language": "de",
"datePosted": "LAST_MONTH",
"resultsWanted": 25,
"includeDetails": true
}

English and German mutations

resultsWanted applies separately to each selected language. This example can produce up to 20 records: 10 English and 10 German, subject to the available results.

{
"keyword": "Software Engineer",
"location": "Berlin",
"languages": ["en", "de"],
"datePosted": "LAST_WEEK",
"resultsWanted": 10,
"maxPages": 2
}

Search from a prepared XING URL

{
"startUrl": "https://www.xing.com/jobs/t-remote?keywords=Remote&location=Berlin",
"resultsWanted": 50,
"maxPages": 5
}

Output

Each dataset item represents one visible XING job listing. Optional fields are omitted when XING does not publish a value.

FieldDescription
jobIdXING job identifier.
globalIdGlobal job identifier when available.
slugSlug used in the XING job URL.
titlePublished job title.
companyEmployer or company name.
companyIdXING company identifier when available.
companyLogoCompany logo URL when available.
locationPrimary job city or location.
locationsAdditional published job locations.
employmentTypeLocalized employment type, such as full-time.
salaryRaw XING salary object when published.
salaryTextHuman-readable salary or salary range.
datePostedXING refresh or posting timestamp when available.
activeUntilListing expiration date when available.
applyUrlDirect or external application URL.
applicationTypeXING application method type.
summarySummary or responsibility bullets when published.
descriptionHighlightSearch-result description highlight.
descriptionTextClean plain-text description when includeDetails is enabled and available.
descriptionHtmlFormatted public description HTML when available.
matchingFactsXING facts matching the search.
nonMatchingFactsXING facts that do not match the search.
urlDirect XING job URL.
languageLanguage mutation used for this result: en or de.
searchPositionPosition of the listing in the search response.
searchTotalTotal matching results reported by XING.
searchTrackingTokenSearch-result tracking token when available.
searchKeywordKeyword used for the search.
searchLocationLocation used for the search.
prioritizedXING priority flag when available.
paidPaid-listing flag when available.
topJobTop-job flag when available.
redirectsToThirdPartyWhether the application redirects to a third-party site.
detailErrorError encountered while enriching one job's details, if any.

Example output

{
"jobId": "148355491.3c4997",
"globalId": "global-example-id",
"slug": "junior-data-analyst-berlin",
"title": "Junior Data Analyst (m/w/d)",
"company": "Example GmbH",
"location": "Berlin",
"locations": ["Berlin"],
"employmentType": "Full-time",
"salaryText": "EUR 45,000 - 55,000",
"datePosted": "2026-09-01T10:24:09Z",
"applyUrl": "https://example.com/apply",
"descriptionText": "Join the analytics team and work on data-driven projects.",
"url": "https://www.xing.com/jobs/junior-data-analyst-berlin-148355491",
"language": "en",
"searchPosition": 1,
"searchKeyword": "Data Analyst",
"searchLocation": "Berlin"
}

Tips for reliable runs

  • Use a specific keyword and location for more relevant results.
  • Start with 20-50 records while testing a search, then increase resultsWanted and maxPages.
  • Use LAST_24_HOURS for fresh alerts, LAST_WEEK for recurring hiring reports, and LAST_MONTH for broader research.
  • Enable includeDetails only when full descriptions are needed; it makes one additional public-page request per listing.
  • Use Apify Proxy for larger or recurring runs, or configure it if XING begins returning HTTP 403 responses. The Actor rotates proxy sessions up to three times for feed and detail requests.
  • Use languages: ["en", "de"] when you need localized versions of the same search. Results are tagged with the language used.
  • For recurring monitoring, create an Apify schedule and connect the dataset to a webhook or downstream integration.

Data availability and limitations

  • The Actor collects publicly visible job listings and does not require a XING login.
  • Salary, company information, locations, application links, and descriptions are source-dependent and may be missing.
  • datePosted represents the timestamp exposed by XING, which may be a refresh date rather than the employer's original publication date.
  • includeDetails enriches listings only when the public job page is available. An individual detail failure is recorded in detailError without discarding the listing.
  • Remote or hybrid roles can be searched with keywords such as Remote or through a prepared XING search URL; the current output does not add a separate normalized remote-status field.
  • XING may change its public feed, throttle requests, or temporarily return 403 responses. Proxy configuration can help with larger or recurring runs.

Export and integrations

Apify datasets can be downloaded as JSON, CSV, Excel, XML, and other supported formats. You can also connect this Actor to:

  • Google Sheets, Airtable, and databases
  • Looker Studio and other BI tools
  • Webhooks, Make, and Zapier
  • Your own application through the Apify API

This Actor is intended for legitimate collection and analysis of publicly available job information. You are responsible for complying with applicable laws, XING's terms, privacy requirements, and any restrictions that apply to your use case. Avoid collecting or processing personal data beyond what is necessary for your stated purpose.

For support or feature requests, use the Actor's Issues tab in Apify Console.