20 % off all paid plans with code

Shopping · Lidl

Lidl Product Data API

The Lidl Product Data API gets you live Lidl data the moment you ask, as clean, structured data – ready for your own app, a spreadsheet or an AI assistant. No scraping, nothing to maintain.

100 free requests every month · no credit card · one API key for all platforms

Key facts

Updated

The Lidl online shop at lidl.de sells what the stores sell – the Parkside power-tool range, Silvercrest electronics, Lupilu children's wear, Livarno furniture – plus a long tail of third-party brands, all in short promotional cycles where an article may be online for a few weeks and then vanish until the next campaign. The everydata.io Lidl Product Data API turns a lidl.de/p/<slug>/p<id> page into JSON with title, brand, price, shipping cost, feature bullets, the technical data table, images and the current availability, so you can capture an article while it is live.

Platform
Lidl
Quota per call
1 request
Free plan
100 req / monththen from €30 / month
What you get

What the Lidl Product Data API returns

The response follows the page: productTitle keeps Lidl's naming convention including the ® and the model code in » « quotes ("PARKSIDE® 20 V / 2 x 4,5 A Akku-Doppelladegerät »PDSLG 20 B1«, ohne Akku"), manufacturer is the own brand or supplier, features holds the marketing bullets and productDetails the technical table with labels ending in a colon ("Bemessungsaufnahme:", "Ladestrom:"). productDescription contains the long copy, imageUrlList the lidl.de/assets URLs.

Commercial fields are numeric and in EUR: price, retailPrice for the crossed-out price during a discount, priceSaving as Lidl's badge string and shippingPrice – Lidl charges a flat 5.95 for most parcels, and the field tells you when an article ships free. warehouseAvailability is the short status ("lieferbar"), deliveryMessage the longer promise ("Sofort lieferbar! In 3 Arbeitstagen bei dir"), and available is a boolean you can filter on directly.

  • productTitle, manufacturer, features, productDescription and the productDetails table
  • price, retailPrice, priceSaving and shippingPrice (typically 5.95 or 0) as numeric EUR fields
  • available boolean plus warehouseAvailability and deliveryMessage text
  • productRating and countReview – Parkside tools often carry hundreds of reviews
  • imageUrlList and mainImage from lidl.de/assets
  • productId (the number after /p in the URL) for the reviews endpoint
  • used flag to distinguish refurbished or second-hand offers
Use cases

What teams build with the Lidl Product Data API

Own-brand product databases

Tool and DIY communities maintain Parkside and Parkside Performance catalogues with model codes (PDSLG 20 B1), specs from productDetails and images – captured while the article is online.

Discount retail assortment tracking

Analysts record which articles lidl.de lists per week, at which price and from which brand, to understand Lidl's non-food promotion calendar and category mix.

Comparison content for weekly offers

Deal sites render product cards with rating, review count, price, shipping cost and the delivery message, linking to the live lidl.de page while it is available.

Competitor benchmarking for hardware retailers

DIY chains compare a Parkside cordless tool's spec table and price with their own private-label equivalent, using the numeric fields directly.

How it works

Lidl Product Data API: example request and response

Send GET /ldl/lookup-product-details with the product URL. Lidl URLs have the form https://www.lidl.de/p/<slug>/p<productId>; the slug is cosmetic, the p-number identifies the article. The response below is shortened to the fields most integrations use.

GET /ldl/lookup-product-details

curl "https://api.everydata.io/ldl/lookup-product-details?url=https%3A%2F%2Fwww.lidl.de%2Fp%2Fparkside-20-v-2-x-4-5-a-akku-doppelladegeraet-pdslg-20-b1-ohne-akku%2Fp100398025" \
  -H "x-api-key: YOUR_API_KEY"

Response (shortened)

