> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spaportal.cz/llms.txt
> Use this file to discover all available pages before exploring further.

# Amenity

> An amenity entry nested in a category of the hotel amenity dictionary.

An entry nested in a category returned by
[`GET /api/v2/amenity-categories`](/api/v2/reference/amenity-categories/list-the-amenity-dictionary).
Its stable `code` identifies the amenity in hotel responses. The parent
category object contains the stable category code and localized category label.
`detailKinds` declares which structured fields can be populated on the
corresponding [Amenity value](/api/objects/amenity-value).

`notePlaceholder` is optional localized helper text for the amenity note. Most
amenities omit it.

## Detail kinds

`detailKinds` is metadata from the dictionary. Use it to decide which controls
to display and which fields on the corresponding hotel amenity value carry
meaningful data. The values use snake case because they identify field groups,
not response property names.

An empty `detailKinds` array means that selecting the amenity is the complete
value. The corresponding hotel amenity contains only its `code`.

For example:

```json theme={null}
{
  "code": "sauna",
  "detailKinds": ["proximity", "access", "options", "opening_hours"],
  "options": [
    {
      "code": "finnish",
      "label": {
        "cs-CZ": "Finská sauna",
        "en": "Finnish sauna"
      }
    },
    {
      "code": "steam",
      "label": {
        "cs-CZ": "Parní lázeň",
        "en": "Steam bath"
      }
    }
  ]
}
```

This sauna can populate `proximity` (and conditionally `proximityMeters`),
`access`, `options`, and `openingHours`. Because `detailKinds` includes
`options`, the entry carries an `options` array with every valid sauna choice.
The sauna does not support `note`, so the `note` property is omitted from its
[Amenity value](/api/objects/amenity-value).
