Vestiaire Collective Search API Documentation Search luxury resale listings on Vestiaire Collective. Filter by brand, category, size, condition, colour, material, price and seller country, list sold items, and sort by price. Every item has the price as a number with currency, the original price and discount percent (null when there is none), brand, model, condition, category, colours, size, photos in full size, likes, the listing date and the seller (id, first name, badge, official store flag). The response also holds facet counts with the ids you need for the category, size, condition, colour and material filters. Every returned item matches your filters. A search reaches about the first 1,250 items of a result set: use pagination.total_entries and narrow the search with filters to go deeper. A page beyond that window gives a 422. The price is the listing price. Vestiaire Collective publishes no separate sold price. FR, DE and ES share the EU listing pool with IT. Cost: 1 credit per request, only for successful requests.
Run this endpoint
Endpoint
Parameters
Start with the required fields, then add optional filters only when your use case needs them.
Runnable path
This endpoint has no required query parameters.
17 optional filters available.
string
Optional
Search text, e.g. prada cleo. Optional when you send filters.
coffee shops
string
Optional
Brand name as Vestiaire Collective spells it (e.g. Prada) or its numeric id. Comma separate several. An unknown name gives a 422.
example
string
Optional
Category ids from the facets block of a search response, e.g. 59 for Handbags. Comma separate several.
example
string
Optional
Size ids from the facets block. Comma separate several.
example
string
Optional
Condition ids from the facets block (1 never worn with tag, 2 never worn, 3 very good, 4 good, 5 fair). Comma separate several.
example
string
Optional
Colour ids from the facets block. Comma separate several.
example
string
Optional
Material ids from the facets block, e.g. 1 for cashmere. Comma separate several.
example
number
Optional
Minimum price in the currency of the country, e.g. 100.
10
number
Optional
Maximum price in the currency of the country, e.g. 500.
10
string
Optional
Two letter country code of the seller, e.g. FR. Comma separate several.
example
boolean
Optional
Send true to list sold items. Defaults to false (available items).
true
string
Optional
relevance, price-asc or price-desc. Defaults to relevance.
relevance
string
Optional
women or men. Selects the size scale of the size filter. Defaults to women.
example
integer
Optional
Page number, starting at 1. Defaults to 1.
1
integer
Optional
Items per page, 1 to 250. Defaults to 48. A search reaches about the first 1,250 items.
10
string
Optional
Market: GB (GBP), US (USD), IT, FR, DE or ES (EUR). FR, DE and ES share the EU listing pool with IT. Defaults to GB.
US
string
Optional
Language of names and labels: en, it, fr, de or es. Defaults to the language of the country.
en-US
Response Schema
Example response fields are illustrative; inspect the JSON before integrating.
Example response fields
Scan these fields before integrating.
data
meta
success
{
"data": {
"items": [
{
"id": 66976019,
"url": "https://www.vestiairecollective.com/women-shoes/ballet-flats/prada/black-suede-prada-ballet-flats-66976019.shtml",
"name": "Ballet flats",
"size": {
"id": 32,
"label": "37 EU"
},
"sold": false,
"brand": {
"id": 60,
"name": "Prada"
},
"likes": 5,
"model": null,
"price": {
"amount": 200,
"currency": "GBP"
},
"stock": false,
"colors": [
{
"id": 14,
"name": "Black"
}
],
"images": [
{
"alt": null,
"url": "https://images.vestiairecollective.com/produit/66976019-1_2.jpg",
"resized_url": "https://images.vestiairecollective.com/images/resized/w=1024,q=75/produit/66976019-1_2.jpg"
}
],
"seller": {
"id": 26863127,
"badge": "Expert",
"first_name": "Maciej",
"is_official_store": false
},
"category": {
"id": 506,
"name": "Ballet flats"
},
"discount": null,
"condition": {
"id": 4,
"name": "Good condition"
},
"listed_at": "2026-05-13T01:51:59Z",
"description": "Elegant Prada ballet flats crafted from soft black suede with a sophisticated pointed toe silhouette, finished with delicate bow detail and subtle metal logo accent for a timeless minimalist look.\n\nSize: EU 37 | IT 36 | US 6\n\nInsole length: 23cm\n\nGood condition, normal signs of wear. Please refer to photos for details.\n\nA timeless and elegant addition to any wardrobe.",
"universe_id": 1,
"editor_picks": {
"hot": false,
"vintage": false,
"we_love": false,
"deal_eligible": false,
"exceptional_pieces": false
},
"seller_country": "PL",
"parent_category": {
"id": 3,
"name": "Shoes"
}
}
],
"facets": {
"fields": {
"category": [
{
"id": "59",
"name": "Handbags",
"count": 46,
"parent_id": 5
},
{
"id": "510",
"name": "Heels",
"count": 21,
"parent_id": 3
}
],
"condition": [
{
"id": "1",
"name": "Never worn, with tag",
"count": 9,
"parent_id": null
},
{
"id": "2",
"name": "Never worn",
"count": 17,
"parent_id": null
}
]
},
"price_range": {
"max": 34595,
"min": 19
}
},
"locale": "en",
"country": "GB",
"pagination": {
"has_more": true,
"per_page": 48,
"total_pages": 21,
"current_page": 1,
"total_entries": 1008,
"reachable_window": 1008
}
},
"meta": {
"billable": true,
"endpoint_family": "search"
},
"success": true
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Validation Error
A query parameter is missing or invalid. This response is not billable.
{
"errors": {
"sort": [
"The sort is one of relevance, price-asc, price-desc."
]
},
"message": "The request validation failed"
}Unknown Brand
The brand name is not a Vestiaire Collective brand. This response is not billable.
{
"meta": {
"billable": false,
"retryable": false,
"endpoint_family": "search"
},
"error": {
"code": "INVALID_REQUEST",
"message": "The brand \"Pradaa\" is not a Vestiaire Collective brand. Send the brand name as the site spells it, or its numeric id."
},
"success": false
}Upstream Unavailable
Vestiaire Collective did not answer. Retry in a few seconds. This response is not billable.
{
"meta": {
"billable": false,
"retryable": true,
"endpoint_family": "search"
},
"error": {
"code": "UPSTREAM_UNAVAILABLE",
"message": "Vestiaire Collective is temporarily unavailable. Please retry."
},
"success": false
}Generate Code with AI
Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.
Try It Live
Test this endpoint in our interactive playground with real data.