Looking for the overview — what this API returns, what it costs, and a call you can run without a key? See the Zalando API page →
E-commerce & Marketplaces

Zalando API & Scraper

The Zalando API returns EU fashion product data as clean JSON.

12 actionsLive JSON1,000 free credits$0.67–$1.50 / 1,000 creditsMCP-ready
Get a free keyOpen in playground

🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.

The primary search endpoint returns products with name, brand, SKU, price, colour, images and URL, and you can browse a category, sale and new_arrivals, pull a product, its variants and similar items, and the brands, categories and filters. It is built for fashion-price monitoring, catalog enrichment and EU retail analytics that need Zalando data without a scraper. One ReefAPI key, one shared credit pool, the standard envelope.

Reference

Zalando country codes, storefront hosts and the currency each returns

The country parameter picks a Zalando storefront, and that decides the host, the product language and the currency prices come back in. Every value below was confirmed on 2026-08-27 by running the sale action once per country and reading the currency field off the first card. gb is an alias of uk and resolves to the same host and the same results.

countryStorefront hostCurrency returnedExample price returned
dezalando.deEUR19.99
uk (or gb)zalando.co.ukGBP65.99
frzalando.frEUR49.0
nlzalando.nlEUR40.8
itzalando.itEUR32.99
eszalando.esEUR19.99
plzalando.plPLN126.56

Coverage is not identical across actions. On 2026-08-27 the keyword search action answered only on de and fr; uk, gb, nl, it, es and pl each returned error code NOT_FOUND because Zalando serves no /catalogue/ search path on those hosts. sale, category, product and variants answered on every country. Category slugs are per-language, so the German slug herrenschuhe-sneaker only works with country de.

Live example

Real request and response JSON

