VDAB.be Job Scraper avatar

VDAB.be Job Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
VDAB.be Job Scraper

VDAB.be Job Scraper

Scrape job listings from VDAB.be — Belgium's public employment service. Filter by keyword, location, province, contract type and more. Outputs structured data with full job descriptions, salary details, company info, and deduplication across runs.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Share

VDAB Scraper

VDAB Scraper

Scrape job listings from vdab.be — Belgium's official Flemish public employment service with 80,000+ active vacancies across Flanders, Brussels and Wallonia. Filter by keyword, city, province, contract type and work regime. No API key required.


Why this scraper?

🏛️ Official government source — complete and reliable

VDAB is the official Flemish employment agency. The vacancy database is maintained by government mandate and contains listings not found on any commercial job platform.

📄 Three description formats — ready for AI pipelines

Every job description is delivered in three formats:

FieldFormatUse case
descriptionHTMLWeb applications or ATS
descriptionTextPlain textSearch indexing, keyword analysis
descriptionMarkdownMarkdownRAG pipelines, LLM agents, embeddings

🔄 Repost detection — unique in the market

Companies frequently republish the same vacancy. This scraper detects that automatically and flags reposts — without charging you for them.

Each result includes:

  • isRepost: true/false — is this a republication?
  • originalPublishDate — when did the vacancy first appear?
  • originalUrl — link to the original posting

Use skipReposts: true to automatically skip republications.

🔍 Advanced filters

In addition to keyword and location, filter by province, contract type and work regime to scope your dataset precisely.

⏱️ daysOld filter — fresh vacancies only

Set daysOld: 1 for daily runs that only collect newly published listings.


Input parameters

ParameterTypeDescriptionDefault
keywordstringSearch keyword, e.g. "developer" or "verpleegkundige"
keyword2stringAdditional keyword (optional, batched)
keyword3stringAdditional keyword (optional, batched)
locationstringCity or municipality, e.g. "Gent" or "Antwerpen"
provincestringProvince, e.g. "oost-vlaanderen"
contractTypestringContract type filter
workRegimestringWork schedule, e.g. "voltijds" or "deeltijds"
sortstringSort order: "standaard", "recent", "relevantie""standaard"
maxResultsintegerMaximum number of vacancies to collect100
daysOldintegerSkip vacancies older than N days
skipRepostsbooleanSkip vacancies seen in previous runsfalse
fetchDetailsbooleanFetch full job description and contact infotrue
startUrlsarraySpecific vacancy URLs to scrape

Output schema

{
"id": "73322557",
"url": "https://www.vdab.be/vindeenjob/vacatures/73322557",
"title": "Software Developer",
"company": "Cegeka",
"city": "Hasselt",
"province": "Limburg",
"contractType": "Vaste Job",
"workRegime": "Dagwerk",
"fullTimePartTime": "voltijds",
"experience": "Niet van belang",
"educationLevel": ["Bachelor"],
"publishDate": "2026-03-20",
"modifyDate": "2026-03-20",
"description": "<p>Full job description...</p>",
"descriptionText": "Full job description...",
"descriptionMarkdown": "## Job description\n\n...",
"requirements": "<p>Required qualifications...</p>",
"offer": "<p>What we offer...</p>",
"offerText": "What we offer...",
"salaryMin": null,
"salaryMax": null,
"salaryType": null,
"contactName": "Jan Janssen",
"contactEmail": "jobs@cegeka.com",
"contactPhone": "+32 11 22 33 44",
"applyUrl": "https://www.cegeka.com/jobs/12345",
"companyWebsite": "https://www.cegeka.com",
"logoUrl": "https://cdn.vdab.be/...",
"knelpuntberoep": false,
"isRepost": false,
"originalPublishDate": null,
"originalUrl": null,
"contentHash": "b2c3d4e5"
}

Examples

Developer vacancies in Gent:

{ "keyword": "developer", "location": "Gent" }

Nurses in Oost-Vlaanderen, full-time:

{ "keyword": "verpleegkundige", "province": "oost-vlaanderen", "workRegime": "voltijds" }

Fresh IT vacancies, no reposts:

{ "keyword": "software", "location": "Antwerpen", "daysOld": 7, "skipReposts": true }

Scrape specific vacancy URLs:

{ "startUrls": [{ "url": "https://www.vdab.be/vindeenjob/vacatures/73322557" }] }

Performance

RunTimeResults
100 vacancies (no details)~2 min100 listings
100 vacancies (with details)~4 min100 full listings
500 vacancies (with details)~18 min500 full listings
1,000 vacancies (with details)~35 min1,000 full listings

Pricing

$2.00 per 1,000 results — you only pay for successfully collected vacancies. Failed retries and filtered reposts do not count.


Known limitations

  • Apply URL: VDAB uses a modal-based application system for many listings — applyUrl is null when no external link is available.
  • Salary: Available only when the employer explicitly publishes it — null otherwise.
  • Company address: Not available in the page HTML — this field is always null.

Additional services

Need a custom actor, additional filters, scheduled runs, or integration support? Send an email to info@unfencedgroup.nl — we build on request.


Built by unfenced-group · Issues? Open a ticket or send a message.