POST /api/endclothing/products/search
Price: 20 credits
List END. Clothing products from keyword search, a category, a brand, the sale or launches, filtered by brand, department, footwear style, colour, clothing and footwear size, label and price
Pick scope: search takes query, category takes a path from the END. Clothing categories endpoint, brand takes an alias from the END. Clothing brands endpoint, sale and launches take neither. Filter values are the ones returned in the product fields of the same names; brands is matched against the live brand facet case- and punctuation-insensitively, so the END. Clothing brands endpoint's name works even where it differs from the catalogue's own brand spelling. Prices follow country; the price sorts order by the UK store price.
access-token string requiredtimeout integer — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)count integer required — Max number of products to return (min: 1)scope string required — Which END. Clothing listing to read (one of: "search", "category", "brand", "sale", "launches")query string nullable — Search keywords, for scope search (examples: "salomon", "gore-tex jacket"; minLength: 1)category string nullable — Category path or URL, for scope category (examples: "footwear/sneakers", "women/footwear", "https://www.endclothing.com/us/clothing/jackets")brand string nullable — Brand alias, path or URL, for scope brand (examples: "nike", "women/brands/nike", "https://www.endclothing.com/us/brands/stone-island")gender string nullable — Store section; search covers both when omitted, brand, sale and launches default to men (one of: "men", "women")country string — Shipping country; it sets the storefront, availability, prices and currency (default: "US"; one of: "AL", "AM", "AR", "AT", "AU", "AZ", "BE", "BG", "BR", "CA", "CH", "CL", "CN", "CO", "CR", "CY", "CZ", "DE", "DK", "EC", "EE", "ES", "FI", "FR", "GB", "GE", "GG", "GR", "GY", "HK", "HR", "HU", "IE", "IN", "IS", "IT", "JE", "JM", "JP", "KR", "KY", "LC", "LI", "LT", "LU", "LV", "MC", "MD", "ME", "MO", "MT", "MX", "MY", "MZ", "NL", "NO", "NP", "NZ", "PE", "PH", "PL", "PR", "PT", "PY", "RO", "RW", "SE", "SG", "SI", "SK", "SZ", "TC", "TH", "TR", "TW", "US", "UY", "ZA")sort string — Result ordering; scope search supports featured only (default: "featured"; one of: "featured", "price_asc", "price_desc", "newest")brands array nullable — Brand names (examples: ["Nike","Salomon"])departments array nullable — Departments (examples: ["Sneakers"], ["Jackets > Bomber Jackets"])footwear_styles array nullable — Footwear styles (examples: ["Air Jordan 4"])colours array nullable — Colours (one of: "Black", "Blue", "Brown", "Burgundy", "Gold", "Green", "Grey", "Multi", "N/A", "Neutrals", "Orange", "Pink", "Purple", "Red", "Silver", "White", "Yellow")clothing_sizes array nullable — Clothing sizes as shown on the store (examples: ["Medium","Large"], ["32\""])footwear_sizes array nullable — Footwear sizes as shown on the store (examples: ["UK 9","US 10"])labels array nullable — Product labels (one of: "Latest", "END. Exclusive", "END. Label", "END. Collaborations", "New Brand")min_price number nullable — Minimum price in the country's store currency (min: 0)max_price number nullable — Maximum price in the country's store currency (min: 0)@type string (default: "EndclothingProduct")id string requiredsku string nullablealias string nullableurl string nullablename string nullablebrand string nullablesecondary_brand string nullabledescription string nullabledescription_markdown string nullablepull_quote string nullablefeatures array (default: [])colour string nullablecolours array (default: [])gender string nullableis_menswear boolean nullableis_womenswear boolean nullablecategory string nullabledepartment string nullabledepartments array (default: [])categories array (default: [])season string nullableactivity string nullablefootwear_style string nullablefootwear_size_table string nullablelabel string nullablesale_type string nullablediscount_percent number nullablespecial_from_at integer nullablespecial_to_at integer nullablecurrency string nullableprice number nullablefull_price number nullableis_on_sale boolean nullableis_available boolean nullableregional_prices array (default: [])@type string (default: "EndclothingRegionalPrice")website_id string requiredcurrency string nullableprice number nullablefull_price number nullablestock_count integer nullablesizes array (default: [])clothing_sizes array (default: [])footwear_sizes array (default: [])size_stock array (default: [])@type string (default: "EndclothingSizeStock")sku string requiredquantity integer nullableis_enabled boolean nullableis_for_sale_online boolean nullableis_restock boolean nullableimage string nullableimages array (default: [])model_image string nullablemodel_crop_image string nullablelaunch_mode string nullablerelease_at integer nullablenew_from_at integer nullablecreated_at integer nullable422 — The request body did not validate Check the fields against this schema. A URN with the wrong prefix is the most common cause.408 — The request ran past its time limit Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.412 — No END. Clothing category or brand has this path Retrying will not help: either the entity does not exist, or the input points at a different one.429 — Too many requests: a rate limit or a usage window is exhausted When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.500 — Something broke on our side Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.529 — Rate limit reached, or the endpoint is overloaded Wait at least 30 seconds, then retry.X-Error — Error message text (present only on error)X-Request-ID — Unique request identifierX-Execution-Time — Execution time in secondsX-Result-Count — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.X-Total-Available-Results — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.X-Warning — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.X-Retry-After — Seconds to wait before retrying. Present only on 429.