# Hm on Onekey > 6 endpoints for Hm (0 stable, 6 beta), 2 credits each. Category: E-commerce & marketplaces. One key, one JSON shape. Base URL: https://api.onekey.dev Auth: header `x-api-key: `. Call shape: `GET /v1/{platform}/{endpoint}?{params}`. Every response is `{success, data, metadata, error}`; check `success` first. Cost is in `metadata.credits_charged`. Free when served from cache (0.2 credit for a cached response over 100 KB). Failed and not-found calls are refunded. Status: stable = verified against the live source; beta = not yet verified, fields may be missing. Access: 6 of 6 endpoints are marked "needs a pack" or "may need a pack": free-grant credits reach only the open fetch path; a verified email and a purchased pack unlock the rest. Page: https://onekey.dev/platforms/hm Reference (Markdown): https://onekey.dev/docs/api/hm.md All docs: https://onekey.dev/llms.txt ## Canonical fields returned Unified-schema fields (same names on every platform), with how many of the 6 mapped Hm endpoints return each: - `entity.name` (string): 6 - `entity.id` (string): 5 - `entity.url` (URL): 2 - `place.address` (string): 2 - `entity.country` (string): 1 - `entity.description` (string): 1 - `entity.language` (string): 1 - `entity.slug` (string): 1 - `entity.stats.rating` (number): 1 - `entity.stats.ratingCount` (integer): 1 - `entity.type` (string): 1 - `listing.brand` (string): 1 - `listing.currency` (string): 1 - `listing.price` (number): 1 - `media.thumbnailUrl` (URL): 1 - `place.city` (string): 1 - `place.lat` (number): 1 - `place.lon` (number): 1 - plus 1 platform-specific field under `ext.` ## Endpoints ### hm.categories The H&M category tree. - Price: 2 credits per fresh call. Status: beta. Access: needs a pack. Returns: a list. - Request: `GET https://api.onekey.dev/v1/hm/categories` with header `x-api-key: YOUR_API_KEY` - Parameters: none - Fields returned: `entity.id`, `entity.name`, `entity.url`, `entity.slug` - Reference: https://onekey.dev/docs/api/hm/categories.md ### hm.countries H&M countries and languages. - Price: 2 credits per fresh call. Status: beta. Access: needs a pack. Returns: a list. - Request: `GET https://api.onekey.dev/v1/hm/countries` with header `x-api-key: YOUR_API_KEY` - Parameters: none - Fields returned: `entity.id`, `entity.name`, `entity.language` - Reference: https://onekey.dev/docs/api/hm/countries.md ### hm.product_suppliers Suppliers and factories of an H&M product. - Price: 2 credits per fresh call. Status: beta. Access: needs a pack. Returns: a list. - Request: `GET https://api.onekey.dev/v1/hm/product_suppliers?product_id=123456789` with header `x-api-key: YOUR_API_KEY` - Parameters: - `product_id` (string, optional): Product id as it appears on the product page URL - `url` (string, optional): Full URL of the product page (alternative to the id) - Fields returned: `entity.id`, `entity.name`, `entity.country`, `place.address` - Reference: https://onekey.dev/docs/api/hm/product_suppliers.md ### hm.search Search H&M products by keyword. - Price: 2 credits per fresh call. Status: beta. Access: needs a pack. Returns: a list. - Request: `GET https://api.onekey.dev/v1/hm/search?query=headphones` with header `x-api-key: YOUR_API_KEY` - Parameters: - `query` (string, required): Search query - `cursor` (string, optional): Opaque cursor from a previous response's `pagination.next_cursor`. Omit for the first page. - Fields returned: `entity.id`, `entity.name`, `entity.url`, `entity.description`, `media.thumbnailUrl`, `listing.price`, `listing.currency`, `listing.brand`, `entity.stats.rating`, `entity.stats.ratingCount` - Reference: https://onekey.dev/docs/api/hm/search.md ### hm.search_suggestions Search suggestions for H&M. - Price: 2 credits per fresh call. Status: beta. Access: needs a pack. Returns: a list. - Request: `GET https://api.onekey.dev/v1/hm/search_suggestions?query=headphones` with header `x-api-key: YOUR_API_KEY` - Parameters: - `query` (string, required): Search query - Fields returned: `entity.name`, `entity.type` - Reference: https://onekey.dev/docs/api/hm/search_suggestions.md ### hm.stores H&M stores in a country (country dump, not near-me). - Price: 2 credits per fresh call. Status: beta. Access: needs a pack. Returns: a list. - Request: `GET https://api.onekey.dev/v1/hm/stores?country=us` with header `x-api-key: YOUR_API_KEY` - Parameters: - `country` (string, required): Two-letter market code, e.g. us, gb, de - Fields returned: `entity.id`, `entity.name`, `place.address`, `place.city`, `place.lat`, `place.lon`, `ext.phone` - Reference: https://onekey.dev/docs/api/hm/stores.md ## Sample request ```bash curl "https://api.onekey.dev/v1/hm/categories" \ -H "x-api-key: YOUR_API_KEY" ```