200 OK · application/json
{
  "responseStatus": "PRODUCT_FOUND_RESPONSE",
  "responseMessage": "Product successfully found!",
  "productTitle": "PARKSIDE® 20 V / 2 x 4,5 A Akku-Doppelladegerät »PDSLG 20 B1«, ohne Akku",
  "manufacturer": "PARKSIDE®",
  "countReview": 380,
  "productRating": "4.9",
  "productId": "100398025",
  "url": "https://www.lidl.de/p/parkside-20-v-2-x-4-5-a-akku-doppelladegeraet-pdslg-20-b1-ohne-akku/p100398025",
  "warehouseAvailability": "lieferbar",
  "retailPrice": 0,
  "price": 23.99,
  "shippingPrice": 5.95,
  "priceSaving": "",
  "features": [
    "Lädt zwei Akkus gleichzeitig mit bis zu 4,5 A pro Kanal",
    "Automatische Ladeabschaltung mit 3-stufiger Anzeige"
  ],
  "imageUrlList": [
    "https://www.lidl.de/assets/gcpb38fbdbfaced4a058548438513dbcc74.jpg"
  ],
  "productDetails": [
    {
      "name": "Bemessungsaufnahme:",
      "value": "220 W"
    },
    {
      "name": "Ladestrom:",
      "value": "2 x 4,5 A"
    }
  ],
  "deliveryMessage": "Sofort lieferbar! In 3 Arbeitstagen bei dir",
  "domainCode": "de",
  "available": true
}
Lidl Product Data API: fields of the example response from /ldl/lookup-product-details
Lidl Product Data API: fields of the example response from /ldl/lookup-product-details

variations is usually an empty array on lidl.de: Lidl publishes sizes and colours of clothing as separate articles rather than a matrix, so a Lupilu jacket in three colours is three product URLs. Reviews still record the variant purchased in variationList, which is how you learn which colour a reviewer had.

A 404 with statusMessage "not found for parameter" is the normal end of an article's life on lidl.de: promotional items disappear when the campaign ends or stock is sold out. If you build datasets from Lidl, fetch early in the campaign week and store the response – the page may not exist next month.

Reviews live in GET /ldl/lookup-product-reviews, called with productId and page and sorted with sortBy (stars-desc by default, also date-desc, upvotes-desc, most_relevant-desc). Review text and titles are German; the reviewer is generally shown as "Lidl-Shop Kunde".

Related endpoints

GET/ldl/lookup-product-details

Product details. Product page by URL: title, brand, price, shipping, rating, specs and images.

GET/ldl/lookup-product-reviews

Reviews. Paged, sortable reviews by Lidl article number.

GET/ldl/search-by-keyword

Search products. Keyword search with paging and sorting: price, brand and delivery status per article.

Full API reference
Pricing

Lidl Product Data API pricing: pay per request

One product page is one request. Free gives you 100 requests a month to test; Starter (5,000 requests, €30) captures a weekly campaign of a few hundred articles with daily refreshes; Production (50,000, €80) is suited to a full assortment sweep. Pages that fail on lidl.de's side are not billed.

Free
100 req / month
Starter
5,000 req · €30
Production
50,000 req · €80
Business
300,000 req · €300

Lidl Product Data API: frequently asked questions

Which Lidl shops are supported?

The German online shop lidl.de (domainCode de in the response) with EUR prices including VAT and German texts. Store-only offers from the printed leaflet are not on lidl.de and therefore not available.

Why is shippingPrice 5.95 on most articles?

Lidl charges a flat parcel fee of 5.95 EUR per order for most items; bulky goods or promotions can differ. The field reflects what the product page states at request time.

Can I look up a product by article number?

Use the p-number from the URL: any URL of the form https://www.lidl.de/p/x/p<productId> resolves, because the slug part is not validated. Alternatively search the model code with GET /ldl/search-by-keyword.

Where are sizes and colours?

Lidl lists most variants as separate products, so variations is often empty. Search for the article name to find all sibling listings, or read variationList in the reviews.

What does used: false mean?

The flag marks refurbished or second-hand offers that Lidl occasionally sells online. false is the regular new article.

Fetch your first lidl.de article

Sign up for free, paste a lidl.de product URL and get price, shipping, specs and images as JSON before the campaign ends.