Vdab.be Scraper
Pricing
Pay per usage
Vdab.be Scraper
Extract job listings, salary data, and employment opportunities from VDAB.be. Scrape Belgian job postings with company details, positions, and requirements. Perfect for job market analysis, recruitment research, and employment trend monitoring.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Shahid Irfan
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
VDAB Vacatures Scraper
Extract comprehensive job vacancy data from VDAB in a structured, repeatable format. Collect listings at scale with support for contract filters, sorting, pagination, and optional deep detail enrichment. This actor is ideal for labor market research, recruitment intelligence, and data-driven job monitoring workflows.
Features
- VDAB vacancy extraction - Collect job listings directly from the VDAB vacatures search experience.
- Flexible filtering - Use keyword, location, and contract filter settings.
- URL-driven scraping - Start from a VDAB search URL and reuse its query parameters.
- Automatic pagination - Continue collecting pages until your target result count is reached.
- Detail enrichment - Optionally include richer fields for each vacancy.
- Clean structured dataset - Export data in JSON, CSV, Excel, or XML.
Use Cases
Recruitment Intelligence
Track active vacancies in specific job categories and regions to support sourcing and planning. Compare demand patterns over time with repeatable snapshots.
Labor Market Monitoring
Build trend datasets for contract types, publication frequency, and vacancy freshness. Use recurring runs to monitor shifts in the market.
Competitive Hiring Analysis
Observe which roles and companies are most active in hiring. Use structured outputs to identify hotspots and talent competition areas.
Job Board Analytics
Create dashboards from VDAB vacancy data for internal reporting or client intelligence. Combine exports with BI tools for long-term analysis.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startUrl | String | No | https://www.vdab.be/vindeenjob/vacatures?arbeidscircuit=8&sort=standaard | Start from a specific VDAB vacatures URL. Query parameters are reused as filters. |
keyword | String | No | software engineer | Search keyword. |
trefwoord | String | No | - | Direct VDAB keyword filter. Overrides keyword when provided. |
location | String | No | Antwerpen | Location filter. |
locatie | String | No | - | Direct VDAB location filter. Overrides location when provided. |
arbeidscircuit | Array of String | No | ["8"] | Contract type code filters. |
sort | String | No | standaard | Sort order: standaard, datum, or relevantie. |
collectDetails | Boolean | No | true | Enrich each listing with additional vacancy details. |
results_wanted | Integer | No | 20 | Maximum number of vacancy records to collect. |
max_pages | Integer | No | 10 | Maximum number of result pages to process. |
page_size | Integer | No | 20 | Number of records requested per page. |
includeRawData | Boolean | No | false | Include raw payload fields (raw_light, raw_detail) for advanced analysis. |
proxyConfiguration | Object | No | Apify Proxy Residential | Proxy settings for stable collection. |
Output Data
Each dataset item can contain the following fields:
| Field | Type | Description |
|---|---|---|
vacancy_id | String | VDAB vacancy id |
reference_id | String | Reference id for the vacancy |
title | String | Job title |
company_name | String | Company name |
supplier_name | String | Supplier or source organization name |
location | String | Vacancy location label |
employment_location | String | Detailed work location when available |
contract_type | String | Contract type label |
first_published_at | String | First publication timestamp |
last_modified_at | String | Last modification timestamp |
is_closed | Boolean | Vacancy closed flag |
is_bottleneck_job | Boolean | Bottleneck job indicator |
duplicate_count | Integer | Number of duplicate linked vacancies |
description_text | String | Vacancy description text |
work_regime | Array | Work schedule information |
experience_level | String | Experience requirement label |
education_requirements | String | Education requirement text |
salary | String | Salary-related text when available |
language_requirements | String | Language requirement details |
contact_email | String | Contact email when available |
source_detail_url | String | Source detail URL when available |
url | String | Public VDAB vacancy URL |
raw_light | Object | Raw listing payload (only when includeRawData=true) |
raw_detail | Object | Raw detail payload (only when includeRawData=true) |
Usage Examples
Basic Run
{"startUrl": "https://www.vdab.be/vindeenjob/vacatures?arbeidscircuit=8&sort=standaard","results_wanted": 20}
Keyword and Location Filtering
{"keyword": "data analyst","location": "Gent","sort": "datum","results_wanted": 50,"max_pages": 10}
Contract-Focused Collection with Detail Enrichment
{"arbeidscircuit": ["8"],"sort": "standaard","collectDetails": true,"results_wanted": 100,"page_size": 25,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Sample Output
{"vacancy_id": "70745651","reference_id": "70745651","title": "Software Engineer","company_name": "Example Company","supplier_name": "Example Supplier","location": "Antwerpen","employment_location": "Antwerpen","contract_type": "Vaste jobs","first_published_at": "2026-03-02T08:40:16.000+01:00","last_modified_at": "2026-03-04T12:11:02.000+01:00","is_closed": false,"is_bottleneck_job": false,"duplicate_count": 0,"description_text": "Je ontwikkelt en onderhoudt schaalbare software-oplossingen...","work_regime": ["Voltijds"],"experience_level": "Enige ervaring","education_requirements": "Bachelor of gelijkwaardig door ervaring","salary": "Competitief loonpakket","language_requirements": "Nederlands, Engels","contact_email": "jobs@example-company.be","source_detail_url": null,"url": "https://www.vdab.be/vindeenjob/vacatures/70745651/software-engineer"}
Tips for Best Results
Start with a Real VDAB Search URL
- Use a working vacancies URL to capture your intended filters.
- Keep query parameters focused to improve relevance.
Keep Initial Runs Small
- Start with
results_wanted: 20for quick validation. - Increase limits after confirming output quality.
Use Proxy for Stable Production Runs
- Residential proxy configuration helps keep long runs reliable.
- Re-run failed collections with the same input for consistency checks.
Integrations
- Google Sheets - Share vacancy data with teams.
- Airtable - Build searchable hiring datasets.
- Looker Studio / BI Tools - Create dashboards from exported data.
- Webhooks - Trigger downstream workflows automatically.
- Zapier / Make - Connect vacancy collection to business automations.
Export Formats
- JSON - API and engineering workflows
- CSV - Spreadsheet analysis
- Excel - Business reporting
- XML - System integrations
Frequently Asked Questions
Can I scrape only one contract type?
Yes. Use arbeidscircuit with one or more contract codes.
Does the actor support pagination automatically?
Yes. It paginates until it reaches results_wanted or max_pages.
Can I run without detail enrichment?
Yes. Set collectDetails to false for faster, listing-only runs.
What if some fields are empty?
Some vacancies may not expose all fields. Empty values are expected for optional data.
Can I capture raw source payloads?
Yes. Set includeRawData to true to include raw_light and raw_detail objects.
Support
For issues, improvements, or feature requests, open a discussion in the Apify actor page or contact support through the Apify Console.
Resources
Legal Notice
This actor is designed for legitimate data collection. You are responsible for complying with applicable laws, platform terms, and internal data governance rules in your jurisdiction.