# Vinted Scraper: Listings, Prices & Sellers from 26 Countries (`themineworks/vinted-listings-scraper`) Actor

Scrape Vinted listings by search text or catalog link on 26 Vinted country sites: title, brand, size, condition, price, total with buyer protection, favourites, photo, link and seller username, with optional seller rating. Newest first. No login. Pay per listing.

- **URL**: https://apify.com/themineworks/vinted-listings-scraper.md
- **Developed by:** [The Mine Works](https://apify.com/themineworks) (community)
- **Categories:** E-commerce, Lead generation, MCP servers
- **Stats:** 2 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.20 / 1,000 listings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Vinted Scraper: Listings, Prices & Sellers from 26 Countries

[![600 Vinted listings in 14 seconds from 3 country sites, with price, size, condition and seller](https://api.apify.com/v2/key-value-stores/cUXz95yxflDho41nn/records/vinted-listings-scraper-hero.png)](https://console.apify.com/actors/1Hzzv7IE2AgqzlqrD/input?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

From **The Mine Works**, makers of [Threads Scraper](https://apify.com/themineworks/threads-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) and [B2B Leads Finder](https://apify.com/themineworks/b2b-leads-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), with over 140,000 runs across 170+ public actors.

### Why choose this actor?

- **Fast, across Europe and the US.** Two searches on vinted.fr, vinted.de and vinted.co.uk returned **600 listings in 14 seconds** in our test on 1 October 2026, each with title, brand, size, condition, price, the total with Vinted's buyer protection fee, favourites, photo, link and seller. All 26 Vinted country sites work, each in its own currency. No Vinted account, no cookies of yours, no browser.
- **Scheduled runs that bill only new listings.** Turn on "Only listings not returned before" and each run returns only listings the same input has not returned before, and stops reading a search at the first page with nothing new. In our test the repeat run found nothing new, finished in 4 seconds and delivered no listings to pay for.
- **Seller ratings at no extra cost.** Switch on one option and each listing carries the seller's public star rating and number of reviews, for the same price per listing. Empty searches, refused pages and repeats are never charged.

[![Run it on Apify](https://api.apify.com/v2/key-value-stores/cUXz95yxflDho41nn/records/button-run.png)](https://console.apify.com/actors/1Hzzv7IE2AgqzlqrD/input?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Part of The Mine Works E-commerce and marketplaces family:** [Ozon.ru Scraper](https://apify.com/themineworks/ozon-product-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [⭐ Amazon Reviews Scraper](https://apify.com/themineworks/amazon-reviews?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Amazon Product Scraper](https://apify.com/themineworks/amazon-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Carsales.com.au Scraper](https://apify.com/themineworks/carsales-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Etsy Listings Scraper](https://apify.com/themineworks/etsy-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [AliExpress Scraper](https://apify.com/themineworks/aliexpress-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral).

### Try it in one minute

Paste this into the JSON tab of the input page. It returns 10 of the newest Nike Air Force 1 listings on vinted.fr in a few seconds.

```json
{
  "searches": ["nike air force 1"],
  "countries": ["fr"],
  "maxItemsPerSearch": 10
}
```

You can tell the actor what to read in two ways, in any mix: `searches` (search text, typed as you would type it in Vinted's search bar, run on every country you pick in `countries`) and `startUrls` (links to Vinted search, catalog or brand pages from any country site, copied from your browser after setting filters there; each link keeps its own filters and country). Filters with no search text browse the whole catalog with those filters.

Apify's free plan includes $5 of credit every month, which covers about 1,960 listings at this actor's Free plan price, counted for runs of 100 listings with the $0.005 start fee.

#### Copy to your AI assistant

```
themineworks/vinted-listings-scraper on Apify. Scrapes public Vinted listings from search text or Vinted catalog links on any of the 26 Vinted country sites, with no login, and returns one row per listing per country site with item id, title, brand, size, condition (local wording and an English condition_code), price, currency, buyer protection fee, total price, favourites, main photo, link, seller username and, optionally, the seller's star rating and review count. Call ApifyClient("TOKEN").actor("themineworks/vinted-listings-scraper").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: at least one of searches (array of search texts) or startUrls (array of Vinted catalog links); filters alone also work. Optional: countries (default ["fr"]; fr, de, uk, it, es, nl, be, pl, lt, cz, at, lu, pt, se, dk, fi, sk, hu, ro, gr, hr, ie, si, ee, lv, us), maxItemsPerSearch (default 100, max 960), sortBy (default "newest_first"; relevance, price_low_to_high, price_high_to_low), brands, conditions (new_with_tags, new_without_tags, very_good, good, satisfactory), priceMin, priceMax, sizeIds, includeSellerRating (default false), onlyNewItems (default false). Skip rows with _type "info"; the per search run summary is the key-value store record OUTPUT. Full spec: GET https://api.apify.com/v2/acts/themineworks~vinted-listings-scraper/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations?fpr=ymnoit&utm_source=apify-readme&utm_medium=referral
```

### Key features

- **20 fields per listing** in every row of our test, plus size when the listing has one and the seller's rating and review count on request: price and total with buyer protection in the site's currency, condition in the site's language and as an English code, favourites, promoted flag, photo, link, seller username, country site, search and rank.
- **All 26 Vinted country sites**: France, Germany, the UK, Italy, Spain, the Netherlands, Belgium, Poland, Lithuania, Czechia, Austria, Luxembourg, Portugal, Sweden, Denmark, Finland, Slovakia, Hungary, Romania, Greece, Croatia, Ireland, Slovenia, Estonia, Latvia and the United States (vinted.com), with prices in EUR, GBP, PLN, CZK, SEK, DKK, HUF, RON or USD.
- **Up to 960 listings per search, up to 100 searches per run**: Vinted shows 10 pages of 96 for one search. Each search text on each country, and each link, counts as one search; three run at a time.
- **Filters**: brands (by name or Vinted id), five conditions, a price range in each site's currency, size ids, and four sort orders. Any filter you can set on Vinted itself can come in through a pasted link.
- **Only new listings for schedules**: remembers up to 50,000 listings per input in a key-value store in your account, named after the input.
- **Seller ratings on request**: the seller's public star rating (0 to 5) and number of reviews, looked up once per seller per run. In our test 19 sellers were looked up and all 19 answered.

### How to use it

#### Basic: one search on one country

```json
{
  "searches": ["levis 501"],
  "countries": ["de"],
  "maxItemsPerSearch": 100
}
```

#### Several searches on several countries

Every search runs on every country you pick, so 2 searches on 3 countries are 6 searches of up to `maxItemsPerSearch` each. This is the input of our 600 listing test run.

```json
{
  "searches": ["nike air force 1", "levis 501"],
  "countries": ["fr", "de", "uk"],
  "maxItemsPerSearch": 100,
  "sortBy": "newest_first"
}
```

#### New deals in your niche, every hour

For resellers: watch one brand in good condition under a price you set, and get only listings you have not seen. Run it once, save it as a task, then add a schedule in Apify Console (Schedules, for example every hour). A quiet hour reads one page per search and costs the $0.005 start fee.

```json
{
  "searches": ["jeans"],
  "countries": ["de"],
  "brands": ["Levi's"],
  "conditions": ["very_good"],
  "priceMax": 30,
  "maxItemsPerSearch": 20,
  "includeSellerRating": true,
  "onlyNewItems": true
}
```

#### Resale price research across countries

See what a model is listed for second hand in several markets, lowest price first, with the buyer protection fee included in `total_price`.

```json
{
  "searches": ["carhartt detroit jacket"],
  "countries": ["fr", "de", "uk", "pl", "it"],
  "sortBy": "price_low_to_high",
  "maxItemsPerSearch": 200
}
```

#### Paste a link you set up on Vinted

Set sizes, categories, colours or any other filter on Vinted in your browser, then paste the link. Every filter in the link is kept.

```json
{
  "startUrls": [
    "https://www.vinted.fr/catalog?search_text=nike&brand_ids[]=53&status_ids[]=6&order=newest_first",
    "https://www.vinted.co.uk/brand/53-nike"
  ],
  "maxItemsPerSearch": 200
}
```

### Input parameters

| Parameter | Type | Default | What it does |
| --- | --- | --- | --- |
| `searches` | array of strings | none | Search text, one search per line, as you would type it on Vinted. Each search runs on every country in `countries`. Leave empty if you only give links. |
| `startUrls` | array of strings | none | Vinted search, catalog or brand links from any country site. Each link keeps its own filters and country. Seller (member) pages and single item pages are not read. |
| `countries` | array of strings | `["fr"]` | Country sites for the text searches: `fr`, `de`, `uk`, `it`, `es`, `nl`, `be`, `pl`, `lt`, `cz`, `at`, `lu`, `pt`, `se`, `dk`, `fi`, `sk`, `hu`, `ro`, `gr`, `hr`, `ie`, `si`, `ee`, `lv`, `us`. Links always use their own site. |
| `maxItemsPerSearch` | integer | 100 | Listings per search per country, and per link (1 to 960). |
| `sortBy` | string | `newest_first` | `newest_first`, `relevance`, `price_low_to_high` or `price_high_to_low`, for text searches. |
| `brands` | array of strings | none | Brand names as Vinted spells them (Nike, Levi's, Ralph Lauren) or Vinted brand ids (53). Several brands return listings of any of them. A name Vinted does not know exactly is reported in the run summary with Vinted's suggestions. |
| `conditions` | array of strings | none | `new_with_tags`, `new_without_tags`, `very_good`, `good`, `satisfactory`. |
| `priceMin` | number | none | Lowest price, in the currency of each country site. |
| `priceMax` | number | none | Highest price, in the currency of each country site. |
| `sizeIds` | array of strings | none | Vinted size ids, which depend on the category (advanced; easier to set the size on Vinted and paste the link). |
| `includeSellerRating` | boolean | false | Adds the seller's public star rating and number of reviews. About one extra minute per 70 sellers, same price. |
| `onlyNewItems` | boolean | false | Returns only listings this same input has not returned in an earlier run. |

The filters apply to text searches; a pasted link keeps the filters that are in it. If there is nothing to search, the run stops at once with an `info` row that says what to add.

### What data do you get?

One row per listing per country site. Empty fields are dropped rather than sent as `null`.

**The listing**: `item_id` and `item_url`, `title` (as the seller wrote it), `brand`, `size` (as Vinted shows it, such as `40`, `W36` or `W34 | DE 50`; left out when the listing has none), `condition` in the site's language (`Très bon état`, `Sehr gut`, `Very good`) and `condition_code`, the same in English (`new_with_tags`, `new_without_tags`, `very_good`, `good` or `satisfactory`), `favourites` (how many members saved it), `is_promoted` (the seller paid to push it up), `photo_url` and `photos` (the main photo, 800 px).

**The price**: `price` (the asking price), `currency`, `buyer_protection_fee` (Vinted's fee) and `total_price` (what a buyer pays before shipping).

**The seller**: `seller_username`, and with `includeSellerRating` on, `seller_rating` (0 to 5) and `seller_reviews`. A seller with no reviews has `seller_reviews: 0` and no rating.

**Where it came from**: `country`, `domain`, `search` (your search text or link), `search_rank` (the listing's place in its results) and `scraped_at`.

A last dataset row with `_type: "info"` says how many listings were delivered, or why none were; it is never charged. The run's key-value store also holds an `OUTPUT` record with a `status` for every search (`ok`, `no_results`, `no_new_listings`, `brand_not_found`, `duplicate`, `blocked` or `robots_disallowed`), its `stop_reason`, `total_on_vinted` (how many listings Vinted reports for it), how each brand name was matched, how many requests each country site answered, where robots.txt was read from, and what was charged.

#### Stable fields for automations

These fields were present in every row of our test runs on 1 October 2026 (620 listings from 7 searches on vinted.fr, vinted.de and vinted.co.uk):

| Field | What it holds |
| --- | --- |
| `item_id` | Vinted's listing id; with `country`, your key |
| `item_url` | Link to the listing on its country site |
| `title` | Listing title |
| `domain` | Country site, such as vinted.de |
| `condition_code` | Condition in English |
| `price` | Asking price |
| `currency` | The site's currency |
| `buyer_protection_fee` | Vinted's buyer protection fee |
| `total_price` | Price plus the fee |
| `favourites` | Members who saved the listing |
| `photo_url` | Main photo, 800 px |
| `seller_username` | Seller's public username |
| `country` | Country site code |
| `search_rank` | Position in its search |
| `scraped_at` | When the row was read, ISO 8601 |

These names will not change. New fields may be added, never renamed or removed.

#### Output examples

Real rows from our local runs on 1 October 2026, trimmed for length (photo links shortened with `...`; seller usernames masked here, while the actor returns them in full).

A search on vinted.fr (`nike air force 1`, newest first):

```json
{
  "item_id": 10204050885,
  "title": "Air force 1 Nike 40",
  "brand": "Nike",
  "size": "40",
  "condition": "Très bon état",
  "condition_code": "very_good",
  "price": 35,
  "currency": "EUR",
  "buyer_protection_fee": 2.45,
  "total_price": 37.45,
  "favourites": 0,
  "photo_url": "https://images1.vinted.net/t/02_01ccf_yWBTisLGnh2pguWNAryjpme6/f800/4fd9db15.webp?s=...",
  "photos": ["https://images1.vinted.net/t/02_01ccf_yWBTisLGnh2pguWNAryjpme6/f800/4fd9db15.webp?s=..."],
  "item_url": "https://www.vinted.fr/items/10204050885-air-force-1-nike-40",
  "seller_username": "b***0",
  "is_promoted": false,
  "country": "fr",
  "domain": "vinted.fr",
  "search": "nike air force 1",
  "search_rank": 1,
  "scraped_at": "2026-10-01T13:47:34.232Z"
}
```

The same run on vinted.co.uk (`levis 501`), priced in pounds:

```json
{
  "item_id": 10204042033,
  "title": "Levi’s Premium 501 Big E Jeans W36 L34 Dark Blue Button Fly Straight Leg Mens",
  "brand": "Levi's",
  "size": "W36",
  "condition": "Very good",
  "condition_code": "very_good",
  "price": 20,
  "currency": "GBP",
  "buyer_protection_fee": 1.7,
  "total_price": 21.7,
  "item_url": "https://www.vinted.co.uk/items/10204042033-levis-premium-501-big-e-jeans-w36-l34-dark-blue-button-fly-straight-leg-mens",
  "country": "uk",
  "search": "levis 501",
  "search_rank": 1
}
```

A filtered search on vinted.de (brand Levi's, very good condition, up to 30 EUR) with the seller's rating:

```json
{
  "item_id": 10204052436,
  "title": "Jeans Levi's mod. 502 T. 34/32",
  "brand": "Levi's",
  "size": "W34 | DE 50",
  "condition": "Sehr gut",
  "condition_code": "very_good",
  "price": 25,
  "currency": "EUR",
  "buyer_protection_fee": 1.95,
  "total_price": 26.95,
  "item_url": "https://www.vinted.de/items/10204052436-jeans-levis-mod-502-t-3432",
  "seller_username": "d***t",
  "seller_rating": 5,
  "seller_reviews": 16,
  "country": "de",
  "search": "jeans",
  "search_rank": 1
}
```

The same filtered search run again with `onlyNewItems` on, a minute later. Nothing new had been listed, so the dataset holds only the info row and no listing is charged; only the $0.005 start fee applies:

```json
{
  "_type": "info",
  "message": "No listings delivered, so nothing was charged. jeans (de): no_new_listings (reached listings delivered in an earlier run)",
  "scraped_at": "2026-10-01T13:48:35.829Z"
}
```

### Pricing

Pay per event: you pay for each listing delivered to your dataset, plus a flat $0.005 per run whatever memory you choose.

| Event | Free plan | Starter (Bronze) | Scale (Silver) | Business (Gold) and above |
| --- | --- | --- | --- | --- |
| Listing delivered (`item-scraped`), per listing | $0.0025 | $0.002 | $0.0016 | $0.0012 |
| Per 1,000 listings | $2.50 | $2.00 | $1.60 | $1.20 |
| Run start (`run-start`), once per run | $0.005 | $0.005 | $0.005 | $0.005 |

The start fee is our own flat `run-start` event, not Apify's per GB start event, so it stays $0.005 at any memory setting. It is charged once when a run starts, including a scheduled run that finds nothing new and a run whose input has nothing to search. So 1,000 listings cost 1,000 times the per listing price of your plan, plus $0.005. Seller ratings, the filters, the proxy and the run summary are included. These prices have applied since 30 September 2026, and no price change is scheduled.

**Never charged**: searches with no results, pages Vinted refused, listings already delivered earlier in the same run on the same country site, listings delivered in an earlier run when "Only listings not returned before" is on, links the actor cannot read (seller pages, single item pages), and the `info` row. You can also cap a run's spend with Apify's "Max cost per run" setting; once the cap is reached the actor stops and writes its `OUTPUT` summary.

### FAQ

#### What is Vinted?

Vinted is Europe's largest marketplace for second hand clothes, shoes and accessories, where private sellers list items and buyers pay a buyer protection fee on top of the price. It runs 26 country sites, from vinted.fr, vinted.de and vinted.co.uk to vinted.pl, vinted.cz and vinted.com in the United States, each in its own currency.

#### How many listings can I get?

Up to 960 per search, because Vinted shows 10 pages of 96 for one search however many listings match (the run summary showed 960 for `nike air force 1` on vinted.fr and vinted.de in our test). A run can hold up to 100 searches, counting each search text on each country, and each link, as one. For more than 960, split a search by price range, condition or category, or run it on a schedule with "Only listings not returned before".

#### Why do I get the same listing on several country sites?

Vinted shows many listings on more than one country site. Searching several countries returns a row for each site the listing appears on, in that site's currency: in our test, 600 rows from vinted.fr, vinted.de and vinted.co.uk held 441 different listings. Within one country site a listing is returned once per run. Use `item_id` to merge them.

#### Does it give the date a listing was posted?

No. Vinted's search results do not include when a listing was posted, so the actor does not guess one. Sort by newest first to get the most recent listings first, and use "Only listings not returned before" on a schedule to catch new ones as they appear.

#### Do I need a Vinted account, cookies or my own proxy?

No. The actor reads search results the way Vinted's own website loads them for a visitor who is not logged in, with the anonymous cookies Vinted gives every visitor, through Apify's datacenter proxy. Vinted keeps a block list of some datacenter addresses; when a connection lands on one, the actor drops it and tries another. In our 1 October test, 5 connections were refused that way and replaced, and all 12 result pages then answered on the first try.

#### Can I filter by brand, size, condition or category?

Yes. Brands, conditions and a price range have their own inputs, and so do size ids. For sizes, categories, colours and anything else, the simplest way is to set the filters on Vinted in your browser and paste the link into `startUrls`: every filter in the link is kept. A brand name must match Vinted's spelling exactly; the `OUTPUT` summary shows how each name was matched, with Vinted's suggestions when it was not.

#### Why did I get fewer listings than I asked for?

The search has fewer matches, Vinted repeated listings across pages (a listing is returned once), the 960 listing limit was reached, or with "Only listings not returned before" on, the rest had been returned in an earlier run. The `OUTPUT` summary says why each search stopped.

#### Can I get more photos, the description or view counts?

No. Search results carry the main photo only, and opening every listing for its other photos and description would multiply the requests, so the actor does not do it. Vinted shows 0 views to visitors, so view counts are not returned either.

#### Can I get a seller's full wardrobe or profile?

No. Vinted's robots.txt closes seller pages (`/member/...`) to crawlers, and sellers are mostly private people, so the actor keeps to the public username on each listing and, on request, the public star rating and review count from a separate lookup.

#### How long do seller ratings take?

Vinted answers about 40 seller lookups a minute from one address, and the actor stays under that with two connections, so a run with ratings on adds roughly one minute per 70 new sellers. Each seller is looked up once per run. Our filtered test of 20 listings with ratings took 19 seconds.

#### Can I run it on a schedule and get only new listings?

Yes. Turn on "Only listings not returned before", run it once, save it as a task, then in Apify Console go to Schedules, create a schedule (for example every hour) and add the task. The first run returns everything it finds; after that each run returns only listings the same input has not returned before, and stops reading a search as soon as a page has nothing new. The memory, up to 50,000 listings, is kept in a key-value store in your account named after the input. Each scheduled run pays the $0.005 start fee; the schedule itself costs nothing.

#### Can I use it from Claude, ChatGPT or another AI assistant?

Yes. Add it to Claude Code with `claude mcp add --transport http apify "https://mcp.apify.com/?tools=themineworks/vinted-listings-scraper"`, or point any MCP client at `https://mcp.apify.com/?tools=themineworks/vinted-listings-scraper`. Then ask, for example, "find Carhartt jackets in very good condition under 60 euros on Vinted France and Germany, newest first".

#### Is it legal to scrape Vinted?

The actor collects only publicly visible listings, never logs in, reads each country site's robots.txt at the start of every run and checks every address against it, and keeps seller data to the public username and rating. Vinted's robots.txt also says its content may not be used to train AI models; respect that, Vinted's terms and data protection laws such as GDPR and CCPA in how you use the data, because seller usernames are personal data. The actor is an independent tool, not affiliated with, endorsed by or sponsored by Vinted; Vinted is a trademark of its owner.

### Integrations

- **Google Sheets, Excel, CSV, JSON**: export the dataset from the run page, or link a Google Sheet with Apify's Google Sheets integration.
- **Make, Zapier, n8n**: use the Apify app to start a run and pick up the listings when it finishes, for example to post new deals to Slack or Telegram.
- **Webhooks**: get a call to your own endpoint when a run succeeds or fails.
- **API**: start runs and read results with the Apify API or the `apify-client` package for Python and JavaScript.
- **MCP clients**: Claude, ChatGPT, Cursor and other MCP clients can call the actor through Apify's MCP server.

### More from The Mine Works

**E-commerce and marketplaces**

- [Ozon.ru Scraper](https://apify.com/themineworks/ozon-product-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [⭐ Amazon Reviews Scraper](https://apify.com/themineworks/amazon-reviews?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Amazon Product Scraper](https://apify.com/themineworks/amazon-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Carsales.com.au Scraper](https://apify.com/themineworks/carsales-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Etsy Listings Scraper](https://apify.com/themineworks/etsy-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [AliExpress Scraper](https://apify.com/themineworks/aliexpress-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Kleinanzeigen.de Scraper](https://apify.com/themineworks/kleinanzeigen-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [eBay Product Listings Scraper](https://apify.com/themineworks/ebay-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Shopify Store Scraper](https://apify.com/themineworks/shopify-store-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [🛒 TikTok Shop Scraper](https://apify.com/themineworks/tiktok-shop-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Walmart Product & Price Scraper](https://apify.com/themineworks/walmart-product-price-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Social media and video**

- [Threads Scraper](https://apify.com/themineworks/threads-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Reddit Scraper](https://apify.com/themineworks/reddit-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Threads Search Scraper](https://apify.com/themineworks/threads-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Instagram Profile Scraper](https://apify.com/themineworks/instagram-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Leads and business directories**

- [B2B Leads Finder](https://apify.com/themineworks/b2b-leads-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Skip Trace Lookup](https://apify.com/themineworks/skip-trace-lookup?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Maps Email Scraper](https://apify.com/themineworks/maps-leads?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [JustDial Scraper](https://apify.com/themineworks/justdial-business?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Marketing, SEO and reviews**

- [Facebook Ad Library Scraper](https://apify.com/themineworks/meta-ad-library-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Similarweb Scraper](https://apify.com/themineworks/similarweb-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Ads Transparency Scraper](https://apify.com/themineworks/google-ads-transparency?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google News Scraper](https://apify.com/themineworks/google-news?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**LinkedIn**

- [LinkedIn Company Scraper](https://apify.com/themineworks/linkedin-company-details?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Post Scraper](https://apify.com/themineworks/linkedin-post-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Employees Scraper](https://apify.com/themineworks/linkedin-employees?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Profile Scraper](https://apify.com/themineworks/linkedin-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Real estate**

- [Zillow Rentals Scraper](https://apify.com/themineworks/zillow-rental-listings?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Zillow Sold Comps Scraper](https://apify.com/themineworks/zillow-recently-sold?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Housing.com Scraper](https://apify.com/themineworks/housing-com-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [India Real Estate MCP](https://apify.com/themineworks/india-real-estate-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Science, health and government data**

- [CourtListener Scraper](https://apify.com/themineworks/courtlistener-court-records?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [data.gov.in Scraper](https://apify.com/themineworks/india-data-gov-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Socrata Open Data Scraper](https://apify.com/themineworks/socrata-open-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Academic Research MCP](https://apify.com/themineworks/academic-research-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Jobs and hiring**

- [Foundit Monster India Jobs](https://apify.com/themineworks/foundit-jobs-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Hirist Jobs Scraper](https://apify.com/themineworks/hirist-jobs-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [India Jobs MCP](https://apify.com/themineworks/india-jobs-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Naukri Jobs Scraper](https://apify.com/themineworks/naukri-jobs?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Company and business data**

- [Company Domain Finder](https://apify.com/themineworks/company-domain-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GST Taxpayer Lookup](https://apify.com/themineworks/gst-taxpayer-lookup?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [World Bank Trade Scraper](https://apify.com/themineworks/global-trade-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Company KYB Resolver](https://apify.com/themineworks/company-identity-resolver?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Food and local services**

- [NoBroker Scraper](https://apify.com/themineworks/nobroker-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Swiggy Restaurant Scraper](https://apify.com/themineworks/swiggy-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Zomato Scraper](https://apify.com/themineworks/zomato-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Developer and AI tools**

- [Website to Markdown Crawler](https://apify.com/themineworks/rag-crawler?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Skill Finder](https://apify.com/themineworks/github-skill-discovery?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Repo Scraper](https://apify.com/themineworks/github-repo-intelligence?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Trending Scraper](https://apify.com/themineworks/github-trending-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**More tools**

- [Tennis Match & Player Data Scraper](https://apify.com/themineworks/tennis-match-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Hotels Prices Scraper](https://apify.com/themineworks/google-hotels-prices-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

### Support

Found a problem or need a field we do not return? Open an issue on the actor's Issues tab and we will answer there. To ask for a new source, email dmineworks@gmail.com.

*Vinted Scraper turns Vinted searches and catalog links on any of the 26 country sites into rows of listings with prices, conditions and sellers, with no login and no charge for anything it does not deliver.*

# Actor input Schema

## `searches` (type: `array`):

Search text, one search per line, exactly as you would type it in Vinted's search bar (for example "nike air force 1" or "levis 501"). Each search runs on every country chosen below. Leave empty if you only give catalog links.

## `startUrls` (type: `array`):

Optional. Links to Vinted search or catalog pages from any country site, copied from your browser after setting filters there, for example https://www.vinted.fr/catalog?search_text=nike\&brand_ids\[]=53\&status_ids\[]=6\&order=newest_first, https://www.vinted.de/catalog/1231-womens-shoes or https://www.vinted.co.uk/brand/53-nike. Each link keeps its own filters and country. Seller (member) pages and single item pages are not read.

## `countries` (type: `array`):

Vinted country sites to run the searches on. Prices come in each site's currency. Catalog links always use their own site.

## `maxItemsPerSearch` (type: `integer`):

Most listings to return for each search on each country (and for each link). Vinted shows at most 960 listings for one search (10 pages of 96); split a bigger search by price range or category to get more.

## `sortBy` (type: `string`):

Order of the results. Newest first returns the most recently listed items first.

## `brands` (type: `array`):

Optional. Brand names as Vinted spells them (Nike, Levi's, Ralph Lauren) or Vinted brand ids (53). Several brands return listings of any of them. A name with no exact match on Vinted is reported in the run summary with Vinted's suggestions.

## `conditions` (type: `array`):

Optional. Only listings in these conditions.

## `priceMin` (type: `number`):

Optional. In the currency of each country site (EUR on most, GBP on vinted.co.uk, PLN, CZK, SEK, DKK, HUF, RON, USD elsewhere).

## `priceMax` (type: `number`):

Optional. In the currency of each country site.

## `sizeIds` (type: `array`):

Optional, advanced. Vinted size ids, which depend on the category. The easiest way is to set the size on Vinted and paste the link into Vinted catalog links; the id is the number after size_ids\[]= in that link.

## `includeSellerRating` (type: `boolean`):

Adds the seller's public star rating (0 to 5) and number of reviews to each listing. Needs one extra lookup per seller, and Vinted allows about 40 a minute, so a run with this on takes about one extra minute per 70 sellers. Same price per listing.

## `onlyNewItems` (type: `boolean`):

For scheduled runs. Returns only listings this same input has not returned in an earlier run, and stops reading a search at the first page with nothing new. The first run returns everything. The memory is kept in a key-value store in your account named after this input.

## Actor input object example

```json
{
  "searches": [
    "nike air force 1"
  ],
  "countries": [
    "fr"
  ],
  "maxItemsPerSearch": 50,
  "sortBy": "newest_first",
  "includeSellerRating": false,
  "onlyNewItems": false
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searches": [
        "nike air force 1"
    ],
    "countries": [
        "fr"
    ],
    "maxItemsPerSearch": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("themineworks/vinted-listings-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searches": ["nike air force 1"],
    "countries": ["fr"],
    "maxItemsPerSearch": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("themineworks/vinted-listings-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searches": [
    "nike air force 1"
  ],
  "countries": [
    "fr"
  ],
  "maxItemsPerSearch": 50
}' |
apify call themineworks/vinted-listings-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,themineworks/vinted-listings-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/1Hzzv7IE2AgqzlqrD/builds/JIgw2OfccU1L9axkc/openapi.json
