All scrapers

Marketplaces

Vinted Scraper

vinted.co.uk

99.8% Success rate
3s Avg response
DataDome Protection
1,100 calls Measured over

Vinted runs DataDome in front of its listing pages, so a raw request gets a challenge instead of items. This dedicated plugin endpoint takes a query and returns the second-hand listings already parsed: the title, price, brand, size, condition, a photo and a clean item URL. Choose which of Vinted's regional marketplaces to search, sort the results, filter by price and page through as many as you need - no HTML to parse and no DataDome to solve yourself.

What you can extract

  • Item title and a clean listing URL
  • Price and currency
  • Brand and size
  • Condition
  • Item photo

Dedicated endpoints

/marketplace/vinted-search

A resale search on Vinted

Vinted listings for a query: an items array with title, price, brand, size, condition, image and an item url. Pick the marketplace with domain, sort with order, filter with price_from/price_to and page with max_results. EU consumer-to-consumer resale.

How to scrape it

curl -X POST \
  -H "X-ScrapeUnblocker-Key: $SU_API_KEY" \
  "https://api.scrapeunblocker.com/marketplace/vinted-search?query=nike%20air%20max&domain=vinted.co.uk"
import requests

resp = requests.post(
    "https://api.scrapeunblocker.com/marketplace/vinted-search",
    headers={"X-ScrapeUnblocker-Key": SU_API_KEY},
    params={"query": "nike air max", "domain": "vinted.co.uk"},
)
print(resp.text)
import { ScrapeUnblockerClient } from 'scrapeunblocker';

const su = new ScrapeUnblockerClient({ apiKey: process.env.SU_API_KEY });

const items = await su.vintedSearch('nike air max', {
  domain: 'vinted.co.uk',
  maxResults: 96,
});
console.log(items);

Requests are POST and take their parameters in the query string. Browser rendering always happens - there is no flag to enable.

Example response

{
  "query": "nike air max",
  "domain": "de",
  "resultsCollected": 96,
  "items": [
    {
      "id": "4567891234",
      "title": "Nike Air Max 90",
      "url": "https://www.vinted.de/items/4567891234",
      "price": 45.0,
      "currency": "EUR",
      "brand": "Nike",
      "size": "42",
      "condition": "Very good",
      "image": "https://images1.vinted.net/....jpeg"
    }
  ]
}

Read the API docs

Frequently asked questions

Is it legal to scrape Vinted?

Collecting publicly available Vinted data such as item titles, prices and condition is lawful in many jurisdictions, but the rules depend on your country, the data you collect and how you use it. Some of it can be personal data, so follow the privacy rules that apply to you. ScrapeUnblocker returns the public page; what you collect and how you use it is your responsibility.

How do I scrape Vinted without getting blocked?

Vinted is protected by DataDome, so a raw request gets a challenge instead of items. The ScrapeUnblocker plugin renders the page in a real browser, rotates residential and ISP exits and handles challenges, then returns the listings as JSON. In ScrapeUnblocker's benchmark it returned real content on 99.8% of 1,100 calls, about 3s per call.

What Vinted data can I get?

Each listing comes with Vinted's listing id, title, a clean item URL, the price and the marketplace currency, brand, size as the seller set it, a condition label such as New with tags or Very good, and a thumbnail image. Fields a card does not show, such as brand or size, are left out of that item.

Do I need a Vinted API or account?

No. The Vinted plugin returns resale listings as JSON without a Vinted account or API. Send a query with your ScrapeUnblocker key, filter with price_from and price_to, sort with order (relevance, newest_first, price_low_to_high or price_high_to_low) and collect up to 500 listings per search with max_results.

Can I scrape a specific Vinted marketplace?

Yes. Set domain to co.uk (the default), com, de, fr, it, es, nl or pl. Each marketplace prices in its own currency: GBP on co.uk, USD on com, EUR on de, fr, it, es and nl, and PLN on pl. Run the same search across marketplaces to compare resale prices.

How much does it cost to scrape Vinted?

Each Vinted plugin call is one request, and 1 request = 1 credit: EUR 1.00 per 1,000 on pay as you go, down to about EUR 0.55 per 1,000 on the Ultimate plan. A plugin search is one call, and the response already holds the full result set. Blocks, timeouts and errors on ScrapeUnblocker's side are not billed. The free trial includes 500 requests, no card.

Related scrapers

Start scraping this site today

Free tier included. No credit card required to test it.