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
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Vinted Scraper — Listings, Prices & Seller Details
Vinted Scraper is an Apify Actor for public Vinted search terms, catalog URLs, and direct item URLs. It saves one dataset record per validated public listing or item-detail page, with fields such as item ID, title, brand, price, currency, size, condition, color, image URLs, public seller fields, market, and scrape time when Vinted shows them. The output is designed for resale sourcing, price research, and market analysis, and it is usable through Apify MCP as a structured data workflow.
Best fit and connected workflows
This Actor fits workflows that start from public Vinted search keywords or a known public Vinted URL and need flat records for review, exports, or agent processing.
Good routing patterns include:
- Keyword searches for broad public catalog discovery.
- Catalog URLs for a saved public Vinted search page or filter view.
- Item URLs for one listing that needs item-level fields and images.
- Apify MCP workflows where an agent needs public Vinted records in a dataset it can read back.
Practical scenario
Sara is comparing public listings for a used jacket before choosing what to source. She starts with the search term carhartt jacket, sets a small item cap, and runs the Actor in search mode. The returned dataset includes fields such as title, brand, price, size, condition, sellerUsername, itemUrl, and scrapedAt. Sara uses those fields to compare visible listings, then opens the public item URLs and seller links before moving to the next sourcing step.
Input fields
| Field | Type | Description |
|---|---|---|
mode | string | Choose search for public keywords or urls for public catalog and item pages. |
searchQueries | array | Public Vinted search terms, each executed separately. |
startUrls | array | Public Vinted catalog or item URLs. |
market | string | Vinted market used for keyword search URL construction; proxy country applies only when explicitly enabled. |
useResidentialProxy | boolean | Default false: use the tested native browser route without residential traffic charges. Explicit true opts into residential routing, adds proxy usage charges, and is not verified by this release's cloud matrix. |
maxItems | integer | Maximum validated listings saved and billed in the run. |
maxPages | integer | Maximum public catalog pages loaded per search term. |
enrichDetails | boolean | Opens each public item page to add detail fields when Vinted shows them. |
Focused JSON example
{"mode": "search","searchQueries": ["levis 501", "carhartt jacket"],"market": "uk","maxItems": 10,"maxPages": 1,"enrichDetails": true}
Output fields
The Actor writes validated public listing and item-detail records to the default dataset. The OUTPUT record summarizes the terminal outcome, and RUN_SUMMARY provides execution diagnostics and billing counters.
| Field | Type | Description |
|---|---|---|
itemId | string | Public numeric Vinted item identifier. |
itemUrl | string | Canonical public Vinted item URL. |
title | string or null | Public item title shown by Vinted. |
brand | string or null | Public brand label, when shown. |
price | number or null | Displayed item price. |
currency | string or null | Currency inferred from the public listing price. |
buyerProtectionPrice | number or null | Displayed total including Buyer Protection when shown. |
size | string or null | Public item size. |
condition | string or null | Public Vinted condition label. |
color | string or null | Public colour field from the item page. |
uploadedAtText | string or null | Displayed relative upload time. |
sellerUsername | string or null | Public seller profile name when shown. |
sellerUrl | string or null | Public seller profile URL when shown. |
imageUrls | array | Public image URLs displayed on the item page. |
market | string | Vinted market inferred from the hostname. |
sourceType | string | search, catalog-url, or item-url. |
scrapedAt | string | ISO 8601 timestamp for when the record was saved. |
Illustrative output record
{"itemId": "9400175531","itemUrl": "https://www.vinted.co.uk/items/9400175531-levis-501-navy-w-34-l-32","title": "Levis 501","brand": "Levis","price": 24,"currency": "GBP","buyerProtectionPrice": 27.5,"size": "W34 L32","condition": "Very good","color": "Navy","uploadedAtText": "3 days ago","sellerUsername": "sample_seller","sellerUrl": "https://www.vinted.co.uk/member/1234567-sample_seller","imageUrls": ["https://images.vinted.net/sample-1.jpg","https://images.vinted.net/sample-2.jpg"],"market": "uk","sourceType": "item-url","scrapedAt": "2026-07-14T12:34:56.000Z"}
How it works
This Actor uses a browser-based approach for public Vinted pages. In search mode, it builds public catalog search URLs for the selected market and loads search results page by page until it reaches maxPages or maxItems. In urls mode, it processes the provided public catalog or item URLs directly. When enrichDetails is enabled, it opens each public item page to collect image URLs, buyer-protection total, colour, upload time, and public seller details when Vinted displays them. Records are saved to the default dataset, and the Actor also writes terminal outcome information to OUTPUT and RUN_SUMMARY.
Native browser egress is the default and was verified across all eleven supported markets. The market selects the Vinted domain, not the geographic location of the native IP. Set useResidentialProxy: true only when residential routing is specifically needed; this optional route is not part of the release's cloud acceptance matrix and adds proxy usage fees. Neither route guarantees future availability or bypasses authentication.
Pricing
This Actor uses Pay per event plus Apify platform usage.
- Actor start: charged once when the Actor starts, scaled by allocated memory.
- Vinted listing saved: charged for each validated public Vinted listing or item-detail record saved to the default dataset.
The live Pricing tab shows the current pricing details for this Actor. For example, a run that saves ten listings creates ten listing-save events, plus the one-time actor-start event and platform usage.
Use with AI agents (MCP)
This Actor is usable through Apify MCP as a tool for collecting public Vinted listing records from search keywords or URLs, then reading the resulting dataset rows.
Exact Actor identity: khadinakbar/vinted-scraper
Tool description: run this Actor to collect public Vinted search results or item pages into a dataset, then read the dataset rows for structured fields such as item URL, price, size, condition, seller username, and scrape time.
Find public Vinted listings for "carhartt jacket" in the UK market, save up to 10 items, and return the dataset rows with item URL, price, size, condition, seller username, and scraped timestamp.
Output interpretation:
itemUrlpoints to the public Vinted listing page.price,currency,size, andconditionsummarize the visible listing.sellerUsernameandsellerUrlare public seller fields when Vinted shows them.imageUrlscontains the public image links displayed on the item page.scrapedAtshows when the record was saved.
Provenance and scope:
- Records come from public Vinted catalog pages or public item pages.
- The Actor writes one dataset row per saved listing.
- Null values mean the public page did not expose that field during the run.
Pagination and cost guidance:
maxPagescontrols how many public search pages load per keyword.maxItemscaps how many validated records are saved and billed.- Smaller caps reduce the number of listing-save events in a run.
Apify API example
JavaScript with dataset readback:
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 carhartt jacket'],market: 'uk',maxItems: 10,maxPages: 1,enrichDetails: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Best results and outcome guidance
Use search mode when you want broad discovery from keywords, and use urls mode when you already have a public catalog page or a specific item page. Keep maxItems aligned with the number of records you want to review. Enable enrichDetails when you want item-page fields and image URLs, and keep it off when you want a faster card-level pass. For cross-market research, set market to the relevant Vinted locale so keyword searches align with that market's public catalog.
Continue the workflow
- Then use Walmart Product, Price and Review Data Scraper to extend Vinted Scraper — Listings, Prices & Seller Details with a neighboring commerce research source when the brief calls for Walmart data.
- Then use Tokopedia Scraper to extend Vinted Scraper — Listings, Prices & Seller Details with a neighboring commerce research source when the brief calls for Tokopedia data.
Design note
I found that the live dataset contract always includes itemId, itemUrl, market, sourceType, and scrapedAt, which makes each saved row easy to trace back to its public source and run context.
FAQ
When should I use search instead of urls?
Use search when you want the Actor to discover public listings from keywords. Use urls when you already have a public Vinted catalog page or a direct item page that you want scraped as-is.
Which field should I use for a single public listing link?
itemUrl is the canonical public Vinted listing URL. It is the suitable field to carry forward into review workflows or downstream exports.
What does sourceType tell me?
sourceType shows how the Actor found the record: by keyword search, by catalog URL, or by direct item URL.
How can I route results into a spreadsheet or dashboard?
Read the default dataset and map the flat fields such as title, brand, price, currency, size, condition, sellerUsername, and scrapedAt into your table or dashboard columns.
Can I use the same workflow across multiple Vinted markets?
Yes. Set market to the relevant locale for keyword searches, or pass public URLs from the target Vinted hostname in urls mode.
Responsible use
Use this Actor only for public Vinted pages and legitimate analysis workflows. Respect Vinted's terms, applicable law, and data-protection obligations. Keep runs proportionate to your use case, and prefer the smallest input and item cap that satisfies your task.