H&M
H&M New Arrivals API
The H&M new-arrivals grid of one department in one market, on 47 countries, in the market's language and currency: each new item with its article code, title, price, regular price, member price, colours, sizes with online stock and H&M category id, up to 72 a page with the exact total, sorted by relevance, newest or price and filtered by colour, size, material, fit, product type and sale. Costs 1 credit per request.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsoncountrystringdefault:usThe H&M market, as a lowercase country code. This endpoint serves all 47 countries: the 40 H&M online stores of their own (us, ca, mx, gb, ie, de, at, ch, fr, be, nl, it, es, pt, se, fi, dk, no, pl, cz, sk, hu, ro, bg, gr, rs, tr, ua, il, hk, mo, tw, jp, kr, in, my, ph, sg, vn, au) plus hr, cy, ee, lv, lt, lu, si on H&M's shared English EUR store (the answer says store "eu"). Prices come back in the market's currency, never converted; every answer echoes country, language, currency, locale and store. ae, eg, id, th, br and cn (H&M runs a separate site there), al, az, ba, by, cl, co, cr, ge, is, kh, kz, mk, nz, pe, xk and za (no H&M online store), ru, and uk (send gb) answer 400, not charged.
Example: se
us— United States, USD, en (English). The default.ca— Canada, CAD, en (English) or fr (French); default en.mx— Mexico, MXN, es (Spanish).gb— United Kingdom, GBP, en (English).ie— Ireland, EUR, en (English).de— Germany, EUR, de (German).at— Austria, EUR, de (German).ch— Switzerland, CHF, de (German) or fr (French) or it (Italian); default de.fr— France, EUR, fr (French).be— Belgium, EUR, nl (Dutch) or fr (French); default nl.nl— Netherlands, EUR, nl (Dutch).it— Italy, EUR, it (Italian).es— Spain, EUR, es (Spanish).pt— Portugal, EUR, pt (Portuguese).se— Sweden, SEK, sv (Swedish).fi— Finland, EUR, fi (Finnish) or sv (Swedish); default fi.dk— Denmark, DKK, da (Danish).no— Norway, NOK, no (Norwegian).pl— Poland, PLN, pl (Polish).cz— Czechia, CZK, cs (Czech).sk— Slovakia, EUR, sk (Slovak).hu— Hungary, HUF, hu (Hungarian).ro— Romania, RON, ro (Romanian).bg— Bulgaria, EUR, bg (Bulgarian).gr— Greece, EUR, el (Greek).rs— Serbia, RSD, sr (Serbian).tr— Turkey, TRY, tr (Turkish).ua— Ukraine, UAH, uk (Ukrainian).il— Israel, ILS, he (Hebrew).hk— Hong Kong, HKD, zh (Chinese) or en (English); default zh.mo— Macau, HKD, zh (Chinese) or en (English); default zh.tw— Taiwan, TWD, zh (Chinese) or en (English); default zh.jp— Japan, JPY, ja (Japanese).kr— South Korea, KRW, ko (Korean).in— India, INR, en (English).my— Malaysia, MYR, en (English).ph— Philippines, PHP, en (English).sg— Singapore, SGD, en (English).vn— Vietnam, VND, vi (Vietnamese).au— Australia, AUD, en (English).hr— Croatia, EUR, en (English); H&M's shared English EUR store (store "eu").cy— Cyprus, EUR, en (English); H&M's shared English EUR store (store "eu").ee— Estonia, EUR, en (English); H&M's shared English EUR store (store "eu").lv— Latvia, EUR, en (English); H&M's shared English EUR store (store "eu").lt— Lithuania, EUR, en (English); H&M's shared English EUR store (store "eu").lu— Luxembourg, EUR, en (English); H&M's shared English EUR store (store "eu").si— Slovenia, EUR, en (English); H&M's shared English EUR store (store "eu").
languagestringThe answer's language, from the market's own list (the first is the default): ca en or fr; ch de, fr or it; be nl or fr; fi fi or sv; hk, mo and tw zh or en; every other market its one language (see the markets table). Titles, descriptions, colours and facet values come back in it. A language the market does not serve answers 400, not charged.
Example: fr
departmentenum<string>default:womenWhose new arrivals to read.
Example: men
women— Women (H&M's ladies_all).men— Men (men_all).kids— Kids (kids_all).baby— Baby (kids_newbornbaby_viewall).home— H&M HOME (home_all).
pageintegerdefault:1Results page, 1-based, up to 200.
Example: 2
page_sizeintegerdefault:36Items per page, 1 to 72.
Example: 72
sortenum<string>default:relevanceResult order. The same four sorts on every market.
Example: price_asc
relevance— H&M's own order. The default.newest— Newest first.price_asc— Price, low to high.price_desc— Price, high to low.
colorstring | string[]Colour: up to 10 values of the color facet of an earlier answer in the same market (e.g. black_000000 on us, schwarz_000000 on de); several values are ORed.
Example: black_000000
sizestring | string[]Size: values of the size facet (e.g. womenswear;NO_FORMAT[Numeric];8).
Example: womenswear;NO_FORMAT[SML];M
materialstring | string[]Material: values of the material facet, in the market's language (e.g. Cotton, Baumwolle).
Example: Cotton
fitstring | string[]Fit: values of the fit facet (e.g. Slim fit, Loose fit).
Example: Loose fit
product_typestring | string[]Product type: values of the product_type facet (e.g. Jeans).
Example: Jeans
on_salebooleanOnly marked-down items.
Example: true
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key", timeout=120)
# Sweden's women's new arrivals, newest first; store the article codes to spot new ones on the next run.
r = client.hm.new_arrivals(country="se", department="women", sort="newest", page_size=72)["data"]
print(r["total"], "new arrivals", r["currency"])
for i in r["items"]:
print(i["article_code"], i["title"], i["price"], i["category"])Response