# Kvdcars Cars Search Scraper (`ecomscrape/kvdcars-cars-search-scraper`) Actor

Automate vehicle data extraction from KVDCars.com, Europe's leading car auction platform. Collect comprehensive auction details, pricing information, and vehicle specifications for used cars, trucks, heavy machinery, and recreational vehicles across European markets.

- **URL**: https://apify.com/ecomscrape/kvdcars-cars-search-scraper.md
- **Developed by:** [ecomscrape](https://apify.com/ecomscrape) (community)
- **Categories:** Automation, Developer tools, E-commerce
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$15.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period. You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## Contact

If you encounter any issues or need to exchange information, please feel free to contact us through the following link:
[My profile](https://apify.com/ecomscrape)

## KVDCars.com Vehicle Auction Scraper: Extract European Used Car Listings & Auction Data

### Introduction

KVDCars.com operates as one of Europe's premier online vehicle auction platforms, specializing in used cars, light trucks, heavy vehicles, heavy machinery, and recreational vehicles. The platform connects dealers, businesses, and individual buyers with a wide range of vehicles through competitive bidding and buy-now options, serving markets primarily across Scandinavia and Northern Europe.

For automotive dealers, fleet managers, equipment buyers, and market analysts, KVDCars.com contains valuable auction data including real-time bidding information, vehicle specifications, pricing trends, and inventory availability. However, manually tracking auctions, comparing prices across multiple vehicle categories, and analyzing market trends requires constant monitoring and data compilation.

The KVDCars.com Vehicle Auction Scraper automates this entire process, enabling systematic collection of auction listings, pricing data, and vehicle details. Whether you're a dealer sourcing inventory, an analyst tracking market prices, or a fleet manager monitoring available vehicles, this scraper transforms hours of manual research into minutes of automated data extraction.

### Scraper Overview

The KVDCars.com Vehicle Auction Scraper is a specialized data extraction tool designed to systematically collect vehicle auction listings and detailed bidding information from KVDCars.com's platform. This scraper uses advanced automation to navigate through various vehicle categories, auction types, and search results while extracting comprehensive auction and vehicle data.

Key advantages include support for multiple vehicle categories (cars, trucks, machinery, recreational vehicles), flexible search filtering by keywords and vehicle types, configurable sorting options for strategic bidding, and robust retry mechanisms for reliable data collection. The tool is particularly valuable for automotive dealers seeking inventory, equipment buyers monitoring machinery auctions, market researchers analyzing pricing trends, and fleet managers sourcing vehicles at competitive prices.

The scraper handles both active auctions and buy-now listings, capturing critical auction timing data, bidding information, pricing details, and vehicle specifications. Users can target specific vehicle categories, sort results by various criteria including price and popularity, and extract data at scale for comprehensive market analysis.

### Input and Output Details

Example url 1: https://www.kvdcars.com/used-cars?terms=suv

Example url 2: https://www.kvdcars.com/all-vehicles?terms=s

Example url 3: https://www.kvdcars.com/all-vehicles?terms=s\&orderBy=cardealer\_price

Example Screenshot of automotive list by query page:

![](https://i.ibb.co/Fqb055Ls/Screenshot-from-2026-01-10-00-01-40.png)

#### Input Format

The scraper accepts JSON configuration allowing precise control over auction data extraction from KVDCars.com.

##### Scrape with URLs:

```json
{
  "proxy": {
    "useApifyProxy": false
  },
  "ignore_url_failures": true,
  "max_retries_per_url": 2,
  "max_items_per_url": 20,
  "urls": [
    "https://www.kvdcars.com/used-cars?terms=suv",
    "https://www.kvdcars.com/heavy-vehicle?sort=-cardealer_price",
    "https://www.kvdcars.com/heavy-machinery?terms=excavator"
  ]
}
```

**The `urls` parameter**: Add URLs of vehicle listing pages from KVDCars.com. Include search results, filtered views, or specific category pages. Paste URLs individually or use bulk edit for prepared lists.

**The `ignore_url_failures` parameter**: When `true`, scraper continues running even if some URLs fail after maximum retries. Essential for large-scale scraping where individual URL failures shouldn't halt the entire job.

*When providing URLs, search filter options are automatically disabled.*

##### Scrape with Search Filters:

```json
{
  "keyword": "BMW",
  "vehical_type": "used-cars",
  "sort_by": "-cardealer_price",
  "offset": 0,
  "max_items_per_url": 50,
  "max_retries_per_url": 2,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"],
    "apifyProxyCountry": "SE"
  }
}
```

**The `keyword` parameter**: Enter search terms to find specific vehicles (e.g., "BMW", "Mercedes", "Volvo", "excavator", "truck"). Works across all vehicle categories.

**The `vehical_type` parameter**: Select vehicle category to scrape:

- `"all-vehicles"` - All categories combined
- `"used-cars"` - Passenger vehicles
- `"light-truck"` - Light commercial vehicles
- `"heavy-vehicle"` - Heavy trucks and commercial vehicles
- `"heavy-machinery"` - Construction and industrial equipment
- `"recreational-vehicles"` - RVs, campers, boats

**The `sort_by` parameter**: Sort auction listings by various criteria:

- `"-grade"` - Recommended (highest grade first)
- `"-cardealer_price"` / `"cardealer_price"` - Highest/lowest car dealer price
- `"countdown_start_at"` / `"-countdown_start_at"` - Closest/farthest to start date
- `"-popularity"` / `"popularity"` - Highest/lowest popularity
- `"-highest_bid_amount"` / `"highest_bid_amount"` - Highest/lowest current bid
- `"-buy_now_amount"` / `"buy_now_amount"` - Highest/lowest buy-now price

**The `offset` parameter**: Starting position for scraping results. Useful for pagination and resuming interrupted scrapes.

*When using search filters, leave the `urls` field empty.*

##### General Options:

**The `max_items_per_url` parameter**: Limit items per URL or search query. Default is 20, suitable for sampling; increase for comprehensive data collection.

**The `max_retries_per_url` parameter**: Maximum retry attempts for failed requests. Default is 2, balancing thoroughness with efficiency.

**The `proxy` parameter**: Proxy configuration for avoiding detection. Recommended to use Swedish proxies for optimal KVDCars.com access.

#### Output Format

The scraper returns structured auction and vehicle data with extensive fields for comprehensive analysis:

- **ID**: Unique auction identifier. *Essential for tracking specific auctions, linking related data, and preventing duplicates in databases.*

- **Auction Type**: Type of auction process. *Indicates whether it's standard bidding, timed auction, or other format—critical for bidding strategy.*

- **Bidding Fee**: Fee charged to bidders. *Important cost consideration for dealers calculating total acquisition costs.*

- **Bidding Fee Corporate**: Corporate bidder fee structure. *Different fee structure for business buyers versus individual bidders.*

- **Mediation Fee**: Platform mediation charges. *Additional cost factor in total vehicle acquisition price.*

- **Mediation Fee Corporate**: Corporate mediation fee. *Business-specific mediation costs affecting total purchase price.*

- **Buy Now**: Boolean indicating buy-now availability. *Quick filter for vehicles available for immediate purchase without bidding.*

- **Closed At**: Auction end timestamp. *Critical for deadline tracking and timing bid strategies.*

- **Published At**: Listing publication date. *Indicates listing freshness and helps track inventory turnover.*

- **Countdown Duration**: Total auction duration. *Shows auction length, helping identify quick-turnaround versus extended auctions.*

- **Countdown Start At**: Auction start time. *Important for scheduling bid monitoring and automated bidding systems.*

- **Created At**: Record creation timestamp. *Database management and historical tracking.*

- **Ready For Auction At**: When auction becomes active. *Identifies upcoming auctions for planning purposes.*

- **Currency**: Currency used (typically SEK for Swedish market). *Essential for international buyers and price comparison.*

- **Max Bid Raise**: Maximum allowed bid increment. *Important for understanding bidding rules and competitive strategy.*

- **Min Bid Raise**: Minimum required bid increment. *Critical for valid bid placement.*

- **Start Bid**: Opening bid amount. *Base price point for auction, helps assess value and competitive interest.*

- **Opened At**: When bidding opened. *Tracks active bidding period start.*

- **Process Object ID**: Internal processing reference. *Technical identifier for system integration.*

- **Ready For Checkout**: Boolean for purchase readiness. *Indicates if vehicle is ready for immediate purchase completion.*

- **Sold For**: Final sale price (if sold). *Critical market data for pricing analysis and valuation trends.*

- **Sell Method**: How vehicle was sold (auction/buy-now). *Differentiates pricing dynamics between methods.*

- **Slug**: URL-friendly identifier. *Used for constructing direct links and web references.*

- **Auction URL**: Direct link to auction listing. *Enables immediate access to full listing details and verification.*

- **State**: Current auction status (active/closed/pending). *Essential for filtering relevant auctions and tracking status.*

- **Targeted Auction Group ID**: Auction group classification. *Helps identify special auctions or dealer groups.*

- **Updated At**: Last update timestamp. *Shows data freshness and change tracking.*

- **Releasing**: Boolean for release status. *Indicates if vehicle is ready for handover.*

- **Loan**: Financing availability indicator. *Shows if platform financing is available.*

- **Buy Now Amount**: Immediate purchase price. *Fixed price alternative to auction bidding.*

- **Buy Now Available**: Boolean for buy-now option. *Quick filter for immediate purchase opportunities.*

- **Buy Now Until**: Buy-now expiration timestamp. *Deadline for fixed-price purchase before auction-only.*

- **Eligible For Additional Services**: Boolean for extra services. *Indicates available value-added services (warranty, delivery, etc.).*

- **Coming Soon**: Boolean for upcoming listings. *Identifies pre-announced vehicles for advance planning.*

- **Preliminary Price**: Estimated market value. *Dealer valuation helping assess deal quality.*

- **Max Allowed Bid**: Maximum bid ceiling if applicable. *Important constraint for automated bidding systems.*

- **Is Reserved**: Boolean for reserve price. *Indicates if auction has minimum acceptable price.*

- **Is Sold By Buy Now**: Boolean showing buy-now purchase. *Identifies vehicles sold at fixed price versus auction.*

- **Winning Bid**: Current highest bid amount. *Real-time competitive intelligence for active auctions.*

- **Process Object**: Detailed process information object. *Contains nested data about auction workflow and status.*

- **Preview Images**: Array of vehicle image URLs. *Visual inspection data for quality assessment and listing verification.*

- **Preview Image**: Primary thumbnail image. *Main visual reference for quick identification.*

- **Active Auction**: Boolean for active status. *Quick filter for currently biddable auctions.*

Each field supports comprehensive auction analysis, competitive bidding strategies, market valuation research, and inventory sourcing decisions.

##### Example Output:

```json
[
  {
  "id": "278746",
  "auction_type": "BIDDING",
  "bidding_fee": "4990.00",
  "bidding_fee_corporate": "6600.00",
  "mediation_fee": 0,
  "mediation_fee_corporate": 0,
  "buy_now": false,
  "closed_at": null,
  "published_at": "2026-01-08T15:55:44.031335+00:00",
  "countdown_duration": 210,
  "countdown_start_at": "2026-01-12T19:16:30+00:00",
  "created_at": "2026-01-08T09:25:00.906369+00:00",
  "ready_for_auction_at": "2026-01-11",
  "currency": "SEK",
  "max_bid_raise": 100000,
  "min_bid_raise": 500,
  "start_bid": 75000,
  "opened_at": "2026-01-08T15:55:44.005804+00:00",
  "process_object_id": "7264982",
  "ready_for_checkout": false,
  "sold_for": null,
  "sell_method": null,
  "slug": "nissan-qashqai-1-5-dci-110hk",
  "auction_url": "https://www.kvd.se/auktioner/nissan-qashqai-1-5-dci-110hk-278746",
  "state": "OPEN",
  "targeted_auction_group_id": null,
  "updated_at": "2026-01-09T10:03:21.044172+00:00",
  "releasing": null,
  "loan": {
    "loan_cost": 548,
    "loan_cost_buy_now": null
  },
  "buy_now_amount": 130000,
  "buy_now_available": false,
  "buy_now_until": "2026-01-10T19:16:30+00:00",
  "eligible_for_additional_services": true,
  "coming_soon": false,
  "preliminary_price": 150000,
  "max_allowed_bid": 225000,
  "is_reserved": false,
  "is_sold_by_buy_now": false,
  "winning_bid": null,
  "process_object": {
    "certified": false,
    "id": "7264982",
    "test_drive_allowed": true,
    "object_type": "CAR",
    "created_at": "2025-12-08 19:02:16.687547+00:00",
    "properties": {
      "exterior_color": "Brown",
      "ad_header": "Qashqai 1.5 dCi (110hk) Tekna+ BOSE 360 Läder",
      "number_of_previous_owners": 2,
      "fuels": [
        {
          "engine_power": 110,
          "co2": 99,
          "consumption": 3.8,
          "fuel_code": "Diesel"
        }
      ],
      "must_export": false,
      "has_unpaid_loan": false,
      "family_name": "Qashqai",
      "exportable": true,
      "odometer_unit": "km",
      "heavy_equipment": false,
      "body": "SUV",
      "gearbox": "Manual",
      "title": "Nissan Qashqai 1.5 dCi (110hk)",
      "package": "Tekna+ BOSE 360 Läder",
      "deductible_vat": false,
      "odometer_reading": 160200,
      "brand": "Nissan",
      "model_year": 2018,
      "eco_friendly": false,
      "model_name": "Qashqai 1.5 dCi (110hk)",
      "registration_plate": "JMR568",
      "sale_limited_to_corporate": false,
      "heading1": "Nissan Qashqai",
      "heading2": "1.5 dCi",
      "heading3": "Tekna+ BOSE 360 Läder"
    },
    "display_car360_spin": true,
    "presentation_approved": false,
    "is_releasable": false,
    "reduced_price": false,
    "base_object_id": "462965",
    "base_object": {
      "fabric_and_make": "NISSAN",
      "id": "462965",
      "earliest_available_at": null,
      "exterior_color": "Brown",
      "created_at": "2025-11-12T08:22:23.488529+00:00",
      "fuels": [
        {
          "fuel_code": "Diesel",
          "power_unit": "EG",
          "engine_power": 81,
          "engine_power_hp": 110,
          "fuel_tank_volume": ""
        }
      ],
      "family_name": "Qashqai",
      "model_id": null,
      "base_object_type": "CAR",
      "state": "IMPORTING_INTO_PROCESS_OBJECT",
      "odometer_unit": "km",
      "body": "SUV",
      "gearbox": "Manual",
      "registration_country": "se",
      "year": "2018",
      "odometer_reading": 158900,
      "brand": "Nissan",
      "model_name": "Qashqai 1.5 dCi (110hk)",
      "sales_flow": "CONSUMER_CARS",
      "registration_plate": "JMR568",
      "technical_specification": {
        "model_id": null,
        "vehicle": {
          "brand": "Nissan",
          "body": "SUV",
          "model_name": "Qashqai 1.5 dCi (110hk)",
          "family_name": "Qashqai"
        },
        "year": "2018"
      }
    },
    "buy_now_amount": 130000,
    "sell_method": "BIDDING",
    "offsite_sales_contact": null,
    "statistical_valuation": {
      "bp_white": 137711,
      "bp_orange": 137711,
      "market_price": 137711,
      "bp_green": null
    },
    "state": "AUCTION",
    "condition_classification": "STANDARD",
    "lease_return_properties": {},
    "initial_buy_now_amount": 130000,
    "proactive_brokering": null,
    "is_fixed_price": false,
    "vehicle_type": "CAR",
    "car360_spin": null,
    "exportable": true,
    "deductible_vat": false,
    "collision_warranty": null,
    "title": "Nissan Qashqai 1.5 dCi (110hk)",
    "brand": "Nissan",
    "family_name": "Qashqai",
    "model_name": "Qashqai 1.5 dCi (110hk)",
    "package": "Tekna+ BOSE 360 Läder",
    "heading1": "Nissan Qashqai",
    "heading2": "1.5 dCi",
    "heading3": "Tekna+ BOSE 360 Läder",
    "valuation": {
      "id": 216378,
      "process_object_id": "7264982",
      "valuator_comment": {
        "en": "A Qashqai 1.5 dCi Tekna+ 2018 that offers low consumption, responsive diesel power and a safe driving feel. The efficient engine makes the car easy to handle both in city traffic and on the highway, while the Tekna+ equipment provides high comfort and modern function. The cabin is spacious with comfortable seating and smart solutions for everyday needs. A practical and well-equipped choice for those who want comfort, function and economy in one package.",
        "sv": "En Qashqai 1.5 dCi Tekna+ 2018 som bjuder på låg förbrukning, följsam dieselkraft och trygg körkänsla. Den effektiva motorn gör bilen lätt att hantera både i stadstrafik och på landsväg, samtidigt som Tekna+-utrustningen ger hög komfort och modern funktion. Kupén är rymlig med skön sittkomfort och smarta lösningar för vardagens behov. Ett praktiskt och välutrustat val för dig som vill ha komfort, funktion och ekonomi i ett paket.",
        "se": "En Qashqai 1.5 dCi Tekna+ 2018 som bjuder på låg förbrukning, följsam dieselkraft och trygg körkänsla. Den effektiva motorn gör bilen lätt att hantera både i stadstrafik och på landsväg, samtidigt som Tekna+-utrustningen ger hög komfort och modern funktion. Kupén är rymlig med skön sittkomfort och smarta lösningar för vardagens behov. Ett praktiskt och välutrustat val för dig som vill ha komfort, funktion och ekonomi i ett paket."
      },
      "generated_valuator_comment": {
        "en": "A Nissan Qashqai SUV  from 2018 with dieselengine. Richly equipped with, among others, panorama roof, GPS, rear camera, keyless start-system and tow bar. Newly inspected and does not need to be inspected until November next year.",
        "et": "A Nissan Qashqai MAASTUR  alates 2018 koos diiselmootorratas. Rikkalikult varustatud muu hulgas Panoraamkatus, GPS, tagumine kaamera, Võtmeta sisenemissüsteem ja veokonks. Hiljuti kontrollitud ja seda ei ole vaja kontrollida enne november järgmist aastat.",
        "fi": "A Nissan Qashqai MAASTURI  alkaen 2018 kanssa dieselmoottoripyörä. Hyvin varustettu muun muassa seuraavilla varusteilla: Panoraamakatto, GPS, takakamera, Avaimeton sisäänpääsyjärjestelmä ja vetokoukku. Hiljattain tarkastettu, eikä sitä tarvitse tarkastaa ennen seuraavaa vuotta marraskuuta.",
        "pl": "A Nissan Qashqai SUV-a  z 2018 z olej napędowymotocykl. Bogato wyposażony między innymi w Panoramiczny dach, GPS, kamera tylna, Bezkluczykowy system dostępu i hak holowniczy. Nowo sprawdzony i nie musi być sprawdzany do listopada następnego roku.",
        "sv": "En Nissan Qashqai SUV från 2018 med dieselmotor. Rikligt utrustad med bland annat panoramatak, GPS, backkamera, nyckellöst startsystem och dragkrok. Nybesiktigad och behöver inte besiktas förrän november nästa år."
      },
      "car_dealer_price": 150000,
      "end_user_test_protocol": {
        "tires": {
          "extra_tires": {
            "other": {
              "rim_size": "19",
              "rim_type": "Alu.fälg",
              "tire_type": "Sommardäck",
              "other_info": "Behövs ej"
            },
            "grades": {
              "rear_left": 2,
              "front_left": 3,
              "rear_right": 2,
              "front_right": 3
            },
            "tread_depths": {
              "rear_left": 3,
              "front_left": 7,
              "rear_right": 3,
              "front_right": 7
            }
          },
          "mounted_tires": {
            "other": {
              "rim_size": "17",
              "rim_type": "Alu.fälg",
              "tire_type": "Dubbade vinterdäck",
              "other_info": "Behövs ej"
            },
            "grades": {
              "rear_left": 3,
              "front_left": 3,
              "rear_right": 3,
              "front_right": 3
            },
            "tread_depths": {
              "rear_left": 7,
              "front_left": 7,
              "rear_right": 7,
              "front_right": 7
            }
          }
        },
        "grades": {
          "t_o_t_a_l": {
            "max": 5,
            "min": 1,
            "value": 3
          },
          "b_r_a_k_e_s": {
            "max": 3,
            "min": 1,
            "value": 3
          },
          "e_x_t_e_r_i_o_r": {
            "max": 5,
            "min": 1,
            "value": 3
          },
          "i_n_t_e_r_i_o_r": {
            "max": 5,
            "min": 1,
            "value": 3
          },
          "e_n_g_i_n_e__a_n_d__g_e_a_r_b_o_x": {
            "max": 3,
            "min": 1,
            "value": 3
          },
          "t_e_c_h_n_o_l_o_g_y__a_n_d__e_q_u_i_p_m_e_n_t": {
            "max": 3,
            "min": 1,
            "value": 2
          }
        },
        "towbar": false,
        "remarks": {
          "b_r_a_k_e_s": [],
          "e_x_t_e_r_i_o_r": [
            {
              "id": "72649822",
              "key": "Flertal stenskott, dörruppslag och repor",
              "other": null,
              "point": 0,
              "category": "EXTERIOR"
            }
          ],
          "i_n_t_e_r_i_o_r": [
            {
              "id": "72649821",
              "key": "Invändigt flertal repor, fläckar och märken. Sliten inredning.",
              "other": null,
              "point": 0,
              "category": "INTERIOR"
            }
          ],
          "e_n_g_i_n_e__a_n_d__g_e_a_r_b_o_x": [],
          "t_e_c_h_n_o_l_o_g_y__a_n_d__e_q_u_i_p_m_e_n_t": [
            {
              "id": "72649824",
              "key": "Däcktrycksövervakningslampa lyser. Strålkastarglas matta.",
              "other": null,
              "point": 0,
              "category": "TECHNOLOGY_AND_EQUIPMENT"
            }
          ]
        },
        "textile": "Helläder",
        "boat_type": null,
        "equipment": [
          "Backkamera",
          "GPS",
          "Panoramatak",
          "Nyckellöst startsystem",
          "AC",
          "Bluetooth",
          "Farthållare",
          "Elstol förarplats",
          "Elstol passagerarplats",
          "Eluppvärmd vindruta",
          "Filbytesvarnare",
          "Klimatanläggning",
          "Motorvärmare",
          "USB-ingång",
          "Antispinn",
          "CD-Stereo",
          "Elspeglar",
          "Fjärrlås",
          "Radio",
          "Regnsensor",
          "Stolsvärme fram",
          "360 kamera",
          "Antisladdsystem",
          "Auto hold",
          "AUX-ingång",
          "Elhiss bak",
          "Elhiss fram",
          "Elinfällbara speglar",
          "Fastmonterad dragkrok",
          "Isofix bak",
          "Parkeringssensorer bak",
          "Parkeringssensorer fram",
          "Urkopplingsbar passagerarairbag",
          "Adaptiva Bi LED-strålkastare",
          "iKey nyckelfritt system",
          "BOSE ljudanläggning",
          "Parkeringsassistent",
          "AVM Around View Monitor",
          "Helljusassistent"
        ],
        "boat_width": null,
        "created_at": "2025-12-19T15:23:55",
        "boat_engine": null,
        "boat_length": null,
        "boat_weight": null,
        "finish_type": "Metallic",
        "protocol_id": "229905",
        "stove_flames": null,
        "heating_system": null,
        "number_of_keys": 2,
        "boat_ce_branded": false,
        "boat_gear_model": null,
        "number_of_bunks": null,
        "number_of_seats": 5,
        "boat_engine_fuel": null,
        "boat_septic_tank": false,
        "is_repair_object": false,
        "boat_engine_power": null,
        "service_book_type": "EXISTS",
        "boat_exterior_color": null,
        "service_book_status": "Service utförd vid följande mil: 1881, 3862, 5751, 8712, 11742 mil, senast 2023-07-02",
        "boat_engine_serial_number": null,
        "odometer_reading_after_test": {
          "unit": "Mil",
          "value": 16020
        },
        "odometer_reading_after_test_in_km": 160200
      },
      "auction_price_valuation": {
        "currency": "SEK"
      },
      "finalised": true,
      "included_image_ids": null,
      "created_at": "2025-12-19T14:25:06.540408+00:00",
      "updated_at": "2026-01-08T09:24:51.013579+00:00",
      "valuator_comment_localized": "A Qashqai 1.5 dCi Tekna+ 2018 that offers low consumption, responsive diesel power and a safe driving feel. The efficient engine makes the car easy to handle both in city traffic and on the highway, while the Tekna+ equipment provides high comfort and modern function. The cabin is spacious with comfortable seating and smart solutions for everyday needs. A practical and well-equipped choice for those who want comfort, function and economy in one package."
    },
    "location_info": {
      "id": "513420",
      "process_object_id": "7264982",
      "location_type": "FACILITY",
      "created_at": "2025-12-09T08:35:53.035067+00:00",
      "updated_at": "2025-12-09T08:35:53.035070+00:00",
      "facility_id": "00000004-0004-0004-0004-000000000004",
      "parking_zone": "A",
      "parking_number": null,
      "outgoing_time": null,
      "left_at": null,
      "outgoing_type": null,
      "facility": {
        "id": "00000004-0004-0004-0004-000000000004",
        "name": "Luleå",
        "operator": "PARTNER",
        "legacy_identifiers": [
          "Luleå"
        ],
        "object_types": [
          "CAR",
          "LIGHT_TRANSPORT"
        ],
        "created_at": "2018-03-04T13:18:23.295898+00:00",
        "calendar_organisational_unit_id": "6",
        "parking_areas": [
          {
            "id": 8,
            "name": "B1",
            "created_at": "2018-03-04T13:18:23.295898+00:00"
          },
          {
            "id": 7,
            "name": "A1",
            "created_at": "2018-03-04T13:18:23.295898+00:00"
          }
        ],
        "active": true,
        "latitude": 65.612583,
        "longitude": 22.1402219,
        "distance": null,
        "address": "Gårdsvägen 8",
        "post_code": "97347",
        "city": "Luleå",
        "facility_type": "MTV_LU",
        "facility_map_url": "https://www.google.com/maps/dir/65.612583,22.1402219/@65.612583,22.1402219,z13",
        "contact_phone": "+46727181825",
        "contact_email": "filial.lulea@kvdbil.se",
        "allow_incoming_transport": false,
        "allow_lease_returns": false,
        "allow_unplanned_drop_off_fleet_manager": true,
        "transport_to_available": true,
        "transport_from_available": true
      }
    }
  },
  "preview_images": [
    {
      "process_object_id": "7264982",
      "uri": "https://kvdbil-images.imgix.net/7264982/be93c9d6.jpg",
      "storage_uri": "https://storage.googleapis.com/kvdbil-production/production-cropped/7264982/be93c9d6.jpg",
      "type": "PRESENTATION",
      "content_type": "image",
      "order": 1
    },
    {
      "process_object_id": "7264982",
      "uri": "https://kvdbil-images.imgix.net/7264982/dc90b1ad.jpg",
      "storage_uri": "https://storage.googleapis.com/kvdbil-production/production-cropped/7264982/dc90b1ad.jpg",
      "type": "PRESENTATION",
      "content_type": "image",
      "order": 2
    }
  ],
  "preview_image": "https://kvdbil-images.imgix.net/7264982/be93c9d6.jpg",
  "active_auction": {
    "countdown_in_progress": false,
    "preliminary_close_at": "2026-01-12T19:20:00+00:00",
    "updated_at": "2026-01-08T15:55:45.176238+00:00",
    "highest_bid": {
      "updated_at": "2026-01-09T10:03:20.847207+00:00",
      "type": "AUTO",
      "created_at": "2026-01-09T10:03:20.847205+00:00",
      "amount": 80000,
      "id": 17396140,
      "auction_id": 278746
    },
    "auction_id": "278746",
    "buy_now_available": false,
    "my_bidder_alias": null,
    "created_at": "2026-01-08T15:55:44.008166+00:00",
    "bids": [
      {
        "bidder_alias": "4",
        "updated_at": "2026-01-09T10:03:20.847207+00:00",
        "type": "AUTO",
        "created_at": "2026-01-09T10:03:20.847205+00:00",
        "amount": 80000,
        "id": 17396140,
        "auction_id": 278746
      },
      {
        "bidder_alias": "3",
        "updated_at": "2026-01-09T10:03:20.847202+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-09T10:03:20.847195+00:00",
        "amount": 79500,
        "id": 17396139,
        "auction_id": 278746
      },
      {
        "bidder_alias": "4",
        "updated_at": "2026-01-09T10:02:51.676142+00:00",
        "type": "AUTO",
        "created_at": "2026-01-09T10:02:51.676138+00:00",
        "amount": 79000,
        "id": 17396131,
        "auction_id": 278746
      },
      {
        "bidder_alias": "3",
        "updated_at": "2026-01-09T10:02:51.676134+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-09T10:02:51.676125+00:00",
        "amount": 78500,
        "id": 17396130,
        "auction_id": 278746
      },
      {
        "bidder_alias": "4",
        "updated_at": "2026-01-09T10:02:16.898172+00:00",
        "type": "AUTO",
        "created_at": "2026-01-09T10:02:16.898170+00:00",
        "amount": 78000,
        "id": 17396123,
        "auction_id": 278746
      },
      {
        "bidder_alias": "3",
        "updated_at": "2026-01-09T10:02:16.898160+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-09T10:02:16.898154+00:00",
        "amount": 77500,
        "id": 17396122,
        "auction_id": 278746
      },
      {
        "bidder_alias": "4",
        "updated_at": "2026-01-09T10:01:38.577596+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-09T10:01:38.577584+00:00",
        "amount": 77000,
        "id": 17396104,
        "auction_id": 278746
      },
      {
        "bidder_alias": "3",
        "updated_at": "2026-01-09T10:00:45.246667+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-09T10:00:45.246658+00:00",
        "amount": 76500,
        "id": 17396085,
        "auction_id": 278746
      },
      {
        "bidder_alias": "1",
        "updated_at": "2026-01-09T08:48:33.542201+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-09T08:48:33.542188+00:00",
        "amount": 76000,
        "id": 17395537,
        "auction_id": 278746
      },
      {
        "bidder_alias": "2",
        "updated_at": "2026-01-08T21:05:31.886965+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-08T21:05:31.886959+00:00",
        "amount": 75500,
        "id": 17394800,
        "auction_id": 278746
      },
      {
        "bidder_alias": "1",
        "updated_at": "2026-01-08T20:18:52.544107+00:00",
        "type": "NORMAL",
        "created_at": "2026-01-08T20:18:52.544101+00:00",
        "amount": 75000,
        "id": 17394723,
        "auction_id": 278746
      }
    ],
    "releasing": null,
    "reservation_price_reached": false,
    "closed": false
  },
  "from_url": "https://www.kvdcars.com/used-cars?terms=suv&orderBy=cardealer_price"
}
]
```

### Usage Guide

#### Option 1: Scraping with URLs

Navigate to KVDCars.com and perform searches using their interface. Apply filters for vehicle type, price range, location, or specific features. Copy resulting URLs into the `urls` array. This method is ideal when you have specific search criteria or want to track particular listing pages.

**Best practices:**

- Test individual URLs before batch processing
- Include variety of listing types (active auctions, buy-now, coming soon)
- Monitor for URL structure changes on the platform
- Use descriptive URL parameters to ensure targeted results
- Save working URLs as templates for future scraping

**Troubleshooting:**

- Verify URLs load correctly in browser before adding to scraper
- Check for session-specific parameters that may expire
- Use `ignore_url_failures: true` for resilience
- Adjust retry settings for slow-loading pages

#### Option 2: Scraping with Search Filters

##### Building Effective Search Strategies

**Step 1: Select Vehicle Category**

Choose appropriate `vehical_type` based on your needs:

- **Used Cars**: Passenger vehicles, SUVs, sedans (dealer inventory sourcing)
- **Light Truck**: Vans, pickups, small commercial vehicles (fleet management)
- **Heavy Vehicle**: Trucks, buses, commercial haulers (logistics companies)
- **Heavy Machinery**: Excavators, loaders, construction equipment (contractors)
- **Recreational Vehicles**: RVs, campers, boats (specialty dealers)
- **All Vehicles**: Comprehensive market overview

**Step 2: Define Keywords**

Use specific terms for targeted results:

- **Brands**: "Volvo", "Scania", "Mercedes", "BMW", "Audi"
- **Models**: "XC90", "V90", "Actros", "Excavator 320"
- **Features**: "4WD", "automatic", "diesel", "hybrid"
- **Equipment**: "crane", "tipper", "refrigerated"

**Step 3: Configure Sorting**

Select `sort_by` strategy based on objectives:

- **Price Analysis**: Sort by `"-cardealer_price"` or `"cardealer_price"` for market range
- **Deal Hunting**: Use `"-grade"` for best recommended deals
- **Timing Strategy**: Sort by `"countdown_start_at"` for upcoming auctions
- **Competition Analysis**: Use `"-highest_bid_amount"` to see hot items
- **Inventory Sourcing**: Sort by `"-popularity"` for high-demand vehicles

**Step 4: Set Pagination**

Use `offset` parameter for systematic coverage:

- Start at `0` for initial scrape
- Increment by `max_items_per_url` value for next batch
- Track progress to ensure complete coverage
- Resume interrupted scrapes at last offset

##### Advanced Filtering Techniques

**Competitive Intelligence:**

- Sort by popularity to identify trending vehicles
- Track winning bids for market pricing insights
- Monitor buy-now availability for immediate opportunities
- Analyze bidding fee structures for total cost assessment

**Inventory Management:**

- Regular scrapes of specific categories to track availability
- Monitor "coming soon" listings for advance planning
- Track "ready for checkout" status for immediate purchases
- Filter by loan availability for financing-dependent buyers

**Market Analysis:**

- Collect data across all vehicle types for comprehensive overview
- Track preliminary prices versus final sold prices
- Analyze auction duration patterns and success rates
- Monitor reserved auctions to understand minimum pricing

**Strategic Sourcing:**

- Focus on auctions closing soon for immediate opportunities
- Target buy-now listings for quick inventory acquisition
- Filter by eligible additional services for value-added options
- Track corporate versus individual pricing structures

##### Data Validation

Verify extracted data:

- Auction timestamps are current and correctly formatted
- Pricing data is in expected currency (SEK)
- Image URLs are accessible and valid
- Auction states match actual platform status
- Bidding increments follow platform rules

##### Common Issues

**Auction Timing:**

- Monitor "countdown\_start\_at" carefully for accurate bidding windows
- Account for timezone differences (KVDCars uses CET/CEST)
- Check "closed\_at" timestamps to avoid expired auctions

**Pricing Data:**

- Distinguish between start\_bid, winning\_bid, and buy\_now\_amount
- Include all fees (bidding, mediation) in cost calculations
- Verify currency for international transactions

**Category Filtering:**

- Heavy machinery may overlap with heavy vehicles
- Recreational vehicles category includes diverse types
- Use keywords to narrow within broad categories

#### Proxy Configuration

**Geographic Targeting:**

- Swedish proxies recommended for KVDCars.com (Scandinavian platform)
- Use residential proxies for better success rates
- Rotate proxies for large-scale scraping operations

**Access Optimization:**

- Configure proxies to match platform's primary market
- Monitor for IP blocking and rotate as needed
- Use datacenter proxies for initial testing, residential for production

### Benefits and Applications

The KVDCars.com Vehicle Auction Scraper delivers substantial efficiency gains for vehicle acquisition and market research:

**Automotive Dealers:**

- Automated inventory sourcing across multiple vehicle categories
- Real-time auction monitoring without manual checking
- Competitive pricing intelligence for purchasing decisions
- Efficient deal identification through comprehensive data collection

**Fleet Managers:**

- Systematic vehicle availability tracking for fleet renewal
- Cost analysis across auction versus buy-now options
- Bulk vehicle sourcing from single data extraction
- Budget optimization through comparative pricing data

**Equipment Buyers:**

- Heavy machinery auction tracking for construction companies
- Price trend analysis for equipment acquisition timing
- Competitive bidding intelligence on high-value assets
- Comprehensive market coverage without constant monitoring

**Market Analysts:**

- Vehicle pricing trends across Scandinavian markets
- Auction success rate analysis by category
- Buy-now versus auction price comparisons
- Market demand indicators through popularity metrics

**Competitive Advantages:**

- Access to comprehensive auction data including all pricing components
- Real-time bidding information for strategic decision-making
- Systematic coverage of multiple vehicle categories simultaneously
- Integration capabilities with CRM, inventory management, and bidding systems

Data integrates with vehicle management systems, dealer management software, pricing analysis tools, and automated bidding platforms.

### Conclusion

The KVDCars.com Vehicle Auction Scraper transforms manual auction tracking into systematic automated data collection. By providing comprehensive access to European vehicle auction data spanning cars, trucks, machinery, and recreational vehicles, it enables dealers, fleet managers, and equipment buyers to make data-driven sourcing decisions.

Whether sourcing dealer inventory, managing fleet renewals, acquiring construction equipment, or conducting market research, this scraper delivers the systematic data extraction needed to compete effectively in European vehicle auctions.

Ready to optimize your vehicle acquisition strategy? Start extracting comprehensive auction data from KVDCars.com today.

## Your feedback

We are always working to improve Actors' performance. So, if you have any technical feedback about kvdcars.com Property Search Scraper or simply found a bug, please create an issue on the Actor's Issues tab in Apify Console.

# Actor input Schema

## `urls` (type: `array`):

Add the URLs of the Used Cars list page urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped after the maximum number of retries is reached.

## `keyword` (type: `string`):

Enter the keyword to search for items

## `vehical_type` (type: `string`):

Enter the keyword to search for items

## `sort_by` (type: `string`):

Filter items by (e.g., best\_deal\_desc\_script, price\_asc, price\_desc, distance\_asc\_script, mileage\_asc, mileage\_desc, year\_asc, year\_desc, created\_date\_desc)

## `offset` (type: `integer`):

Offset for start scraping

## `max_items_per_url` (type: `integer`):

Limit the number of items per URL or search filters you want to scrape

## `max_retries_per_url` (type: `integer`):

Limit the number of retries for each URL or search filters if the scrape is detected as a bot or the page fails to load

## `proxy` (type: `object`):

Select proxies to be used by your scraper.

## Actor input object example

```json
{
  "urls": [
    "https://www.kvdcars.com/used-cars?terms=suv"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "max_retries_per_url": 2,
  "proxy": {
    "useApifyProxy": false
  }
}
```

# 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 = {
    "urls": [
        "https://www.kvdcars.com/used-cars?terms=suv"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20,
    "max_retries_per_url": 2,
    "proxy": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("ecomscrape/kvdcars-cars-search-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 = {
    "urls": ["https://www.kvdcars.com/used-cars?terms=suv"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
    "max_retries_per_url": 2,
    "proxy": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("ecomscrape/kvdcars-cars-search-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.kvdcars.com/used-cars?terms=suv"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20,
  "max_retries_per_url": 2,
  "proxy": {
    "useApifyProxy": false
  }
}' |
apify call ecomscrape/kvdcars-cars-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

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

## OpenAPI specification

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