VDAB.be Scraper
Pricing
from $1.40 / 1,000 results
VDAB.be Scraper
[π° $1.4 / 1K] Extract job vacancies from VDAB.be, the Flemish public employment service. Search by keyword and location, filter by contract type and sort order, and get titles, companies, salaries, contract types, requirements, descriptions, bottleneck-job flags, and contact details.
Pricing
from $1.40 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Pull job vacancies from VDAB.be β the Flemish public employment service β at scale, including titles, employers, contract type, salary, work regime, experience and education requirements, language demands, and VDAB's own knelpuntberoep (bottleneck-occupation) flag. Every Dutch-language text field arrives as clean, ready-to-use plain text. Built for Belgian recruiters, labour-market researchers, and relocation services who need structured VDAB vacancy data without copy-pasting listings one page at a time.
Why This Scraper?
- VDAB's knelpuntberoep flag on every row β a boolean
isBottleneckJobmarks each posting VDAB classifies as a bottleneck occupation, so you can instantly isolate the hardest-to-fill, highest-demand roles across Flanders. - Up to 2,000 vacancies per keyword, merged and de-duplicated β run as many as 50 keywords in one go; overlapping results are collapsed by vacancy ID so the same job never appears twice.
- Four employment categories on one dropdown β filter by Regular jobs, Service vouchers (dienstencheques), Interim / temp work, or Social economy, mapped from plain English to VDAB's internal circuit codes for you.
- Full detail enrichment from each vacancy page β
description,salary,educationRequirements,languageRequirements,experienceLevel,workRegime, andemploymentLocationpulled straight from the vacancy detail, not just the search card. - Language requirements with proficiency levels β
languageRequirementslists each demanded language alongside its required competency (e.g. "Nederlands (Goed); Frans (Voldoende)"), parsed from VDAB's structured talenkennis data. - Linked-duplicate counter β
duplicateCounttells you how many other postings VDAB links to the same job, a strong signal for high-volume or multi-agency hiring. - Full Flanders plus Brussels coverage β search any Flemish or Belgian city or municipality (Antwerpen, Gent, Brussel, Hasselt, Leuven, Brugge), resolved to the right province automatically.
- Apply-ready external links β
sourceDetailUrlcaptures the employer's own application webadres where VDAB exposes it, plus the canonical publicurlfor every vacancy. - Raw-payload passthrough for analysts β flip on
includeRawDatato attach the untouched source records (rawListing,rawDetail) alongside the clean fields.
Use Cases
Recruitment & Sourcing
- Build candidate-facing job feeds filtered to a city and contract type
- Surface bottleneck occupations to prioritise hard-to-fill openings
- Track which employers are hiring most actively in your region
- Pull apply links and reference codes for fast outreach
Labour-Market Research
- Measure vacancy volume by keyword, location, and contract category over time
- Quantify knelpuntberoep prevalence across Flemish provinces
- Compare full-time vs. part-time and interim vs. permanent supply
- Map education and language requirements by occupation
Relocation & Mobility Services
- Prepare role shortlists for clients moving to Flanders or Brussels
- Match incoming talent to language-appropriate openings
- Benchmark expected qualifications before a candidate relocates
- Filter for roles open to specific experience levels
Competitive Salary Intelligence
- Capture published salary and benefits text per vacancy
- Compare offered packages within an occupation or region
- Track how compensation language shifts across employers
- Feed salary signals into pay-benchmarking dashboards
Data Enrichment & Integration
- Enrich an applicant-tracking system with fresh VDAB openings
- Power a job-aggregation site with structured Flemish vacancies
- Build alerts for new postings matching saved keywords
- Sync deduplicated vacancy data into a BI warehouse
Getting Started
Search by Keyword
The simplest run β one keyword, default settings:
{"searchQueries": ["software engineer"],"maxResults": 50}
Keyword and Location, Newest First
{"searchQueries": ["verpleegkundige"],"location": "Antwerpen","sort": "datum","maxResults": 200}
Filtered by Contract Type
{"searchQueries": ["magazijnier", "logistiek medewerker"],"location": "Gent","contractType": "interim","maxResults": 300,"includeJobDetails": true}
Paste a VDAB Search URL
Dialed in a search on the VDAB website? Paste it directly β any filters baked into the URL are honoured as-is:
{"startUrls": ["https://www.vdab.be/vindeenjob/vacatures?trefwoord=verpleegkundige"],"maxResults": 100}
Full-Featured Example
{"searchQueries": ["data analist", "data engineer"],"location": "Brussel","contractType": "regular","sort": "datum","maxResults": 500,"includeJobDetails": true,"includeRawData": false}
Input Reference
Search
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | string[] | ["software engineer"] | Job titles or keywords to search for, such as "software engineer", "verpleegkundige", or "magazijnier". Each keyword runs a separate search and results are merged and de-duplicated. Up to 50 keywords per run. Leave empty if you only want to use direct VDAB URLs. |
startUrls | URL[] | [] | Paste full VDAB search-result URLs and/or individual vacancy-page URLs. Any filters baked into a search URL are scraped exactly as-is. To keep a location filter from a pasted search URL, also set the location field, since a pasted URL may carry only the place name and not VDAB's internal location code. Up to 100 URLs per run. |
Filters & Limits
| Parameter | Type | Default | Description |
|---|---|---|---|
location | string | "" | A city or municipality in Flanders or Belgium, such as "Antwerpen", "Gent", "Brussel", or "Hasselt". Leave empty to search all locations. |
contractType | select | Any | Filter by employment category: Any, Regular jobs, Service vouchers (dienstencheques), Interim / temp work, or Social economy. |
sort | select | Default | Order in which vacancies are collected: Default, or Newest first. |
maxResults | integer | 100 | Maximum vacancies to collect per search keyword (1β2,000). Use 50 for a quick scan or higher for deep research. Small requests return about as many vacancies as you ask for; larger requests round up to the end of the last full page (about 50), so the final count can slightly overshoot. |
Advanced
| Parameter | Type | Default | Description |
|---|---|---|---|
includeJobDetails | boolean | true | Fetch the full description, requirements, salary, and contact details from each vacancy's detail page. Turn off for faster, lighter scans β the description, requirements, salary, and contact fields will then be empty. |
includeRawData | boolean | false | Attach the raw source payload to each record (as rawListing and rawDetail) for advanced analysis. |
Output
Each vacancy becomes one flat record. Here's a representative result with full details enabled:
{"vacancyId": "62849173","referenceId": "2026-118842","title": "Verpleegkundige","companyName": "AZ Sint-Lucas","supplierName": "","location": "Gent","employmentLocation": "Groenebriel 1, 9000 Gent","contractType": "Vast werk","workRegime": ["Voltijds", "Dagwerk"],"experienceLevel": "Geen ervaring nodig","educationRequirements": "Bachelor verpleegkunde","languageRequirements": "Nederlands (Goed)","salary": "Verloning volgens IFIC-barema, maaltijdcheques, hospitalisatieverzekering","description": "Als verpleegkundige op onze afdeling sta je in voor de dagelijkse zorg...","isBottleneckJob": true,"isClosed": false,"duplicateCount": 2,"firstPublishedAt": "2026-06-09T08:14:00Z","lastModifiedAt": "2026-06-12T10:02:00Z","contactEmail": "","sourceDetailUrl": "https://www.azsintlucas.be/vacatures/verpleegkundige","url": "https://www.vdab.be/vindeenjob/vacatures/62849173","searchQuery": "verpleegkundige","scrapedAt": "2026-06-17T14:30:00Z"}
Core Fields
| Field | Type | Description |
|---|---|---|
vacancyId | string | VDAB vacancy identifier |
title | string | Job title |
companyName | string | Employer organisation name |
supplierName | string | Supplier / intermediary organisation (for agency listings) |
location | string | Vacancy location label |
contractType | string | Contract / employment-circuit label |
salary | string | Salary and benefits text, when available |
isBottleneckJob | boolean | Knelpuntberoep (bottleneck occupation) flag |
url | string | Public VDAB vacancy URL |
Job Details
Populated when includeJobDetails is on.
| Field | Type | Description |
|---|---|---|
description | string | Full vacancy description as plain text |
employmentLocation | string | Detailed work address, when available |
workRegime | string[] | Work schedule (e.g. full-time, day work, shifts) |
experienceLevel | string | Experience requirement label |
educationRequirements | string | Educational credential expectations |
languageRequirements | string | Required languages with proficiency levels |
referenceId | string | Employer / reference code for the vacancy |
sourceDetailUrl | string | Employer's external application URL, when available |
contactEmail | string | Contact email, when published |
Metadata
| Field | Type | Description |
|---|---|---|
isClosed | boolean | Whether the vacancy is closed |
duplicateCount | integer | Count of linked duplicate vacancies |
firstPublishedAt | string | Publication timestamp (ISO 8601) |
lastModifiedAt | string | Last modification timestamp (ISO 8601) |
searchQuery | string | The keyword or URL this record was found under |
scrapedAt | string | When this record was collected (ISO 8601) |
rawListing | object | Raw search payload (only when includeRawData is on) |
rawDetail | object | Raw detail payload (only when includeRawData is on) |
Tips for Best Results
- Filter on
isBottleneckJobto find the hottest roles β bottleneck occupations (knelpuntberoepen) are VDAB's official hard-to-fill list, so atruevalue is a strong demand signal for sourcing and labour-market analysis alike. - Sort by Newest first for fresh leads β set
sortto Newest first when you want the most recently published vacancies at the top, ideal for daily monitoring runs. - Toggle details for speed vs. depth β turn off
includeJobDetailsfor a fast scan of titles, companies, and locations; turn it on for description, salary, education, and language requirements. - Run several keywords together β list synonyms and Dutch/English variants (e.g. "magazijnier" and "logistiek medewerker") in one run; duplicates across keywords are removed automatically.
- Start small, then scale β set
maxResultsto 50 on your first run to confirm the data fits your needs, then raise it toward 2,000 for deep research. - Use a specific municipality β entering a city like "Gent" or "Hasselt" narrows results to that area; leave
locationempty to cover all of Flanders and Brussels. - Watch
duplicateCountfor multi-agency hiring β a high duplicate count often means several agencies are recruiting for the same role, useful when mapping which employers are scaling up.
Pricing
From $1.40 per 1,000 results β undercuts comparable VDAB scrapers while delivering full detail enrichment. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $0.165 | $0.16 | $0.15 | $0.14 |
| 1,000 | $1.65 | $1.60 | $1.50 | $1.40 |
| 10,000 | $16.50 | $16.00 | $15.00 | $14.00 |
| 100,000 | $165.00 | $160.00 | $150.00 | $140.00 |
A "result" is any vacancy row in the output dataset. No compute or time-based charges β you pay per result, plus a small fixed per-run start fee.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Zapier / Make / n8n β Workflow automation
- Google Sheets β Direct spreadsheet export
- Slack / Email β Notifications on new results
- Webhooks β Trigger custom APIs on run completion
- Apify API β Full programmatic access
Legal & Ethical Use
This actor is designed for legitimate recruitment, labour-market research, and relocation use. You are responsible for complying with applicable laws and VDAB's Terms of Service. Do not use extracted data for spam, harassment, or any unlawful purpose, and handle any personal data in line with GDPR and other applicable privacy regulations.