I Built 3 APIs for Turkey’s Used-Car Market with Apify

Published: (April 6, 2026 at 04:37 AM EDT)
5 min read
Source: Dev.to

Source: Dev.to

Turkey’s Used‑Car Market – API Suite

Turkey’s used‑car market is massive, fragmented, and surprisingly hard to work with if you want structured data.

  • Listings live across many marketplaces.
  • Dealer pages are inconsistent.
  • Prices change fast.
  • Simple questions like “What is this car worth?” or “Which dealers dominate Istanbul for this brand?” are harder than they should be.

Solution

I built three focused APIs on top of Apify to solve different layers of the problem:

APIPrimary Source(s)Target Users
Arabam.com Vehicle Scraper APIArabamDevelopers, analysts, insurers, lenders, marketplaces, automotive businesses
Turkish Auto Price Tracker APIArabam + SahibindenSame as above – anyone needing valuation data
Turkish Auto Dealer Intelligence APIArabam + SahibindenSame as above – anyone needing dealer‑level intelligence

All three are built for developers who need clean Turkish vehicle data instead of brittle scraping scripts.

1. Arabam.com Vehicle Scraper API

Purpose: Raw data layer – extracts structured used‑car listings from Arabam.com.

Returned fields (example):

{
  "listingId": "38718353",
  "title": "Galeriden Volkswagen Passat 1.6 TDi BlueMotion Business 2020 Model Mersin 124.000 km Füme",
  "make": "Volkswagen",
  "model": "Passat",
  "year": 2020,
  "price": {
    "amount": 2025000,
    "currency": "TRY"
  },
  "mileage": 124000,
  "fuelType": "dizel",
  "transmission": "yarı_otomatik",
  "city": "Yüksek Mh. Erdemli, Mersin",
  "sellerType": "galeri",
  "url": "https://www.arabam.com/ilan/..."
}

Typical use cases

  • Building your own vehicle‑marketplace dataset.
  • Monitoring listing supply for a specific make/model.
  • Collecting comparable sales for downstream analysis.
  • Feeding machine‑learning or BI pipelines.

Example request

{
  "searchUrls": [
    "https://www.arabam.com/ikinci-el/otomobil/volkswagen-passat"
  ],
  "maxListings": 5,
  "scrapeDetails": true
}

If you need listing‑level data, this is the API to start with.

2. Turkish Auto Price Tracker API

Purpose: Decision layer – turns raw listings into valuation signals.

The API searches Arabam and Sahibinden based on the vehicle spec you provide and returns:

  • Listing‑level price records.
  • Median, average, min, max, and percentile prices.
  • Seller‑type breakdown.
  • Mileage‑bucket analysis.

Example request

{
  "vehicles": [
    {
      "make": "Volkswagen",
      "model": "Passat",
      "yearMin": 2018,
      "yearMax": 2022,
      "fuelType": "dizel"
    }
  ],
  "platforms": ["arabam"],
  "maxListingsPerPlatform": 10
}

Example response (summary record)

{
  "type": "PRICE_SUMMARY",
  "totalListingsUsed": 10,
  "overall": {
    "averagePrice": 1839438,
    "medianPrice": 1795750,
    "minPrice": 1525000,
    "maxPrice": 2169000
  }
}

Typical questions this API answers

  • What is a 2020 diesel Passat actually worth today?
  • Is this asking price above market?
  • How do dealer prices compare to owner‑listed prices?

This is the most business‑friendly API in the set because it converts raw marketplace noise into a usable market signal.

3. Turkish Auto Dealer Intelligence API

Purpose: Market‑structure layer – focuses on dealers rather than individual cars.

It can either scrape a specific dealer URL or discover dealers by city, then returns a structured dealer profile with optional inventory analysis.

Example request

{
  "platforms": ["arabam"],
  "searchByCity": "istanbul",
  "maxDealers": 3,
  "includeInventory": false
}

Example dealer profile (without inventory)

{
  "type": "DEALER_PROFILE",
  "dealerName": "CM MOTORS",
  "city": "İstanbul",
  "district": "Fatih Oto Galeri",
  "phone": "(0539) 812 32 20",
  "dealerUrl": "https://www.arabam.com/galeri/cm-motors-istanbul"
}

Example dealer profile (with inventory)

{
  "inventory": {
    "totalListings": 6,
    "averagePrice": 573483,
    "medianPrice": 654000,
    "priceRange": {
      "min": 259000,
      "max": 789000
    }
  }
}

Typical use cases

  • Dealer benchmarking.
  • Lead generation.
  • Market mapping by city.
  • Inventory‑strategy analysis.
  • B2B automotive intelligence.

Why split into three APIs?

LayerFocusReason for separation
Listing extractionRaw dataKeeps the source‑of‑truth retrieval simple and reusable.
Price trackingMarket valuationAdds statistical aggregation without pulling in dealer‑specific logic.
Dealer intelligenceCompetitive structureProvides dealer‑centric data and inventory analysis, a different domain altogether.

Trying to force all of this into one giant “automotive scraper” would make the product harder to understand, price, and integrate. Three narrower APIs make the value proposition much clearer.

Open‑Source & Contributions

These APIs are open source – see the repository: .

Contributions are welcome. You can help by:

  • Expanding marketplace coverage.
  • Hardening parsers.
  • Adding new output fields.
  • Improving dealer analytics.
  • Supporting more Turkish automotive workflows.

Let’s build a practical open‑data tool together!

A Practical Data Layer for the Turkish Automotive Ecosystem

Not just a closed product.

Final Thought

Turkey’s automotive market has a lot of publicly visible data, but not a lot of clean, reusable interfaces.

That’s the gap these APIs are designed to fill.

  • Listing‑level data – use the Vehicle Scraper.
  • Valuation data – use the Price Tracker.
  • Dealer‑level market intelligence – use the Dealer Intelligence API.

That stack gives you a practical data layer for the Turkish used‑car market without rebuilding the scraping and normalization work from scratch.

0 views
Back to Blog

Related posts

Read more »

How to Use rs-trafilatura with Firecrawl

Introduction Firecrawl is an API service for scraping web pages. It handles JavaScript rendering, anti‑bot bypass, and rate limiting — you send it a URL, it re...