Skip to main content

Mobile.de Parser Quick Start

Get German automotive data in 5 minutes with our step-by-step guide. Extract vehicle listings, pricing, and market intelligence from Germany's largest car marketplace.

What You'll Learn
  • Set up your API key in under 2 minutes
  • Make your first request to extract German vehicle data
  • Handle responses and process automotive information
  • Implement best practices for German market data extraction
  • Troubleshoot common issues and optimize performance

๐Ÿš€ Prerequisitesโ€‹

:::

Quick Start

info Before You Start

  • Carapis Account - Sign up at dashboard.carapis.com
  • API Key - Get your Mobile.de parser API key from the dashboard
  • Basic Programming Knowledge - JavaScript, Python, or cURL
  • German Market Understanding - Familiarity with German automotive terms (recommended) :::

๐Ÿ“‹ Step 1: Get Your API Keyโ€‹

1.1 Sign Up for Carapisโ€‹

  1. Visit dashboard.carapis.com
  2. Click "Sign Up" and create your account
  3. Verify your email address

1.2 Activate Mobile.de Parserโ€‹

  1. Log in to your Carapis dashboard
  2. Navigate to "Parsers" โ†’ "Mobile.de"
  3. Click "Activate Parser"
  4. Choose your plan based on your German data needs

1.3 Get Your API Keyโ€‹

API Key Format

Your Mobile.de parser API key will look like this: mobile_de_parser_sk_1234567890abcdef1234567890abcdef

Keep this key secure and never share it publicly.

๐Ÿ”ง Step 2: Make Your First Requestโ€‹

JavaScript Exampleโ€‹

const axios = require('axios');

// Your API key from the dashboard
const API_KEY = 'mobile_de_parser_sk_1234567890abcdef1234567890abcdef';

// Search for BMW 3 Series in Berlin
const searchVehicles = async () => {
try {
const response = await axios.post(
'https://api.carapis.com/v1/parsers/mobile.de/search',
{
query: 'BMW 3er',
max_price: 50000,
location: 'Berlin',
fuel_type: 'diesel',
transmission: 'automatic',
year_from: 2020,
limit: 10,
},
{
headers: {
Authorization: `Bearer ${API_KEY}`,
'Content-Type': 'application/json',
},
},
);

console.log(`Found ${response.data.data.listings.length} vehicles`);
console.log('First vehicle:', response.data.data.listings[0]);

return response.data;
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
};

searchVehicles();

Python Exampleโ€‹

import requests
import json

# Your API key from the dashboard
API_KEY = 'mobile_de_parser_sk_1234567890abcdef1234567890abcdef'

# Search for BMW 3 Series in Berlin
def search_vehicles():
url = "https://api.carapis.com/v1/parsers/mobile.de/search"

headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}

data = {
"query": "BMW 3er",
"max_price": 50000,
"location": "Berlin",
"fuel_type": "diesel",
"transmission": "automatic",
"year_from": 2020,
"limit": 10
}

try:
response = requests.post(url, json=data, headers=headers)
response.raise_for_status()

result = response.json()
vehicles = result['data']['listings']

print(f"Found {len(vehicles)} vehicles")
print("First vehicle:", json.dumps(vehicles[0], indent=2))

return result
except requests.exceptions.RequestException as e:
print(f"Error: {e}")
return None

search_vehicles()

cURL Exampleโ€‹

curl -X POST "https://api.carapis.com/v1/parsers/mobile.de/search" \
-H "Authorization: Bearer mobile_de_parser_sk_1234567890abcdef1234567890abcdef" \
-H "Content-Type: application/json" \
-d '{
"query": "BMW 3er",
"max_price": 50000,
"location": "Berlin",
"fuel_type": "diesel",
"transmission": "automatic",
"year_from": 2020,
"limit": 10
}'

๐Ÿ“Š Step 3: Understand the Responseโ€‹

Response Structure
{
"success": true,
"data": {
"listings": [
{
"id": "123456789",
"title": "BMW 320d xDrive M Sport",
"price": {
"amount": 45000,
"currency": "EUR",
"formatted": "45.000 โ‚ฌ"
},
"specifications": {
"year": 2021,
"mileage": 35000,
"fuel_type": "Diesel",
"transmission": "Automatic",
"engine_size": "2.0L",
"power": "190 hp",
"emission_class": "Euro 6d"
},
"location": {
"city": "Berlin",
"state": "Berlin",
"country": "Germany"
},
"seller": {
"name": "BMW Premium Selection",
"type": "dealer",
"rating": 4.8
},
"url": "https://www.mobile.de/...",
"extracted_at": "2024-01-15T10:30:00Z"
}
],
"total_count": 1250,
"search_metadata": {
"query": "BMW 3er",
"filters_applied": {
"max_price": 50000,
"location": "Berlin"
}
}
}
}

๐ŸŽฏ Step 4: Common Search Parametersโ€‹

