# Autotrader.ca Vehicle Scraper + Instant Results (`raidr-api/autotrader-ca-scraper`) Actor

Scrape Autotrader.ca (Canada) 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-ca-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.80 / 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 Canada Vehicle Scraper

Scrape new and used vehicle listings from [AutoTrader.ca](https://www.autotrader.ca) by city or postal code, with rich filtering by make, model, price, year, mileage, body type, colour, fuel, transmission, equipment, and more. Get optional real-time Discord alerts for new listings. Export clean car data to JSON, CSV, Excel, or HTML.

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

**AutoTrader Canada Vehicle Scraper** extracts **public vehicle listings** from AutoTrader.ca and delivers them as clean, structured data. Every listing — VIN, price, mileage, specs, features, seller, and photos — comes back organised and ready to use, so you can analyse Canadian car inventory in seconds instead of clicking through pages. Run it on the **Apify platform** for API access, scheduling, integrations, proxy rotation, and monitoring.

- **Track inventory** — monitor what's for sale across any province or metro
- **Analyse pricing** — compare asking prices by make, model, year, and price badge
- **Source deals** — find well-priced vehicles worth buying or reselling
- **Generate dealer leads** — build lists of dealers and their inventory for permitted outreach
- **Feed your tools** — export to spreadsheets, dashboards, CRMs, or analytics pipelines

### 📊 What data can you extract from AutoTrader.ca?

Every listing returns clean, structured fields:

| 🚗 Title | 🏭 Make / model / trim | 📅 Year |
|---|---|---|
| 🔖 VIN & stock number | 💰 Price & price badges | 🛣️ Mileage (km) |
| 🚙 Body type | ⛽ Fuel type | ⚙️ Transmission |
| 🛞 Drivetrain | 🔧 Cylinders / doors / seats | 🎨 Exterior & interior colour |
| ✨ Features & equipment | 🧑‍💼 Seller & dealer name | 📍 City, province, postal code, distance |
| 📸 All photos | 📝 Description | 🔗 Listing URL |

### 🚀 How to scrape AutoTrader Canada vehicles

No coding required.

1. **Create a free Apify account** using your email.
2. **Open AutoTrader Canada Vehicle Scraper.**
3. **Enter a city or postal code** (e.g. `Edmonton, AB` or `T5Y2V5`) and a search radius in km.
4. **Add filters** (optional) — make, model year, price, body type, colour, mileage, fuel, transmission, drivetrain, equipment, condition, 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 (with dropdowns for makes, body types, colours, and more), or paste JSON directly:

```json
{
    "location": "Edmonton, AB",
    "radius": 100,
    "sorting": "price_lowest_to_highest",
    "make": 13,
    "modelYearFrom": 2017,
    "modelYearTo": 2025,
    "priceFrom": 10000,
    "priceTo": 50000,
    "bodyType": [14],
    "fuelType": ["B"],
    "transmission": ["A"],
    "maxResults": 100
}
````

This example searches for BMW SUVs within 100 km of Edmonton, model years 2017–2025, priced $10,000–$50,000, gasoline, automatic, sorted by lowest price. In the visual form you simply pick these from dropdowns.

**Available filters:** location (city or postal code), radius, sort order, make, model year range, price range, price badges (Great / Good / Fair / Above Average), body type, exterior colour, mileage range, seating capacity, doors, drivetrain, fuel type, engine cylinders, transmission, vehicle condition, seller type, 150+ equipment/feature options, "online since" (recent listings), and keywords. Leave any field empty to include everything.

### ⬆️ Output

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

```json
{
    "id": "12345678",
    "title": "2019 BMW X5 xDrive40i",
    "url": "https://www.autotrader.ca/a/bmw/x5/edmonton/ab/12345678/",
    "year": 2019,
    "make": "BMW",
    "model": "X5",
    "trim": "xDrive40i",
    "condition": "Used",
    "vin": "5UXCR6C5XKLL12345",
    "price": 44900,
    "priceType": "dealer",
    "badges": ["Good Price"],
    "mileage": 78500,
    "bodyType": "SUV",
    "fuelType": "Gasoline",
    "transmission": "Automatic",
    "driveType": "All Wheel Drive",
    "exteriorColor": "Black",
    "interiorColor": "Black",
    "seller": "Edmonton BMW",
    "sellerType": "Dealer",
    "city": "Edmonton",
    "province": "AB",
    "postalCode": "T5Y2V5",
    "distance": 12,
    "images": ["https://…/photo1.jpg", "https://…/photo2.jpg"],
    "features": ["Navigation", "Leather seats", "Sunroof"],
    "onlineSince": "2026-06-28",
    "scrapedAt": "2026-07-01T00:00:00.000Z"
}
```

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

AutoTrader Canada Vehicle Scraper runs on Apify's **pay-per-use** model — you only pay for the resources a run consumes. Runs are inexpensive and cost scales with how many listings you collect. Use **Maximum Results** and filters to keep each run bounded.

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

### 💬 Discord notifications for new listings

Never miss a deal. Add a Discord webhook and get an instant alert whenever a new matching vehicle appears:

1. Create a webhook in your Discord server (**Server Settings → Integrations → Webhooks**).
2. Copy the webhook URL.
3. Paste it into the **Discord Webhook URL** field.
4. Choose your preferences — notify only on new listings, image style, and how many listings per message.

### 🔄 Deduplication across runs

The scraper can remember listings from previous runs, so you can:

- **Monitor new inventory** — run on a schedule and only see fresh listings
- **Avoid duplicates** — build a unique dataset over time
- **Get alerts for new items only** — no spam from listings you've already seen

### 🔗 Integrations

Connect AutoTrader Canada Vehicle Scraper to your favorite tools:

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

### ❓ FAQ

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

It works just like searching AutoTrader.ca yourself — it opens the results for your city or postal code and filters, then collects the publicly visible details from each listing, only far faster and at scale.

#### Can I scrape multiple locations?

Each run centers on one city or postal code and radius. To cover several areas, run the scraper multiple times with different locations, or schedule automated runs for each.

#### What units are used?

All prices are in Canadian Dollars (CAD) and mileage is in kilometres.

#### Why are some fields missing?

Listings vary by seller. Core fields are always captured; details like VIN, features, or interior colour appear only when the seller provided them.

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

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

### 📞 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 Canada Vehicle Scraper is not affiliated with or endorsed by AutoTrader.ca. Use responsibly and in accordance with AutoTrader.ca's Terms of Use.*

# Actor input Schema

## `location` (type: `string`):

Enter a postal code (e.g., M5H2N2) or city with 2-letter province code (e.g., Toronto, ON). Do NOT use full province names like 'Ontario' — use the abbreviation 'ON' instead.

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

Search radius in kilometers (recommended: 10, 20, 50, 100, 150, 200, 250, 300, 400)

## `sorting` (type: `string`):

Sort order for listings

## `maxResults` (type: `integer`):

Maximum number of listings to scrape (0 = unlimited)

## `vehicleCondition` (type: `array`):

Select vehicle condition(s). Leave empty to show all.

## `seller` (type: `string`):

Type of seller

## `make` (type: `string`):

Select vehicle manufacturer. Leave as 'All' to show all makes.

## `modelYearFrom` (type: `integer`):

Minimum model year (use 0 for no minimum)

## `modelYearTo` (type: `integer`):

Maximum model year (use 0 for no maximum)

## `priceFrom` (type: `integer`):

Minimum price in dollars (use 0 for no minimum)

## `priceTo` (type: `integer`):

Maximum price in dollars (use 0 for no maximum)

## `priceBadgeGreatPrice` (type: `boolean`):

Include vehicles with 'Great Price' badge

## `priceBadgeGoodPrice` (type: `boolean`):

Include vehicles with 'Good Price' badge

## `priceBadgeFairPrice` (type: `boolean`):

Include vehicles with 'Fair Price' badge

## `priceBadgeAboveAverage` (type: `boolean`):

Include vehicles with 'Above Average' price badge

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

Select body type(s). Leave empty to show all.

## `exteriorColor` (type: `array`):

Select exterior color(s). Leave empty to show all.

## `kmFrom` (type: `integer`):

Minimum mileage in kilometers (use 0 for no minimum)

## `kmTo` (type: `integer`):

Maximum mileage in kilometers (use 0 for no maximum)

## `driveTrain` (type: `array`):

Select drivetrain type(s). Leave empty to show all.

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

Select fuel type(s). Leave empty to show all.

## `cylinders` (type: `array`):

Select number of cylinders. Leave empty to show all.

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

Select transmission type(s). Leave empty to show all.

## `seatsFrom` (type: `integer`):

Minimum seating capacity (use 0 for no minimum)

## `seatsTo` (type: `integer`):

Maximum seating capacity (use 0 for no maximum)

## `doors` (type: `string`):

Select number of doors

## `equipment` (type: `array`):

Select desired equipment and features. Leave empty to show all vehicles.

## `onlineSince` (type: `integer`):

Show listings posted within the last X days (0 = All, max 14)

## `keywords` (type: `string`):

Search keywords in listing titles (comma-separated, e.g., xDrive, BlueMotion)

## `enableDeduplication` (type: `boolean`):

Avoid re-processing items that were collected in previous runs

## `deduplicationStoreName` (type: `string`):

Storage name for tracking previously seen items

## `discordWebhookUrl` (type: `string`):

Webhook URL for sending notifications to Discord (leave empty to disable)

## `discordNotifyOnlyNew` (type: `boolean`):

Send notifications only for items not seen in previous runs

## `discordMaxItemsPerMessage` (type: `integer`):

Maximum listings to include in each Discord message

## `discordImageDisplay` (type: `string`):

How to display images in Discord notifications

## Actor input object example

```json
{
  "location": "Toronto, ON",
  "radius": 100,
  "sorting": "default",
  "maxResults": 100,
  "vehicleCondition": [
    "N",
    "U"
  ],
  "seller": "all",
  "make": "0",
  "modelYearFrom": 2017,
  "modelYearTo": 2026,
  "priceFrom": 0,
  "priceTo": 0,
  "priceBadgeGreatPrice": false,
  "priceBadgeGoodPrice": false,
  "priceBadgeFairPrice": false,
  "priceBadgeAboveAverage": false,
  "kmFrom": 0,
  "kmTo": 0,
  "seatsFrom": 0,
  "seatsTo": 0,
  "doors": "all",
  "equipment": [],
  "onlineSince": 0,
  "keywords": "",
  "enableDeduplication": true,
  "deduplicationStoreName": "autotrader-seen-items",
  "discordWebhookUrl": "",
  "discordNotifyOnlyNew": true,
  "discordMaxItemsPerMessage": 5,
  "discordImageDisplay": "thumbnail"
}
```

# 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 = {
    "vehicleCondition": [
        "N",
        "U"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("raidr-api/autotrader-ca-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 = { "vehicleCondition": [
        "N",
        "U",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("raidr-api/autotrader-ca-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 '{
  "vehicleCondition": [
    "N",
    "U"
  ]
}' |
apify call raidr-api/autotrader-ca-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Autotrader.ca Vehicle Scraper + Instant Results",
        "description": "Scrape Autotrader.ca (Canada) 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": "jWtaxh6opemKJwB8Y"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/raidr-api~autotrader-ca-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-raidr-api-autotrader-ca-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-ca-scraper/runs": {
            "post": {
                "operationId": "runs-sync-raidr-api-autotrader-ca-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-ca-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-raidr-api-autotrader-ca-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": [
                    "location"
                ],
                "properties": {
                    "location": {
                        "title": "City/Postal Code",
                        "type": "string",
                        "description": "Enter a postal code (e.g., M5H2N2) or city with 2-letter province code (e.g., Toronto, ON). Do NOT use full province names like 'Ontario' — use the abbreviation 'ON' instead.",
                        "default": "Toronto, ON"
                    },
                    "radius": {
                        "title": "🎯 Search Radius",
                        "minimum": 10,
                        "maximum": 400,
                        "type": "integer",
                        "description": "Search radius in kilometers (recommended: 10, 20, 50, 100, 150, 200, 250, 300, 400)",
                        "default": 100
                    },
                    "sorting": {
                        "title": "🔄 Sort Results By",
                        "enum": [
                            "default",
                            "posted_date_new_to_old",
                            "posted_date_old_to_new",
                            "price_highest_to_lowest",
                            "price_lowest_to_highest",
                            "year_new_to_old",
                            "year_old_to_new",
                            "kilometres_lowest_to_highest",
                            "kilometres_highest_to_lowest",
                            "location_nearest"
                        ],
                        "type": "string",
                        "description": "Sort order for listings",
                        "default": "default"
                    },
                    "maxResults": {
                        "title": "📊 Maximum Results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of listings to scrape (0 = unlimited)",
                        "default": 100
                    },
                    "vehicleCondition": {
                        "title": "Vehicle Condition",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select vehicle condition(s). Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "N",
                                "U",
                                "J",
                                "O",
                                "D",
                                "S"
                            ],
                            "enumTitles": [
                                "New",
                                "Used",
                                "Employee's car",
                                "Antique/Classic",
                                "Demonstration",
                                "Pre-registered"
                            ]
                        }
                    },
                    "seller": {
                        "title": "Seller Type",
                        "enum": [
                            "all",
                            "D",
                            "P"
                        ],
                        "type": "string",
                        "description": "Type of seller",
                        "default": "all"
                    },
                    "make": {
                        "title": "Vehicle Make",
                        "enum": [
                            "0",
                            "14979",
                            "52017",
                            "16356",
                            "6",
                            "52018",
                            "52019",
                            "52009",
                            "52021",
                            "52020",
                            "51545",
                            "8",
                            "52022",
                            "9",
                            "15643",
                            "11",
                            "13",
                            "52010",
                            "15",
                            "16",
                            "17",
                            "19",
                            "20",
                            "21",
                            "22",
                            "23",
                            "52023",
                            "51779",
                            "2152",
                            "52035",
                            "51678",
                            "52024",
                            "27",
                            "28",
                            "51543",
                            "29",
                            "52011",
                            "51885",
                            "52025",
                            "2153",
                            "52012",
                            "31",
                            "15674",
                            "33",
                            "51925",
                            "16355",
                            "52026",
                            "35",
                            "37",
                            "38",
                            "51910",
                            "51875",
                            "39",
                            "40",
                            "41",
                            "42",
                            "15641",
                            "43",
                            "14890",
                            "44",
                            "51921",
                            "45",
                            "16348",
                            "46",
                            "51519",
                            "47",
                            "51834",
                            "52036",
                            "48",
                            "16338",
                            "50",
                            "52027",
                            "52",
                            "53",
                            "55",
                            "51770",
                            "51817",
                            "56",
                            "57",
                            "51793",
                            "52028",
                            "60",
                            "52013",
                            "61",
                            "62",
                            "63",
                            "52029",
                            "52014",
                            "52015",
                            "64",
                            "51896",
                            "15525",
                            "16377",
                            "52043",
                            "51833",
                            "67",
                            "51748",
                            "68",
                            "51520",
                            "70",
                            "2120",
                            "16328",
                            "51809",
                            "51915",
                            "74",
                            "73",
                            "52030",
                            "52037"
                        ],
                        "type": "string",
                        "description": "Select vehicle manufacturer. Leave as 'All' to show all makes.",
                        "default": "0"
                    },
                    "modelYearFrom": {
                        "title": "📅 Model Year From",
                        "minimum": 0,
                        "maximum": 2026,
                        "type": "integer",
                        "description": "Minimum model year (use 0 for no minimum)",
                        "default": 2017
                    },
                    "modelYearTo": {
                        "title": "📅 Model Year To",
                        "minimum": 0,
                        "maximum": 2026,
                        "type": "integer",
                        "description": "Maximum model year (use 0 for no maximum)",
                        "default": 2026
                    },
                    "priceFrom": {
                        "title": "💰 Price From ($)",
                        "minimum": 0,
                        "maximum": 9999999,
                        "type": "integer",
                        "description": "Minimum price in dollars (use 0 for no minimum)",
                        "default": 0
                    },
                    "priceTo": {
                        "title": "💰 Price To ($)",
                        "minimum": 0,
                        "maximum": 9999999,
                        "type": "integer",
                        "description": "Maximum price in dollars (use 0 for no maximum)",
                        "default": 0
                    },
                    "priceBadgeGreatPrice": {
                        "title": "Great Price Badge",
                        "type": "boolean",
                        "description": "Include vehicles with 'Great Price' badge",
                        "default": false
                    },
                    "priceBadgeGoodPrice": {
                        "title": "Good Price Badge",
                        "type": "boolean",
                        "description": "Include vehicles with 'Good Price' badge",
                        "default": false
                    },
                    "priceBadgeFairPrice": {
                        "title": "Fair Price Badge",
                        "type": "boolean",
                        "description": "Include vehicles with 'Fair Price' badge",
                        "default": false
                    },
                    "priceBadgeAboveAverage": {
                        "title": "Above Average Badge",
                        "type": "boolean",
                        "description": "Include vehicles with 'Above Average' price badge",
                        "default": false
                    },
                    "bodyType": {
                        "title": "🚙 Body Type",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select body type(s). Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1",
                                "2",
                                "3",
                                "5",
                                "6",
                                "12",
                                "14",
                                "15",
                                "7"
                            ],
                            "enumTitles": [
                                "Hatchback",
                                "Convertible",
                                "Coupe",
                                "Wagon",
                                "Sedan",
                                "Minivan",
                                "SUV",
                                "Pick-up Truck",
                                "Other"
                            ]
                        }
                    },
                    "exteriorColor": {
                        "title": "🎨 Exterior Color",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select exterior color(s). Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1",
                                "2",
                                "3",
                                "4",
                                "5",
                                "6",
                                "7",
                                "10",
                                "11",
                                "12",
                                "13",
                                "14",
                                "15",
                                "16"
                            ],
                            "enumTitles": [
                                "Beige",
                                "Blue",
                                "Brown",
                                "Bronze",
                                "Yellow",
                                "Grey",
                                "Green",
                                "Red",
                                "Black",
                                "Silver",
                                "Violet",
                                "White",
                                "Orange",
                                "Gold"
                            ]
                        }
                    },
                    "kmFrom": {
                        "title": "🛣️ Mileage From (km)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum mileage in kilometers (use 0 for no minimum)",
                        "default": 0
                    },
                    "kmTo": {
                        "title": "🛣️ Mileage To (km)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum mileage in kilometers (use 0 for no maximum)",
                        "default": 0
                    },
                    "driveTrain": {
                        "title": "Drive Train",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select drivetrain type(s). Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "A",
                                "F",
                                "R",
                                "X"
                            ],
                            "enumTitles": [
                                "All Wheel Drive",
                                "Front Wheel Drive",
                                "Rear Wheel Drive",
                                "4x4"
                            ]
                        }
                    },
                    "fuelType": {
                        "title": "⛽ Fuel Type",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select fuel type(s). Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "2",
                                "B",
                                "C",
                                "D",
                                "E",
                                "F",
                                "L",
                                "O"
                            ],
                            "enumTitles": [
                                "Gas/Electric Hybrid",
                                "Gasoline",
                                "Natural Gas",
                                "Diesel",
                                "Electric",
                                "Flex Fuel",
                                "Propane (LPG)",
                                "Unknown"
                            ]
                        }
                    },
                    "cylinders": {
                        "title": "Engine Cylinders",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select number of cylinders. Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "3",
                                "4",
                                "6",
                                "8",
                                "10plus"
                            ],
                            "enumTitles": [
                                "3 cylinder",
                                "4 cylinder",
                                "6 cylinder",
                                "8 cylinder",
                                "10+ cylinder"
                            ]
                        }
                    },
                    "transmission": {
                        "title": "⚙️ Transmission",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select transmission type(s). Leave empty to show all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "A",
                                "M"
                            ],
                            "enumTitles": [
                                "Automatic",
                                "Manual"
                            ]
                        }
                    },
                    "seatsFrom": {
                        "title": "🪑 Seating From",
                        "minimum": 0,
                        "maximum": 12,
                        "type": "integer",
                        "description": "Minimum seating capacity (use 0 for no minimum)",
                        "default": 0
                    },
                    "seatsTo": {
                        "title": "🪑 Seating To",
                        "minimum": 0,
                        "maximum": 12,
                        "type": "integer",
                        "description": "Maximum seating capacity (use 0 for no maximum)",
                        "default": 0
                    },
                    "doors": {
                        "title": "🚪 Number of Doors",
                        "enum": [
                            "all",
                            "2-3",
                            "4-5",
                            "6-7"
                        ],
                        "type": "string",
                        "description": "Select number of doors",
                        "default": "all"
                    },
                    "equipment": {
                        "title": "🎯 Equipment & Features",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Select desired equipment and features. Leave empty to show all vehicles.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1",
                                "2",
                                "3",
                                "4",
                                "5",
                                "6",
                                "10",
                                "11",
                                "12",
                                "13",
                                "15",
                                "16",
                                "17",
                                "18",
                                "19",
                                "20",
                                "21",
                                "23",
                                "25",
                                "26",
                                "27",
                                "28",
                                "29",
                                "30",
                                "31",
                                "32",
                                "34",
                                "36",
                                "38",
                                "39",
                                "40",
                                "41",
                                "42",
                                "43",
                                "44",
                                "45",
                                "46",
                                "47",
                                "48",
                                "50",
                                "52",
                                "54",
                                "111",
                                "112",
                                "113",
                                "114",
                                "115",
                                "116",
                                "117",
                                "118",
                                "119",
                                "121",
                                "122",
                                "123",
                                "124",
                                "125",
                                "126",
                                "127",
                                "128",
                                "129",
                                "130",
                                "131",
                                "132",
                                "133",
                                "134",
                                "135",
                                "136",
                                "137",
                                "138",
                                "139",
                                "140",
                                "141",
                                "142",
                                "143",
                                "144",
                                "145",
                                "146",
                                "147",
                                "148",
                                "149",
                                "150",
                                "151",
                                "152",
                                "153",
                                "154",
                                "155",
                                "156",
                                "157",
                                "158",
                                "159",
                                "160",
                                "161",
                                "162",
                                "170",
                                "173",
                                "174",
                                "187",
                                "189",
                                "190",
                                "210",
                                "211",
                                "212",
                                "213",
                                "214",
                                "215",
                                "216",
                                "217",
                                "218",
                                "219",
                                "220",
                                "221",
                                "222",
                                "223",
                                "224",
                                "225",
                                "226",
                                "227",
                                "228",
                                "229",
                                "230",
                                "231",
                                "232",
                                "233",
                                "237",
                                "238",
                                "239",
                                "240",
                                "241",
                                "242",
                                "243",
                                "244",
                                "245",
                                "248",
                                "249",
                                "250",
                                "251"
                            ],
                            "enumTitles": [
                                "ABS",
                                "Driver-side airbag",
                                "Passenger-side airbag",
                                "Sunroof",
                                "Air conditioning",
                                "Leather seats",
                                "Radio",
                                "4WD",
                                "Power steering",
                                "Power windows",
                                "Alloy wheels",
                                "Power Seats",
                                "Central door lock",
                                "Alarm system",
                                "Fog lights",
                                "Trailer hitch",
                                "Split rear seats",
                                "Navigation system",
                                "Winter Tires",
                                "Immobilizer",
                                "Roof rack",
                                "Tuned car",
                                "Catalytic Converter",
                                "Automatic climate control",
                                "Traction control",
                                "Side airbag",
                                "Heated Seats",
                                "Wheelchair Accessible",
                                "Cruise control",
                                "Xenon headlights",
                                "Park Distance Control",
                                "On-board computer",
                                "Electronic stability control",
                                "MP3",
                                "Wind deflector",
                                "Rear airbag",
                                "Head airbag",
                                "Central door lock with remote control",
                                "Right-hand drive",
                                "Panoramic Roof",
                                "Auxiliary heating",
                                "Tinted windows",
                                "Cab or rented Car",
                                "Sport package",
                                "Start-stop system",
                                "Multi-function steering wheel",
                                "Daytime running lights",
                                "Sport suspension",
                                "Sport seats",
                                "Adaptive headlights",
                                "Ski bag",
                                "Power Mirrors",
                                "Bluetooth",
                                "Heads-up display",
                                "Hands-free equipment",
                                "Isofix",
                                "Light sensor",
                                "Rain sensor",
                                "Parking Assist Front Sensors",
                                "Parking Assist Rear Sensors",
                                "Parking assist system camera",
                                "Automatic Parking Assist",
                                "CD player",
                                "Adaptive Cruise Control",
                                "Armrest",
                                "Heated Windshield",
                                "Heated steering wheel",
                                "Hill-Start Assist",
                                "Digital radio",
                                "Power Tailgate",
                                "LED Headlights",
                                "LED Daytime Running Lights",
                                "Leather steering wheel",
                                "Lumbar support",
                                "Air suspension",
                                "Massage seats",
                                "Driver drowsiness detection",
                                "Night view assist",
                                "Emergency Brake Assist",
                                "Emergency system",
                                "Tire pressure monitoring system",
                                "Shift paddles",
                                "Sliding door",
                                "Remote Keyless Entry",
                                "Cooled Seats",
                                "Sound system",
                                "Voice Control",
                                "Lane departure warning system",
                                "Blind spot monitor",
                                "Touch screen",
                                "Television",
                                "USB",
                                "Traffic sign recognition",
                                "Biodiesel conversion",
                                "E10-enabled",
                                "Awning",
                                "360° camera",
                                "High beam assist",
                                "Headlight washer system",
                                "Summer Tires",
                                "All Season Tires",
                                "Steel wheels",
                                "Laser headlights",
                                "Glare-free high beam headlights",
                                "Spare Tire",
                                "Emergency Tire",
                                "Emergency Tire Repair Kit",
                                "Smoker's package",
                                "Ambient lighting",
                                "Hotspot",
                                "Apple CarPlay",
                                "Android Auto",
                                "Wireless Charging",
                                "Digital cockpit",
                                "Auto Dimming Rearview Mirror",
                                "Cargo barrier",
                                "Speed Limit Assist",
                                "Integrated music streaming",
                                "Fold flat passenger seat",
                                "Bi-Xenon headlights",
                                "Winter package",
                                "Distance warning system",
                                "Power Rear Seats",
                                "Range extender",
                                "Spoiler",
                                "Full-LED headlights",
                                "Electronic parking brake",
                                "Automatic Climate Control, Dual-Zone",
                                "Automatic Climate Control, Tri-Zone",
                                "Automatic Climate Control, Quad-Zone",
                                "Sliding Door Driver-Side",
                                "Sliding Door Passenger-Side",
                                "Rear seat heating",
                                "Heat Pump",
                                "Bidirectional Charging",
                                "Battery certificate"
                            ]
                        },
                        "default": []
                    },
                    "onlineSince": {
                        "title": "📅 Online Since (days)",
                        "minimum": 0,
                        "maximum": 14,
                        "type": "integer",
                        "description": "Show listings posted within the last X days (0 = All, max 14)",
                        "default": 0
                    },
                    "keywords": {
                        "title": "🔍 Keywords",
                        "type": "string",
                        "description": "Search keywords in listing titles (comma-separated, e.g., xDrive, BlueMotion)",
                        "default": ""
                    },
                    "enableDeduplication": {
                        "title": "Skip Previously Seen Items",
                        "type": "boolean",
                        "description": "Avoid re-processing items that were collected in previous runs",
                        "default": true
                    },
                    "deduplicationStoreName": {
                        "title": "Deduplication Storage",
                        "type": "string",
                        "description": "Storage name for tracking previously seen items",
                        "default": "autotrader-seen-items"
                    },
                    "discordWebhookUrl": {
                        "title": "Discord Webhook URL",
                        "type": "string",
                        "description": "Webhook URL for sending notifications to Discord (leave empty to disable)",
                        "default": ""
                    },
                    "discordNotifyOnlyNew": {
                        "title": "Notify Only New Items",
                        "type": "boolean",
                        "description": "Send notifications only for items not seen in previous runs",
                        "default": true
                    },
                    "discordMaxItemsPerMessage": {
                        "title": "Items per Notification",
                        "minimum": 1,
                        "maximum": 10,
                        "type": "integer",
                        "description": "Maximum listings to include in each Discord message",
                        "default": 5
                    },
                    "discordImageDisplay": {
                        "title": "Image Display Style",
                        "enum": [
                            "thumbnail",
                            "full",
                            "none"
                        ],
                        "type": "string",
                        "description": "How to display images in Discord notifications",
                        "default": "thumbnail"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
