Skip to main content

Structured fragrance taxonomy

Every fragrance in WikiParfum is classified into an olfactive family and subfamily by fragrance experts. This structured taxonomy is one of the most valuable capabilities of the API — it provides a universal language for organizing, navigating, and understanding perfumes that most retailers and brands don’t have access to internally.

What you can build

  • Family-based navigation — let users browse fragrances by olfactive character (Floral, Woody, Oriental, Fresh…)
  • Visual family maps — each family includes a color and imagery for rich UI components
  • Olfactive profile cards — show a perfume’s primary, secondary, and tertiary family with intensity levels
  • Family-based filtering — narrow catalogs by olfactive character across search, recommendations, and product lists
  • Educational content — help users understand what families mean and how they relate to each other

Why it matters

Most product catalogs classify fragrances by brand, gender, or price. WikiParfum adds a sensory dimension: what a fragrance actually smells like, structured as data. This enables experiences that go beyond generic product attributes — users can explore by scent character, compare fragrances by olfactive proximity, and discover new products through family affinity rather than brand loyalty alone.

The family hierarchy

WikiParfum organizes fragrances into primary families (broad olfactive categories) and subfamilies (more specific character descriptions). Each perfume is classified with up to three levels:
LevelFieldDescription
PrimaryfamilyThe dominant olfactive character (e.g., Floral, Woody, Oriental)
SecondarysecondaryFamilyA complementary olfactive dimension
TertiarytertiaryFamilyA third layer of olfactive nuance
Each level includes an intensity value (family_intensity, secondary_family_intensity, tertiary_family_intensity) that indicates how strongly that family character is expressed in the fragrance.

Browsing the family tree

Retrieve all primary families to build top-level navigation:
query PrimaryFamilies {
  findFamilies(search: { lang: "EN", isPrimary: true, order_by: "position asc" }) {
    id
    name
    slug
    color
    description
    image {
      small
      medium
    }
  }
}
Each family includes a color (hex) and image, making it straightforward to build visual navigation grids, wheels, or maps. To retrieve all families including subfamilies:
query AllFamilies {
  findFamilies(search: { lang: "EN" }) {
    id
    name
    slug
    color
    isPrimary
    level
  }
}
See Families for the full entity reference.

Reading a perfume’s olfactive classification

Every perfume exposes its full classification:
query PerfumeClassification {
  findPerfumeBySlug(slug: "dior-sauvage", lang: "EN") {
    name
    family {
      name
      color
    }
    family_intensity
    secondaryFamily {
      name
      color
    }
    secondary_family_intensity
    tertiaryFamily {
      name
      color
    }
    tertiary_family_intensity
    intensity
  }
}
This data powers olfactive profile cards, radar charts, and classification badges on product pages.

Filtering by family

Use family-based filters to narrow any query — perfumes, recommendations, or search results:
query WoodyPerfumes {
  findPerfumes(search: {
    lang: "EN"
    page: "0,20"
    filters: {
      family: "woody"
    }
  }) {
    id
    name
    brand {
      name
    }
    family {
      name
      color
    }
  }
}
You can also filter by subfamily, or combine primary and secondary family filters. See Filtering & Pagination for all family filter options.

Family combinations

Each family includes data about its most common pairings — which families frequently appear together as primary and secondary classifications:
query FamilyCombinations {
  findFamilyById(id: "5", lang: "EN") {
    name
    combinations {
      family {
        name
        color
      }
      count
    }
  }
}
This enables “related families” modules and helps users understand how olfactive families interact.