# SSENSE API scraper — the luxury & streetwear retailer (ssense.com): search menswear, womenswear and everything-else in 235 shipping countries with local prices, read the full product (every size with real stock and GTIN, composition, made-in, final-sale and the duties line), batch prices, designer autocomplete and the designer directory. No account, no browser.

> Search SSENSE in any shipping country by keyword, designer or category, with the site's own sorts and the sale listing. Each row: product id, SKU, designer, name, the price a shopper pays in that country's currency, the struck price + discount %, in-stock flag, category ids and image. Totals and optional facets (designers, category tree with counts, colours, sizes). A query with no genuine match returns empty (padding counted in fallback_results_dropped).
> ReefAPI engine `ssense` · 5 endpoints · clean JSON, no scraping or browsers to manage.

## How to call
- **Endpoint:** `POST https://api.reefapi.com/ssense/v1/<action>` with a JSON body.
- **Auth:** header `x-api-key: <YOUR_REEFAPI_KEY>` — create one free (1,000 credits, no card): https://reefapi.com/signup
- **Response (every call):** `{ ok: boolean, data: ..., meta: { record_count, credits, ... }, error: { code, message } }` — branch on `ok`. Failed calls are free except verified SHEIN NOT_FOUND on product/detail and price (4 credits).
- **One key + one shared credit pool** across every ReefAPI API. Per-call credits are listed on each endpoint below.
- **Use it from an AI agent (MCP):** connect `https://api.reefapi.com/mcp` (remote streamable-http, `Authorization: Bearer <key>`) and your assistant can call these actions directly.

## Endpoints

### POST /ssense/v1/search — 2 credits
Search SSENSE in any shipping country by keyword, designer or category, with the site's own sorts and the sale listing. Each row: product id, SKU, designer, name, the price a shopper pays in that country's currency, the struck price + discount %, in-stock flag, category ids and image. Totals and optional facets (designers, category tree with counts, colours, sizes). A query with no genuine match returns empty (padding counted in fallback_results_dropped).

**Parameters:**
- `country` (enum, optional, default "us") — Shipping country (ISO-2; 'uk' is accepted for gb). Prices, the currency and the duties/taxes line follow it. 235 countries. Default us. [one of: ad, ae, af, ag, ai, al, am, ao, aq, ar, as, at, au, aw, az, ba, bb, bd, be, bf, bg, bh, bi, bj, bm, bn, bo, br, bs, bt, bv, bw, by, bz, ca, cc, cd, cf, cg, ch, ci, ck, cl, cm, cn, co, cr, cv, cw, cx, cy, cz, de, dj, dk, dm, do, dz, ec, ee, eg, eh, er, es, et, fi, fj, fk, fm, fo, fr, ga, gb, gd, ge, gf, gh, gi, gl, gm, gn, gp, gq, gr, gs, gt, gu, gw, gy, hk, hm, hn, hr, ht, hu, id, ie, il, in, io, iq, is, it, jm, jo, jp, ke, kg, kh, ki, km, kn, kr, kw, ky, kz, la, lb, lc, li, lk, lr, ls, lt, lu, lv, ly, ma, mc, md, me, mg, mh, mk, ml, mm, mn, mo, mp, mq, mr, ms, mt, mu, mv, mw, mx, my, mz, na, nc, ne, nf, ng, ni, nl, no, np, nr, nu, nz, om, pa, pe, pf, pg, ph, pk, pl, pm, pn, pr, ps, pt, pw, py, qa, re, ro, rs, ru, rw, sa, sb, sc, se, sg, sh, si, sj, sk, sl, sm, sn, so, sr, st, sv, sx, sz, tc, td, tf, tg, th, tj, tk, tm, tn, to, tr, tt, tv, tw, tz, ua, ug, um, us, uy, uz, va, vc, ve, vg, vi, vn, vu, wf, ws, ye, yt, za, zm, zw]
- `language` (enum, optional, default "en") — Language of names, descriptions, composition and made-in, and of the keyword index (search 'manteau' with language=fr). Independent of country. Default en. [one of: en, fr, ja, zh, ko]
- `gender` (enum, optional, default "men") — SSENSE department. The site searches one department at a time. Default men. [one of: men, women, everything-else]
- `query` (string, optional) — Keyword. Optional when designer_id or category_id is given, or with on_sale.
- `sort` (enum, optional) — Result order. Default: the site's own (relevance for a keyword, latest arrivals otherwise). [one of: relevance, newest, trending, price_asc, price_desc, discount_desc, discount_asc]
- `page` (integer, optional, default 1) — 1-based page (120 rows a page, fixed by SSENSE).
- `designer_id` (string, optional) — SSENSE designer id (rows return brand_id; the designers action lists them all). Comma-separate several.
- `category_id` (string, optional) — SSENSE category id (from include_facets or product/detail breadcrumb), e.g. 178 men's jackets & coats. Comma-separate several.
- `on_sale` (boolean, optional, default false) — Only the sale listing.
- `include_facets` (boolean, optional, default false) — Also return facets: designers, the category tree with counts, colours and sizes available for this listing.
- `include_fallback_results` (boolean, optional, default false) — When a query matches nothing, SSENSE fills the page with unrelated products. By default they are dropped (fallback_results_dropped counts them); true returns them apart in fallback_results.

