GET /v1/market-price
Market price estimate (p25 / median / p75) from listings
Market price estimate (p25 / median / p75) from listings
Statistics over comparable asking prices in the platform listings cache (last 90 days): same make/model, year ±1, optional fuel and mileage, deduplicated by VIN, IQR outliers removed. sample_size 0 means no data (p25/median/p75 are null). Requires scope read:pricing.
- Автентифікація: заголовок
Authorization: Bearer rv_live_...(API-ключі та scopes) - Потрібний scope:
read:pricing
openapi.json) і подається англійською, як у самому API.Параметри
| Поле | Де | Тип | Обов’язк. | Опис |
|---|---|---|---|---|
make | query | string | так | Make, e.g. "Toyota" or "BMW" (case-insensitive). |
model | query | string | так | Model, e.g. "Camry" or "X5". |
year | query | integer | так | Model year. Comparable listings are taken within ±1 year. |
market | query | "ua" | "pl" | так | Market whose asking prices are used: ua (Ukraine) or pl (Poland). |
fuel | query | "petrol" | "diesel" | "hybrid" | "phev" | "ev" | "lpg" | "cng" | "hydrogen" | "other" | ні | Restrict comparables to this fuel type. |
mileage_km | query | number | null | ні | Mileage in km; comparables are taken within ±35% (min ±30 000 km). |
currency | query | string | ні | ISO-4217 currency of the result (default EUR). Converted with the current FX rate. |
Відповіді
200
Market price estimate.
application/json · Схема: MarketPriceResponse
| Поле | Тип | Обов’язк. | Опис |
|---|---|---|---|
market | "ua" | "pl" | так | |
currency | string | так | |
p25 | number | null | так | |
median | number | null | так | |
p75 | number | null | так | |
sample_size | integer | так | |
sources | object[] | так | |
sources[].sourceKey | string | ні | |
sources[].count | integer | ні | |
confidence | number | так | |
confidence_level | "none" | "low" | "medium" | "high" | так | |
filters | object | так | |
filters.yearFrom | number | так | |
filters.yearTo | number | так | |
filters.fuel | "petrol" | "diesel" | "hybrid" | "phev" | "ev" | "lpg" | "cng" | "hydrogen" | "other" | null | так | |
filters.mileageKm | array | null | так | |
excluded | object | так | |
excluded.outliers | integer | так | |
excluded.notComparablePrice | integer | так | |
vehicle | object | так | |
vehicle.make | string | так | |
vehicle.model | string | так | |
vehicle.year | integer | так | |
vehicle.fuel | "petrol" | "diesel" | "hybrid" | "phev" | "ev" | "lpg" | "cng" | "hydrogen" | "other" | null | так | |
vehicle.mileage_km | number | null | так | |
model_match | "exact" | "base_model" | так | exact: comparables have the same model; base_model: no exact matches, so the base model (first word, e.g. "CAMRY SE" → "CAMRY") and its trims were used - a rougher estimate. |
matched_model | string | так | Model the sample was actually computed for. |
as_of | string (date-time) | так | When the estimate was computed. |
fx_rate_eur | number | null | так | 1 EUR in the result currency; null if the currency is EUR. |
note | string | так | How to read the numbers (asking prices from listings_cache, not transaction prices). |
basis | "listings_cache" | "catalog_index" | ні | Which sample produced p25/median/p75: listings_cache (market listings seen by Scout) or catalog_index (EU catalog index; the larger sample wins). |
catalog | object | ні | EU catalog comparables (null — catalog unavailable). |
catalog.count | integer | ні | Similar active EU listings in the catalog index. |
catalog.sample_size | integer | ні | |
catalog.median | number | null | ні | |
catalog.p25 | number | null | ні | |
catalog.p75 | number | null | ні | |
catalog.currency | string | ні | |
catalog.basis | "landed_no_delivery" | "listing_price" | ні | ua: median turnkey (price + Ukrainian taxes, delivery NOT included); pl: median listing price. |
catalog.scope | "country" | "eu" | ні |
400
Invalid request parameters or body (code validation_error).
application/problem+json · Схема: Problem
401
Missing, malformed, unknown, revoked or expired API key (code unauthorized).
application/problem+json · Схема: Problem
403
The API key lacks the scope required by this endpoint (code insufficient_scope).
application/problem+json · Схема: Problem
429
Rate limit exceeded for the tenant plan (code rate_limited). Wait Retry-After seconds.
application/problem+json · Схема: Problem
502
FX provider unavailable (non-EUR currency).
application/problem+json · Схема: Problem
Приклад
curl -s "https://api.importos.app/v1/market-price?make=Toyota&model=Camry&year=2018&market=ua" \
-H "Authorization: Bearer $IMPORTOS_API_KEY"