home / skills / openclaw / skills / marktplaats

marktplaats skill

/skills/pvoo/marktplaats

This skill helps you search Marktplaats.nl listings across categories with filters for condition, delivery, price, and details.

npx playbooks add skill openclaw/skills --skill marktplaats

Review the files below or copy the command above to add this skill to your agents.

Files (8)
SKILL.md
2.7 KB
---
name: marktplaats
description: Search Marktplaats.nl classifieds across all categories with filtering support.
homepage: https://www.marktplaats.nl
metadata: {"clawdbot":{"emoji":"🇳🇱","requires":{"bins":["node"]}}}
---

# Marktplaats Skill

Search any Marktplaats category, filter by condition/delivery, list categories, and fetch listing details.

## CLI

```bash
npm install -g {baseDir}

# Search
marktplaats-search "<query>" [options]
  -n, --limit <num>         Number of results (default: 10, max: 100)
  -c, --category <id>       Category ID (top-level)
  --min-price <cents>       Minimum price in euro cents
  --max-price <cents>       Maximum price in euro cents
  --sort <relevance|date|price-asc|price-desc>
  --param key=value         Filter by attribute (repeatable)
  --details [target]        Fetch details for "first" result or URL/ID
  --json                    Output raw JSON

# Categories
marktplaats-categories            # main categories
marktplaats-categories <id>       # sub-categories for a category
  --json                          Output raw JSON
```

## Filters

Common filters work with `--param`:

| Filter | Values |
|--------|--------|
| `condition` | Nieuw, Refurbished, Zo goed als nieuw, Gebruikt, Niet werkend |
| `delivery` | Ophalen, Verzenden |
| `buyitnow` | true (Direct Kopen only) |

English aliases also work: `new`, `used`, `like-new`, `pickup`, `shipping`

## Examples

```bash
# New laptops only
marktplaats-search "laptop" --param condition=Nieuw

# Used cameras with shipping
marktplaats-search "camera" --param condition=Gebruikt --param delivery=Verzenden

# Cars under €15k
marktplaats-search "bmw 330d" --category 96 --max-price 1500000

# Furniture, pickup only
marktplaats-search "eettafel" --param delivery=Ophalen --sort price-asc

# Get details for first result
marktplaats-search "iphone" -n 1 --details first

# List all categories
marktplaats-categories

# BMW sub-categories
marktplaats-categories 96
```

## Programmatic API (ESM)

```js
import { searchListings, fetchCategories, getListingDetails } from '{baseDir}';

// Search with filters
const results = await searchListings({
  query: 'espresso machine',
  params: { condition: 'Nieuw', delivery: 'Verzenden' },
  limit: 10,
});

// Get categories
const categories = await fetchCategories();  // top-level
const bmw = await fetchCategories(96);       // BMW sub-categories

// Fetch listing details
const details = await getListingDetails(results.listings[0].vipUrl);
```

## Notes

- Prices are in **euro cents** (€15,000 = 1500000)
- Results include full URLs to listings
- Use `--json` to see all available facets and filter keys
- Filter hints are shown after search results

Overview

This skill lets you search Marktplaats.nl classifieds across all categories with rich filtering and category listing support. It provides both a CLI and a programmatic API to run queries, fetch category trees, and retrieve full listing details. Results include full listing URLs and prices in euro cents for precise filtering.

How this skill works

The skill queries Marktplaats search endpoints and returns structured listing objects with metadata such as title, price (in euro cents), location, delivery options, and VIP URL. You can apply attribute filters using repeatable key=value params, limit and sort results, and request detailed fetches for a specific listing or the first result. Category endpoints return top-level categories or a category's sublist.

When to use it

  • When you need to find classifieds by keyword with precise filters (condition, delivery, buy-it-now).
  • When automating periodic searches for newly listed items or price drops.
  • When building integrations that need Marktplaats categories and listing metadata.
  • When you want to fetch full listing details or follow a specific result programmatically.
  • When scripting bulk queries from the CLI and exporting raw JSON for processing.

Best practices

  • Use euro cents for price filters (e.g., 1500000 = €15,000) to avoid rounding issues.
  • Start with --json in the CLI to inspect available facets and exact filter keys.
  • Combine --param filters for exact matches (condition, delivery, buyitnow) and use English aliases if preferred.
  • Limit results (default 10, max 100) to keep response size manageable for automated jobs.
  • Fetch details only for needed listings to reduce network overhead.

Example use cases

  • Search for new laptops with shipping only and sort by lowest price.
  • Monitor 'bmw 330d' within the Cars category and filter by max price for alerts.
  • List categories to populate a UI dropdown of Marktplaats top-level and subcategories.
  • Fetch full details for the first 'iphone' search result for scraping or validation.
  • Run CLI batch searches and export raw JSON for downstream ingestion.

FAQ

Are prices returned in euros?

Prices are returned in euro cents. Convert by dividing by 100 for euros.

How do I filter by condition or delivery?

Use --param key=value (repeatable). Supported keys include condition, delivery, and buyitnow. English aliases like new/used or pickup/shipping work.