The WhatAWeather API

A REST API covering weather, ski resorts, surf, beaches, reservoirs and the forecast along a route. The same climatology that sits behind the pages of this site, computed from the ERA5 reanalysis of the Copernicus Climate Data Store.

Get a key OpenAPI specification

Getting started

Request a key with your email or by signing in with Google, then send it in the X-API-Key header. That is all.

# Spanish ski resorts, nearest first curl -H "X-API-Key: YOUR_KEY" \ "https://whataweather.com/api/v2/ski/resorts?lat=42.57&lon=-0.55&radius_km=80"

Every response has the same shape: {"data": …, "meta": {…}}, and errors {"error": {"code": …, "message": …}}. The rate limit travels in the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.

What you can query

ResourceWhat it returnsPlan
/ski/resorts114 resorts worldwide with base and top elevation, filterable by country, bounding box or proximity.Free
/ski/resorts/{id}Profile and month-by-month climatology: snowfall, powder days, frost, wind and typical season.Free
/ski/resorts/{id}/conditionsSnow depth, temperature and wind at base and top elevation separately, snowfall over the last 24 and 72 hours and the next, freezing level and visibility.Pro
/surf/spots18 spots on the Spanish coast with their beach orientation.Free
/surf/spots/{id}Month-by-month wave climatology, with the dominant swell direction.Free
/surf/spots/{id}/conditionsWave height, period, swell, sea temperature and wind, with the type relative to the beach: offshore, onshore or cross-shore.Pro
/beaches/{id}Climatology for 30 beaches: air, sea, waves, wind, sunshine and rain days.Free
/reservoirsWater in storage by reservoir and basin, from the Spanish Ministry for the Ecological Transition.Free
/weatherCurrent conditions and forecast up to 16 days, by coordinates or by place name.Pro
/routeForecast along a route, for car, road bike, MTB, hiking and mountain.Pro

Route forecasting, which is the part you will not find elsewhere

It does not return the weather as it is now at twelve points: it returns the weather that will be at each point at the estimated time of passing. That is the whole difference between a route forecast and twelve separate lookups.

# A walk up, setting off at eight in the morning curl -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" -X POST \ https://whataweather.com/api/v2/route \ -d '{"activity":"hiking","start":"2026-10-16T08:00:00Z", "points":[{"lat":40.8186,"lon":-3.9637,"name":"Cotos"}, {"lat":40.8510,"lon":-3.9570,"name":"Peñalara"}]}'

The mountain activities — hiking, mtb and mountain — add the freezing level, snowfall, UV index and a thunderstorm risk derived from CAPE. Warning thresholds change with the activity: a 60 km/h gust is an annoyance in a car and a serious problem on a ridge or on a bike.

Up to 24 points; a longer track is resampled along the route, always keeping the start and the finish.

Plans

FreePro
Catalogue and climatologyYesYes
ReservoirsYesYes
Live forecast and routesNoYes
Requests per hour50020,000

The free plan activates itself when you create the key. Pro is taken out from your account.

Where the data comes from

The climatology for ski, surf and beaches is our own: computed from the ERA5 reanalysis of the Copernicus Climate Data Store, under a CC-BY 4.0 licence. The reservoir figures are the official data of the Spanish Ministry for the Ecological Transition. The live forecast comes from numerical models served by Open-Meteo (ECMWF, ICON and GFS) and from the marine model for waves.

Every response declares its source and licence in meta, so you can attribute it without guessing. What the API does not do is replace an official warning: for weather alerts in Spain, AEMET is the authority, and in an emergency the number is 112.

Terms of use

One key per application, up to five per account. Do not ship a key inside a distributed app: anyone can pull it out of a binary. The right shape is your app talking to your server, and your server talking to this API.

If a key leaks, revoke it from your account and create another: it takes effect at once. See also the terms of use and the privacy policy.

Get a key