Cruise API
One cruise API for travel apps, AI agents, and bulk data sync. Cruise API gives developers daily-updated cruise pricing, itineraries, ship details, ports, destinations, and reference metadata across major mainstream and premium cruise lines serving the U.S. market. Use it to build cruise search and comparison experiences, power AI travel assistants, enrich internal analytics, or synchronize…
Cruise API endpoints
| Method | Endpoint | Description |
|---|---|---|
| Search & Discovery | ||
| POST |
searchCruisesAdvanced /cruises/advanced-search |
Retrieves cruises using a comprehensive set of structured filters. Best for precise search forms, MCP/tool calls, and applications that already know exact cruise line, ship,… |
| GET |
streamCruisesByCruiseLine /cruises/stream |
Streams all available cruise records for a *single* cruise line as newline-delimited JSON (NDJSON/JSONL). Best for bulk data synchronization, offline indexing, and… |
| POST |
searchCruisesAi /cruises/ai-search |
Retrieves cruises using a natural-language query. Use this endpoint for vague travel preferences, exclusions, and preference-heavy search such as "Alaska cruises next summer but… |
| POST |
searchCruises /cruises/search |
Retrieves cruises using a simplified set of structured filters. Best for basic search interfaces, quick lookups, and lower-cost MCP/tool calls where the caller already knows a… |
| Ship & Fleet Details | ||
| GET |
getShips /ships |
Retrieves a basic list of all ships that have available cruises. This is best for quickly populating a simple search filter or list. If you need more detailed information about… |
| GET |
getShipsDetailed /ships-detailed |
Retrieves a detailed list of all ships, including rich data like passenger capacity, tonnage, and year built. This is the preferred endpoint when a user asks for specific details… |
| Geographic Reference | ||
| GET |
getPortsDetailed /ports-detailed |
Retrieves a detailed list of all ports with rich data, including time zone and geographic coordinates. This is the preferred endpoint when specific details about a port are… |
| GET |
getDestinations /destinations |
Retrieves a list of all destinations that have available cruises in the database. This is useful for populating search filters. |
| GET |
getPorts /ports |
Retrieves a list of all ports that have available cruises. This is useful for populating search filters. If you need detailed information like coordinates or time zone, use the… |
| GET |
getCountries /countries |
Retrieves a list of all countries that have available cruises in the database. This is useful for populating search filters. |
| Cruise Line Reference | ||
| GET |
getCruiseTypes /cruise-types |
Retrieves a list of all cruise types that have available cruises in the database. |
| GET |
getCruiseLines /cruise-lines |
Retrieves a list of all cruise lines that have available cruises in the database. This is useful for populating search filters. |
| GET |
getRoomTypeCategories /room-type-categories |
Retrieves a list of all room type categories that have available cruises in the database (e.g., Balcony, Interior, Suite). This is useful for populating search filters. |
| System & Status | ||
| GET |
getCruiseLineDataStatus /cruise-line-data-status |
Retrieves the last update date and total number of cruise records for each cruise line. This is the best way to determine if new data is available before performing a large or… |
| Other endpoints | ||
| GET |
getShips /ships |
Retrieves a basic list of all ships that have available cruises. This is best for quickly populating a simple search filter or list. If you need more detailed information about… |
| GET |
getShipsDetailed /ships-detailed |
Retrieves a detailed list of all ships, including rich data like passenger capacity, tonnage, and year built. This is the preferred endpoint when a user asks for specific details… |
| GET |
streamCruisesByCruiseLine /cruises/stream |
Performs a bulk data dump by streaming all available cruise records for a *single* cruise line as newline-delimited JSON (NDJSON/JSONL). **Use Case:** This endpoint is designed… |
| GET |
getCruiseLines /cruise-lines |
Retrieves a list of all cruise lines that have available cruises in the database. This is useful for populating search filters. |
| POST |
searchCruises /cruises/search |
Retrieves a list of cruises using a **simplified** set of filters. This endpoint is ideal for basic search interfaces or quick lookups where fewer options are needed. For more… |
| POST |
searchCruisesAdvanced /cruises/advanced-search |
Retrieves a list of cruises using a comprehensive set of filters. This is the **primary and most powerful** endpoint for finding specific cruises and should be the default choice… |
| GET |
getCruiseLineDataStatus /cruise-line-data-status |
Retrieves the last update date and total number of cruise records for each cruise line. This is the best way to determine if new data is available before performing a large or… |
| GET |
getCountries /countries |
Retrieves a list of all countries that have available cruises in the database. This is useful for populating search filters. |
| GET |
getPorts /ports |
Retrieves a list of all ports that have available cruises. This is useful for populating search filters. If you need detailed information like coordinates or time zone, use the… |
| GET |
getPortsDetailed /ports-detailed |
Retrieves a detailed list of all ports with rich data, including time zone and geographic coordinates. This is the preferred endpoint when specific details about a port are… |
| GET |
getDestinations /destinations |
Retrieves a list of all destinations that have available cruises in the database. This is useful for populating search filters. |
| GET |
getPortsDetailed /ports-detailed |
Retrieves a detailed list of all ports with rich data, including time zone and geographic coordinates. This is the preferred endpoint when specific details about a port are… |
| POST |
searchCruises /cruises/search |
Retrieves a list of cruises using a **simplified** set of filters. This endpoint is ideal for basic search interfaces or quick lookups where fewer options are needed. For more… |
| GET |
getDestinations /destinations |
Retrieves a list of all destinations that have available cruises in the database. This is useful for populating search filters. |
| POST |
searchCruisesAdvanced /cruises/advanced-search |
Retrieves a list of cruises using a comprehensive set of filters. This is the **primary and most powerful** endpoint for finding specific cruises and should be the default choice… |
| GET |
getCountries /countries |
Retrieves a list of all countries that have available cruises in the database. This is useful for populating search filters. |
| GET |
streamCruisesByCruiseLine /cruises/stream |
Performs a bulk data dump by streaming all available cruise records for a *single* cruise line as newline-delimited JSON (NDJSON/JSONL). **Use Case:** This endpoint is designed… |
| GET |
getPorts /ports |
Retrieves a list of all ports that have available cruises. This is useful for populating search filters. If you need detailed information like coordinates or time zone, use the… |
| GET |
getShips /ships |
Retrieves a basic list of all ships that have available cruises. This is best for quickly populating a simple search filter or list. If you need more detailed information about… |
| GET |
getShipsDetailed /ships-detailed |
Retrieves a detailed list of all ships, including rich data like passenger capacity, tonnage, and year built. This is the preferred endpoint when a user asks for specific details… |
| GET |
getCruiseLineDataStatus /cruise-line-data-status |
Retrieves the last update date and total number of cruise records for each cruise line. This is the best way to determine if new data is available before performing a large or… |
| GET |
getRoomTypeCategories /room-type-categories |
Retrieves a list of all room type categories that have available cruises in the database (e.g., Balcony, Interior, Suite). This is useful for populating search filters. |
| GET |
getCruiseTypes /cruise-types |
Retrieves a list of all cruise types that have available cruises in the database. |
| GET |
getCruiseLines /cruise-lines |
Retrieves a list of all cruise lines that have available cruises in the database. This is useful for populating search filters. |
Cruise API pricing
| Plan | Price | Rate limit | Quotas |
|---|---|---|---|
| BASIC | Free | 1 / second |
|
| PRO | $24.99 / month | 1 / second |
|
| ULTRA Recommended | $99.99 / month | 2 / second |
|
| MEGA | $249.99 / month | 3 / second |
|