Flat files
The Flat files API lets you pull HX's product catalogue as files and keep a local copy in sync, instead of calling the booking API for every lookup. Two generations are available:
- V3 — the current generation. Voyages, ships, and ports served as plain JSON over simple
GETendpoints, scoped per market and regenerated daily. Request just the dataset you need, no archive to unpack.Note: V3 does not include land programme itineraries or pre/post-cruise day schedules. For full tour content, use V1 with
includeSwota=true. - V1 — the original offering. A single downloadable ZIP archive containing the full inventory: sailings, ships, cabin grades, excursions, ports, pricing, and itineraries.
Which should I use?
Tip
For new integrations we recommend starting with V3 — it's the current generation and simpler to consume. V1 remains fully supported for existing integrations.
Both authenticate with the same Auth0 flow — see each guide for the specifics.
Choosing by use case
| I need to… | Use | Notes |
|---|---|---|
| Display available voyages with pricing | V3 /voyages |
Regenerated daily; includes cabin grades and per-occupancy rates |
| Display the voyage day-by-day schedule (port calls, sea days) | V3 /voyages → itinerary array |
Sailing segment only |
| Display the full tour day-by-day itinerary (including land days) | V1 with includeSwota=true → PackageItinerary_seaware.json |
Covers pre/post land programme days as well as the sailing |
| Look up ship specifications and cabin details | V3 /ships |
Static reference data |
| Look up port names and country codes | V3 /locations |
Static reference data |
| Access excursion data | V1 → excursion.json |
Not available in V3 |
Note
The most common source of confusion: V3's itinerary array and V1's PackageItinerary both use the word "itinerary," but they contain different things. If a partner is reporting that their itinerary is missing land days, they are reading from V3 and need to switch to PackageItinerary_seaware.json in V1.