Extract one Ovoko listing from a SKU URL. Returns a flat object: price, currency, images, seller, quality, vehicle make, OEM codes, and warranty.
Only SKU listing URLs are accepted. Search, category, catalog, and offer pages return 400.
id and sku are the same lowercase SKU as Search results[].id. Pass a Search result url here.
GET https://api.piloterr.com/v2/ovoko/ad?query=https://ovoko.pl/czesci-samochodowe/mth8663-8w0807437ab-audi-a4-s4-b9-zderzak-przedni
GET https://api.piloterr.com/v2/ovoko/ad?query=https://ovoko.es/parte/ovp227641-6650473120-peugeot-407-filtro-de-combustible
GET https://api.piloterr.com/v2/ovoko/ad?query=https://rrr.lt/en/used-part/dzb40236-peugeot-607-fuel-filter
GET https://api.piloterr.com/v2/ovoko/ad?query=https://rrr.lt/ru/zapchasti/dzb40236-peugeot-607-filtr-topliva
| Parameter |
Type |
Required |
Description |
query |
string |
yes |
Full Ovoko listing URL (SKU slug) |
| Market |
Host |
Search path |
Product path |
| France |
ovoko.fr |
/chercher |
/les-pieces/ |
| Poland |
ovoko.pl |
/szukaj |
/czesci-samochodowe/ |
| Germany |
ovoko.de |
/suche |
/gebrauchte-ersatzteile/ |
| Spain |
ovoko.es |
/buscar |
/parte/ |
| Italy |
ovoko.it |
/ricerca |
/parte/ |
| Finland |
ovoko.fi |
/haku |
/osat/ |
| Romania |
ovoko.ro |
/cautare |
/piesa-uzata/ |
| Lithuania |
rrr.lt |
/paieska |
/autodalis/ |
| United Kingdom |
rrr.lt |
/en/search |
/en/used-part/ |
| Latvia |
rrr.lt |
/lv/meklesana |
/lv/auto-dalas/ |
| Russia |
rrr.lt |
/ru/poisk |
/ru/zapchasti/ |
Also accepted: www.ovoko.fr, ovoko.lt (maps to rrr.lt), ovoko.lv (maps to rrr.lt/lv).
Rejected: about.ovoko.com, ovoko.pt, ovoko.ee, and catalog/offer paths such as /oferta/ or /katalog-czesci/.
A listing is recognized when the last segment matches ^[a-z]{2,6}\d{2,}-[a-z0-9-]+$ (example: mth8663-8w0807437ab-audi-...) or a known product prefix.
| Field |
Type |
Description |
id |
string |
Lowercase listing SKU (mth8663). Same value as Search results[].id |
sku |
string |
Same lowercase SKU as id |
url |
string |
Absolute listing URL |
sold |
boolean |
Whether the part is sold |
rhd |
boolean |
Right-hand drive flag |
price |
number |
Float price. Not { amount, currency } |
currency |
string |
EUR, PLN, or RON |
images |
array |
Image URLs (https://images.ovoko.com/...) |
seller.name |
string |
Seller name |
status |
string |
Listing status (IN_STOCK, active) |
quality |
string |
Condition (USED, used) |
vehicle.make |
string |
Vehicle make (also filled from nested live payloads) |
category.name |
string |
Category label |
discount |
number | null |
Discount when present |
position |
string |
Fitment position (FRONT, front) |
warranty |
integer | null |
Warranty in days |
attributes |
array |
Extra attributes |
part_number |
string | null |
First OEM code. Same meaning as Search part_number |
part_numbers |
array |
Deduplicated OEM codes |
display_labels |
array |
UI labels |
vehicle.parts is never returned.
- Discover listing URLs with Ovoko Search, then call this endpoint with
results[].url.
- Do not send a search URL here.
- App Router pages (no
__NEXT_DATA__) are parsed from self.__next_f.push payloads.
| Code |
When |
400 |
Empty query, unsupported host, or a search URL sent to ad |
404 |
Listing not found or product data missing |
500 |
Fetch and parse both failed |
- Enrich a search hit with price, images, and OEM codes
- Track listing status and sold flag
- Build used-parts catalogs from SKU URLs