Kaufland APIkaufland.de ↗
Access Kaufland Germany promotional offers and store locations via API. Get discounted products, pricing, validity dates, and nearby stores by ZIP or IP.
What is the Kaufland API?
The Kaufland.de API provides 5 endpoints covering current promotional product offers and store locations across Kaufland Germany's network of 788 stores. The get_offers endpoint returns the full weekly discount catalog with fields like price, old_price, discount_percent, and validity dates. The search_products endpoint lets you filter that catalog by keyword, while store-focused endpoints resolve locations by IP geolocation, store ID, or German postal code.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/e55f8db6-78ff-4b7c-ab09-dcea5a2e8b37/get_offers' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve all currently available promotional products from Kaufland Germany. Returns the complete set of discounted items across all promotional categories with pricing, discount percentages, validity dates, and product details. The offers rotate weekly; items include food, beverages, household goods, and personal care products.
No input parameters required.
{
"type": "object",
"fields": {
"total": "integer count of promotional products currently available",
"products": "array of product objects each containing id, kl_nr, name, subtitle, category, price, formatted_price, old_price, discount_percent, valid_from, valid_to, unit, base_price, image, and description"
},
"sample": {
"data": {
"total": 41,
"products": [
{
"id": "ART.345066_KAV.3468370",
"name": "Span./ital. Wassermelone, lose",
"unit": "je kg",
"image": "https://kaufland.media.schwarz/is/image/schwarz/01125666FR",
"kl_nr": "00398339",
"price": 0.99,
"category": "Unsere Knüller",
"subtitle": null,
"valid_to": "2026-06-10",
"old_price": "1.99",
"base_price": null,
"valid_from": "2026-06-04",
"description": "Kl. I",
"formatted_price": "0.99",
"discount_percent": 50
}
]
},
"status": "success"
}
}About the Kaufland API
Promotional Offers
The get_offers endpoint returns every currently active Kaufland promotional product as an array under products. Each object includes id, kl_nr, name, subtitle, category, price, formatted_price, old_price, discount_percent, and validity period fields. Offers rotate on a weekly cycle and span food, beverages, household goods, and other categories. The total field tells you how many items are active in the current cycle.
The search_products endpoint accepts a required query string and filters the current week's offers against product name, subtitle, description, and category fields using case-insensitive matching. The response includes a note clarifying the search scope, so callers know results are bounded to live promotions rather than a full product catalog.
Store Locations
get_stores resolves stores based on the requesting IP's geolocation and returns each store's id, name, city, zip, street, lat, lng, friendly_url, and opening_hours. When you need more precise control, get_stores_by_location accepts a 5-digit German zip_code and an optional radius in kilometers, then returns matching stores with an added distance_km field calculated from the postal code center. The response also echoes back zip_code and radius_km so you can confirm what was queried.
Store-Specific Offers
get_offers_by_store ties the two data types together. Pass a store_id such as DE1300 — as returned by get_stores or get_stores_by_location — and receive that store's active promotional product list in the same shape as get_offers, plus a store_id echo field. This lets you build store-specific deal feeds without filtering on the client side.
The Kaufland API is a managed, monitored endpoint for kaufland.de — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when kaufland.de 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 kaufland.de 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?+
- Build a weekly deal tracker that alerts users when specific product categories appear in
get_offersresults - Compare
pricevsold_priceacross the current offer set to surface the highestdiscount_percentitems - Show a store locator for German users by calling
get_stores_by_locationwith their postal code and a configurable radius - Populate a store-specific deals page by chaining
get_storeswithget_offers_by_storeusing the returned storeid - Filter promotional offers by keyword using
search_productsto power a search bar on a savings or cashback app - Monitor weekly offer validity periods to detect when new promotions go live and expired ones drop off
| 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 Kaufland provide an official developer API?+
What does `get_stores_by_location` return that `get_stores` does not?+
get_stores_by_location adds a distance_km field to each store object, calculated from the center of the provided zip_code. It also returns zip_code and radius_km echo fields so you can confirm the query parameters that were applied. get_stores uses the caller's IP geolocation and returns no distance metadata.Are offer results paginated, or is the full catalog returned at once?+
get_offers and get_offers_by_store return the complete set of currently active promotional products in a single response, with a total integer indicating how many items are included. There are no pagination parameters.Does the API include product images or links to individual product pages?+
name, subtitle, category, price, formatted_price, old_price, discount_percent, and validity data — but do not expose product image URLs or direct product page links. You can fork this API on Parse and revise it to add those fields if they are available from the source.