Nationale Vacaturebank Scraper (Netherlands Jobs) avatar

Nationale Vacaturebank Scraper (Netherlands Jobs)

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
Nationale Vacaturebank Scraper (Netherlands Jobs)

Nationale Vacaturebank Scraper (Netherlands Jobs)

Scrape job listings from Nationale Vacaturebank, the largest Dutch job board. Search by keyword, city, category, contract type and education level. Salary, working hours, location, employer and full description. No login, no API key.

Pricing

from $1.20 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Scrape job listings from Nationale Vacaturebank, the largest Dutch job board with about 90,000 active vacancies. Search by keyword and filter by city, category, contract type, education level and career level. Every vacancy comes back with title, employer, location, salary range, working hours and the full description. No login and no API key.

How to scrape Nationale Vacaturebank data

  1. Open the actor and press Try for free.
  2. Type a Search query such as developer, monteur or verpleegkundige. Leave it empty to list the newest vacancies.
  3. Optionally fill in a City, one or more Categories, a Contract type, an Education level or a Career level.
  4. Set Max results and start the run.
  5. Download the dataset as JSON, CSV or Excel, or read it through the Apify API.

Search and filters

InputWhat it does
Search queryKeyword or job title, Dutch or English
CityDutch city, for example Utrecht or Den Haag
CategoriesOne or more of the 21 site categories, for example Techniek or Medisch/Zorg
Contract typeVast, Tijdelijk, Freelance, Interim, ZZP, Stage, Bijbaan and more
Education levelFrom Lagere school to Postdoctoraal
Career levelStarter or Ervaren
Hybrid onlyOnly vacancies marked as hybrid. Off by default, so every vacancy is returned
Include descriptionAdds the full vacancy text. On by default

Large runs

The site answers at most 10,000 vacancies per search. When Max results is above 10,000, the actor splits the search by category, contract type and education level and removes duplicates, so a run of 90,000 vacancies is possible.

What data does the Nationale Vacaturebank Scraper extract?

FieldDescription
jobIdVacancy UUID
urlLink to the vacancy page
title, functionTitleVacancy title and job function
company, companyTypeCompany name and whether it is an employer or a recruiter
companyWebsite, companyLogoUrlCompany website and logo, when given
city, province, postalCodeWork location
latitude, longitudeWork location coordinates
salaryMin, salaryMax, salaryPeriod, salaryCurrencySalary range, when the employer discloses it
contractTypesContract types, for example Vast or Tijdelijk
workingHoursMin, workingHoursMaxHours per week
workingPlaceHybride when the vacancy is hybrid
educationLevels, careerLevelEducation level and Starter or Ervaren
categories, industriesSite categories and employer industries
descriptionVacancy text as plain text
applyUrl, applyMethodApplication link and whether it is internal or external
publishedAt, expiresAtPublication window
scrapedAtTime of the scrape

Names, e-mail addresses and phone numbers of recruiters are not collected.

Example output

{
"jobId": "0704ddd9-cf0b-43fb-aebc-03b23e4e0bcb",
"url": "https://www.nationalevacaturebank.nl/vacature/0704ddd9-cf0b-43fb-aebc-03b23e4e0bcb/ai-builder",
"title": "AI Builder",
"company": "Keuze.nl",
"companyType": "employer",
"city": "Utrecht",
"province": "Utrecht",
"postalCode": "3581CS",
"salaryMin": null,
"salaryMax": null,
"contractTypes": ["Vast"],
"workingHoursMin": 40,
"workingHoursMax": 40,
"educationLevels": ["HBO"],
"careerLevel": "Ervaren",
"categories": ["Automatisering/Internet"],
"publishedAt": "2026-10-17T22:00:00Z",
"expiresAt": "2026-12-16T23:00:00Z"
}

Input examples

Software vacancies in Utrecht:

{ "searchQuery": "developer", "location": "Utrecht", "maxResults": 200 }

All permanent healthcare vacancies for MBO level:

{ "categories": ["Medisch/Zorg"], "contractType": "Vast", "educationLevel": "MBO", "maxResults": 5000 }

The newest vacancies in the whole country, without descriptions:

{ "includeDescription": false, "maxResults": 1000 }

Use cases

  • Labour market monitoring: vacancy counts per city, category or employer over time.
  • Recruitment agencies: find which employers advertise directly and which go through recruiters.
  • Salary research: salary ranges by function, region and education level.
  • Job aggregators: a daily feed of Dutch vacancies with coordinates and apply links.
  • Competitor tracking: see which roles a company hires for.

How much does it cost?

The actor is billed per result: a small fee per run start and a fee per vacancy returned, as shown on the pricing tab. The most a run can cost in results is the per-result price times Max results. A run of 100 vacancies takes a few seconds and uses less than one cent of compute. The usage cost of a run settles after the run has SUCCEEDED, so it does not show on a run that is still in progress.

Data source and limits

The data comes from the public vacancy search of Nationale Vacaturebank. The actor does not log in and does not collect personal contact details. Salary is empty when the employer does not disclose it. The same vacancy can appear on the site under several recruiters, and each listing is returned as the site shows it. City names must match the site spelling, for example Den Haag. The actor capitalises each word for you.

FAQ

Does it work without a proxy? Yes. The site's vacancy search answers plain requests.

How fresh is the data? Each run reads the live site, so results are current at the time of the run.

Can I get every vacancy? Yes. Set Max results to 100,000 and leave the filters empty. The run takes a few minutes per 10,000 vacancies.

Why is the salary empty for some vacancies? Many employers do not publish a salary. The field is empty in that case.

Can I run it on a schedule? Yes, use Apify schedules and compare runs by jobId.

Support

Questions or a missing field? Open an issue on the actor page and we reply quickly.