**Returns:** results[]{product_id, sku, url, brand, brand_id, name, gender, category_ids[], price, was_price, discount_percent, on_sale, currency, in_stock, image}, count, total_results, total_pages, page, page_size, has_more, page_out_of_range, query, gender, on_sale, sort, designer_id, category_id, country, language, currency, site_currency_code, keyword_matches_on_page, fallback_results_dropped, facets{designers,categories,colors,sizes}

**Example request body:**
```json
{
  "country": "us",
  "query": "jacket"
}
```

### POST /ssense/v1/product/detail — 1 credit
The full SSENSE product by id or URL in a shipping country: SKU, designer, name, description with its detail bullets and supplier colour, composition, made-in, gender, category breadcrumb, the price with struck price, discount %, final-sale flag and the duties/taxes line shown for that country, every size with its size system, SKU, GTIN, real stock quantity and low-stock flag, garment measurements, the model's size and measurements, listing date and images.

**Parameters:**
- `country` (enum, optional, default "us") — Shipping country (ISO-2; 'uk' is accepted for gb). Prices, the currency and the duties/taxes line follow it. 235 countries. Default us. [one of: ad, ae, af, ag, ai, al, am, ao, aq, ar, as, at, au, aw, az, ba, bb, bd, be, bf, bg, bh, bi, bj, bm, bn, bo, br, bs, bt, bv, bw, by, bz, ca, cc, cd, cf, cg, ch, ci, ck, cl, cm, cn, co, cr, cv, cw, cx, cy, cz, de, dj, dk, dm, do, dz, ec, ee, eg, eh, er, es, et, fi, fj, fk, fm, fo, fr, ga, gb, gd, ge, gf, gh, gi, gl, gm, gn, gp, gq, gr, gs, gt, gu, gw, gy, hk, hm, hn, hr, ht, hu, id, ie, il, in, io, iq, is, it, jm, jo, jp, ke, kg, kh, ki, km, kn, kr, kw, ky, kz, la, lb, lc, li, lk, lr, ls, lt, lu, lv, ly, ma, mc, md, me, mg, mh, mk, ml, mm, mn, mo, mp, mq, mr, ms, mt, mu, mv, mw, mx, my, mz, na, nc, ne, nf, ng, ni, nl, no, np, nr, nu, nz, om, pa, pe, pf, pg, ph, pk, pl, pm, pn, pr, ps, pt, pw, py, qa, re, ro, rs, ru, rw, sa, sb, sc, se, sg, sh, si, sj, sk, sl, sm, sn, so, sr, st, sv, sx, sz, tc, td, tf, tg, th, tj, tk, tm, tn, to, tr, tt, tv, tw, tz, ua, ug, um, us, uy, uz, va, vc, ve, vg, vi, vn, vu, wf, ws, ye, yt, za, zm, zw]
- `language` (enum, optional, default "en") — Language of names, descriptions, composition and made-in, and of the keyword index (search 'manteau' with language=fr). Independent of country. Default en. [one of: en, fr, ja, zh, ko]
- `product_id` (string, optional) — SSENSE product id (the number at the end of a product URL; search rows return it).
- `url` (string, optional) — An ssense.com product URL instead of product_id. Its /<language>-<country>/ locale sets country and language unless they are given.

