VIVA Ruby · Source evidence
Official sources first; otherwise a strict majority of distinct aggregators, then completeness and configured source order. Positive tender evidence from any source is retained. General port guidance does not confirm an individual itinerary call.
{
"ship": "VIVA Ruby",
"source": "cruisemapper",
"start_date": "2026-10-04",
"nights": 12,
"title": "12 nights, one-way from Brussels to Berlin",
"end_date": "2026-10-16",
"embark_port": "Brussels",
"disembark_port": "Berlin, Germany",
"ship_imo": null,
"calls": [
{
"date": "2026-10-04",
"port": "Brussels, Belgium",
"arrival": null,
"departure": null,
"country": "Belgium",
"locode": null,
"port_source_id": "2159",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "04 Oct",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-6000ff8865ccd1",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-05",
"port": "Brussels, Belgium",
"arrival": null,
"departure": null,
"country": "Belgium",
"locode": null,
"port_source_id": "2159",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "05 Oct 13:30 - 13:30",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-6000ff8865ccd1",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-06",
"port": "Utrecht, Netherlands Utrecht",
"arrival": "09:00",
"departure": "15:00",
"country": "Netherlands",
"locode": null,
"port_source_id": "3342",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "06 Oct 09:00 - 15:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-78d3d83d41ea1d",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-07",
"port": "Harlingen, Netherlands Friesland",
"arrival": "07:00",
"departure": "11:30",
"country": "Netherlands",
"locode": null,
"port_source_id": "315",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "07 Oct 07:00 - 11:30",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-24a41998266272",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-07",
"port": "Groningen, Netherlands Groningen",
"arrival": "20:00",
"departure": "09:00",
"country": "Netherlands",
"locode": null,
"port_source_id": "4258",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": "2026-10-08",
"raw_time": "07 Oct 20:00 - 08 Oct 09:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-2e183be543a61b",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-09",
"port": "Scenic cruising · sea",
"arrival": null,
"departure": null,
"country": null,
"locode": null,
"port_source_id": null,
"tender": null,
"tender_evidence": [],
"sea_day": true,
"departure_date": null,
"raw_time": null,
"sources": [
"cruisemapper"
],
"scenic_cruising": true,
"original_port": "sea cruising"
},
{
"date": "2026-10-10",
"port": "Duisburg, Germany North Rhine-Westphalia",
"arrival": "03:00",
"departure": "13:30",
"country": "Germany",
"locode": null,
"port_source_id": "2328",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "10 Oct 03:00 - 13:30",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-04cc5cbe60207b",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-11",
"port": "Stadt Munster, Germany North Rhine-Westphalia",
"arrival": "08:30",
"departure": "18:00",
"country": "Germany",
"locode": null,
"port_source_id": "16458",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "11 Oct 08:30 - 18:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-f1ccd32df62868",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-12",
"port": "Minden-Weser, Germany North Rhine-Westphalia",
"arrival": "09:30",
"departure": "19:00",
"country": "Germany",
"locode": null,
"port_source_id": "5169",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "12 Oct 09:30 - 19:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-a8dbc9562b2a98",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-13",
"port": "Hannover, Germany Lower Saxony",
"arrival": "03:00",
"departure": "09:00",
"country": "Germany",
"locode": null,
"port_source_id": "5153",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "13 Oct 03:00 - 09:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-9b9b8304b3c617",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-13",
"port": "Calvorde, Germany Saxony-Anhalt",
"arrival": "21:30",
"departure": "04:00",
"country": "Germany",
"locode": null,
"port_source_id": "5167",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": "2026-10-14",
"raw_time": "13 Oct 21:30 - 14 Oct 04:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-81b014ae5bb210",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-14",
"port": "Brandenburg an der Havel, Germany Brandenburg",
"arrival": "18:00",
"departure": "05:00",
"country": "Germany",
"locode": null,
"port_source_id": "3972",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": "2026-10-15",
"raw_time": "14 Oct 18:00 - 15 Oct 05:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-08c5e93ca398ba",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-15",
"port": "Berlin, Germany",
"arrival": null,
"departure": null,
"country": "Germany",
"locode": null,
"port_source_id": "3964",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "15 Oct 14:00 - 14:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-bb77391830d989",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-15",
"port": "Potsdam, Germany Brandenburg",
"arrival": "09:30",
"departure": "12:00",
"country": "Germany",
"locode": null,
"port_source_id": "4003",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "15 Oct 09:30 - 12:00",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-b5ed7ff02d00ea",
"tender_reported": false,
"tender_possible": false
},
{
"date": "2026-10-16",
"port": "Berlin, Germany",
"arrival": null,
"departure": null,
"country": "Germany",
"locode": null,
"port_source_id": "3964",
"tender": null,
"tender_evidence": [],
"sea_day": false,
"departure_date": null,
"raw_time": "16 Oct",
"sources": [
"cruisemapper"
],
"scenic_cruising": false,
"original_port": null,
"portId": "p-bb77391830d989",
"tender_reported": false,
"tender_possible": false
}
],
"source_id": "5228003",
"url": "https://www.cruisemapper.com/ships/VIVA-Ruby-1245?tab=itinerary",
"sources": [
"cruisemapper"
],
"field_sources": {
"title": "cruisemapper",
"nights": "cruisemapper",
"end_date": "cruisemapper",
"embark_port": "cruisemapper",
"disembark_port": "cruisemapper",
"url": "cruisemapper",
"source_id": "cruisemapper"
},
"shipId": "s-32f7fdc5b35e14",
"id": "v-8701fc56728d8e",
"path": "/v/viva-cruises/viva-ruby/20261004-20261016",
"pathAliases": []
}