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โ
:::
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โ
- Visit dashboard.carapis.com
- Click "Sign Up" and create your account
- Verify your email address
1.2 Activate Mobile.de Parserโ
- Log in to your Carapis dashboard
- Navigate to "Parsers" โ "Mobile.de"
- Click "Activate Parser"
- 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
Parameter | Type | Description | Example |
---|---|---|---|
query | string | Search term (brand, model, etc.) | "BMW 3er", "Mercedes C-Klasse" |
max_price | number | Maximum price in EUR | 50000 |
min_price | number | Minimum price in EUR | 20000 |
location | string | German city or region | "Berlin", "Mรผnchen", "Hamburg" |
fuel_type | string | Fuel type filter | "diesel", "petrol", "electric" |
transmission | string | Transmission type | "automatic", "manual" |
year_from | number | Minimum year | 2020 |
year_to | number | Maximum year | 2023 |
mileage_max | number | Maximum mileage in km | 100000 |
limit | number | Number 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
Issue | Cause | Solution |
---|---|---|
401 Unauthorized | Invalid or expired API key | Check your API key in the dashboard |
429 Too Many Requests | Rate limit exceeded | Implement rate limiting and retry logic |
400 Bad Request | Invalid search parameters | Check parameter values and formats |
500 Internal Server Error | Server-side issue | Contact support with request details |
No Results | Search too specific | Broaden 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?
- API Reference - Complete endpoint documentation
- Market Analysis - German market insights
- Features Overview - Advanced capabilities
- 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.