Skip to Content

WeBuyCars Data Parser & API

WeBuyCars is a JSE-listed South African instant-buy and auction dealer that holds its own reconditioned stock — and Carapis can extract its full inventory data, including make, model, mileage, price and condition reports, through one REST API. Its transactional, own-stock model means listings come with structured condition data, and Carapis can serve it without you maintaining a scraper.

On request — not in the live feed today. We do not continuously crawl WeBuyCars right now. Activation takes 2–3 weeks of engineering and is quoted per source, because each one ships with dedicated proxies, anti-bot tuning and ongoing maintenance. Ask us to add it.

CountrySouth Africa
TypeOnline-dealer
Vehicle typesused, auction
Monthly visitshigh
Active listingsthousands (own stock)
API accessNo public API (parse-only)
Parse priority★★★☆☆
Official sitewww.webuycars.co.za

What is WeBuyCars?

WeBuyCars is a South African online-dealer and auction business (listed on the Johannesburg Stock Exchange) that buys cars directly from sellers, reconditions them and resells them as its own stock, both through fixed-price retail and physical/online auctions. Because it owns and inspects its inventory, its listings carry structured condition data rather than third-party classifieds fields.

Market Position

WeBuyCars is one of South Africa’s largest used-car operators by volume, running a vertically integrated instant-buy and auction model on its own reconditioned stock (thousands of vehicles). Unlike the open classifieds AutoTrader.co.za and Cars.co.za, its data is first-party dealer inventory with condition reports — closer to the inspection-grade model seen in transactional online dealers, making it complementary to the South African portal data rather than a substitute.

What the API returns

Response schema

Indicative — this is the shape, not a guarantee. Every source returns the same structure, so what you build against does not change when you add one. Which fields carry a value depends on the source and on the individual listing: a site that does not publish mileage returns null there, and WeBuyCars is no exception.

List — GET /apix/api/vehicles/ — returns 30 fields per vehicle:

  • idstring
  • source_codestring
  • brand_namestring
  • brand_slugstring
  • model_namestring
  • model_slugstring
  • trimstring
  • yearinteger
  • price_usdinteger
  • mileageinteger
  • fuel_typeFuelTypeEnum
  • transmissionTransmissionEnum
  • body_typeBodyTypeEnum
  • colorColorEnum
  • seller_typeSellerTypeEnum
  • regionstring
  • source_locationobject
  • has_accidentboolean
  • is_new_vehicleboolean
  • is_verifiedboolean
  • statusVehicleStatusEnum
  • is_availableboolean
  • first_seen_atstring
  • last_seen_atstring
  • thumbVehiclePhoto
  • photosarray
  • photos_countinteger
  • has_valuationboolean
  • has_llm_analysisboolean
  • analysisobject

Detail — GET /apix/api/vehicles/{id}/ — adds 23 more:

  • generationstring
  • price_originalstring
  • price_original_currencystring
  • original_msrpstring
  • engine_ccinteger
  • seat_countinteger
  • drive_typeDriveTypeEnum
  • has_simple_repairboolean
  • has_recallboolean
  • recall_fulfilledboolean
  • warranty_typestring
  • inspection_passedboolean
  • owner_countinteger
  • is_undervaluedboolean
  • valuation_scorenumber
  • featuresarray
  • descriptionstring
  • listing_urlstring
  • listing_idstring
  • vinstring
  • vehicle_nostring
  • availability_checked_atstring
  • status_changed_atstring

Abbreviated example:

{
  "id": "0193f2c1-...",
  "source_code": "encar",
  "brand_name": "BMW",
  "model_name": "320i",
  "trim": "M Sport",
  "year": 2021,
  "price_usd": 28400,
  "price_original": "38900000",
  "price_original_currency": "KRW",
  "mileage": 45000,
  "fuel_type": "gasoline",
  "transmission": "automatic",
  "has_accident": false,
  "listing_url": "https://...",
  "photos": [{ "url": "https://cdn.carapis.com/..." }],
  "first_seen_at": "2026-09-28T11:04:22Z",
  "is_available": true
}

Which sources you can actually query is answered by GET /apix/api/sources/ with your API key — it is the list your account can pull today, and it is the one to trust over any page on this site.

The first-party condition reports are the standout field here — they mirror the “inspection-grade” value of transactional online dealers, delivered as structured data on own-stock vehicles.

API Quick Start

import requests resp = requests.get( "https://api.carapis.com/v2/listings", params={"source": "webuycars", "limit": 20}, headers={"Authorization": f"Bearer {API_KEY}"}, ) for car in resp.json()["results"]: print(car["make"], car["model"], car["year"], car["price"])

Get an API key at my.carapis.com  and see the full API reference. Pricing is on the pricing page .

Use Cases

  • Pricing intelligence — first-party retail and auction prices benchmark South African used-car values for dealers.
  • Market research — track instant-buy and auction inventory turnover. See market research.
  • Import / export — condition-report data helps buyers vet South African stock remotely. See import & export.

Frequently asked questions