AutoSignal public API v1.0.0
Czech car-market deals, prices, valuations and the free registry vehicle check.
openapi.jsonllms.txtMCP serverMethodologyTerms
AutoSignal watches the Czech (and SK / PL / HU / RO) car market: it aggregates adverts from the major marketplaces and dealer sites, groups them into segments of comparable cars (brand, model, fuel, country, year band, mileage band), computes each segment's median price and flags cars priced 12 %+ below it (5 % for new cars). It also runs a free check of any VIN against the official Czech vehicle registry.
This is the public, read-only slice of the API — the same data the website and apps show, no key needed (service health: GET /api/health). Everything here is also available as tools on the MCP server at https://api.autosignal.eu/mcp (operations carry x-mcp-tool with the tool name); see https://autosignal.eu/cs/mcp.
Rate limit: 100 requests per minute per IP; a 429 says how long to wait in retry-after. Responses are cached for 2 minutes server-side, so polling faster returns the same data. (The vehicle check also allows 10 *live* registry lookups per IP per day; VINs in the monthly snapshot are free.)
Conventions: all prices are gross CZK unless a currency field says otherwise; percentages are plain numbers (12.5 = 12.5 %); dates are ISO 8601; list parameters are comma-separated; ids are UUIDs. Figures are statistical (vs. segment median) and informational — not an expert appraisal. Methodology: https://autosignal.eu/cs/metodika. Terms: https://autosignal.eu/cs/terms.
DealsCars priced below their segment median, and the whole scored market.
GET /api/deals MCP tool search_deals
Search below-market deals (or the whole market)
Paginated feed of cars priced 12 %+ below the median of comparable cars (same brand, model, fuel, country, year band, mileage band), one card per car, best deal first by default. mode=all returns every scored listing instead, each with its % above/below median. Pagination: request page=1, then page+1 while hasMore is true (total is the number of cards; pageSize max 100). Cached for 2 minutes.
https://api.autosignal.eu/api/deals
| Parameter | In | Type | Description |
|---|---|---|---|
brands | query | string | Brand names, comma-separated (canonical spelling, e.g. Škoda, Mercedes-Benz). |
models | query | string | Model names, comma-separated; matched against the catalogue name or as a prefix of the raw model. |
fuels | query | string | Fuels, comma-separated: petrol, diesel, hybrid, electric, lpg, cng, other. |
vehicleTypes | query | string | used, new and/or demo, comma-separated. Default: all. |
bodyTypes | query | string | Body types, comma-separated: kombi, sedan, hatchback, suv, mpv, coupe, cabrio, pickup, van. |
priceMin | query | integer | Lowest asking price in CZK. e.g. 200000 |
priceMax | query | integer | Highest asking price in CZK. e.g. 500000 |
yearMin | query | integer | Oldest model year. e.g. 2018 |
yearMax | query | integer | Newest model year. e.g. 2022 |
maxMileage | query | integer | Highest odometer reading in km. e.g. 150000 |
minDiscount | query | number | Only cars at least this many % below their segment median. e.g. 20 |
priceDropped | query | string (true) | `true` keeps only listings whose price was recently cut. |
firstOwner | query | string (true) | `true` keeps only registry-verified one-owner cars. |
czOrigin | query | string (true) | `true` keeps only cars first registered in the Czech Republic (never imported). |
powerMin | query | integer | Lowest engine power in kW. e.g. 110 |
transmission | query | string (manual, automatic) | manual or automatic. |
damaged | query | string (true) | `true` includes damaged / crashed cars, which are excluded by default. |
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
mode | query | string (all) | `all` switches from published deals to the whole market: every scored listing with its % above/below median (the webapp's "Celý trh"). |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
source | query | string | Restrict to source slugs, comma-separated (e.g. sauto, tipcars, aaa-auto). |
sortBy | query | string (deal_score, price, price_desc, date, listed, priceDropDate) | Sort order. `deal_score` (default) = biggest discount first; `date` = newest deal; `listed` = newest advert; `priceDropDate` = latest price cut. |
includeMarket | query | string (true) | `true` appends rated non-deal listings after the deals so a narrow filter never dead-ends; `dealTotal` / `marketTotal` split the count. |
page | query | integer | Page number, 1-based. |
pageSize | query | integer | Cards per page. Max 100. |
Responses
200 A page of deal cards.
{
"data": [
{
"id": "228f2bd8-eed3-4f91-9bbf-bf038ce751f6",
"listingId": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"marketStatId": "431279b6-2f4c-4ff3-82ce-e9f73ae813fc",
"dealScore": 0.66878456,
"priceDiffPct": 66.878456,
"flaggedAt": "2026-09-12 08:15:09.348921+00",
"isPublished": true,
"isMarketListing": false,
"listing": {
"id": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"source": "tipcars",
"sourceId": "15780215",
"url": "https://www.tipcars.com/suzuki-vitara/suv/nafta/suzuki-vitara-1-9-ddis-1-majitel-4x4-servisk-15780215.html",
"title": "Suzuki Vitara 1,9 DDiS 1.majitel,4x4,servisk",
"brand": "Suzuki",
"model": "Vitara",
"year": 2008,
"mileageKm": 94448,
"priceCzk": 119900,
"currency": "CZK",
"fuel": "other",
"transmission": null,
"description": "",
"images": [
"https://img.tipcars.com/fotky_zdrojove/15780215_1/1748341826/E/suzuki-vitara-1-9-ddis-1-majitel-4x4-servisk.jpg"
],
"location": "",
"country": "CZ",
"vin": "JSAJTA44V00252629",
"sellerType": "dealer",
"sellerName": "Tomáš Lajza-AUTO LAJZA • Vysoké Mýto",
"isVatDeductible": null,
"engineCapacity": null,
"powerKw": null,
"ownersCount": 0,
"ownerType": null,
"firstRegistration": null,
"firstRegistrationCz": null,
"registryData": {
"rsvStatus": 3,
"rsvCheckedAt": "2026-10-05T21:35:17.254Z",
"vinCheckedAt": "2026-09-07T22:53:51.879Z",
"notInRegistry": true,
"vinBackfillAt": "2026-09-07T16:01:48.847Z"
},
"condition": null,
"color": null,
"drivetrain": null,
"bodyType": "suv",
"deduplicationKey": "vin:JSAJTA44V00252629",
"canonicalModel": "Vitara",
"createdAt": "2026-09-07 02:59:24.256774+00",
"updatedAt": "2026-10-09 17:15:27.618+00",
"isActive": true,
"vehicleType": "used",
"isAuction": false
},
"marketStat": {
"id": "431279b6-2f4c-4ff3-82ce-e9f73ae813fc",
"brand": "Suzuki",
"model": "Vitara",
"fuel": "other",
"country": "CZ",
"yearFrom": 2008,
"yearTo": 2019,
"mileageFrom": 50000,
"mileageTo": 100000,
"avgPrice": 330169.9,
"medianPrice": 362000,
"minPrice": 119900,
"count": 10,
"computedAt": "2026-10-09 20:45:07.077368+00"
},
"watchCount": 0,
"priceDrop": 20000,
"previousPrice": 139900,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 67
},
"detailPriceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 67
},
"registryBadges": [],
"flags": {
"usImport": {
"state": "none"
}
}
}
},
{
"id": "a640c9e4-3089-4e6c-a7f6-66fd455a5fef",
"listingId": "85dc9d11-2c36-4680-80d2-35e4b24a6736",
"marketStatId": "d7999eb9-bba1-42d9-b67a-cf7958d788c0",
"dealScore": 0.6545454,
"priceDiffPct": 65.454544,
"flaggedAt": "2026-10-05 17:52:35.228343+00",
"isPublished": true,
"isMarketListing": false,
"listing": {
"id": "85dc9d11-2c36-4680-80d2-35e4b24a6736",
"source": "sauto",
"sourceId": "211221486",
"url": "https://www.sauto.cz/osobni/detail/renault/twingo/211221486",
"title": "Renault Twingo",
"brand": "Renault",
"model": "Twingo",
"year": 2022,
"mileageKm": 23000,
"priceCzk": 190000,
"currency": "CZK",
"fuel": "electric",
"transmission": null,
"description": "",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qG_A/kcKfrMAkFMsuhMJaH9pTQi/eeb1.jpeg"
],
"location": "Praha, Hlavní město Praha",
"country": "CZ",
"vin": "VF1AH000668632023",
"sellerType": "private",
"sellerName": null,
"isVatDeductible": null,
"engineCapacity": null,
"powerKw": null,
"ownersCount": 0,
"ownerType": null,
"firstRegistration": null,
"firstRegistrationCz": null,
"registryData": {
"rsvStatus": 3,
"rsvCheckedAt": "2026-10-05T18:03:58.130Z",
"notInRegistry": true
},
"condition": null,
"color": null,
"drivetrain": null,
"bodyType": null,
"deduplicationKey": "vin:VF1AH000668632023",
"canonicalModel": "Twingo",
"createdAt": "2026-10-05 17:52:15.004317+00",
"updatedAt": "2026-10-09 20:34:49.004+00",
"isActive": true,
"vehicleType": "used",
"isAuction": false
},
"marketStat": {
"id": "d7999eb9-bba1-42d9-b67a-cf7958d788c0",
"brand": "Renault",
"model": "Twingo",
"fuel": "electric",
"country": "CZ",
"yearFrom": 2021,
"yearTo": 2026,
"mileageFrom": 0,
"mileageTo": 50000,
"avgPrice": 505875,
"medianPrice": 550000,
"minPrice": 190000,
"count": 16,
"computedAt": "2026-10-09 20:45:07.276269+00"
},
"watchCount": 1,
"priceDrop": 0,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 65
},
"detailPriceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 65
},
"registryBadges": [],
"flags": {
"usImport": {
"state": "none"
}
}
}
}
],
"total": 10476,
"page": 1,
"pageSize": 10,
"hasMore": true
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/brands MCP tool list_brands
Brands with active deals
Brands that currently have published deals, with the number of cards each, most first. Accepts the feed filters so the counts match a filtered feed.
https://api.autosignal.eu/api/deals/brands
| Parameter | In | Type | Description |
|---|---|---|---|
brands | query | string | Brand names, comma-separated (canonical spelling, e.g. Škoda, Mercedes-Benz). |
models | query | string | Model names, comma-separated; matched against the catalogue name or as a prefix of the raw model. |
fuels | query | string | Fuels, comma-separated: petrol, diesel, hybrid, electric, lpg, cng, other. |
vehicleTypes | query | string | used, new and/or demo, comma-separated. Default: all. |
bodyTypes | query | string | Body types, comma-separated: kombi, sedan, hatchback, suv, mpv, coupe, cabrio, pickup, van. |
priceMin | query | integer | Lowest asking price in CZK. e.g. 200000 |
priceMax | query | integer | Highest asking price in CZK. e.g. 500000 |
yearMin | query | integer | Oldest model year. e.g. 2018 |
yearMax | query | integer | Newest model year. e.g. 2022 |
maxMileage | query | integer | Highest odometer reading in km. e.g. 150000 |
minDiscount | query | number | Only cars at least this many % below their segment median. e.g. 20 |
priceDropped | query | string (true) | `true` keeps only listings whose price was recently cut. |
firstOwner | query | string (true) | `true` keeps only registry-verified one-owner cars. |
czOrigin | query | string (true) | `true` keeps only cars first registered in the Czech Republic (never imported). |
powerMin | query | integer | Lowest engine power in kW. e.g. 110 |
transmission | query | string (manual, automatic) | manual or automatic. |
damaged | query | string (true) | `true` includes damaged / crashed cars, which are excluded by default. |
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
mode | query | string (all) | `all` switches from published deals to the whole market: every scored listing with its % above/below median (the webapp's "Celý trh"). |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 Brands and counts.
[
{
"brand": "Škoda",
"count": 4889
},
{
"brand": "Volkswagen",
"count": 1946
}
]429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/models MCP tool list_models
Models of a brand with active deals
Models of one brand that currently have published deals, with card counts, most first (max 200). Model names are the catalogue canonicals where known.
https://api.autosignal.eu/api/deals/models?brand=%C5%A0koda
| Parameter | In | Type | Description |
|---|---|---|---|
brand required | query | string | Brand name, canonical spelling. e.g. Škoda |
fuels | query | string | Fuels, comma-separated: petrol, diesel, hybrid, electric, lpg, cng, other. |
vehicleTypes | query | string | used, new and/or demo, comma-separated. Default: all. |
bodyTypes | query | string | Body types, comma-separated: kombi, sedan, hatchback, suv, mpv, coupe, cabrio, pickup, van. |
priceMin | query | integer | Lowest asking price in CZK. e.g. 200000 |
priceMax | query | integer | Highest asking price in CZK. e.g. 500000 |
yearMin | query | integer | Oldest model year. e.g. 2018 |
yearMax | query | integer | Newest model year. e.g. 2022 |
maxMileage | query | integer | Highest odometer reading in km. e.g. 150000 |
minDiscount | query | number | Only cars at least this many % below their segment median. e.g. 20 |
priceDropped | query | string (true) | `true` keeps only listings whose price was recently cut. |
firstOwner | query | string (true) | `true` keeps only registry-verified one-owner cars. |
czOrigin | query | string (true) | `true` keeps only cars first registered in the Czech Republic (never imported). |
powerMin | query | integer | Lowest engine power in kW. e.g. 110 |
transmission | query | string (manual, automatic) | manual or automatic. |
damaged | query | string (true) | `true` includes damaged / crashed cars, which are excluded by default. |
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
mode | query | string (all) | `all` switches from published deals to the whole market: every scored listing with its % above/below median (the webapp's "Celý trh"). |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 Models and counts.
[
{
"model": "Fabia",
"count": 846
},
{
"model": "Kodiaq",
"count": 779
}
]429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/countries MCP tool list_countries
Markets with active deals
Countries that currently have published deals, with card counts. mode=all counts the whole market instead.
https://api.autosignal.eu/api/deals/countries
| Parameter | In | Type | Description |
|---|---|---|---|
mode | query | string (all) | `all` switches from published deals to the whole market: every scored listing with its % above/below median (the webapp's "Celý trh"). |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 Countries and counts.
[
{
"country": "CZ",
"count": 17200
},
{
"country": "RO",
"count": 3446
}
]429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/hot MCP tool list_hot_deals
Top deals right now
Up to 15 deals with the biggest discount vs. their segment median, one per car, excluding adverts that would open with a fraud-risk warning.
https://api.autosignal.eu/api/deals/hot
| Parameter | In | Type | Description |
|---|---|---|---|
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 Deals, biggest discount first.
[
{
"id": "228f2bd8-eed3-4f91-9bbf-bf038ce751f6",
"listingId": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"marketStatId": "431279b6-2f4c-4ff3-82ce-e9f73ae813fc",
"dealScore": 0.66878456,
"priceDiffPct": 66.878456,
"flaggedAt": "2026-09-12T08:15:09.348Z",
"isPublished": true,
"firstPublishedAt": "2026-09-12T08:15:09.332Z",
"hiddenByAdmin": false,
"hiddenAt": null,
"groupKey": "suzuki|vitara|2008|94|6",
"listingActive": true,
"listingDamaged": false,
"listingHasVin": true,
"listing": {
"id": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"source": "tipcars",
"sourceId": "15780215",
"url": "https://www.tipcars.com/suzuki-vitara/suv/nafta/suzuki-vitara-1-9-ddis-1-majitel-4x4-servisk-15780215.html",
"title": "Suzuki Vitara 1,9 DDiS 1.majitel,4x4,servisk",
"brand": "Suzuki",
"model": "Vitara",
"year": 2008,
"mileageKm": 94448,
"priceCzk": 119900,
"currency": "CZK",
"fuel": "other",
"transmission": null,
"description": "",
"images": [
"https://img.tipcars.com/fotky_zdrojove/15780215_1/1748341826/E/suzuki-vitara-1-9-ddis-1-majitel-4x4-servisk.jpg"
],
"location": "",
"country": "CZ",
"vin": "JSAJTA44V00252629",
"sellerType": "dealer",
"sellerName": "Tomáš Lajza-AUTO LAJZA • Vysoké Mýto",
"isVatDeductible": null,
"engineCapacity": null,
"powerKw": null,
"ownersCount": 0,
"ownerType": null,
"firstRegistration": null,
"firstRegistrationCz": null,
"registryData": {
"rsvStatus": 3,
"rsvCheckedAt": "2026-10-05T21:35:17.254Z",
"vinCheckedAt": "2026-09-07T22:53:51.879Z",
"notInRegistry": true,
"vinBackfillAt": "2026-09-07T16:01:48.847Z"
},
"condition": null,
"color": null,
"drivetrain": null,
"bodyType": "suv",
"deduplicationKey": "vin:JSAJTA44V00252629",
"canonicalModel": "Vitara",
"createdAt": "2026-09-07T02:59:24.256Z",
"updatedAt": "2026-10-09T17:15:27.618Z",
"lastVerifiedAt": "2026-10-09T10:16:18.870Z",
"isActive": true,
"goneProbeCount": 0,
"vehicleType": "used",
"isAuction": false,
"feedGroupKey": "suzuki|vitara|2008|94|6",
"feedIsPrimary": true,
"feedIsDeal": true,
"feedDealScore": 0.66878456
},
"marketStat": {
"id": "431279b6-2f4c-4ff3-82ce-e9f73ae813fc",
"brand": "Suzuki",
"model": "Vitara",
"fuel": "other",
"country": "CZ",
"yearFrom": 2008,
"yearTo": 2019,
"mileageFrom": 50000,
"mileageTo": 100000,
"avgPrice": 330169.9,
"medianPrice": 362000,
"minPrice": 119900,
"count": 10,
"widenLevel": 2,
"computedAt": "2026-10-09T20:45:07.077Z"
},
"watchCount": 0,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 67
},
"detailPriceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 67
},
"registryBadges": [],
"flags": {
"usImport": {
"state": "none"
}
}
}
},
{
"id": "a640c9e4-3089-4e6c-a7f6-66fd455a5fef",
"listingId": "85dc9d11-2c36-4680-80d2-35e4b24a6736",
"marketStatId": "d7999eb9-bba1-42d9-b67a-cf7958d788c0",
"dealScore": 0.6545454,
"priceDiffPct": 65.454544,
"flaggedAt": "2026-10-05T17:52:35.228Z",
"isPublished": true,
"firstPublishedAt": "2026-10-05T17:52:35.225Z",
"hiddenByAdmin": false,
"hiddenAt": null,
"groupKey": "renault|twingo|2022|23|10",
"listingActive": true,
"listingDamaged": false,
"listingHasVin": true,
"listing": {
"id": "85dc9d11-2c36-4680-80d2-35e4b24a6736",
"source": "sauto",
"sourceId": "211221486",
"url": "https://www.sauto.cz/osobni/detail/renault/twingo/211221486",
"title": "Renault Twingo",
"brand": "Renault",
"model": "Twingo",
"year": 2022,
"mileageKm": 23000,
"priceCzk": 190000,
"currency": "CZK",
"fuel": "electric",
"transmission": null,
"description": "",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qG_A/kcKfrMAkFMsuhMJaH9pTQi/eeb1.jpeg"
],
"location": "Praha, Hlavní město Praha",
"country": "CZ",
"vin": "VF1AH000668632023",
"sellerType": "private",
"sellerName": null,
"isVatDeductible": null,
"engineCapacity": null,
"powerKw": null,
"ownersCount": 0,
"ownerType": null,
"firstRegistration": null,
"firstRegistrationCz": null,
"registryData": {
"rsvStatus": 3,
"rsvCheckedAt": "2026-10-05T18:03:58.130Z",
"notInRegistry": true
},
"condition": null,
"color": null,
"drivetrain": null,
"bodyType": null,
"deduplicationKey": "vin:VF1AH000668632023",
"canonicalModel": "Twingo",
"createdAt": "2026-10-05T17:52:15.004Z",
"updatedAt": "2026-10-09T20:34:49.004Z",
"lastVerifiedAt": "2026-10-09T20:30:55.126Z",
"isActive": true,
"goneProbeCount": 0,
"vehicleType": "used",
"isAuction": false,
"feedGroupKey": "renault|twingo|2022|23|10",
"feedIsPrimary": true,
"feedIsDeal": true,
"feedDealScore": 0.6545454
},
"marketStat": {
"id": "d7999eb9-bba1-42d9-b67a-cf7958d788c0",
"brand": "Renault",
"model": "Twingo",
"fuel": "electric",
"country": "CZ",
"yearFrom": 2021,
"yearTo": 2026,
"mileageFrom": 0,
"mileageTo": 50000,
"avgPrice": 505875,
"medianPrice": 550000,
"minPrice": 190000,
"count": 16,
"widenLevel": 1,
"computedAt": "2026-10-09T20:45:07.276Z"
},
"watchCount": 1,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 65
},
"detailPriceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 65
},
"registryBadges": [],
"flags": {
"usImport": {
"state": "none"
}
}
}
}
]429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/recently-reduced MCP tool list_recently_reduced
Deals whose price was just cut
Up to 10 deals whose latest price is 1–40 % below the previous one, newest cut first, one per car. Each card adds priceDrop, priceDropPct, oldPrice and droppedAt.
https://api.autosignal.eu/api/deals/recently-reduced
| Parameter | In | Type | Description |
|---|---|---|---|
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 Deals, latest price cut first.
[
{
"id": "06abbfbe-080b-4c94-9837-ac6cae1c6260",
"listingId": "f0328a6a-e0eb-44f8-9e19-6b2fb05779fb",
"marketStatId": "3d6c4593-e7a8-4b41-9566-523636fefc76",
"dealScore": 0.16359833,
"priceDiffPct": 16.359833,
"flaggedAt": "2026-07-15 16:09:51.22363+00",
"isPublished": true,
"listing": {
"id": "f0328a6a-e0eb-44f8-9e19-6b2fb05779fb",
"source": "sauto",
"sourceId": "210777026",
"url": "https://www.sauto.cz/osobni/detail/skoda/fabia/210777026",
"title": "Škoda Fabia, Combi 1,0 TSI / 70 kW Ambition",
"brand": "Škoda",
"model": "Fabia",
"year": 2022,
"mileageKm": 114404,
"priceCzk": 199900,
"fuel": "petrol",
"transmission": "manual",
"description": "",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qD_B/kQMlcCt5zmBDp4mHl9HNqFsI/b659.jpeg"
],
"location": "Chrudim",
"vin": "TMBJP6NJ7NZ023802",
"engineCapacity": 999,
"powerKw": 70,
"ownersCount": 2,
"condition": null,
"color": null,
"drivetrain": null,
"sellerType": "dealer",
"isVatDeductible": null,
"deduplicationKey": "vin:TMBJP6NJ7NZ023802",
"createdAt": "2026-07-15 16:09:07.06413+00",
"updatedAt": "2026-10-09 20:46:27.396+00",
"isActive": true
},
"marketStat": {
"id": "3d6c4593-e7a8-4b41-9566-523636fefc76",
"brand": "Škoda",
"model": "Fabia",
"yearFrom": 2021,
"yearTo": 2023,
"mileageFrom": 100000,
"mileageTo": 150000,
"avgPrice": 243374.28,
"medianPrice": 239000,
"minPrice": 160000,
"count": 273,
"computedAt": "2026-10-09 20:45:05.783582+00"
},
"priceDrop": 10000,
"priceDropPct": 4.76,
"previousPrice": 209900,
"watchCount": 0,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "great",
"pct": 16
},
"detailPriceBadge": {
"kind": "deal",
"tier": "great",
"pct": 16
},
"registryBadges": [],
"flags": {
"usImport": {
"state": "none"
}
}
}
},
{
"id": "bdcf4ec0-3512-4abc-8840-562bf9dcf79d",
"listingId": "4299ef64-1b78-49ac-ac4b-89872a67afaf",
"marketStatId": "e6e7fbc0-9cb0-45f2-a74c-47acf03a812d",
"dealScore": 0.33885217,
"priceDiffPct": 33.885216,
"flaggedAt": "2026-09-17 12:00:09.678466+00",
"isPublished": true,
"listing": {
"id": "4299ef64-1b78-49ac-ac4b-89872a67afaf",
"source": "sauto",
"sourceId": "211122357",
"url": "https://www.sauto.cz/osobni/detail/skoda/yeti/211122357",
"title": "Škoda Yeti, 1.2 TSI 77kw Dsg-Automat",
"brand": "Škoda",
"model": "Yeti",
"year": 2013,
"mileageKm": 192000,
"priceCzk": 119000,
"fuel": "petrol",
"transmission": "automatic",
"description": "",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qF_B/k0OqwCKRB7OXguRHy9ov7/79ea.jpeg"
],
"location": "Bzenec, Hodonín",
"vin": "TMBJF75L8D6089186",
"engineCapacity": null,
"powerKw": null,
"ownersCount": 0,
"condition": null,
"color": null,
"drivetrain": null,
"sellerType": "private",
"isVatDeductible": null,
"deduplicationKey": "vin:TMBJF75L8D6089186",
"createdAt": "2026-09-17 11:49:36.681482+00",
"updatedAt": "2026-10-09 20:49:36.689+00",
"isActive": true
},
"marketStat": {
"id": "e6e7fbc0-9cb0-45f2-a74c-47acf03a812d",
"brand": "Škoda",
"model": "Yeti",
"yearFrom": 2012,
"yearTo": 2014,
"mileageFrom": 150000,
"mileageTo": 200000,
"avgPrice": 179705.05,
"medianPrice": 179990,
"minPrice": 119000,
"count": 59,
"computedAt": "2026-10-09 20:45:06.467307+00"
},
"priceDrop": 6000,
"priceDropPct": 4.8,
"previousPrice": 125000,
"watchCount": 0,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 34
},
"detailPriceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 34
},
"registryBadges": [],
"flags": {
"usImport": {
"state": "none"
}
}
}
}
]429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/weekly-summary MCP tool get_weekly_summary
This week at a glance
Number of deals published in the last 7 days, the single best one, and the average amount saved vs. median in CZK.
https://api.autosignal.eu/api/deals/weekly-summary
| Parameter | In | Type | Description |
|---|---|---|---|
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 The summary.
{
"newDeals": 69723,
"bestDeal": {
"id": "d5c78a44-f59f-49c5-ab0b-7c6486aebe15",
"listingId": "b22f2e45-059d-4cc4-bf9b-9a4f63fa6516",
"marketStatId": "47b33cf7-d787-4a3c-8c1f-bc903621da78",
"dealScore": 0.7088235,
"priceDiffPct": 70.882355,
"flaggedAt": "2026-10-07T11:16:08.841Z",
"isPublished": true,
"firstPublishedAt": "2026-10-07T11:16:08.838Z",
"hiddenByAdmin": false,
"hiddenAt": null,
"groupKey": "audi|a8|2011|295|3",
"listingActive": true,
"listingDamaged": true,
"listingHasVin": false,
"listing": {
"id": "b22f2e45-059d-4cc4-bf9b-9a4f63fa6516",
"source": "otomoto-pl",
"sourceId": "6151001544",
"url": "https://www.otomoto.pl/osobowe/oferta/audi-a8-ID6IgYuk.html",
"title": "Audi A8 3.0 TDI",
"brand": "Audi",
"model": "A8",
"year": 2011,
"mileageKm": 295000,
"priceCzk": 57915,
"currency": "PLN",
"fuel": "diesel",
"transmission": "automatic",
"description": "Powypadkowy , na części , kompletny",
"images": [
"https://ireland.apollo.olxcdn.com/v1/files/rhcd2n8kuk4r3-OTOMOTOPL/image;s=640x480"
],
"location": "Lipnica, Pomorskie",
"country": "PL",
"vin": null,
"sellerType": "dealer",
"sellerName": null,
"isVatDeductible": null,
"engineCapacity": 2967,
"powerKw": 150,
"ownersCount": null,
"ownerType": null,
"firstRegistration": null,
"firstRegistrationCz": null,
"registryData": null,
"condition": "damaged",
"color": null,
"drivetrain": null,
"bodyType": null,
"deduplicationKey": "combo:audi:a8:2011:295",
"canonicalModel": "A8",
"createdAt": "2026-10-07T11:15:37.306Z",
"updatedAt": "2026-10-09T19:00:36.555Z",
"lastVerifiedAt": null,
"isActive": true,
"goneProbeCount": 0,
"vehicleType": "used",
"isAuction": false,
"feedGroupKey": "audi|a8|2011|295|3",
"feedIsPrimary": true,
"feedIsDeal": true,
"feedDealScore": 0.7088235
},
"marketStat": {
"id": "47b33cf7-d787-4a3c-8c1f-bc903621da78",
"brand": "Audi",
"model": "A8",
"fuel": "diesel",
"country": "PL",
"yearFrom": 2010,
"yearTo": 2012,
"mileageFrom": 200000,
"mileageTo": 999999999,
"avgPrice": 316461.6,
"medianPrice": 300280.5,
"minPrice": 233415,
"count": 10,
"widenLevel": 0,
"computedAt": "2026-10-09T20:45:06.467Z"
}
},
"avgSavings": 23.35
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/{id} MCP tool get_deal
One deal in full
The deal card plus price history (merged across relists of the same VIN), segment statistics, a heuristic price forecast, the official registry dossier when the VIN is known, how many users watch it and the UI judgment flags. Ex-deals keep their row, so shared links keep working.
https://api.autosignal.eu/api/deals/228f2bd8-eed3-4f91-9bbf-bf038ce751f6
| Parameter | In | Type | Description |
|---|---|---|---|
id required | path | string | Deal id. e.g. 228f2bd8-eed3-4f91-9bbf-bf038ce751f6 |
Responses
200 The deal.
{
"id": "228f2bd8-eed3-4f91-9bbf-bf038ce751f6",
"listingId": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"marketStatId": "431279b6-2f4c-4ff3-82ce-e9f73ae813fc",
"dealScore": 0.66878456,
"priceDiffPct": 66.878456,
"flaggedAt": "2026-09-12T08:15:09.348Z",
"isPublished": true,
"firstPublishedAt": "2026-09-12T08:15:09.332Z",
"hiddenByAdmin": false,
"hiddenAt": null,
"groupKey": "suzuki|vitara|2008|94|6",
"listingActive": true,
"listingDamaged": false,
"listingHasVin": true,
"isMarketListing": false,
"listing": {
"id": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"source": "tipcars",
"sourceId": "15780215",
"url": "https://www.tipcars.com/suzuki-vitara/suv/nafta/suzuki-vitara-1-9-ddis-1-majitel-4x4-servisk-15780215.html",
"title": "Suzuki Vitara 1,9 DDiS 1.majitel,4x4,servisk",
"brand": "Suzuki",
"model": "Vitara",
"year": 2008,
"mileageKm": 94448,
"priceCzk": 119900,
"currency": "CZK",
"fuel": "other",
"transmission": null,
"description": "",
"images": [
"https://img.tipcars.com/fotky_zdrojove/15780215_1/1748341826/E/suzuki-vitara-1-9-ddis-1-majitel-4x4-servisk.jpg"
],
"location": "",
"country": "CZ",
"vin": "JSAJTA44V00252629",
"sellerType": "dealer",
"sellerName": "Tomáš Lajza-AUTO LAJZA • Vysoké Mýto",
"isVatDeductible": null,
"engineCapacity": null,
"powerKw": null,
"ownersCount": 0,
"ownerType": null,
"firstRegistration": null,
"firstRegistrationCz": null,
"registryData": {
"rsvStatus": 3,
"rsvCheckedAt": "2026-10-05T21:35:17.254Z",
"vinCheckedAt": "2026-09-07T22:53:51.879Z",
"notInRegistry": true,
"vinBackfillAt": "2026-09-07T16:01:48.847Z"
},
"condition": null,
"color": null,
"drivetrain": null,
"bodyType": "suv",
"deduplicationKey": "vin:JSAJTA44V00252629",
"canonicalModel": "Vitara",
"createdAt": "2026-09-07T02:59:24.256Z",
"updatedAt": "2026-10-09T17:15:27.618Z",
"lastVerifiedAt": "2026-10-09T10:16:18.870Z",
"isActive": true,
"goneProbeCount": 0,
"vehicleType": "used",
"isAuction": false,
"feedGroupKey": "suzuki|vitara|2008|94|6",
"feedIsPrimary": true,
"feedIsDeal": true,
"feedDealScore": 0.66878456
},
"marketStat": {
"id": "431279b6-2f4c-4ff3-82ce-e9f73ae813fc",
"brand": "Suzuki",
"model": "Vitara",
"fuel": "other",
"country": "CZ",
"yearFrom": 2008,
"yearTo": 2019,
"mileageFrom": 50000,
"mileageTo": 100000,
"avgPrice": 330169.9,
"medianPrice": 362000,
"minPrice": 119900,
"count": 10,
"widenLevel": 2,
"computedAt": "2026-10-09T20:45:07.077Z"
},
"priceHistory": [
{
"id": "cf82c62f-5ef0-4e48-a0ba-7998b321a644",
"listingId": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"priceCzk": 139900,
"recordedAt": "2026-09-07T02:59:24.268Z"
},
{
"id": "cecb47e9-2ed3-4de6-b291-6716d53d0db9",
"listingId": "44b6ed8b-0abd-461b-858c-b4f6381c96c2",
"priceCzk": 119900,
"recordedAt": "2026-09-10T18:27:31.803Z"
}
],
"relist": null,
"watchCount": 0,
"prediction": {
"direction": "down",
"confidence": "medium",
"reason": "Inzerát je starší než 30 dní — prodejce pravděpodobně sníží cenu"
},
"registryDossier": null,
"registryVinMismatch": false,
"display": {
"priceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 67
},
"detailPriceBadge": {
"kind": "deal",
"tier": "hot",
"pct": 67
},
"registryBadges": [],
"flags": {
"scam": [
{
"id": "suspiciouslyLowPrice",
"severity": "danger"
}
],
"usImport": {
"state": "none"
}
}
}
}404 Unknown deal id (or not a UUID). Not recoverable by retrying: there is no such record or not enough data; tell the user.
{
"error": "Deal not found"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}MarketTrends, valuations and country snapshots.
GET /api/deals/market-trend MCP tool get_market_trend
Current median and 7-vs-30-day trend of a model
Median and average asking price, listing count and the 7-day-vs-30-day price change in % for one brand + model (the most populous segment of that model).
https://api.autosignal.eu/api/deals/market-trend?brand=%C5%A0koda&model=Octavia
| Parameter | In | Type | Description |
|---|---|---|---|
brand required | query | string | Brand name. e.g. Škoda |
model required | query | string | Model name (catalogue canonical, e.g. "Octavia", "Řada 5"). e.g. Octavia |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 The trend.
{
"medianPrice": 629900,
"avgPrice": 627021.9,
"count": 309,
"trendPct": -13.64
}400 brand or model missing. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "brand and model query parameters are required"
}404 No market data for this brand / model. Not recoverable by retrying: there is no such record or not enough data; tell the user.
{
"error": "No market data found for this brand/model"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/price-trends MCP tool get_price_history
90-day daily price history of a model
Daily median and average asking price and listing count over the last 90 days for one brand + model, optionally narrowed to a fuel.
https://api.autosignal.eu/api/deals/price-trends?brand=%C5%A0koda&model=Octavia
| Parameter | In | Type | Description |
|---|---|---|---|
brand required | query | string | Brand name. e.g. Škoda |
model required | query | string | Model name. e.g. Octavia |
fuel | query | string | Fuel to narrow to (petrol, diesel, hybrid, electric, …). e.g. diesel |
countries | query | string | Markets to include, comma-separated ISO codes. Default CZ. Prices are only ever compared within one country. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 Daily points, oldest first.
[
{
"date": "2026-07-12",
"medianPrice": 440438.1875,
"avgPrice": 437110.625,
"count": 265
},
{
"date": "2026-07-13",
"medianPrice": 448767.09375,
"avgPrice": 443534.28125,
"count": 277
}
]400 brand or model missing. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "brand and model query parameters are required"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/deals/valuation MCP tool estimate_valuation
Fair price range of a specific car
Min / median / max asking price of comparable active listings (same brand, model, fuel, ±1 model year, same mileage band) in CZK, with the sample size. Statistical, not an appraisal.
| Parameter | In | Type | Description |
|---|---|---|---|
brand required | query | string | Brand name. e.g. Škoda |
model required | query | string | Model name. e.g. Octavia |
year required | query | integer | Model year. e.g. 2019 |
fuel required | query | string | Fuel: petrol, diesel, hybrid, electric, lpg, cng. e.g. diesel |
mileage required | query | integer | Odometer reading in km (0–2 000 000). e.g. 120000 |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 The estimate.
{
"estimatedMin": 170591,
"estimatedMedian": 379900,
"estimatedMax": 636000,
"sampleCount": 676,
"segment": {
"yearFrom": 2019,
"yearTo": 2021,
"mileageFrom": 100000,
"mileageTo": 150000
}
}400 A parameter is missing or out of range; `code` names which. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "mileage must be between 0 and 2000000 km",
"code": "mileage_out_of_range"
}404 Fewer than 6 comparable listings — no estimate. Not recoverable by retrying: there is no such record or not enough data; tell the user.
{
"error": "No market data found for this combination"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/market-data/overview MCP tool get_market_overview
Market snapshot of a country
Headline pulse, price direction (30 d and 6 m), a buyer's/seller's-market verdict, breakdowns by fuel, body and brand, deal hotspots, the 90-day trend, supply and freshness, oversupply and fast-mover signals, plus the latest month of new-car registrations. Heavy; cached.
https://api.autosignal.eu/api/market-data/overview
| Parameter | In | Type | Description |
|---|---|---|---|
country | query | string (CZ, SK, DE, AT, PL, HU, RO) | Market, one ISO code. Default CZ. |
Responses
200 The snapshot.
{
"countries": [
"CZ"
],
"pulse": {
"totalActiveListings": 247703,
"overallMedianPrice": 548064,
"avgDealDiscount": 21.91,
"lastUpdated": "2026-10-09T20:52:00.364Z"
},
"priceDirection": {
"change30dPct": -4.6,
"currentMedian": 979061,
"previousMedian": 1025898,
"change6mPct": -43.2
},
"verdict": {
"mood": "buyer",
"score": 1,
"signals": {
"price30dChangePct": -4.6,
"supplyDelta": -8748,
"avgDaysOnMarket": 68
}
},
"fuelBreakdown": [
{
"fuel": "petrol",
"count": 117047,
"pct": 47.3,
"medianPrice": 519900,
"trend30dPct": -5.4
},
{
"fuel": "diesel",
"count": 78749,
"pct": 31.8,
"medianPrice": 510000,
"trend30dPct": -14.9
}
],
"topBrands": [
{
"brand": "Škoda",
"count": 63638,
"medianPrice": 517900,
"trend30dPct": 1.5
},
{
"brand": "Volkswagen",
"count": 24252,
"medianPrice": 449000,
"trend30dPct": -6.3
}
],
"dealHotspots": [
{
"brand": "Ford",
"model": "Tourneo Courier",
"avgDiscount": 54.43,
"dealCount": 4,
"medianPrice": 194900,
"yearMin": 2015,
"yearMax": 2016
},
{
"brand": "Nissan",
"model": "LEAF",
"avgDiscount": 42.13,
"dealCount": 3,
"medianPrice": 340000,
"yearMin": 2017,
"yearMax": 2024
}
],
"priceTrend90d": [
{
"date": "2026-07-12",
"medianPrice": 1001805,
"count": 197837
},
{
"date": "2026-07-13",
"medianPrice": 1001705,
"count": 196052
}
],
"supply": {
"newListings7d": 27623,
"removedListings7d": 36371,
"avgDaysOnMarket": 68
},
"monthlyPrices": [
{
"month": "2026-04",
"medianPrice": 964604,
"count": 3174500
},
{
"month": "2026-05",
"medianPrice": 993489,
"count": 4506937
}
],
"bodyTypeBreakdown": [
{
"bodyType": "suv",
"count": 40786,
"pct": 40.8,
"medianPrice": 650000
},
{
"bodyType": "combi",
"count": 23646,
"pct": 23.7,
"medianPrice": 379000
}
],
"importedDelta": [
{
"brand": "Mercedes-Benz",
"model": "Třída CLK",
"czMedian": 1924832,
"importedMedian": 125135,
"czCount": 54,
"importedCount": 43,
"deltaPct": 93.5
},
{
"brand": "Mitsubishi",
"model": "Lancer",
"czMedian": 268724,
"importedMedian": 116295,
"czCount": 33,
"importedCount": 62,
"deltaPct": 56.7
}
],
"sellerSplit": [
{
"sellerType": "dealer",
"count": 232510,
"medianPrice": 559900
},
{
"sellerType": "private",
"count": 15193,
"medianPrice": 289000
}
],
"singleOwnerPremium": [
{
"brand": "Chevrolet",
"oneOwnerMedian": 950000,
"multiOwnerMedian": 149000,
"premiumPct": 537.6,
"oneOwnerCount": 93,
"multiOwnerCount": 115
},
{
"brand": "Chrysler",
"oneOwnerMedian": 532400,
"multiOwnerMedian": 185130,
"premiumPct": 187.6,
"oneOwnerCount": 26,
"multiOwnerCount": 33
}
],
"freshness": {
"fresh": 87929,
"mid": 82965,
"stale": 76809,
"total": 247703
},
"oversupply": [
{
"brand": "Mercedes-Benz",
"fuel": "petrol",
"currentCount": 3894,
"pastCount": 75,
"currentMedian": 990000,
"pastMedian": 1856380,
"inventoryChangePct": 5092,
"priceChangePct": -46.7
},
{
"brand": "Audi",
"fuel": "petrol",
"currentCount": 2232,
"pastCount": 43,
"currentMedian": 750000,
"pastMedian": 1410200,
"inventoryChangePct": 5090.7,
"priceChangePct": -46.8
}
],
"fastMovers": [
{
"brand": "Kia",
"model": "Carnival",
"removedCount": 20,
"avgDaysToDeactivate": 5.1,
"medianPrice": 1048500
},
{
"brand": "Peugeot",
"model": "807",
"removedCount": 31,
"avgDaysToDeactivate": 6.3,
"medianPrice": 69000
}
],
"registrations": {
"year": 2026,
"month": 9,
"totals": {
"units": 19095,
"unitsPriorYear": 21370,
"yoyPct": -10.6
},
"topBrands": [
{
"brand": "skoda",
"brandRaw": "Škoda",
"model": null,
"units": 7006,
"sharePct": 36.69,
"rank": 1,
"unitsPriorYear": 8118,
"sharePctPriorYear": 37.99,
"yoyPct": 86.3
}
],
"topModels": [
{
"brand": "skoda",
"brandRaw": "Škoda",
"model": "Octavia",
"units": 1574,
"sharePct": 8.24,
"rank": 1,
"unitsPriorYear": 1791,
"sharePctPriorYear": 8.38,
"yoyPct": 87.88
}
]
}
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/market-data/registry
The standing Czech vehicle fleet
The Czech vehicle stock from the monthly official-registry snapshot: fleet size, vehicles per make and model, age distribution, fuel mix, imports and the biggest fleets. available: false until the first snapshot is loaded.
https://api.autosignal.eu/api/market-data/registry
Responses
200 The fleet statistics.
{
"available": true,
"snapshotDate": "2026-10-03",
"fleetSummary": {
"operated": 10877142,
"totalAll": 19383927,
"snapshotDate": "2026-10-03",
"avgSourceRows": 19383927,
"passengerOperated": 6877787
},
"brandCounts": {
"ŠKODA": 2286831,
"VOLKSWAGEN": 747335,
"FORD": 406214,
"HYUNDAI": 299538,
"PEUGEOT": 263451,
"RENAULT": 258885,
"TOYOTA": 213535,
"BMW": 200423,
"OPEL": 196042,
"MERCEDES-BENZ": 190465,
"CITROËN": 186415,
"AUDI": 165926
},
"importStats": {
"total": 3449271,
"countries": [
{
"name": "Německo",
"count": 2020189,
"share": 58.6
}
],
"byYear": {
"2026": {
"total": 64353,
"countries": {
"USA": 1551,
"Belgie": 1847,
"Polsko": 1822,
"Dánsko": 1132,
"Francie": 2130,
"Itálie": 3170,
"Německo": 40029,
"Rakousko": 3933,
"Slovensko": 2257,
"Švédsko": 587,
"Nizozemsko": 2312,
"Švýcarsko": 659
}
},
"2027": {
"total": 3,
"countries": {
"Řecko": 1,
"Německo": 2
}
},
"2029": {
"total": 2,
"countries": {
"Maďarsko": 1,
"Nizozemsko": 1
}
},
"2034": {
"total": 1,
"countries": {
"Německo": 1
}
},
"2044": {
"total": 3,
"countries": {
"Itálie": 1,
"Německo": 1,
"Nizozemsko": 1
}
},
"2047": {
"total": 5,
"countries": {
"Dánsko": 1,
"Německo": 4
}
},
"2053": {
"total": 1,
"countries": {
"Německo": 1
}
},
"2054": {
"total": 1,
"countries": {
"Německo": 1
}
},
"2060": {
"total": 1,
"countries": {
"Rakousko": 1
}
},
"2084": {
"total": 1,
"countries": {
"Polsko": 1
}
}
}
},
"ageDistribution": {
"0-2": 592747,
"20+": 2040306,
"3-5": 580546,
"6-10": 1259600,
"11-15": 1147209,
"16-20": 1256889
},
"fuelMix": {
"cng": 21373,
"lpg": 122107,
"other": 39436,
"diesel": 2605497,
"hybrid": 79641,
"petrol": 3924728,
"electric": 85005
},
"topFleets": [
{
"ico": "45805369",
"name": "ŠkoFIN s.r.o.",
"ownerType": "LEASING",
"current": 115897
},
{
"ico": "60112743",
"name": "MONETA Auto, s.r.o.",
"ownerType": "FIRMA",
"current": 48934
}
],
"topModels": [
{
"brand": "ŠKODA",
"model": "OCTAVIA",
"count": 705526
},
{
"brand": "ŠKODA",
"model": "FABIA",
"count": 467777
}
],
"topDealers": [
{
"ico": "1759299",
"name": "AURES Holdings a.s.",
"current": 27567
},
{
"ico": "25298828",
"name": "AUTO IN s.r.o.",
"current": 6085
}
],
"topEver": [
{
"ico": "45805369",
"name": "ŠkoFIN s.r.o.",
"ownerType": "LEASING",
"ever": 760346
},
{
"ico": "1759299",
"name": "AURES Holdings a.s.",
"ownerType": "AUTOSALON",
"ever": 546613
}
],
"companyTypeCounts": {
"AUTOSALON": 1326,
"FIRMA": 437148,
"OSVC": 737096,
"LEASING": 29
}
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}PricesBrand / model / model-year price statistics (the data behind autosignal.eu/cs/ceny).
GET /api/seo-stats/brand/{slug}
Price overview of a brand
Listing count, median and quartile prices in CZK, average days on market, 30-day change, deal count, the most-listed models and the 90-day median trend for one brand. An unknown brand answers 200 with zero counts.
https://api.autosignal.eu/api/seo-stats/brand/skoda
| Parameter | In | Type | Description |
|---|---|---|---|
slug required | path | string | Brand slug (lower-case ASCII, e.g. skoda, mercedes-benz). e.g. skoda |
country | query | string (CZ, SK, DE, AT, PL, HU, RO) | Market, one ISO code. Default CZ. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 The brand overview.
{
"countries": [
"CZ"
],
"brand": "Škoda",
"count": 63709,
"median": 518000,
"p25": 339990,
"p75": 738000,
"min": 50000,
"max": 1793400,
"avgDaysOnMarket": 70,
"change30dPct": 1.5,
"dealCount": 4936,
"topModels": [
{
"model": "Octavia",
"count": 17967,
"median": 438000
},
{
"model": "Kodiaq",
"count": 7992,
"median": 979800
}
],
"priceTrend90d": [
{
"date": "2026-07-12",
"medianPrice": 714818,
"count": 58310
},
{
"date": "2026-07-13",
"medianPrice": 714582,
"count": 57431
}
]
}400 Missing slug. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "slug is required"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/seo-stats/model/{brandSlug}/{modelSlug}
Price overview of a model
Listing count, median / quartile / min / max price in CZK, median mileage, 30-day change, a per-model-year breakdown, fuel split and 90-day trend for one brand + model. An unknown model answers 200 with zero counts.
https://api.autosignal.eu/api/seo-stats/model/skoda/octavia
| Parameter | In | Type | Description |
|---|---|---|---|
brandSlug required | path | string | Brand slug. e.g. skoda |
modelSlug required | path | string | Model slug (e.g. octavia, rada-5, trida-e). e.g. octavia |
country | query | string (CZ, SK, DE, AT, PL, HU, RO) | Market, one ISO code. Default CZ. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 The model overview.
{
"countries": [
"CZ"
],
"brand": "Škoda",
"model": "Octavia",
"count": 17967,
"median": 438000,
"p25": 259000,
"p75": 678000,
"min": 50000,
"max": 1297700,
"medianMileageKm": 95071,
"change30dPct": -3.9,
"byYear": [
{
"year": 2027,
"count": 43,
"median": 938800,
"medianMileageKm": 0
},
{
"year": 2026,
"count": 1812,
"median": 802464,
"medianMileageKm": 0
}
],
"byFuel": [
{
"fuel": "diesel",
"count": 8865,
"median": 370000
},
{
"fuel": "petrol",
"count": 7426,
"median": 579900
}
],
"priceTrend90d": [
{
"date": "2026-07-12",
"medianPrice": 530064,
"count": 18760
},
{
"date": "2026-07-13",
"medianPrice": 529960,
"count": 18455
}
],
"deals": [
{
"id": "d9b9e150-8444-428d-b62f-b52cd938c94f",
"listingId": "c6ce2e03-fe6a-43dd-8bc5-652bb38f9843",
"dealScore": 0.49748743,
"priceDiffPct": 49.748745,
"title": "Škoda Octavia 1,6 i 75KW, ČR, KLIMATIZACE.",
"year": 2009,
"mileageKm": 176886,
"priceCzk": 55000,
"fuel": "other",
"url": "https://www.tipcars.com/skoda-octavia/liftback/benzin/skoda-octavia-1-6-i-75kw-cr-klimatizace-8910012.html",
"images": [
"https://img.tipcars.com/fotky_zdrojove/08910012_8/1770982214/E/skoda-octavia-1-6-i-75kw-cr-klimatizace.jpg"
]
},
{
"id": "48623b32-78a9-4ee3-b82e-df80e4512e9d",
"listingId": "b91de67e-c30b-421d-a722-c5b93c762b3a",
"dealScore": 0.47826087,
"priceDiffPct": 47.826088,
"title": "Škoda Octavia, 1.9 TDi",
"year": 2010,
"mileageKm": 86727,
"priceCzk": 120000,
"fuel": "diesel",
"url": "https://www.sauto.cz/osobni/detail/skoda/octavia/211250925",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qG_A/nCR9NVflLrfprhXSICCKxe/f9a6.jpeg"
]
}
]
}400 Missing or malformed slugs. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "brand and model slugs required"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/seo-stats/year/{brandSlug}/{modelSlug}/{year}
Price overview of a model year
Count, median and quartile prices in CZK, median mileage, breakdowns by mileage band and fuel, and the 90-day trend for one brand + model + model year.
https://api.autosignal.eu/api/seo-stats/year/skoda/octavia/2019
| Parameter | In | Type | Description |
|---|---|---|---|
brandSlug required | path | string | Brand slug. e.g. skoda |
modelSlug required | path | string | Model slug. e.g. octavia |
year required | path | integer | Model year, 1990–2100. e.g. 2019 |
country | query | string (CZ, SK, DE, AT, PL, HU, RO) | Market, one ISO code. Default CZ. |
vehicleClass | query | string | Vehicle class. Only `car` is public today; an unknown or non-public class answers as if absent (cars) or 404. |
Responses
200 The model-year overview.
{
"countries": [
"CZ"
],
"brand": "Škoda",
"model": "Octavia",
"year": 2019,
"count": 662,
"median": 299000,
"p25": 250000,
"p75": 359000,
"medianMileageKm": 162075,
"byMileage": [
{
"bucket": "<50k",
"count": 10,
"median": 379900
},
{
"bucket": "50-100k",
"count": 69,
"median": 360000
}
],
"byFuel": [
{
"fuel": "diesel",
"count": 345,
"median": 290000
},
{
"fuel": "petrol",
"count": 232,
"median": 319888
}
],
"priceTrend90d": [
{
"date": "2026-07-12",
"medianPrice": 530064
},
{
"date": "2026-07-13",
"medianPrice": 529960
}
],
"deals": [
{
"id": "5085e354-ca1f-4516-8570-ddc79cfedc0a",
"listingId": "097a6dbf-7343-49a3-aadb-272a284779f9",
"dealScore": 0.36805335,
"priceDiffPct": 36.805336,
"title": "Škoda Octavia, 1.5G-TEC 96kW DSG Style",
"year": 2019,
"mileageKm": 171663,
"priceCzk": 199000,
"fuel": "petrol",
"url": "https://www.sauto.cz/osobni/detail/skoda/octavia/211245711",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qG_A/kcKfrMAkFMsuhbFMIBwH10/30a2.jpeg"
]
},
{
"id": "f44cff03-b45b-4564-b3e9-6ff89ac71e4d",
"listingId": "ac0f52fc-834a-43dc-ae26-374e023e9d2f",
"dealScore": 0.36571229,
"priceDiffPct": 36.571228,
"title": "Škoda Octavia, 1.5TSi 96kw CNG Automat DPH ČR",
"year": 2019,
"mileageKm": 196905,
"priceCzk": 199800,
"fuel": "petrol",
"url": "https://www.sauto.cz/osobni/detail/skoda/octavia/210684812",
"images": [
"https://d19-a.sdn.cz/d_19/c_img_qC_C/nO2CysqjGrDPliFSSVHDiPcg/048d.jpeg"
]
}
]
}400 Missing slugs or a year outside 1990–2100. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "brand slug, model slug, year required"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}RegistrationsCzech new-car registrations by month (SDA-CIA).
GET /api/registrations/latest
Newest month of Czech new-car registrations
Units registered in the latest available month with the prior-year comparison and the top brands and models by share (SDA-CIA data).
https://api.autosignal.eu/api/registrations/latest
| Parameter | In | Type | Description |
|---|---|---|---|
limit | query | integer | How many rows to return (max 200). |
Responses
200 The month overview.
{
"year": 2026,
"month": 9,
"totals": {
"units": 19095,
"unitsPriorYear": 21370,
"yoyPct": -10.6
},
"topBrands": [
{
"brand": "skoda",
"brandRaw": "Škoda",
"model": null,
"units": 7006,
"sharePct": 36.69,
"rank": 1,
"unitsPriorYear": 8118,
"sharePctPriorYear": 37.99,
"yoyPct": 86.3
},
{
"brand": "toyota",
"brandRaw": "Toyota",
"model": null,
"units": 1373,
"sharePct": 7.19,
"rank": 2,
"unitsPriorYear": 1621,
"sharePctPriorYear": 7.59,
"yoyPct": 84.7
}
],
"topModels": [
{
"brand": "skoda",
"brandRaw": "Škoda",
"model": "Octavia",
"units": 1574,
"sharePct": 8.24,
"rank": 1,
"unitsPriorYear": 1791,
"sharePctPriorYear": 8.38,
"yoyPct": 87.88
},
{
"brand": "skoda",
"brandRaw": "Škoda",
"model": "Karoq",
"units": 1070,
"sharePct": 5.6,
"rank": 2,
"unitsPriorYear": 1100,
"sharePctPriorYear": 5.15,
"yoyPct": 97.27
}
]
}404 No registration data loaded yet. Not recoverable by retrying: there is no such record or not enough data; tell the user.
{
"error": "no_data"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}Vehicle registryThe free VIN check against the official Czech registry.
GET /api/public/vehicle-check MCP tool check_vehicle_by_vin
Free vehicle history check by VIN
What the official Czech vehicle registry (Registr silničních vozidel) holds for a 17-character VIN: owner count and ownership timeline (companies named with IČO, private persons anonymous), STK inspection history with results, import origin, deregistration episodes, seized-document flags and technical data. The registry has NO mileage and NO licence-plate lookup. A VIN unknown to the monthly snapshot falls back to a rate-limited live lookup (10 per IP per day) without timelines; a VIN the Czech registry does not know answers found: false with the official foreign registries to try.
https://api.autosignal.eu/api/public/vehicle-check?vin=TMBJJ7NE4L0123456
| Parameter | In | Type | Description |
|---|---|---|---|
vin required | query | string | 17-character VIN without I, O or Q. e.g. TMBJJ7NE4L0123456 |
Responses
200 The report, or `found: false`.
{
"found": true,
"source": "dossier",
"dossier": {
"tech": {
"co2": "151 / 105 / 120",
"color": "ŠEDÁ",
"power": "74 / 6000",
"seats": "5 / 5 /",
"tires": "195/60 R15 88 H / 6,0JX15 ET37,5|195/60 R15 88 H / 6,0JX15 ET37,5|/ |/ |",
"fuelRaw": "BA",
"maxSpeed": 173,
"engineCcm": 998,
"weightMax": "1765/ 1765",
"wheelbase": "2489",
"dimensions": "4157/ 1764/ 1795",
"consumption": "6.7 / 4.6 / 5.3",
"factoryType": "/ JU2 / SFCD1L / 5BDAND",
"emissionClass": "EURO 6",
"weightOperating": "1280"
},
"brand": "FORD",
"model": "TOURNEO COURIER",
"owners": [
{
"to": "2026-07-27",
"from": "2016-12-20",
"role": "operator"
}
],
"status": "PROVOZOVANÉ",
"category": "M1",
"equipment": [
"TAŽNÉ ZAŘÍZENÍ"
],
"inspections": [
{
"to": "2020-12-20",
"from": "2016-12-20",
"type": "P",
"result": "A",
"station": "Administrativní omezení - nové vozidlo"
}
],
"ownersCount": 3,
"stkValidUntil": "2026-12-05",
"operatorsCount": 3,
"firstRegistration": "2016-12-20",
"yearOfManufacture": 2016,
"firstRegistrationCz": "2016-12-20",
"snapshotDate": "2026-10-03"
},
"listing": {
"id": "53c3e9aa-404f-4b2a-ab1a-63d8ba2a0a2e",
"dealId": "30c92e1b-dae0-4b74-ad06-2b340306d054",
"isDeal": true,
"priceDiffPct": 65.190216,
"title": "Ford Tourneo Courier, 1.0 EcoBoost 74 kW",
"brand": "Ford",
"model": "Tourneo Courier",
"year": 2016,
"priceCzk": 194900,
"currency": "CZK",
"mileageKm": 43669,
"fuel": "petrol",
"source": "sauto",
"url": "https://www.sauto.cz/osobni/detail/ford/tourneo-courier/210904563",
"imageUrl": "https://d19-a.sdn.cz/d_19/c_img_qE_A/kPVqmweP7JC1dLSCvVHc296k/cffa.jpeg",
"isActive": true,
"lastSeenAt": "2026-10-10T06:04:55.593Z",
"adCount": 3
}
}400 Not a valid 17-character VIN. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "invalid_vin"
}429 Live-lookup budget exhausted: `busy` (shared minute budget, retry after `retryAfterS`) or `daily_limit` (10 live lookups per IP per day). Snapshot hits are never limited this way.
{
"error": "busy",
"retryAfterS": 60
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}502 The live registry API did not answer. Recoverable: the upstream registry is down; retry after a minute or use the snapshot-only answer.
{
"error": "registry_unavailable"
}CompaniesRegistered fleets of Czech companies.
GET /api/public/firmy MCP tool search_company_fleets
Find Czech companies by name or IČO
Companies in the vehicle registry matching a name fragment (3+ characters, accent-insensitive) or an IČO (3–8 digits), with their fleet size now and ever, largest first (max 20). Sole traders are found only by exact IČO and are never named.
https://api.autosignal.eu/api/public/firmy?q=%C5%A0koFIN
| Parameter | In | Type | Description |
|---|---|---|---|
q required | query | string | Company name fragment (3+ chars) or IČO (3–8 digits). e.g. ŠkoFIN |
Responses
200 Matching companies.
{
"results": [
{
"ico": "26052083",
"name": "AUTOSALON KUDRNA CZ a.s.",
"ownerType": "AUTOSALON",
"vehiclesEver": 1502,
"vehiclesCurrent": 548
},
{
"ico": "26435713",
"name": "Autosalon Klokočka Centrum s.r.o.",
"ownerType": "FIRMA",
"vehiclesEver": 11982,
"vehiclesCurrent": 403
}
]
}400 Query shorter than 3 characters. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "query_too_short"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}GET /api/public/firmy/{ico} MCP tool get_company_fleet
A company's registered fleet profile
Vehicles owned and operated now and ever, median holding period, owner-type classification (dealer / leasing / company / sole trader), the paginated current fleet and former holdings, and the vehicles currently for sale on the market.
https://api.autosignal.eu/api/public/firmy/45805369
| Parameter | In | Type | Description |
|---|---|---|---|
ico required | path | string | Czech IČO, 1–8 digits (leading zeros optional). e.g. 45805369 |
flotila | query | integer | Page of the current fleet, 1-based (50 per page, max page 200). |
historie | query | integer | Page of the former holdings, 1-based (50 per page, max page 200). |
Responses
200 The profile.
{
"ico": "45805369",
"name": "ŠkoFIN s.r.o.",
"ownerType": "LEASING",
"vehiclesEver": 412873,
"vehiclesCurrent": 98210,
"operatedEver": 3918,
"operatedCurrent": 1204,
"medianHoldDays": 1187,
"snapshotDate": "2026-10-03",
"trackedVehicles": 2210,
"fleetTotal": 98210,
"fleetPage": 1,
"fleetPageSize": 50,
"formerTotal": 314663,
"formerPage": 1,
"formerPageSize": 50,
"fleet": [
{
"vin": "TMBJJ7NX5PY012345",
"brand": "ŠKODA",
"model": "OCTAVIA",
"year": 2023,
"firstRegistration": "2023-02-14",
"stkValidUntil": "2027-02-14",
"status": "PROVOZOVANÉ",
"role": "owner",
"since": "2023-02-14",
"tracked": true,
"forSale": false
}
],
"formerFleet": [
{
"vin": "TMBAG7NE3K0123456",
"brand": "ŠKODA",
"model": "SUPERB",
"year": 2019,
"status": "PROVOZOVANÉ",
"role": "owner",
"heldFrom": "2019-03-01",
"heldTo": "2022-04-12"
}
],
"forSale": [
{
"listingId": "3f0c2a8e-6b1d-4c57-9a0e-1d2b7c9e4f11",
"dealId": "8d4e1b2a-0c3f-4e6a-b5d7-2f9a1c8e6b30",
"brand": "Škoda",
"model": "Octavia",
"year": 2021,
"priceCzk": 399000,
"vin": "TMBJJ7NX5MY054321",
"priceDiffPct": 14,
"source": "sauto"
}
]
}400 IČO is not 1–8 digits. Not recoverable by retrying: fix the named parameter and send again.
{
"error": "invalid_ico"
}404 No company with that IČO in the registry. Not recoverable by retrying: there is no such record or not enough data; tell the user.
{
"error": "not_found"
}429 Too many requests from this IP. Recoverable: wait `retry-after` seconds, then retry the same request.
{
"statusCode": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded, retry in 1 minute"
}500 Unexpected server error. Recoverable: retry the same request once after a few seconds; if it fails again, report it.
{
"error": "Internal Server Error"
}