Source API · Che168 · China

# Che168 API for cars from China — as JSON, no scraper of your own

Che168 is Autohome's used-car marketplace: dealers all over China list their cars there. apiauto.space returns every Che168 listing in the same record as Encar, Copart and IAAI: the price in yuan and dollars, mileage, photos, city, gearbox, engine size and power, and every field of the source. Makes and models come under their official Latin names; no Chinese proxy needed.

- **Source**: che168.com · market=cn
- **Region**: China
- **Data**: Dealer listings, prices, photos, changes
- **Status**: Running · refreshed hourly

## What a Che168 record holds

The same keys in every market; on the right, the values of a real car from the catalog. What Che168 does not give comes as null, never a guess.

### Car

- `title` Year, make and model in one line `"2024 Jaguar XEL"`
- `brand` The official Latin name `"Jaguar"`
- `model` The model family, as in other markets `"XEL"`
- `trim` Che168's full version name `"Jaguar Xel 2024 2.0t 250ps R-Dyn…`
- `year` Model year `2024`
- `mileage_km` Mileage in kilometres `10000`

### Specs

- `fuel` Fuel, a canonical value `"gasoline"`
- `transmission` Gearbox `"automatic"`
- `engine_cc` Engine size, cc `1997`
- `body_type` Body `"sedan"`
- `color` Colour `"Green"`
- `raw.power_hp` Power, hp `250`
- `raw.drive` Drive: fwd, rwd, awd `"fwd"`

### Price

- `price` The dealer's price in yuan `126800.00 CNY`
- `price_usd` The same price in dollars `"18925.15"`
- `raw.fx.usd_per_unit` The ECB daily rate it was converted at `"0.1492519823"`

### Place and photos

- `location.city` The dealer's city `"Shenzhen"`
- `photo_count` As many photos as the dealer posted `9`
- `photos.0` A signed link, valid for about a day `"api.apiauto.space/img/che168:599…`
- `listing_url` The listing on che168.com `"www.che168.com/dealer/534107/599…`

### Che168 only · raw

- `raw.first_registration` First registration date `"2024-10-01"`
- `raw.imported` Imported or built in China `false`
- `raw.power_kw` Power, kW `184`
- `raw.che168_infoid` The listing number on Che168 `"59997083"`
- `raw.source_values.city` The original spelling of the city `"深圳 (Shenzhen)"`

### Not in Che168

- `vin` The source passes no VIN `null`
- `location.region` No province — the city only `null`
- `raw.seats` Seats only when the dealer gave them `null`

che168:59997083 2024 Jaguar XEL · 10,000 km

## Request and response

The four requests people usually start with. The key goes in the X-API-Key header; the answer is JSON.

A page of cars by filters and the next page's cursor

GET

`https://api.apiauto.space/v1/cars?market=cn&limit=2`

cURL:

```bash
curl -s "https://api.apiauto.space/v1/cars?market=cn&limit=2" \
  -H "X-API-Key: $APIAUTO_KEY"
```

JavaScript:

```js
const response = await fetch(
  "https://api.apiauto.space/v1/cars?market=cn&limit=2",
  { headers: { "X-API-Key": process.env.APIAUTO_KEY } },
);
if (!response.ok) throw new Error(`${response.status}: ${await response.text()}`);
const data = await response.json();
```

Python:

```python
import os
import httpx

data = httpx.get(
    "https://api.apiauto.space/v1/cars?market=cn&limit=2",
    headers={"X-API-Key": os.environ["APIAUTO_KEY"]},
    timeout=30,
).raise_for_status().json()
```

PHP:

```php
<?php
$ch = curl_init("https://api.apiauto.space/v1/cars?market=cn&limit=2");
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER => ["X-API-Key: " . getenv("APIAUTO_KEY")],
    CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
```

200 OK · sample response:

