Vehicle data API · US · China · Korea

Global vehicle auction &
market data — one API.

Real-time salvage auctions and used-car catalogs across three markets. VIN, live bids, sale history, damage, EV specs and photos — clean JSON, served from the global edge with zero egress fees.

87K+🇺🇸 US Copart/IAAI lots
267K+🇨🇳 China used cars
182K+🇰🇷 Korea listings
2×/daydata refresh
10languages
$0egress fees
🌏

Asia data nobody else has

China (che168) & Korea (Encar) catalogs with EV specs and accident history — beyond the usual US-only auction APIs.

🔑

One key, three markets

US, China and Korea behind a single Bearer token. Clean, consistent JSON and a manifest/delta/full sync contract.

Edge-served, zero egress

Responses cached at the global edge. No per-GB egress fees — stream as much data as your product needs.

Overview

ApiCar gives you programmatic access to vehicle auction and marketplace data across three regions. Every response is JSON, authenticated with a single API key and cached at the global edge.

What you get

VIN, make/model/year, current bid, buy-now, sale date, damage, odometer, drivetrain, body, engine, EV specs (power, battery, range), CNY/USD pricing, accident & ownership history (Korea) and photo references.

Sync contract

manifest lists every lot, delta returns changes since the last version (new / updated / sold), full/{make} returns complete records. Version-hashed — mirror it efficiently.

Quickstart

Pass your key as a Bearer token. Here's the US manifest in three languages:

cURL
curl https://api-car.com/v1/us/manifest \
  -H "Authorization: Bearer ak_live_your_key"
JavaScript (fetch)
const res = await fetch("https://api-car.com/v1/us/manifest", {
  headers: { Authorization: "Bearer ak_live_your_key" }
});
const data = await res.json();
Python (requests)
import requests
r = requests.get("https://api-car.com/v1/us/manifest",
    headers={"Authorization": "Bearer ak_live_your_key"})
data = r.json()

Test connectivity first with the public health check (no key required):

curl https://api-car.com/v1/health
→ {"status":"ok","service":"apicar"}

Authentication

Every data endpoint requires an API key. Send it as a Bearer token, or as X-Api-Key:

Authorization: Bearer ak_live_your_key
# or
X-Api-Key: ak_live_your_key
SituationResponse
No key supplied401 missing_api_key
Unknown / disabled key401 invalid_api_key
Asia data on non-premium plan402 plan_upgrade_required

Keep your key server-side. Rotate anytime — contact us to issue or revoke keys.

Get an API key

Keys are issued per client with a plan attached. Start on Free to evaluate, or request a paid plan. Asia (China & Korea) requires a premium plan — see pricing.

Request a key →

Regions

RegionCodeCoverageAccess
United StatesusCopart / IAAI salvage lots — VIN, bid, sale date, damage, title, photosAll plans
ChinacnUsed catalog (che168) — EV specs, CNY pricing, photosPremium
KoreakrUsed listings (Encar) — VIN, accident & owner historyPremium

Asia (cn, kr) is our differentiator — data Western auction APIs don't carry. Gated to premium plans; requesting it on a non-premium key returns 402 plan_upgrade_required.

Endpoints

Base URL https://api-car.com/v1 · all GET · {region} = us | cn | kr.

GET/v1/health

Public service status. No key required.

GET/v1/{region}/manifest

Lightweight index of every lot — id, make, updated, bid, sale date. Poll for a full snapshot / to detect the current version.

curl https://api-car.com/v1/us/manifest -H "Authorization: Bearer ak_live_your_key"

 {
  "version": 42,
  "count": 87532,
  "lots": [ { "id":"55123456", "make":"TOYOTA", "year":2021, "bid":8200 } ]
}
GET/v1/{region}/delta

New / updated / sold lots since the previous version — incremental sync without re-pulling everything. Each entry carries a change flag.

GET/v1/{region}/brandscn · kr

Available makes for the region (China & Korea). Drives full/{make} pulls.

