# Zara (`datasaurus/zara`) Actor

Scrape products from zara.com websites. All available countries and languages. Filter by Category or Product. Fast and efficient. n8n node: n8n-nodes-zara

- **URL**: https://apify.com/datasaurus/zara.md
- **Developed by:** [datasaurus](https://apify.com/datasaurus) (community)
- **Categories:** E-commerce
- **Features:** Limited permissions
- **Stats:** 262 total users, 10 monthly users, 99.9% runs succeeded, 12 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Zara Products Scraper

Extract structured **Zara product data** including **prices, colours, images and availability** across Zara website countries and languages. Detailed scraping adds **sizes, SKUs, size-level availability, composition, care information and origin** where available.

Start from a regional website, category or individual product URL, and combine multiple countries in one run. Choose category-based extraction for catalogue data or individual product-page scraping for richer detail, with filters, configurable limits and deduplication.

Checkout our other scrapers: [H\&M](https://apify.com/datasaurus/hm-products) | [ASOS](https://apify.com/datasaurus/asos) | [Boohoo](https://apify.com/datasaurus/boohoo) | [Stradivarius](https://apify.com/datasaurus/stradivarius) | [Pull\&Bear](https://apify.com/datasaurus/pullandbear) | [MassimoDutti](https://apify.com/datasaurus/massimodutti) | [Bershka](https://apify.com/datasaurus/bershka) | [Oysho](https://apify.com/datasaurus/oysho) | [ZaraHome](https://apify.com/datasaurus/zarahome) | [Boots](https://apify.com/datasaurus/boots) | [Sephora](https://apify.com/datasaurus/sephora) | [Argos](https://apify.com/datasaurus/agros)

n8n node: [n8n-nodes-zara](https://www.npmjs.com/package/n8n-nodes-zara)

Results viewer: Export your data as json and drop into the [results viewer](https://jovial-zabaione-407e61.netlify.app/) to see the data.

### What data can be extracted?

| Data | Available information |
|---|---|
| Product | Name, brand, reference, display reference and product URL |
| Pricing | Product and colour-variant prices, currency |
| Availability | Product and colour availability; size availability in detailed mode |
| Variants | Colours, colour references and product IDs; sizes and SKUs in detailed mode |
| Categories | Category, product/category SEO keywords and source website |
| Images | Main image and colour images; additional images in detailed mode |
| Product details | Fuller description, composition, care information, origin and first visible date in detailed mode |
| Size demand | Source-provided demand indicators in detailed mode |

Available fields depend on the product, regional website and scraping mode.

### Scraping modes

- **Fast scrape:** Set `scrape_product_page` to `false` to collect catalogue data from category pages without requesting each product page. This reduces requests when collecting large product ranges.
- **Detailed scrape:** Set `scrape_product_page` to `true` to request individual product pages and collect all the additional fields listed above.

### Use cases

- **Catalogue analysis** — research products, categories, colours and sizes.
- **Price monitoring** — compare product and variant prices over time.
- **Availability monitoring** — track colour and size availability.
- **Competitor research** — compare assortment, materials and product details.
- **International comparison** — analyse regional catalogues and prices.

### Supported URLs

| Scope | Example |
|---|---|
| Website | `https://www.zara.com/uk/en/` |
| Category | `https://www.zara.com/uk/en/man-all-products-l7465.html?v1=2458839` |
| Product | `https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265` |

Use URLs from the current Zara website; category IDs and product links can change as collections are updated.

#### Country and language examples

| Country | Language | Website URL |
|---|---|---|
| United Kingdom | English | `https://www.zara.com/uk/en/` |
| Spain | Spanish | `https://www.zara.com/es/es/` |
| Netherlands | Dutch | `https://www.zara.com/nl/nl/` |
| United Arab Emirates | Arabic | `https://www.zara.com/ae/ar/` |

These illustrate regional URL formats rather than the full country list. Combine regional URLs in `start_urls` to collect multiple markets. Product ranges, prices and availability can differ between markets.

### AI agents and integrations

Apify connects chat clients such as **Claude and ChatGPT** through the [Apify MCP server](https://docs.apify.com/integrations/mcp). **Zara currently uses rental pricing, which Apify excludes from MCP search and execution.** For this Actor, use an Apify API integration in your agent instead. See Apify's [AI integration guides](https://docs.apify.com/integrations/ai) for supported frameworks and integration approaches.

Structured records let agents work directly with product names, prices, colours, sizes and availability.

Example requests for an agent with this Actor connected through the API:

> Collect products from this Zara category and return their names, prices and colour availability.

> Collect detailed data for these Zara products, including sizes, composition and care information.

A [Zara n8n node](https://www.npmjs.com/package/n8n-nodes-zara) is also available.

#### Official integration guides

- [AI integrations](https://docs.apify.com/integrations/ai) — connect Apify data collection with AI applications and agent frameworks.
- [Apify MCP server](https://docs.apify.com/integrations/mcp) — setup, authentication and Actor eligibility requirements.
- [n8n integration](https://docs.apify.com/integrations/n8n) — run Actors and retrieve results in n8n workflows.

### Notes

- **Deduplication:** Enable `deduplicate_across_all_start_urls` to reduce repeated products across overlapping URLs. Concurrent scraping can occasionally leave duplicates. For regional comparisons, consider leaving this disabled so repeated product references remain available for comparison.
- **Proxies:** The Actor uses residential proxies to help reduce IP blocking.
- **Output format:** JSON preserves the nested variant data. Summary fields such as `colors`, `sizes`, `category` and `mainImage` support flatter exports for Excel or Google Sheets.
- The output is in JSON format due to the nested data structure.
- The fields `colors`, `sizes`, `category` and `mainImage` summarize data from the `colorsSizesImagesJSON` json field. This allows for the key information to be exported in a flat structure to csv and be easily read by Excel or GoogleSheets.
- Detailed `color` and `size` information is contained within the `colorsSizesImagesJSON` json field.
- Each line/item in the result is a unique product identified by the unique key called `reference`. Within the `colorsSizesImagesJSON` json field there are multiple color variants which actually have a unique key called `productId`. The scrapper keeps all field names matching what is returned by the website.
  - `reference`: this identifies the product which may include multiple color variants.
  - `productId`: this identifies the product color variant.
- When scraping individual product pages, product size information is included for each color. This is contained within the `colorsSizesImagesJSON` json field.
- **Performance:** Category extraction uses fewer requests than detailed mode. Run time and cost vary with scope, region, proxy usage and website responses.
- **Results viewer:** A [Zara results viewer](https://jovial-zabaione-407e61.netlify.app/) is available.

### Support

For bugs, additional fields or supported URL requests, use the Actor's **Issues** tab. New to Apify? See the [platform documentation](https://docs.apify.com/platform).

[Browse all Datasaurus scrapers](https://apify.com/datasaurus).

### Example Input

```json
{
  "start_urls": [
    {"url": "https://www.zara.com/uk/en/"},
    {"url": "https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265"},
    {"url": "https://www.zara.com/es/es/mujer-chaquetas-l1114.html?v1=2536936"},
    {"url": "https://www.zara.com/za/"},
    {"url": "https://www.zara.com/nl/nl/"},
    {"url": "https://www.zara.com/ae/ar/"}
  ],
  "category_filter": ["WOMAN"],
  "subcategory_filter": ["woman-jackets"],
  "product_seo_keyword_filter": ["water-and-wind-protection-short-puffer-anorak"],
  "scrape_product_page": true,
  "deduplicate_across_all_start_urls": false,
  "max_subcategories": 10,
  "max_results": 1000
}
```

This example uses limits and leaves cross-URL deduplication disabled for regional comparison. See the **Input** tab for all options and limit behaviour.

Available filters include:

- `category_filter` — category names such as `WOMAN`, `MAN`, `KIDS`, `HOME` or `BEAUTY`. Available categories for each regional website are printed in the logs.
- `subcategory_filter` — subcategory identifiers such as `woman-jackets`.
- `product_seo_keyword_filter` — product SEO keywords.

### Output

Results are returned as **structured JSON**. Product records use `reference` as the product identifier, with colour variants nested in `colorsSizesImagesJSON`. Each colour variant has its own `productId`; detailed mode adds a `sizes` array inside each colour.

### Example Output - Fast Scrape - without scraping individual product pages

```json
{
  "id": 42720015500,
  "reference": "03641842-V2025",
  "displayReference": "3641/842",
  "brand": "Zara",
  "name": "COTTON MODAL TOP",
  "description": "",
  "mainImage": "https://static.zara.net/assets/public/9bbc/cd97/b00b462eb244/2ab326c473d0/03641842622-e1/03641842622-e1.jpg?ts=1738251517451&w={width}",
  "colors": "Pale Pink, Ecru",
  "price": "9.99",
  "category": "woman-tops",
  "keyword": "cotton-modal-top",
  "availability": "in_stock",
  "colorsSizesImagesJSON": [
    {
      "id": "622",
      "displayReference": "3641/842/622",
      "hexCode": null,
      "productId": 427200155,
      "name": "Pale pink",
      "reference": "C03641842622000-V2025",
      "stylingId": "0",
      "xmedia": [
        "https://static.zara.net/assets/public/9bbc/cd97/b00b462eb244/2ab326c473d0/03641842622-e1/03641842622-e1.jpg?ts=1738251517451&w={width}"
      ],
      "price": "9.99",
      "availability": "in_stock",
      "productPageSelectedColor": "https://www.zara.com/uk/en/cotton-modal-top-p03641842.html?v1=427200155&v2=2419940"
    },
    {
      "id": "712",
      "displayReference": "3641/842/712",
      "hexCode": null,
      "productId": 413381027,
      "name": "Ecru",
      "reference": "C03641842712000-V2025",
      "stylingId": "0",
      "xmedia": [
        "https://static.zara.net/assets/public/41ec/1f57/cb6f4b71b752/e8124cc27615/03641842712-p/03641842712-p.jpg?ts=1725022877593&w={width}"
      ],
      "price": "9.99",
      "availability": "in_stock",
      "productPageSelectedColor": "https://www.zara.com/uk/en/cotton-modal-top-p03641842.html?v1=413381027&v2=2419940"
    }
  ],
  "website": "https://www.zara.com/uk/en/",
  "categoryPage": "https://www.zara.com/uk/en/woman-tops-l1322.html?v1=2419940",
  "productPage": "https://www.zara.com/uk/en/cotton-modal-top-p03641842.html"
}
```

### Example Output - Detailed Scrape - when scrapping individual Product Pages

(adds sizes, demand, SKUs, product composition, more images, first visable date, origin and a fuller product description)

```json
{
  "id": 424578934,
  "reference": "03152007-V2025",
  "displayReference": "3152/007",
  "brand": "Zara",
  "name": "TOP WITH BACK BOW",
  "description": "Fitted square neckline top with straps. Featuring a bow detail on the back and an opening. Concealed side zip fastening.",
  "mainImage": "https://static.zara.net/assets/public/f69d/76b5/0b5244ad8427/629818ef2eb8/03152007800-p/03152007800-p.jpg?ts=1738064248644&w={width}",
  "colors": "Black, White",
  "sizes": "XS, S, M, L, XL, XXL",
  "price": "25.99",
  "category": "woman-tops",
  "keyword": "top-with-back-bow",
  "availability": "in_stock",
  "state": "visible",
  "firstVisibleDate": "2025-01-28T10:33:24Z",
  "colorsSizesImagesJSON": [
    {
      "id": "800",
      "displayReference": "3152/007/800",
      "hexCode": "#121315",
      "productId": 427879230,
      "name": "Black",
      "reference": "C03152007800000-V2025",
      "stylingId": "0",
      "xmedia": [
        "https://static.zara.net/assets/public/f69d/76b5/0b5244ad8427/629818ef2eb8/03152007800-p/03152007800-p.jpg?ts=1738064248644&w={width}",
        "https://static.zara.net/assets/public/985b/9894/cf444ff4b1d7/c8cb3816e942/03152007800-e1/03152007800-e1.jpg?ts=1737991434821&w={width}",
        "https://static.zara.net/assets/public/3c15/ee14/1b43444ca4f7/81ad2869ba12/03152007800-e2/03152007800-e2.jpg?ts=1737991434580&w={width}"
      ],
      "price": "25.99",
      "availability": "out_of_stock",
      "extraInfo": {
        "isStockInStoresAvailable": true,
        "highlightPrice": false
      },
      "sizes": [
        {
          "availability": "coming_soon",
          "equivalentSizeId": 101,
          "id": 1,
          "name": "XS",
          "price": "25.99",
          "reference": "0315200780001-V2025",
          "sku": 427877028,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 102,
          "id": 2,
          "name": "S",
          "price": "25.99",
          "reference": "0315200780002-V2025",
          "sku": 427877030,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 103,
          "id": 3,
          "name": "M",
          "price": "25.99",
          "reference": "0315200780003-V2025",
          "sku": 427877032,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 104,
          "id": 4,
          "name": "L",
          "price": "25.99",
          "reference": "0315200780004-V2025",
          "sku": 427877033,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 105,
          "id": 5,
          "name": "XL",
          "price": "25.99",
          "reference": "0315200780005-V2025",
          "sku": 427877034,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "out_of_stock",
          "equivalentSizeId": 106,
          "id": 6,
          "name": "XXL",
          "price": "25.99",
          "reference": "0315200780006-V2025",
          "sku": 427877035,
          "demand": "DEMAND_RUNNING_OUT"
        }
      ],
      "description": "Fitted square neckline top with straps. Featuring a bow detail on the back and an opening. Concealed side zip fastening.",
      "rawDescription": "Fitted square neckline top with straps. Featuring a bow detail on the back and an opening. Concealed side zip fastening.",
      "productPageSelectedColor": "https://www.zara.com/uk/en/top-with-back-bow-p03152007.html?v1=427879230&v2=2419940"
    },
    {
      "id": "250",
      "displayReference": "3152/007/250",
      "hexCode": "#e2e0e1",
      "productId": 424584319,
      "name": "White",
      "reference": "C03152007250000-V2025",
      "stylingId": "0",
      "xmedia": [
        "https://static.zara.net/assets/public/a0cb/d966/3af642d2a87e/f41776866a90/03152007250-p/03152007250-p.jpg?ts=1738064247391&w={width}",
        "https://static.zara.net/assets/public/3078/2e56/3abc4a14b336/e50d9a55cf03/03152007250-e1/03152007250-e1.jpg?ts=1738060908903&w={width}",
        "https://static.zara.net/assets/public/bc0d/0485/d00943779fa6/e3346ab13e8a/03152007250-e2/03152007250-e2.jpg?ts=1738060909177&w={width}"
      ],
      "price": "25.99",
      "availability": "out_of_stock",
      "extraInfo": {
        "isStockInStoresAvailable": true,
        "highlightPrice": false
      },
      "sizes": [
        {
          "availability": "coming_soon",
          "equivalentSizeId": 101,
          "id": 1,
          "name": "XS",
          "price": "25.99",
          "reference": "0315200725001-V2025",
          "sku": 424578935,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 102,
          "id": 2,
          "name": "S",
          "price": "25.99",
          "reference": "0315200725002-V2025",
          "sku": 424578936,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 103,
          "id": 3,
          "name": "M",
          "price": "25.99",
          "reference": "0315200725003-V2025",
          "sku": 424578937,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 104,
          "id": 4,
          "name": "L",
          "price": "25.99",
          "reference": "0315200725004-V2025",
          "sku": 424578938,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "coming_soon",
          "equivalentSizeId": 105,
          "id": 5,
          "name": "XL",
          "price": "25.99",
          "reference": "0315200725005-V2025",
          "sku": 424578939,
          "demand": "DEMAND_RUNNING_OUT"
        },
        {
          "availability": "out_of_stock",
          "equivalentSizeId": 106,
          "id": 6,
          "name": "XXL",
          "price": "25.99",
          "reference": "0315200725006-V2025",
          "sku": 424578940,
          "demand": "DEMAND_RUNNING_OUT"
        }
      ],
      "description": "Fitted square neckline top with straps. Featuring a bow detail on the back and an opening. Concealed side zip fastening.",
      "rawDescription": "Fitted square neckline top with straps. Featuring a bow detail on the back and an opening. Concealed side zip fastening.",
      "productPageSelectedColor": "https://www.zara.com/uk/en/top-with-back-bow-p03152007.html?v1=424584319&v2=2419940"
    }
  ],
  "detailedComposition": {
    "parts": [
      {
        "description": "OUTER SHELL",
        "areas": [],
        "components": [
          {
            "material": "polyester",
            "percentage": "89%"
          },
          {
            "material": "elastane",
            "percentage": "11%"
          }
        ],
        "microcontents": [],
        "reinforcements": []
      },
      {
        "description": "LINING",
        "areas": [
          {
            "components": [
              {
                "material": "polyester",
                "percentage": "89%"
              },
              {
                "material": "elastane",
                "percentage": "11%"
              }
            ],
            "description": "UPPER PART"
          },
          {
            "components": [
              {
                "material": "polyester",
                "percentage": "100%"
              }
            ],
            "description": "LOWER PART"
          }
        ],
        "components": [],
        "microcontents": [],
        "reinforcements": []
      }
    ],
    "exceptions": []
  },
  "productCare": {
    "description": [
      "Caring for your garments to extend their useful life.",
      "Lower temperature washes and delicate spin cycles are gentler on garments and help to protect the colour, shape and structure of the fabric. <br><br><a class=' link' target='_blank' href='https://www.zara.com/uk/en/sustainability-clothing-care-l3129.html?v1=1596204'><span class='structured-component-text'>Clothing Care Guide</span></a></span>"
    ],
    "icons": [
      {
        "description": "Machine wash at max. 30ºC/86ºF with short spin cycle",
        "url": "https://static.zara.net//assets/public/fad0/fd6f/680d44ddbf3b/623a3e540eb1/iconos_mendue-7.svg?ts=1730714831474"
      },
      {
        "description": "Do not use bleach",
        "url": "https://static.zara.net//assets/public/fad0/fd6f/680d44ddbf3b/623a3e540eb1/iconos_mendue-14.svg?ts=1730714831474"
      },
      {
        "description": "Iron at a maximum of 110ºC/230ºF",
        "url": "https://static.zara.net//assets/public/fad0/fd6f/680d44ddbf3b/623a3e540eb1/iconos_mendue-18.svg?ts=1730714831474"
      },
      {
        "description": "Do not dry clean",
        "url": "https://static.zara.net//assets/public/fad0/fd6f/680d44ddbf3b/623a3e540eb1/iconos_mendue-28.svg?ts=1730714831474"
      },
      {
        "description": "Do not tumble dry",
        "url": "https://static.zara.net//assets/public/fad0/fd6f/680d44ddbf3b/623a3e540eb1/iconos_mendue-35.svg?ts=1730714831474"
      }
    ]
  },
  "origin": [
    "We have traceability requirements in order to know the supply chain of our productions. We request our suppliers to provide information on all facilities involved in the production processes, from the thread or fibre used right through to the finished garment for each order. This encompasses both our own and external factories, as well as any intermediaries involved in each process.",
    "Made in Bangladesh"
  ],
  "website": "https://www.zara.com/uk/en/",
  "categoryPage": "https://www.zara.com/uk/en/woman-tops-l1322.html?v1=2419940",
  "productPage": "https://www.zara.com/uk/en/top-with-back-bow-p03152007.html"
}
```

### Website Countries

```json
[
    "https://www.zara.com/al/",
    "https://www.zara.com/al/en/",
    "https://www.zara.com/dz/",
    "https://www.zara.com/dz/en/",
    "https://www.zara.com/dz/fr/",
    "https://www.zara.com/ad/",
    "https://www.zara.com/ad/en/",
    "https://www.zara.com/ad/fr/",
    "https://www.zara.com/ad/es/",
    "https://www.zara.com/ao/",
    "https://www.zara.com/ao/en/",
    "https://www.zara.com/am/",
    "https://www.zara.com/am/en/",
    "https://www.zara.com/ar/",
    "https://www.zara.com/ar/en/",
    "https://www.zara.com/aw/",
    "https://www.zara.com/aw/es/",
    "https://www.zara.com/au/",
    "https://www.zara.com/az/",
    "https://www.zara.com/az/en/",
    "https://www.zara.com/bh/",
    "https://www.zara.com/bh/ar/",
    "https://www.zara.com/be/",
    "https://www.zara.com/be/nl/",
    "https://www.zara.com/be/fr/",
    "https://www.zara.com/by/",
    "https://www.zara.com/by/ru/",
    "https://www.zara.com/ba/",
    "https://www.zara.com/ba/en/",
    "https://www.zara.com/br/",
    "https://www.zara.com/br/en/",
    "https://www.zara.com/bg/",
    "https://www.zara.com/bg/en/",
    "https://www.zara.com/kh/",
    "https://www.zara.com/ca/",
    "https://www.zara.com/ca/fr/",
    "https://www.zara.com/cl/",
    "https://www.zara.com/cl/en/",
    "https://www.zara.com/cn/",
    "https://www.zara.com/cn/en/",
    "https://www.zara.com/hk/",
    "https://www.zara.com/hk/zt/",
    "https://www.zara.com/mo/",
    "https://www.zara.com/mo/en/",
    "https://www.zara.com/tw/",
    "https://www.zara.com/tw/en/",
    "https://www.zara.com/co/",
    "https://www.zara.com/co/en/",
    "https://www.zara.com/cr/",
    "https://www.zara.com/cr/en/",
    "https://www.zara.com/cy/",
    "https://www.zara.com/cy/en/",
    "https://www.zara.com/cz/",
    "https://www.zara.com/cz/en/",
    "https://www.zara.com/dk/",
    "https://www.zara.com/dk/en/",
    "https://www.zara.com/de/",
    "https://www.zara.com/de/en/",
    "https://www.zara.com/ec/",
    "https://www.zara.com/ec/en/",
    "https://www.zara.com/ee/",
    "https://www.zara.com/ee/en/",
    "https://www.zara.com/eg/",
    "https://www.zara.com/eg/en/",
    "https://www.zara.com/sv/",
    "https://www.zara.com/sv/en/",
    "https://www.zara.com/es/",
    "https://www.zara.com/es/en/",
    "https://www.zara.com/es/eu/",
    "https://www.zara.com/es/gl/",
    "https://www.zara.com/es/ca/",
    "https://www.zara.com/fi/",
    "https://www.zara.com/fi/sv/",
    "https://www.zara.com/fi/en/",
    "https://www.zara.com/fr/",
    "https://www.zara.com/fr/en/",
    "https://www.zara.com/ge/",
    "https://www.zara.com/ge/ka/",
    "https://www.zara.com/gr/",
    "https://www.zara.com/gr/en/",
    "https://www.zara.com/gt/",
    "https://www.zara.com/gt/en/",
    "https://www.zara.com/hn/",
    "https://www.zara.com/hn/en/",
    "https://www.zara.com/hr/",
    "https://www.zara.com/hr/en/",
    "https://www.zara.com/is/",
    "https://www.zara.com/in/",
    "https://www.zara.com/id/",
    "https://www.zara.com/id/en/",
    "https://www.zara.com/ie/",
    "https://www.zara.com/il/",
    "https://www.zara.com/il/en/",
    "https://www.zara.com/it/",
    "https://www.zara.com/it/en/",
    "https://www.zara.com/jp/",
    "https://www.zara.com/jp/en/",
    "https://www.zara.com/jo/",
    "https://www.zara.com/jo/ar/",
    "https://www.zara.com/kz/",
    "https://www.zara.com/kz/kk/",
    "https://www.zara.com/kz/en/",
    "https://www.zara.com/xk/",
    "https://www.zara.com/xk/en/",
    "https://www.zara.com/kw/",
    "https://www.zara.com/kw/ar/",
    "https://www.zara.com/lv/",
    "https://www.zara.com/lv/en/",
    "https://www.zara.com/lb/",
    "https://www.zara.com/lb/ar/",
    "https://www.zara.com/lt/",
    "https://www.zara.com/lt/en/",
    "https://www.zara.com/lu/",
    "https://www.zara.com/lu/en/",
    "https://www.zara.com/lu/de/",
    "https://www.zara.com/mk/",
    "https://www.zara.com/mk/sq/",
    "https://www.zara.com/mk/en/",
    "https://www.zara.com/hu/",
    "https://www.zara.com/hu/en/",
    "https://www.zara.com/my/",
    "https://www.zara.com/mt/",
    "https://www.zara.com/ma/",
    "https://www.zara.com/ma/ar/",
    "https://www.zara.com/ma/en/",
    "https://www.zara.com/mx/",
    "https://www.zara.com/mx/en/",
    "https://www.zara.com/mc/",
    "https://www.zara.com/mc/en/",
    "https://www.zara.com/me/",
    "https://www.zara.com/me/en/",
    "https://www.zara.com/nl/",
    "https://www.zara.com/nl/nl/",
    "https://www.zara.com/nz/",
    "https://www.zara.com/ni/",
    "https://www.zara.com/ni/en/",
    "https://www.zara.com/no/",
    "https://www.zara.com/no/en/",
    "https://www.zara.com/om/",
    "https://www.zara.com/om/ar/",
    "https://www.zara.com/at/",
    "https://www.zara.com/at/en/",
    "https://www.zara.com/pa/",
    "https://www.zara.com/pa/en/",
    "https://www.zara.com/py/",
    "https://www.zara.com/py/en/",
    "https://www.zara.com/pe/",
    "https://www.zara.com/pe/en/",
    "https://www.zara.com/ph/",
    "https://www.zara.com/pl/",
    "https://www.zara.com/pl/uk/",
    "https://www.zara.com/pl/en/",
    "https://www.zara.com/pt/",
    "https://www.zara.com/pt/en/",
    "https://www.zara.com/pr/",
    "https://www.zara.com/pr/en/",
    "https://www.zara.com/qa/",
    "https://www.zara.com/qa/ar/",
    "https://www.zara.com/do/",
    "https://www.zara.com/do/en/",
    "https://www.zara.com/ro/",
    "https://www.zara.com/ro/en/",
    "https://www.zara.com/sa/",
    "https://www.zara.com/sa/en/",
    "https://www.zara.com/rs/",
    "https://www.zara.com/rs/en/",
    "https://www.zara.com/sg/",
    "https://www.zara.com/sk/",
    "https://www.zara.com/sk/en/",
    "https://www.zara.com/si/",
    "https://www.zara.com/si/en/",
    "https://www.zara.com/kr/",
    "https://www.zara.com/kr/en/",
    "https://www.zara.com/za/",
    "https://www.zara.com/se/",
    "https://www.zara.com/se/en/",
    "https://www.zara.com/ch/",
    "https://www.zara.com/ch/fr/",
    "https://www.zara.com/ch/de/",
    "https://www.zara.com/ch/it/",
    "https://www.zara.com/th/",
    "https://www.zara.com/th/en/",
    "https://www.zara.com/tn/",
    "https://www.zara.com/tn/ar/",
    "https://www.zara.com/tn/en/",
    "https://www.zara.com/tr/",
    "https://www.zara.com/tr/en/",
    "https://www.zara.com/ua/",
    "https://www.zara.com/ua/en/",
    "https://www.zara.com/ae/",
    "https://www.zara.com/ae/ar/",
    "https://www.zara.com/uk/",
    "https://www.zara.com/us/",
    "https://www.zara.com/us/es/",
    "https://www.zara.com/uy/",
    "https://www.zara.com/uy/en/",
    "https://www.zara.com/uz/",
    "https://www.zara.com/uz/en/",
    "https://www.zara.com/uz/ru/",
    "https://www.zara.com/ve/",
    "https://www.zara.com/ve/en/",
    "https://www.zara.com/vn/",
    "https://www.zara.com/vn/en/",
    "https://www.zara.com/"
]
```

### Local development

Install the pinned dependencies with `python -m pip install -r requirements.txt`, then run `apify run` from this directory. The actor uses the residential proxy configuration from your Apify account.

Run regression checks with `python -m unittest discover -s src/tests -v`. These cover URL parsing, category filters, independent start URLs, product tracking, and products without images. A saved category-response check runs when the repository's local Zara response fixture is available.

# Actor input Schema

## `start_urls` (type: `array`):

Full Website: https://www.zara.com/\[country]/\[language]/
e.g. https://www.zara.com/uk/en/, https//:www.zara.com/es/es/.
See Actor Information tab for a list of country websites.
Category page:
e.g.https://www.zara.com/es/es/mujer-chaquetas-l1114.html?v1=2536936
Product page:
e.g.https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265

## `scrape_product_page` (type: `boolean`):

Scrape Product Page. This turns off the fast scrape which retreives data from the product category page.

## `deduplicate_across_all_start_urls` (type: `boolean`):

Activate to deduplicate results across all start urls. Deactivate to deduplicate results for each start url independently.

## `max_subcategories` (type: `integer`):

Select the number of category product pages to scrape per url. This works with main page urls only.

## `max_results` (type: `integer`):

Select the maximum number of products to scrape per start url.

## `category_filter` (type: `array`):

e.g. WOMAN. This works with main page urls only. See Actor log for a list of categories.

## Actor input object example

```json
{
  "start_urls": [
    {
      "url": "https://www.zara.com/es/es/"
    },
    {
      "url": "https://www.zara.com/uk/en/woman-jeans-l1119.html?v1=2419185"
    },
    {
      "url": "https://www.zara.com/es/es/mujer-chaquetas-l1114.html?v1=2536936"
    },
    {
      "url": "https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265"
    }
  ],
  "scrape_product_page": false,
  "deduplicate_across_all_start_urls": true,
  "max_subcategories": 3,
  "max_results": 5
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "start_urls": [
        {
            "url": "https://www.zara.com/es/es/"
        },
        {
            "url": "https://www.zara.com/uk/en/woman-jeans-l1119.html?v1=2419185"
        },
        {
            "url": "https://www.zara.com/es/es/mujer-chaquetas-l1114.html?v1=2536936"
        },
        {
            "url": "https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265"
        }
    ],
    "max_subcategories": 3,
    "max_results": 5
};

// Run the Actor and wait for it to finish
const run = await client.actor("datasaurus/zara").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "start_urls": [
        { "url": "https://www.zara.com/es/es/" },
        { "url": "https://www.zara.com/uk/en/woman-jeans-l1119.html?v1=2419185" },
        { "url": "https://www.zara.com/es/es/mujer-chaquetas-l1114.html?v1=2536936" },
        { "url": "https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265" },
    ],
    "max_subcategories": 3,
    "max_results": 5,
}

# Run the Actor and wait for it to finish
run = client.actor("datasaurus/zara").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "start_urls": [
    {
      "url": "https://www.zara.com/es/es/"
    },
    {
      "url": "https://www.zara.com/uk/en/woman-jeans-l1119.html?v1=2419185"
    },
    {
      "url": "https://www.zara.com/es/es/mujer-chaquetas-l1114.html?v1=2536936"
    },
    {
      "url": "https://www.zara.com/uk/en/long-sleeve-t-shirt-p04424819.html?v1=497962265"
    }
  ],
  "max_subcategories": 3,
  "max_results": 5
}' |
apify call datasaurus/zara --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,datasaurus/zara"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Img8lfMRf3lXNOIXl/builds/0VIhnyLiVjRqCo7TK/openapi.json
