Used Car Listings & Dealer Inventory Export avatar

Used Car Listings & Dealer Inventory Export

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Used Car Listings & Dealer Inventory Export

Used Car Listings & Dealer Inventory Export

Export used car listings, dealer inventory, and historical vehicle data from 100+ car websites with filters for brand, model, price, year, mileage, fuel, transmission, country, and history.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Inus Grobler

Inus Grobler

Maintained by Community

Actor stats

2

Bookmarked

30

Total users

5

Monthly active users

5 days ago

Last modified

Share

Export used car listings, dealer inventory, second-hand car data, and historical vehicle data from 100+ car websites already collected by The Scrape Lab.

This actor is for teams that need structured vehicle data fast. You can filter by country, website, brand, model, price, year, mileage, fuel type, transmission, condition, freshness, and history, then export the matching rows to your Apify dataset.

This actor does not scrape websites during the run. It queries existing cleaned car listing data, which makes runs faster, cheaper, and easier to predict.

What This Actor Is Good For

  • used car lead generation
  • dealership inventory exports
  • car market research
  • vehicle pricing analysis
  • used vehicle monitoring
  • historical car listing exports
  • country-level or website-level car data pulls
  • building used car datasets for CRMs, BI tools, marketplaces, and internal analytics

Best Way To Use It

For most runs, start with only:

  • countries or websites
  • brandQuery
  • modelQuery if needed
  • estimateOnly
  • limit

If the estimate looks right, run the same input again with estimateOnly turned off.

What You Get

Each run returns clean structured vehicle rows such as:

  • listing title
  • brand and model
  • year
  • price
  • mileage
  • fuel and transmission
  • dealer and location
  • listing status
  • canonical listing URL

If you use history mode, you also get historical observations for the same vehicle over time.

The simplest working input looks like this:

{
"countries": ["ZA"],
"websites": ["carscoza"],
"limit": 10
}

For a targeted used-car search:

{
"countries": ["ZA"],
"websites": ["carscoza"],
"brandQuery": "Toyota",
"modelQuery": "Corolla",
"yearMin": 2019,
"limit": 50
}

For historical car listings:

{
"countries": ["ZA"],
"websites": ["carscoza"],
"brandQuery": "Toyota",
"includeHistory": true,
"seenSince": "2026-05-01T00:00:00Z",
"limit": 100
}

Estimate Before Exporting

Use estimateOnly: true when you want to preview size before exporting data.

The actor will:

  • return no dataset rows
  • count how many rows match the filters
  • show how many rows this exact run would return with the current limit and offset

Useful summary fields:

  • estimated_total_matches
  • estimated_rows_returned

This is the safest way to estimate export size and cost before running a larger used-car data job.

How It Works

  • The actor reads from stored car listing data.
  • It does not open browsers or scrape pages during the run.
  • Results are filtered in the database and pushed to your Apify dataset.
  • This makes the actor suitable for fast exports, repeated queries, and predictable usage.

How Source Selection Works

  • If you set websites, the actor uses only those car websites.
  • If you set countries, the actor searches websites stored for those countries.
  • If you set both, the actor keeps only websites that belong to the selected countries.
  • If you set neither, the actor uses a lightweight default source.

Main Inputs

  • countries The easiest way to search used car listings across multiple sources in one country.
  • websites Best when you want exact control over the vehicle websites queried.
  • brandQuery The easiest brand filter. Example: Toyota, BMW, Volkswagen.
  • modelQuery Optional model filter. Example: Corolla, Hilux, Civic.
  • minPrice, maxPrice Price filters in the listing currency.
  • yearMin, yearMax Vehicle year filters.
  • mileageMin, mileageMax Mileage filters in kilometres.
  • bodyTypes, fuelTypes, transmissions, conditions Optional exact filters for stored listing values.
  • currencyCodes Useful when searching across multiple countries.
  • listingStatus Example values: active, sold, removed.
  • seenSince Only return rows seen after a specific ISO timestamp.
  • limit Maximum rows this run can export.
  • offset Skip matching rows for pagination.
  • orderBy Sort by freshness, price, or year.
  • includeHistory Switch from current listings to historical observations.

For most users, the main fields to focus on are:

  • countries
  • websites
  • brandQuery
  • modelQuery
  • estimateOnly
  • limit

Current Vs History

includeHistory: false

  • Returns the latest known row for each listing.
  • Best for live inventory exports, prospecting, research, and clean vehicle datasets.

includeHistory: true

  • Returns historical car listing observations.
  • The same listing can appear more than once across time.
  • Best for price tracking, change analysis, monitoring, and backfills.

History rows also keep snapshot_json, while still promoting the main readable fields to the top level.

Output Fields

Typical current-mode fields:

  • source, source_site
  • country_code, country_name, currency_code
  • listing_id, url, title
  • car_name, brand, model, trim
  • price, year, mileage_km
  • fuel, transmission, body_type, condition
  • dealer, location, listing_status, last_seen_at

History mode also includes:

  • observed_at
  • seen_count
  • is_change
  • changed_fields_json
  • snapshot_json

When To Use Current Vs History

Use current mode when you want:

  • the latest available used car inventory
  • clean dealer stock exports
  • lead lists and prospecting datasets

Use history mode when you want:

  • historical vehicle listing snapshots
  • price tracking
  • change monitoring
  • backfills for analysis

Tips

If you get too many results:

  • start with estimateOnly: true
  • narrow with countries, websites, brandQuery, or modelQuery
  • lower limit
  • add year, mileage, fuel, or transmission filters
  • add seenSince

If you get no results:

  • remove the strictest filters first
  • test one website at a time
  • try brand only before adding a model
  • remove price, year, and mileage ranges