GET/v1/{region}/full/{MAKE}

Complete per-lot records for one make — 50+ fields (see Lot fields).

curl https://api-car.com/v1/cn/full/BYD -H "Authorization: Bearer ak_live_your_key"  # premium

Query parameters

ParamTypeDescription
langstringLocalize fields — en·ru·es·ar·zh·pt·fr·de·pl·uk (default en)

Response headers

HeaderMeaning
x-planPlan on the key
x-quota-remainingRequests left this month
x-localeResolved language

Lot fields

Each lot in a full/{make} response carries these fields (US example; China/Korea add EV specs and history):

FieldTypeDescription
lot_numberstringAuction lot id
vinstringVehicle identification number
make · model · model_detail · trimstringVehicle identity
yearnumberModel year
current_bid · buy_nownumberCurrent bid and buy-now price
sale_date · sale_time · sale_statusstringAuction schedule & status
primary_damage · secondary_damagestringDamage classification
odometer · odometer_brandnumber · stringMileage and its brand (actual/not actual)
drive · transmission · fuel_type · engine_type · cylindersstringPowertrain
body_style · color · car_keys · runs_drivesstringBody, color, keys, condition
sale_title_state · sale_title_typestringTitle info
location · location_state · location_countrystringYard location
currencystringPrice currency (USD / CNY)
photos · image_thumbnailsstringPhoto references
updated_atstringLast change timestamp

China adds EV specs (power_kw, battery_kwh, range_km) and factory data; Korea adds accident/owner history.

Localization

Localize catalog fields with ?lang= (or an Accept-Language header):

curl "https://api-car.com/v1/cn/manifest?lang=ru" -H "Authorization: Bearer ak_live_your_key"

Supported: en · ru · es · ar · zh · pt · fr · de · pl · uk. The resolved locale comes back in x-locale.

Rate limits & quotas

Each key has a per-minute rate limit and a monthly request quota set by its plan. Usage is reflected in response headers. Exceeding the rate → 429 rate_limit_exceeded; exceeding the monthly quota → 402 monthly_quota_exceeded.

Errors

Errors are JSON — {"error":"code"} — with the matching HTTP status.

StatusErrorWhen
401missing_api_keyNo key supplied
401invalid_api_keyKey unknown or disabled
402plan_upgrade_requiredAsia data on a non-premium plan
402monthly_quota_exceededMonthly quota reached
404unknown_regionRegion not us/cn/kr
404not_foundResource / make not available
429rate_limit_exceededPer-minute rate exceeded

Plans & pricing

Free

$0

Evaluate the API

  • 100 requests / mo
  • 5 req / min
  • US region

Pro

$149

Growing products

  • 50,000 requests / mo
  • 120 req / min
  • US + sale history

Asia Pro

$199+

China & Korea data

  • 50,000 requests / mo
  • China + Korea
  • accident/EV specs
PlanPriceRequests / moRateAsia
Free$01005 / min
Starter$4910,00060 / min
Pro$14950,000120 / min
Business$399200,000300 / min
Asia Pro$199+50,000120 / min
EnterpriseCustomUnlimitedCustom

Need a landed-cost add-on (import duties for BY/RU/KZ/PL) or bulk export? Talk to us.

Storefront

Launch a catalog site in seconds

Not a developer? ApiCar Storefront turns the same data into a ready-made, white-label catalog website on your own brand and domain — drive your traffic, we power the data. Multi-language out of the box.

Get a storefront →

FAQ

How fresh is the data?

Auction and catalog feeds refresh twice daily; delta lets you sync only what changed.

What makes ApiCar different?

Coverage of China and Korea markets alongside US salvage — data most auction APIs don't carry — behind one key, with zero egress fees.

Can I mirror the data?

Yes — the manifest/delta/full contract is designed for building and maintaining a local mirror efficiently.

Do you offer bulk / firehose export?

Enterprise plans include bulk export and custom SLAs. Contact us.