The Oscaro Product API returns full product page data from Oscaro shops. Pass a product URL (*-{sku}-p) and receive structured JSON with pricing, brand, reference, images, ratings, and availability.
Piloterr uses browser rendering, waits for .price, then parses JSON-LD @type: Product (fallback: DOM h1 + .price + id from URL).
Use Oscaro Search to discover listings, then Oscaro Product for the full record.
Region is auto-detected from the product URL TLD (oscaro.com, oscaro.es, oscaro.pt).
| Domain |
Currency |
| oscaro.com |
EUR |
| oscaro.es |
EUR |
| oscaro.pt |
EUR |
GET https://api.piloterr.com/v2/oscaro/product?query=https://www.oscaro.com/huile-moteur-motul-102208-15213891-1862-p
GET https://api.piloterr.com/v2/oscaro/product?query=https://www.oscaro.es/filtro-de-aceite-purflux-l343d-13644654-7-p
| Parameter |
Type |
Required |
Description |
query |
string |
yes |
Product page URL (-p suffix) |
return_page_source |
boolean |
no |
Raw HTML as {\"result\": \"...\"} (default: false) |
| Field |
Type |
Description |
product_id |
string |
SKU from JSON-LD (sku) |
title |
string |
Product name |
url |
string |
Canonical product URL |
price |
number | null |
Current price |
currency |
string |
ISO currency |
brand |
string | null |
Brand name |
reference |
string | null |
Manufacturer part number (mpn) |
image_url |
string | null |
Main image |
images |
string[] | null |
Image gallery |
description |
string | null |
Long description (when exposed) |
rating |
number | null |
Average rating |
review_count |
integer | null |
Review count |
in_stock |
boolean | null |
Online availability |
- Oscaro Search to discover listings
- Oscaro Product for full PDP JSON (this endpoint)
| Code |
Meaning |
400 |
Missing or invalid query |
404 |
Unparsable or missing product page |
500 |
Rendering or parsing error |
- Product URLs end with
-p (e.g. 15213891-1862-p).
- Costs 2 credits per call (browser rendering).
- PDP enrichment: brand, reference, gallery, ratings
- Price monitoring: track part prices across Oscaro shops
- Stock checks:
in_stock from JSON-LD availability