Captured from the indexed primary action, search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/zalando/v1/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "q": "nike",
    "country": "de"
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "zalando",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": 2342.4,
    "record_count": 24,
    "bytes": 1813120,
    "cache_hit": false,
    "method": "hydration_blob",
    "extra": {
      "url": "https://www.zalando.de/catalogue/?q=nike",
      "country": "de",
      "page": 1,
      "page_size": 24,
      "has_more": true,
      "next_page": 2
    }
  },
  "data": {
    "results": [
      {
        "sku": "NI111A0XD-A11",
        "name": "[redacted-name]",
        "brand": "Nike Sportswear",
        "color": null,
        "url": "https://www.zalando.de/nike-sportswear-air-force-1-sneaker-low-white-ni111a0xd-a11.html",
        "image": "https://img01.ztat.net/article/spp-media-p1/54ebff14c74f4e55a760de6f09436896/[redacted-phone]b4d87871e6aada1547495.jpg?imwidth=500&filter=packshot",
        "images": [
          "https://img01.ztat.net/article/spp-media-p1/54ebff14c74f4e55a760de6f09436896/[redacted-phone]b4d87871e6aada1547495.jpg?imwidth=500&filter=packshot",
          "https://img01.ztat.net/article/spp-media-p1/54ebff14c74f4e55a760de6f09436896/[redacted-phone]b4d87871e6aada1547495.jpg?imwidth=780&filter=packshot",
          "https://img01.ztat.net/article/spp-media-p1/54ebff14c74f4e55a760de6f09436896/[redacted-phone]b4d87871e6aada1547495.jpg?imwidth=400&filter=packshot"
        ],
        "category": {
          "products": {
            "edges": "[trimmed-depth]",
            "totalCount": "[trimmed-depth]"
          }
        },
        "sizes": [
          "35.5",
          "36",
          "36.5"
        ],
        "navigation_target_group": "WOMEN",
        "condition": null,
        "in_stock": null,
        "availability": null,
        "price": 101.99,
        "original_price": 119.99,
        "currency": "EUR",
        "discount_percent": 18,
        "formatted_price": "101,99 € Ursprünglich: 119,99 € Letzter niedrigster Preis: 107,99 € -6%",
        "on_sale": true
      },
      {
        "sku": "N1244D06L-A11",
        "name": "[redacted-name]",
        "brand": "Nike Performance",
        "color": null,
        "url": "https://www.zalando.de/nike-performance-everyday-cush-crew-3-pack-sportsocken-whiteblack-n1244d06l-a11.html",
        "image": "https://img01.ztat.net/article/spp-media-p1/61af5ef973313caa84bd0eab4448c480/fa7bc[redacted-phone]b91b4485f5b1a515.jpg?imwidth=500",
        "images": [
          "https://img01.ztat.net/article/spp-media-p1/61af5ef973313caa84bd0eab4448c480/fa7bc[redacted-phone]b91b4485f5b1a515.jpg?imwidth=500",
          "https://img01.ztat.net/article/spp-media-p1/61af5ef973313caa84bd0eab4448c480/fa7bc[redacted-phone]b91b4485f5b1a515.jpg?imwidth=780",
          "https://img01.ztat.net/article/spp-media-p1/61af5ef973313caa84bd0eab4448c480/fa7bc[redacted-phone]b91b4485f5b1a515.jpg?imwidth=400"
        ],
        "category": "STOCKING",
        "sizes": [
          "34-38",
          "38-42",
          "42-46"
        ],
        "navigation_target_group": "ALL",
        "condition": null,
        "in_stock": null,
        "availability": null,
        "price": 15.95,
        "original_price": 15.95,
        "currency": "EUR",
        "discount_percent": null,
        "formatted_price": "15,95 €",
        "on_sale": false
      },
      {
        "sku": "N1244D06O-A11",
        "name": "[redacted-name]",
        "brand": "Nike Performance",
        "color": null,
        "url": "https://www.zalando.de/nike-performance-everyday-cush-crew-6-pack-sportsocken-whiteblack-n1244d06o-a11.html",
        "image": "https://img01.ztat.net/article/spp-media-p1/e24ad250e41232c4a42b081331c2fcd7/e00b72951afb48ff8b42756e760f4252.jpg?imwidth=500",
        "images": [
          "https://img01.ztat.net/article/spp-media-p1/e24ad250e41232c4a42b081331c2fcd7/e00b72951afb48ff8b42756e760f4252.jpg?imwidth=500",
          "https://img01.ztat.net/article/spp-media-p1/e24ad250e41232c4a42b081331c2fcd7/e00b72951afb48ff8b42756e760f4252.jpg?imwidth=780",
          "https://img01.ztat.net/article/spp-media-p1/e24ad250e41232c4a42b081331c2fcd7/e00b72951afb48ff8b42756e760f4252.jpg?imwidth=400"
        ],
        "category": "STOCKING",
        "sizes": [
          "34-38",
          "38-42",
          "42-46"
        ],
        "navigation_target_group": "ALL",
        "condition": null,
        "in_stock": null,
        "availability": null,
        "price": 24.95,
        "original_price": 24.95,
        "currency": "EUR",
        "discount_percent": null,
        "formatted_price": "24,95 €",
        "on_sale": false
      }
    ],
    "page": 1,
    "page_size": 24,
    "has_more": true,
    "next_page": 2,
    "query": "nike"
  }
}
Actions

What the Zalando API does

