Vinted API: search listings and prices across Europe
Search Vinted listings and prices across Europe with one REST endpoint.
On this page
Vinted doesn't offer a public API for developers. If you want listing data (titles, prices, photos, sellers) for a price tracker, a resale tool or market research, the usual options are scraping Vinted yourself or using an unofficial API.
Packet provides two unofficial REST endpoints for Vinted: one to search listings and one to fetch a single listing. Both return structured JSON, work across Vinted's regional storefronts, and cost 0.8 credits per request. You don't need proxies, cookies or a headless browser.
What you can get
| Endpoint | What it returns | Cost |
|---|---|---|
GET /v1/vinted/search |
Listings matching a query: title, price, total price with fees, photos, view count, seller | 0.8 credits |
GET /v1/vinted/product |
One listing by ID: description, price, service fee, reserved status, photos, seller | 0.8 credits |
Both endpoints accept a region (the storefront: France, Germany, the UK, Italy, Poland and over 20 more) and a language to localize listings in.
Your first request
Create a free account, generate an API key, and search the French storefront for Nike Dunks:
curl "https://api.pckt.sh/v1/vinted/search?query=nike%20dunk®ion=VINTED_REGION_FR&language=VINTED_LANGUAGE_FR&perPage=20" \
-H "Authorization: Bearer YOUR_API_KEY"
The same request from TypeScript or JavaScript:
const params = new URLSearchParams({
query: "nike dunk",
region: "VINTED_REGION_FR",
language: "VINTED_LANGUAGE_FR",
perPage: "20",
});
const res = await fetch(`https://api.pckt.sh/v1/vinted/search?${params}`, {
headers: { Authorization: `Bearer ${process.env.PCKT_API_KEY}` },
});
const { items, pagination } = await res.json();
for (const item of items) {
console.log(item.title, item.price.amount, item.price.currency_code, item.url);
}
Fields you'll use most
Packet returns Vinted's own response structure, so every field Vinted exposes reaches you. The search response contains:
items[]: one entry per listing, withidandurltitleprice(amount,currency_code) andtotal_item_price, which includes Vinted's buyer feesphotos[], with full-size and thumbnail URLsview_countuser(id,login, andbusinessfor professional sellers)
pagination:current_page,total_pages,total_entries
Pass page (and perPage, up to 50) to walk through results. Take the id of any listing and call /v1/vinted/product for its description, service_fee, is_reserved status and full photo set.
What people build with it
- Resale price research. See what a pair, a jacket or a bag actually lists for on Vinted before you buy or sell elsewhere.
- Deal alerts. Poll a search every few minutes and post new listings under a target price to Discord or Telegram.
- Cross-market arbitrage. Compare Vinted asking prices with StockX or GOAT prices for the same item. You use the same API key and credit balance for every marketplace.
- Market analytics. Track how many listings exist for a brand per country, and how prices move over time.
What it costs
Every request costs 0.8 credits. Plans include monthly credits:
- Free: 500 credits a month covers about 625 Vinted requests, enough to build and test.
- Developer: 50,000 credits a month covers about 62,500 requests. That's a search every minute on one storefront (about 43,200 a month) with room to spare.
Credits never expire, and you can top up at any time. See pricing for every plan, or estimate your usage with the calculator.
Limits and good practice
- Rate limits depend on your plan (1 request per second on Free, up to 25 on Scale) and apply across all endpoints.
- Cache what you can. Listing details rarely change minute to minute. Fetch them once, then re-check only
priceandis_reserved. - Respect sellers. Use the data for pricing and research, not for spamming sellers.
FAQ
Does Vinted have an official API?
Not for general developers. Packet's Vinted endpoints are unofficial: we maintain the integration, so when Vinted changes something, we fix the endpoint on our side.
Which countries are supported?
The US, the UK and Vinted's European storefronts, including France, Germany, Spain, Italy, the Netherlands, Belgium, Poland, Portugal, the Nordics and the Baltics. Pass the storefront as region. The full list is in the docs.
Can I get sold prices?
The endpoints return what Vinted exposes for live listings: asking price, total price with fees and reserved status. Vinted doesn't publish completed sales the way StockX does.
Do I need to handle proxies or captchas?
No. Proxies, anti-bot handling and retries run on our side.
Start free with 500 credits a month or read the Vinted API reference.
Packet is independent and not affiliated with, endorsed by or sponsored by Vinted. Vinted is a trademark of its owner, used here only to identify the data source.