```json
{
  "items": [
    {
      "id": "che168:59997083",
      "market": "cn",
      "source": "che168",
      "source_id": "59997083",
      "title": "2024 Jaguar XEL",
      "brand": "Jaguar",
      "model": "XEL",
      "trim": "Jaguar Xel 2024 2.0t 250ps R-Dynamic S Aggressive Sports Version",
      "year": 2024,
      "mileage_km": 10000,
      "fuel": "gasoline",
      "transmission": "automatic",
      "engine_cc": 1997,
      "body_type": "sedan",
      "color": "Green",
      "vin": null,
      "price": {
        "amount": "126800.00",
        "currency": "CNY"
      },
      "price_usd": "18925.15",
      "location": {
        "country": "CN",
        "region": null,
        "city": "Shenzhen"
      },
      "photos": [
        "https://api.apiauto.space/img/che168:59997083/1.jpg?exp=…&sig=…",
        "https://api.apiauto.space/img/che168:59997083/2.jpg?exp=…&sig=…"
      ],
      "photo_count": 9,
      "listing_url": "https://www.che168.com/dealer/534107/59997083.html",
      "is_active": true,
      "first_seen_at": "2026-09-22T16:29:11.202005Z",
      "last_seen_at": "2026-09-22T16:29:11.202005Z",
      "disappeared_at": null,
      "updated_at": "2026-09-22T16:29:11.202005Z",
      "raw": {
        "fx": {
          "date": "2026-09-22",
          "source": "ECB",
          "currency": "CNY",
          "usd_per_unit": "0.1492519823"
        },
        "drive": "fwd",
        "seats": null,
        "imported": false,
        "power_hp": 250,
        "power_kw": 184,
        "image_count": 9,
        "che168_infoid": "59997083",
        "source_values": {
          "city": "深圳 (Shenzhen)",
          "fuel": "Gasoline",
          "brand": "Jaguar",
          "drive": "Front Wheel Drive",
          "model": "Jaguar Xel",
          "body_type": "Sedan",
          "transmission": "Automatic"
        },
        "first_registration": "2024-10-01"
      },
      "source_mode": "replica"
    },
    {
      "id": "che168:59997082",
      "market": "cn",
      "source": "che168",
      "source_id": "59997082",
      "title": "2024 Audi Q5L",
      "brand": "Audi",
      "model": "Q5L",
      "trim": "Audi Q5l 2024 40 Tfsi Fashionable And Dynamic",
      "year": 2024,
      "mileage_km": 23900,
      "fuel": "gasoline",
      "transmission": "automatic",
      "engine_cc": 1984,
      "body_type": "suv",
      "color": "White",
      "vin": null,
      "price": {
        "amount": "189800.00",
        "currency": "CNY"
      },
      "price_usd": "28328.03",
      "location": {
        "country": "CN",
        "region": null,
        "city": "Xi'an"
      },
      "photos": [
        "https://api.apiauto.space/img/che168:59997082/1.jpg?exp=…&sig=…",
        "https://api.apiauto.space/img/che168:59997082/2.jpg?exp=…&sig=…"
      ],
      "photo_count": 9,
      "listing_url": "https://www.che168.com/dealer/662578/59997082.html",
      "is_active": true,
      "first_seen_at": "2026-09-22T16:29:11.202005Z",
      "last_seen_at": "2026-09-22T16:29:11.202005Z",
      "disappeared_at": null,
      "updated_at": "2026-09-22T16:29:11.202005Z",
      "raw": {
        "fx": {
          "date": "2026-09-22",
          "source": "ECB",
          "currency": "CNY",
          "usd_per_unit": "0.1492519823"
        },
        "drive": "awd",
        "seats": null,
        "imported": false,
        "power_hp": 190,
        "power_kw": 140,
        "image_count": 9,
        "che168_infoid": "59997082",
        "source_values": {
          "city": "西安 (Xi'an)",
          "fuel": "Gasoline",
          "brand": "Audi",
          "drive": "All Wheel Drive",
          "model": "Audi Q5l",
          "body_type": "SUV",
          "transmission": "Automatic"
        },
        "first_registration": "2024-01-01"
      },
      "source_mode": "replica"
    }
  ],
  "next_cursor": "…",
  "count": null
}
```

The cars in the responses are real, from the catalog when the site was built; photos are cut to two and event ids are made up.

## Build a request

Pick filters and the address and code build themselves. The market is fixed: market=cn returns Che168 cars only.

GET

`https://api.apiauto.space/v1/cars?market=cn&brand=Mercedes-Benz&limit=20`

cURL:

```bash
curl -s "https://api.apiauto.space/v1/cars?market=cn&brand=Mercedes-Benz&limit=20" \
  -H "X-API-Key: $APIAUTO_KEY"
```

JavaScript:

```js
const response = await fetch(
  "https://api.apiauto.space/v1/cars?market=cn&brand=Mercedes-Benz&limit=20",
  { headers: { "X-API-Key": process.env.APIAUTO_KEY } },
);
if (!response.ok) throw new Error(`${response.status}: ${await response.text()}`);
const data = await response.json();
```

Python:

```python
import os
import httpx

data = httpx.get(
    "https://api.apiauto.space/v1/cars?market=cn&brand=Mercedes-Benz&limit=20",
    headers={"X-API-Key": os.environ["APIAUTO_KEY"]},
    timeout=30,
).raise_for_status().json()
```

PHP:

```php
<?php
$ch = curl_init("https://api.apiauto.space/v1/cars?market=cn&brand=Mercedes-Benz&limit=20");
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER => ["X-API-Key: " . getenv("APIAUTO_KEY")],
    CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
```

