Skip to content

Underpriced clean cars (deal score, refreshed daily)

GET
/api/v1/cars/deals
curl --request GET \
--url 'https://api.dokanmazad.com/api/v1/cars/deals?minScore=70&minDiscount=15&make=Mercedes-Benz&minPrice=2500&maxPrice=10000&segment=premium&page=1&limit=20' \
--header 'X-API-Key: <X-API-Key>'
minScore
number

Minimum deal score (0-100)

Example
70
minDiscount
number

Minimum discount vs reference price, in percent

Example
15
make
string

Filter by make (English)

Example
Mercedes-Benz
minPrice
number

Minimum price in 만원 (10,000 KRW units)

Example
2500
maxPrice
number

Maximum price in 만원 (10,000 KRW units)

Example
10000
segment
string

Premium = price >= 2500 만원, economy = below

Example
premium
page
number

Page number (default 1)

Example
1
limit
number

Page size (default 20, max 100)

Example
20

Success

Media typeapplication/json
object
success
required
boolean
data
required
meta
object
page
integer
limit
integer
total
integer
totalPages
integer
data
required
object
carId
required

Car id — join with GET /api/v1/cars/:id for full details

number
dealScore
required

Deal score 0-100, precomputed daily at 09:00 Asia/Seoul

number
discountPct
required

Percent below the reference (median) price of the comparison group

number
sampleN
required

Number of comparable cars the reference price was derived from

number
price
required

Raw price in 만원 — multiply by 10,000 for KRW; no markup applied

number
car
required

Embedded car summary (title, make/model, year, kilometers, first image)

object
Examples
Examplesuccess
{
"success": true,
"data": [
{
"carId": 10482,
"dealScore": 84,
"discountPct": 18.5,
"sampleN": 42,
"price": 2800,
"car": {
"id": 10482,
"makeEn": "BMW",
"modelEn": "3 Series",
"year": 2023
}
}
]
}

Unauthorized — missing or invalid API key

Media typeapplication/json
object
success
required
boolean
error
required
string
statusCode
required
integer
Example
{
"success": false
}

Forbidden — route not in this key’s allowedRoutes

Media typeapplication/json
object
success
required
boolean
error
required
string
statusCode
required
integer
Example
{
"success": false
}

Rate limit exceeded

Media typeapplication/json
object
success
required
boolean
error
required
string
statusCode
required
integer
Example
{
"success": false
}
Retry-After
integer

Seconds to wait before retrying