Zorgkaartnederland Healthcare Provider Review Scraper
Pricing
from $0.80 / 1,000 record scrapeds
Zorgkaartnederland Healthcare Provider Review Scraper
Extracts the Netherlands' national care-quality directory: care organisations, named care professionals, and patient ratings with per-dimension subscores, free-text reviews, and provider replies. Includes BIG registration and AGB codes where published. Covers the full published sitemap corpus.
Pricing
from $0.80 / 1,000 record scrapeds
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
ZorgkaartNederland Healthcare Provider & Review Scraper
Extracts the Netherlands' national care-quality directory from ZorgkaartNederland — care organisations, named care professionals, and the patient ratings behind their scores. Returns three joined record types: organisations, professionals, and individual ratings with per-dimension subscores, free-text review bodies, and the provider's own reply.
Features
- Covers ZorgkaartNederland's full published directory by default — care organisations, named care professionals, and patient ratings, no category or region filter required to get started.
- Returns the review corpus, not just provider listings — individual patient ratings with per-dimension subscores (appointments, treatment effect, staff interaction, information, listening, accommodation), free-text review body, treatment context, and the provider's own reply where published.
- Emits all three record types the site models separately — organisation, professional, and rating — each carrying an
entity_idso they join, rather than flattening professionals into their practice. - Captures Dutch BIG registration numbers and AGB care-provider codes where published — the national identifiers that let you join this to other Dutch healthcare and insurer datasets.
- Every Dutch-language field (
care_type,professional_role) ships with an English translation alongside it (care_type_en,professional_role_en), so the dataset is usable without a Dutch speaker on staff. - Optional
recordTypesfilter to scope a run to just organisations, just professionals, or just ratings.
Who Uses This Data?
- Health insurers (Zilveren Kruis, VGZ, CZ and peers) — benchmarking provider quality and patient sentiment for contracting and network decisions.
- Hospital and care-group marketing teams — tracking their own review position and per-dimension scores against competitors.
- Care-comparison and patient-routing platforms — building or refreshing a provider directory backed by real patient ratings.
- B2B vendors selling into Dutch practices — using the directory as a complete, contactable list of care organisations by care type and location.
- Researchers and market analysts — studying patient-reported quality across the Dutch healthcare system at scale.
How It Works
- Leave
recordTypesempty (or setmaxItems) to walk ZorgkaartNederland's full published directory — care organisations, named care professionals, and patient ratings. - Set
recordTypesto["organisation"],["professional"],["rating"], or any combination to scope a run to just the record types you want. - Set
maxItemsto cap the total number of records returned across all selected types. Leave it at0for a full crawl. - Records land in your dataset as they're found. Stop the run early and you keep everything collected so far.
Input
{"recordTypes": ["organisation", "professional", "rating"],"maxItems": 500}
| Field | Type | Default | Description |
|---|---|---|---|
recordTypes | array of string | ["organisation", "professional", "rating"] | Which record types to include: organisation, professional, rating. Leave empty for all three. |
maxItems | integer | 10 | Maximum number of records to save across all selected record types. Set to 0 for a full crawl. |
Output Fields
Organisation rows (record_type: "organisation")
{"record_type": "organisation","url": "https://www.zorgkaartnederland.nl/zorginstelling/tandartsenpraktijk-tandartspraktijk-dentoart-huizen-3042722","entity_id": "3042722","name": "Tandartspraktijk DentoArt","care_type": "tandartsenpraktijk","care_type_en": "dental practice","specialisms": [],"street": "Golfstroom 16","postal_code": "1271 CP","city": "Huizen","province": "Noord-Holland","latitude": 52.3091952,"longitude": 5.2481257,"phone": "035-5262175","website": "http://www.dentoart.nl","score_average": 9.8,"score_count": 4,"agb_code": null,"big_registration": null,"accepts_new_patients": null,"insurers_contracted": [],"opening_hours": {}}
| Field | Type | Description |
|---|---|---|
record_type | string | Always "organisation" on this row shape. |
url | string | Canonical ZorgkaartNederland URL for the organisation. |
entity_id | string | Numeric id, unique per organisation — the join key for related professional/rating rows. |
name | string | Organisation display name. |
care_type / care_type_en | string | Dutch care-type code and its English translation (e.g. tandartsenpraktijk / dental practice). |
specialisms | array | Specialisms as published, where listed. |
street / postal_code / city | string | Address components. |
province | string | Derived from postal_code (Dutch province). |
latitude / longitude | number | Map coordinates, where published. |
phone / website | string | Contact details, where published. |
score_average | number | Composite average patient score. |
score_count | integer | Number of ratings behind score_average. |
agb_code / big_registration | string | Dutch national provider identifiers, where published. |
accepts_new_patients | boolean | Whether the organisation is accepting new patients, where published. |
insurers_contracted | array | Contracted health insurers, where published. |
opening_hours | object | Opening hours by day, where published. |
Professional rows (record_type: "professional")
{"record_type": "professional","url": "https://www.zorgkaartnederland.nl/zorgverlener/tandarts-abdullah-a-350090","entity_id": "350090","name": "Tandarts Abdullah, A.","professional_role": "tandarts","professional_role_en": "dentist","specialisms": [],"organisation_name": "Dental Clinics Krommenie, Krommenie","score_average": null,"score_count": null,"agb_code": null,"big_registration": null}
| Field | Type | Description |
|---|---|---|
record_type | string | Always "professional" on this row shape. |
url | string | Canonical ZorgkaartNederland URL for the professional. |
entity_id | string | Numeric id, unique per professional. |
name | string | Professional display name. |
professional_role / professional_role_en | string | Dutch role code and its English translation (e.g. tandarts / dentist). |
specialisms | array | Specialisms as published, where listed. |
organisation_name | string | The practice/organisation the professional works at, where published. |
score_average / score_count | number/integer | Composite score and rating count, where the professional has ratings. |
agb_code / big_registration | string | Dutch national provider identifiers, where published. |
Rating rows (record_type: "rating")
{"record_type": "rating","url": "https://www.zorgkaartnederland.nl/zorginstelling/tandartsenpraktijk-tandartspraktijk-dentoart-huizen-3042722/waardering/na-jarenlang-bij-een-andere-73eb679a95bb33759c96020b401da237","entity_id": "3042722","rating_id": "73eb679a95bb33759c96020b401da237","rating_score": 9.3,"rating_title": "Waardering van Tandartspraktijk DentoArt - Huizen op 4 september 2024","rating_text": "Na jarenlang bij een andere tandarts geholpen te zijn is Dentoart een verademing...","rating_date": "2024-09-04","rating_author_role": "editorial","rating_treatment": "Gebitsaandoeningen","provider_response": null,"subscores": {"appointments": 9,"treatment_effect": 10,"staff_interaction": 10,"information": 9,"listening": 9,"accommodation": 8}}
| Field | Type | Description |
|---|---|---|
record_type | string | Always "rating" on this row shape. |
url | string | Canonical ZorgkaartNederland URL for this individual rating. |
entity_id | string | Numeric id of the organisation or professional this rating belongs to — the join key. |
rating_id | string | Unique id for this individual rating. |
rating_score | number | Overall score given in this rating. |
rating_title | string | Rating headline as shown on the page. |
rating_text | string | The reviewer's free-text review body. |
rating_date | string | Publication date (ISO YYYY-MM-DD where parseable). |
rating_author_role | string | patient, family member, editorial, or the raw author label where none of those match. |
rating_treatment | string | Treatment or condition context, where published. |
provider_response | string | The provider's own reply to the rating, where published. |
subscores | object | Per-dimension scores (0-10): appointments, treatment_effect, staff_interaction, information, listening, accommodation. |
Every record also carries a scraped_at timestamp.
Resuming a large crawl
Every run emits a resumeCursor in its Output. If a large crawl stops before it finishes — because it hit maxItems, your spend cap (maxTotalChargeUsd), or was aborted — start a new run with the same input plus that resumeCursor to continue from where it left off. The crawl resumes from the queued work the previous run didn't reach.
- You are not re-charged for records the earlier run already delivered.
- Resume within your account's run-retention window — on the free tier, roughly your 10 most recent runs. Once the source run is pruned, its
resumeCursoris no longer valid. resumeCursoris opaque — supply it unmodified.
FAQ
How do I scrape ZorgkaartNederland data?
Set maxItems (and optionally recordTypes) and run. The scraper walks ZorgkaartNederland's full published directory by default — no category, care type, or region filter required to get started.
What data can I get?
Care organisation listings, named care professional profiles, and individual patient ratings with per-dimension subscores, free-text review bodies, and provider replies — all three record types land in the same dataset, joined by entity_id.
Is this scoped to one care type or region?
No. The scraper covers every care type and region ZorgkaartNederland publishes — dental practices, GP practices, hospitals, nursing homes, physiotherapy practices, and more — with no filter required.
Do I need an account or API key?
No. This works from pages that are publicly visible on ZorgkaartNederland — no login required.
Why are some fields empty on a given record?
Not every provider or rating publishes every field — BIG registration, AGB codes, opening hours, and insurer lists are only shown where the source itself publishes them. The scraper never fabricates a value for a field the source doesn't show.
Need More Features?
Need a different field, a filtered subset, or another data point from ZorgkaartNederland? File an issue or get in touch.
Why Use This Scraper?
- The review corpus, not just the directory — per-dimension subscores, free-text reviews, and provider replies, not just provider contact details.
- Three record types, joined — organisation, professional, and rating rows all carry
entity_id, so you're not reconciling separate exports. - National identifiers included — BIG registration and AGB codes, where published, for joining against other Dutch healthcare datasets.
- English translations included — Dutch care types and professional roles ship with an English label alongside the original.