Charter Boats API
Passages

Passages by Location

Get all passages departing from or arriving at a specific location

Endpoint

GET /passages/by-location/:id

Description

Retrieve all sailing passages that either depart from or arrive at a specific location. Useful for showing "Sail from here" options on a location detail page.

Results are sorted by distance (shortest passages first).

Authentication

No authentication required. This is a public endpoint.

Path Parameters

ParameterTypeDescription
idnumberLocation ID

Query Parameters

ParameterTypeRequiredDescription
limitnumberNoMax results (default: 20, max: 50)

Example Request

curl "https://charter.boats/api/passages/by-location/4521?limit=5"

Example Response

[
  {
    "id": "route-uuid-1",
    "slug": "lefkas-to-meganisi",
    "title": "Lefkas to Meganisi",
    "description": "Short hop to the charming island of Meganisi...",
    "distance_nm": 8,
    "difficulty": "easy",
    "typical_duration_hours": 1.5,
    "rating": 4.9,
    "rating_count": 22,
    "variant_count": 2,
    "from_location": {
      "id": 4521,
      "name": "D-Marin Lefkas",
      "country_code": "GR"
    },
    "to_location": {
      "id": 4532,
      "name": "Vathi (Meganisi)",
      "country_code": "GR"
    }
  },
  {
    "id": "route-uuid-2",
    "slug": "lefkas-to-vasiliki",
    "title": "Lefkas to Vasiliki",
    "distance_nm": 22,
    "difficulty": "easy",
    "typical_duration_hours": 4,
    "rating": 4.8,
    "rating_count": 15,
    "variant_count": 3,
    "from_location": {
      "id": 4521,
      "name": "D-Marin Lefkas",
      "country_code": "GR"
    },
    "to_location": {
      "id": 4545,
      "name": "Vasiliki",
      "country_code": "GR"
    }
  }
]

Response Fields

FieldTypeDescription
idstringRoute ID (UUID)
slugstringURL slug
titlestringRoute title
descriptionstring|nullRoute description
distance_nmnumber|nullDistance in nautical miles
difficultystring|nullDifficulty level
typical_duration_hoursnumber|nullEstimated sailing time
ratingnumber|nullAverage rating
rating_countnumber|nullNumber of ratings
variant_countnumber|nullNumber of route variants
geojsonobject|nullRoute geometry (GeoJSON LineString)
from_locationobjectDeparture location
from_location.idnumberLocation ID
from_location.namestringLocation name
from_location.country_codestringISO country code
to_locationobjectArrival location

Notes

  • Returns passages where the given location is either the departure or arrival point.
  • Results are sorted by distance ascending (shortest passages first).
  • Includes geojson route geometry. Use Get Passage for full details including variants and POIs.

On this page