**Returns:** product{product_id, sku, url, brand, brand_id, brand_slug, name, gender, description, details[], supplier_color, composition, made_in, category_id, breadcrumb[{category_id,name,slug,level}], price, was_price, discount_percent, on_sale, price_source, final_sale, currency, site_currency_code, duties{type,label}, in_stock, stock_quantity, sizes[{size_id,size,size_label,size_system,sku,gtin,available,stock_quantity,low_stock,measurements[]}], size_count, sizes_available, model{size_worn,measurements[]}, listed_at, images[], image}, country, language

**Example request body:**
```json
{
  "country": "gb",
  "product_id": "18731811"
}
```

### POST /ssense/v1/product/prices — 1 credit
Current SSENSE prices for up to 50 product ids in one call for a shipping country: price, struck price, discount %, final-sale flag and currency per id; unknown ids are listed apart.

**Parameters:**
- `product_ids` (string, required) — Up to 50 SSENSE product ids, comma-separated (or a list).
- `country` (enum, optional, default "us") — Shipping country (ISO-2; 'uk' is accepted for gb). Prices, the currency and the duties/taxes line follow it. 235 countries. Default us. [one of: ad, ae, af, ag, ai, al, am, ao, aq, ar, as, at, au, aw, az, ba, bb, bd, be, bf, bg, bh, bi, bj, bm, bn, bo, br, bs, bt, bv, bw, by, bz, ca, cc, cd, cf, cg, ch, ci, ck, cl, cm, cn, co, cr, cv, cw, cx, cy, cz, de, dj, dk, dm, do, dz, ec, ee, eg, eh, er, es, et, fi, fj, fk, fm, fo, fr, ga, gb, gd, ge, gf, gh, gi, gl, gm, gn, gp, gq, gr, gs, gt, gu, gw, gy, hk, hm, hn, hr, ht, hu, id, ie, il, in, io, iq, is, it, jm, jo, jp, ke, kg, kh, ki, km, kn, kr, kw, ky, kz, la, lb, lc, li, lk, lr, ls, lt, lu, lv, ly, ma, mc, md, me, mg, mh, mk, ml, mm, mn, mo, mp, mq, mr, ms, mt, mu, mv, mw, mx, my, mz, na, nc, ne, nf, ng, ni, nl, no, np, nr, nu, nz, om, pa, pe, pf, pg, ph, pk, pl, pm, pn, pr, ps, pt, pw, py, qa, re, ro, rs, ru, rw, sa, sb, sc, se, sg, sh, si, sj, sk, sl, sm, sn, so, sr, st, sv, sx, sz, tc, td, tf, tg, th, tj, tk, tm, tn, to, tr, tt, tv, tw, tz, ua, ug, um, us, uy, uz, va, vc, ve, vg, vi, vn, vu, wf, ws, ye, yt, za, zm, zw]

**Returns:** prices[{product_id, price, was_price, discount_percent, on_sale, price_source, final_sale, currency, site_currency_code}], count, not_found[], country

**Example request body:**
```json
{
  "country": "us",
  "product_ids": "18731811"
}
```

### POST /ssense/v1/suggest — 1 credit
SSENSE designer autocomplete for a partial name in one department: each matching designer with its id, slug and URL, and the categories it sells in with their ids and URLs.

