Zara API: Get product
Gets a Zara item's price, colours, sizes with availability, materials and images by item name or Zara item link in a chosen country. A name returns the closest match from Zara's search.
Unofficial. Not affiliated with or endorsed by Zara.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Country optional
country Country name or two-letter code, for example Canada. Defaults to United States.
United Kingdom
Default
United States.- Product, required
product Product name or Zara item link, for example Linen blend sleeveless shirt.
100% linen relaxed fit shirt
Input as JSON
{ "country": "United Kingdom", "product": "100% linen relaxed fit shirt"}Output
{ "price": 45.99, "colours": [ { "name": "Light beige", "sizes": [ { "size": "S", "availability": "in stock" }, { "size": "M", "availability": "in stock" }, { "size": "L", "availability": "in stock" } ] }, { "name": "Light grey", "sizes": [ { "size": "S", "availability": "in stock" }, { "size": "M", "availability": "in stock" }, { "size": "L", "availability": "in stock" } ] }, { "name": "Black", "sizes": [ { "size": "S", "availability": "in stock" }, { "size": "M", "availability": "in stock" }, { "size": "L", "availability": "in stock" } ] } ], "currency": "GBP", "materials": [ "linen" ], "composition": "OUTER SHELL: 100% linen", "description": "Relaxed fit shirt made from linen fabric. Featuring a bowling collar, short sleeves, side vents at the hem and a front button fastening.", "image_links": [ "https://static.zara.net/assets/public/d1cd/bebe/c67243ba9b64/77f44e2b4148/05070904052-p/05070904052-p.jpg?ts=1787664185882" , "https://static.zara.net/assets/public/3c80/422d/5e794c8089b6/ddaafc183726/05070904052-a1/05070904052-a1.jpg?ts=1787664185725" , "https://static.zara.net/assets/public/b200/c3ee/8752456ab41a/4c11978cc0c1/05070904052-a2/05070904052-a2.jpg?ts=1787664195184" ], "product_link": "https://www.zara.com/uk/en/100-linen-relaxed-fit-shirt-p05070904.html" , "product_name": "100% LINEN RELAXED FIT SHIRT", "original_price": null, "zara_product_id": "545461290", "reference_number": "5070/904/052" , "care_instructions": []}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"zara.com/get_product","input":{"country":"United Kingdom","product":"100% linen relaxed fit shirt"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "zara.com/get_product" , "input": { "country": "United Kingdom", "product": "100% linen relaxed fit shirt" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "zara.com/get_product" , "input": { "country": "United Kingdom", "product": "100% linen relaxed fit shirt" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run zara.com/get_product# with {"country":"United Kingdom","product":"100% linen relaxed fit shirt"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "product" ], "properties": { "country": { "type": "string", "default": "United States", "description": "Country name or two-letter code, for example Canada. Defaults to United States." }, "product": { "type": "string", "description": "Product name or Zara item link, for example Linen blend sleeveless shirt." } }}Output schema
{ "type": "object", "required": [ "product_name", "reference_number", "price", "currency", "original_price", "description", "colours", "composition", "materials", "care_instructions", "image_links", "product_link", "zara_product_id" ], "properties": { "price": { "type": "number" }, "colours": { "type": "array", "items": { "type": "object", "required": [ "name", "sizes" ], "properties": { "name": { "type": "string" }, "sizes": { "type": "array", "items": { "type": "object", "required": [ "size", "availability" ], "properties": { "size": { "type": "string" }, "availability": { "enum": [ "in stock", "few left", "out of stock", "coming soon" ], "type": "string" } }, "additionalProperties": false } } }, "additionalProperties": false } }, "currency": { "type": "string" }, "materials": { "type": "array", "items": { "type": "string" } }, "composition": { "type": [ "string", "null" ] }, "description": { "type": [ "string", "null" ] }, "image_links": { "type": "array", "items": { "type": "string" } }, "product_link": { "type": "string" }, "product_name": { "type": "string" }, "original_price": { "type": [ "number", "null" ] }, "zara_product_id": { "type": "string", "x-fous-developer": true }, "reference_number": { "type": [ "string", "null" ] }, "care_instructions": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
zara.com/get_product- Returns
- product name, reference, price, currency, original price, description, colours with sizes, composition, materials, care instructions, images, product link
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method zara.com/get_product with the inputs above.
Ask your agent
- What sizes of the ZW Collection wide-leg jeans are still in stock in Canada, and how much are they?
- Check the price and fabric composition of the Zara satin effect midi skirt in the UK
- Is this item on sale and what colours does it come in? https://www.zara.com/us/en/textured-knit-polo-sweater-p03920407.html
- I need care instructions and materials for the oversized wool blend coat, shopping from Germany
- Get me the images, available colours and size availability for the linen blend sleeveless shirt in Spain
See more
All Zara methodsSearches a country's English Zara store for products, with current prices, colours, images and product links. The all section excludes non-Zara brands.
zara.com/search_productsGets an H&M item's current country-specific price, sizes, colours and images by product name or product page link. Description, materials, composition, care and sustainability details are always returned as null.
hm.com/get_productGets a Nike product's details by name or product link for a chosen country. Returns its colourways, size availability, price and reviews.
nike.com/get_productSearches clothes and shoes in one Zalando country shop, with optional gender, brand, deal and sort filters. Prices and discounts are those shown on the product cards; size-dependent prices may be starting prices.
zalando.com/search_productsGets details for an Amazon product, found by name or by link, in a chosen country store. Offer prices, delivery and variants may be missing when Amazon does not show them publicly.
amazon.com/get_productGet one AliExpress product’s prices, variants, reviews, shipping to a chosen country, seller and specifications from its link or the best-selling name match. Sold counts may be rounded, and shipping options are those shown for the displayed variant.
aliexpress.com/get_productGets current Apple Store prices and the configurations on sale for a product in one country. It includes only models sold on that country's public store.
apple.com/get_product_pricesGets a public Shopify product by its product page link, or by the closest name match within a store. Stores that restrict public product access cannot be read.
shop.app/get_store_product