Skip to main content

EnCarAPI: Python client for Korean and Chinese used car data

Official Python client for EnCarAPI, the REST Encar API and Korean Car API. One package for:

  • Korea: Encar.com, KB Chachacha (source="kbc") and K Car (source="kcar"), with photos, specs, options, inspection reports, accident and ownership records, condition reports, price history, a change feed and full catalog export.
  • China: Dongchedi and Che168 in English via ChinaCarAPI (separate key or the China add-on for EnCarAPI keys).

Built for car exporters, dealers and marketplaces that need reliable used car data without scraping, proxies or geo-blocks.

An API key is required. The data is a paid service. Get a key (5-day trial) at encarapi.com.

Install

pip install encarapi

Requires Python 3.8+ and requests.

Quick start

from encarapi import EnCarAPI

client = EnCarAPI("YOUR_API_KEY")  # or set ENCARAPI_KEY

# Search Korean listings with flat English filters
cars = client.korea.catalog(
    manufacturer="Hyundai",
    max_mileage=60000,
    frame_clean=True,   # accident-free chassis only
    lang="en",
    count=True,
)
print(cars["Count"], cars["SearchResults"][0])

# Full detail, inspection report and insurance record for one car
detail = client.korea.vehicle("12345678")
inspection = client.korea.inspection("12345678")
record = client.korea.record("12345678")

# KB Chachacha and K Car listings, or all three marketplaces deduplicated
kbc = client.korea.catalog(source="kbc", limit=20)
everything = client.korea.catalog(source="all", count=True)

# Chinese listings (Dongchedi + Che168)
byd = client.china.catalog(make="BYD", export_ready=True, limit=25)

Keep a local copy in sync (Business / Scale)

csv_text = client.korea.export_csv()          # 1) baseline

for change in client.korea.iterate_changes(cursor=saved_cursor or 0):   # 2) deltas
    # change["type"]: "added" | "updated" | "reappeared" | "removed"
    ...
save_cursor(client.korea.last_cursor)

Korea API (client.korea)

Method Endpoint Notes
catalog(**params) GET /api/catalog Search & list. source: encar (default), kbc, kcar, all
iterate_catalog(**params) GET /api/catalog Generator over all pages
leasing(**params) GET /api/catalog/leasing Lease takeovers and rentals
nav(**params) GET /api/nav Filter facets with counts
enums(**params) GET /api/enums Valid values for the flat filters
model_search(search, **params) GET /api/model-search Model autocomplete
vehicle(id) GET /api/vehicle/{id} Ids: Encar id, kbc:<id>, kcar:<id>
inspection(id) GET /api/inspection/{id} Official inspection report
record(id) GET /api/record/{id} Accident & ownership record
refresh(id) POST /api/vehicle/{id}/refresh On-demand refresh (daily quota)
price_check(id) GET /api/price-check/{id} Market estimate (beta, Scale)
bulk_vehicles(ids) / bulk_inspections(ids) / bulk_records(ids) POST /api/.../bulk Up to 500 ids (Business/Scale)
inspection_versions(id) / record_versions(id) GET /api/.../versions Report history (Business/Scale)
changes(**params) / iterate_changes(**params) GET /api/catalog/changes Incremental sync (Business/Scale)
export_csv() GET /api/catalog/export Full catalog CSV (Business/Scale)
makes_csv() / models_csv() / badges_csv() GET /api/taxonomy/*.csv Reference data

China API (client.china)

Method Endpoint Notes
catalog(**params) GET /api/catalog make, price_min/max (CNY), export_ready, sort, ...
vehicle(id) GET /api/vehicle/{id} Price history, photos, seller, export status
inspection(id) GET /api/inspection/{id} Accident, flood and fire checks, EV battery data
bulk_vehicles(ids) POST /api/vehicle/bulk Up to 500 ids
changes(**params) GET /api/catalog/changes Change feed
export_csv() GET /api/catalog/export Full catalog CSV
enums() / models(make) GET /api/enums, /api/models Filter values, models per make

China only? from encarapi import ChinaCarAPI (also available as the chinacarapi package).

Errors

Every failed request raises EnCarAPIError with status and the raw body. A 403 on a plan-gated endpoint includes an upgrade hint from the API.

from encarapi import EnCarAPIError

try:
    client.korea.changes(cursor=0)
except EnCarAPIError as e:
    if e.status == 403:
        print("Plan does not include this endpoint:", e.body)

EnCarAPI is an independent service and not affiliated with Encar, KB Chachacha, K Car, Dongchedi or Che168.

License

MIT

Metadata

Release files for encarapi 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for encarapi 1.0.0
File Size Uploaded
encarapi-1.0.0.tar.gz 9.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for encarapi 1.0.0
File Interpreter ABI Platform
encarapi-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 17.7 kB

Release files / encarapi-1.0.0.tar.gz

Download URL encarapi-1.0.0.tar.gz
Size 9.0 kB
Tags Source
SHA-256 checksum
How to use checksums
bd92008bb015174004b95726597cd07388ad766f6fa5a4ee3d34e5c20c58de2c
BLAKE2b-256 checksum
How to use checksums
17f2433579ebb63beaa52d7ae3b7e0ade983b1f69d1797cc50f135d8792d1589
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / encarapi-1.0.0-py3-none-any.whl

Download URL encarapi-1.0.0-py3-none-any.whl
Size 8.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ad183882a8643021a2f7ff79f047537ab052b0c373fad1a8a2e49deab748e194
BLAKE2b-256 checksum
How to use checksums
bad02f74c56e0cfd2dfe71ff63c4ddce0311a5be2b801cae677a5ad3213cdfc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

1.1.1

2 release files

1.1.0

2 release files

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page