Leboncoin APIleboncoin.fr ↗
Search and retrieve listings from leboncoin.fr across cars, real estate, jobs, and more. Filter by price, location, category, and get pricing analytics.
What is the Leboncoin API?
This API covers 4 endpoints for searching and extracting listing data from leboncoin.fr, France's largest classifieds platform. The search_listings endpoint returns up to 35 listings per page with filters for category, price range, department, region, or GPS radius. Dedicated endpoints handle car-specific searches by make and model, full listing detail retrieval, and price statistics computed from live results.
curl -X GET 'https://api.parse.bot/scraper/e47ee25c-b3eb-449c-b65b-e512fd4cf897/search_listings?page=1&query=iphone&category=2&location=d_75&price_max=50000&price_min=100' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for listings on leboncoin.fr with optional filters. Returns one page of up to 35 listings per call, paginated through the page input (1-100; omitted means page 1), with the total match count and the maximum page number. Location can be a leboncoin area code (d_XX for departments such as d_39 for Jura or d_75 for Paris, r_XX for regions such as r_12 for Ile-de-France) and/or a GPS point with a radius in metres (gps_location); when both are given listings matching either area are returned. Real-estate searches (category 9) additionally accept a property type filter (real_estate_type) and a land plot surface range in m² (land_plot_surface); real_estate_type is applied through the site's search service and costs one extra request per call. An unknown real_estate_type code yields an empty result set rather than an error.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number (1-100) |
| query | string | Search keyword (e.g., 'iphone', 'voiture') |
| category | string | Category ID (e.g., '2' for cars, '9' for real estate sales, '15' for electronics, '33' for jobs) |
| location | string | Location code: d_XX for department (e.g., d_39 for Jura, d_75 for Paris), r_XX for region (e.g., r_12 for Ile-de-France) |
| price_max | integer | Maximum price filter in euros |
| price_min | integer | Minimum price filter in euros |
| gps_location | string | GPS point with search radius, in the site's own form City_ZIP__LAT_LNG_RADIUS_RADIUS (city name, 5-digit postal code, decimal latitude and longitude, radius in metres repeated twice), e.g. Nice_06300__43.70032_7.27768_5000_5000 for 5 km around Nice. Values in another form are rejected before any request. |
| real_estate_type | string | Real-estate property type code as used by the site's real-estate filters; confirmed codes are 1 (Maison/house) and 3 (Terrain/land). Meaningful with category 9 (real estate sales). |
| land_plot_surface | string | Land plot surface range in m² as MIN-MAX, where either bound may be open: 500-max (at least 500 m²), min-2000 (at most 2000 m²) or 500-2000. Other forms are rejected before any request. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"total": "integer total number of matching listings",
"results": "array of listing objects with id, title, price, url, date, category, location, images, owner, owner_type, attributes",
"max_pages": "integer maximum page number available",
"total_all": "integer total across all categories"
},
"sample": {
"data": {
"page": 1,
"total": 378045,
"results": [
{
"id": 3153786520,
"url": "https://www.leboncoin.fr/ad/telephones_objets_connectes/3153786520",
"date": "2026-05-15 17:55:26",
"owner": "DBC MARSEILLE",
"price": 170,
"title": "IPhone 12 Pro Max & iPhone 11 Pro Max avec garantie",
"images": [
"https://img.leboncoin.fr/api/v1/lbcpb1/images/29/79/2f/29792f8d772eaf523060f1329bd0a36cdfe661d5.jpg?rule=ad-image"
],
"category": "Téléphones & Objets connectés",
"location": "Marseille 13001",
"attributes": {
"condition": "Bon état",
"phone_brand": "Apple"
},
"owner_type": "pro"
}
],
"max_pages": 100,
"total_all": 378045
},
"status": "success"
}
}About the Leboncoin API
Search and Filter Listings
The search_listings endpoint accepts a query keyword, a category ID (e.g., 2 for cars, 9 for real estate sales, 15 for electronics, 33 for jobs), and price bounds via price_min and price_max. Location filtering works through location codes — d_XX for a specific department (e.g., d_75 for Paris) or r_XX for a region — or through gps_location for a lat/lng point with a radius. Each response includes total, max_pages, and a results array of listing objects carrying id, title, price, url, date, category, location, images, owner, owner_type, and attributes. Pagination goes up to page 100.
Listing Detail and Car Search
get_listing_detail takes a full listing URL or numeric ID and returns the complete record: description, all image URLs, the full attributes object (varies by category), seller name, city and postal code, and the first publication date. The search_cars endpoint wraps car-specific filtering — pass make in uppercase (e.g., PEUGEOT, BMW) and model to narrow results. When both are provided, the model filter resolves against the correct make automatically. Results share the same shape as search_listings.
Price Analytics
get_average_price takes a required query and an optional category ID, and returns average, min, max, and count — the number of priced listings in the sample. Statistics are derived from up to 35 listings from the first result page, so they reflect current market pricing rather than historical aggregates. This is useful for quick valuation checks on a specific car model, electronics item, or property type before doing a deeper search.
The Leboncoin API is a managed, monitored endpoint for leboncoin.fr — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when leboncoin.fr 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 leboncoin.fr 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?+
- Monitor price trends for a specific car make and model using
search_carswithmakeandmodelfilters - Build a real estate aggregator by querying category
9or10with department-levellocationcodes andreal_estate_type - Estimate resale value for consumer electronics with
get_average_pricescoped to category15 - Track new job listings in a specific region by polling
search_listingswith category33and a region code - Retrieve full listing details including all
attributesand seller info viaget_listing_detailfor a given listing URL - Alert users to listings below a price threshold by combining
price_maxfiltering with GPS-radius search insearch_listings - Compare asking prices across departments for a property type by running
get_average_priceagainst multipled_XXlocation codes
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does leboncoin.fr have an official public developer API?+
What does the `attributes` field in listing results contain?+
attributes object is category-specific. For car listings it typically includes fields like mileage, fuel type, gearbox, and year. For real estate it includes surface area, number of rooms, and property type. The exact keys vary by category and are returned as-is from the listing.How accurate is `get_average_price`?+
count field in the response tells you exactly how many priced listings were used in the calculation. For categories with many results, this is a sample rather than a full-catalog aggregate.Does the API expose seller contact details like phone numbers or email addresses?+
get_listing_detail endpoint returns owner (seller name) and owner_type, but phone numbers and email addresses that leboncoin gates behind authentication are not included. You can fork the API on Parse and revise it to add an endpoint targeting that data if you have the appropriate access.