**Parameters:**
- `query` (string, required) — At least 2 characters of a designer name.
- `country` (enum, optional, default "us") — Shipping country (ISO-2; 'uk' is accepted for gb). Prices, the currency and the duties/taxes line follow it. 235 countries. Default us. [one of: ad, ae, af, ag, ai, al, am, ao, aq, ar, as, at, au, aw, az, ba, bb, bd, be, bf, bg, bh, bi, bj, bm, bn, bo, br, bs, bt, bv, bw, by, bz, ca, cc, cd, cf, cg, ch, ci, ck, cl, cm, cn, co, cr, cv, cw, cx, cy, cz, de, dj, dk, dm, do, dz, ec, ee, eg, eh, er, es, et, fi, fj, fk, fm, fo, fr, ga, gb, gd, ge, gf, gh, gi, gl, gm, gn, gp, gq, gr, gs, gt, gu, gw, gy, hk, hm, hn, hr, ht, hu, id, ie, il, in, io, iq, is, it, jm, jo, jp, ke, kg, kh, ki, km, kn, kr, kw, ky, kz, la, lb, lc, li, lk, lr, ls, lt, lu, lv, ly, ma, mc, md, me, mg, mh, mk, ml, mm, mn, mo, mp, mq, mr, ms, mt, mu, mv, mw, mx, my, mz, na, nc, ne, nf, ng, ni, nl, no, np, nr, nu, nz, om, pa, pe, pf, pg, ph, pk, pl, pm, pn, pr, ps, pt, pw, py, qa, re, ro, rs, ru, rw, sa, sb, sc, se, sg, sh, si, sj, sk, sl, sm, sn, so, sr, st, sv, sx, sz, tc, td, tf, tg, th, tj, tk, tm, tn, to, tr, tt, tv, tw, tz, ua, ug, um, us, uy, uz, va, vc, ve, vg, vi, vn, vu, wf, ws, ye, yt, za, zm, zw]
- `language` (enum, optional, default "en") — Language of names, descriptions, composition and made-in, and of the keyword index (search 'manteau' with language=fr). Independent of country. Default en. [one of: en, fr, ja, zh, ko]
- `gender` (enum, optional, default "men") — SSENSE department. The site searches one department at a time. Default men. [one of: men, women, everything-else]
- `on_sale` (boolean, optional, default false) — Only the sale listing.

**Returns:** suggestions[{designer_id, name, slug, url, categories[{category_id,name,slug,url}]}], count, query, gender, country, language

**Example request body:**
```json
{
  "country": "us",
  "query": "monc"
}
```

### POST /ssense/v1/designers — 1 credit
The SSENSE designer directory: every designer per department with its id, name, slug and URL.

**Parameters:**
- `country` (enum, optional, default "us") — Shipping country (ISO-2; 'uk' is accepted for gb). Prices, the currency and the duties/taxes line follow it. 235 countries. Default us. [one of: ad, ae, af, ag, ai, al, am, ao, aq, ar, as, at, au, aw, az, ba, bb, bd, be, bf, bg, bh, bi, bj, bm, bn, bo, br, bs, bt, bv, bw, by, bz, ca, cc, cd, cf, cg, ch, ci, ck, cl, cm, cn, co, cr, cv, cw, cx, cy, cz, de, dj, dk, dm, do, dz, ec, ee, eg, eh, er, es, et, fi, fj, fk, fm, fo, fr, ga, gb, gd, ge, gf, gh, gi, gl, gm, gn, gp, gq, gr, gs, gt, gu, gw, gy, hk, hm, hn, hr, ht, hu, id, ie, il, in, io, iq, is, it, jm, jo, jp, ke, kg, kh, ki, km, kn, kr, kw, ky, kz, la, lb, lc, li, lk, lr, ls, lt, lu, lv, ly, ma, mc, md, me, mg, mh, mk, ml, mm, mn, mo, mp, mq, mr, ms, mt, mu, mv, mw, mx, my, mz, na, nc, ne, nf, ng, ni, nl, no, np, nr, nu, nz, om, pa, pe, pf, pg, ph, pk, pl, pm, pn, pr, ps, pt, pw, py, qa, re, ro, rs, ru, rw, sa, sb, sc, se, sg, sh, si, sj, sk, sl, sm, sn, so, sr, st, sv, sx, sz, tc, td, tf, tg, th, tj, tk, tm, tn, to, tr, tt, tv, tw, tz, ua, ug, um, us, uy, uz, va, vc, ve, vg, vi, vn, vu, wf, ws, ye, yt, za, zm, zw]
- `language` (enum, optional, default "en") — Language of names, descriptions, composition and made-in, and of the keyword index (search 'manteau' with language=fr). Independent of country. Default en. [one of: en, fr, ja, zh, ko]
- `gender` (enum, optional) — Only this department's designer list. Default: all three. [one of: men, women, everything-else]

**Returns:** designers[{designer_id, name, slug, gender, url}], count, counts_by_gender, country, language

## More
- Try it live, no code: https://reefapi.com/playground?engine=ssense
- Human docs page: https://reefapi.com/docs/ssense
- Overview page: https://reefapi.com/ssense-api
- Every ReefAPI API in one file (for your AI): https://reefapi.com/llms-full.txt
