Discover/Hm API
live

Hm APIwww2.hm.com

Access H&M US product catalog, search, sale listings, new arrivals, category navigation, product details, and store locations via a structured API.

Endpoint health
verified 22h ago
get_category_navigation
get_product_listing
get_product_detail
get_similar_items
get_store_finder
8/8 passing latest checkself-healing
Endpoints
8
Updated
22d ago

What is the Hm API?

The H&M API exposes 8 endpoints covering the full H&M US product catalog, from keyword search and category browsing to per-product variant details and physical store locations. The get_product_detail endpoint returns color variants, stock states, image galleries, and full pricing for any article code. Other endpoints handle sale listings, new arrivals, similar-item recommendations, and the complete site navigation tree.

Try it

No input parameters required.

api.parse.bot/scraper/b11138d2-5bc5-459f-8d49-36adf6448cff/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/b11138d2-5bc5-459f-8d49-36adf6448cff/get_category_navigation' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace h-m-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""
H&M US Store API - Browse products, search, and find stores
Get your API key from: https://parse.bot/settings
"""

from parse_apis.h_m_us_store_api import HM, Product, ProductListing, Store, Category, RecommendationList

hm = HM(api_key="YOUR_API_KEY")

# Search for products by keyword
for product in hm.products.search(query="denim jacket", limit=5):
    print(product.product_name, product.brand_name)
    for price in product.prices:
        print(price.formatted_price, price.price_type)

# Get full product details by article code
detail = hm.products.get(article_code="1347416001")
print(detail.product_name, detail.color_name)
for swatch in detail.swatches:
    print(swatch.color_name, swatch.color_code)

# Get similar product recommendations
for rec_list in detail.similar():
    print(rec_list.label, rec_list.id)
    for item in rec_list.product_list:
        print(item.product_name)

# Browse category listings
for listing in hm.productlistings.list(category="men/products/view-all", limit=3):
    print(listing.title, listing.article_code, listing.regular_price)

# Get sale products
for item in hm.productlistings.sale(category="women/sale/view-all", limit=3):
    print(item.title, item.red_price, item.discount_percentage)

# Navigate from listing to full detail
first_listing = next(iter(hm.productlistings.new_arrivals(category="men/new-arrivals/view-all", limit=1)))
full_product = first_listing.details()
print(full_product.product_name, full_product.availability.stock_state)

# Browse the category tree
for category in hm.categories.list():
    print(category.node_name, category.href)
    for child in category.children:
        print(child.node_name)

# Find stores by city
for store in hm.stores.search(city="New York"):
    print(store.name, store.city)
    print(store.address.street_name, store.address.state)
    for hours in store.opening_hours:
        print(hours.name, hours.opens, hours.closes)
All endpoints · 8 totalmissing one? ·

Fetch the full site navigation tree including all departments and subcategories. Returns hierarchical menu structure with nodeId, nodeName, href, and nested children for Women, Men, Kids, Baby, and other departments.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "categories": "array of category objects with nodeId, nodeName, href, children"
  },
  "sample": {
    "data": {
      "categories": [
        {
          "href": "/en_us/women.html",
          "nodeId": "ladies-women",
          "children": [
            {
              "href": "/en_us/women/new-arrivals.html",
              "nodeId": "ladies-new-arrivals-0-women-new-arrivals",
              "children": [],
              "nodeName": "New in"
            }
          ],
          "nodeName": "Women"
        }
      ]
    },
    "status": "success"
  }
}

About the Hm API

Product Discovery and Search

The search_products endpoint accepts a query string and returns up to 45 products per page, with hits containing productName, id, prices, swatches, sizes, and availability. Results also include facets for downstream filtering and a pagination object (currentPage, nextPageNum, totalPages). The get_product_listing endpoint works similarly but scopes results to a category path — for example men/products/view-all or kids/girls/products/view-all — returning up to 36 products per page with the same pricing and swatch fields.

Product Detail and Variants

get_product_detail accepts either an article_code (e.g. 0685816001) or a full product URL. The response includes a variations object that maps each variant article code to its color, price, and availability data, an images array with url and assetType per image, and a swatches array listing every available colorName and articleId. The prices array differentiates price types via a priceType field, which is useful for identifying marked-down items.

Sale, New Arrivals, and Recommendations

get_sale_products scopes listings to sale sections (e.g. women/sale/view-all) and returns regularPrice, redPrice, and discountPercentage alongside standard product fields. get_new_arrivals follows the same pagination structure but targets new-arrivals paths. get_similar_items accepts an article_code and returns a recommendationLists array with named lists — style_with, alternatives, and upsell — each containing related products with pricing.

Navigation and Store Finder

get_category_navigation returns the full hierarchical menu as a categories array with nodeId, nodeName, href, and nested children, covering Women, Men, Kids, Baby, and other departments. get_store_finder returns US store locations with name, city, address, coordinates, and openingHours. An optional city parameter filters results by case-insensitive substring match.

Reliability & maintenanceVerified

The Hm API is a managed, monitored endpoint for www2.hm.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when www2.hm.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official www2.hm.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
22h ago
Latest check
8/8 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a price-tracking tool using get_sale_products to monitor discountPercentage and redPrice changes over time.
  • Populate a product feed for affiliate marketing using get_product_listing category paths with prices, swatches, and articleCode.
  • Drive a fashion recommendation widget by chaining get_product_detail with get_similar_items on the returned articleCode.
  • Index H&M's category taxonomy for a site map or faceted navigation using the nodeId, nodeName, and href fields from get_category_navigation.
  • Display real-time new-arrivals for a department by calling get_new_arrivals with a category path like men/new-arrivals/view-all.
  • Show nearby store hours in a local commerce app using get_store_finder filtered by city with coordinates and openingHours.
  • Aggregate search results and facets from search_products to analyze what H&M stocks for a given keyword.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does H&M offer an official developer API?+
H&M does not publish a public developer API or official data feed for its product catalog. This Parse API provides structured access to H&M US product, search, and store data.
What does `get_product_detail` return beyond basic product info?+
The endpoint returns a variations object mapping every color/size variant's articleId to its colorName, prices, and availability (including stockState). It also includes an images array typed by assetType and a swatches array listing all available colors — so you get the full variant matrix, not just the default selection.
Does the API return product reviews or ratings?+
Not currently. The API covers product details, pricing, availability, images, and variant data, but customer reviews and star ratings are not included in the response fields. You can fork this API on Parse and revise it to add a reviews endpoint.
Is the store finder limited to US locations?+
Yes, get_store_finder returns US stores only, matching the API's overall scope of the H&M US site. It supports optional substring filtering by city but does not cover international H&M stores. You can fork this API on Parse and revise it to target other regional H&M domains.
How does pagination work across the listing endpoints?+
get_product_listing and get_sale_products return up to 36 products per page; search_products returns up to 45. All listing endpoints expose a pagination object with currentPage, nextPageNum, totalPages, and pageSize. Pass an integer page parameter (1-based) to advance through results.
Page content last updated . Spec covers 8 endpoints from www2.hm.com.
Related APIs in EcommerceSee all →
hm.com API
Search H&M's US product catalog by keyword and instantly retrieve detailed information like prices, product images, available sizes, and real-time stock availability. Perfect for comparing items, tracking product details, or building shopping applications powered by H&M's current inventory data.
hunkemoller.com API
Browse Hunkemöller's product catalog by category, search for items, view detailed product information, and discover new arrivals with filtering options. Find store locations and compare products to shop for lingerie and intimate apparel across their collection.
hanes.com API
Search and browse Hanes clothing products across categories like men's, women's, and sale items, and retrieve detailed information including sizes, colors, and real-time availability. Find exactly what you're looking for with product variants and comprehensive details to compare options before purchase.
mango.com API
Access Mango's complete product catalog, including categories, detailed product information, search functionality, and new arrivals to discover and browse clothing and fashion items. Find similar products and explore the full range of Mango's store inventory programmatically.
asos.com API
Search and browse ASOS's fashion catalog to discover products across women's and men's categories, view real-time pricing and stock information, and find trending or sale items. Get detailed product information, explore similar items, and discover new arrivals and brands all in one place.
zara.com API
Shop Zara's entire catalog by browsing categories, searching for specific items, and viewing detailed product information including measurements and related products. Find nearby store locations, check real-time inventory availability, and get shipping details all in one place.
abercrombie.com API
Search and browse Abercrombie & Fitch products across categories, new arrivals, and clearance items while retrieving detailed product information like pricing and availability. Access curated collections and find exactly what you're looking for with powerful search capabilities.
macys.com API
Browse Macy's product catalog by navigating categories, searching for items, and viewing detailed product information all in one place. Discover products across different categories and get comprehensive details to help you find exactly what you're looking for.