Zara Scraper - Prices, Rebajas, Variants & Composition avatar

Zara Scraper - Prices, Rebajas, Variants & Composition

Pricing

from $1.00 / 1,000 product results

Go to Apify Store
Zara Scraper - Prices, Rebajas, Variants & Composition

Zara Scraper - Prices, Rebajas, Variants & Composition

Scrape Zara (zara.com) products: current price plus strike-through Rebajas (sale) discount, full colour variant matrix with per-colour availability, and (with full detail) fabric composition and a per-size availability/price matrix. Browse by category or Rebajas, or paste links.

Pricing

from $1.00 / 1,000 product results

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Zara Product Scraper

Pull structured product data from Zara (zara.com), the global fast-fashion retailer. Browse any category or Zara's own Rebajas (sale) catalog for a chosen section, or paste product and category/listing links directly. Every record includes the current price, the strike-through original price with discount percentage when a product is on Rebajas, and the full colour variant matrix with per-colour availability -- plus fabric composition and a real per-size availability/price matrix when you ask for full detail.

Why This Scraper?

  • Was-price and discount, structured, straight from Zara's own pricing data. When a product is on Rebajas, the record carries the current price, the strike-through original price, and the discount percentage -- taken directly from the site's own isOnSale flag, never guessed. Full-price products return these fields as null, so a discount is always real.
  • Rebajas, first class. A specialsOnly toggle browses the chosen section's own, real, currently-running Rebajas (sale) catalog -- thousands of genuinely marked-down items, not a guessed category.
  • Full colour variant matrix. Every colourway Zara sells for a product, each with its own price, availability, and image gallery. With full detail on, each colour also carries a real per-size matrix (in stock / out of stock) and each size's own price.
  • Fabric composition. With fetchDetails on, every product also returns its fabric composition -- a material breakdown by percentage, per garment part.
  • Two ways in. Browse a category or Rebajas feed, or paste any product / category link.
  • Optional export to your apps. Send results into Notion, Linear, Airtable, or any Apify MCP connector alongside the dataset.

Data You Get

FieldExample value
productId07521308
nameSample Ribbed Knit Dress
brand / sectionZara, WOMAN
family / subfamilyDresses, Midi
reference1234/567/800
urlhttps://www.zara.com/es/es/sample-ribbed-knit-dress-p07521308.html?v1=545409966
price / currency15.99, EUR
originalPrice / discountPercent / isOnSale25.99, 38, true
availabilityin_stock
colors[][{"id": "800", "name": "Black", "hexColor": "#000000", "availability": "in_stock", "price": 15.99, "originalPrice": 25.99, "discountPercent": 38, "isOnSale": true, "images": [...], "sizes": [...]}]
compositions[{"part": "Outer shell", "materials": [{"material": "Cotton", "percentage": "95%"}, {"material": "Elastane", "percentage": "5%"}]}]
reviews[]

Sample shape: values above are illustrative placeholders, not from a live product.

How to Use

1. Browse the women's Rebajas (sale) catalog, Spain market:

{
"mode": "search",
"section": "WOMAN",
"specialsOnly": true,
"maxItems": 50
}

2. Browse a specific category id, UK market, biggest discount first:

{
"mode": "search",
"market": "gb/en",
"categoryId": "2420896",
"sortBy": "discountDesc",
"maxItems": 40
}

3. Full product detail (composition and per-size availability) for a pasted product link:

{
"mode": "url",
"urls": ["https://www.zara.com/es/es/sample-ribbed-knit-dress-p07521308.html?v1=545409966"],
"fetchDetails": true
}

4. Paste a category / listing page:

{
"mode": "url",
"urls": ["https://www.zara.com/es/es/mujer-vestidos-l1066.html"],
"maxItems": 100
}

Input Parameters

