Werk.nl Jobs Scraper Netherlands avatar

Werk.nl Jobs Scraper Netherlands

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Werk.nl Jobs Scraper Netherlands

Werk.nl Jobs Scraper Netherlands

Extracts job listings from Werk.nl, the Dutch government (UWV) job board, including salary/hours, contract type, location, and publicly listed contact details.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

MrDoe

MrDoe

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Werk.nl Jobs Scraper Netherlands hero

Turn Werk.nl job listings into structured data in minutes - no coding, no manual copy-pasting. Get full descriptions, salary indications, contract type, and publicly listed contact details from Werk.nl, the Dutch government (UWV) job board.

What does Werk.nl Jobs Scraper Netherlands do?

Werk.nl Jobs Scraper Netherlands collects job listings from Werk.nl, the job board run by UWV (the Dutch Employee Insurance Agency). Search by keyword and/or location, and it pages through every matching vacancy, then visits each one's own page to pull the full description, salary indication, education/experience requirements, and the employer's publicly listed contact details.

Why use Werk.nl Jobs Scraper Netherlands?

  • Talent sourcing - build a feed of open vacancies across every sector Werk.nl covers, from volunteer roles to specialist positions.
  • Salary benchmarking - collect published salary indications by role, region, or contract type.
  • Lead generation - find employers actively hiring in a specific sector or region, with direct contact details where published.
  • Labour-market research - track vacancy volume and requirements (education, experience, hours) over time.

How to use Werk.nl Jobs Scraper Netherlands

How Werk.nl Jobs Scraper Netherlands works

  1. In the Input tab, set Keywords to a profession or search term (matching Werk.nl's own search box), and optionally Location.
  2. Leave Enrich with detail pages on to collect full details per vacancy (recommended), or turn it off for a faster search-only run.
  3. Set Max items / Max pages if you want to cap the run, or leave empty to collect everything matching the search.
  4. Click Start and wait for the run to finish.
  5. Open the Dataset tab to preview, filter, and export your results.

Input

Werk.nl Jobs Scraper Netherlands input options

FieldTypeDescription
keywordsStringFree-text search term (profession, keyword, or vacancy reference number). Leave empty to browse all active vacancies.
locationStringCity or postcode to filter by.
includeDetailsBooleanVisit each vacancy's own page for full data (default: true).
maxItemsIntegerMaximum vacancies to collect (default: unlimited).
maxPagesIntegerSafety cap on result pages (default: unlimited).
useCacheBooleanSkip vacancies already collected by a previous run (default: true).
proxyConfigurationObjectProxy settings. Residential proxy is used by default - required to clear Werk.nl's bot-check.

Example input:

{
"keywords": "software developer",
"location": "Utrecht",
"maxItems": 200
}

Output

Werk.nl Jobs Scraper Netherlands dataset output

Werk.nl Jobs Scraper Netherlands data fields

Each vacancy is saved as one item in the dataset, for example:

{
"jobId": "70390321",
"title": "Software Engineer",
"companyName": "Eijsink",
"city": "ENSCHEDE",
"contractType": "Tijdelijk",
"educationLevel": "Hbo/bachelor",
"salary": "4536 bruto per maand",
"recruiterName": "Marije Busscher",
"recruiterEmail": "john.kolthof@eijsink.nl",
"companyWebsite": "http://werkenbijeijsink.nl",
"url": "https://www.werk.nl/nl/vacatures/70390321",
"source": "werk.nl",
"scrapedAt": "2026-08-21T00:00:00.000Z"
}

Field reference

FieldDescription
jobId, requisitionIdWerk.nl's vacancy reference number
title, descriptionVacancy title and full description
contractType, employmentType, hoursPerWeek, workScheduleContract type and working hours
education, educationLevel, experienceRequiredRequirements, where published
city, address, remoteTypeWork location
salarySalary indication text as published (Werk.nl doesn't split this into a structured min/max)
companyName, companyWebsiteEmployer
postedAt, updatedAt, expiresAtPublication, last-modified, and closing dates
recruiterName, recruiterEmail, recruiterPhoneContact published on the listing, where the employer includes one
url, canonicalUrlThe vacancy's own page on Werk.nl
attributes.sectionsEvery field grouped exactly as Werk.nl's own page sections show them (Arbeidsvoorwaarden, Opleiding, Werkervaring, Contactgegevens, Algemene gegevens)

Fields with no public data for a given vacancy are returned as null (or []/{} for arrays/objects) - never fabricated or guessed.

How it works

Werk.nl's entire domain sits behind a JavaScript bot-check (an auto-submitting challenge page) that only clears inside a real browser session. This Actor uses a headless browser to clear that check once, then calls Werk.nl's own search API directly from within that page (reusing its already-cleared session and CSRF token) to page through results cheaply, without a full page load per page of results. Each vacancy's own page still needs a real navigation - same bot-check reason - which is where the full description and contact details come from.

Pagination

The Actor pages through results (20 vacancies per page) until it reaches the last page (based on Werk.nl's own result count), maxPages, or maxItems - whichever comes first.

Cache behavior

With useCache on (default), every successfully collected vacancy's reference number is stored permanently in the Actor's key-value store - no expiration, no TTL. Re-running the Actor with the same or overlapping search will skip vacancies already collected and only return new ones. Disable useCache to re-collect everything.

Cost / performance

Only one browser page load is needed to clear Werk.nl's bot-check and page through search results (via cheap in-page API calls); one additional page load is needed per enriched vacancy. Combined with the permanent cache, this keeps cost per result reasonable despite the browser requirement.

Troubleshooting

A run returns 0 vacancies. Make sure the default residential proxyConfiguration is enabled - Werk.nl blocks non-browser and datacenter traffic. Also try a broader keywords value; Werk.nl's search matches on exact terms rather than loose substrings.

FAQ / Disclaimer

Is this legal? This Actor only collects publicly visible vacancy data. You are responsible for using the data in accordance with Werk.nl's Terms of Service and applicable law in your jurisdiction. Contact details are only included where the employer has published them on the vacancy itself.

Found a bug or have a feature request? Please use the Issues tab on this Actor's page - feedback directly shapes future updates.