# Carvak — Turkey used cars with expertise report, damage records and price

> Search the used cars Carvak (formerly Araba Sepeti / garajsepeti) sells from its own stock in Turkey (İstanbul and Adana branches) by make, model, free text, city, fuel, gearbox, body type, colour, driven wheels, availability, price, model year and mileage, in Carvak's seven sort orders. Returns the source's own total, 30 cars per page with the price the card prints (and the pre-discount price on discounted cars), mileage, city, reservation status and photo. All parameters are optional: no parameter = the whole stock (119 cars on 2026-10-07).
> ReefAPI engine `carvak` · 3 endpoints · clean JSON, no scraping or browsers to manage.

## How to call
- **Endpoint:** `POST https://api.reefapi.com/carvak/v1/<action>` with a JSON body.
- **Auth:** header `x-api-key: <YOUR_REEFAPI_KEY>` — create one free (1,000 credits, no card): https://reefapi.com/signup
- **Response (every call):** `{ ok: boolean, data: ..., meta: { record_count, credits, ... }, error: { code, message } }` — branch on `ok`. Failed calls are free except verified SHEIN NOT_FOUND on product/detail and price (4 credits).
- **One key + one shared credit pool** across every ReefAPI API. Per-call credits are listed on each endpoint below.
- **Use it from an AI agent (MCP):** connect `https://api.reefapi.com/mcp` (remote streamable-http). Send the key as `Authorization: Bearer <key>`, or put it in the URL (`?key=<key>`) when the client has no header field, as ChatGPT does.

## Endpoints

### POST https://api.reefapi.com/carvak/v1/search — 2 credits
Search the used cars Carvak (formerly Araba Sepeti / garajsepeti) sells from its own stock in Turkey (İstanbul and Adana branches) by make, model, free text, city, fuel, gearbox, body type, colour, driven wheels, availability, price, model year and mileage, in Carvak's seven sort orders. Returns the source's own total, 30 cars per page with the price the card prints (and the pre-discount price on discounted cars), mileage, city, reservation status and photo. All parameters are optional: no parameter = the whole stock (119 cars on 2026-10-07).

