Discover/Shore Excursions Group API
live

Shore Excursions Group APIshoreexcursionsgroup.com

Access cruise port excursion data from shoreexcursionsgroup.com — pricing, highlights, review scores, activity levels, and restrictions across worldwide ports.

Endpoint health
verified 3d ago
get_excursion_details
get_port_excursions_full
list_destinations
list_port_excursions
list_region_ports
5/5 passing latest checkself-healing
Endpoints
5
Updated
26d ago

What is the Shore Excursions Group API?

The Shore Excursions Group API covers 5 endpoints that expose excursion listings, pricing, and detailed tour metadata across cruise ports worldwide. Starting with list_destinations, you can traverse the full catalog from destination regions down to individual tour pages, retrieving fields like sale_price, score, activity_level, highlights, and restrictions for each excursion without building any navigation logic yourself.

Try it

No input parameters required.

api.parse.bot/scraper/09f2ca20-4932-4381-9a12-d66b71170376/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/09f2ca20-4932-4381-9a12-d66b71170376/list_destinations' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace shoreexcursionsgroup-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Shore Excursions Group API — discover cruise port excursions worldwide."""
from parse_apis.shore_excursions_group_api import ShoreExcursions, NotFoundError_

client = ShoreExcursions()

# List all cruise destination regions
for dest in client.destinations.list(limit=5):
    print(dest.name, dest.url)

# List ports in Alaska by region slug
for port in client.ports.list(region_slug="alaska-shore-excursions", limit=5):
    print(port.name, port.port_slug)

# Drill into a specific port's excursion summaries via constructible Port
port = client.port(port_slug="juneau-excursion-tours")
for exc in port.excursions(limit=3):
    print(exc.shore_name, exc.price, exc.sale_price)

# Get full details for the first excursion summary
summary = port.excursions(limit=1).first()
if summary:
    try:
        detail = summary.details()
        print(detail.shore_name, detail.score, detail.activity_level)
        print(detail.shore_excursion_duration, detail.restrictions)
    except NotFoundError_ as exc:
        print(f"Tour not found: {exc}")

# Fetch complete details for multiple excursions at once
for full in port.excursions_full(max_excursions=2, limit=2):
    print(full.shore_name, full.score, full.shore_excursion_type)

print("exercised: destinations.list / ports.list / port.excursions / summary.details / port.excursions_full")
All endpoints · 5 totalmissing one? ·

List all available destination regions (e.g., Alaska, Caribbean, Europe). Each destination includes a name and URL; the URL's trailing slug is the region_slug for list_region_ports. Returns all regions in one response with no pagination.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "destinations": "array of destination objects with name and url",
    "destination_count": "integer total number of destinations"
  },
  "sample": {
    "data": {
      "destinations": [
        {
          "url": "https://www.shoreexcursionsgroup.com/alaska-shore-excursions",
          "name": "Alaska"
        },
        {
          "url": "https://www.shoreexcursionsgroup.com/caribbean-shore-excursions",
          "name": "Caribbean"
        }
      ],
      "destination_count": 18
    },
    "status": "success"
  }
}

About the Shore Excursions Group API

Navigating the Catalog

The API is structured as a three-level hierarchy. list_destinations returns all available destination regions (such as Alaska, Caribbean, or Europe) with their names and URL slugs. Pass a region_slug from those results into list_region_ports to get every port within that region, including each port's name, url, and port_slug. Those port_slug values feed directly into the excursion-level endpoints.

Listing and Detailing Excursions

list_port_excursions takes a port_slug and returns a summary array for every excursion at that port, including shore_name, price, sale_price, and savings alongside the excursion's URL. For full tour data, pass any tour URL to get_excursion_details, which returns highlights (array of strings), restrictions, activity_level, score (numeric, out of 5.0 or null), and sale pricing fields. The get_port_excursions_full endpoint fetches complete detail records for all excursions at a port in one call; the optional limit parameter caps how many full records are fetched, which matters for ports with large catalogs.

Pricing and Review Data

Every excursion object from the detail endpoints includes both the original price and sale_price when applicable, along with a savings string. Review scores are returned as a numeric score out of 5.0; the field is null when no score is available for that tour. Activity difficulty is exposed as the activity_level string, making it straightforward to filter excursions by physical demand.

