# Land Rover EU Pricing - Official Prices in 14 Markets (`rastriq/landrover-eu-pricing`) Actor

Get official Land Rover starting-from prices for Defender, Discovery and Discovery Sport across 14 European markets, in local currency, as clean JSON/CSV. No browser, no proxy.

- **URL**: https://apify.com/rastriq/landrover-eu-pricing.md
- **Developed by:** [Rastriq — Structured data from the world](https://apify.com/rastriq) (community)
- **Categories:** Automation, Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.20 / 1,000 results

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

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

## What's an Apify Actor?

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

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

## How to integrate an Actor?

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

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

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

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

# README

## Land Rover Price Scraper - Official EU Prices by Market (Defender, Discovery)

Get the official **Land Rover "starting from" prices** for **Defender, Discovery and Discovery Sport** across **14 European markets**, one clean record per model and market, in local currency. Built for car price monitoring, cross-border price comparison and automotive market intelligence.

The Actor reads the public Land Rover country sites with plain HTTP requests (no browser, no proxy needed), so runs are fast and cheap.

### Why use this Actor

- **Official source, not listings**: prices come straight from Land Rover's own model pages, not from dealer or marketplace ads.
- **14 markets in one run**: Austria, Belgium, Czech Republic, France, Germany, Italy, Netherlands, Norway, Poland, Portugal, Slovakia, Spain, Sweden and Switzerland.
- **Local currency, VAT included**: EUR, CHF, SEK, NOK, PLN and CZK, exactly as published.
- **Data quality flags, not silent filtering**: if a card promotes a special edition instead of the base model (for example Defender 90 in some markets), the record is kept and a `price_note` explains it.
- **Fail-loud run status**: the run status tells you how many markets worked (`OK`, `Partial` with reasons, or `Failed`).
- **Low cost**: pay per result, no compute surprises.

### Use cases

- Track Land Rover list-price changes over time (schedule the Actor daily or weekly).
- Compare the same model across countries (price gaps between ES, DE, FR, IT, etc.).
- Feed OEM pricing into competitor benchmarks, dealer pricing tools or BI dashboards.
- Add official Land Rover starting prices to automotive datasets and price-index research.

### How to use

1. Open the Actor and go to **Input**.
2. Select the **Markets** you need, or leave the list empty to scrape all 14.
3. Click **Start**. A run with two markets takes well under a minute.
4. Download the dataset as JSON, CSV, Excel or XML, or read it through the API.

### Input example

```json
{
  "countries": ["ES", "DE"]
}
```

| Field | Type | Description |
|---|---|---|
| `countries` | array of strings | Market codes: AT, BE, CH, CZ, DE, ES, FR, IT, NL, NO, PL, PT, SE, SK. Empty = all 14 markets. |
| `proxyConfiguration` | object | Optional. Off by default; normally not needed. |

### Output example

```json
{
  "brand": "Land Rover",
  "model": "Defender 110",
  "trim": null,
  "price": 72600,
  "currency": "EUR",
  "country_code": "DE",
  "market": "Germany",
  "price_type": "starting_from",
  "source_url": "https://www.landrover.de/defender/index.html",
  "scraped_at": "2026-10-04T10:00:00+00:00"
}
```

#### Output fields

| Field | Description |
|---|---|
| `brand` | Always `Land Rover`. |
| `model` | Defender 90 / 110 / 130 / Octa / Hard Top, Discovery, Discovery Sport. |
| `trim` | Reserved, currently always `null` (prices are per model). |
| `price` | Official starting-from list price, VAT included. |
| `currency` | ISO 4217 code: EUR, CHF, SEK, NOK, PLN, CZK. |
| `country_code`, `market` | ISO 3166-1 alpha-2 code and market name. |
| `price_type` | Always `starting_from`. |
| `source_url` | Official page the price was read from. |
| `scraped_at` | Extraction time in UTC (ISO 8601). |
| `price_note` | Only present when the card likely promotes a specific edition rather than the base model. |

### Pricing

Pay per result: **about $6 per 1,000 results** on the Free plan, with lower prices on paid Apify plans. A full run of all 14 markets returns typically 3-7 records per market, so it costs a few tens of cents. Platform usage is included in the per-result price for this Actor's own compute.

### Good to know

- **Range Rover** (Range Rover, Sport, Velar, Evoque) is not included: Land Rover does not publish a starting-from price for it online.
- Not every model is priced in every market (for example Defender Hard Top, or Discovery in Sweden and Norway). A model with no published price is simply not returned.
- Prices are list prices shown on the official site, not transaction prices or dealer discounts.
- Norway publishes prices for the Defender range only.

### FAQ

**Is it legal to scrape this data?** The Actor only reads publicly available pricing pages, one request per page at a gentle pace, and no personal data is collected. You remain responsible for complying with the site's terms and the laws that apply to your use case.

**How often should I run it?** List prices change rarely; daily or weekly is enough for most monitoring. Use Apify Schedules.

**What if a market fails?** The run ends with `Partial: X/14 markets ...` and lists the failed markets and reasons. If nothing can be extracted the run is marked as failed.

**Can I use it through the API, Make, Zapier or MCP?** Yes. Every Apify Actor can be called through the Apify API and clients, integrated with Make, Zapier, n8n and Google Sheets, and exposed to AI agents through the Apify MCP server.

### Support

Found a market that stopped returning prices, or need another brand or market? Open an issue from the Actor's **Issues** tab and include the run link.

# Actor input Schema

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

Markets to scrape, e.g. \["ES","DE"]. Leave empty to scrape all 14 markets (typically 3-7 records per market). Norway only publishes Defender prices.

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

Optional. Leave Apify Proxy off unless your runs are blocked. The official sites are served from each country domain, so no proxy is needed for normal use.

## Actor input object example

```json
{
  "countries": [
    "ES",
    "DE"
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

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

Dataset with one item per model and market.

# 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 = {
    "countries": [
        "ES",
        "DE"
    ],
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("rastriq/landrover-eu-pricing").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 = {
    "countries": [
        "ES",
        "DE",
    ],
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("rastriq/landrover-eu-pricing").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 '{
  "countries": [
    "ES",
    "DE"
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call rastriq/landrover-eu-pricing --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,rastriq/landrover-eu-pricing"
        }
    }
}
```

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/Kodiovp5kZBZxVZAZ/builds/K9odKvw9sf66BZYaq/openapi.json
