Discover/Leroy Merlin API
live

Leroy Merlin APIleroymerlin.fr

Access LeroyMerlin.fr product catalog, prices, seller info, and category hierarchy via 4 endpoints. Search products, fetch details, and browse sitemaps.

Endpoint health
verified 7d ago
list_products_from_sitemap
list_categories
2/2 passing latest checkself-healing
Endpoints
4
Updated
22d ago

What is the Leroy Merlin API?

The Leroy Merlin France API exposes 4 endpoints to query the leroymerlin.fr product catalog, covering search, detailed product records, bulk sitemap enumeration, and category hierarchy. The get_product_details endpoint returns fields including price, brand, seller identity, currency, and a boolean flag distinguishing Leroy Merlin direct listings from third-party marketplace sellers. Combined, the sitemap endpoints give access to roughly 2.4 million indexed products across 99 partitioned sitemap files.

Try it
Page number for pagination
Maximum number of products to return
Search keyword (e.g., 'peinture', 'perceuse')
api.parse.bot/scraper/b6e2c583-ae27-47dd-a002-ee51c04500cf/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/b6e2c583-ae27-47dd-a002-ee51c04500cf/search_products?limit=5&query=peinture' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 leroymerlin-fr-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: LeroyMerlin SDK — browse categories and product sitemaps."""
from parse_apis.leroy_merlin_france_product_api import LeroyMerlin, Product, Category, Sitemap, NotFoundError

lm = LeroyMerlin()

# List product categories from the sitemap, capped at 5
for category in lm.categories.list(limit=5):
    print(category.name, category.depth, category.url)

# Construct a sitemap by number and browse its products
sitemap = lm.sitemap(1)
for product in sitemap.products(limit=3):
    print(product.product_id, product.name, product.url)

# Drill into a single product from a different sitemap
product = lm.sitemap(2).products(limit=1).first()
if product:
    try:
        detail = lm.sitemap(2).products(limit=1).first()
        print(detail.product_id, detail.name)
    except NotFoundError as exc:
        print(f"product not found: {exc}")

print("exercised: categories.list / sitemap.products")
All endpoints · 4 totalmissing one? ·

Search for products on LeroyMerlin.fr by keyword. Returns product listings with prices and seller info.

Input
ParamTypeDescription
pageintegerPage number for pagination
limitintegerMaximum number of products to return
queryrequiredstringSearch keyword (e.g., 'peinture', 'perceuse')
Response
{
  "type": "object",
  "fields": {
    "page": "integer",
    "query": "string",
    "products": "array",
    "product_count": "integer",
    "total_results": "integer"
  },
  "sample": {
    "page": 1,
    "query": "peinture",
    "products": [
      {
        "url": "https://www.leroymerlin.fr/produits/peinture-blanche-82501694.html",
        "name": "Peinture blanche",
        "brand": "Luxens",
        "price": 29.9,
        "seller": "Leroy Merlin",
        "currency": "EUR",
        "product_id": "82501694",
        "is_marketplace": false
      }
    ],
    "product_count": 1,
    "total_results": 1500
  }
}

About the Leroy Merlin API

Search and Product Detail

The search_products endpoint accepts a required query string (e.g. peinture, perceuse) and returns a paginated list of matching products including prices and seller information. Pagination is controlled via the page and limit parameters, and the response includes total_results so you can calculate how many pages to walk. get_product_details accepts either a product_id (numeric string such as 82862131) or a full product_url, and returns granular fields: name, brand, price, currency, seller, description, and the is_marketplace boolean that identifies whether the listing is fulfilled by a third-party online partner rather than Leroy Merlin directly.

Bulk Catalog Enumeration via Sitemaps

The list_products_from_sitemap endpoint exposes the full product index across 99 sitemap files, each containing approximately 25,000 products. You specify a sitemap_number (1–99) and an optional limit. The response returns an array of product objects with product_id, name (derived from the URL slug, title-cased with hyphens converted to spaces), and url, alongside total_urls_in_sitemap so you can track coverage. This is useful for building a full product index without issuing repeated searches.

Category Hierarchy