**Parameters:**
- `make` (string, optional) — Make slug as Carvak writes it (lower case): hyundai, toyota, bmw, skoda, opel, renault, mercedes_benz, togg… Comma-separate several. Action `makes` lists the makes in stock with their model slugs. Measured: hyundai = 6 of 119 cars. An unknown slug returns an empty result with a warning.
- `model` (string, optional) — Model slug under `make` (e.g. tucson, x1, 1_serisi, c-hr); comma-separate several. Needs `make`. Measured: hyundai/tucson = 3 cars.
- `query` (string, optional) — Free text matched by Carvak's own search (make, model or trim words). Measured: `bmw` = 11 cars.
- `city` (enum, optional) — City of the Carvak branch holding the car. Measured: istanbul 113, adana 6 of 119. [one of: istanbul, adana]
- `fuel` (enum, optional) — Fuel type (comma-separate several). Measured: diesel 28 of 119. [one of: petrol, diesel, hybrid, electric]
- `transmission` (enum, optional) — Gearbox. Measured: manual 8 of 119. [one of: automatic, manual]
- `body_type` (enum, optional) — Body type (comma-separate several). Measured: suv 52 of 119. [one of: suv, hatchback, sedan, crossover, panel_van, mpv, minivan]
- `color` (enum, optional) — Exterior colour (comma-separate several). Measured: white 25 of 119. [one of: white, grey, blue, silver, smoke_grey, black, red, green, navy, orange, beige, turquoise]
- `drive` (enum, optional) — Driven wheels. Measured: front 99 of 119. [one of: front, rear, 4x4, 4x2]
- `status` (enum, optional) — Only cars on sale (`available`, 111 of 119) or cars another buyer has reserved (`reserved`, 8 of 119). [one of: available, reserved]
- `price_min` (integer, optional) — Lowest price, TRY. Carvak applies it to the pre-discount price: a discounted car (on_sale) whose pre-discount price is inside the range is returned even if its sale price is below it.
- `price_max` (integer, optional) — Highest price, TRY, applied by Carvak to the pre-discount price (see price_min).
- `year_min` (integer, optional) — Oldest model year.
- `year_max` (integer, optional) — Newest model year.
- `mileage_min` (integer, optional) — Lowest odometer reading, km.
- `mileage_max` (integer, optional) — Highest odometer reading, km.
- `sort` (enum, optional, default "newest_listing") — Order of the results (Carvak's own seven). [one of: newest_listing, price_asc, price_desc, year_desc, year_asc, mileage_asc, mileage_desc]
- `page` (integer, optional, default 1) — Page number; 30 cars per page. `summary.last_page` and `summary.has_more` come from the source's own total. A page past the last returns no rows (the source never repeats a page).

**Returns:** `{rows[], summary{total_results, page, rows_per_page, last_page, has_more, past_last_page, reserved_on_page, filters_applied}}`. Each row: id (the value `detail` takes as `id`), url, title, make, model, trim, year, price_try (the price the card prints: the discounted price when the car is on sale), price_before_discount_try + discount_try + on_sale, price_as_printed_try + price_mismatch (the card's own printed string as a second witness), mileage_km, transmission, color, city (+ city_as_published), status (available/reserved), reserved, badges[], seller {name: Carvak, type}, photo_url.

**Example request body:**
```json
{
  "make": "toyota",
  "sort": "price_asc"
}
```

### POST https://api.reefapi.com/carvak/v1/detail — 2 credits
One Carvak car by its `id` (from a search row) or URL: price (with the pre-discount price and the schema.org price as second witness), mileage, fuel, gearbox, body, driven wheels, power, engine size, generation, doors, colours and equipment (rims, seats, sunroof, mirrors), the expertise report (25 body panels: original, painted, locally painted or replaced), the insurance damage records with date, type and repair amount, cosmetic-detail photos, all photos, Carvak's own description, the branch with address and coordinates, and similar cars.

**Parameters:**
- `id` (string, optional) — Carvak stock id from a search row (`id`), e.g. 541164. Either `id` or `url` is required.
- `url` (string, optional) — Alternative to `id`: a carvak.com vehicle URL (it carries ?id=<stock id>).

**Returns:** One car: id, url, title, make, model, trim, year, price_try, price_before_discount_try, discount_try, on_sale, price_as_printed_try, price_mismatch, ld_price_try, ld_price_mismatch, ld_availability, mileage_km, fuel, transmission, body_type, drive, power_hp, engine_litres, generation, doors, color, equipment{interior_color, rim_type, window_type, mirror_type, seat_material, sunroof, headlight_type}, status, status_as_published, reserved, city, seller{name, type, branch, branch_id, address, latitude, longitude}, expertise{body_panels[]{part_code, part, condition, condition_tr, condition_as_published}, summary{panels_checked, original, painted, locally_painted, replaced, unknown}, damage_records[]{date, type, repair_amount_try, …}, damage_record_count, cosmetic_detail_photos[]{url, side, kind}}, description_title, description, photo_count, photos[], similar_ids[].

**Example request body:**
```json
{
  "url": "https://carvak.com/tr/ikinci-el/hyundai-tucson-16_t_gdi_hibrit_elite_plus-suv-2024?id=541164"
}
```

### POST https://api.reefapi.com/carvak/v1/makes — 2 credits
The makes Carvak has in stock right now with each make's model slugs (the values `search` takes as `make` and `model`), the cities and branches, the model years, and the fuel, gearbox, body, colour, drive, status and sort vocabularies.

**Parameters:** none

**Returns:** `{makes[]{slug, name, models[]{slug, name}}, total_cars, cities[]{slug, name, branches[]}, years[], fuels[], transmissions[], body_types[], colors[], drives[], statuses[], sorts[]}`.

## At scale
- **Volume:** 5M+ requests a day, measured at 60 requests a second across the fleet with no
  central bottleneck. Per-key limits are raised for high-volume accounts; volume pricing on request.
- **Missing a source:** tell us a site we do not cover and it becomes an engine. A customer asked
  for bestprice.gr on 21 Sep 2026 and it was in the catalog on 22 Sep.
- **Support:** 2 minute median time from a question in the live chat to the first answer. Setup
  help included, no support tier to buy.
- **One key, one credit pool** across every API. No per-site plans, no separate subscriptions.

## More
- Try it live, no code: https://reefapi.com/playground?engine=carvak
- Human docs page: https://reefapi.com/docs/carvak
- Overview page: https://reefapi.com/carvak-api
- Every ReefAPI API in one file (for your AI): https://reefapi.com/llms-full.txt
