A spa or wellness property and its structured guest profile.
A hotel contains identity, contact details, images, buildings, localized
content, structured accommodation rules, meal services, medical indications,
the procedures it offers, staff languages, and hotel-level
amenities.Localized values return only the keys selected by
Accept-Language. name falls back to the Czech value when
a requested translation is missing. Other localized fields preserve the
requested key and return null when its translation is missing, except image
alt, which falls back to the localized hotel name.
buildings lists every physical building in the hotel’s configured order,
including buildings with no assigned room types. Both GET /api/v2/hotels
and GET /api/v2/hotels/{hotelId} always include this array. You do not need
an expand parameter. A hotel with one building returns one item; a hotel
without configured buildings returns [].Each item contains id, localized name, and localized label (a short
description). Match id to a room type’s building.id, including rooms
embedded with expand=roomTypes. Both texts follow Accept-Language:
missing or blank translations return null without falling back to Czech.
The label object is present even when no description is set.For example, with Accept-Language: cs-CZ,en:
Use expand=roomTypes to include the hotel’s enabled, non-draft
room types. Both the hotel list and detail exclude
disabled rooms. Request GET /api/v2/room-types?hotelId={hotelId}&disabled=all
if you need the hotel’s complete non-draft catalog, including disabled rooms.Without this expansion, the hotel response does not include room types.
See Expand for examples.
Each entry in images uses the shared image fields: build
srcset from the returned variants and fall back to url. A missing alt
translation falls back to the localized hotel name; an empty string marks a
decorative image.
shortDescription is the localized short hotel description (up to 400
characters per locale).channelContent.tagline is a localized tagline for sales channels, up to 100
characters per locale. It is the same for every public key.accommodationRules always contains check-in and check-out ranges, the children
policy, and the pets policy. The children policy includes whether children are
accepted and an optional minimum age. The pets policy includes whether pets are
accepted, an optional minimum stay, per-night fees in CZK and EUR, and localized
conditions (up to 300 characters per locale). The feePerNight.czk and
feePerNight.eur values are major-unit amounts, not Money objects. An unset
time or optional numeric value is null.mealServices always contains breakfast, lunch, and dinner. Each meal
reports whether it is enabled, its optional serving time, its service method
(buffet, served, or null when unset), whether drinks are included, and
a localized drinks note (up to 200 characters per locale).indications is an ordered array of medical indication codes. The hotel
specializes in treating the listed areas:
Code
Meaning
musculoskeletal
Musculoskeletal system
cardiovascular
Heart and blood vessels
dermatology
Skin conditions
digestion_metabolism
Digestion and metabolism
nervous_system
Nervous system
prevention
Prevention
gynecology
Gynecological indications
oncology_aftercare
Oncology aftercare
diabetes
Diabetes
staffLanguages contains the ISO 639-1 codes of the languages spoken by hotel
staff: cs (Czech), en (English), de (German), and ru (Russian).
procedures lists the procedures the hotel offers, in its configured order,
each code once. Items use the Procedure object
without a count. An empty array means the hotel publishes no procedures.The list is independent of what a package includes: a package’s
treatment says which procedures its guests receive.
Join the two by code.
priceFrom holds the lowest prices the hotel sells for arrivals from today
onward, per currency.
Each currency has the hotel-wide group all and the category groups health
and wellness, each with the two independent
Price from minima. A category group is omitted
when it has no buyable offer; all is present whenever the currency is.
priceFrom is null when the hotel has no buyable offer at all.Every minimum names its hotel and visitType. Open the package with the
same public key to show its details. Prices defines which
offers qualify and how to compare the groups.
All physical buildings in configured order, including buildings with no assigned room types. Always included without expand, even for a single building; empty when none are configured. Match each id to a room type's building.id.
Lowest prices the hotel sells for arrivals from today onward, per currency: across all packages (all) and per category (health, wellness), each with two independent minima. A currency is present only when it has a buyable offer. Null when the hotel has none. See Prices.
Embedded only when expand=roomTypes;
otherwise fetch them via GET /room-types?hotelId={hotelId}. Each
item omits the nested hotel block (it is this hotel).
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"SpaPortal Docs","colors":{"primary":"#3585BA","light":"#99C246","dark":"#141414"},"logo":{"light":"https://mintcdn.com/spabooking/Bibq090v9MI8jPV2/logo/light.svg?fit=max\u0026auto=format\u0026n=Bibq090v9MI8jPV2\u0026q=85\u0026s=c50b2546b29ce5fb747f06c3c0a287e8","dark":"https://mintcdn.com/spabooking/Bibq090v9MI8jPV2/logo/dark.svg?fit=max\u0026auto=format\u0026n=Bibq090v9MI8jPV2\u0026q=85\u0026s=50c74aef7110c454d7a8a682cc9d67ff"},"favicon":"https://mintcdn.com/spabooking/Bibq090v9MI8jPV2/favicon.svg?fit=max\u0026auto=format\u0026n=Bibq090v9MI8jPV2\u0026q=85\u0026s=c33997c3644726a7de4d900b2fdd36be","api":{"playground":{"display":"interactive"}},"navbar":{"links":[{"href":"mailto:info@spabooking.de","label":"Support"}],"primary":{"type":"button","label":"SpaPortal","href":"https://spaportal.cz/"}},"footer":{"socials":{}},"seo":{"metatags":{"canonical":"https://docs.spaportal.cz"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"spabooking","hasAudioNarration":false,"actualSubdomain":"spabooking","customDomains":["docs.spaportal.cz"],"gitSource":{"type":"github","owner":"spabooking","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aeb96afb0fd5b4c7f1f6afa","collectionId":"7f3ffb80-880e-4abf-91a7-701a788f156d","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aeb96afb0fd5b4c7f1f6afa"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aeb96afb0fd5b4c7f1f6afa","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"API reference","count":36},{"language":"default","tag":"SpaPortal API","count":17},{"language":"default","tag":"Objects","count":12},{"language":"default","tag":"Endpoints","count":7},{"language":"default","tag":"Guides","count":6},{"language":"default","tag":"Introduction","count":2},{"language":"default","tag":"Getting started","count":2},{"language":"default","tag":"Hotels","count":2},{"language":"default","tag":"Room types","count":2},{"language":"default","tag":"Visit types","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api/objects/hotel","slug":"/api/objects/hotel","pageMetadata":{"title":"Hotel","description":"A spa or wellness property and its structured guest profile.","openapi-schema":"api/v2/openapi.yaml Hotel","href":"/api/objects/hotel"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"A spa or wellness property and its structured guest profile.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`A hotel contains identity, contact details, images, buildings, localized\ncontent, structured accommodation rules, meal services, medical indications,\nthe procedures it offers, staff languages, and hotel-level\n`,_jsx(_components.a,{href:`/api/amenities`,children:`amenities`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Localized values return only the keys selected by\n`,_jsx(_components.a,{href:`/api/localization`,children:_jsx(_components.code,{children:`Accept-Language`})}),`. `,_jsx(_components.code,{children:`name`}),` falls back to the Czech value when\na requested translation is missing. Other localized fields preserve the\nrequested key and return `,_jsx(_components.code,{children:`null`}),` when its translation is missing, except image\n`,_jsx(_components.code,{children:`alt`}),`, which falls back to the localized hotel name.`]}),`\n`,_jsx(Heading,{level:`2`,id:`buildings`,children:`Buildings`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`buildings`}),` lists every physical building in the hotel’s configured order,\nincluding buildings with no assigned room types. Both `,_jsx(_components.code,{children:`GET /api/v2/hotels`}),`\nand `,_jsx(_components.code,{children:`GET /api/v2/hotels/{hotelId}`}),` always include this array. You do not need\nan `,_jsx(_components.code,{children:`expand`}),` parameter. A hotel with one building returns one item; a hotel\nwithout configured buildings returns `,_jsx(_components.code,{children:`[]`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Each item contains `,_jsx(_components.code,{children:`id`}),`, localized `,_jsx(_components.code,{children:`name`}),`, and localized `,_jsx(_components.code,{children:`label`}),` (a short\ndescription). Match `,_jsx(_components.code,{children:`id`}),` to a room type’s `,_jsx(_components.code,{children:`building.id`}),`, including rooms\nembedded with `,_jsx(_components.code,{children:`expand=roomTypes`}),`. Both texts follow `,_jsx(_components.code,{children:`Accept-Language`}),`:\nmissing or blank translations return `,_jsx(_components.code,{children:`null`}),` without falling back to Czech.\nThe `,_jsx(_components.code,{children:`label`}),` object is present even when no description is set.`]}),`\n`,_jsxs(_components.p,{children:[`For example, with `,_jsx(_components.code,{children:`Accept-Language: cs-CZ,en`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`9`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"buildings\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"66f16191f739705faa0200b2\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"cs-CZ\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Villa Anna\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"en\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Villa Anna\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"cs-CZ\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Krytou chodbou, 60 m\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"en\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`embedded-room-types`,children:`Embedded room types`}),`\n`,_jsxs(_components.p,{children:[`Use `,_jsx(_components.code,{children:`expand=roomTypes`}),` to include the hotel’s enabled, non-draft\n`,_jsx(_components.a,{href:`/api/objects/room-type`,children:`room types`}),`. Both the hotel list and detail exclude\ndisabled rooms. Request `,_jsx(_components.code,{children:`GET /api/v2/room-types?hotelId={hotelId}\u0026disabled=all`}),`\nif you need the hotel’s complete non-draft catalog, including disabled rooms.`]}),`\n`,_jsxs(_components.p,{children:[`Without this expansion, the hotel response does not include room types.\nSee `,_jsx(_components.a,{href:`/api/expand`,children:`Expand`}),` for examples.`]}),`\n`,_jsx(Heading,{level:`2`,id:`images`,children:`Images`}),`\n`,_jsxs(_components.p,{children:[`Each entry in `,_jsx(_components.code,{children:`images`}),` uses the shared `,_jsx(_components.a,{href:`/api/images`,children:`image fields`}),`: build\n`,_jsx(_components.code,{children:`srcset`}),` from the returned `,_jsx(_components.code,{children:`variants`}),` and fall back to `,_jsx(_components.code,{children:`url`}),`. A missing `,_jsx(_components.code,{children:`alt`}),`\ntranslation falls back to the localized hotel name; an empty string marks a\ndecorative image.`]}),`\n`,_jsx(Heading,{level:`2`,id:`structured-profile`,children:`Structured profile`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`shortDescription`}),` is the localized short hotel description (up to 400\ncharacters per locale).`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`channelContent.tagline`}),` is a localized tagline for sales channels, up to 100\ncharacters per locale. It is the same for every public key.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`accommodationRules`}),` always contains check-in and check-out ranges, the children\npolicy, and the pets policy. The children policy includes whether children are\naccepted and an optional minimum age. The pets policy includes whether pets are\naccepted, an optional minimum stay, per-night fees in CZK and EUR, and localized\nconditions (up to 300 characters per locale). The `,_jsx(_components.code,{children:`feePerNight.czk`}),` and\n`,_jsx(_components.code,{children:`feePerNight.eur`}),` values are major-unit amounts, not `,_jsx(_components.code,{children:`Money`}),` objects. An unset\ntime or optional numeric value is `,_jsx(_components.code,{children:`null`}),`.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`mealServices`}),` always contains `,_jsx(_components.code,{children:`breakfast`}),`, `,_jsx(_components.code,{children:`lunch`}),`, and `,_jsx(_components.code,{children:`dinner`}),`. Each meal\nreports whether it is enabled, its optional serving time, its service method\n(`,_jsx(_components.code,{children:`buffet`}),`, `,_jsx(_components.code,{children:`served`}),`, or `,_jsx(_components.code,{children:`null`}),` when unset), whether drinks are included, and\na localized drinks note (up to 200 characters per locale).`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`indications`}),` is an ordered array of medical indication codes. The hotel\nspecializes in treating the listed areas:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{children:`Meaning`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`musculoskeletal`})}),_jsx(_components.td,{children:`Musculoskeletal system`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`cardiovascular`})}),_jsx(_components.td,{children:`Heart and blood vessels`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`dermatology`})}),_jsx(_components.td,{children:`Skin conditions`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`digestion_metabolism`})}),_jsx(_components.td,{children:`Digestion and metabolism`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`nervous_system`})}),_jsx(_components.td,{children:`Nervous system`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`prevention`})}),_jsx(_components.td,{children:`Prevention`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`gynecology`})}),_jsx(_components.td,{children:`Gynecological indications`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`oncology_aftercare`})}),_jsx(_components.td,{children:`Oncology aftercare`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`diabetes`})}),_jsx(_components.td,{children:`Diabetes`})]})]})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`staffLanguages`}),` contains the ISO 639-1 codes of the languages spoken by hotel\nstaff: `,_jsx(_components.code,{children:`cs`}),` (Czech), `,_jsx(_components.code,{children:`en`}),` (English), `,_jsx(_components.code,{children:`de`}),` (German), and `,_jsx(_components.code,{children:`ru`}),` (Russian).`]}),`\n`,_jsx(Heading,{level:`2`,id:`amenities`,children:`Amenities`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`amenityCategories`}),` lists the amenities assigned to the hotel, grouped by\ncategory. See `,_jsx(_components.a,{href:`/api/amenities#assigned-amenities`,children:`Assigned amenities`}),` for the\nstructure and labels.`]}),`\n`,_jsx(Heading,{level:`2`,id:`procedures`,children:`Procedures`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`procedures`}),` lists the procedures the hotel offers, in its configured order,\neach code once. Items use the `,_jsx(_components.a,{href:`/api/objects/procedure`,children:`Procedure`}),` object\nwithout a `,_jsx(_components.code,{children:`count`}),`. An empty array means the hotel publishes no procedures.`]}),`\n`,_jsxs(_components.p,{children:[`The list is independent of what a package includes: a package’s\n`,_jsx(_components.a,{href:`/api/objects/treatment`,children:`treatment`}),` says which procedures its guests receive.\nJoin the two by `,_jsx(_components.code,{children:`code`}),`.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`34`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`34`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"procedures\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"carbon_dioxide_bath\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"cs-CZ\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Kysličníková koupel\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"de\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Kohlensäurebad\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"category\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"hydrotherapy\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"cs-CZ\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Vodoléčba\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"de\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Hydrotherapie\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"naturalSource\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"carbon_dioxide\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"peat_wrap\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"cs-CZ\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Rašelinový zábal\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"de\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Moorpackung\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"category\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"thermotherapy\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"cs-CZ\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Teploléčba\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"de\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Thermotherapie\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"naturalSource\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"peat\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`prices`,children:`Prices`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`priceFrom`}),` holds the lowest prices the hotel sells for arrivals from today\nonward, per currency.\nEach currency has the hotel-wide group `,_jsx(_components.code,{children:`all`}),` and the category groups `,_jsx(_components.code,{children:`health`}),`\nand `,_jsx(_components.code,{children:`wellness`}),`, each with the two independent\n`,_jsx(_components.a,{href:`/api/objects/price-from`,children:`Price from`}),` minima. A category group is omitted\nwhen it has no buyable offer; `,_jsx(_components.code,{children:`all`}),` is present whenever the currency is.\n`,_jsx(_components.code,{children:`priceFrom`}),` is `,_jsx(_components.code,{children:`null`}),` when the hotel has no buyable offer at all.`]}),`\n`,_jsxs(_components.p,{children:[`Every minimum names its `,_jsx(_components.code,{children:`hotel`}),` and `,_jsx(_components.code,{children:`visitType`}),`. Open the package with the\nsame public key to show its details. `,_jsx(_components.a,{href:`/api/prices`,children:`Prices`}),` defines which\noffers qualify and how to compare the groups.`]}),`\n`,_jsx(Heading,{level:`2`,id:`fields`,children:`Fields`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Hotel","description":"A spa or wellness property and its structured guest profile.","openapi-schema":"api/v2/openapi.yaml Hotel","href":"/api/objects/hotel"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Buildings","slug":"buildings","depth":2,"children":[]},{"title":"Embedded room types","slug":"embedded-room-types","depth":2,"children":[]},{"title":"Images","slug":"images","depth":2,"children":[]},{"title":"Structured profile","slug":"structured-profile","depth":2,"children":[]},{"title":"Amenities","slug":"amenities","depth":2,"children":[]},{"title":"Procedures","slug":"procedures","depth":2,"children":[]},{"title":"Prices","slug":"prices","depth":2,"children":[]},{"title":"Fields","slug":"fields","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"schemaData":{"type":"object","required":["id","name","shortDescription","channelContent","stars","address","email","phoneNumber","url","images","buildings","accommodationRules","mealServices","indications","procedures","staffLanguages","amenityCategories","priceFrom"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name (plain text). A missing translation falls back to the Czech name.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"name","typeLabel":"object"},"shortDescription":{"type":"object","description":"Localized short hotel description (plain text). Each locale value is at most 400 characters.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"shortDescription.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"shortDescription.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"shortDescription.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"shortDescription.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"shortDescription.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"shortDescription.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"shortDescription.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"shortDescription.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"shortDescription.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"shortDescription.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"shortDescription.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"shortDescription.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"shortDescription","typeLabel":"object"},"channelContent":{"type":"object","required":["tagline"],"properties":{"tagline":{"type":"object","description":"Localized tagline for sales channels, the same for every public key. Each locale value is at most 100 characters.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"channelContent.tagline.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"channelContent.tagline.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"channelContent.tagline.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"channelContent.tagline.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"channelContent.tagline.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"channelContent.tagline.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"channelContent.tagline.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"channelContent.tagline.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"channelContent.tagline.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"channelContent.tagline.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"channelContent.tagline.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"channelContent.tagline.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"channelContent.tagline","typeLabel":"object"}},"isRequired":true,"uniqueKey":"channelContent","typeLabel":"object"},"stars":{"oneOf":[{"type":"integer","maximum":5,"minimum":1,"isRequired":true,"uniqueKey":"stars.oneOf.0","typeLabel":"integer"},{"type":"null","maximum":5,"minimum":1,"isRequired":true,"uniqueKey":"stars.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"stars","typeLabel":"integer | null"},"address":{"type":"object","required":["addressLine","city","postalCode","country"],"properties":{"addressLine":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"address.addressLine.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"address.addressLine.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"address.addressLine","typeLabel":"string | null"},"city":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"address.city.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"address.city.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"address.city","typeLabel":"string | null"},"postalCode":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"address.postalCode.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"address.postalCode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"address.postalCode","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"Lowercase ISO 3166-1 alpha-3 country code.","pattern":"^[a-z]{3}$","example":"cze","isRequired":true,"uniqueKey":"address.country.oneOf.0","typeLabel":"string"},{"type":"null","description":"Lowercase ISO 3166-1 alpha-3 country code.","pattern":"^[a-z]{3}$","example":"cze","isRequired":true,"uniqueKey":"address.country.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"address.country","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"address","typeLabel":"object"},"email":{"oneOf":[{"type":"string","format":"email","isRequired":true,"uniqueKey":"email.oneOf.0","typeLabel":"string\u003cemail>"},{"type":"null","format":"email","isRequired":true,"uniqueKey":"email.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"email","typeLabel":"string\u003cemail> | null"},"phoneNumber":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"phoneNumber.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"phoneNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"phoneNumber","typeLabel":"string | null"},"url":{"oneOf":[{"type":"string","format":"uri","isRequired":true,"uniqueKey":"url.oneOf.0","typeLabel":"string\u003curi>"},{"type":"null","format":"uri","isRequired":true,"uniqueKey":"url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"url","typeLabel":"string\u003curi> | null"},"images":{"type":"array","items":{"type":"object","required":["url","width","height","alt","variants"],"properties":{"url":{"type":"string","description":"Original image URL. Use it for a full-size view and as the final fallback.","isRequired":true,"uniqueKey":"images.items.[INDEX].url","typeLabel":"string"},"width":{"oneOf":[{"type":"integer","description":"Original display width in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"images.items.[INDEX].width.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Original display width in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"images.items.[INDEX].width.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"images.items.[INDEX].width","typeLabel":"integer | null"},"height":{"oneOf":[{"type":"integer","description":"Original display height in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"images.items.[INDEX].height.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Original display height in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"images.items.[INDEX].height.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"images.items.[INDEX].height","typeLabel":"integer | null"},"alt":{"type":"object","description":"Localized alternative text. A missing translation falls back to the name of the hotel, room type, or visit type the image belongs to, or null if that name is unavailable. An empty string is intentional decorative text; preserve it.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"images.items.[INDEX].alt.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"images.items.[INDEX].alt.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"images.items.[INDEX].alt.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"images.items.[INDEX].alt.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"images.items.[INDEX].alt.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"images.items.[INDEX].alt.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"images.items.[INDEX].alt.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"images.items.[INDEX].alt.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"images.items.[INDEX].alt.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"images.items.[INDEX].alt.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"images.items.[INDEX].alt.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"images.items.[INDEX].alt.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"images.items.[INDEX].alt","typeLabel":"object"},"variants":{"type":"object","additionalProperties":false,"description":"Available WebP images by pixel width. No image is enlarged, so larger sizes can be absent. An original narrower than 480 pixels has no variants. Unavailable variants are represented by an empty object; in that case dimensions can also be null. Use the returned URLs as-is and omit srcset when the object is empty.","properties":{"w480":{"type":"string","format":"uri","uniqueKey":"images.items.[INDEX].variants.w480","typeLabel":"string\u003curi>"},"w960":{"type":"string","format":"uri","uniqueKey":"images.items.[INDEX].variants.w960","typeLabel":"string\u003curi>"},"w1440":{"type":"string","format":"uri","uniqueKey":"images.items.[INDEX].variants.w1440","typeLabel":"string\u003curi>"},"w1920":{"type":"string","format":"uri","uniqueKey":"images.items.[INDEX].variants.w1920","typeLabel":"string\u003curi>"}},"isRequired":true,"uniqueKey":"images.items.[INDEX].variants","typeLabel":"object"}},"uniqueKey":"images.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"images","typeLabel":"object[]"},"buildings":{"type":"array","description":"All physical buildings in configured order, including buildings with no assigned room types. Always included without expand, even for a single building; empty when none are configured. Match each id to a room type's building.id.","items":{"type":"object","description":"A physical hotel building. Name and label follow Accept-Language; missing or blank translations are null, without a locale fallback.","required":["id","name","label"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Stable building id, also returned as roomType.building.id.","isRequired":true,"uniqueKey":"buildings.items.[INDEX].id","typeLabel":"string"},"name":{"type":"object","description":"Short building name.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].name.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].name.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].name.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"buildings.items.[INDEX].name","typeLabel":"object"},"label":{"type":"object","description":"Short building description; requested translations are null when unset.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"buildings.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"buildings.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"buildings.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"buildings.items.[INDEX].label","typeLabel":"object"}},"uniqueKey":"buildings.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"buildings","typeLabel":"object[]"},"accommodationRules":{"type":"object","required":["checkIn","checkOut","children","pets"],"properties":{"checkIn":{"type":"object","required":["from","to"],"properties":{"from":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"accommodationRules.checkIn.from.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"accommodationRules.checkIn.from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.checkIn.from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"accommodationRules.checkIn.to.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"accommodationRules.checkIn.to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.checkIn.to","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"accommodationRules.checkIn","typeLabel":"object"},"checkOut":{"type":"object","required":["from","to"],"properties":{"from":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"accommodationRules.checkOut.from.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"accommodationRules.checkOut.from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.checkOut.from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"accommodationRules.checkOut.to.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"accommodationRules.checkOut.to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.checkOut.to","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"accommodationRules.checkOut","typeLabel":"object"},"children":{"type":"object","required":["allowed","minimumAge"],"properties":{"allowed":{"type":"boolean","isRequired":true,"uniqueKey":"accommodationRules.children.allowed","typeLabel":"boolean"},"minimumAge":{"oneOf":[{"type":"integer","maximum":18,"minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.children.minimumAge.oneOf.0","typeLabel":"integer"},{"type":"null","maximum":18,"minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.children.minimumAge.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.children.minimumAge","typeLabel":"integer | null"}},"isRequired":true,"uniqueKey":"accommodationRules.children","typeLabel":"object"},"pets":{"type":"object","required":["allowed","minimumNights","feePerNight","conditions"],"properties":{"allowed":{"type":"boolean","isRequired":true,"uniqueKey":"accommodationRules.pets.allowed","typeLabel":"boolean"},"minimumNights":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.pets.minimumNights.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.pets.minimumNights.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.pets.minimumNights","typeLabel":"integer | null"},"feePerNight":{"type":"object","required":["czk","eur"],"properties":{"czk":{"oneOf":[{"type":"number","description":"Per-night fee in Czech koruna major units.","minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight.czk.oneOf.0","typeLabel":"number"},{"type":"null","description":"Per-night fee in Czech koruna major units.","minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight.czk.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight.czk","typeLabel":"number | null"},"eur":{"oneOf":[{"type":"number","description":"Per-night fee in euro major units.","minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight.eur.oneOf.0","typeLabel":"number"},{"type":"null","description":"Per-night fee in euro major units.","minimum":0,"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight.eur.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight.eur","typeLabel":"number | null"}},"isRequired":true,"uniqueKey":"accommodationRules.pets.feePerNight","typeLabel":"object"},"conditions":{"type":"object","description":"Localized supplementary conditions for guests with pets. Each locale value is at most 300 characters.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"accommodationRules.pets.conditions.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"accommodationRules.pets.conditions.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"accommodationRules.pets.conditions.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"accommodationRules.pets.conditions.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"accommodationRules.pets.conditions.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"accommodationRules.pets.conditions.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"accommodationRules.pets.conditions.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"accommodationRules.pets.conditions.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"accommodationRules.pets.conditions.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"accommodationRules.pets.conditions.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"accommodationRules.pets.conditions.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"accommodationRules.pets.conditions.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"accommodationRules.pets.conditions","typeLabel":"object"}},"isRequired":true,"uniqueKey":"accommodationRules.pets","typeLabel":"object"}},"isRequired":true,"uniqueKey":"accommodationRules","typeLabel":"object"},"mealServices":{"type":"object","required":["breakfast","lunch","dinner"],"properties":{"breakfast":{"type":"object","required":["enabled","servingTime","serviceMethod","drinksIncluded","drinksNote"],"properties":{"enabled":{"type":"boolean","isRequired":true,"uniqueKey":"mealServices.breakfast.enabled","typeLabel":"boolean"},"servingTime":{"type":"object","required":["from","to"],"properties":{"from":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime.from.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime.from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime.from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime.to.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime.to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime.to","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"mealServices.breakfast.servingTime","typeLabel":"object"},"serviceMethod":{"oneOf":[{"type":"string","enum":["buffet","served",null],"isRequired":true,"uniqueKey":"mealServices.breakfast.serviceMethod.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["buffet","served",null],"isRequired":true,"uniqueKey":"mealServices.breakfast.serviceMethod.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.breakfast.serviceMethod","typeLabel":"enum\u003cstring> | null"},"drinksIncluded":{"type":"boolean","isRequired":true,"uniqueKey":"mealServices.breakfast.drinksIncluded","typeLabel":"boolean"},"drinksNote":{"type":"object","description":"Localized note about included drinks. Each locale value is at most 200 characters.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"mealServices.breakfast.drinksNote.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.breakfast.drinksNote.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.breakfast.drinksNote.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"mealServices.breakfast.drinksNote.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.breakfast.drinksNote.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.breakfast.drinksNote.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"mealServices.breakfast.drinksNote.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.breakfast.drinksNote.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.breakfast.drinksNote.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"mealServices.breakfast.drinksNote.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.breakfast.drinksNote.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.breakfast.drinksNote.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"mealServices.breakfast.drinksNote","typeLabel":"object"}},"example":{"enabled":true,"servingTime":{"from":"07:00","to":"10:00"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Nealkoholické nápoje jsou v ceně.","de":"Alkoholfreie Getränke sind inklusive.","en":"Soft drinks are included.","ru":"Безалкогольные напитки включены в стоимость."}},"isRequired":true,"uniqueKey":"mealServices.breakfast","typeLabel":"object"},"lunch":{"type":"object","required":["enabled","servingTime","serviceMethod","drinksIncluded","drinksNote"],"properties":{"enabled":{"type":"boolean","isRequired":true,"uniqueKey":"mealServices.lunch.enabled","typeLabel":"boolean"},"servingTime":{"type":"object","required":["from","to"],"properties":{"from":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"mealServices.lunch.servingTime.from.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"mealServices.lunch.servingTime.from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.lunch.servingTime.from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"mealServices.lunch.servingTime.to.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"mealServices.lunch.servingTime.to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.lunch.servingTime.to","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"mealServices.lunch.servingTime","typeLabel":"object"},"serviceMethod":{"oneOf":[{"type":"string","enum":["buffet","served",null],"isRequired":true,"uniqueKey":"mealServices.lunch.serviceMethod.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["buffet","served",null],"isRequired":true,"uniqueKey":"mealServices.lunch.serviceMethod.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.lunch.serviceMethod","typeLabel":"enum\u003cstring> | null"},"drinksIncluded":{"type":"boolean","isRequired":true,"uniqueKey":"mealServices.lunch.drinksIncluded","typeLabel":"boolean"},"drinksNote":{"type":"object","description":"Localized note about included drinks. Each locale value is at most 200 characters.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"mealServices.lunch.drinksNote.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.lunch.drinksNote.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.lunch.drinksNote.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"mealServices.lunch.drinksNote.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.lunch.drinksNote.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.lunch.drinksNote.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"mealServices.lunch.drinksNote.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.lunch.drinksNote.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.lunch.drinksNote.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"mealServices.lunch.drinksNote.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.lunch.drinksNote.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.lunch.drinksNote.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"mealServices.lunch.drinksNote","typeLabel":"object"}},"example":{"enabled":true,"servingTime":{"from":"07:00","to":"10:00"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Nealkoholické nápoje jsou v ceně.","de":"Alkoholfreie Getränke sind inklusive.","en":"Soft drinks are included.","ru":"Безалкогольные напитки включены в стоимость."}},"isRequired":true,"uniqueKey":"mealServices.lunch","typeLabel":"object"},"dinner":{"type":"object","required":["enabled","servingTime","serviceMethod","drinksIncluded","drinksNote"],"properties":{"enabled":{"type":"boolean","isRequired":true,"uniqueKey":"mealServices.dinner.enabled","typeLabel":"boolean"},"servingTime":{"type":"object","required":["from","to"],"properties":{"from":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"mealServices.dinner.servingTime.from.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"14:00","isRequired":true,"uniqueKey":"mealServices.dinner.servingTime.from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.dinner.servingTime.from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"mealServices.dinner.servingTime.to.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"22:00","isRequired":true,"uniqueKey":"mealServices.dinner.servingTime.to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.dinner.servingTime.to","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"mealServices.dinner.servingTime","typeLabel":"object"},"serviceMethod":{"oneOf":[{"type":"string","enum":["buffet","served",null],"isRequired":true,"uniqueKey":"mealServices.dinner.serviceMethod.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["buffet","served",null],"isRequired":true,"uniqueKey":"mealServices.dinner.serviceMethod.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"mealServices.dinner.serviceMethod","typeLabel":"enum\u003cstring> | null"},"drinksIncluded":{"type":"boolean","isRequired":true,"uniqueKey":"mealServices.dinner.drinksIncluded","typeLabel":"boolean"},"drinksNote":{"type":"object","description":"Localized note about included drinks. Each locale value is at most 200 characters.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"mealServices.dinner.drinksNote.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.dinner.drinksNote.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.dinner.drinksNote.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"mealServices.dinner.drinksNote.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.dinner.drinksNote.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.dinner.drinksNote.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"mealServices.dinner.drinksNote.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.dinner.drinksNote.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.dinner.drinksNote.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"mealServices.dinner.drinksNote.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"mealServices.dinner.drinksNote.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"mealServices.dinner.drinksNote.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"mealServices.dinner.drinksNote","typeLabel":"object"}},"example":{"enabled":true,"servingTime":{"from":"07:00","to":"10:00"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Nealkoholické nápoje jsou v ceně.","de":"Alkoholfreie Getränke sind inklusive.","en":"Soft drinks are included.","ru":"Безалкогольные напитки включены в стоимость."}},"isRequired":true,"uniqueKey":"mealServices.dinner","typeLabel":"object"}},"example":{"breakfast":{"enabled":true,"servingTime":{"from":"07:00","to":"10:00"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Nealkoholické nápoje jsou v ceně.","de":"Alkoholfreie Getränke sind inklusive.","en":"Soft drinks are included.","ru":"Безалкогольные напитки включены в стоимость."}},"lunch":{"enabled":true,"servingTime":{"from":"11:30","to":"14:30"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Voda je zahrnuta v ceně oběda.","de":"Wasser ist im Mittagessen inbegriffen.","en":"Water is included with lunch.","ru":"Вода включена в стоимость обеда."}},"dinner":{"enabled":true,"servingTime":{"from":"18:00","to":"21:00"},"serviceMethod":"served","drinksIncluded":false,"drinksNote":{"cs-CZ":"Nápoje se hradí samostatně.","de":"Getränke werden separat berechnet.","en":"Drinks are charged separately.","ru":"Напитки оплачиваются отдельно."}}},"isRequired":true,"uniqueKey":"mealServices","typeLabel":"object"},"indications":{"type":"array","description":"Medical indications the hotel specializes in, in display order.","items":{"type":"string","enum":["musculoskeletal","cardiovascular","dermatology","digestion_metabolism","nervous_system","prevention","gynecology","oncology_aftercare","diabetes"],"uniqueKey":"indications.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"indications","typeLabel":"enum\u003cstring>[]"},"procedures":{"type":"array","items":{"type":"object","required":["code","label","category","naturalSource"],"properties":{"code":{"type":"string","description":"Procedure code. See [Procedure codes](/api/objects/procedure#procedure-codes).","enum":["bubble_bath","carbon_dioxide_bath","bubble_bath_with_additives","kneipp_water_treading","hydroxeur","herbal_bath","whirlpool_foot_bath","radon_bath","peat_bath","peat_wrap","paraffin_wrap","peat_vaginal_tampons","diadynamic_therapy","magnetic_therapy","ultrasound","co2_gas_injections","dry_carbon_dioxide_bath","molecular_hydrogen_therapy","classic_full_body_massage","partial_massage","fitness_centre_exercise","individual_physiotherapy","cardiotherapy","machine_lymphatic_drainage","manual_lymphatic_drainage","reflex_massage","hot_stone_massage","anti_cellulite_massage","aroma_massage","french_ear_acupuncture","classic_chinese_acupuncture","inhalation","oxygen_therapy","cryotherapy","thai_aroma_oil_massage","thai_foot_massage","thai_warm_oil_massage","classic_thai_massage","thai_coconut_dream","thai_head_and_back_massage","thai_herbal_massage","thai_special_back_massage","thai_pregnancy_massage","vaginal_irrigation","drinking_cure","ecg","inbody_diagnostics","vascular_condition_measurement"],"isRequired":true,"uniqueKey":"procedures.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"label":{"type":"object","description":"Localized procedure name.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"procedures.items.[INDEX].label","typeLabel":"object"},"category":{"type":"object","description":"Procedure category.","required":["code","label"],"properties":{"code":{"type":"string","description":"Category code.","enum":["hydrotherapy","thermotherapy","electrotherapy","gas_therapy","physiotherapy","inhalation","wellness","thai_massage","other","diagnostics"],"isRequired":true,"uniqueKey":"procedures.items.[INDEX].category.code","typeLabel":"enum\u003cstring>"},"label":{"type":"object","description":"Localized category name.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].category.label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].category.label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].category.label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].category.label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].category.label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].category.label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].category.label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].category.label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].category.label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"procedures.items.[INDEX].category.label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"procedures.items.[INDEX].category.label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"procedures.items.[INDEX].category.label.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"procedures.items.[INDEX].category.label","typeLabel":"object"}},"isRequired":true,"uniqueKey":"procedures.items.[INDEX].category","typeLabel":"object"},"naturalSource":{"oneOf":[{"type":"string","description":"Natural healing source of the procedure, or null when it has none.","enum":["carbon_dioxide","peat","mineral_water",null],"isRequired":true,"uniqueKey":"procedures.items.[INDEX].naturalSource.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Natural healing source of the procedure, or null when it has none.","enum":["carbon_dioxide","peat","mineral_water",null],"isRequired":true,"uniqueKey":"procedures.items.[INDEX].naturalSource.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"procedures.items.[INDEX].naturalSource","typeLabel":"enum\u003cstring> | null"}},"not":{"type":"object","required":["count"],"properties":{"count":{}}},"description":"A procedure offered by a hotel or included in a package. See [Procedure](/api/objects/procedure).","example":{"code":"carbon_dioxide_bath","label":{"cs-CZ":"Kysličníková koupel","de":"Kohlensäurebad"},"category":{"code":"hydrotherapy","label":{"cs-CZ":"Vodoléčba","de":"Hydrotherapie"}},"naturalSource":"carbon_dioxide"},"uniqueKey":"procedures.items.[INDEX]","typeLabel":"object"},"description":"Procedures the hotel offers, in configured order, each code once. Independent of the procedures a package includes.","isRequired":true,"uniqueKey":"procedures","typeLabel":"object[]"},"staffLanguages":{"type":"array","description":"Languages spoken by hotel staff.","items":{"type":"string","enum":["cs","en","de","ru"],"uniqueKey":"staffLanguages.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"staffLanguages","typeLabel":"enum\u003cstring>[]"},"amenityCategories":{"type":"array","description":"Amenities assigned to the hotel, grouped by category. See [Assigned amenities](/api/amenities#assigned-amenities).","items":{"type":"object","required":["category","amenities"],"description":"One hotel amenity category containing values assigned to a hotel. Categories without assigned amenities are omitted from hotel responses.","properties":{"category":{"type":"object","title":"Hotel category","additionalProperties":false,"required":["code"],"description":"A category assigned to a hotel. Resolve its `code` in the hotel amenity dictionary or request `expand=amenityLabels`; see [Labels](/api/amenities#labels).","properties":{"code":{"type":"string","enum":["health","wellness","dining","services","accessibility","parking","sport","children"],"description":"Category code in the hotel amenity dictionary.","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].category.code","typeLabel":"enum\u003cstring>"},"label":{"type":"object","description":"Localized category label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].category.label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].category.label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].category.label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].category.label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].category.label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].category.label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].category.label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].category.label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].category.label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].category.label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].category.label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].category.label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].category.label","typeLabel":"object"}},"example":{"code":"wellness"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].category","typeLabel":"Hotel category · object"},"amenities":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["code"],"description":"A structured amenity assigned to a hotel or room type. Apart from `code` (and `label` with `expand=amenityLabels`), it contains only the fields of the detail kinds that the matching dictionary amenity declares. See [Detail kinds](/api/amenities#detail-kinds).","properties":{"code":{"type":"string","description":"References an `Amenity.code`.","example":"sauna","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].code","typeLabel":"string"},"label":{"type":"object","description":"Localized amenity label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].label","typeLabel":"object"},"proximity":{"oneOf":[{"type":"string","description":"Where the amenity is located relative to the hotel. Present when `detailKinds` includes [`proximity`](/api/amenities#proximity); null when not specified. `in-hotel` is inside the hotel building, `connecting` is an adjacent building linked by an internal passage, and `nearby` is a short distance away (see `proximityMeters`).","enum":["in-hotel","connecting","nearby",null],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].proximity.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Where the amenity is located relative to the hotel. Present when `detailKinds` includes [`proximity`](/api/amenities#proximity); null when not specified. `in-hotel` is inside the hotel building, `connecting` is an adjacent building linked by an internal passage, and `nearby` is a short distance away (see `proximityMeters`).","enum":["in-hotel","connecting","nearby",null],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].proximity.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].proximity","typeLabel":"enum\u003cstring> | null"},"proximityMeters":{"oneOf":[{"type":"number","description":"Present with `proximity`. Contains a distance when `proximity` is `nearby`; otherwise null.","maximum":1000000,"minimum":0,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].proximityMeters.oneOf.0","typeLabel":"number"},{"type":"null","description":"Present with `proximity`. Contains a distance when `proximity` is `nearby`; otherwise null.","maximum":1000000,"minimum":0,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].proximityMeters.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].proximityMeters","typeLabel":"number | null"},"pricing":{"oneOf":[{"type":"object","description":"Present when the dictionary declares [pricing](/api/amenities#pricing). Null means unknown. Otherwise read type and schedule.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing).","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.type","typeLabel":"enum\u003cstring>"},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.0","typeLabel":"string"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.0","typeLabel":"string"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to","typeLabel":"string | null"}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule","typeLabel":"object[] | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0","typeLabel":"object"},{"type":"null","description":"Present when the dictionary declares [pricing](/api/amenities#pricing). Null means unknown. Otherwise read type and schedule.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing)."},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"}]},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"}]}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]}},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1}]}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing","typeLabel":"object | null"},"coverage":{"type":"string","enum":["all","some"],"description":"Whether the amenity is available in all physical rooms of this room type or only some. Present only when the dictionary declares [coverage](/api/amenities#coverage). `all` means every room; `some` means only some rooms. Defaults to `all` when unspecified and is never null. Omitted on hotel amenities.","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].coverage","typeLabel":"enum\u003cstring>"},"options":{"type":"array","description":"Amenity-specific choices selected for this hotel or room type. Each option contains `code` by default and also `label` with `expand=amenityLabels`. Present when `detailKinds` includes [`options`](/api/amenities#options). Empty when the amenity supports choices but none are selected. Labels are also available in the dictionary.","items":{"type":"object","required":["code"],"description":"A selected amenity option on a hotel or room type response. Identified by `code`; its localized `label` is included only with `expand=amenityLabels`. Otherwise resolve the label against the amenity's `options` in the [amenity dictionary](/api/amenities).","properties":{"code":{"type":"string","description":"References an option `code` from the dictionary.","example":"finnish","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].code","typeLabel":"string"},"label":{"type":"object","description":"Localized option label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label","typeLabel":"object"}},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX]","typeLabel":"object"},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].options","typeLabel":"object[]"},"openingHours":{"oneOf":[{"type":"object","description":"Present when `detailKinds` includes [`opening_hours`](/api/amenities#opening-hours). Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].from","typeLabel":"string"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].to","typeLabel":"string"}},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0","typeLabel":"object"},{"type":"null","description":"Present when `detailKinds` includes [`opening_hours`](/api/amenities#opening-hours). Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00"}}}}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours","typeLabel":"object | null"},"note":{"type":"object","description":"Present when `detailKinds` includes [`note`](/api/amenities#note). Localized supplementary information for guests. Locale values are at most 200 characters and are null when the requested translation is not available.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].note","typeLabel":"object"},"includes":{"type":"array","description":"Aquapark facilities with resolved pricing, hours, location and note. Present when the dictionary declares [includes](/api/amenities#includes). Empty when no facilities are specified. Children are not duplicated among the hotel's own amenities and cannot contain further includes.","items":{"type":"object","additionalProperties":false,"required":["code","proximity","proximityMeters","pricing","openingHours","note"],"description":"One aquapark facility. Values already include inherited conditions; clients do not resolve inheritance. Only `sauna` returns `options`.","properties":{"code":{"type":"string","enum":["indoor_pool","outdoor_pool","children_pool","whirlpool","sauna"],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"proximity":{"oneOf":[{"type":"string","description":"Location, inherited from the aquapark; see `proximity` of the amenity value.","enum":["in-hotel","connecting","nearby",null],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximity.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Location, inherited from the aquapark; see `proximity` of the amenity value.","enum":["in-hotel","connecting","nearby",null],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximity","typeLabel":"enum\u003cstring> | null"},"proximityMeters":{"oneOf":[{"type":"number","description":"Distance inherited from the aquapark; a number only when `proximity` is `nearby`.","maximum":1000000,"minimum":0,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximityMeters.oneOf.0","typeLabel":"number"},{"type":"null","description":"Distance inherited from the aquapark; a number only when `proximity` is `nearby`.","maximum":1000000,"minimum":0,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximityMeters.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximityMeters","typeLabel":"number | null"},"pricing":{"oneOf":[{"type":"object","description":"Resolved price conditions of the facility. Null means unknown.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing).","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.type","typeLabel":"enum\u003cstring>"},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.0","typeLabel":"string"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.0","typeLabel":"string"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to","typeLabel":"string | null"}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule","typeLabel":"object[] | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0","typeLabel":"object"},{"type":"null","description":"Resolved price conditions of the facility. Null means unknown.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing)."},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"}]},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"}]}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]}},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1}]}},"additionalProperties":false,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing","typeLabel":"object | null"},"openingHours":{"oneOf":[{"type":"object","description":"Resolved opening hours of the facility. Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].from","typeLabel":"string"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].to","typeLabel":"string"}},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0","typeLabel":"object"},{"type":"null","description":"Resolved opening hours of the facility. Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00"}}}}},"additionalProperties":false,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours","typeLabel":"object | null"},"note":{"type":"object","description":"The facility's own note, or the aquapark's note when the facility has none. A missing translation is null.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note","typeLabel":"object"},"label":{"type":"object","description":"Localized facility label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label","typeLabel":"object"},"options":{"type":"array","description":"Selected sauna types. Present only for `sauna`; empty when none are selected.","items":{"type":"object","required":["code"],"description":"A selected amenity option on a hotel or room type response. Identified by `code`; its localized `label` is included only with `expand=amenityLabels`. Otherwise resolve the label against the amenity's `options` in the [amenity dictionary](/api/amenities).","properties":{"code":{"type":"string","description":"References an option `code` from the dictionary.","example":"finnish","isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].code","typeLabel":"string"},"label":{"type":"object","description":"Localized option label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label","typeLabel":"object"}},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX]","typeLabel":"object"},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options","typeLabel":"object[]"}},"not":{"anyOf":[{"type":"object","required":["code"],"properties":{"code":{"enum":["sauna"]}},"not":{"required":["options"],"properties":{"options":{}}}},{"type":"object","required":["code","options"],"properties":{"code":{"enum":["indoor_pool","outdoor_pool","children_pool","whirlpool"]},"options":{}}}]},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX]","typeLabel":"object"},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX].includes","typeLabel":"object[]"}},"example":{"code":"aquapark","proximity":"nearby","proximityMeters":250,"pricing":{"type":"included","schedule":null},"openingHours":{"schedule":[{"days":["monday","tuesday","wednesday"],"from":"09:00","to":"21:00"}]},"note":{"en":null},"includes":[]},"uniqueKey":"amenityCategories.items.[INDEX].amenities.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"amenityCategories.items.[INDEX].amenities","typeLabel":"object[]"}},"uniqueKey":"amenityCategories.items.[INDEX]","typeLabel":"object"},"example":[{"category":{"code":"wellness"},"amenities":[{"code":"aquapark","proximity":"nearby","proximityMeters":250,"pricing":{"type":"included","schedule":null},"openingHours":{"schedule":[{"days":["monday","tuesday","wednesday"],"from":"09:00","to":"21:00"}]},"note":{"en":null},"includes":[]}]}],"isRequired":true,"uniqueKey":"amenityCategories","typeLabel":"object[]"},"priceFrom":{"oneOf":[{"type":"object","description":"Lowest prices the hotel sells for arrivals from today onward, per currency: across all packages (`all`) and per category (`health`, `wellness`), each with two independent minima. A currency is present only when it has a buyable offer. Null when the hotel has none. See [Prices](/api/prices).","minProperties":1,"properties":{"CZK":{"type":"object","required":["all"],"properties":{"all":{"type":"object","description":"Minima across every package the hotel sells.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perPersonPerNight","typeLabel":"object"},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all.perStay","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.all","typeLabel":"object"},"health":{"type":"object","description":"Minima across health packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perPersonPerNight","typeLabel":"object"},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.health.perStay","typeLabel":"object"}},"uniqueKey":"priceFrom.oneOf.0.CZK.health","typeLabel":"object"},"wellness":{"type":"object","description":"Minima across wellness packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perPersonPerNight","typeLabel":"object"},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.CZK.wellness.perStay","typeLabel":"object"}},"uniqueKey":"priceFrom.oneOf.0.CZK.wellness","typeLabel":"object"}},"description":"Hotel-wide and per-category minima for one currency. See [Comparing hotel groups](/api/prices#comparing-hotel-groups).","uniqueKey":"priceFrom.oneOf.0.CZK","typeLabel":"object"},"EUR":{"type":"object","required":["all"],"properties":{"all":{"type":"object","description":"Minima across every package the hotel sells.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perPersonPerNight","typeLabel":"object"},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all.perStay","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.all","typeLabel":"object"},"health":{"type":"object","description":"Minima across health packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perPersonPerNight","typeLabel":"object"},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.health.perStay","typeLabel":"object"}},"uniqueKey":"priceFrom.oneOf.0.EUR.health","typeLabel":"object"},"wellness":{"type":"object","description":"Minima across wellness packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perPersonPerNight","typeLabel":"object"},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.amount.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.amount.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.amount.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.amount","typeLabel":"object"},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.original.oneOf.0.amountMinor","typeLabel":"integer"},"currency":{"type":"string","enum":["CZK","EUR"],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.original.oneOf.0.currency","typeLabel":"enum\u003cstring>"},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.original.oneOf.0.currencyExponent","typeLabel":"enum\u003cinteger>"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.original.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.original.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.original","typeLabel":"object | null"},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.nights","typeLabel":"integer"},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.occupancy","typeLabel":"integer"},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.hotel","typeLabel":"object"},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType.id","typeLabel":"string"},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType.name.cs-CZ","typeLabel":"string"},"de":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType.name.de","typeLabel":"string"},"en":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType.name.en","typeLabel":"string"},"ru":{"type":"string","minLength":1,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType.name.ru","typeLabel":"string"}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`.","isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType.name","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay.visitType","typeLabel":"object"}},"isRequired":true,"uniqueKey":"priceFrom.oneOf.0.EUR.wellness.perStay","typeLabel":"object"}},"uniqueKey":"priceFrom.oneOf.0.EUR.wellness","typeLabel":"object"}},"description":"Hotel-wide and per-category minima for one currency. See [Comparing hotel groups](/api/prices#comparing-hotel-groups).","uniqueKey":"priceFrom.oneOf.0.EUR","typeLabel":"object"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.0","typeLabel":"object"},{"type":"null","description":"Lowest prices the hotel sells for arrivals from today onward, per currency: across all packages (`all`) and per category (`health`, `wellness`), each with two independent minima. A currency is present only when it has a buyable offer. Null when the hotel has none. See [Prices](/api/prices).","minProperties":1,"properties":{"CZK":{"type":"object","required":["all"],"properties":{"all":{"type":"object","description":"Minima across every package the hotel sells.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}}}},"health":{"type":"object","description":"Minima across health packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}}}},"wellness":{"type":"object","description":"Minima across wellness packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}}}}},"description":"Hotel-wide and per-category minima for one currency. See [Comparing hotel groups](/api/prices#comparing-hotel-groups)."},"EUR":{"type":"object","required":["all"],"properties":{"all":{"type":"object","description":"Minima across every package the hotel sells.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}}}},"health":{"type":"object","description":"Minima across health packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}}}},"wellness":{"type":"object","description":"Minima across wellness packages only. Omitted when none has a buyable offer in this currency.","required":["perPersonPerNight","perStay"],"properties":{"perPersonPerNight":{"type":"object","description":"The offer with the lowest average price per guest per night.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}},"perStay":{"type":"object","description":"The offer with the lowest total for the whole room and stay at its standard occupancy. Selected independently of `perPersonPerNight`; the two can be different offers.","required":["amount","original","nights","occupancy","hotel","visitType"],"example":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"properties":{"amount":{"type":"object","description":"Price of the offer after its applicable promotions.","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in the smallest currency unit.","example":180000},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Decimal exponent for the currency."}}},"original":{"oneOf":[{"type":"object","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}},{"type":"null","description":"Price of the same offer before its promotions. Null when no promotion lowers this minimum's rounded amount. See [Minimum fields](/api/objects/price-from#minimum-fields).","required":["amountMinor","currency","currencyExponent"],"properties":{"amountMinor":{"type":"integer","description":"Amount in minor units, for example cents or haléře."},"currency":{"type":"string","enum":["CZK","EUR"]},"currencyExponent":{"type":"integer","enum":[2],"description":"Number of decimal places of `amountMinor`."}}}]},"nights":{"type":"integer","minimum":1,"description":"Number of nights of the offer."},"occupancy":{"type":"integer","minimum":1,"description":"Standard occupancy of the offer's room type. `perStay` amounts cover this many guests; `perPersonPerNight` amounts are averaged over them."},"hotel":{"type":"object","description":"Hotel of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Hotel whose offer gives this minimum."},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"de":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"en":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]},"ru":{"oneOf":[{"type":"string","minLength":1},{"type":"null","minLength":1}]}},"additionalProperties":false}}},"visitType":{"type":"object","description":"Visit type of the offer.","required":["id","name"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","description":"Visit type whose offer gives this minimum. Open it with `GET /visit-types/{visitTypeId}` using the same public key."},"name":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"type":"string","minLength":1},"de":{"type":"string","minLength":1},"en":{"type":"string","minLength":1},"ru":{"type":"string","minLength":1}},"description":"Localized visit type name keyed by response locale (`cs-CZ`, `de`, `en`, `ru`). A missing requested translation falls back to the Czech name, like the hotel `name`."}}}}}}}},"description":"Hotel-wide and per-category minima for one currency. See [Comparing hotel groups](/api/prices#comparing-hotel-groups)."}},"additionalProperties":false,"isRequired":true,"uniqueKey":"priceFrom.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"priceFrom","typeLabel":"object | null"},"roomTypes":{"type":"array","description":"Embedded only when `expand=roomTypes`;\notherwise fetch them via `GET /room-types?hotelId={hotelId}`. Each\nitem omits the nested `hotel` block (it is this hotel).\n","items":{"type":"object","description":"A type of accommodation within a hotel, with occupancy, amenities, rules, and images.","required":["id","hotelId","code","disabled","name","description","unitType","tier","occupancy","bedConfiguration","size","renovationYear","rules","building","amenityCategories","images"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","example":"66f16191f739705faa020003","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].id","typeLabel":"string"},"hotelId":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","example":"66f16191f739705faa020001","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].hotelId","typeLabel":"string"},"code":{"oneOf":[{"type":"string","example":"SUPERIOR-DBL","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].code.oneOf.0","typeLabel":"string"},{"type":"null","example":"SUPERIOR-DBL","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].code","typeLabel":"string | null"},"disabled":{"type":"boolean","description":"True when this room type is disabled for new bookings. Existing bookings keep their references to the room type. The code does not indicate availability.","example":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].disabled","typeLabel":"boolean"},"name":{"type":"string","description":"Single room type name, shared by all languages. Unaffected by Accept-Language. Empty string when no name is available.","example":"STANDARD 1/1 - IMP","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].name","typeLabel":"string"},"description":{"type":"object","description":"Localized description (Markdown).","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].description.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].description.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].description.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].description.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].description.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].description.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].description.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].description.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].description.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].description.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].description.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].description.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].description","typeLabel":"object"},"unitType":{"oneOf":[{"type":"object","required":["code","label"],"properties":{"code":{"type":"string","enum":["single","double_double","double_twin","double_either","triple","quad","family","suite","studio","apartment"],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.code","typeLabel":"enum\u003cstring>"},"label":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label.ru","typeLabel":"string | null"}},"description":"Localized field keyed by supported response locale (`cs-CZ`, `de`, `en`, `ru`). When `Accept-Language` is set, only the matched keys are returned.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0.label","typeLabel":"object"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.0","typeLabel":"object"},{"type":"null","required":["code","label"],"properties":{"code":{"type":"string","enum":["single","double_double","double_twin","double_either","triple","quad","family","suite","studio","apartment"]},"label":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"oneOf":[{"type":"string"},{"type":"null"}]},"de":{"oneOf":[{"type":"string"},{"type":"null"}]},"en":{"oneOf":[{"type":"string"},{"type":"null"}]},"ru":{"oneOf":[{"type":"string"},{"type":"null"}]}},"description":"Localized field keyed by supported response locale (`cs-CZ`, `de`, `en`, `ru`). When `Accept-Language` is set, only the matched keys are returned.","example":{"cs-CZ":"Český text","de":"Deutscher Text"}}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].unitType.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].unitType","typeLabel":"object | null"},"tier":{"oneOf":[{"type":"object","required":["code","label"],"properties":{"code":{"type":"string","enum":["economy","economy_plus","standard","standard_plus","komfort","komfort_plus","superior","deluxe"],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.code","typeLabel":"enum\u003cstring>"},"label":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label.ru","typeLabel":"string | null"}},"description":"Localized field keyed by supported response locale (`cs-CZ`, `de`, `en`, `ru`). When `Accept-Language` is set, only the matched keys are returned.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0.label","typeLabel":"object"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.0","typeLabel":"object"},{"type":"null","required":["code","label"],"properties":{"code":{"type":"string","enum":["economy","economy_plus","standard","standard_plus","komfort","komfort_plus","superior","deluxe"]},"label":{"type":"object","additionalProperties":false,"properties":{"cs-CZ":{"oneOf":[{"type":"string"},{"type":"null"}]},"de":{"oneOf":[{"type":"string"},{"type":"null"}]},"en":{"oneOf":[{"type":"string"},{"type":"null"}]},"ru":{"oneOf":[{"type":"string"},{"type":"null"}]}},"description":"Localized field keyed by supported response locale (`cs-CZ`, `de`, `en`, `ru`). When `Accept-Language` is set, only the matched keys are returned.","example":{"cs-CZ":"Český text","de":"Deutscher Text"}}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].tier.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].tier","typeLabel":"object | null"},"occupancy":{"type":"object","description":"Configured room occupancy details. Booking and pricing use standard occupancy; maximum capacity, single use and infant exclusion are informational settings.","required":["standard","max","singleUse","infantsExcluded"],"properties":{"standard":{"type":"integer","description":"Number of guests included in the room type's base price.","example":2,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.standard","typeLabel":"integer"},"max":{"oneOf":[{"type":"integer","description":"Configured maximum guest count, including extra beds. At least `standard` when present. Null when unspecified. Does not change booking capacity.","minimum":1,"example":3,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.max.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Configured maximum guest count, including extra beds. At least `standard` when present. Null when unspecified. Does not change booking capacity.","minimum":1,"example":3,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.max.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.max","typeLabel":"integer | null"},"singleUse":{"oneOf":[{"type":"boolean","description":"Whether sale to one guest is configured. Null when unspecified. Does not change booking acceptance or price.","example":true,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.singleUse.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Whether sale to one guest is configured. Null when unspecified. Does not change booking acceptance or price.","example":true,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.singleUse.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.singleUse","typeLabel":"boolean | null"},"infantsExcluded":{"oneOf":[{"type":"boolean","description":"Whether children aged 0–2 are configured to be excluded from the guest count. Null when unspecified. Does not change booking acceptance or price.","example":true,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.infantsExcluded.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Whether children aged 0–2 are configured to be excluded from the guest count. Null when unspecified. Does not change booking acceptance or price.","example":true,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.infantsExcluded.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy.infantsExcluded","typeLabel":"boolean | null"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].occupancy","typeLabel":"object"},"bedConfiguration":{"type":"array","items":{"type":"object","required":["code","count","label"],"properties":{"code":{"type":"string","enum":["single","double","king","superking","sofa","futon"],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"count":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].count","typeLabel":"integer"},"label":{"type":"object","description":"Singular localized bed label.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX].label","typeLabel":"object"}},"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration.items.[INDEX]","typeLabel":"object"},"description":"Positive bed counts in dictionary order. Empty when unspecified.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].bedConfiguration","typeLabel":"object[]"},"size":{"oneOf":[{"type":"object","description":"Floor area in square metres. A fixed area has equal min and max.","required":["min","max"],"properties":{"min":{"type":"number","exclusiveMinimum":true,"minimum":0,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].size.oneOf.0.min","typeLabel":"number"},"max":{"type":"number","exclusiveMinimum":true,"minimum":0,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].size.oneOf.0.max","typeLabel":"number"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].size.oneOf.0","typeLabel":"object"},{"type":"null","description":"Floor area in square metres. A fixed area has equal min and max.","required":["min","max"],"properties":{"min":{"type":"number","exclusiveMinimum":true,"minimum":0},"max":{"type":"number","exclusiveMinimum":true,"minimum":0}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].size.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].size","typeLabel":"object | null"},"renovationYear":{"oneOf":[{"type":"integer","description":"Renovation year, or null when missing or invalid (including more than five years in the future).","minimum":1800,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].renovationYear.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Renovation year, or null when missing or invalid (including more than five years in the future).","minimum":1800,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].renovationYear.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].renovationYear","typeLabel":"integer | null"},"rules":{"type":"object","required":["smokingAllowed","petsAllowed"],"properties":{"smokingAllowed":{"oneOf":[{"type":"boolean","description":"Null when unspecified.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules.smokingAllowed.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Null when unspecified.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules.smokingAllowed.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules.smokingAllowed","typeLabel":"boolean | null"},"petsAllowed":{"oneOf":[{"type":"boolean","description":"Effective pet rule. False unless the hotel allows pets; then the room rule applies, with null for an unspecified room rule.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules.petsAllowed.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Effective pet rule. False unless the hotel allows pets; then the room rule applies, with null for an unspecified room rule.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules.petsAllowed.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules.petsAllowed","typeLabel":"boolean | null"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].rules","typeLabel":"object"},"building":{"oneOf":[{"type":"object","description":"Assigned building, even for a hotel with one building. Null if unassigned or removed.","required":["id","name","label"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.id","typeLabel":"string"},"name":{"type":"object","description":"Short building name.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.name","typeLabel":"object"},"label":{"type":"object","description":"Descriptive building label.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0.label","typeLabel":"object"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.0","typeLabel":"object"},{"type":"null","description":"Assigned building, even for a hotel with one building. Null if unassigned or removed.","required":["id","name","label"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$"},"name":{"type":"object","description":"Short building name.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string"},{"type":"null"}]},"de":{"oneOf":[{"type":"string"},{"type":"null"}]},"en":{"oneOf":[{"type":"string"},{"type":"null"}]},"ru":{"oneOf":[{"type":"string"},{"type":"null"}]}},"additionalProperties":false},"label":{"type":"object","description":"Descriptive building label.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string"},{"type":"null"}]},"de":{"oneOf":[{"type":"string"},{"type":"null"}]},"en":{"oneOf":[{"type":"string"},{"type":"null"}]},"ru":{"oneOf":[{"type":"string"},{"type":"null"}]}},"additionalProperties":false}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].building.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].building","typeLabel":"object | null"},"amenityCategories":{"type":"array","description":"Amenities assigned to the room type, grouped by category. See [Assigned amenities](/api/amenities#assigned-amenities). Room benefits use the `inclusions` category; see [Included with this room](/api/amenities#included-with-this-room).","items":{"type":"object","description":"Room type amenities in dictionary order. Groups without assigned amenities are omitted.","required":["category","amenities"],"properties":{"category":{"type":"object","title":"Room type category","additionalProperties":false,"required":["code"],"description":"A category assigned to a room type. Resolve its `code` in the room type amenity dictionary or request `expand=amenityLabels`; see [Labels](/api/amenities#labels).","properties":{"code":{"type":"string","enum":["bathroom","equipment","accessibility","view","kitchen","inclusions"],"description":"Category code in the room type amenity dictionary.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.code","typeLabel":"enum\u003cstring>"},"label":{"type":"object","description":"Localized category label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category.label","typeLabel":"object"}},"example":{"code":"view"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].category","typeLabel":"Room type category · object"},"amenities":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["code"],"description":"A structured amenity assigned to a hotel or room type. Apart from `code` (and `label` with `expand=amenityLabels`), it contains only the fields of the detail kinds that the matching dictionary amenity declares. See [Detail kinds](/api/amenities#detail-kinds).","properties":{"code":{"type":"string","description":"References an `Amenity.code`.","example":"sauna","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].code","typeLabel":"string"},"label":{"type":"object","description":"Localized amenity label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].label","typeLabel":"object"},"proximity":{"oneOf":[{"type":"string","description":"Where the amenity is located relative to the hotel. Present when `detailKinds` includes [`proximity`](/api/amenities#proximity); null when not specified. `in-hotel` is inside the hotel building, `connecting` is an adjacent building linked by an internal passage, and `nearby` is a short distance away (see `proximityMeters`).","enum":["in-hotel","connecting","nearby",null],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].proximity.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Where the amenity is located relative to the hotel. Present when `detailKinds` includes [`proximity`](/api/amenities#proximity); null when not specified. `in-hotel` is inside the hotel building, `connecting` is an adjacent building linked by an internal passage, and `nearby` is a short distance away (see `proximityMeters`).","enum":["in-hotel","connecting","nearby",null],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].proximity.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].proximity","typeLabel":"enum\u003cstring> | null"},"proximityMeters":{"oneOf":[{"type":"number","description":"Present with `proximity`. Contains a distance when `proximity` is `nearby`; otherwise null.","maximum":1000000,"minimum":0,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].proximityMeters.oneOf.0","typeLabel":"number"},{"type":"null","description":"Present with `proximity`. Contains a distance when `proximity` is `nearby`; otherwise null.","maximum":1000000,"minimum":0,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].proximityMeters.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].proximityMeters","typeLabel":"number | null"},"pricing":{"oneOf":[{"type":"object","description":"Present when the dictionary declares [pricing](/api/amenities#pricing). Null means unknown. Otherwise read type and schedule.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing).","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.type","typeLabel":"enum\u003cstring>"},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.0","typeLabel":"string"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.0","typeLabel":"string"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to","typeLabel":"string | null"}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0.schedule","typeLabel":"object[] | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.0","typeLabel":"object"},{"type":"null","description":"Present when the dictionary declares [pricing](/api/amenities#pricing). Null means unknown. Otherwise read type and schedule.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing)."},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"}]},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"}]}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]}},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1}]}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].pricing","typeLabel":"object | null"},"coverage":{"type":"string","enum":["all","some"],"description":"Whether the amenity is available in all physical rooms of this room type or only some. Present only when the dictionary declares [coverage](/api/amenities#coverage). `all` means every room; `some` means only some rooms. Defaults to `all` when unspecified and is never null. Omitted on hotel amenities.","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].coverage","typeLabel":"enum\u003cstring>"},"options":{"type":"array","description":"Amenity-specific choices selected for this hotel or room type. Each option contains `code` by default and also `label` with `expand=amenityLabels`. Present when `detailKinds` includes [`options`](/api/amenities#options). Empty when the amenity supports choices but none are selected. Labels are also available in the dictionary.","items":{"type":"object","required":["code"],"description":"A selected amenity option on a hotel or room type response. Identified by `code`; its localized `label` is included only with `expand=amenityLabels`. Otherwise resolve the label against the amenity's `options` in the [amenity dictionary](/api/amenities).","properties":{"code":{"type":"string","description":"References an option `code` from the dictionary.","example":"finnish","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].code","typeLabel":"string"},"label":{"type":"object","description":"Localized option label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX].label","typeLabel":"object"}},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options.items.[INDEX]","typeLabel":"object"},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].options","typeLabel":"object[]"},"openingHours":{"oneOf":[{"type":"object","description":"Present when `detailKinds` includes [`opening_hours`](/api/amenities#opening-hours). Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].from","typeLabel":"string"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].to","typeLabel":"string"}},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0.schedule","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.0","typeLabel":"object"},{"type":"null","description":"Present when `detailKinds` includes [`opening_hours`](/api/amenities#opening-hours). Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00"}}}}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].openingHours","typeLabel":"object | null"},"note":{"type":"object","description":"Present when `detailKinds` includes [`note`](/api/amenities#note). Localized supplementary information for guests. Locale values are at most 200 characters and are null when the requested translation is not available.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].note","typeLabel":"object"},"includes":{"type":"array","description":"Aquapark facilities with resolved pricing, hours, location and note. Present when the dictionary declares [includes](/api/amenities#includes). Empty when no facilities are specified. Children are not duplicated among the hotel's own amenities and cannot contain further includes.","items":{"type":"object","additionalProperties":false,"required":["code","proximity","proximityMeters","pricing","openingHours","note"],"description":"One aquapark facility. Values already include inherited conditions; clients do not resolve inheritance. Only `sauna` returns `options`.","properties":{"code":{"type":"string","enum":["indoor_pool","outdoor_pool","children_pool","whirlpool","sauna"],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"proximity":{"oneOf":[{"type":"string","description":"Location, inherited from the aquapark; see `proximity` of the amenity value.","enum":["in-hotel","connecting","nearby",null],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximity.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Location, inherited from the aquapark; see `proximity` of the amenity value.","enum":["in-hotel","connecting","nearby",null],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximity","typeLabel":"enum\u003cstring> | null"},"proximityMeters":{"oneOf":[{"type":"number","description":"Distance inherited from the aquapark; a number only when `proximity` is `nearby`.","maximum":1000000,"minimum":0,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximityMeters.oneOf.0","typeLabel":"number"},{"type":"null","description":"Distance inherited from the aquapark; a number only when `proximity` is `nearby`.","maximum":1000000,"minimum":0,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximityMeters.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].proximityMeters","typeLabel":"number | null"},"pricing":{"oneOf":[{"type":"object","description":"Resolved price conditions of the facility. Null means unknown.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing).","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.type","typeLabel":"enum\u003cstring>"},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.0","typeLabel":"string"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].from","typeLabel":"string | null"},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.0","typeLabel":"string"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX].to","typeLabel":"string | null"}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0.schedule","typeLabel":"object[] | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.0","typeLabel":"object"},{"type":"null","description":"Resolved price conditions of the facility. Null means unknown.","required":["type","schedule"],"properties":{"type":{"type":"string","enum":["included","included_scheduled","included_conditional","paid"],"description":"Conditional inclusion is described in the amenity's localized note. See [Pricing](/api/amenities#pricing)."},"schedule":{"oneOf":[{"type":"array","items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"Days on which entry is included, with an optional time window. Both times are set, or both are null when entry is included throughout the opening hours of these days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"oneOf":[{"type":"string","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"},{"type":"null","description":"Start time in the 24-hour HH:mm format, or null for the whole opening day.","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","example":"09:00"}]},"to":{"oneOf":[{"type":"string","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"},{"type":"null","description":"End time, later than from; 24:00 is the end of the listed day. Null together with from.","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","example":"21:00"}]}},"not":{"anyOf":[{"type":"object","required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string","nullable":true,"enum":[null]}}},{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","nullable":true,"enum":[null]},"to":{"type":"string"}}}]}},"description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1},{"type":"null","description":"Days and times when entry is included; an array only for `included_scheduled`.","minItems":1}]}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].pricing","typeLabel":"object | null"},"openingHours":{"oneOf":[{"type":"object","description":"Resolved opening hours of the facility. Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].days","typeLabel":"enum\u003cstring>[]"},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].from","typeLabel":"string"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX].to","typeLabel":"string"}},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0.schedule","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.0","typeLabel":"object"},{"type":"null","description":"Resolved opening hours of the facility. Null when unknown.","required":["schedule"],"properties":{"schedule":{"type":"array","minItems":1,"items":{"type":"object","additionalProperties":false,"required":["days","from","to"],"description":"A weekly interval in hotel local time. Intervals sharing a day do not overlap. A range crossing midnight uses two blocks on successive days.","properties":{"days":{"type":"array","minItems":1,"uniqueItems":true,"description":"Weekdays in Monday-to-Sunday order.","items":{"type":"string","enum":["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]}},"from":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","description":"Start time in the 24-hour HH:mm format.","example":"09:00"},"to":{"type":"string","pattern":"^(([01]\\d|2[0-3]):[0-5]\\d|24:00)$","description":"End time, later than from. 24:00 is the end of the listed day.","example":"21:00"}}}}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].openingHours","typeLabel":"object | null"},"note":{"type":"object","description":"The facility's own note, or the aquapark's note when the facility has none. A missing translation is null.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].note","typeLabel":"object"},"label":{"type":"object","description":"Localized facility label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].label","typeLabel":"object"},"options":{"type":"array","description":"Selected sauna types. Present only for `sauna`; empty when none are selected.","items":{"type":"object","required":["code"],"description":"A selected amenity option on a hotel or room type response. Identified by `code`; its localized `label` is included only with `expand=amenityLabels`. Otherwise resolve the label against the amenity's `options` in the [amenity dictionary](/api/amenities).","properties":{"code":{"type":"string","description":"References an option `code` from the dictionary.","example":"finnish","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].code","typeLabel":"string"},"label":{"type":"object","description":"Localized option label. Present only with `expand=amenityLabels`.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label.ru","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX].label","typeLabel":"object"}},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options.items.[INDEX]","typeLabel":"object"},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX].options","typeLabel":"object[]"}},"not":{"anyOf":[{"type":"object","required":["code"],"properties":{"code":{"enum":["sauna"]}},"not":{"required":["options"],"properties":{"options":{}}}},{"type":"object","required":["code","options"],"properties":{"code":{"enum":["indoor_pool","outdoor_pool","children_pool","whirlpool"]},"options":{}}}]},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes.items.[INDEX]","typeLabel":"object"},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX].includes","typeLabel":"object[]"}},"example":{"code":"aquapark","proximity":"nearby","proximityMeters":250,"pricing":{"type":"included","schedule":null},"openingHours":{"schedule":[{"days":["monday","tuesday","wednesday"],"from":"09:00","to":"21:00"}]},"note":{"en":null},"includes":[]},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX].amenities","typeLabel":"object[]"}},"uniqueKey":"roomTypes.items.[INDEX].amenityCategories.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].amenityCategories","typeLabel":"object[]"},"images":{"type":"array","items":{"type":"object","required":["url","width","height","alt","variants"],"properties":{"url":{"type":"string","description":"Original image URL. Use it for a full-size view and as the final fallback.","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].url","typeLabel":"string"},"width":{"oneOf":[{"type":"integer","description":"Original display width in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].width.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Original display width in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].width.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].width","typeLabel":"integer | null"},"height":{"oneOf":[{"type":"integer","description":"Original display height in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].height.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Original display height in pixels after orientation, or null when dimensions are unavailable.","minimum":1,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].height.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].height","typeLabel":"integer | null"},"alt":{"type":"object","description":"Localized alternative text. A missing translation falls back to the name of the hotel, room type, or visit type the image belongs to, or null if that name is unavailable. An empty string is intentional decorative text; preserve it.","example":{"cs-CZ":"Český text","de":"Deutscher Text"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.de.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.en.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.ru.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].alt","typeLabel":"object"},"variants":{"type":"object","additionalProperties":false,"description":"Available WebP images by pixel width. No image is enlarged, so larger sizes can be absent. An original narrower than 480 pixels has no variants. Unavailable variants are represented by an empty object; in that case dimensions can also be null. Use the returned URLs as-is and omit srcset when the object is empty.","properties":{"w480":{"type":"string","format":"uri","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].variants.w480","typeLabel":"string\u003curi>"},"w960":{"type":"string","format":"uri","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].variants.w960","typeLabel":"string\u003curi>"},"w1440":{"type":"string","format":"uri","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].variants.w1440","typeLabel":"string\u003curi>"},"w1920":{"type":"string","format":"uri","uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].variants.w1920","typeLabel":"string\u003curi>"}},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX].variants","typeLabel":"object"}},"uniqueKey":"roomTypes.items.[INDEX].images.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].images","typeLabel":"object[]"},"hotel":{"type":"object","description":"Embedded only when `expand=hotel`.","required":["id","name","stars"],"properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{24}$","example":"66f16191f739705faa020001","isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].hotel.id","typeLabel":"string"},"name":{"type":"object","description":"Localized hotel name, with the same Czech fallback as the hotel's `name`.","example":{"cs-CZ":"Pawlik","de":"Pawlik-Aquaforum"},"properties":{"cs-CZ":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.cs-CZ.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.cs-CZ.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].hotel.name.cs-CZ","typeLabel":"string | null"},"de":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.de.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.de.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].hotel.name.de","typeLabel":"string | null"},"en":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.en.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.en.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].hotel.name.en","typeLabel":"string | null"},"ru":{"oneOf":[{"type":"string","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.ru.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"uniqueKey":"roomTypes.items.[INDEX].hotel.name.ru.oneOf.1","typeLabel":"null"}],"uniqueKey":"roomTypes.items.[INDEX].hotel.name.ru","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].hotel.name","typeLabel":"object"},"stars":{"oneOf":[{"type":"integer","maximum":5,"minimum":1,"example":4,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].hotel.stars.oneOf.0","typeLabel":"integer"},{"type":"null","maximum":5,"minimum":1,"example":4,"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].hotel.stars.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"roomTypes.items.[INDEX].hotel.stars","typeLabel":"integer | null"}},"uniqueKey":"roomTypes.items.[INDEX].hotel","typeLabel":"object"}},"example":{"id":"66f16191f739705faa020003","hotelId":"66f16191f739705faa020001","code":"2_APARTMA","disabled":false,"name":"STANDARD 1/2 - BEL","description":{"cs-CZ":"**Světlý pokoj** v prvním patře.\n\n- výhled do parku","de":null,"en":null,"ru":null},"unitType":{"code":"double_twin","label":{"cs-CZ":"Dvoulůžkový pokoj s oddělenými postelemi","de":"Zweibettzimmer","en":"Twin room","ru":"Двухместный номер с раздельными кроватями"}},"tier":{"code":"komfort","label":{"cs-CZ":"Komfort","de":"Komfort","en":"Komfort","ru":"Komfort"}},"occupancy":{"standard":2,"max":3,"singleUse":true,"infantsExcluded":true},"bedConfiguration":[{"code":"single","count":2,"label":{"cs-CZ":"Samostatná postel","de":"Einzelbett","en":"Single bed","ru":"Односпальная кровать"}}],"size":{"min":26,"max":30},"renovationYear":2023,"rules":{"smokingAllowed":false,"petsAllowed":true},"building":{"id":"66f16191f739705faa0200b2","name":{"cs-CZ":"Villa Anna","de":"Villa Anna","en":null,"ru":null},"label":{"cs-CZ":"Villa Anna — krytou chodbou, 60 m","de":null,"en":null,"ru":null}},"amenityCategories":[{"category":{"code":"bathroom"},"amenities":[{"code":"toilet"},{"code":"shower","coverage":"all"}]},{"category":{"code":"view"},"amenities":[{"code":"balcony","coverage":"all"}]},{"category":{"code":"inclusions"},"amenities":[{"code":"parking","pricing":{"type":"included","schedule":null}},{"code":"welcome_drink"},{"code":"fruit_bowl"}]}],"images":[{"url":"https://cdn.example.com/rooms/superior.jpg","width":1100,"height":733,"alt":{"cs-CZ":"STANDARD 1/2 - BEL","en":"STANDARD 1/2 - BEL"},"variants":{"w480":"https://cdn.example.com/rooms/superior/generation-1/w480.webp","w960":"https://cdn.example.com/rooms/superior/generation-1/w960.webp"}}]},"uniqueKey":"roomTypes.items.[INDEX]","typeLabel":"object"},"uniqueKey":"roomTypes","typeLabel":"object[]"}},"example":{"title":"Example","value":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"},"shortDescription":{"cs-CZ":"Lázeňský hotel s vlastním balneoprovozem a přímým vstupem do aquaparku.","de":"Kurhotel mit eigener Balneoabteilung und direktem Zugang zum Aquapark."},"channelContent":{"tagline":{"cs-CZ":"Lázeňská péče pod jednou střechou","de":"Kurbehandlungen unter einem Dach"}},"stars":4,"address":{"addressLine":"Národní 25","city":"Františkovy Lázně","postalCode":"351 01","country":"cze"},"email":"hotel@example.com","phoneNumber":"+420 123 456 789","url":"https://hotel.example.com","images":[{"url":"https://files.example.com/hotel.jpg","width":2400,"height":1600,"alt":{"cs-CZ":"Pohled na hotel","de":"Außenansicht des Hotels"},"variants":{"w480":"https://files.example.com/hotel/generation-1/w480.webp","w960":"https://files.example.com/hotel/generation-1/w960.webp","w1440":"https://files.example.com/hotel/generation-1/w1440.webp","w1920":"https://files.example.com/hotel/generation-1/w1920.webp"}}],"buildings":[{"id":"6720c0a1b2c3d4e5f6a7cb01","name":{"cs-CZ":"Villa Anna","de":"Villa Anna"},"label":{"cs-CZ":"Villa Anna — krytou chodbou, 60 m","de":null}}],"accommodationRules":{"checkIn":{"from":"14:00","to":"20:00"},"checkOut":{"from":"07:00","to":"10:00"},"children":{"allowed":true,"minimumAge":6},"pets":{"allowed":true,"minimumNights":2,"feePerNight":{"czk":500,"eur":20},"conditions":{"cs-CZ":"Mazlíčci jsou povoleni ve vybraných pokojích.","de":"Haustiere sind in ausgewählten Zimmern erlaubt."}}},"mealServices":{"breakfast":{"enabled":true,"servingTime":{"from":"07:00","to":"10:00"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Nealkoholické nápoje jsou v ceně.","de":"Alkoholfreie Getränke sind inklusive."}},"lunch":{"enabled":true,"servingTime":{"from":"11:30","to":"14:30"},"serviceMethod":"buffet","drinksIncluded":true,"drinksNote":{"cs-CZ":"Voda je zahrnuta v ceně oběda.","de":"Wasser ist im Mittagessen inbegriffen."}},"dinner":{"enabled":true,"servingTime":{"from":"18:00","to":"21:00"},"serviceMethod":"served","drinksIncluded":false,"drinksNote":{"cs-CZ":"Nápoje se hradí samostatně.","de":"Getränke werden separat berechnet."}}},"indications":["musculoskeletal","cardiovascular","diabetes"],"procedures":[{"code":"carbon_dioxide_bath","label":{"cs-CZ":"Kysličníková koupel","de":"Kohlensäurebad"},"category":{"code":"hydrotherapy","label":{"cs-CZ":"Vodoléčba","de":"Hydrotherapie"}},"naturalSource":"carbon_dioxide"},{"code":"peat_wrap","label":{"cs-CZ":"Rašelinový zábal","de":"Moorpackung"},"category":{"code":"thermotherapy","label":{"cs-CZ":"Teploléčba","de":"Thermotherapie"}},"naturalSource":"peat"},{"code":"peat_bath","label":{"cs-CZ":"Rašelinová koupel","de":"Moorbad"},"category":{"code":"thermotherapy","label":{"cs-CZ":"Teploléčba","de":"Thermotherapie"}},"naturalSource":"peat"},{"code":"classic_full_body_massage","label":{"cs-CZ":"Klasická celková masáž","de":"Klassische Ganzkörpermassage"},"category":{"code":"physiotherapy","label":{"cs-CZ":"Fyzioterapie","de":"Physiotherapie"}},"naturalSource":null},{"code":"aroma_massage","label":{"cs-CZ":"Aromamasáž","de":"Aromamassage"},"category":{"code":"physiotherapy","label":{"cs-CZ":"Fyzioterapie","de":"Physiotherapie"}},"naturalSource":null},{"code":"inhalation","label":{"cs-CZ":"Inhalace","de":"Inhalationen"},"category":{"code":"inhalation","label":{"cs-CZ":"Inhalace","de":"Inhalation"}},"naturalSource":null},{"code":"drinking_cure","label":{"cs-CZ":"Pitná kúra","de":"Trinkkur"},"category":{"code":"other","label":{"cs-CZ":"Ostatní","de":"Sonstiges"}},"naturalSource":"mineral_water"}],"staffLanguages":["cs","de","en"],"amenityCategories":[{"category":{"code":"wellness"},"amenities":[{"code":"aquapark","proximity":"nearby","proximityMeters":250,"pricing":{"type":"included","schedule":null},"openingHours":{"schedule":[{"days":["monday","tuesday","wednesday","thursday","friday"],"from":"09:00","to":"21:00"}]},"note":{"cs-CZ":null,"de":null},"includes":[]},{"code":"sauna","proximity":"in-hotel","proximityMeters":null,"pricing":{"type":"included","schedule":null},"options":[{"code":"finnish"},{"code":"steam"}],"openingHours":{"schedule":[{"days":["monday","tuesday","wednesday","thursday","friday"],"from":"09:00","to":"21:00"}]},"note":{"cs-CZ":null,"de":null}}]},{"category":{"code":"parking"},"amenities":[{"code":"parking","pricing":{"type":"paid","schedule":null},"options":[{"code":"covered"},{"code":"guarded"}],"note":{"cs-CZ":"Hlídané parkoviště je přímo u hotelu.","de":"Der bewachte Parkplatz befindet sich direkt am Hotel."}}]}],"priceFrom":{"CZK":{"all":{"perPersonPerNight":{"amount":{"amountMinor":144000,"currency":"CZK","currencyExponent":2},"original":{"amountMinor":160000,"currency":"CZK","currencyExponent":2},"nights":7,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"perStay":{"amount":{"amountMinor":840000,"currency":"CZK","currencyExponent":2},"original":null,"nights":2,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b803","name":{"cs-CZ":"Relaxační wellness pobyt","de":"Wellness-Erholungsaufenthalt"}}}},"health":{"perPersonPerNight":{"amount":{"amountMinor":144000,"currency":"CZK","currencyExponent":2},"original":{"amountMinor":160000,"currency":"CZK","currencyExponent":2},"nights":7,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"perStay":{"amount":{"amountMinor":1260000,"currency":"CZK","currencyExponent":2},"original":{"amountMinor":1400000,"currency":"CZK","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}}},"wellness":{"perPersonPerNight":{"amount":{"amountMinor":210000,"currency":"CZK","currencyExponent":2},"original":null,"nights":2,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b803","name":{"cs-CZ":"Relaxační wellness pobyt","de":"Wellness-Erholungsaufenthalt"}}},"perStay":{"amount":{"amountMinor":840000,"currency":"CZK","currencyExponent":2},"original":null,"nights":2,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b803","name":{"cs-CZ":"Relaxační wellness pobyt","de":"Wellness-Erholungsaufenthalt"}}}}},"EUR":{"all":{"perPersonPerNight":{"amount":{"amountMinor":5760,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":6400,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"perStay":{"amount":{"amountMinor":33600,"currency":"EUR","currencyExponent":2},"original":null,"nights":2,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b803","name":{"cs-CZ":"Relaxační wellness pobyt","de":"Wellness-Erholungsaufenthalt"}}}},"health":{"perPersonPerNight":{"amount":{"amountMinor":5760,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":6400,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}},"perStay":{"amount":{"amountMinor":50400,"currency":"EUR","currencyExponent":2},"original":{"amountMinor":56000,"currency":"EUR","currencyExponent":2},"nights":7,"occupancy":1,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b801","name":{"cs-CZ":"Klasická lázeňská léčba","de":"Klassische Kur"}}}},"wellness":{"perPersonPerNight":{"amount":{"amountMinor":8400,"currency":"EUR","currencyExponent":2},"original":null,"nights":2,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b803","name":{"cs-CZ":"Relaxační wellness pobyt","de":"Wellness-Erholungsaufenthalt"}}},"perStay":{"amount":{"amountMinor":33600,"currency":"EUR","currencyExponent":2},"original":null,"nights":2,"occupancy":2,"hotel":{"id":"6720c0a1b2c3d4e5f6a7c101","name":{"cs-CZ":"Hotel Pramen","de":"Hotel Pramen"}},"visitType":{"id":"6720c0a1b2c3d4e5f6a7b803","name":{"cs-CZ":"Relaxační wellness pobyt","de":"Wellness-Erholungsaufenthalt"}}}}}}}},"uniqueKey":"","typeLabel":"object"},"originalFileLocation":"api/v2/openapi.yaml"},"subdomain":"spabooking","siteName":"SpaPortal Docs","title":"Hotel - SpaPortal Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-30T17:05:09.766Z","originalFileLocation":"api/objects/hotel.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"A spa or wellness property and its structured guest profile.\">\u003cmeta data-mint-head name=\"application-name\" content=\"SpaPortal Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Hotel - SpaPortal Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"A spa or wellness property and its structured guest profile.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"SpaPortal Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.spaportal.cz/api/objects/hotel\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://spabooking.mintlify.site/_mintlify/api/og/v2?division=Objects\u0026amp;title=Hotel\u0026amp;description=A+spa+or+wellness+property+and+its+structured+guest+profile.\u0026amp;theme=c449e4c5bfadb6d592bceac4\u0026amp;signature=f2f5ddc4a23b609f0e801c389f0164bd006262d7f3e081a958412621a763fc1b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Hotel - SpaPortal Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"A spa or wellness property and its structured guest profile.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://spabooking.mintlify.site/_mintlify/api/og/v2?division=Objects\u0026amp;title=Hotel\u0026amp;description=A+spa+or+wellness+property+and+its+structured+guest+profile.\u0026amp;theme=c449e4c5bfadb6d592bceac4\u0026amp;signature=f2f5ddc4a23b609f0e801c389f0164bd006262d7f3e081a958412621a763fc1b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/spabooking/3ILofRrE8iwd8KIp/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"SpaPortal Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3585BA\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.spaportal.cz/api/objects/hotel\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/objects/hotel.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.spaportal.cz/#organization\",\"name\":\"SpaPortal Docs\",\"url\":\"https://docs.spaportal.cz\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/spabooking/Bibq090v9MI8jPV2/logo/light.svg?fit=max\u0026auto=format\u0026n=Bibq090v9MI8jPV2\u0026q=85\u0026s=c50b2546b29ce5fb747f06c3c0a287e8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.spaportal.cz#website\",\"name\":\"SpaPortal Docs\",\"url\":\"https://docs.spaportal.cz\",\"publisher\":{\"@id\":\"https://docs.spaportal.cz/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.spaportal.cz/api/objects/hotel#webpage\",\"url\":\"https://docs.spaportal.cz/api/objects/hotel\",\"name\":\"Hotel\",\"description\":\"A spa or wellness property and its structured guest profile.\",\"dateModified\":\"2026-10-30T17:05:09.766Z\",\"isPartOf\":{\"@id\":\"https://docs.spaportal.cz#website\"},\"breadcrumb\":{\"@id\":\"https://docs.spaportal.cz/api/objects/hotel#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.spaportal.cz/api/objects/hotel#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"SpaPortal Docs\",\"item\":\"https://docs.spaportal.cz\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hotel\",\"item\":\"https://docs.spaportal.cz/api/objects/hotel\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.spaportal.cz/api/objects/hotel#apireference\",\"headline\":\"Hotel\",\"name\":\"Hotel\",\"description\":\"A spa or wellness property and its structured guest profile.\",\"url\":\"https://docs.spaportal.cz/api/objects/hotel\",\"mainEntityOfPage\":{\"@id\":\"https://docs.spaportal.cz/api/objects/hotel#webpage\"},\"dateModified\":\"2026-10-30T17:05:09.766Z\",\"publisher\":{\"@id\":\"https://docs.spaportal.cz/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.spaportal.cz#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"SpaPortal Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"SpaPortal Docs","nav":{"global":null,"tabs":[{"tab":"Introduction","pages":[{"title":"Introduction","href":"/spaportal"}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides"}]},{"tab":"API reference","groups":[{"group":"SpaPortal API","pages":[{"title":"Introduction","icon":"microphone","href":"/api"},{"title":"Authentication","icon":"key","href":"/api/authentication"},{"title":"Dates","icon":"calendar-days","href":"/api/dates"},{"title":"Currencies","icon":"coins","href":"/api/currencies"},{"title":"Prices","icon":"tag","href":"/api/prices"},{"title":"Images","icon":"image","href":"/api/images"},{"title":"Localization","icon":"language","href":"/api/localization"},{"title":"Pagination","icon":"list-ol","href":"/api/pagination"},{"title":"Search","icon":"magnifying-glass","href":"/api/search"},{"title":"Sorting","icon":"arrow-up-arrow-down","href":"/api/sorting"},{"title":"Expand","icon":"layer-group","href":"/api/expand"},{"title":"Amenities","icon":"list-check","href":"/api/amenities"},{"title":"Visit types","icon":"suitcase","href":"/api/visit-types"},{"title":"Treatment","icon":"stethoscope","href":"/api/treatment"},{"title":"Status Codes","icon":"input-numeric","href":"/api/status-codes"},{"title":"Errors","icon":"bone-break","href":"/api/errors"},{"title":"Versioning","icon":"code-branch","description":null,"href":"/api/versioning"},{"title":"API v2 changelog","description":"Public changes to SpaPortal API v2.","icon":"clock-rotate-left","hidden":true,"href":"/api/changelog"}]},{"group":"Objects","pages":[{"title":"Hotel","href":"/api/objects/hotel"},{"title":"Room type","description":"A category of accommodation within a hotel, with occupancy, beds, rules, and amenities.","href":"/api/objects/room-type"},{"title":"Visit type","href":"/api/objects/visit-type"},{"title":"Treatment","href":"/api/objects/treatment"},{"title":"Procedure","href":"/api/objects/procedure"},{"title":"Price from","href":"/api/objects/price-from"},{"title":"Price period","href":"/api/objects/price-from-period"},{"title":"Promotion","href":"/api/objects/promotion"},{"title":"Amenity category","href":"/api/objects/amenity-category"},{"title":"Amenity","href":"/api/objects/amenity"},{"title":"Amenity value","href":"/api/objects/amenity-value"},{"title":"Localized string","href":"/api/objects/localized-string"}]},{"group":"Endpoints","pages":[{"group":"Amenity categories","pages":[{"title":"List the amenity dictionary","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /amenity-categories","href":"/api/v2/reference/amenity-categories/list-the-amenity-dictionary"}]},{"group":"Hotels","pages":[{"title":"List hotels","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /hotels","href":"/api/v2/reference/hotels/list-hotels"},{"title":"Get a hotel","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /hotels/{hotelId}","href":"/api/v2/reference/hotels/get-a-hotel"}]},{"group":"Room types","pages":[{"title":"List room types","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /room-types","href":"/api/v2/reference/room-types/list-room-types"},{"title":"Get a room type","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /room-types/{roomTypeId}","href":"/api/v2/reference/room-types/get-a-room-type"}]},{"group":"Visit types","pages":[{"title":"List visit types","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /visit-types","href":"/api/v2/reference/visit-types/list-visit-types"},{"title":"Get a visit type","deprecated":null,"version":null,"openapi":"/api/v2/openapi.yaml get /visit-types/{visitTypeId}","href":"/api/v2/reference/visit-types/get-a-visit-type"}]}]}]},{"tab":"API v1","hidden":true,"pages":[{"title":"API v1","href":"/api/v1"}]}]},"basePath":"","title":"Hotel - SpaPortal Docs","buildId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","deploymentId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-i2a3QZ8E.js","utils-ChLwp8m0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DRktVTDc.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CA2pEs4T.js","snippetPresets-ClQ6XrKD.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Ct_Lv36y.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-Cn2PYw9e.js","shallow-rkyymjXQ.js","getApiPlaygroundDisplay-BB9vkXtE.js","CodeSnippet-Bm5RU7m1.js","CodeSnippets-BgU9Deuz.js","Page-BUDYNlhG.js","getPastedJson-BD-6NNum.js","icon-8Z6tud2e.js","MethodPill-Tuzr4g3V.js","DuplicateIcon-0ceWFYhN.js","createIcon-FBXow_ST.js","DynamicMarkdown-CD8713Yy.js","SectionHeading-7zgzQbH-.js","axios-vUo_bRtp.js","Markdown-D7Ofw1oz.js","clsx-eKJ4rcii.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CwjSCXIK.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-9EK5IAXV.js"]}