Mobile.de Scraper exports public car and vehicle listings into structured JSON, CSV, Excel, or API-ready records. Paste a Mobile.de search URL, choose a result limit, and collect stable listing IDs, prices, mileage, specifications, seller information, and source provenance.
Use this Mobile.de car listings scraper for market research, price tracking, dealer inventory analysis, vehicle comparisons, and repeatable data pipelines. It provides a practical Mobile de API workflow through Apify runs, schedules, webhooks, MCP, and dataset exports.
Example input
{
"startUrls": [
{
"url": "https://suchen.mobile.de/fahrzeuge/search.html?dam=false&isSearchRequest=true&ms=1900%3B%3B%3B"
}
],
"maxItems": 20,
"includeDetails": false
}
Example output
{
"id": "123456789",
"url": "https://suchen.mobile.de/fahrzeuge/details.html?id=123456789",
"title": "Example vehicle",
"make": "Volkswagen",
"model": "Golf",
"price": 18990,
"currency": "EUR",
"mileageKm": 42500,
"firstRegistration": "2021-05",
"powerKw": 110,
"fuelType": "Petrol",
"transmission": "Automatic",
"sellerName": "Example dealer",
"rank": 1,
"source": "mobile.de",
"sourceUrl": "https://suchen.mobile.de/fahrzeuge/search.html?...",
"scrapedAt": "2026-08-30T22:00:00.000Z"
}
Optional fields are omitted when Mobile.de does not publish them for a listing.
What data can you export?
| Field | Description |
|---|---|
id |
Stable Mobile.de listing identifier |
url |
Canonical public vehicle URL |
title |
Listing headline |
make |
Vehicle manufacturer |
model |
Vehicle model |
price |
Advertised numeric price |
currency |
Price currency, usually EUR |
mileageKm |
Mileage normalized to kilometers |
firstRegistration |
Public first-registration value |
powerKw |
Engine power in kilowatts |
fuelType |
Fuel or energy type |
transmission |
Transmission type |
bodyType |
Vehicle body style |
color |
Public exterior color |
description |
Seller-provided listing description |
images |
Public vehicle image URLs |
sellerName |
Public seller or dealership name |
sellerType |
Dealer or private-seller classification when available |
sellerPhone |
Public seller phone when shown |
location |
Public vehicle or seller location |
features |
Published equipment and feature labels |
rank |
Position in the collected result sequence |
source |
Source identifier (mobile.de) |
sourceUrl |
Search URL that produced the record |
scrapedAt |
UTC collection timestamp |
Input settings
| Input | Type | Default | Description |
|---|---|---|---|
startUrls |
array | required | One or more public Mobile.de vehicle search URLs |
maxItems |
integer | 20 |
Maximum unique vehicles saved across all URLs, from 1 to 1,000 |
includeDetails |
boolean | false |
Optionally request public listing-detail enrichment; keep disabled for the validated default search mode |
The limit applies across all supplied searches. Duplicate listing IDs are saved only once.
Who is it for?
- Dealers: compare advertised stock, prices, mileage, and specifications.
- Analysts: build repeatable snapshots for used-vehicle market studies.
- Buyers: organize matching public listings for comparison and shortlisting.
- Data teams: feed normalized vehicle records into databases or dashboards.
- Automation teams: scrape Mobile.de listings on a schedule and trigger downstream workflows.
API usage
cURL
curl -X POST \
'https://api.apify.com/v2/acts/fetch_cat~mobile-de-scraper/runs?token=APIFY_TOKEN' \
-H 'content-type: application/json' \
-d '{"startUrls":[{"url":"MOBILE_DE_SEARCH_URL"}],"maxItems":20,"includeDetails":false}'
JavaScript
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/mobile-de-scraper').call({
startUrls: [{ url: 'MOBILE_DE_SEARCH_URL' }],
maxItems: 20,
includeDetails: false,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
Python
from apify_client import ApifyClient
client = ApifyClient('APIFY_TOKEN')
run = client.actor('fetch_cat/mobile-de-scraper').call(run_input={
'startUrls': [{'url': 'MOBILE_DE_SEARCH_URL'}],
'maxItems': 20,
'includeDetails': False,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)
MCP and automation
Connect an AI client through https://mcp.apify.com/?tools=fetch_cat/mobile-de-scraper and ask it to run the Actor with a public search URL.
Add the server to Claude Code:
claude mcp add --transport http apify https://mcp.apify.com/?tools=fetch_cat/mobile-de-scraper
Or use this MCP client configuration:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=fetch_cat/mobile-de-scraper"
}
}
}
Example prompts:
- “Run Mobile.de Scraper for this filtered search URL and return 20 vehicles.”
- “Export the collected vehicle prices, mileage, seller, and source URLs as a table.”
- “Schedule this Mobile.de search weekly and summarize newly observed listing IDs.”
You can also:
- schedule recurring snapshots in Apify Console;
- trigger runs from webhooks or n8n;
- export datasets as JSON, CSV, Excel, XML, or RSS;
- retrieve results through the Apify API;
- send completed-run webhooks to your own application.
Reliability and limits
- The validated default mode collects public, logged-out Mobile.de search data.
- Available fields vary by seller, vehicle category, and listing type.
- Mobile.de can change its pages or temporarily challenge requests.
- A listing removed at the source cannot be returned.
maxItemsis an upper limit; narrow searches may contain fewer vehicles.- Multiple input URLs share one global result limit.
- Output is saved progressively so completed records remain available if a later request fails.
- Login-only messages, account data, and dealer-only tools are not accessed.
Tips
- Use a specific filtered URL for reproducible datasets.
- Keep the default
includeDetails: falsefor the validated search collection mode. - Detail enrichment is optional and can vary with listing availability and source responses.
- Deduplicate historical snapshots by
idin your destination system. - Compare
scrapedAtvalues when tracking listing changes over time.
Support
For help, open an issue from the Actor's Apify Store page. Include a sanitized input, run ID, expected behavior, and a short description of the problem.