Ir para o conteúdo principal
Piloterr
Voltar à biblioteca

API Vinted Item

Fetch a Vinted listing by item URL or numeric ID. Parses the public item page (Next.js payload), returns a normalized snake_case object with photos, attributes, shipping, pricing, and optional seller profile.

Ativo1 crédito = 1 requisiçãoGET/v2/vinted/item

Visão Geral do Endpoint

Documentação detalhada, preços e exemplos de uso.

OverviewLink to Overview

Fetch a single Vinted listing by item URL or numeric ID.

  • Search and Vinted User Info call the internal Vinted API v2 (/api/v2/...) with an auto-managed session.
  • Item loads the public HTML page (/items/{id}). The legacy JSON endpoint /api/v2/items/{id} returns 404.

Piloterr parses the embedded Next.js payload, normalizes all keys to snake_case, and optionally enriches the response with the seller profile via /api/v2/users/{seller_id}.

Costs 1 credit per call.

WorkflowLink to Workflow

  1. Vinted Search to find listings
  2. Item (this endpoint) for the full normalized page payload + seller snapshot
  3. Vinted User Info when you only have a member ID/URL

QuickstartLink to Quickstart

GET https://api.piloterr.com/v2/vinted/item?query=https://www.vinted.com/items/9437210920-purple-prom-dress
GET https://api.piloterr.com/v2/vinted/item?query=9437210920&region=com

ParametersLink to Parameters

Parameter Type Required Description
query string yes Item URL or numeric item ID
region string no Force domain when query is a bare ID (com, https://www.vinted.de, …)

ResponseLink to Response

Dynamic extraction from the Next.js payload: all item-linked Vinted plugins are collected, keys normalized to snake_case, and new sidebar attributes are supported automatically.

{
  "id": 9437210920,
  "title": "Purple prom dress",
  "description": "Long purple prom dress, one strap",
  "url": "https://www.vinted.com/items/9437210920-purple-prom-dress",
  "price": { "amount": "9.0", "currency_code": "USD" },
  "photos": [{ "id": 39947998424, "url": "...", "is_main": true, "full_size_url": "..." }],
  "seller_id": 3163220665,
  "size_title": "S / US 4-6",
  "status": "New without tags",
  "color": "Purple",
  "uploaded_at": "an hour ago",
  "attributes": {
    "size": { "value": "S / US 4-6", "id": 506 },
    "status": { "value": "New without tags", "id": 50 },
    "color": "Purple"
  },
  "favourite_count": 0,
  "catalog_id": 1777,
  "shipping_details": { "is_free_shipping": true, "price": { "amount": "0", "currency_code": "USD" } },
  "pricing_services": {
    "total_amount": { "amount": "10.15", "currency_code": "USD" },
    "services": { "buyer_protection": { "final_price": { "amount": "1.15", "currency_code": "USD" } } }
  },
  "plugins": {
    "breadcrumbs": { "catalog_id": 1777, "breadcrumbs": [{ "title": "Women", "url": "/catalog/1904-women" }] },
    "favourite": { "favourite_count": 0, "is_favourite": false }
  },
  "user": { "id": 3163220665, "login": "gingertastic88", "profile_url": "...", "item_count": 10 }
}

NormalizationLink to Normalization

  • All keys are snake_case (isFreeShippingis_free_shipping, currencyCodecurrency_code).
  • Core RSC item object + every plugin linked to the item ("name", "type", …).
  • Sidebar attributes → attributes.{code}; scalar values also promoted to top-level (sizesize_title, upload_dateuploaded_at; other codes like material keep their name).
  • Each plugin is also stored under plugins.{name}; useful scalars are hoisted to top-level (favourite_count, description, …). Generic keys name, type, section are not hoisted.
  • shipping_details and pricing_services are read next to the core item object.
  • JSON-LD (schema.org/Product) fills missing fields only (title, price, url, photos, …).
  • user is fetched from /api/v2/users/{seller_id} when available; if the user API fails, the item is still returned without user.
Field Description
id / url / title Item identity
description Seller-written description
price.amount / price.currency_code Listing price
photos[] Image gallery
attributes Raw sidebar attributes by code
size_title / status / color / uploaded_at Promoted attribute aliases
shipping_details Shipping options
pricing_services Buyer protection + shipping breakdown
plugins Raw plugin payloads (breadcrumbs, favourite, …)
catalog_id / seller_id Internal Vinted IDs
favourite_count Number of favourites
user Seller profile when the user API succeeds

Search vs ItemLink to Search vs Item

Search (API v2 catalog) Item (HTML page)
photo (main image) photos[] gallery
service_fee / total_item_price pricing_services
user (light snapshot) user (full profile, optional)
Fixed catalog card shape attributes, plugins, dynamic sidebar fields

Error codesLink to Error codes

Code Cause
400 Item ID could not be parsed from query
404 Item not found on any tested Vinted domain
403 Page blocked (anti-bot)

Good to knowLink to Good to know

  • Full item URL is the fastest input: domain is taken from the URL.
  • Bare numeric ID: tries vinted.fr, vinted.com, vinted.de, vinted.es, vinted.it, vinted.pl, vinted.nl, vinted.be, and vinted.co.uk.
  • Pass region with a bare ID to skip the multi-domain lookup.
  • user may be absent if the seller API errors; the item payload is still returned.
  • Public listing data only.

Main use casesLink to Main use cases

  • Enrich Search results with description, attributes, shipping, and pricing breakdown
  • Fetch seller profile alongside item details in one call
  • Resale analytics on individual listings

APIs Relacionadas

Expanda suas capacidades de dados com essas ferramentas complementares.

Pronto para começar?

Sua API de web scraping está a um clique. Comece com +500 créditos, sem infraestrutura para configurar, sem proxies para gerenciar e sem cartão de crédito necessário.

  • +500 créditos
  • Sem cartão de crédito
  • Todos os endpoints incluídos