Whistler Blackcomb APIwhistlerblackcomb.com ↗
Real-time snow depth, lift counts, trail status, and weather forecasts for Whistler Blackcomb via a simple REST API. Four endpoints, no setup required.
What is the Whistler Blackcomb API?
This API exposes 4 endpoints covering live mountain conditions at Whistler Blackcomb, including snow depth at three elevations, recent snowfall across four time windows, lift and run open/total counts, and terrain percentage. The get_mountain_conditions endpoint returns all available data in a single call, while focused endpoints like get_snow_conditions and get_lift_status return only the fields relevant to each use case.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/fef81905-ae01-47ad-95c0-96695def1bfa/get_mountain_conditions' \ -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 whistlerblackcomb-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.
"""Walkthrough: Whistler Blackcomb SDK — real-time mountain conditions, bounded."""
from parse_apis.whistler_blackcomb_mountain_conditions_api import (
WhistlerBlackcomb,
NotFoundError,
)
client = WhistlerBlackcomb()
# Full mountain conditions — single call for all data.
conditions = client.resorts.conditions()
print(f"Resort: {conditions.resort}, Report: {conditions.report_date_time}")
print(f"Snow quality: {conditions.snow_conditions}")
print(f"Lifts open: {conditions.lifts.open}/{conditions.lifts.total}")
print(f"Season snowfall: {conditions.season_snowfall.inches}in ({conditions.season_snowfall.centimeters}cm)")
# Snow-focused subset — depths and recent snowfall only.
snow = client.resorts.snow()
print(f"Mid-mountain base: {snow.base_snow_depth.mid_mountain.inches}in")
print(f"Last 24h: {snow.new_snow.twenty_four_hours.inches}in new")
# Weather forecast with operational status.
weather = client.resorts.weather()
print(f"Terrain open: {weather.terrain_percentage.open}%")
print(f"Forecast: {weather.weather_commentary[:120]}")
# Lift/trail status — lightest call for operational checks.
try:
ops = client.resorts.lifts()
print(f"Runs open: {ops.runs.open}/{ops.runs.total}")
except NotFoundError as exc:
print(f"Lift status unavailable: {exc}")
print("exercised: resorts.conditions / resorts.snow / resorts.weather / resorts.lifts")
Get comprehensive mountain conditions including snow, weather, lift, and trail status for Whistler Blackcomb. Returns all available data in a single call — snow depths, recent snowfall, lift/run counts, terrain percentage, snow quality, and weather commentary. This is the most complete endpoint; the others return subsets of this data.
No input parameters required.
{
"type": "object",
"fields": {
"runs": "object - Trail counts with open and total keys",
"lifts": "object - Lift counts with open and total keys",
"resort": "string - Resort name",
"new_snow": "object - Recent snowfall with overnight, twenty_four_hours, forty_eight_hours, seven_days sub-objects each containing inches and centimeters",
"base_snow_depth": "object - Snow depth at summit, mid_mountain, base_area each containing inches and centimeters",
"season_snowfall": "object - Total season snowfall with inches and centimeters",
"snow_conditions": "string - Current snow quality description",
"report_date_time": "string - Report timestamp in MM/DD/YYYY HH:MM:SS format",
"terrain_percentage": "object - Terrain open percentage with open and total keys",
"weather_commentary": "string - Detailed weather forecast in HTML format"
},
"sample": {
"data": {
"runs": {
"open": "0",
"total": "0"
},
"lifts": {
"open": "3",
"total": "3"
},
"resort": "Whistler Blackcomb",
"new_snow": {
"overnight": {
"inches": "0",
"centimeters": "0"
},
"seven_days": {
"inches": "0",
"centimeters": "0"
},
"forty_eight_hours": {
"inches": "0",
"centimeters": "0"
},
"twenty_four_hours": {
"inches": "0",
"centimeters": "0"
}
},
"base_snow_depth": {
"summit": {
"inches": "0",
"centimeters": "0"
},
"base_area": {
"inches": "39",
"centimeters": "99"
},
"mid_mountain": {
"inches": "39",
"centimeters": "99"
}
},
"season_snowfall": {
"inches": "316",
"centimeters": "804"
},
"snow_conditions": "Spring",
"report_date_time": "05/18/2026 11:04:00",
"terrain_percentage": {
"open": "0",
"total": "100"
},
"weather_commentary": "<p>Alpine forecast for today: Cloudy with sunny periods.</p>"
},
"status": "success"
}
}About the Whistler Blackcomb API
What the API Returns
The get_mountain_conditions endpoint is the broadest call: it returns lift counts (lifts.open, lifts.total), trail counts (runs.open, runs.total), terrain percentage, snow quality description (snow_conditions), base snow depth at summit, mid-mountain, and base area (each in inches and centimeters), recent snowfall for overnight, 24-hour, 48-hour, and 7-day windows, season total snowfall, and a full weather commentary block in HTML format. The report_date_time field tells you exactly when the conditions report was published, formatted as MM/DD/YYYY HH:MM:SS.
Snow-Focused and Operations-Focused Endpoints
get_snow_conditions returns the snow-specific subset: new_snow, base_snow_depth, season_snowfall, snow_conditions, and report_date_time. It omits lift and trail counts. get_lift_status inverts this — it returns lifts, runs, and terrain_percentage without any snowfall data. get_weather_forecast pairs the HTML weather commentary with lift and run counts, making it useful for apps that want to display operational status alongside the forecast without pulling full snow depth data.
Data Shape and Units
All snowfall and depth fields carry dual units: inches and either c (centimeters, in new_snow sub-objects) or centimeters (in base_snow_depth and season_snowfall). Terrain percentage is returned as an object with open and total keys rather than a pre-computed ratio, so you can calculate coverage percentage on your end. The weather_commentary field contains HTML markup and may include paragraph tags, line breaks, or inline formatting from the source report.
The Whistler Blackcomb API is a managed, monitored endpoint for whistlerblackcomb.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when whistlerblackcomb.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 whistlerblackcomb.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?+
- Display a live snow report widget showing overnight and 7-day snowfall totals for a ski trip planning app
- Alert users when the number of open lifts crosses a threshold using
lifts.openfromget_lift_status - Show summit vs. base snow depth comparison using
base_snow_depth.summitandbase_snow_depth.base_area - Render a weather forecast panel using the
weather_commentaryHTML field fromget_weather_forecast - Track season snowfall accumulation over time by logging
season_snowfallfrom dailyget_snow_conditionscalls - Build a terrain availability dashboard using
terrain_percentage.openandruns.opentogether - Send morning condition summaries combining
snow_conditionsquality description with open run counts
| 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 Whistler Blackcomb have an official developer API?+
What does `get_mountain_conditions` return that the other endpoints do not?+
get_mountain_conditions is the only endpoint that combines snow depth, snowfall history, lift/run counts, terrain percentage, snow quality description, and the HTML weather commentary in a single response. The other endpoints each return a focused subset: get_snow_conditions covers snow data only, get_lift_status covers operational counts only, and get_weather_forecast covers weather commentary plus operational counts.Does the API return status for individual named lifts or trails?+
lifts.open, lifts.total, runs.open, runs.total — rather than a list of individual lift or trail names with per-item status. You can fork this API on Parse and revise it to add an endpoint that returns per-lift or per-trail detail.How current is the conditions data, and how often does it update?+
report_date_time field (format MM/DD/YYYY HH:MM:SS) that reflects when Whistler Blackcomb last published the conditions report. Updates depend on the resort's own reporting cadence, which typically changes once or a few times daily. The timestamp lets you detect whether a response reflects a new report or an unchanged one.Does the API cover historical snow or conditions data across past seasons?+
season_snowfall totals and the most recent snowfall windows (overnight through 7 days). You can fork this API on Parse and revise it to persist responses over time and build a historical dataset from repeated calls.