Vinted Seller Scraper — Wardrobe, Reviews & Reputation
Pricing
from $1.50 / 1,000 wardrobe listings
Vinted Seller Scraper — Wardrobe, Reviews & Reputation
Scrape Vinted seller profiles, public wardrobe listings, and buyer reviews by member URL or seller ID. Export reputation, sold counts, prices, brands, sizes, conditions, photos, and review text across 22 Vinted markets. JSON export for Python, Node.js, and MCP — no browser.
Pricing
from $1.50 / 1,000 wardrobe listings
Rating
0.0
(0)
Developer
Andrej Kiva
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Disclaimer: Unofficial tool for publicly accessible Vinted member profiles, wardrobe listings, and buyer reviews. Vinted and related names are trademarks of Vinted Limited. Not affiliated with, sponsored by, or endorsed by Vinted Limited. Public fields only — no private messages, emails, or phone numbers.
Vinted Seller Scraper extracts a member’s public profile, wardrobe listings, and buyer reviews from a member URL or numeric seller ID. Use it as a Vinted API alternative to export reputation, sold counts, prices, brands, sizes, conditions, photos, and review text across 22 Vinted markets — JSON dataset ready for Python, Node.js, MCP, Sheets, and n8n.
This is a seller / wardrobe / reviews Actor, not a catalog keyword search scraper. Paste /member/{id} links (or IDs) and get structured rows you can filter by type.
Best for: reseller due diligence, closet exports, seller lead lists, and reputation checks before you buy.
| Vinted Seller Scraper | Vinted Monitor |
|---|---|
| Vinted Seller Scraper ◄── you are here | Vinted Monitor |
When to use this Actor
- Vinted seller due diligence — reputation score, review breakdown, business flag, sold/bought counts
- Vinted wardrobe scraper — public closet: title, price, brand, size, condition, photos
- Vinted reviews scraper — buyer feedback text, star rating, reviewer username, related item id
- Batch member intel — many profile URLs or seller IDs in one run
- Python / Node.js / MCP pipelines — Apify dataset JSON, no browser
When not to use this Actor
- Catalog / keyword search — use Vinted Monitor for
/catalogURLs, keywords, and new-listing alerts - Sold listing comps — Vinted hides sold items; use eBay Sold Listings Scraper for completed-sale prices
- Private messages, emails, or phone numbers — not collected
- Official Vinted Pro API replacement — public JSON only; residential proxy required
Key features
- Member URL or seller ID —
/member/12345-usernameon FR, DE, UK, PL, ES, IT, and 16 more TLDs - Three row types —
seller,listing,reviewin one dataset (filter in Sheets/API) - 22 Vinted markets — domain taken from each URL;
domainis the fallback for numeric IDs - JSON path, no Playwright — lightweight
curl_cffisession, 128–512 MB RAM - Per-seller caps —
maxItemsPerSellerandmaxReviewsPerSeller - Proxy-ready — Apify Residential recommended (DataDome)
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
startUrls | Array | — | Vinted member / seller profile URLs |
sellerIds | Array | — | Numeric user IDs (resolved on domain) |
domain | String | fr | Default TLD for IDs (fr, de, co.uk, …) |
includeProfile | Boolean | true | One seller row per member |
includeListings | Boolean | true | Public wardrobe listings |
includeReviews | Boolean | true | Public buyer reviews |
maxItemsPerSeller | Integer | 100 | Wardrobe cap (0 skips listings) |
maxReviewsPerSeller | Integer | 50 | Review cap (0 skips reviews) |
listingOrder | String | newest_first | Wardrobe sort |
proxyConfiguration | Object | Residential | Apify Proxy settings |
Input example
{"startUrls": [{ "url": "https://www.vinted.fr/member/12345-example" }],"sellerIds": ["67890"],"domain": "fr","includeProfile": true,"includeListings": true,"includeReviews": true,"maxItemsPerSeller": 50,"maxReviewsPerSeller": 20,"listingOrder": "newest_first","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output
Each dataset item has type: seller, listing, or review.
| Field | Rows | Description |
|---|---|---|
type | all | seller / listing / review |
sellerId | all | Numeric Vinted user ID |
username | seller | Public login |
profileUrl | seller | Member URL |
feedbackReputation | seller | Reputation score |
soldCount / itemCount | seller | Lifetime sold counter and active listings |
isBusiness | seller | Business-account flag |
title / price / currency | listing | Asking price |
brand / size / condition | listing | Card fields |
photoUrls | listing | Image URLs |
rating / feedback | review | Stars and public text |
reviewerUsername | review | Public reviewer login |
scrapedAt | all | UTC timestamp |
Output example — seller
{"type": "seller","sellerId": "12345","username": "example_shop","profileUrl": "https://www.vinted.fr/member/12345-example_shop","domain": "fr","countryCode": "FR","city": "Lyon","itemCount": 86,"soldCount": 412,"feedbackCount": 390,"feedbackReputation": 1,"isBusiness": false,"scrapedAt": "2026-08-28T00:00:00Z"}
Output example — listing
{"type": "listing","itemId": "999","sellerId": "12345","sellerUsername": "example_shop","title": "Levi's 501","url": "https://www.vinted.fr/items/999-levis-501","price": 25.0,"currency": "EUR","brand": "Levi's","size": "W32","condition": "Very good","photoUrls": ["https://images.example/item.jpg"]}
Output example — review
{"type": "review","reviewId": "55","sellerId": "12345","rating": 5,"feedback": "Fast shipping","reviewerUsername": "buyer_one","itemId": "999","isSystem": false}
Use cases
- Check a Vinted seller’s reputation and recent reviews before paying
- Export a wardrobe for brand / size / price research
- Build a list of business sellers in one market
- Feed MCP, n8n, or Google Sheets with structured seller intel
- Compare a closet’s asking prices with eBay sold comps on the same SKU
Integration examples
Replace YOUR_TOKEN with your Apify API token.
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('crawloop/vinted-seller-scraper').call({startUrls: [{ url: 'https://www.vinted.fr/member/12345-example' }],maxItemsPerSeller: 50,maxReviewsPerSeller: 20,proxyConfiguration: {useApifyProxy: true,apifyProxyGroups: ['RESIDENTIAL'],},});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.filter((row) => row.type === 'seller'));
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("crawloop/vinted-seller-scraper").call(run_input={"startUrls": [{"url": "https://www.vinted.fr/member/12345-example"}],"maxItemsPerSeller": 50,"maxReviewsPerSeller": 20,"proxyConfiguration": {"useApifyProxy": True,"apifyProxyGroups": ["RESIDENTIAL"],},})items = list(client.dataset(run["defaultDatasetId"]).iterate_items())print(len(items), [row for row in items if row.get("type") == "seller"])
cURL
curl "https://api.apify.com/v2/acts/crawloop~vinted-seller-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"startUrls": [{"url": "https://www.vinted.fr/member/12345-example"}],"maxItemsPerSeller": 50,"maxReviewsPerSeller": 20,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}'
MCP and AI assistants
Use this Actor from AI tools via Apify MCP. Connect your Apify account, then call crawloop/vinted-seller-scraper.
Example prompts:
- "Run Vinted Seller Scraper for this member URL and return the seller row plus the 20 newest wardrobe listings as JSON"
- "Scrape Vinted seller reviews for seller ID 12345 on the French market and summarize the last 15 ratings"
- "Chain Vinted Monitor then Vinted Seller Scraper: watch a catalog search, then scrape wardrobe and reviews for the sellers that appear"
Suite next step
To watch new catalog listings (and Discord/Telegram alerts) instead of one closet, run Vinted Monitor. After a wardrobe export, compare asking prices with eBay Sold Listings Scraper.
FAQ
Is this a generic Vinted scraper?
No. Catalog/search Actors such as Vinted Monitor take keywords or /catalog URLs. This Actor is a Vinted seller scraper: member URL or ID → profile, wardrobe, reviews.
Do I need a Vinted login?
No. It reads public member JSON. Private closets and messages are not available.
Do I need proxies?
Yes, residential. Datacenter IPs are usually blocked by DataDome after one or two requests. Default input uses Apify Residential; geo follows domain when you do not set a proxy country.
Can I scrape Vinted search results?
Not with this Actor. Pass member URLs or seller IDs only. For catalog search and new-listing alerts, use Vinted Monitor.
Why are there three row types?
So you can filter the dataset: profiles (type=seller), closet (type=listing), feedback (type=review) without mixing columns in one object.
Are sold items included?
Vinted does not expose sold listings on the public wardrobe. soldCount on the seller row is the lifetime counter from the profile, not a sold-item feed.
Which markets are supported?
fr, de, at, be, nl, es, it, pt, pl, cz, sk, hu, ro, lt, lu, se, dk, fi, ie, gr, co.uk, com. The domain is taken from each member URL; domain is only the fallback for numeric IDs.
Does this collect personal contact data?
No. Emails, phones, real names, birthdays, and private messages are not written to the dataset.
Can I call it from Python, Node.js, or MCP?
Yes. Use the Apify client examples above, or Apify MCP with crawloop/vinted-seller-scraper.
Related Actors
| Actor | Use for |
|---|---|
| Vinted Seller Scraper ◄── you are here | Seller profile, wardrobe, reviews |
| Vinted Monitor | Catalog scrape + new-listing alerts |
| eBay Sold Listings Scraper | Completed-sale comps |
| eBay Active Listings Scraper | Live eBay ask prices |
| Kleinanzeigen Scraper | German classified ads |
| Marktplaats Scraper | Dutch classified ads |