AutoScout24 APIautoscout24.it ↗
Search AutoScout24.it car listings, get vehicle details, browse dealer profiles, and resolve makes and models via a structured REST API.
What is the AutoScout24 API?
This API exposes 5 endpoints covering AutoScout24 Italy's vehicle inventory and dealer directory. Use search_listings to filter cars by make, model, price, year, fuel type, body type, and condition, then retrieve full vehicle specs, pricing breakdowns, seller contact details, and geolocation data via get_listing_detail. Make and model IDs needed for filters are resolved through dedicated lookup endpoints.
curl -X GET 'https://api.parse.bot/scraper/7727452e-c057-448b-91dd-43798490efb8/search_listings?make=28&model=1746&condition=N&page=1&sort=standard&year_to=2026&price_to=200000&body_type=Berlina&fuel_type=Benzina&year_from=2020&price_from=1000&transmission=Manuale&vehicle_type=C' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace autoscout24-it-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: AutoScout24 Italy SDK — search listings, drill into details, explore dealers."""
from parse_apis.autoscout24_italy_api import AutoScout24, Sort, FuelType, Condition, NotFoundError_
client = AutoScout24()
# List all available car makes on the platform
for make in client.makes.list(limit=5):
print(make.label, make.value)
# Search for listings by a specific make, sorted by price
for listing in client.listingsummaries.search(make="28", sort=Sort.PRICE, condition=Condition.USED, limit=3):
print(listing.make, listing.model, listing.price, listing.fuel)
# Drill into full details for the first listing found
summary = client.listingsummaries.search(make="9", limit=1).first()
if summary:
detail = summary.detail()
print(detail.vehicle.make, detail.vehicle.model, detail.vehicle.powerInHp)
print(detail.prices.public.price, detail.location.city)
# Fetch models available for a constructible Make
fiat = client.make(value=28)
for model in fiat.models.list(limit=5):
print(model.label, model.value, model.makeId)
# Get a dealer profile with typed error handling
try:
dealer = client.dealers.get(slug="autostile-spa")
print(dealer.customerName, dealer.customerId)
print(dealer.ratings.ratingStars, dealer.ratings.recommendPercentage)
except NotFoundError_ as exc:
print(f"Dealer not found: {exc}")
print("exercised: makes.list / listingsummaries.search / detail / make.models.list / dealers.get")
Search for car listings with various filters including make, model, price, year, fuel type, and transmission. Returns paginated results up to 200 pages. Filters are ANDed; some combinations may return empty results. Each listing summary includes basic vehicle info, price, location, and dealer name. Use the slug field to fetch full details via get_listing_detail.
| Param | Type | Description |
|---|---|---|
| make | string | Make ID as a numeric string (e.g., '9' for Audi, '28' for Fiat). Obtain IDs from get_makes_list endpoint. |
| page | integer | Page number, maximum 200. |
| sort | string | Sort order for results. |
| model | string | Model ID as a numeric string (e.g., '1746' for Panda). Obtain IDs from get_models_by_make endpoint. |
| year_to | integer | Maximum registration year (e.g., 2026). |
| price_to | integer | Maximum price in EUR. |
| body_type | string | Vehicle body type code (e.g., 'Berlina', 'SUV/Fuoristrada'). |
| condition | string | Vehicle condition filter. |
| fuel_type | string | Fuel type code (e.g., 'Benzina', 'Diesel', 'Elettrica', 'Elettrica/Benzina'). |
| year_from | integer | Minimum registration year (e.g., 2020). |
| price_from | integer | Minimum price in EUR. |
| transmission | string | Transmission type. |
| vehicle_type | string | Vehicle type. |
{
"type": "object",
"fields": {
"listings": "array of listing summary objects with id, slug, make, model, variant, price, mileage, year, fuel, transmission, location, images, dealer, is_new, details_summary",
"total_pages": "integer total number of pages",
"current_page": "integer current page number",
"total_results": "integer total number of matching listings"
}
}About the AutoScout24 API
Search and Filter Listings
The search_listings endpoint accepts up to eight filter parameters — make, model, price_to, year_to, body_type, condition, sort, and page — and returns paginated results across up to 200 pages. Each result object includes the listing id, slug, make, model, variant, price, mileage, year, fuel, transmission, location, and thumbnail images. The total_results and total_pages fields let you implement pagination without guessing. Make and model values are numeric IDs, not free-text strings: use get_makes_list and get_models_by_make to resolve them before filtering.
Listing Detail and Vehicle Specs
get_listing_detail accepts a slug from any search_listings result and returns a complete listing record. The vehicle object carries full specs: make, model, variant, year, power output, fuel type, transmission, body type, and equipment list. The prices object distinguishes public and dealer pricing. seller includes dealer contact phones and links; ratings carries dealer scores specific to the listing. The location object provides latitude, longitude, city, zip, and street — useful for distance-based filtering in your own application. Note that slugs expire when listings are removed; those return an input_not_found error.
Makes, Models, and Dealer Profiles
get_makes_list returns every brand on the platform as an array of {label, value} pairs where value is the numeric make ID. get_models_by_make accepts either a numeric make_id or a case-sensitive make_name and returns models as {label, value, makeId} objects. These two endpoints are the canonical source for filter IDs used in search_listings.
get_dealer_profile retrieves a single dealer by bare slug (no path prefix). The response includes customerName, customerAddress, customerPhoneNumbers, openingHours by department, aboutUs text, and a ratings object with reviewCount, ratingAverage, ratingStars, and recommendPercentage. Dealer slugs appear in listing detail responses via the seller field.
The AutoScout24 API is a managed, monitored endpoint for autoscout24.it — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when autoscout24.it changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official autoscout24.it API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Aggregate Italian used-car inventory by make and model for a price-comparison tool
- Build a dealer locator using latitude/longitude and customerAddress from listing and dealer endpoints
- Track price trends for specific vehicle variants using search_listings with year_to and price_to filters
- Enrich a CRM with dealer contact info and ratings pulled from get_dealer_profile
- Populate a vehicle catalogue with body type, fuel, transmission, and power specs from get_listing_detail
- Generate make/model dropdown menus for a car-search UI using get_makes_list and get_models_by_make
- Monitor new listings for a specific make and condition by polling search_listings with condition='N'
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.