Vinted Scraper — Listings & Item Details
Pricing
from $5.00 / 1,000 vinted listing saveds
Vinted Scraper — Listings & Item Details
Scrape public Vinted listings by search or catalog/item URL for resale sourcing, price research, and market analysis. Returns prices, images, size, condition, and seller fields when public. Not for private accounts or buying automation. $0.005 per saved listing plus platform usage.
Pricing
from $5.00 / 1,000 vinted listing saveds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
Vinted Scraper — Listings, Prices & Item Details
Vinted Scraper extracts public secondhand-marketplace listings from Vinted search pages, catalog URLs, and direct item URLs. It returns a clean dataset with prices, brands, sizes, conditions, public image URLs, and public seller fields when Vinted displays them. Use it for resale sourcing, price benchmarking, stock snapshots, and secondhand-fashion market research. It is designed for structured exports and AI-agent workflows, not browser automation of purchases or private accounts.
When to use this actor
Use this actor when you need current public Vinted inventory in a reproducible JSON, CSV, Excel, or API dataset. A reseller can search a brand and compare visible item prices before sourcing. A market analyst can run the same query across supported Vinted markets and retain the scrape timestamp with each result. A price-monitoring workflow can pass a public Vinted catalog URL or a specific listing URL into a scheduled task.
Use a different tool when you need private messages, account management, payment, checkout, or data that is not shown publicly on Vinted pages. This actor neither logs in nor asks for cookies. It only processes public pages and never sends offers or interacts with sellers.
What data can I extract?
Every saved row has a stable, flat shape that works cleanly in spreadsheets and MCP clients. Fields may be null only when Vinted does not expose them on the public page at that moment.
| Field | Description |
|---|---|
itemId, itemUrl, title | Public Vinted item identity and canonical page URL |
brand, size, condition, color | Public product attributes |
price, currency, buyerProtectionPrice | Displayed item price and total including Buyer Protection when shown |
imageUrls | Public item image URLs from the detail page |
sellerUsername, sellerUrl | Public seller fields when displayed |
uploadedAtText, market, scrapedAt | Timing, marketplace, and provenance fields |
The actor also writes OUTPUT and RUN_SUMMARY to the default key-value store. These records explain whether the run completed, was partial, had a valid empty result, rejected bad input, or could not reach Vinted. They are useful for scheduled automations that need an honest machine-readable status.
Pricing
This actor uses Pay per event + usage. It charges $0.005 for each validated listing saved to the dataset, plus a $0.00005 actor-start event. Apify platform usage—such as compute and residential proxy traffic—is passed through separately by Apify.
The maxItems input is a hard billing cap for listing events. A default run with maxItems: 10 can create up to $0.050 in listing-event charges, plus the actor-start event and platform usage. The actor logs this cap before scraping and will not save or charge more listings than the requested limit.
How to scrape Vinted by keyword
Choose search mode, enter one or more search terms, select a market, and keep the default maxItems value for a small proof run. Vinted Scraper opens the public catalog in a consistent browser session with a matching residential proxy country. It then reads public listing cards and, by default, visits each selected item page to enrich attributes and image URLs.
{"mode": "search","searchQueries": ["levis 501", "carhartt jacket"],"market": "uk","maxItems": 20,"maxPages": 2,"enrichDetails": true}
Set enrichDetails to false when you only need faster price and listing-card snapshots. The record still includes public title, brand, size, condition, price, market, and scrape time whenever Vinted provides them.
How to scrape a catalog or item URL
Choose urls mode and pass public Vinted catalog or item URLs in startUrls. A catalog URL can preserve a filter combination you already built in Vinted. A direct /items/… URL returns one enriched item record. Invalid hosts and non-Vinted URLs finish as INVALID_INPUT with a fix suggestion rather than silently failing.
{"mode": "urls","startUrls": ["https://www.vinted.co.uk/catalog?search_text=levis%20501","https://www.vinted.co.uk/items/9400175531-levis-501-navy-w-34-l-32"],"market": "uk","maxItems": 10,"enrichDetails": true}
API examples
JavaScript with the Apify client:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('khadinakbar/vinted-scraper').call({mode: 'search',searchQueries: ['vintage barbour jacket'],market: 'uk',maxItems: 10,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python with the Apify client:
from apify_client import ApifyClientclient = ApifyClient(token='YOUR_APIFY_TOKEN')run = client.actor('khadinakbar/vinted-scraper').call(run_input={'mode': 'search','searchQueries': ['vintage barbour jacket'],'market': 'uk','maxItems': 10,})items = list(client.dataset(run['defaultDatasetId']).iterate_items())print(items)
Reliable, transparent outcomes
The actor uses a real browser because Vinted may reject synthetic catalog API calls. It maintains a single browser and residential proxy session per run so catalog and detail pages see consistent context. Search-card data is saved if optional detail enrichment fails, so useful public records are preserved as PARTIAL instead of discarded. If Vinted successfully processes a valid query but finds no matches, the actor returns VALID_EMPTY. If every requested public route fails before any record is saved, it returns UPSTREAM_FAILED rather than pretending an empty dataset is a success.
Related marketplace tools
For adjacent resale and e-commerce workflows, see the Depop Scraper, Amazon Product Scraper, Wayfair Scraper, and Facebook Marketplace Scraper. These are separate sources with different public data contracts; combine their datasets only after normalizing marketplace and currency fields.
FAQ
Does Vinted Scraper require a Vinted account?
No. It only visits public Vinted catalog and item pages and does not log in, use cookies supplied by you, or access private data.
Why are some fields null?
Vinted controls which attributes appear on each public listing. A null field truthfully means it was absent or unavailable in the public page rendered during that run; the actor never invents data to fill it.
Can I use it for price monitoring?
Yes. Save a Vinted catalog URL as an Apify task and schedule it. Include scrapedAt, itemId, price, and market in your downstream comparison so you can identify new or changed listings without assuming a listing disappeared because of ranking changes.
Is scraping Vinted allowed?
You are responsible for ensuring your use complies with Vinted’s terms, applicable law, and data-protection obligations. Use the actor only for legitimate purposes, do not collect private data, and do not overload Vinted.
How do I report an issue?
Share the Apify run ID, the public input URL or non-sensitive query, and the affected output field. This lets us reproduce a public-page issue without requesting account credentials.