Charter Boats
Charter Boats API
Points of Interest

Get POI

Get full details for a specific point of interest

Endpoint

GET /pois/:id

Description

Retrieve full details for a point of interest, including nearby marina locations, other POIs grouped by category, images, content references, and special offers (for claimed businesses).

Authentication

No authentication required for server-side requests — this is a public read endpoint. (A key is only needed for cross-origin calls made from a browser on another domain; see Authentication.)

Path Parameters

ParameterTypeDescription
idstringPOI ID (UUID format)

Example Request

curl "https://charter.boats/api/pois/7f1e2d6f-880f-43bd-ba12-d758894cb7a2"

Example Response

{
  "id": "7f1e2d6f-880f-43bd-ba12-d758894cb7a2",
  "osm_id": 2460057890,
  "osm_type": "node",
  "name": "Nelly's Cafe",
  "name_en": null,
  "category": "restaurant",
  "subcategory": "cafe",
  "lat": 37.5222284,
  "lon": 22.8614009,
  "address": null,
  "city": null,
  "country": null,
  "country_code": null,
  "phone": null,
  "website": null,
  "email": null,
  "opening_hours": null,
  "seasonal_hours": null,
  "is_seasonal": false,
  "description": "Nelly's Cafe Bar sits on the ground floor of a beachfront building...",
  "cuisine": null,
  "wikidata_id": null,
  "wikipedia_url": null,
  "image_url": "https://images.trvl-media.com/lodging/.../43828e49.jpg",
  "image_attribution": null,
  "image_source": "Hotels.com",
  "image_source_url": "https://www.hotels.com/ho616153/nelly-s-apartments-nafplio-greece/",
  "rating": 9.8,
  "rating_count": 72,
  "enriched_at": "2026-03-12T09:24:09.811+00:00",
  "osm_tags": {
    "name": "Nelly's Cafe",
    "amenity": "cafe",
    "outdoor_seating": "yes"
  },
  "last_updated": "2026-03-12T03:42:51.655018+00:00",
  "created_at": "2026-03-12T03:42:51.655018+00:00",
  "social_links": null,
  "claimed_by": null,
  "claimed_at": null,
  "images": [
    {
      "id": "50d25323-4f62-4376-8875-147b393d394f",
      "url": "https://images.trvl-media.com/lodging/.../43828e49.jpg",
      "source": "Hotels.com",
      "source_url": "https://www.hotels.com/ho616153/nelly-s-apartments-nafplio-greece/",
      "attribution": null,
      "is_primary": true,
      "sort_order": 0,
      "storage_path": null
    }
  ],
  "nearby_locations": [
    {
      "id": 23496,
      "name": "Tolo Harbour Dock",
      "lat": 37.514298,
      "lon": 22.856677,
      "city": "Municipal Unit of Asini",
      "municipality": "Municipality of Nafplio",
      "state": "Peloponnese Region",
      "country": "Greece",
      "capacity": null,
      "max_draft": null,
      "vhf_channel": null,
      "website": null,
      "phone": null,
      "image_url": "https://res.cloudinary.com/hury8ejiw/image/upload/v1617277933/gwyjzsrrtzcqmnzwzlwk.jpg",
      "rating": 3.3,
      "distance_meters": 975,
      "walking_time_minutes": 12
    }
  ],
  "pois_by_category": {
    "restaurant": [
      {
        "id": "7e102429-dc1e-44d2-a33e-f5f3b0e9db54",
        "name": "Carnayio Seaside Restaurant",
        "name_en": null,
        "category": "restaurant",
        "subcategory": "restaurant",
        "image_url": "https://images.happycow.net/venues/1024/29/24/hcmp292481_1529088.jpeg",
        "rating": 4.5,
        "distance_meters": 137,
        "walking_time_minutes": 2
      }
    ]
  },
  "references": [
    {
      "title": "Hotels.com",
      "url": "https://www.hotels.com/ho616153/nelly-s-apartments-nafplio-greece/",
      "source_domain": "hotels.com"
    }
  ],
  "special_offers": []
}

special_offers is only populated for claimed businesses; it is an empty array otherwise. Note rating is on a 0–10 scale.

Response Fields

FieldTypeDescription
idstringPOI ID (UUID)
osm_idnumber|nullOpenStreetMap ID
osm_typestring|nullOSM type (node, way, relation)
namestringName (local language)
name_enstring|nullEnglish name
categorystringPOI category
subcategorystring|nullMore specific category
latnumberLatitude
lonnumberLongitude
addressstring|nullStreet address
citystring|nullCity
countrystring|nullCountry
country_codestring|nullISO country code (lowercase when present)
phonestring|nullPhone number
websitestring|nullWebsite URL
emailstring|nullEmail address
opening_hoursstring|nullOpening hours (OSM format)
seasonal_hoursstring|nullSeasonal opening hours
is_seasonalboolean|nullWhether the business is seasonal
descriptionstring|nullDescription (markdown)
cuisinestring|nullCuisine type (restaurants)
wikidata_idstring|nullWikidata entity ID
wikipedia_urlstring|nullWikipedia page URL
image_urlstring|nullPrimary image URL
image_attributionstring|nullAttribution for image_url
image_source / image_source_urlstring|nullSource label / source page for the primary image
ratingnumber|nullRating on a 0–10 scale
rating_countnumber|nullNumber of ratings
enriched_atstring|nullTimestamp of last AI enrichment
osm_tagsobject|nullRaw OpenStreetMap tags
last_updated / created_atstringRow timestamps
social_linksobject|nullSocial media links (when known)
claimed_by / claimed_atstring|nullSet when a business owner has claimed the POI
imagesarrayAll POI images, sorted by sort_order (url, source, source_url, attribution, is_primary, storage_path)
nearby_locationsarrayUp to 4 closest charter locations (marinas/harbours/bays)
nearby_locations[].state / .municipalitystring|nullRegion fields on each neighbor
nearby_locations[].capacity / .max_draft / .vhf_channelmixed|nullMarina facility fields
nearby_locations[].distance_metersnumberDistance from the POI
nearby_locations[].walking_time_minutesnumberEstimated walking time
pois_by_categoryobjectOther nearby POIs grouped by category (from nearest location); each carries id, name, name_en, category, subcategory, image_url, rating, distance_meters, walking_time_minutes
referencesarrayContent sources and attributions (title, url, source_domain)
special_offersarrayActive offers from claimed businesses (empty unless claimed)

Special Offer Fields

FieldTypeDescription
idstringOffer ID
titlestringOffer title
descriptionstring|nullOffer description
discount_typestring|nullType of discount (percentage, fixed, etc.)
discount_valuenumber|nullDiscount amount
start_datestring|nullStart date (YYYY-MM-DD)
end_datestring|nullEnd date (YYYY-MM-DD)
coupon_codestring|nullCoupon code
redeem_urlstring|nullURL to redeem the offer
terms_conditionsstring|nullTerms and conditions

Error Responses

400 Bad Request

{
  "statusCode": 400,
  "message": "Invalid POI ID"
}

404 Not Found

{
  "statusCode": 404,
  "message": "POI not found"
}

On this page