Data

Bulk spatial data.

Resort, trail, and lift geometry as GeoJSON. Cached at the edge for 24 hours. Free under attribution while in beta. Per-record reads go through the live REST API.

Endpoints

GET/data/resorts.geojson

All onboarded resorts as a FeatureCollection. Properties: name, slug, country, region, trail_count, lift_count, vertical_drop_ft, passes.

GET/data/resorts/:slug/trails.geojson

Trails for one resort. LineString or MultiLineString geometry. Properties: name, difficulty, length_m, vertical_drop_m, top_elev_m, bottom_elev_m.

GET/data/resorts/:slug/lifts.geojson

Lifts for one resort. Properties: name, kind (chairlift / gondola / surface), capacity_per_hour, vertical_m.

Quick try

curl https://api.piste.fyi/data/resorts.geojson \
  | jq '{ resorts: (.features | length) }'

curl https://api.piste.fyi/data/resorts/a-basin/trails.geojson \
  | jq '.features | map(.properties.name) | .[0:5]'

Sources & attribution

  • — Resort, trail, and lift geometry: OpenSkiMap (CC-BY-SA).
  • — Run reconstructions and aggregate stats: derived from contributed GoPro telemetry.
  • — Underlying basemap: MapTiler tiles via MapLibre.

Use freely with attribution to "Piste · piste.fyi" while in beta. Commercial / SLA terms come with the Team plan.