Luxury retail pricing and stock monitoring
Use Gucci endpoints to turn luxury retail pricing and stock monitoring into repeatable API requests with documented inputs and JSON responses.
Turn Gucci's own header navigation and product pages into structured luxury retail data — a full department/category/subcategory taxonomy, keyword search and cumulative per-category browsing with sibling-category counts, full product detail with marketing copy and every size/colour/material, and search-box autocomplete. Normalized JSON, credential-free, US storefront pricing.
Browse Gucci's department taxonomy, search or browse the catalogue, get full product detail, and get search suggestions as JSON.
Endpoint families
6
Documented params
24
Examples
9
Live catalog snapshot
Active endpoints
9
Methods
GET
Required params
15
Schema refs
9
{
"platform": "Gucci",
"endpoint": "gucci-search",
"method": "GET",
"path": "/gucci/search",
"auth": "apiKey"
}Use cases
Browse Gucci's department taxonomy, search or browse the catalogue, get full product detail, and get search suggestions as JSON.
Use Gucci endpoints to turn luxury retail pricing and stock monitoring into repeatable API requests with documented inputs and JSON responses.
Use Gucci endpoints to turn category taxonomy and merchandising research into repeatable API requests with documented inputs and JSON responses.
Use Gucci endpoints to turn new-arrival and assortment tracking into repeatable API requests with documented inputs and JSON responses.
Managed execution
Every figure below is read from the live Gucci endpoint catalog — 9 endpoints, 24 documented request parameters, and 9 published response schemas — the same catalog Docs and Playground run against.
9 documented Gucci endpoints, grouped into 9 request families — Categories, Category and Product, plus 6 more.
24 request parameters are documented across those Gucci endpoints, 15 of them required — the full input contract is public before you write any integration code.
9 of the 9 Gucci endpoints ship a recorded example response, and 9 carry a documented response schema — you can code against the real JSON before the first request.
Gucci endpoints document their error responses (400, 404, 429 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
9 hosted MCP tools back the Gucci endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Coverage map
These cards are generated from the active endpoint catalog, so the landing page reflects the same API surface used by Docs and Playground.
/gucci/categories
/gucci/category
/gucci/product
/gucci/recommendations
/gucci/search
/gucci/size-guide
Endpoint catalog
/gucci/searchSearches Gucci's product catalog by keyword: normalized product summaries (name, price, colors, materials, sizes, gender, stock) with the search index's own live total result count. A genuinely empty result (e.g. a nonsense query) returns a well-formed empty products list, not an error. The response's own size_facets field lists every size value present in the result set (with live counts) -- pass one of those values as size on a follow-up call to filter to just that size.
Response notes
- A genuinely empty result (e.g. a nonsense query) returns a well-formed empty `products` list with `total_results: 0`, not an error. - `price` and `currency` are always in USD (the US storefront only). - `size_facets` lists every size value present in the response's own result set (i.e. `q`, and `size` if also given), each with its own live product count. Example response: ```json { "code": 200, "msg": "OK", "data": { "query": "belt", "country": "us", "page": 1, "limit": 24, "count": 2, "total_results": 173, "total_pages": 18, "size_facets": {"9 = 9.5 US": 52, "10 = 10.5 US": 51}, "products": [ { "style_code": "400593AP00T1000", "name": "GG Marmont wide belt", "gender": "Women", "colors": ["#000000|Black"], "materials": ["Leather"], "price": 570, "currency": "USD", "in_stock": true, "url": "https://www.gucci.com/us/en/pr/women/accessories-for-women/belts-for-women/gg-marmont-wide-belt-p-400593AP00T1000" } ] } } ```
MCP tool gucci_search
/gucci/suggestReturns Gucci's own search-box typeahead suggestions for a partial query, each with its own live total result count on the search index. Not product data -- pass a suggestion's own query value straight into gucci-search for results.
Response notes
- A genuinely empty result (no matching suggestions) returns a well-formed empty `suggestions` list, not an error. Example response: ```json { "code": 200, "msg": "OK", "data": { "query": "bel", "suggestions": [ {"query": "belts", "result_count": 173}, {"query": "belt bag", "result_count": 29}, {"query": "belts for women", "result_count": 109} ] } } ```
MCP tool gucci_suggest
/gucci/categoriesReturns Gucci's full department/category/subcategory taxonomy, sourced directly from the site's own header navigation menu. Each entry's category value is exactly what gucci-category's own category parameter accepts. Filter to one department with department (e.g. women, men); omit for every department -- see the response's own departments field for the live list of top-level department labels to filter by.
Response notes
- `departments` lists every top-level department the site's own navigation exposes (e.g. Women, Men, Children, Jewelry & Watches, Décor & Lifestyle, Fragrances & Make-Up, Gifts). - `path` is the full "Department > Group > Leaf" label breadcrumb as the site's own nav menu presents it. - Not every navigation link is a browsable category: editorial/campaign pages and the store locator are excluded, since `gucci-category` would reject them. Example response: ```json { "code": 200, "msg": "OK", "data": { "country": "us", "language": "en", "departments": ["Handbags", "Women", "Men", "New In", "Children", "Jewelry & Watches", "Gifts"], "categories": [ {"department": "Women", "path": "Women > Handbags > Crossbody Bags", "label": "Crossbody Bags", "category": "women/handbags/crossbody-bags-for-women-c-women-handbags-crossbody"}, {"department": "Women", "path": "Women > Handbags > Tote Bags", "label": "Tote Bags", "category": "women/handbags/tote-bags-for-women-c-women-handbags-totes"} ] } } ```
MCP tool gucci_categories
/gucci/categoryReturns one Gucci category/browse listing: normalized products (name, price, colors, images, stock) plus the upstream's own product count, page count, sibling-category counts, and sort options. category comes from gucci-categories' own category field. page selects how many of the upstream's own batches to accumulate -- Gucci's own category pages page this way: requesting page=N returns every product from page 1 through page N combined (its own "Load All" button simply requests the last page), not a single page's worth. Defaults to 1 (the upstream's own first batch, 36 products); request page equal to the response's own pages_count to fetch a category's complete listing in one call.
Response notes
- Gucci's own category pages page cumulatively: requesting `page=N` returns every product from page 1 through page N combined (its own "Load All" button on the site simply requests the last page), not a single page's worth. Request `page` equal to the response's own `pages_count` to fetch a category's complete listing in one call. - `facets` reports sibling/cross-cutting category counts within the current listing's context (e.g. a `new` or `gifts` shelf a product also belongs to), not only true subcategories of `category`. - `sort_options` lists every value the site's own sort control accepts (`default`, `newest`, `price-desc`, `price-asc`). - An unrecognized `category` value returns a not-found error. Example response: ```json { "code": 200, "msg": "OK", "data": { "category": "women/handbags-c-women-handbags", "country": "us", "language": "en", "page": 1, "products_count": 384, "pages_count": 11, "sort_options": ["default", "newest", "price-desc", "price-asc"], "facets": [{"path": "women", "count": 384}, {"path": "gifts", "count": 253}], "products": [ { "style_code": "A005XWAAG8T1000", "name": "Jetset GG Marmont medium shoulder bag", "price": 3100, "currency": "USD", "colors": ["#000000|Black"], "images": ["https://media.gucci.com/style/..."], "url": "https://www.gucci.com/us/en/pr/women/handbags/...", "in_stock": true, "in_stock_online": true, "in_stock_stores": true } ] } } ```
MCP tool gucci_category
/gucci/productReturns full normalized product detail for one style: name, marketing description, breadcrumb trail, brand line, gender, colors, materials, sizes, price, images, and stock -- combining Gucci's own structured product record with the product page's own marketing copy. style_code comes from gucci-search's or gucci-category's own style_code field.
Response notes
- `description` prefers the product page's own long-form marketing copy; if that page could not be fetched, it falls back to a shorter variation description instead of failing the whole request. - `sizes`, `colors`, `materials`, and `sku` reflect the US storefront only. - `price` and `currency` are always in USD. - An unrecognized `style_code` returns a not-found error. Example response: ```json { "code": 200, "msg": "OK", "data": { "style_code": "A005Y8AAG231096", "name": "Bamboo Tote large bag", "description": "Gucci Primavera establishes a new vocabulary of silhouettes, textures, and materials...", "gender": "Women", "colors": ["#000000|Black"], "materials": ["Leather"], "sizes": ["U"], "sku": "814374772", "price": 4450, "currency": "USD", "availability": "InStock", "breadcrumbs": ["Women", "Handbags", "Shoulder Bags for Women"], "in_stock": true, "in_stock_online": true, "in_stock_stores": true, "url": "https://www.gucci.com/us/en/pr/women/handbags/shoulder-bags-for-women/bamboo-tote-large-bag-p-A005Y8AAG231096" } } ```
MCP tool gucci_product
/gucci/recommendationsReturns one Gucci recommendations shelf: normalized product summaries (name, price, image, stock) from either a given product's own "You May Also Like" carousel (style_code set) or the site's general trending-items shelf (style_code omitted). style_code comes from gucci-search's or gucci-category's own style_code field.
Response notes
- `model` reports which shelf the response came from: `related-products` (style_code given) or `trending-items` (style_code omitted). - `price` and `currency` are always in USD (the US storefront only). - A style code with no related-items shelf returns a well-formed empty `products` list, not an error. Example response: ```json { "code": 200, "msg": "OK", "data": { "style_code": "A005Y8AAG231096", "model": "related-products", "country": "us", "count": 2, "products": [ { "style_code": "A005Y8AAG4B9761", "name": "Bamboo Tote large bag", "price": 4450, "currency": "USD", "image_url": "https://media.gucci.com/style/$format$/1784301307/A005Y8_AAG4B_9761_001_100_0000_Light.jpg", "url": "https://www.gucci.com/us/en/pr/women/handbags/shoulder-bags-for-women/bamboo-tote-large-bag-p-A005Y8AAG4B9761", "in_stock_online": true, "in_stock_stores": true }, { "style_code": "A005YBAAG8Z2742", "name": "Bamboo Tote medium bag", "price": 3950, "currency": "USD", "in_stock_online": true, "in_stock_stores": true } ] } } ```
MCP tool gucci_recommendations
/gucci/size-guideReturns Gucci's own size-conversion chart for one product style, as a plain header row plus data rows. Not every style carries one -- a one-size accessory (a bag, a scarf) returns available: false with no headers/rows, a well-formed signal rather than an error. style_code comes from gucci-search's or gucci-category's own style_code field.
Response notes
- Not every style carries a size chart: a one-size accessory (a bag, a scarf) returns `available: false` with no `headers`/`rows`, a well-formed signal rather than an error. - `title` reflects the chart's own category label (e.g. `MEN'S SHOES`, `WOMEN'S RINGS`) -- the same chart is shared across every style in that category, not unique per style code. - `rows` mirrors the upstream chart's own column order exactly as `headers` lists it (e.g. size, IT/EU, UK/AU, US, foot length). Example response: ```json { "code": 200, "msg": "OK", "data": { "style_code": "757892AACAG9055", "available": true, "title": "MEN'S SHOES", "headers": ["SIZE", "IT/EU", "UK/AU", "US", "KR(MM)", "JP(CM)", "MX", "FOOT LENGTH(INCH)"], "rows": [ ["4", "38", "4", "4.5", "230", "23", "4.5", "9.61"], ["4.5", "38.5", "4.5", "5", "235", "23.5", "5", "9.76"] ] } } ```
MCP tool gucci_size_guide
/gucci/storeReturns one Gucci store's full detail: name, phone, address, opening hours, and photos. slug comes from gucci-stores' own slug field.
Response notes
- `opening_hours` is a list of day-range rules: `days` are open `opens`-`closes` (24h, local store time). - An unrecognized `slug` returns a not-found error. Example response: ```json { "code": 200, "msg": "OK", "data": { "slug": "900-north-michigan-avenue", "name": "Chicago Flagship", "phone": "+13126645504", "street_address": "900 North Michigan Avenue", "city": "Chicago", "region": "Illinois", "postal_code": "60611", "country": "US", "opening_hours": [ {"days": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], "opens": "10:00", "closes": "19:00"}, {"days": ["Sunday"], "opens": "12:00", "closes": "18:00"} ], "images": [ "https://www.gucci.com/_ui/responsive/theme-gucci/images/stores/StoreDetailStandard_default-01_001_Default.jpg" ], "url": "https://www.gucci.com/us/en/store/900-north-michigan-avenue" } } ```
MCP tool gucci_store
/gucci/storesReturns Gucci's full US store-locator listing: name, address, phone, coordinates, product departments carried, and a link to book an in-store appointment for each location. Filter to stores carrying one department with department (e.g. jewelry, mens_shoes); omit for every store -- see the response's own departments field for the live list of department tags to filter by.
Response notes
- `slug` is the value `gucci-store`'s own `slug` parameter accepts, to fetch that store's opening hours. - `departments` (top level) lists every department tag present across the whole listing; each `store`'s own `departments` lists only the tags that location carries. - `book_appointment_url`, when present, opens that store's private-appointment booking flow. Example response: ```json { "code": 200, "msg": "OK", "data": { "country": "us", "count": 94, "departments": ["jewelry", "mens_bags", "mens_shoes", "watches", "womens_bags", "womens_shoes"], "stores": [ { "store_code": "266", "slug": "900-north-michigan-avenue", "name": "Chicago Flagship", "type": "flagship", "address": "900 North Michigan Avenue", "city": "Chicago, Illinois, 60611, United States", "phone": "+13126645504", "latitude": 41.8998, "longitude": -87.6244, "departments": ["jewelry", "mens_bags", "watches"], "book_appointment_url": "https://www.gucci.com/web/baa/us/en/store/23042", "url": "https://www.gucci.com/us/en/store/900-north-michigan-avenue" } ] } } ```
MCP tool gucci_stores
Related APIs
Marketplaces & Retail
Collect marketplace product signals from Amazon without building brittle storefront scrapers.
Marketplaces & Retail
Build resale, pricing, and marketplace workflows from structured eBay data.
Marketplaces & Retail
Turn public Shop.app product and merchant pages into structured JSON for e-commerce product intelligence, price research, shop monitoring, and marketplace discovery workflows.
How to scrape Gucci
Crawlora's five Gucci endpoints return department/category, search, product, and suggestion data as normalized JSON with one API key — category browsing pages cumulatively, so requesting the right page number is what gets a category's complete listing rather than a slice of it.
Call /gucci/categories for Gucci's full department/category/subcategory taxonomy with breadcrumb paths, sourced from its own header nav. Pass a category value to /gucci/category — its page parameter accumulates: page=N returns every product from page 1 through N combined, mirroring the site's own "Load All" button, so request page equal to the response's own pages_count for a category's complete listing in one call.
Send q to /gucci/search for normalized product summaries with the search index's own live total_results and total_pages. page (default 1) and limit (default 24, max 100) control pagination; a nonsense query returns a well-formed empty list with total_results: 0 rather than an error.
Pass a style_code from a search or category result to /gucci/product for marketing description, breadcrumb trail, gender, colors, materials, sizes, sku, price, and separate in_stock_online/in_stock_stores flags. description falls back to a shorter variation description if the full product page could not be fetched, rather than failing outright.
Send q to /gucci/suggest for the storefront's own typeahead phrases, each carrying a live result_count. limit (default 5, max 20) caps how many come back; pass a suggestion straight into /gucci/search's q for product results.
FAQ
Gucci's own category pages accumulate rather than paginate independently — /gucci/category's page=N returns every product from page 1 through page N combined. Request page equal to the response's own pages_count field to get that category's complete listing in a single call, the same result its own site's "Load All" button produces.
It reports sibling and cross-cutting category counts within the current listing's context — for example how many of the current products also sit in a new or gifts shelf — not only true subcategories of the category you requested.
No — /gucci/search is relevance-ranked, and a genuinely non-matching query returns a well-formed empty products list with total_results: 0 rather than an error, so an empty result is a normal, valid response to check for.
No — /gucci/product and /gucci/search always return price and currency for the US storefront (USD), regardless of query parameters, since this endpoint family only scrapes the US site.
No — only your Crawlora API key. Gucci's category, search, product, and suggestion data are collected from its public, credential-free storefront surface.