The list_categories endpoint returns the full category tree sourced from the leroymerlin.fr category sitemap. Each category object includes url, path, name, and depth, where depth of 1 indicates a top-level category and higher values indicate nested subcategories. The response also provides total_categories_in_sitemap so you know the full scope of what's available. An optional limit parameter lets you sample the tree before processing all records.

Reliability & maintenanceVerified

The Leroy Merlin API is a managed, monitored endpoint for leroymerlin.fr — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when leroymerlin.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 leroymerlin.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.

Last verified
7d ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a price-monitoring tool that tracks leroymerlin.fr product prices over time using get_product_details
  • Identify which products are sold by third-party marketplace partners versus Leroy Merlin directly via the is_marketplace flag
  • Enumerate the full leroymerlin.fr catalog across all 99 sitemap partitions to seed a product database
  • Power a category navigation interface using the depth-annotated hierarchy from list_categories
  • Run competitive analysis by searching for specific product types with search_products and comparing returned pricing
  • Generate a structured product feed for a home improvement comparison site using sitemap-derived IDs and URLs
  • Detect new product listings by periodically diffing sitemap results against a stored snapshot
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does Leroy Merlin France have an official public developer API?+
Leroy Merlin does not publish a public REST API for external developers to query its product catalog. This Parse API provides structured access to leroymerlin.fr product and category data without requiring any account or agreement with Leroy Merlin.
How does `get_product_details` distinguish between Leroy Merlin listings and third-party sellers?+
The response includes a seller string field naming the seller and an is_marketplace boolean. When is_marketplace is true, the product is listed by an online partner rather than Leroy Merlin itself. Both the direct and marketplace cases return the same set of fields including price, brand, and description.
Are product reviews or stock/availability data included?+
Not currently. The API covers pricing, brand, seller identity, description, and product identifiers, but does not expose customer reviews, ratings, or real-time stock levels. You can fork this API on Parse and revise it to add endpoints that return availability or review data.
What is the coverage of the sitemap-based product listing, and are product names always accurate?+
The list_products_from_sitemap endpoint covers 99 sitemap files with roughly 25,000 products each, giving approximately 2.4 million indexed URLs. Product names are derived from URL slugs — hyphens are replaced with spaces and the result is title-cased — so names may not exactly match the display name on the product page. Use get_product_details on a specific product to retrieve the canonical name field.
Can I filter `list_products_from_sitemap` results by category or price range?+
The endpoint does not support filtering by category or price. It returns all products within the selected sitemap file, paginated via limit. Category-scoped browsing is covered separately by list_categories, and price data is only available via get_product_details on individual products. You can fork this API on Parse and revise it to add filtered or category-scoped product listing endpoints.
Page content last updated . Spec covers 4 endpoints from leroymerlin.fr.
Related APIs in EcommerceSee all →
leroymerlin.pt API
Search and browse Leroy Merlin Portugal's product catalog with detailed information, pricing, and categories, while also discovering upcoming workshops and store-specific schedules. Find exactly what you need across their inventory and plan your DIY projects with their available training sessions.
manomano.fr API
Search ManoMano.fr products by keyword and browse listings with prices, brands, images, and product URLs.
lowes.com API
Search and browse products from Lowe's, including product listings by category, detailed product information, and pricing. Retrieve comprehensive details on specific items to compare options and make informed purchasing decisions.
menards.com API
Search Menards' complete product catalog across lumber, building materials, and all categories while viewing real-time pricing, sale prices, rebates, and final values. Browse by category or use search suggestions to find exactly what you need with full pricing transparency.
carrefour.fr API
carrefour.fr API
screwfix.com API
Access Screwfix's full product catalog — browse category hierarchies, retrieve paginated product listings with pricing and ratings, fetch detailed product specifications, and search by keyword. Ideal for price monitoring, product research, and catalog analysis.
cedeo.fr API
Search for plumbing and heating products on CEDEO, view detailed product information with variants, and locate nearby agency stores. Access comprehensive product catalogs, specifications, and inventory across CEDEO's retail network.
carrefour.eu API
Search and browse Carrefour's European online product catalog to access pricing, promotions, availability, and detailed product information including nutritional data. Retrieve comprehensive product details across categories to compare prices and find current deals in real-time.