Sources & site slugs
The site slug vocabulary, what each source publishes, and why the classifieds network is not one of them.
A site slug identifies which auction source a listing came from. It is the value you pass to /api/search?site=, the first path segment of /api/auction/{site}/{id}, the site parameter of /api/car-details, and the site_name fee-model selector on the import calculator.
| Slug | Upstream | Origin | Inventory | Detail payloads |
|---|---|---|---|---|
auto1 | Auto1 (EU) | Per-listing | Live auctions | Full + normalized vehicle_details |
openlane | OpenLane (EU) | Per-listing | Live auctions | Full + normalized vehicle_details |
ecarstrade | eCarsTrade (EU) | Per-listing | Live auctions | Full + normalized vehicle_details |
schadeautos | Schadeautos (NL) | NL | Live listings | Full |
copart | Copart Germany | DE | Live auctions | Full |
encar | Encar (South Korea) | KR | Live cash listings | Stored specs, options and available condition data |
kbchachacha | KB ChaChaCha (South Korea) | KR | Live cash listings | Stored specs plus optional kb_diagnosis / kb_inspection |
japan | Japanese auction and dealer reseller feeds | JP | Current and historical imports | Stored import only; no /api/car-details fetcher |
KB ChaChaCha and Encar
Both Korean sources are published through /api/search with origin KR. KB uses site=kbchachacha and a numeric carSeq for /api/car-details. Translated specifications, equipment and gallery data depend on successful ingestion. Korean lease, excluded and duplicate offers are filtered by the publishing pipeline, so source totals are not the sum of upstream website counts.
KB detail may contain vehicle_details.kb_diagnosis and vehicle_details.kb_inspection. Each report carries status (available or unavailable), rows, checked_controls, panel_marks, images, documents and vin where collected. An unavailable report is not a promise that another request will produce one. Japan and KB do not support the live bidding overlay.
Cross-source duplicate resolution
The same Korean car is frequently listed on both marketplaces, at two different asking prices and with two different photo sets. Listings are grouped when they share a valid VIN, or a corroborated licence plate together with make and model. Matching specifications alone never establish identity — forty identically specified Sonatas are forty cars. One listing in a group is published as the representative and the rest are hidden from search, which is why Korean source totals are not the sum of the two upstream websites.
With the korea_merge field grant, a reconciled detail response carries the evidence. source_comparison.offers lists every listing for that car with its site, auction id, asking price in EUR, its own offer_link and whether it is currently eligible; selected names the one published; spread_eur is the difference between the highest and lowest eligible price; match_method is vin or plate_make_model; and image_source names the listing the gallery was taken from — photo sets from two listings are never interleaved. A hidden duplicate carries canonical_offer pointing at the representative. Source rows and prices remain authoritative; nothing upstream is rewritten.
Coverage and refresh timing
This source list was reviewed against the implementation on 2026-09-20. /api/sites is the authority for deployed inventory visible to your key. A source listed here is an implemented integration, not a guarantee that a given deployment has completed its first import. Read listing timestamps and data_updated_at; source refreshes and detail enrichment run separately. The classifieds country and portal figures are a 2026-08-18 snapshot, not live counts.
eCarsTrade
eCarsTrade behaves like every other source — there is no special code path and no separate endpoint. It is a valid value everywhere a source is accepted:
GET /api/search?site=ecarstrade
GET /api/auction/ecarstrade/{auction_id}
GET /api/auction/ecarstrade/{auction_id}/price-history
GET /api/auction-images/ecarstrade/{auction_id}
GET /api/car-details?site=ecarstrade&id={id}
POST /api/calculator/calculate { "site_name": "ecarstrade", "price": 12000, "origin": "BE", "destination": "BG" }The one source-specific detail worth knowing: an eCarsTrade gallery arrives under the ImageUrls key of car_identification on the auction detail payload. You do not normally need it — /api/auction-images/ecarstrade/{id} returns the same gallery already ordered, vaulted and CDN-served with served_url, width and height, and the identical body rides on the detail response as vault_gallery. Reach for the raw key only when you want exactly what the source published.
Japanese auctions
The current Japanese feed uses site=japan. Search and stored auction detail expose imported auction and dealer offers, with originating reseller evidence under car_identification.JapanOffers when present. Use auction_id_str verbatim: the numeric identifier can exceed JavaScript precision. There is no Japan detail fetcher, so /api/car-details rejects this source. Do not use the retired website example slug japanauction; discover deployed source names through /api/sites.
Auction houses
Japanese lots come from 127 auction houses run by 24 operators. Each result names its house in auction_house, in the slug form below, and the same slug filters search: ?auction_house=uss_tokyo,honda_kansai. Matching is by whole words, so uss selects every USS branch and kobe every Kobe house. Fixed-price dealer stock from Ippatsu, Kyouyuu, GAO and others is still being imported and is not listed yet.
| Operator | Houses | auction_house values |
|---|---|---|
| USS | 18 | uss_tokyo, uss_nagoya, uss_haa_kobe, uss_yokohama, uss_sapporo, uss_kyushu, uss_nagoya_hokuriku, uss_osaka, uss_kobe, uss_jaa, uss_tohoku, uss_r_nagoya, uss_niigata, uss_shizuoka, uss_okayama, uss_gunma, uss_saitama, uss_fukuoka |
| JU | 32 | ju_aichi, ju_gifu, ju_miyagi, ju_fukuoka, ju_saitama, ju_chiba, ju_fukushima, ju_niigata, ju_tokyo, ju_hiroshima, ju_hokkaido, ju_mie, ju_gunma, ju_kanagawa, ju_shizuoka, ju_ibaraki, ju_okinawa, ju_tochigi, ju_ishikawa, ju_toyama, ju_yamaguchi, ju_oita, ju_nara, ju_nagano, ju_kumamoto, ju_fukui, ju_nagasaki, ju_shimane, ju_yamagata, ju_aomori, ju_miyazaki, ju_yamanashi |
| TAA | 11 | taa_yokohama, taa_chubu, taa_kantou, taa_kinki, taa_kyushu, taa_hiroshima, taa_touhoku, taa_hyogo, taa_shikoku, taa_hokkaido, taa_minamikyu |
| CAA | 4 | caa_chubu, caa_tokyo, caa_gifu, caa_touhoku |
| ARAI | 5 | arai_oyama_vt, arai_bayside, arai_sendai, arai_kenki, arai_oyama |
| MIRIVE | 3 | mirive_saitama, mirive_aichi, mirive_osaka |
| Honda | 6 | honda_tokyo, honda_kansai, honda_nagoya, honda_sendai, honda_kyushu, honda_hokkaido |
| KCAA | 4 | kcaa_fukuoka, kcaa_m_kyushu, kcaa_yamaguchi, kcaa_kyoto |
| LAA | 2 | laa_okayama, laa_shikoku |
| NAA | 4 | naa_nagoya, naa_osaka, naa_tokyo, naa_fukuoka |
| Isuzu | 3 | isuzu_kobe, isuzu_tokyo, isuzu_kyushu |
| IAA | 1 | iaa_osaka |
| ORIX | 4 | orix_kobe, orix_atsugi, orix_fukuoka, orix_sendai |
| BAYAUC | 1 | bayauc |
| LUM | 5 | lum_tokyo, lum_kobe, lum_fukuoka, lum_nagoya, lum_sapporo |
| HERO | 1 | hero |
| ZIP | 2 | zip_osaka, zip_tokyo |
| SAA | 2 | saa_sapporo, saa_hamamatsu |
| AUCNET | 1 | aucnet |
| NPS | 7 | nps_osaka, nps_tokyo, nps_fukuoka, nps_chubu, nps_sendai, nps_tochigi, nps_tomakomai |
| ZERO | 6 | zero_syonan, zero_chiba, zero_osaka, zero_hakata, zero_sendai, zero_hokkaido |
| Nissan | 1 | nissan_osaka |
| SOGO | 3 | sogo_narita3, sogo_internet, sogo_narita1 |
| AEP | 1 | aep_gifu |
Not a source: the European classifieds network
The classifieds network is retail market-reference data, not auction inventory: 9,808,689 live listings gathered from 681 origin portals across 39 European countries. It is never merged into the auction feed, and is deliberately a light dataset — no detail fetch, no image vault, no per-listing detail payload. It therefore never appears in /api/sites and is not a valid site value; passing it returns 400. Query it through its own /api/classifieds/* endpoints under the classifieds scope — that slug is the scope name, not a source name.
| Auction sources | Classifieds network | |
|---|---|---|
| Queried through | /api/search?site=… | /api/classifieds/listings |
| Scope | search, auctions, details | classifieds |
| Price meaning | Bid / buy-now / public EUR | Retail asking price |
| Bidding & end date | Source-dependent; Korean marketplaces are cash listings | No |
| Detail payload | Full, source-aware | None — the listing row is the whole record |
| Images | Vaulted CDN gallery | One remote thumbnail, hotlinked |
Appears in /api/sites | Yes | No |