Marktplaats Scraper — Dutch Classifieds & Marketplace Data
Pricing
Pay per usage
Marktplaats Scraper — Dutch Classifieds & Marketplace Data
Scrape classified listings from Marktplaats.nl and 2dehands.be. Search by keyword, category, location, and price. No login or cookies required.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Studio Amba
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Marktplaats Scraper
Scrape classified listings from Marktplaats.nl — the Netherlands' largest online marketplace with over 10 million active listings. Also supports 2dehands.be (Belgium) which runs on the same backend. Extract prices, seller info, images, locations, and more. No login or cookies required.
Why use this actor?
Marktplaats dominates the Dutch classifieds market with millions of daily visitors. This actor calls the internal Marktplaats API directly, giving you fast, structured data for market research, price monitoring, competitor analysis, and inventory sourcing.
Use cases:
- Price monitoring — track secondhand market prices for any product category
- Market research — analyze listing volumes, pricing trends, and regional supply
- Inventory sourcing — find deals on electronics, furniture, vehicles, and more
- Competitor analysis — monitor what sellers are listing and at what prices
- Cross-border analysis — compare NL (Marktplaats) and BE (2dehands) markets with one actor
Input
| Field | Type | Required | Description |
|---|---|---|---|
query | String | No | Search term (e.g. "laptop", "fiets", "iPhone 15") |
category | String | No | Marktplaats category (e.g. "auto-s", "fietsen-en-brommers") |
location | String | No | Postcode to search around (e.g. "1012" for Amsterdam) |
distanceKm | Integer | No | Search radius in km from the postcode |
minPrice | Number | No | Minimum price filter in EUR |
maxPrice | Number | No | Maximum price filter in EUR |
condition | String | No | Filter: "Nieuw", "Zo goed als nieuw", or "Gebruikt" |
sortBy | String | No | Sort: "relevance", "newest", "cheapest", "most-expensive" |
maxResults | Integer | No | Maximum listings to return (default: 100, max: 5,000) |
platform | String | No | "marktplaats" (default) or "2dehands" for Belgium |
proxyConfiguration | Object | No | Proxy settings for extra reliability |
Output
Each result contains:
| Field | Type | Example |
|---|---|---|
itemId | String | "m2045678901" |
title | String | "iPhone 15 Pro 256GB zwart" |
description | String | Full listing description |
price | Number | 849.00 |
currency | String | "EUR" |
priceType | String | "FIXED", "BIDDING", "SEE_DESCRIPTION" |
condition | String | "Zo goed als nieuw" |
deliveryMethod | String | "Ophalen of Verzenden" |
city | String | "Amsterdam" |
country | String | "Netherlands" |
latitude | Number | 52.3676 |
longitude | Number | 4.9041 |
sellerName | String | "Piet" |
sellerId | Number | 12345678 |
sellerVerified | Boolean | true |
category | String | "Telecommunicatie" |
imageUrls | Array | List of image URLs |
listingDate | String | "2026-04-01T10:30:00Z" |
url | String | Full listing URL |
platform | String | "marktplaats" |
scrapedAt | String | ISO timestamp |
Example output
{"itemId": "m2045678901","title": "iPhone 15 Pro 256GB zwart - als nieuw","description": "Te koop: iPhone 15 Pro 256GB in zwart, nauwelijks gebruikt...","price": 849.00,"currency": "EUR","priceType": "FIXED","condition": "Zo goed als nieuw","deliveryMethod": "Ophalen of Verzenden","city": "Amsterdam","country": "Netherlands","latitude": 52.3676,"longitude": 4.9041,"sellerName": "Piet","sellerId": 12345678,"sellerVerified": true,"category": "Telecommunicatie","imageUrls": ["https://images.marktplaats.com/api/v1/listing-mp-prod/images/ab/ab123456.jpg"],"listingDate": "2026-04-01T10:30:00Z","url": "https://www.marktplaats.nl/v/telecommunicatie/mobiele-telefoons/m2045678901-iphone-15-pro-256gb","platform": "marktplaats","scrapedAt": "2026-04-08T12:00:00.000Z"}
How to use the API
Call the actor via the Apify API:
curl "https://api.apify.com/v2/acts/studio-amba~marktplaats-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \-X POST \-d '{"query": "fiets", "maxResults": 50}' \-H "Content-Type: application/json"
Cost estimate
This actor uses approximately 0.01 compute units per 100 results. It calls a lightweight JSON API with no browser overhead.
Tips
- Use
platform: "2dehands"to scrape Belgian listings from 2dehands.be - Combine
location+distanceKmfor local market analysis - The 35 category options cover everything from cars to electronics to real estate
- Works without proxies but you can add them for extra reliability
Limitations
- The API returns a maximum of 5,000 results per query
- Some fields (condition, delivery method) may be empty if the seller didn't fill them in
- Data is scraped from the internal API and may change without notice
- Respect the website's terms of service and use responsibly