Skip to content
scrapeatlas.Dashboard

Search the Vinted catalog

Try in Playground

Search listings by keyword, category, brand, condition, colour, size, material and price range, with display labels and pagination.

GET/v1/vinted/searchx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
14
querystringquery

Search text (1–200 characters). At least one of query, catalog_ids or brand_ids is required.

min 1 chars · max 200 chars

Examplenike zoom
catalog_idsstringquery

Comma-separated category IDs; discover IDs with /v1/vinted/categories.

brand_idsstringquery

Comma-separated brand ids (up to 20); look them up with /v1/vinted/brands.

status_idsstringquery

Comma-separated condition ids.

color_idsstringquery

Comma-separated colour ids.

size_idsstringquery

Comma-separated size ids.

material_idsstringquery

Comma-separated material ids.

price_fromstringquery

Minimum price in major units (up to two decimals).

price_tostringquery

Maximum price in major units.

currencystringquery

ISO 4217 code for price_from/price_to (EUR, GBP, PLN, …).

orderenumquery

relevance (default), newest_first, price_low_to_high or price_high_to_low.

one of: relevance, newest_first, price_low_to_high, price_high_to_low

pagestringquery

Page number, 1–1000; default 1.

per_pagestringquery

Records per page, 1–96; default 24.

domainenumquery

Marketplace domain suffix the data was read from (com, fr, de, co.uk, …).

one of: com, at, be, com.au, cz, de, dk, ee, es, fi, fr, gr, hr, hu, ie, it, lt, lu, lv, nl, pl, pt, ro, se, si, sk, co.uk

Examplefr
Response fields
85
requestIdstring

Random operational correlation ID.

Upstream requests (the anonymous token HEAD counts as one), response bytes and elapsed milliseconds.

accounting.upstreamRequestsinteger

Always included.

≥ 0

accounting.responseBytesinteger

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

successboolean

True when usable public data was retrieved.

statusenum

success, partial, failed or challenged. Inspect coverage even for HTTP 200.

one of: success, partial

sourceUrlstring

Public www.vinted.<domain> URL the data belongs to.

absolute HTTPS URL

fetchedAtstring

UTC retrieval timestamp.

Complete means this bounded read had no known omissions; warnings name each omission.

coverage.sourceenum

public_page for the catalog page and the item page, public_api for the JSON web API (profile, wardrobe, feedback, brands).

one of: public_api, public_page

coverage.completeboolean

False when any warning is present.

coverage.warningsstring[]

Machine-readable coverage information for this response.

domainenum

Marketplace domain suffix the data was read from (com, fr, de, co.uk, …).

one of: com, at, be, com.au, cz, de, dk, ee, es, fi, fr, gr, hr, hu, ie, it, lt, lu, lv, nl, pl, pt, ro, se, si, sk, co.uk

querystringnullable

Search text (1–200 characters). At least one of query, catalog_ids or brand_ids is required.

Listing records in source order.

up to 96 items

items.idstring

Item id (string).

items.urlstring

Public item URL on the requested marketplace.

absolute HTTPS URL

items.titlestringnullable

Listing title.

Asking price in major units with ISO currency, as the source states it.

items.price.amountnumbernullable

Always included.

items.price.currencystringnullable

Always included.

Buyer-protection fee the source quotes for this item.

items.serviceFee.amountnumbernullable

Always included.

items.serviceFee.currencystringnullable

Always included.

Asking price plus buyer protection.

items.totalPrice.amountnumbernullable

Always included.

items.totalPrice.currencystringnullable

Always included.

items.brandstringnullable

Brand label.

items.sizestringnullable

Size label.

items.statusstringnullable

Condition label in the marketplace language.

items.favouriteCountintegernullable

Favourites.

items.viewCountintegernullable

Listing view count.

items.promotedbooleannullable

Whether the seller paid to promote the listing.

items.isVisiblebooleannullable

Source visibility flag.

items.isReservedbooleannullable

Reservation flag.

items.isClosedbooleannullable

Closed-listing flag.

items.isHiddenbooleannullable

Hidden-listing flag.

items.isDraftbooleannullable

Draft flag.

items.transactionPermittedbooleannullable

Source transaction-permission flag.

items.isProcessingbooleannullable

Source processing flag.

items.isHeavyBulkybooleannullable

Heavy or bulky item flag.

Original listing-card display labels.

items.displayLines.firststringnullable

First display line.

items.displayLines.secondstringnullable

Second display line.

Main listing photo and thumbnails.

items.photo.idstringnullable

Always included.

items.photo.urlstringnullable

Always included.

items.photo.fullSizeUrlstringnullable

Always included.

items.photo.widthintegernullable

Always included.

items.photo.heightintegernullable

Always included.

items.photo.dominantColorstringnullable

Always included.

items.photo.isMainbooleannullable

Always included.

Always included.

up to 20 items

items.photo.thumbnails.typestringnullable

Always included.

items.photo.thumbnails.urlstringnullable

Always included.

items.photo.thumbnails.widthintegernullable

Always included.

items.photo.thumbnails.heightintegernullable

Always included.

Listing photos and thumbnails.

up to 20 items

items.photos.idstringnullable

Always included.

items.photos.urlstringnullable

Always included.

items.photos.fullSizeUrlstringnullable

Always included.

items.photos.widthintegernullable

Always included.

items.photos.heightintegernullable

Always included.

items.photos.dominantColorstringnullable

Always included.

items.photos.isMainbooleannullable

Always included.

Always included.

up to 20 items

items.photos.thumbnails.typestringnullable

Always included.

items.photos.thumbnails.urlstringnullable

Always included.

items.photos.thumbnails.widthintegernullable

Always included.

items.photos.thumbnails.heightintegernullable

Always included.

Seller ID, profile URL, login, avatar and business flag.

items.user.idstring

Always included.

items.user.loginstringnullable

Always included.

items.user.urlstringnullable

Always included.

items.user.businessbooleannullable

Always included.

Always included.

items.user.photo.idstringnullable

Always included.

items.user.photo.urlstringnullable

Always included.

Source page state.

pagination.pageintegernullable

Current page.

pagination.perPageintegernullable

Records per page.

pagination.totalPagesintegernullable

Total pages the source reports.

pagination.totalEntriesintegernullable

Total records the source reports.

pagination.hasMoreboolean

Whether page + 1 exists.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
9
HTTPfailure.codeMeaning
400invalid_requestMissing, duplicate, unsupported or invalid parameters, more than one selector, a domain that does not match the URL host, or a page beyond what the source accepts.
401unauthorizedMissing or invalid service key.
404not_foundUnknown item or member.
429upstream_rate_limitedVinted rate limited the request; no automatic retry.
502upstream_challengedDataDome/Cloudflare challenge, HTTP 401/403/503, or no anonymous token issued.
502unsupported_page unsafe_redirect response_too_large request_limit upstream_errorBounded retrieval failed, the page belongs to another item, or the response no longer matches the expected structure.
503busyAll worker slots occupied.
504timeoutDeadline exceeded.
200partialCoverage warnings such as pricing_missing, photos_missing or pagination_missing.