---
title: "Brand presence on this market: product count, stock, stores, price range, categories, cheapest product"
method: GET
path: "/api/brands/{slug}/market"
---

# Brand presence on this market: product count, stock, stores, price range, categories, cheapest product

`GET /api/brands/{slug}/market`

## Request

- Base URL: `https://api.glowjakt.se`
- URL: `https://api.glowjakt.se/api/brands/{slug}/market`
- Auth: none required

Aggregated view of one brand on this country's market (the API host decides the country). Counts are EAN-grouped products; 'in_stock' is the subset currently in stock somewhere. 404 when the brand has no product rows on this market. Refreshed nightly.

## Path parameters

- `slug` string, required

## Response `200`

Market summary for the brand

- BrandMarket: One brand's presence on this country's market (source: the same nightly price data as the product listings).
  - `country` string: Market code: se, no, dk, fi or de
  - `currency` string: SEK, NOK, DKK or EUR
  - `slug` string
  - `name` string
  - `products` integer: EAN-grouped products listed on this market
  - `in_stock` integer: Products currently in stock at at least one store
  - `listings` integer: Store listings across all products
  - `on_sale` integer: Products whose lowest current price is below the store's own reference price
  - `stores` integer
  - `store_names` string[]: Up to eight stores, most listings first
  - `price` object
    - `min` number, nullable
    - `median` number, nullable
    - `max` number, nullable
  - `categories` object[]
    - `slug` string
    - `count` integer
  - `subcategories` object[]
    - `path` string
    - `count` integer
  - `cheapest` object, nullable
    - `name` string
    - `price` number, nullable
    - `store` string, nullable
    - `in_stock` boolean
    - `url` string: Product page on the market site
  - `certifications` object[]
  - `claims` string[]
  - `attributes` string[]
  - `brand_url` string: Brand page on the market site
  - `ingredients` object, nullable: Ingredient profile across the brand's products on this market, from parsed INCI lists. Shares use products with a known ingredient list as denominator.
    - `products` integer
    - `with_inci` integer: Products with a parsed ingredient list
    - `with_keys` integer
    - `top` IngredientRef[]: Most common key-ingredient groups (non-controversial), up to 8
      - `slug` string
      - `name` string: Localized group name
      - `category` string, nullable
      - `tier` integer, nullable
      - `count` integer: Products in the brand's range containing the group
      - `url` string, nullable: Ingredient page on the market site, when published
    - `controversial` IngredientRef[]: Groups flagged as possibly affecting sensitive skin, up to 5
      - `slug` string
      - `name` string: Localized group name
      - `category` string, nullable
      - `tier` integer, nullable
      - `count` integer: Products in the brand's range containing the group
      - `url` string, nullable: Ingredient page on the market site, when published
    - `shares` object
      - `fragrance_free` number, nullable
      - `animal_free` number, nullable
      - `controversial_free` number, nullable
    - `hub_url` string, nullable: Ingredient hub on the market site
  - `as_of` string, date: Day the block was computed (cached up to 1 h).
  - `observed_at` string, date, nullable: Latest store-feed date among the brand's listings on this market — the data's observation day, distinct from as_of.

## Other responses

- `404`: Unknown brand slug, or no products on this market

---

[API](https://skmtc.dev/glowjakt/apis/glowjakt-public-api.md) · [All operations](https://skmtc.dev/glowjakt/apis/glowjakt-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/glowjakt/apis/glowjakt-public-api/revisions/6f4e2dee0479?raw)
