# Collecting Cars Scraper — Auctions & Sold Prices (`hipersoft/collectingcars-scraper`) Actor

Scrape Collecting Cars and Watch Collecting auctions: live, upcoming and 26,000+ sold results with current bid, sold price, bids, reserve status, end time, make, model, year, mileage, gearbox, location and USD/EUR/GBP prices. Cars, motorcycles, plates, watches.

- **URL**: https://apify.com/hipersoft/collectingcars-scraper.md
- **Developed by:** [hiper soft](https://apify.com/hipersoft) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.001 / listing

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Collecting Cars Scraper: Live Auctions and Sold Prices for Classic & Performance Cars and Watches

**Collecting Cars Scraper** extracts auction listings from **Collecting Cars**, the global online auction platform for **classic, collector, supercar and performance cars, motorcycles, number plates and automobilia**, and from its sister site **Watch Collecting** for **luxury watches**. Get **live auctions**, **upcoming lots** and over **26,000 sold results** with the **title, make, model, year, current bid, sold price, buy-now price, currency, prices converted to USD, EUR and GBP, number of bids, reserve status (no reserve, reserve met, reserve lowered), auction end time, sold date, mileage (km or miles), gearbox, fuel type, drive side, location, country, coordinates, seller type and main photo**. Filter by **keyword, make, lot type, country, year and no-reserve**, and export to **CSV, Excel or JSON**. Ideal for **classic car valuations, dealers, collectors, investors and auction price research**.

### What does Collecting Cars Scraper do?

- 🏁 **Live auctions** with current bid, bids and end time.
- 🔜 **Upcoming lots** (coming soon).
- 💰 **26,000+ sold results** with hammer prices: perfect for valuations.
- 🚗 **Cars, motorcycles, number plates and parts**.
- ⌚ **Watches** from Watch Collecting (Rolex, Omega, Patek Philippe…).
- 🔎 **Keyword search**: 911 GT3, Defender 110, E-Type, M3 CSL, Submariner…
- 🏷️ **Make, country, year and no-reserve** filters.
- 💱 **Prices in local currency plus USD, EUR and GBP**.
- 📏 **Mileage** parsed into number and unit, gearbox, fuel and drive side.
- 📍 **Location, country and coordinates**.
- ↕️ **Sort** by ending soonest, newest, price or most bids.

### What data can you scrape from Collecting Cars?

| Field | Description |
|---|---|
| Lot | ID, link, title, lot type, collection, tags, photo |
| Vehicle | Make, model, year, mileage, mileage unit, gearbox, fuel, drive side |
| Watch | Reference number, box and papers |
| Auction | Status, sale format, current bid, sold price, buy-now price, bids |
| Reserve | No reserve, reserve met, reserve lowered, plus VAT |
| Currency | Local currency, USD, EUR, GBP |
| Dates | Listed, ends / ended, sold |
| Location | Location, country, region, latitude, longitude |
| Seller | Seller type (private, trade, managed) |

### Use cases for collector car auction data

- **Valuations and price guides**: build price histories for any model from thousands of sold results.
- **Dealers and traders**: spot no-reserve lots and under-valued auctions ending soon.
- **Collectors and investors**: track the market for Porsche, Ferrari, Land Rover, BMW M and more.
- **Insurance and finance**: value classic and performance cars with real hammer prices.
- **Watch market research**: track Rolex, Omega and other luxury watch auction prices.
- **Media and analysts**: report on auction trends by make, country and price.

### How to scrape Collecting Cars

1. Click **Try for free** to open Collecting Cars Scraper in Apify Console.
2. Choose **Cars** or **Watches** and the **auction status** (live, coming soon, sold, all).
3. Optionally add **keywords, makes, lot types, countries, years** or **no-reserve only**.
4. Choose **Sort by**, set **Max listings** and click **Start**.
5. Download the listings as **CSV, Excel or JSON**.

### Input

#### Example input

```json
{
  "category": "cars",
  "status": "sold",
  "keywords": ["911 GT3"],
  "makes": ["Porsche"],
  "lotTypes": ["car"],
  "yearMin": 2010,
  "sortBy": "newest",
  "maxItems": 1000
}
```

| Field | Description |
|---|---|
| **Marketplace** | Cars (incl. motorcycles, plates, parts) or watches. |
| **Auction status** | Live, coming soon, sold results or all. |
| **Keywords** | One search per keyword. |
| **Makes / brands** | Exact makes or watch brands. |
| **Lot types** | Cars, motorcycles, number plates, parts. |
| **Countries** | 2-letter codes of the lot location. |
| **Year from / to** | Model year range. |
| **No-reserve lots only** | Only no-reserve auctions. |
| **Sort by** | Ending soonest, newest, price, most bids. |
| **Max listings** | Stop after this many (0 = no limit). |

### Output

#### Sold car example

```json
{
  "listingId": 92311,
  "url": "https://collectingcars.com/for-sale/2017-porsche-911-991-2-carrera-gts-14",
  "title": "2017 Porsche 911 (991.2) Carrera GTS",
  "lotType": "car",
  "make": "Porsche",
  "model": "911",
  "year": 2017,
  "status": "sold",
  "currentBid": 235250,
  "soldPrice": 235250,
  "currency": "AUD",
  "bids": 104,
  "noReserve": true,
  "reserveMet": true,
  "soldAt": "2026-10-07T05:37:45Z",
  "mileage": 19651,
  "mileageUnit": "km",
  "transmission": "Automatic",
  "fuelType": "Petrol",
  "driveSide": "RHD",
  "location": "Preston, VIC",
  "country": "AU",
  "sellerType": "managed",
  "imageUrl": "https://images.collectingcars.com/092311/MAIN.jpg",
  "search": "911 GT3"
}
```

#### Output schema

| Field | Type | Description |
|---|---|---|
| `listingId`, `url`, `title`, `lotType`, `collection`, `tags`, `imageUrl` | mixed | Lot. |
| `make`, `model`, `year` | mixed | Vehicle or watch. |
| `mileage`, `mileageUnit`, `mileageText`, `transmission`, `fuelType`, `driveSide` | mixed | Vehicle specs. |
| `referenceNumber`, `boxAndPapers` | string | Watch details. |
| `status`, `saleFormat`, `currentBid`, `soldPrice`, `buyNowPrice`, `bids` | mixed | Auction. |
| `currency`, `priceUSD`, `priceEUR`, `priceGBP` | mixed | Currency. |
| `noReserve`, `reserveMet`, `reserveLowered`, `plusVat` | boolean | Reserve and VAT. |
| `listedAt`, `endsAt`, `soldAt` | string | Dates (UTC). |
| `location`, `country`, `region`, `latitude`, `longitude` | mixed | Location. |
| `sellerType` | string | Private, trade or managed. |
| `search`, `scrapedAt` | string | Source info. |

### How much does it cost?

Collecting Cars Scraper uses **pay-per-listing** pricing: a small fixed price per listing, with automatic discounts on higher Apify plans. See the **Pricing** tab for the exact price.

### More car data

- [Cars & Bids Scraper](https://apify.com/hipersoft/carsandbids-scraper): US enthusiast car auctions.
- [PistonHeads Scraper](https://apify.com/hipersoft/pistonheads-scraper): UK used and classic cars.
- [AutoScout24 Scraper](https://apify.com/hipersoft/autoscout24-scraper): European used cars.

### FAQ

**Can I get historical sold prices?**
Yes. Set **Auction status** to **Sold results** to get over 26,000 completed auctions with hammer prices.

**Why is the sold price empty for some sold lots?**
Some sellers hide the final price; the current bid at the end of the auction is still included.

**What currency are prices in?**
`currentBid` and `soldPrice` are in the lot's local currency (`currency`); `priceUSD`, `priceEUR` and `priceGBP` give converted values.

**What formats can I export?**
CSV, Excel, JSON, XML, HTML and RSS, or read the results through the Apify API.

**Can I integrate Collecting Cars Scraper with other apps?**
Collecting Cars Scraper can be connected with almost any cloud service or web app thanks to [integrations on the Apify platform](https://apify.com/integrations). It works with [Make](https://apify.com/integrations/make), [Zapier](https://apify.com/integrations/zapier), [Slack](https://docs.apify.com/platform/integrations/slack), [Airbyte](https://docs.apify.com/platform/integrations/airbyte), [GitHub](https://docs.apify.com/platform/integrations/github), [Google Drive](https://docs.apify.com/platform/integrations/drive) and [many more](https://apify.com/integrations), plus the [Apify API](https://docs.apify.com/api/v2), JS/Python clients and MCP. Or use [webhooks](https://docs.apify.com/platform/integrations/webhooks) to trigger an action whenever a run finishes.

**Is it legal to scrape Collecting Cars?**
The scraper only collects publicly listed auction information. You are responsible for using the data in line with Collecting Cars' terms and applicable law.

### Related Actors

- [Cars & Bids Scraper](https://apify.com/hipersoft/carsandbids-scraper)
- [PistonHeads Scraper](https://apify.com/hipersoft/pistonheads-scraper)

### Notes

Original clean-room implementation. Returns only public data. Not affiliated with Collecting Cars or Watch Collecting.

# Actor input Schema

## `category` (type: `string`):

Cars (Collecting Cars) or watches (Watch Collecting).

## `status` (type: `string`):

Live auctions, upcoming lots, sold results, or all.

## `keywords` (type: `array`):

Optional, e.g. 911 GT3, Defender, E-Type, Rolex Submariner. Each keyword is a separate search.

## `makes` (type: `array`):

Optional exact makes or brands, e.g. Porsche, Ferrari, BMW, Land Rover, Rolex, Omega.

## `lotTypes` (type: `array`):

Cars marketplace only: cars, motorcycles, number plates or parts.

## `countries` (type: `array`):

Optional 2-letter country codes of the lot location, e.g. GB, DE, FR, US, AU.

## `yearMin` (type: `integer`):

Oldest model year.

## `yearMax` (type: `integer`):

Newest model year.

## `noReserveOnly` (type: `boolean`):

Only auctions without a reserve.

## `sortBy` (type: `string`):

Order of results.

## `maxItems` (type: `integer`):

Stop after this many listings. 0 means no limit.

## `proxyConfiguration` (type: `object`):

Not required for normal use.

## Actor input object example

```json
{
  "category": "cars",
  "status": "live",
  "keywords": [
    "Porsche 911"
  ],
  "noReserveOnly": false,
  "sortBy": "endingSoon",
  "maxItems": 50,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `results` (type: `string`):

The results as dataset items.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "Porsche 911"
    ],
    "maxItems": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("hipersoft/collectingcars-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keywords": ["Porsche 911"],
    "maxItems": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("hipersoft/collectingcars-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "Porsche 911"
  ],
  "maxItems": 50
}' |
apify call hipersoft/collectingcars-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,hipersoft/collectingcars-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/EyBKzr2HKkWjcdroh/builds/OXwfbb9iB6SLXB3nT/openapi.json