ActionDescriptionConcrete use caseKey params
searchSearch Zalando by keyword — returns product cards with name, brand, SKU, price, color, images and product URL. Filterable by brand, price range and category; paginated.Pricing teams call search to search Zalando by keyword.q, country, page, category, order, ...
categoryBrowse Zalando products by category (e.g. herrenschuhe-sneaker) — returns listing cards with name, brand, price and images. Filterable and paginated.Marketplace operators call category to get browse Zalando products by category (e.g.category, country, page, order, brand, ...
saleOn-sale / discounted Zalando products — the outlet grid with original price, current price, discount percent (0-100) and discount amount (money off). Scope to a category, otherwise lands on the country's sale/outlet section. Paginated.Catalog enrichment teams call sale to get on-sale / discounted Zalando products.country, category, page, brand, min_price, ...
new_arrivalsNewest Zalando products in a category, sorted newest-first. Scope to a category (e.g. damenschuhe-sneaker), otherwise lands on the country's primary section. Paginated.Retail analysts call new_arrivals to get newest Zalando products in a category, sorted newest-first.country, category, page, brand, min_price, ...
productFull Zalando product detail by URL or SKU — name, brand, price, color, gallery images, available sizes, rating and attributes.Pricing teams call product to get full Zalando product detail by URL or SKU.url, sku, country
similarProducts similar to a given Zalando item — pulled from the product page recommendation cards.Marketplace operators call similar to get products similar to a given Zalando item.url, sku, country
variantsAll size variants for a Zalando product with in-stock flags — useful for monitoring stock availability.Catalog enrichment teams call variants to get all size variants for a Zalando product with in-stock flags.url, sku, country
brandsDistinct brands present in a given Zalando listing — the brands found across the product cards of the supplied category or keyword search (one listing page, not Zalando's full brand directory). Useful for building brand filter chips for that listing. Pass category or q; defaults to the country's primary section.Retail analysts call brands to get distinct brands present in a given Zalando listing.country, category, q, page
categoriesTop-level Zalando category links for a country, live-discovered from that TLD's own localized homepage navigation — so each country returns its real localized paths (fr: femme/homme/enfant, it: donna/uomo/bambini, es: mujer/hombre, nl: dames/heren, pl: kobiety/mezczyzni …), feed these paths to the category / sale / new_arrivals actions.Pricing teams call categories to get top-level Zalando category links for a country, live-discovered from that TLD's own localized….country, gender
filtersDiscover which sort and filter options are available for Zalando listings, including price range, brand and sort order.Marketplace operators call filters to discover which sort and filter options are available for Zalando listings, including price ra….country, category, q
reviewsCustomer reviews and overall rating summary for a Zalando product (when reviews are embedded on the product page).Catalog enrichment teams call reviews to get customer reviews and overall rating summary for a Zalando product (when reviews are embedded….url, sku, country
attributesProduct attribute clusters for a Zalando item — material composition, care instructions and other structured attributes from the product page.Retail analysts call attributes to get product attribute clusters for a Zalando item.url, sku, country
Code samples

Call search from your stack

curl -X POST https://api.reefapi.com/zalando/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"q":"nike","country":"de"}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.zalando.search with {"q":"nike","country":"de"}.
Use cases

Who uses this API and why

  • Fashion-pricing tools call search and sale to track Zalando prices and markdowns by brand.
  • Catalog-enrichment products use product and variants to fill listings with colours and sizes.
  • Retail analysts use new_arrivals and brands to spot trends across the EU fashion market.
FAQ

Questions developers ask before integrating

What does a Zalando SKU like NI114D0HT-A11 mean?

It is the article number: nine characters identifying the article, a hyphen, then a three-character color code, 13 characters in total. NI114D0HT-A11 and NI112N022-A11 are two different Nike Sportswear articles in the same A11 colorway. The same article number is used on every storefront: a search on de and the same search on fr both returned NI114D0HT-A11 for the same shoe, with only the URL slug and the language of the product name changing.

How do Zalando size variants get their own SKU?

Each size is the 13-character article SKU plus a seven-character size code, giving a 20-character variant SKU. Measured on 2026-08-27 for NI112N022-A11: size 38.5 is NI112N022-A110060000, size 39 is NI112N022-A110065000, size 40 is NI112N022-A110070000. The suffix is a sort key rather than the size itself, so read the size field instead of trying to decode the digits.

Why does the product action return null for price, brand and images?

product reads the product page's own data block, which on the pages measured on 2026-08-27 carried only sku, name, url and the full size ladder. price, original_price, currency, brand, images and rating all came back null for both NI112N022-A11 and NI114D0HT-A11. Take price and images from a listing card returned by search, category or sale, and use product or variants for the sizes and their in_stock flags.

Is a Zalando price in cents or in currency units?

In currency units, as a plain number. A measured German search card returned price 69.95 with currency EUR, and the Polish sale grid returned price 126.56 with currency PLN. There is no minor-unit encoding to divide by 100. formatted_price carries the storefront's own rendering if you want the localized string instead.

How do I tell whether a Zalando item is discounted?

Read on_sale, then take the markdown two ways: discount_percent is a rate between 0 and 100 and discount_amount is the money saved in the row's own currency, so nothing has to be divided. Re-measured on 43 discounted rows across the German, British and Polish stores, all 43 agreed with the two prices: 26.00 from 43.99 gave 40.9 and 17.99, 39.90 from 129.90 gave 69.3 and 90.00. discount_percent used to carry the money difference rather than the rate; that is fixed, and discount_amount is where the money lives now. When there is no discount, original_price equals price, both discount fields are null and on_sale is false, which is what a 179.95 card in the same result set returned.

Which Zalando countries can I keyword-search?

As measured on 2026-08-27, keyword search answered on de and fr. The other storefronts returned error code NOT_FOUND because Zalando does not serve the /catalogue/ search path there. The sale, category, product and variants actions did answer on all eight country values, so for uk, nl, it, es and pl browse by category slug or by the sale grid instead of by keyword.

Does a listing card tell me which sizes are in stock?

No. A search or category card carries a sizes array of labels such as '38.5', '39', '40', but its in_stock field came back null on every card measured, so a card cannot tell you whether a given size is buyable. Use the variants action for that: it returns one row per size with the size label, the 20-character variant sku and an in_stock boolean.

How does paging work on the Zalando listing actions?

Every listing action returns 24 cards per page. meta.extra carries page, page_size, has_more, next_page and the resolved upstream URL, so you page forward by feeding next_page back into the page parameter. A category call with page=2 on herrenschuhe-sneaker returned 24 different cards and has_more true.

What is the Zalando API?

Zalando API is a ReefAPI endpoint group for zalando It returns live JSON through POST requests under /zalando/v1.

Is the Zalando API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. Zalando calls use the same shared credit balance as every other ReefAPI engine.

Do I need a Zalando login or account?

No login to Zalando is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Zalando data?

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Zalando API use?

Zalando actions currently cost 1 credit per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.

Can I call Zalando from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call zalando actions with the same key, credit pool and JSON envelope used by normal REST requests.

docs / zalando

Zalando

Zalando

base /zalando/v112 endpoints
post/zalando/v1/category1 credit

Browse Zalando products by category (e.g. herrenschuhe-sneaker) — returns listing cards with name, brand, price and images. Filterable and paginated.

ParameterAllowed / rangeDescription
categoryrequiredZalando category slug, e.g. herrenschuhe-sneaker (discover via the categories action).
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
page = 1optional1–Result page (1-based). Page forward with meta.next_page.
orderoptionalpopularity · price · price_desc · newest · saleSort order.
brandoptionalFilter by brand (slugified), e.g. nike-sportswear.
min_priceoptionalMinimum price (store currency).
max_priceoptionalMaximum price (store currency).
Try in playground →
post/zalando/v1/sale1 credit

On-sale / discounted Zalando products — the outlet grid with original price, current price, discount percent (0-100) and discount amount (money off). Scope to a category, otherwise lands on the country's sale/outlet section. Paginated.

ParameterAllowed / rangeDescription
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
categoryoptionalOptional category slug to limit the sale to (e.g. herrenschuhe-sneaker). Omit for the whole sale section.
page = 1optional1–Result page (1-based). Page forward with meta.next_page.
brandoptionalFilter by brand (slugified), e.g. nike-sportswear.
min_priceoptionalMinimum price (store currency).
max_priceoptionalMaximum price (store currency).
Try in playground →
post/zalando/v1/new_arrivals1 credit

Newest Zalando products in a category, sorted newest-first. Scope to a category (e.g. damenschuhe-sneaker), otherwise lands on the country's primary section. Paginated.

ParameterAllowed / rangeDescription
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
categoryoptionalOptional category slug (e.g. damenschuhe-sneaker). Omit for the country's primary section.
page = 1optional1–Result page (1-based). Page forward with meta.next_page.
brandoptionalFilter by brand (slugified), e.g. nike-sportswear.
min_priceoptionalMinimum price (store currency).
max_priceoptionalMaximum price (store currency).
Try in playground →
post/zalando/v1/product1 credit

Full Zalando product detail by URL or SKU — name, brand, price, color, gallery images, available sizes, rating and attributes.

ParameterAllowed / rangeDescription
urloptionalFull Zalando product URL (.html). (product needs url OR sku.)
skuoptionalZalando SKU, e.g. NI112N022-A11 (resolved from url when omitted).
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
Try in playground →
post/zalando/v1/similar1 credit

Products similar to a given Zalando item — pulled from the product page recommendation cards.

ParameterAllowed / rangeDescription
urloptionalFull Zalando product URL (.html). (product needs url OR sku.)
skuoptionalZalando SKU, e.g. NI112N022-A11 (resolved from url when omitted).
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
Try in playground →
post/zalando/v1/variants1 credit

All size variants for a Zalando product with in-stock flags — useful for monitoring stock availability.

ParameterAllowed / rangeDescription
urloptionalFull Zalando product URL (.html). (product needs url OR sku.)
skuoptionalZalando SKU, e.g. NI112N022-A11 (resolved from url when omitted).
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
Try in playground →
post/zalando/v1/brands1 credit

Distinct brands present in a given Zalando listing — the brands found across the product cards of the supplied category or keyword search (one listing page, not Zalando's full brand directory). Useful for building brand filter chips for that listing. Pass category or q; defaults to the country's primary section.

ParameterAllowed / rangeDescription
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
categoryoptionalCategory slug to collect brands from (e.g. herrenschuhe-sneaker). Defaults to the country's primary section.
qoptionalKeyword to collect brands from instead of a category.
page = 1optional1–Result page (1-based). Page forward with meta.next_page.
Try in playground →
post/zalando/v1/categories1 credit

Top-level Zalando category links for a country, live-discovered from that TLD's own localized homepage navigation — so each country returns its real localized paths (fr: femme/homme/enfant, it: donna/uomo/bambini, es: mujer/hombre, nl: dames/heren, pl: kobiety/mezczyzni …), feed these paths to the category / sale / new_arrivals actions.

ParameterAllowed / rangeDescription
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
genderoptionalOptional gender to filter seeds (e.g. women, men, kids).
Try in playground →
post/zalando/v1/filters1 credit

Discover which sort and filter options are available for Zalando listings, including price range, brand and sort order.

ParameterAllowed / rangeDescription
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
categoryoptionalCategory to live-probe sort behaviour against.
qoptionalKeyword context (optional).
Try in playground →
post/zalando/v1/reviews1 credit

Customer reviews and overall rating summary for a Zalando product (when reviews are embedded on the product page).

ParameterAllowed / rangeDescription
urloptionalFull Zalando product URL (.html). (product needs url OR sku.)
skuoptionalZalando SKU, e.g. NI112N022-A11 (resolved from url when omitted).
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
Try in playground →
post/zalando/v1/attributes1 credit

Product attribute clusters for a Zalando item — material composition, care instructions and other structured attributes from the product page.

ParameterAllowed / rangeDescription
urloptionalFull Zalando product URL (.html). (product needs url OR sku.)
skuoptionalZalando SKU, e.g. NI112N022-A11 (resolved from url when omitted).
country = deoptionalde · uk · gb · fr · nl · it · es · plZalando country edition (TLD) — sets language and currency.
Try in playground →