Mytheresa Scraper — Per-Size Stock, Composition & Prices avatar

Mytheresa Scraper — Per-Size Stock, Composition & Prices

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
Mytheresa Scraper — Per-Size Stock, Composition & Prices

Mytheresa Scraper — Per-Size Stock, Composition & Prices

Scrape mytheresa.com luxury fashion by category, designer or sale. Full size ladder with real per-size availability, prices, markdowns, colour, images and category tree. Full mode adds composition, care, fit, measurements and the designer's own colourway name.

Pricing

from $1.20 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Mytheresa Scraper

Scrape mytheresa.com, the Munich luxury e-tailer, and get back designer products with their full size ladder and real per-size availability — which sizes are actually buyable right now, not the size chart the garment theoretically comes in.

Browse by category, by designer, or across the sale. Eleven markets. No login, no cookies to supply, no proxy needed.

What you get

Every product, in every mode:

Name, designer, descriptionMytheresa's own copy
Price, original price, discountConverted to major units, markdown only when there really is one
Sizes with per-size stock[{size: "38", sizeHarmonized: "M", sku: "P01181397-3", inStock: true, lowStockHint: 4}, …]
Colour, category tree, imagesFull breadcrumb, every image
Product code, designer ID, season codeMytheresa's identifiers
VAT rate and whether it is includedPer market

Set mode: "full" and each product also carries composition, care instructions, country of manufacture, lining, closure, fit notes, garment measurements per size, sustainability claims, and the designer's own colourway name.

Depth: fast search vs full crawl

Mytheresa does not use a hosted search service (no Algolia, Typesense, Constructor.io, Bloomreach or Klevu). It runs its own GraphQL gateway, and that gateway serves both the listing pages and the product pages. This actor reads both, and you choose how deep:

Fast (mode: "index")Full (mode: "full")
Speedup to 120 products per request, under a secondroughly 1 product per second
Requests1 per 120 products1 per 120 products plus 1 per product
Fieldsname, designer, price, markdown, per-size stock, colour, category tree, images, description, product code, season code, VATeverything in fast mode, plus the below
Not includeddesignerColourName, materials, composition, careInstructions, madeIn, lining, closure, features, sizeAndFit, measurements, sustainability
Best forprice monitoring, availability tracking, catalogue snapshots, assortment analysisproduct records, matching against other retailers, compliance, enrichment

Those missing fields are not a limitation of this actor. They are genuinely absent from Mytheresa's listing payload: measured over 360 listing records, features and sizeAndFit came back empty on 100% of them and are populated on 100% of product records. Everything else — including the per-size stock — is already there at listing level, which is why fast mode is a complete commercial record rather than a teaser.

Every output row carries detailFetched, so you can always tell which depth a record came from.

Per-size stock is real stock

This is the point of the actor, so it is worth being precise about.

Some retailers return a size schema — every size the scale defines, whether or not any of it exists. Mytheresa does not. Measured across 360 products:

  • average in-stock ratio 0.85, not 1.0
  • 164 of 360 products had at least one sold-out size
  • lastStockQuantityHint runs 0–5, and 0 always coincides with inStock: false

A real record:

"sizeLadder": ["36", "38", "40", "42", "44", "46", "48", "50"],
"sizesInStock": ["44", "48"],
"sizes": [
{ "size": "44", "sizeHarmonized": "M", "sku": "P01181397-6", "inStock": true, "lowStockHint": 1 },
{ "size": "46", "sizeHarmonized": "L", "sku": "P01181397-7", "inStock": false },
{ "size": "48", "sizeHarmonized": "XL", "sku": "P01181397-8", "inStock": true, "lowStockHint": 2 }
]

lowStockHint caps at 5, so treat 5 as "five or more". It is Mytheresa's low-stock warning, not an inventory feed.

How to scrape Mytheresa data

  1. Pick a section: women, men or kids.
  2. Pick what to browse. Any one of:
    • categorySlugsclothing, clothing/dresses, shoes, bags, accessories, sale, sale/clothing, new-arrivals, designers/gucci, designers/gucci/bags. Relative to the section, no locale, no leading section. /women/clothing will not work.
    • designer — plain language: Gucci, Saint Laurent, Dolce&Gabbana. Resolved against Mytheresa's own designer index, so you do not have to know that Dolce&Gabbana's slug is dolce-gabbana.
    • nothing at all, which browses the section's whole clothing catalogue.
  3. Pick a market (BE, DE, GB, US, INT, …). Currency and assortment differ.
  4. Pick a depth (index or full) and a maxItems.
  5. Run.

Example input:

{
"mode": "full",
"section": "women",
"market": "BE",
"categorySlugs": ["clothing/dresses"],
"onlyInStock": true,
"maxItems": 500
}

Example output row (fast mode, trimmed):

{
"name": "VLogo cotton tweed minidress",
"brand": "Valentino",
"price": 1980,
"currency": "EUR",
"originalPrice": null,
"sizeLadder": ["36","38","40","42","44","46","48","50"],
"sizesInStock": ["44","48"],
"inStock": true,
"sizeType": "IT",
"colour": "white",
"category": "Day",
"categories": ["Clothing","Dresses","Day"],
"sku": "P01181397",
"seasonCode": "26/2",
"vatIncluded": true,
"vatPercentage": 21,
"url": "https://www.mytheresa.com/euro/en/women/valentino-cotton-tweed-minidress-white-p01181397",
"detailFetched": false
}

And what full mode adds to the same product:

{
"designerColourName": "Milky/Nerp",
"materials": "100% cotton",
"composition": ["Material: 100% cotton", "Trim: 55% cotton, 45% viscose", "Lining: 100% silk"],
"careInstructions": "dry clean",
"madeIn": "Italy",
"closure": "concealed zipped side",
"sizeAndFit": ["True to size", "Designed for a loose fit", "Non-stretchy fabric"],
"measurements": { "Chest circumference": { "38": "84,0" }, "Length": { "38": "87,0" } },
"detailFetched": true
}

Markets

InputStoreCurrency
BE NL FR IE IT ESeuroEUR
DE ATdeEUR
GBgbGBP
USusUSD
INTintEUR

Assortment differs per market — women's clothing runs 16,765 items on International and 18,342 on US — so pick the one you actually care about rather than assuming a currency conversion.

Limitations, stated plainly

There is no manufacturer style code. Luxury has no EAN, so a brand style code is the only reliable way to match the same physical product across retailers. Farfetch publishes one (brandStyleId) and NET-A-PORTER publishes one (mfPartNumber). Mytheresa publishes none. This was checked against Mytheresa's own complete product-page field selection across 70 products spanning every department: no MPN, no GTIN, no EAN anywhere in their data. sku (P01167433) is Mytheresa's internal code and designerId is Mytheresa's internal designer id.

The best available substitute is designerColourName — the brand's own colourway name, like "Caramel Cognac" or "Nero/Ottone Vintage" — present on about 81% of products in full mode. Brand + product name + designer colour name is a much stronger join key than brand + "brown". Use full mode if cross-retailer matching is what you are here for.

There is no free-text search. Mytheresa's search endpoint exists but checks the client's TLS fingerprint in a way its listing endpoint does not, and a Node actor cannot reproduce a browser fingerprint without native libraries. Rather than ship a feature that works intermittently, this actor browses the category tree, which is not gated and reaches the same products: the full category hierarchy, 267 women's / 142 men's / 65 kids' designer pages, and a sale listing of roughly 49,000 items. The keywords input filters what has been browsed and is not a query to Mytheresa.

Prices reflect one market at a time. Run once per market if you need a comparison.

sizeType (FR / IT / UK) is populated on about half of records. sizeHarmonized (XS/S/M/L) is on most.

Cost and speed

Fast mode fetches 120 products per request in well under a second, with no browser and no proxy, so a 10,000-product catalogue snapshot is on the order of 85 requests and a couple of minutes. Full mode adds one request per product; budget roughly a second each.

Mytheresa's gateway stalls on about 4% of requests under load — the connection hangs rather than returning an error. The actor retries with backoff and logs how many stalls it absorbed, so a clean run reporting zero stalls is normal and a run reporting many is a signal worth watching.

Proxy

Leave it off. Mytheresa's API answers a direct request in about half a second with no cookies. Residential proxy exits are badly scored against Akamai-fronted luxury sites and measured worse than a direct connection, so proxyConfiguration is ignored on purpose and the default prefill has it disabled. Turning it on costs money and adds failure modes for nothing.

  • NET-A-PORTER Scraper — the other luxury e-tailer with per-size stock, and one of only two that publish a real manufacturer style code
  • Yoox Scraper — YNAP's outlet, and the only luxury source that states a supplier RRP next to the discounted price
  • Farfetch Scraper — marketplace breadth plus brandStyleId
  • Zalando Scraper — mass-market comparison point
  • Vinted Scraper — resale prices for the same brands

Support

Open an issue on the actor page. If a run fails, include the run ID and the input — the actor's error messages name the specific cause (bad slug, filters excluding everything, gateway stall) rather than failing silently.