Search Options
ParameterTypeDescriptionExample
querystringSearch term (brand, model, etc.)"BMW 3er", "Mercedes C-Klasse"
max_pricenumberMaximum price in EUR50000
min_pricenumberMinimum price in EUR20000
locationstringGerman city or region"Berlin", "Mรผnchen", "Hamburg"
fuel_typestringFuel type filter"diesel", "petrol", "electric"
transmissionstringTransmission type"automatic", "manual"
year_fromnumberMinimum year2020
year_tonumberMaximum year2023
mileage_maxnumberMaximum mileage in km100000
limitnumberNumber of results (max 100)50

๐Ÿ” Step 5: Advanced Search Examplesโ€‹

Search by Brand and Modelโ€‹

// Search for Mercedes C-Class in Munich
const mercedesSearch = {
query: 'Mercedes C-Klasse',
location: 'Mรผnchen',
max_price: 60000,
year_from: 2019,
fuel_type: 'diesel',
};

Search by Price Rangeโ€‹

// Find affordable vehicles in Hamburg
const affordableSearch = {
query: 'VW Golf',
min_price: 15000,
max_price: 30000,
location: 'Hamburg',
year_from: 2018,
};

Search by Technical Specificationsโ€‹

// Find electric vehicles in Frankfurt
const electricSearch = {
query: 'Tesla Model 3',
location: 'Frankfurt',
fuel_type: 'electric',
transmission: 'automatic',
year_from: 2020,
};

โšก Step 6: Best Practicesโ€‹

Rate Limitingโ€‹

Rate Limits
  • Standard Plan: 100 requests per minute
  • Professional Plan: 500 requests per minute
  • Enterprise Plan: 2000 requests per minute

Implement proper rate limiting in your applications.

Error Handlingโ€‹

const handleApiRequest = async (searchParams) => {
try {
const response = await axios.post('https://api.carapis.com/v1/parsers/mobile.de/search', searchParams, {
headers: {
Authorization: `Bearer ${API_KEY}`,
'Content-Type': 'application/json',
},
});

return response.data;
} catch (error) {
if (error.response?.status === 429) {
console.log('Rate limit exceeded. Please wait before retrying.');
} else if (error.response?.status === 401) {
console.log('Invalid API key. Please check your credentials.');
} else if (error.response?.status === 400) {
console.log('Invalid request parameters:', error.response.data);
} else {
console.log('Unexpected error:', error.message);
}

throw error;
}
};

Data Processingโ€‹

// Process vehicle data for analysis
const processVehicleData = (vehicles) => {
return vehicles.map((vehicle) => ({
id: vehicle.id,
brand: vehicle.title.split(' ')[0],
model: vehicle.title.split(' ').slice(1, -2).join(' '),
year: vehicle.specifications.year,
price: vehicle.price.amount,
location: vehicle.location.city,
dealer: vehicle.seller.name,
rating: vehicle.seller.rating,
}));
};

๐Ÿ› ๏ธ Step 7: Troubleshootingโ€‹

Common Issuesโ€‹

Common Problems
IssueCauseSolution
401 UnauthorizedInvalid or expired API keyCheck your API key in the dashboard
429 Too Many RequestsRate limit exceededImplement rate limiting and retry logic
400 Bad RequestInvalid search parametersCheck parameter values and formats
500 Internal Server ErrorServer-side issueContact support with request details
No ResultsSearch too specificBroaden search criteria

Debug Modeโ€‹

// Enable debug logging
const debugRequest = async (searchParams) => {
console.log('Request parameters:', JSON.stringify(searchParams, null, 2));

const response = await axios.post('https://api.carapis.com/v1/parsers/mobile.de/search', searchParams, {
headers: {
Authorization: `Bearer ${API_KEY}`,
'Content-Type': 'application/json',
},
});

console.log('Response status:', response.status);
console.log('Response data:', JSON.stringify(response.data, null, 2));

return response.data;
};

๐Ÿ“ˆ Step 8: Next Stepsโ€‹

Ready to Scale?
  1. API Reference - Complete endpoint documentation
  2. Market Analysis - German market insights
  3. Features Overview - Advanced capabilities
  4. FAQ - Common questions and answers
Advanced Topics
  • Webhook Integration - Real-time data delivery
  • Bulk Data Export - Large-scale data extraction
  • Custom Filters - Advanced search parameters
  • Data Analytics - Market intelligence and trends
  • Integration Examples - CRM and analytics platforms

Pro Tipsโ€‹

For German Market Success
  • Use German model names (e.g., "BMW 3er" instead of "BMW 3 Series")
  • Include German cities for location-based searches
  • Monitor emission standards for compliance requirements
  • Track regional price variations across German states
  • Stay updated on German automotive regulations
Performance Optimization
  • Cache frequently requested data to reduce API calls
  • Implement proper error handling for production reliability
  • Use pagination for large result sets
  • Monitor rate limits to avoid service interruptions
  • Optimize search parameters for faster responses

Ready to extract German automotive data? Start with the Mobile.de parser today and unlock comprehensive market intelligence for your business.

Get Started Now โ†’