Themeparks
Unofficial API for accessing ride wait times and schedules for Disneyland, Disney World, Universal Studios, and many more parks
Install / Use
/learn @cubehouse/ThemeparksREADME
Notice
This library has been replaced with a new codebase that interfaces with ThemeParks.wiki to get park data. The current implementation (5.x) in this repo is no longer be maintained.
API Documentation is available for the new API.
If you are interested in how data is sourced for the new API, you can browse the ParksAPI repo, which contains the source code for fetching park data. However, to avoid further takedown requests, this repo will not contain details like API keys that are required to access most services.
themeparks
An unofficial API library for accessing ride wait times and park opening times for many theme parks around the world, including Disney, Universal and SeaWorld parks.
Roadmap | Documentation | Change Log | Supported Parks
Install
npm install themeparks --save
Settings
You can change some settings of the library by editing the properties of the Themeparks.Settings object.
| Property | Default value | Description |
| :---------------------- | :------------------------------- | :------------------------------------------- |
| Cache | ${process.cwd()}/themeparks.db | Location of Sqlite DB file |
| OpenTimeout | 10 seconds | Open request timeout value (in milliseconds) |
| ReadTimeout | 0 seconds | Read request timeout value (in milliseconds) |
| DefaultCacheLength | 6 hours | Time to cache any data (in seconds) |
| CacheWaitTimesLength | 5 minutes | Time to cache waiting times (in seconds) |
| CacheOpeningTimesLength | 1 hour | Time to cache opening times (in seconds) |
Example Use
// include the Themeparks library
const Themeparks = require("themeparks");
// configure where SQLite DB sits
// optional - will be created in node working directory if not configured
// Themeparks.Settings.Cache = __dirname + "/themeparks.db";
// access a specific park
// Create this *ONCE* and re-use this object for the lifetime of your application
// re-creating this every time you require access is very slow, and will fetch data repeatedly for no purpose
const DisneyWorldMagicKingdom = new Themeparks.Parks.WaltDisneyWorldMagicKingdom();
// Access wait times by Promise
const CheckWaitTimes = () => {
DisneyWorldMagicKingdom.GetWaitTimes().then((rideTimes) => {
rideTimes.forEach((ride) => {
console.log(`${ride.name}: ${ride.waitTime} minutes wait (${ride.status})`);
});
}).catch((error) => {
console.error(error);
}).then(() => {
setTimeout(CheckWaitTimes, 1000 * 60 * 5); // refresh every 5 minutes
});
};
CheckWaitTimes();
// you can also call GetOpeningTimes on themeparks objects to get park opening hours
Proxy
If you wish to use themeparks with a proxy, you can pass a proxy agent when you construct the park object.
// include the Themeparks library
const Themeparks = require("themeparks");
// include whichever proxy library you want to use (must provide an http.Agent object)
const SocksProxyAgent = require('socks-proxy-agent');
// create your proxy agent object
const MyProxy = new SocksProxyAgent("socks://socks-proxy-host", true);
// create your park object, passing in proxyAgent as an option
const DisneyWorldMagicKingdom = new Themeparks.Parks.WaltDisneyWorldMagicKingdom({
proxyAgent: MyProxy
});
Change Log
Parks available
<!-- START_SUPPORTED_PARKS_LIST -->62 Parks Supported
- Magic Kingdom - Walt Disney World Florida (ThemeParks.Parks.WaltDisneyWorldMagicKingdom)
- Epcot - Walt Disney World Florida (ThemeParks.Parks.WaltDisneyWorldEpcot)
- Hollywood Studios - Walt Disney World Florida (ThemeParks.Parks.WaltDisneyWorldHollywoodStudios)
- Animal Kingdom - Walt Disney World Florida (ThemeParks.Parks.WaltDisneyWorldAnimalKingdom)
- Magic Kingdom - Disneyland Resort (ThemeParks.Parks.DisneylandResortMagicKingdom)
- California Adventure - Disneyland Resort (ThemeParks.Parks.DisneylandResortCaliforniaAdventure)
- Magic Kingdom - Disneyland Paris (ThemeParks.Parks.DisneylandParisMagicKingdom)
- Walt Disney Studios - Disneyland Paris (ThemeParks.Parks.DisneylandParisWaltDisneyStudios)
- Hong Kong Disneyland (ThemeParks.Parks.HongKongDisneyland)
- Magic Kingdom - Shanghai Disney Resort (ThemeParks.Parks.ShanghaiDisneyResortMagicKingdom)
- Magic Kingdom - Tokyo Disney Resort (ThemeParks.Parks.TokyoDisneyResortMagicKingdom)
- Disney Sea - Tokyo Disney Resort (ThemeParks.Parks.TokyoDisneyResortDisneySea)
- Europa Park (ThemeParks.Parks.EuropaPark)
- Hershey Park (ThemeParks.Parks.HersheyPark)
- Parc-Asterix (ThemeParks.Parks.AsterixPark)
- California's Great America (ThemeParks.Parks.CaliforniasGreatAmerica)
- Canada's Wonderland (ThemeParks.Parks.CanadasWonderland)
- Carowinds (ThemeParks.Parks.Carowinds)
- Cedar Point (ThemeParks.Parks.CedarPoint)
- Kings Island (ThemeParks.Parks.KingsIsland)
- Knott's Berry Farm (ThemeParks.Parks.KnottsBerryFarm)
- Dollywood (ThemeParks.Parks.Dollywood)
- Silver Dollar City (ThemeParks.Parks.SilverDollarCity)
- Seaworld Orlando (ThemeParks.Parks.SeaworldOrlando)
- Efteling (ThemeParks.Parks.Efteling)
- Universal Studios Florida (ThemeParks.Parks.UniversalStudiosFlorida)
- Universal's Islands Of Adventure (ThemeParks.Parks.UniversalIslandsOfAdventure)
- Universal Volcano Bay (ThemeParks.Parks.UniversalVolcanoBay)
- Universal Studios Hollywood (ThemeParks.Parks.UniversalStudiosHollywood)
- Universal Studios Singapore (ThemeParks.Parks.UniversalStudiosSingapore)
- Universal Studios Japan (ThemeParks.Parks.UniversalStudiosJapan)
- Six Flags Over Texas (ThemeParks.Parks.SixFlagsOverTexas)
- Six Flags Over Georgia (ThemeParks.Parks.SixFlagsOverGeorgia)
- Six Flags St. Louis (ThemeParks.Parks.SixFlagsStLouis)
- Six Flags Great Adventure (ThemeParks.Parks.SixFlagsGreatAdventure)
- Six Flags Magic Mountain (ThemeParks.Parks.SixFlagsMagicMountain)
- Six Flags Great America (ThemeParks.Parks.SixFlagsGreatAmerica)
- Six Flags Fiesta Texas (ThemeParks.Parks.SixFlagsFiestaTexas)
- Six Flags Hurricane Harbor, Arlington (ThemeParks.Parks.SixFlagsHurricaneHarborArlington)
- Six Flags Hurricane Harbor, Los Angeles (ThemeParks.Parks.SixFlagsHurricaneHarborLosAngeles)
- Six Flags America (ThemeParks.Parks.SixFlagsAmerica)
- Six Flags Discovery Kingdom (ThemeParks.Parks.SixFlagsDiscoveryKingdom)
- Six Flags New England (ThemeParks.Parks.SixFlagsNewEngland)
- Six Flags Hurricane Harbor, Jackson (ThemeParks.Parks.SixFlagsHurricaneHarborJackson)
- The Great Escape (ThemeParks.Parks.TheGreatEscape)
- Six Flags White Water, Atlanta (ThemeParks.Parks.SixFlagsWhiteWaterAtlanta)
- Six Flags México (ThemeParks.Parks.SixFlagsMexico)
- La Ronde, Montreal (ThemeParks.Parks.LaRondeMontreal)
- Six Flags Hurricane Harbor, Oaxtepec (ThemeParks.Parks.SixFlagsHurricaneHarborOaxtepec)
- Six Flags Hurricane Harbor, Concord (ThemeParks.Parks.SixFlagsHurricaneHarborConcord)
- PortAventura (ThemeParks.Parks.PortAventura)
- Ferrari Land (ThemeParks.Parks.FerrariLand)
- Alton Towers (ThemeParks.Parks.AltonTowers)
- Thorpe Park (ThemeParks.Parks.ThorpePark)
- Chessington World Of Adventures (ThemeParks.Parks.ChessingtonWorldOfAdventures)
- Bellewaerde (ThemeParks.Parks.Bellewaerde)
- Phantasialand (ThemeParks.Parks.Phantasialand)
- Heide Park (ThemeParks.Parks.HeidePark)
- Busch Gardens Tampa (ThemeParks.Parks.BuschGardensTampa)
- Busch Gardens Williamsburg (ThemeParks.Parks.BuschGardensWilliamsburg)
- Liseberg (ThemeParks.Parks.Liseberg)
- Toverland (ThemeParks.Parks.Toverland)
Supported Park Features
<!-- START_PARK_FEATURES_SUPPORTED -->|Park|Wait Times|Park Opening Times|Ride Opening Times| |:---|:---------|:-----------------|:-----------------| |Magic Kingdom - Walt Disney World Florida|✓|✓|✗| |Epcot - Walt Disney World Florida|✓|✓|✗| |Hollywood Studios - Walt Disney World Florida|✓|✓|✗| |Animal Kingdom - Walt Disney World Florida|✓|✓|✗| |Magic Kingdom - Disneyland Resort|✓|✓|✗| |California Adventure - Disneyland Resort|✓|✓|✗| |Magic Kingdom - Disneyland Paris|✓|✓|✗| |Walt Disney Studios - Disneyland Paris|✓|✓|✗| |Hong Kong Disneyland|✓|✓|✗| |Magic Kingdom - Shanghai Disney Resort|✓
Related Skills
node-connect
351.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.8kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
