Skip to main content
A visit type is a stay package sold by one or more hotels. Its availability, stay rules, and prices are independent: an available package can have no permitted stay in your dates, and a permitted stay can have no price. Building package pages walks through a typical integration.

Publication and availability

The catalog contains the packages of the companies your public key is scoped to. It contains only published packages, meaning packages whose required configuration is complete. An unpublished package is omitted from the list, and its detail returns 404 like an unknown or inaccessible package. A published package can still be unavailable. unavailableReason gives the first applicable reason from the availability table. Availability is evaluated for today’s date in Europe/Prague and can change at midnight. The list returns available packages by default; the detail also returns an unavailable package. Availability does not promise a price or a free room on a particular date. A permitted arrival with no free room still satisfies the catalog date filters. priceFrom also needs a nightly price and a free room for every night; see Prices.

Testing a stay against its rules

A stay with arrival a, nights nights, and checkout c is permitted when:
  1. nights fits stayLength. A week-based package requires a whole number of seven-night weeks.
  2. a satisfies arrival: it falls on a permitted weekday, or it is one of the permitted dates.
  3. When validity is an array, at least one period permits the stay on its own: a lies within the period, and for a departure-limited period c is on or before to.
Overlapping periods are alternatives: one matching period is enough, and the limits of two periods never combine. A validity of null imposes no date restriction; [] permits no stay. For example, the period 2026-11-01 to 2027-03-31 with toAppliesTo: "departure" permits a seven-night stay from Saturday 20 March to 27 March 2027. A stay from Saturday 27 March to 3 April does not fit it, even when an April period exists. An overlapping arrival-limited period that contains 27 March would permit that stay. The list filters nights, arrivalFrom, and arrivalTo apply these rules. Without an arrival window, nights checks only the stay length. With a window, the package must permit a stay that arrives inside the window from today onward, of nights nights or of its shortest length when nights is omitted. The filters check neither prices nor room capacity, and they do not recalculate priceFrom for the requested stay: a package matching nights=14 can still report a seven-night minimum.

Hotels and prices

hotelListings says where the package is sold; a listing stays present when its price is null. Prices explains the package price and the price of each listing. With expand=priceFromPeriods, the detail also returns price periods: the package’s prices by date, including past dates. Periods do not check free rooms or permitted arrival days.