# Autotrader UK Scraper + Instant Results (`raidr-api/autotrader-uk-scraper`) Actor

Scrape Autotrader UK (United Kingdom) vehicles by make, model, year, price, and mileage. Features exact listing dates, smart age filtering, and deduplication. Optimized for lowest cost per run using advanced extraction techniques. Get instant vehicle results with filtering for private listings only.

- **URL**: https://apify.com/raidr-api/autotrader-uk-scraper.md
- **Developed by:** [Raidr API](https://apify.com/raidr-api) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.99 / 1,000 dataset results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 🇬🇧 AutoTrader UK Vehicle Scraper

Scrape car listings from [AutoTrader.co.uk](https://www.autotrader.co.uk) by postcode, with rich filtering by make, model, price, year, mileage, engine size, body type, fuel, transmission, colour, and seller type. Also covers vans, trucks, bikes, motorhomes, and caravans. Export clean listing data to JSON, CSV, Excel, or HTML.

### 🔍 What does AutoTrader UK Vehicle Scraper do?

**AutoTrader UK Vehicle Scraper** extracts **public vehicle adverts** from AutoTrader.co.uk and turns them into clean, structured data. Every advert comes back with the make, model, year, price, mileage, seller, and images already organised, so you can analyse the market in seconds instead of paging through search results. Run it on the **Apify platform** for API access, scheduling, integrations, proxy rotation, and monitoring.

- **Track inventory** — monitor what's for sale near any postcode, or nationwide
- **Analyse pricing** — compare asking prices by make, model, year, and price indicator
- **Source stock** — find well-priced vehicles worth buying or reselling
- **Generate leads** — build lists of traders and their inventory for permitted outreach
- **Feed your tools** — export to spreadsheets, dashboards, CRMs, or analytics pipelines

### 📊 What data can you extract from AutoTrader UK?

Every advert returns clean, structured fields:

| 🚗 Title & spec sub-title | 🏭 Make / model | 📅 Year & registration |
|---|---|---|
| 💰 Price | 🛣️ Mileage | 🏷️ Condition |
| 🏆 Price indicator | 🧑‍💼 Seller type & dealer link | 📍 Location & distance |
| 📸 Image count & thumbnail | 🔗 Advert URL | 🕒 Scraped timestamp |

Enable **Fetch Full Details** to also collect the full specification (fuel, gearbox, engine size, doors, seats, colour), performance and dimension figures, running costs (CO₂, tax, insurance group, MPG), the history check, the complete feature list, the seller's description, and the full image gallery.

### 🚀 How to scrape AutoTrader UK vehicles

No coding required.

1. **Create a free Apify account** using your email.
2. **Open AutoTrader UK Vehicle Scraper.**
3. **Enter a postcode** (e.g. `E1 6AN`) and, optionally, a radius in miles — leave it empty for a national search.
4. **Add filters** (optional) — make, model, price, year, mileage, engine size, body type, fuel, transmission, colour, drivetrain, doors, seats, seller type, or keywords.
5. **Set Maximum Results** and a sort order, then click **Start**.
6. **Download your data** in JSON, CSV, Excel, or HTML — or pull it via API.

### ⬇️ Input

Set everything visually in the input form, or paste JSON directly:

```json
{
    "postcode": "E1 6AN",
    "radius": 30,
    "channel": "cars",
    "make": ["Audi"],
    "model": ["A3"],
    "minPrice": 5000,
    "maxPrice": 20000,
    "minYear": 2016,
    "maxYear": 2022,
    "maxMileage": 60000,
    "bodyType": ["Hatchback"],
    "fuelType": ["Petrol"],
    "transmission": ["Manual"],
    "sellerType": ["trade"],
    "sort": "price-asc",
    "fetchDetails": false,
    "maxItems": 100
}
````

**Available filters:** postcode, radius, vehicle type (cars, vans, trucks, bikes, motorhomes, caravans), make, model, price range, year range, mileage range, engine size range, body type, fuel type, transmission, colour, drivetrain, doors, seats, seller type, keywords, and sort order. Leave any field empty to skip that filter.

### ⬆️ Output

Each vehicle is saved as a structured record, ready to download in JSON, CSV, Excel, or HTML:

```json
{
    "id": "202607013791930",
    "url": "https://www.autotrader.co.uk/car-details/202607013791930",
    "title": "Hyundai i20",
    "subtitle": "1.2 Active Euro 5 5dr",
    "make": "Hyundai",
    "model": "i20",
    "year": 2013,
    "condition": "used",
    "price": 4500,
    "priceFormatted": "£4,500",
    "mileage": 118850,
    "registration": "2013 (63 reg)",
    "priceIndicator": "GREAT",
    "sellerType": "trade",
    "dealerUrl": "https://www.autotrader.co.uk/dealers/middlesex/enfield/enfield-trade-centre-10049618",
    "location": "Enfield (11 miles)",
    "distanceMiles": 11,
    "numberOfImages": 25,
    "thumbnailUrl": "https://m.atcdn.co.uk/a/media/w800h600/abc.jpg",
    "scrapedAt": "2026-07-02T00:00:00.000Z"
}
```

### 💰 How much does it cost to scrape AutoTrader UK?

AutoTrader UK Vehicle Scraper runs on Apify's **pay-per-use** model — you only pay for the resources a run consumes. Standard runs are inexpensive; enabling **Fetch Full Details** collects a lot more per advert and costs more, so keep **Maximum Results** modest when it's on. Use filters to bound each run.

**Free tier:** New Apify users get monthly free credits — enough to scrape thousands of adverts at no cost.

### ✨ Tips for best results

- **Use residential proxies in production** (selected by default) for reliable, uninterrupted access.
- **Start small.** Run with a low result cap first to confirm your filters, then scale up.
- **Leave the radius empty** for a nationwide search, or set it to stay local.
- **Enable Fetch Full Details selectively** — only when you need the full spec, running costs, history check, or complete gallery.
- Only organic adverts are returned; pinned/sponsored and "you may also like" cards are skipped.

### 🔗 Integrations

Connect AutoTrader UK Vehicle Scraper to your favorite tools:

- **Google Sheets** — auto-export new adverts to a spreadsheet
- **Zapier & Make** — trigger workflows when new vehicles are found
- **Slack** — get results in your team channels
- **Webhooks** — send data to any URL when a run finishes
- **API** — integrate directly with your own applications

### 🛠️ Using the API

Run the scraper and pull results programmatically with the Apify API:

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")

run_input = {
    "postcode": "E1 6AN",
    "make": ["Audi"],
    "maxPrice": 20000,
    "maxItems": 100
}

run = client.actor("your-username/autotrader-uk-scraper").call(run_input=run_input)

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item["title"], item["priceFormatted"])
```

### ❓ FAQ

#### How does AutoTrader UK Vehicle Scraper work?

It works just like searching AutoTrader yourself — it opens the results for your postcode and filters, then collects the publicly visible details from each advert, only far faster and at scale.

#### Can I search the whole country?

Yes. Leave the radius empty (or set it to 0) for a national search.

#### Can I scrape vans, bikes, or motorhomes?

Yes. Set the **Vehicle Type** to vans, trucks, bikes, motorhomes, or caravans instead of cars.

#### Why should I use residential proxies?

Residential proxies (on by default) give the most reliable access to AutoTrader UK. No extra setup is needed.

#### Is it legal to scrape AutoTrader UK?

Scraping publicly available data is generally legal. This scraper only collects publicly visible advert information — no private user data or content behind access controls. Always use scraped data responsibly and in line with applicable laws and AutoTrader's Terms of Service.

### 📞 Support and feedback

- **Questions or a bug?** Open an issue on the Actor's **Issues** tab.
- **Need a field added or a custom solution?** Let us know — we'd love to help.

***

*AutoTrader UK Vehicle Scraper is not affiliated with or endorsed by AutoTrader. Use responsibly and in accordance with AutoTrader's Terms of Service.*

# Actor input Schema

## `postcode` (type: `string`):

UK postcode used as the centre of the search (e.g. "E1 6AN").

## `radius` (type: `integer`):

Distance around the postcode, in miles. Leave empty (or 0) for a national search.

## `channel` (type: `string`):

Which AutoTrader marketplace to search.

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

Maximum number of unique listings to save. Each results page returns ~20 listings, so the default keeps runs small — increase it to pull more.

## `sort` (type: `string`):

Ordering for results.

## `fetchDetails` (type: `boolean`):

Also open each advert's detail page to add the full specification (fuel, gearbox, engine, doors, seats, colour), performance figures, running costs (CO₂, tax, insurance group, MPG), history check, feature list, seller description, and the complete image set. Slower and uses more proxy bandwidth (one extra ~0.25 MB page per advert).

## `make` (type: `array`):

Filter by make, e.g. \["Audi", "BMW"]. Leave empty for all makes.

## `model` (type: `array`):

Filter by model, e.g. \["A3", "Golf"]. Most useful with a single make selected.

## `minPrice` (type: `integer`):

Minimum price in GBP. Leave empty for no minimum.

## `maxPrice` (type: `integer`):

Maximum price in GBP. Leave empty for no maximum.

## `minYear` (type: `integer`):

Earliest registration year. Leave empty for no minimum.

## `maxYear` (type: `integer`):

Latest registration year. Leave empty for no maximum.

## `minMileage` (type: `integer`):

Minimum odometer reading. Leave empty for no minimum.

## `maxMileage` (type: `integer`):

Maximum odometer reading. Leave empty for no limit.

## `minEngineSize` (type: `integer`):

Minimum engine size in litres (e.g. 1). Leave empty for no minimum.

## `maxEngineSize` (type: `integer`):

Maximum engine size in litres (e.g. 3). Leave empty for no maximum.

## `bodyType` (type: `array`):

Filter by body type. Leave empty to include all.

## `fuelType` (type: `array`):

Filter by fuel type. Leave empty to include all.

## `transmission` (type: `array`):

Filter by transmission. Leave empty to include all.

## `colour` (type: `array`):

Filter by colour. Leave empty to include all.

## `drivetrain` (type: `array`):

Filter by drivetrain. Leave empty to include all.

## `doors` (type: `array`):

Filter by number of doors. Leave empty to include all.

## `seats` (type: `array`):

Filter by number of seats. Leave empty to include all.

## `sellerType` (type: `array`):

Filter by seller type. Leave empty to include all.

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

Free-text keywords the advert must contain, e.g. \["heated seats"].

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

Proxy settings. Residential proxies are strongly recommended (AutoTrader UK is behind Cloudflare; some IPs are challenged).

## Actor input object example

```json
{
  "postcode": "E1 6AN",
  "channel": "cars",
  "maxItems": 40,
  "sort": "relevance",
  "fetchDetails": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

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

No description

## `runStats` (type: `string`):

No description

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("raidr-api/autotrader-uk-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 = {}

# Run the Actor and wait for it to finish
run = client.actor("raidr-api/autotrader-uk-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{}' |
apify call raidr-api/autotrader-uk-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=raidr-api/autotrader-uk-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Autotrader UK Scraper + Instant Results",
        "description": "Scrape Autotrader UK (United Kingdom) vehicles by make, model, year, price, and mileage. Features exact listing dates, smart age filtering, and deduplication. Optimized for lowest cost per run using advanced extraction techniques. Get instant vehicle results with filtering for private listings only.",
        "version": "0.0",
        "x-build-id": "cCWdPIprwaahUtONN"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/raidr-api~autotrader-uk-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-raidr-api-autotrader-uk-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/raidr-api~autotrader-uk-scraper/runs": {
            "post": {
                "operationId": "runs-sync-raidr-api-autotrader-uk-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/raidr-api~autotrader-uk-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-raidr-api-autotrader-uk-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "postcode"
                ],
                "properties": {
                    "postcode": {
                        "title": "📍 Postcode",
                        "type": "string",
                        "description": "UK postcode used as the centre of the search (e.g. \"E1 6AN\").",
                        "default": "E1 6AN"
                    },
                    "radius": {
                        "title": "🗺️ Radius (miles)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Distance around the postcode, in miles. Leave empty (or 0) for a national search."
                    },
                    "channel": {
                        "title": "🚗 Vehicle Type",
                        "enum": [
                            "cars",
                            "vans",
                            "trucks",
                            "bikes",
                            "motorhomes",
                            "caravans"
                        ],
                        "type": "string",
                        "description": "Which AutoTrader marketplace to search.",
                        "default": "cars"
                    },
                    "maxItems": {
                        "title": "📦 Maximum Results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of unique listings to save. Each results page returns ~20 listings, so the default keeps runs small — increase it to pull more.",
                        "default": 40
                    },
                    "sort": {
                        "title": "↕️ Sort Results By",
                        "enum": [
                            "relevance",
                            "price-asc",
                            "price-desc",
                            "year-desc",
                            "year-asc",
                            "mileage-asc",
                            "mileage-desc"
                        ],
                        "type": "string",
                        "description": "Ordering for results.",
                        "default": "relevance"
                    },
                    "fetchDetails": {
                        "title": "🔎 Fetch Full Details",
                        "type": "boolean",
                        "description": "Also open each advert's detail page to add the full specification (fuel, gearbox, engine, doors, seats, colour), performance figures, running costs (CO₂, tax, insurance group, MPG), history check, feature list, seller description, and the complete image set. Slower and uses more proxy bandwidth (one extra ~0.25 MB page per advert).",
                        "default": false
                    },
                    "make": {
                        "title": "🚘 Makes",
                        "type": "array",
                        "description": "Filter by make, e.g. [\"Audi\", \"BMW\"]. Leave empty for all makes.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "model": {
                        "title": "🚙 Models",
                        "type": "array",
                        "description": "Filter by model, e.g. [\"A3\", \"Golf\"]. Most useful with a single make selected.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "minPrice": {
                        "title": "💵 Minimum Price (£)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum price in GBP. Leave empty for no minimum."
                    },
                    "maxPrice": {
                        "title": "💰 Maximum Price (£)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum price in GBP. Leave empty for no maximum."
                    },
                    "minYear": {
                        "title": "📅 Minimum Year",
                        "minimum": 1900,
                        "type": "integer",
                        "description": "Earliest registration year. Leave empty for no minimum."
                    },
                    "maxYear": {
                        "title": "📅 Maximum Year",
                        "minimum": 1900,
                        "type": "integer",
                        "description": "Latest registration year. Leave empty for no maximum."
                    },
                    "minMileage": {
                        "title": "🧭 Minimum Mileage",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum odometer reading. Leave empty for no minimum."
                    },
                    "maxMileage": {
                        "title": "🧭 Maximum Mileage",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum odometer reading. Leave empty for no limit."
                    },
                    "minEngineSize": {
                        "title": "🔧 Minimum Engine Size (litres)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum engine size in litres (e.g. 1). Leave empty for no minimum."
                    },
                    "maxEngineSize": {
                        "title": "🔧 Maximum Engine Size (litres)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum engine size in litres (e.g. 3). Leave empty for no maximum."
                    },
                    "bodyType": {
                        "title": "🚙 Body Types",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by body type. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Convertible",
                                "Coupe",
                                "Estate",
                                "Hatchback",
                                "MPV",
                                "Pickup",
                                "Saloon",
                                "SUV",
                                "Camper",
                                "Car Derived Van",
                                "Combi Van",
                                "Limousine",
                                "Minibus",
                                "Panel Van",
                                "Window Van"
                            ]
                        }
                    },
                    "fuelType": {
                        "title": "⛽ Fuel Types",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by fuel type. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Petrol",
                                "Diesel",
                                "Electric",
                                "Hybrid",
                                "Petrol Plug-in Hybrid",
                                "Diesel Plug-in Hybrid",
                                "Petrol Hybrid",
                                "Diesel Hybrid",
                                "Bi Fuel",
                                "Hydrogen",
                                "Natural Gas"
                            ]
                        }
                    },
                    "transmission": {
                        "title": "⚙️ Transmission",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by transmission. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Automatic",
                                "Manual"
                            ]
                        }
                    },
                    "colour": {
                        "title": "🎨 Colours",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by colour. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Black",
                                "Blue",
                                "Grey",
                                "White",
                                "Silver",
                                "Red",
                                "Green",
                                "Beige",
                                "Bronze",
                                "Brown",
                                "Gold",
                                "Multicolour",
                                "Orange",
                                "Pink",
                                "Purple",
                                "Yellow"
                            ]
                        }
                    },
                    "drivetrain": {
                        "title": "🛞 Drivetrains",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by drivetrain. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Four Wheel Drive",
                                "Front Wheel Drive",
                                "Rear Wheel Drive"
                            ]
                        }
                    },
                    "doors": {
                        "title": "🚪 Doors",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by number of doors. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "2",
                                "3",
                                "4",
                                "5"
                            ]
                        }
                    },
                    "seats": {
                        "title": "💺 Seats",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by number of seats. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "2",
                                "3",
                                "4",
                                "5",
                                "6",
                                "7",
                                "8"
                            ]
                        }
                    },
                    "sellerType": {
                        "title": "🧑‍💼 Seller Type",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Filter by seller type. Leave empty to include all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "private",
                                "trade"
                            ],
                            "enumTitles": [
                                "Private Seller",
                                "Trade / Dealer"
                            ]
                        }
                    },
                    "keywords": {
                        "title": "🔑 Keywords",
                        "type": "array",
                        "description": "Free-text keywords the advert must contain, e.g. [\"heated seats\"].",
                        "items": {
                            "type": "string"
                        }
                    },
                    "proxyConfiguration": {
                        "title": "🌐 Proxy Configuration",
                        "type": "object",
                        "description": "Proxy settings. Residential proxies are strongly recommended (AutoTrader UK is behind Cloudflare; some IPs are challenged).",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