## Use cases

1. **A catalog on an importer's site** — 01 A catalog on an importer's siteChe168 cars with photos, specs and dollar prices on your site; once an hour, pick up new and removed cars from the change feed. Method`GET /v1/cars · /v1/changes`
2. **Search for a client** — 02 Search for a clientA manager searches by make, year, mileage and budget and sends the client photos, power and the listing link. Method`GET /v1/cars?brand=…&year_min=…`
3. **Tracking dealer prices** — 03 Tracking dealer pricesThe price_drop feed shows which cars got cheaper since the last poll, with a percentage threshold. Method`GET /v1/changes?type=price_drop`
4. **A car-finder Telegram bot** — 04 A car-finder Telegram botThe bot sends a client fresh cars from China for their filter on its own: new arrivals come as added events. Method`GET /v1/changes?type=added`

## About the source

What only Che168 has, which makes the catalog holds and where the data's limits are.

### Che168 fields in raw

| Field | Meaning |
| --- | --- |
| `drive` | Drive: fwd, rwd, awd. |
| `power_hp`, `power_kw` | Power in hp and kW. |
| `first_registration` | First registration date. |
| `imported` | Imported or built in China. |
| `seats` | Seat count, when the dealer gave it. |
| `image_count`, `che168_infoid` | Photo count and the Che168 listing number. |
| `source_values` | Original spellings of make, model, city, fuel, drive, body and gearbox. |
| `fx` | The rate behind `price_usd`. |

### Che168 makes in the catalog

The most frequent makes in the catalog; the `brand` parameter finds them in this spelling, ignoring case, spaces and hyphens.

| Make | Cars in the catalog |
| --- | --- |
| Mercedes-Benz | 20,012 |
| Volkswagen | 19,083 |
| BMW | 17,694 |
| Audi | 13,216 |
| Toyota | 11,720 |
| Honda | 7,861 |
| BYD | 7,812 |
| Buick | 6,983 |
| Porsche | 5,879 |
| Tesla | 5,859 |
| Land Rover | 5,171 |
| Geely | 5,025 |

The full list with car counts is `GET /v1/references/brands?market=cn`. References are free and never touch the quota.

### New cars and price changes

The feed `GET /v1/changes?market=cn&since=…` returns new cars, cars taken off sale and dealer price changes above a percentage threshold — with Pro, Max and the demo. Each event costs one record.

### Che168 data boundaries

- No car has a VIN: the source does not send it.
- The price is the dealer's listed price in yuan; delivery and customs are yours to add.
- Che168 only: Dongchedi, Guazi and other Chinese platforms are not in the API.
- Cars taken off sale stay in the API for 14 more days with `is_active=false` .
- The age of the copy comes in the `X-Data-Age-Seconds` header of every answer.

### Your own Che168 scraper or an API

A Che168 scraper also means translating Chinese make and model names, storing dozens of photos per car and fixing it after site changes. [A scraper or a ready API — compared point by point](https://apiauto.space/en/parser-vs-api/).

## Frequently asked questions

### 01Is this the official Che168 API?

No. apiauto.space is not affiliated with Che168 or Autohome. We keep a copy of the catalog and serve it in our own single format through our API.

### 02Why do Chinese cars have no VIN?

Che168 does not send it. The vin field is null: we never guess values. Everything the source gave stays in raw.

### 03How are Chinese names translated?

Makes and models are mapped to official Latin names (e.g. AION Y, Volkswagen Lavida) instead of word-by-word translations; the original spellings stay in raw.source_values.

### 04Do I need a Chinese proxy?

No. Requests go to our API, not to Che168, and photos are served by our server too.

### 05Are Dongchedi, Guazi or other Chinese platforms included?

No, Che168 is the only Chinese source in the API.

### 06How much does the Che168 API cost?

The Start plan is $59 a month for one market, e.g. China only: 100,000 cars a month. The quota counts cars returned, not requests. The demo is one day and 100 requests, free.

## Other APIs and guides

- [Source API **Encar API**](https://apiauto.space/en/encar-api/)
- [Source API **Copart API**](https://apiauto.space/en/copart-api/)
- [Source API **IAAI API**](https://apiauto.space/en/iaai-api/)
- [Guide **A used-car catalog for an importer's site**](https://apiauto.space/en/importers/)
- [Developers **Documentation**](https://apiauto.space/en/docs/)

## Get a Che168 test key

- One day and 100 requests free, no card
- All three markets and the change feed: compare China with Korea and the USA
- The key arrives in Telegram within a minute — no forms, no calls

---

Page: https://apiauto.space/en/che168-api/