ParameterTypeDescription
modestringsearch (browse a category or Rebajas) or url (paste links).
marketstringZara's own market path prefix, e.g. es/es, gb/en (search mode only; a pasted URL carries its own market).
sectionstringWOMAN, MAN, KID, or BEAUTY (search mode). Drives the Rebajas catalog and labels results.
categoryIdstringA specific Zara category id to browse (search mode). Ignored when Rebajas only is on.
specialsOnlybooleanBrowse the chosen section's real Rebajas (sale) catalog instead of a specific category (search mode).
searchTermstringKeep only products whose name/description contains this text (narrows the loaded catalog).
colorsarrayKeep only products with a colourway matching one of these names (partial, case-insensitive).
sizesarrayKeep only products with one of these sizes in stock. Requires fetchDetails.
minPrice / maxPricenumberPrice band to keep, in the market's own currency.
sortBystringOrder results after filtering: relevance, price low→high, price high→low, or biggest discount first.
urlsarrayProduct or category/listing URLs to scrape (url mode). Filter fields are ignored in this mode.
fetchDetailsbooleanAdd fabric composition and a real per-size availability/price matrix. A pasted product URL always fetches full detail.
maxItemsintegerCap on total products returned; 0 = unlimited.
proxyobjectConnection settings. Defaults work out of the box.
mcpConnectorsarrayOptional MCP connectors to export results into (Notion, Linear, Airtable, Apify).
notionParentPageUrlstringNotion connector only: page under which item pages are created.
maxNotifyListingsintegerCap on items exported to each connector per run. Does not affect the dataset.

Output Example

{
"productId": "07521308",
"name": "Sample Ribbed Knit Dress",
"brand": "Zara",
"reference": "1234/567/800",
"section": "WOMAN",
"family": "Dresses",
"subfamily": "Midi",
"description": "Midi dress with a round neckline and long sleeves.",
"url": "https://www.zara.com/es/es/sample-ribbed-knit-dress-p07521308.html?v1=545409966",
"currency": "EUR",
"price": 15.99,
"originalPrice": 25.99,
"discountPercent": 38,
"isOnSale": true,
"availability": "in_stock",
"image": "https://static.zara.net/photos/sample/image1.jpg",
"defaultColorId": "800",
"colors": [
{
"id": "800",
"name": "Black",
"hexColor": "#000000",
"discernProductId": "545409966",
"availability": "in_stock",
"images": [
{ "url": "https://static.zara.net/photos/sample/image1.jpg", "width": 1500, "height": 2250, "kind": "GENERAL" }
],
"sizes": [
{ "id": "S", "name": "S", "availability": "in_stock", "sku": 12345678, "price": 15.99, "originalPrice": 25.99, "discountPercent": 38, "isOnSale": true }
],
"currency": "EUR",
"price": 15.99,
"originalPrice": 25.99,
"discountPercent": 38,
"isOnSale": true
}
],
"compositions": [
{ "part": "Outer shell", "materials": [{ "material": "Cotton", "percentage": "95%" }, { "material": "Elastane", "percentage": "5%" }] }
],
"reviews": []
}

Sample shape: values above are illustrative placeholders, not from a live product.

A note on reviews, sort, and brand

Zara does not surface customer reviews on its product pages -- reviews is always returned as an empty list rather than omitted or guessed. No usable server-side keyword-search or sort parameter is available on Zara's browse routes, so searchTerm and sortBy narrow and order results client-side against the site's own real values rather than faking a query. Zara is a single-brand shop, so there is no brand filter -- every record's brand is Zara.

Send results into your apps (MCP connectors)

Optionally pipe results into the apps you already use through Model Context Protocol (MCP) connectors. Authorize a connector once under Apify, Settings, Integrations, then select it in the mcpConnectors field. Each connector receives a condensed, human-readable summary per product (name plus key fields), while the complete record always stays in the Apify dataset. For Notion, set notionParentPageUrl to the page the item pages should be created under, and use maxNotifyListings to cap how many items are exported per connector per run. Supported connectors: Notion, Linear, Airtable, and Apify. Leave the field empty to skip; it never changes the dataset output.