Coverage and Scope

The API covers the public catalog on shoreexcursionsgroup.com. Destination and port coverage reflects whatever regions and ports the site currently lists. Since get_port_excursions_full fetches one detail page per excursion, response time scales with the number of tours at a port; use the limit parameter when you need faster partial results.

Reliability & maintenanceVerified

The Shore Excursions Group API is a managed, monitored endpoint for shoreexcursionsgroup.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when shoreexcursionsgroup.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official shoreexcursionsgroup.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3d ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a cruise itinerary planner that surfaces available excursions and current prices for each port of call.
  • Track sale prices and savings amounts across multiple ports to alert travelers to discounts.
  • Aggregate review scores by activity level to recommend excursions based on physical fitness level.
  • Compare excursion counts and price ranges across competing destination regions for travel research.
  • Filter out excursions with age or accessibility restrictions from a results list before presenting to users.
  • Populate a port guide app with tour highlights and activity descriptions sourced from detailed excursion records.
  • Monitor catalog size changes at specific ports by periodically calling list_port_excursions and comparing excursion_count.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does shoreexcursionsgroup.com have an official developer API?+
No. Shore Excursions Group does not publish a public developer API or data feed. This Parse API is the structured programmatic interface to that data.
What does get_excursion_details return beyond basic pricing?+
In addition to price, sale_price, and savings, the endpoint returns an array of highlights strings, a restrictions field covering accessibility and age rules, an activity_level string describing difficulty, a numeric score out of 5.0 (or null), and the port_name and shore_name for the tour.
Does the API expose the number of reviews behind each score, or written review text?+
Not currently. The API returns the numeric score field per excursion but does not expose individual review counts or review text. You can fork it on Parse and revise to add an endpoint that fetches per-review data from individual tour pages.
How does get_port_excursions_full differ from calling list_port_excursions and then get_excursion_details separately?+
get_port_excursions_full automates that loop and returns complete detail objects — including highlights, restrictions, activity_level, and score — for all excursions at a port in one response. Use the optional limit integer parameter to cap the number of full records returned when you only need a subset.
Does the API cover excursion availability by cruise ship or departure date?+
Not currently. The API covers catalog data — pricing, highlights, activity levels, and review scores — but does not expose ship-specific availability or date-based scheduling. You can fork it on Parse and revise to add an endpoint targeting any date or availability data the site exposes.
Page content last updated . Spec covers 5 endpoints from shoreexcursionsgroup.com.
Related APIs in TravelSee all →
disneycruise.disney.go.com API
Browse and compare Disney Cruise Line shore excursions across all ports and destinations with detailed information on pricing, duration, age requirements, and activity descriptions. Search by location or keyword to find the perfect Port Adventure for your cruise vacation.
saga.co.uk API
Search and book holiday excursions from Saga UK with detailed information on destinations, pricing, flights, and meal options. Find the perfect getaway by browsing excursion listings and comparing trip details including cost, duration, and included activities.
royalcaribbean.com API
Search and compare Royal Caribbean cruises by destination, ship, itinerary, and price. Access detailed sailing information including port schedules, voyage durations, and fares across all global routes and departure dates.
getyourguide.com API
Search and browse tours, activities, and experiences on GetYourGuide. Retrieve activity details, reviews, pricing, booking availability, and location autocomplete suggestions.
ncl.com API
Browse Norwegian Cruise Line's fleet of ships, search available cruises by destination and sail dates, and view detailed itineraries with ports of call for any sailing. Plan your cruise vacation by comparing ship names, departure dates, and complete port schedules all in one place.
expedia.com API
Search for hotels and flights across Expedia while viewing detailed property information to compare prices and amenities for your travel plans. Get comprehensive travel options all from one integration without manually browsing the website.
travelocity.com API
Search for travel destinations and browse hotel listings on Travelocity. Compare options by location, dates, and availability to find and book accommodation.
tripadvisor.com API
Search for travel destinations and discover hotels with detailed information like ratings, reviews, and amenities. Get comprehensive place details to help plan your perfect trip and compare accommodation options.