themeparks APIthemeparks.com ↗
Access real-time theme park wait times, operating schedules, attractions, shows, and restaurants worldwide via the themeparks.com API.
What is the themeparks API?
The themeparks.com API covers global theme park data across 11 endpoints, returning real-time attraction wait times, operating schedules, and venue metadata for parks worldwide. The get_entity_live_data endpoint delivers continuously updated queue times, operating status, and show times for every child entity within a park. You can also browse attractions, restaurants, and shows by park, search parks globally by name, and retrieve monthly schedule calendars including Lightning Lane pricing where available.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/5664de12-7303-4847-b13b-3fa34d75df25/get_destinations' \ -H 'X-API-Key: $PARSE_API_KEY'
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 themeparks-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.
from parse_apis.themeparks.wiki_api import ThemeParks
client = ThemeParks()
# Search for Disney parks worldwide
for park in client.parks.search(query="Disney"):
print(park.name, park.is_open, park.attraction_count)
# Get the global map view with aggregate stats
map_view = client.parks.map()
print(map_view.average_wait_time, map_view.attractions_with_queue_data)
# Construct a park by ID and explore its sub-resources
mk = client.park(id="75ea578a-adc8-4116-a54d-dccb60765ef9")
# List current wait times for attractions
for wt in mk.wait_times.list():
print(wt.name, wt.status, wt.last_updated)
# Browse the schedule for a specific month
for entry in mk.schedule.by_month(year="2026", month="07"):
print(entry.date, entry.type, entry.opening_time, entry.closing_time)
# List all restaurants in the park
for restaurant in mk.restaurants.list():
print(restaurant.name, restaurant.slug, restaurant.location.latitude)
Returns all supported theme park destinations globally, each with its constituent parks. A destination is a resort-level grouping (e.g. Walt Disney World Resort) containing one or more parks.
No input parameters required.
{
"type": "object",
"fields": {
"destinations": "array of destination objects with id, name, slug, and parks"
},
"sample": {
"data": {
"destinations": [
{
"id": "643e837e-b244-4663-8d3a-148c26ecba9c",
"name": "SeaWorld Parks and Resorts Orlando",
"slug": "seaworldorlandoresort",
"parks": [
{
"id": "27d64dee-d85e-48dc-ad6d-8077445cd946",
"name": "SeaWorld Orlando"
}
]
}
]
},
"status": "success"
}
}About the themeparks API
Entity Model and Navigation
The API organizes theme park data in a hierarchy: destinations (resort-level groups like a major resort complex) contain parks, which contain attractions, shows, and restaurants. The get_destinations endpoint returns all supported destinations globally with their constituent parks and unique UUIDs. From there, get_entity returns detailed metadata for any entity by UUID — including location (latitude/longitude), timezone (IANA identifier), entityType, parentId, and destinationId. Child listings for any entity are available via get_entity_children, which returns an array of child objects each carrying id, name, entityType, slug, and location.
Live Data and Wait Times
get_entity_live_data returns a liveData array for the requested entity and all its children. Each entry includes status, a queue object with standby and other queue wait times, a forecast array for predicted wait times, operatingHours, and a lastUpdated timestamp. For a focused view, get_park_wait_times filters live data to ATTRACTION-type entities only, returning the same status, queue, forecast, and operatingHours fields without non-attraction noise. The global map view via get_park_map adds a averageWaitTime integer (global average in minutes), a latestWaitTimes sample array, and an attractionsWithQueueData count.
Schedules and Park-Specific Filters
get_entity_schedule returns the full future schedule for any entity as an array of entries each containing date, type, openingTime, closingTime, and an optional purchases array for Lightning Lane pass pricing. If you only need a specific month, get_entity_schedule_by_month accepts year and month parameters (both optional, defaulting to current) alongside entity_id. Filtered park endpoints — get_park_attractions and get_park_restaurants — narrow get_entity_children results to ATTRACTION or RESTAURANT entity types respectively, each returning id, name, slug, parentId, and location for each venue.
Search and Discovery
search_parks accepts an optional query string and performs a case-insensitive substring match on park names globally. Each result carries isOpen, openUntil, nextOpen, attractionCount, and showCount — making it useful for building park-picker UIs or checking open status at query time. Omitting the query returns all parks with the same fields.
The themeparks API is a managed, monitored endpoint for themeparks.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when themeparks.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 themeparks.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a real-time wait time dashboard that polls
get_entity_live_datafor multiple parks and surfaces the shortest queues. - Create a trip-planning tool that uses
get_entity_schedule_by_monthto show park hours and Lightning Lane pricing for a selected travel month. - Generate attraction maps by combining
get_park_attractionslocation data with a mapping library. - Power a dining guide that lists all restaurants in a park using
get_park_restaurantswith name, slug, and coordinates. - Display a global park status board using
search_parksresults withisOpen,openUntil, and attraction counts. - Show historical and forecast wait time patterns by collecting the
forecastarrays fromget_park_wait_timesover time. - Build a resort explorer that starts at
get_destinations, drills into parks, and navigates child entities viaget_entity_children.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 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.
Does themeparks.com have an official developer API?+
What does `get_entity_live_data` return, and how often is it updated?+
liveData array for the requested entity and all its children. Each entry includes status, a queue object with wait times, a forecast array, operatingHours, and a lastUpdated timestamp. The data is updated continuously throughout the day, so lastUpdated on each entry reflects the most recent observation for that entity.Does the schedule endpoint include Lightning Lane or paid queue pricing?+
purchases array where Lightning Lane pricing data is available. Not every park or date will have this field populated — it appears only where the source exposes pricing information.Does the API expose individual attraction photos, descriptions, or height requirements?+
Is there a way to get wait time history or trends over time?+
forecast array for expected future waits, but there is no built-in historical time-series endpoint. You can fork this API on Parse and revise it to add a history endpoint if your use case requires storing and querying past observations.