Open-Meteo is a free, open-source REST API that delivers weather forecasts, historical weather records, air quality data, marine conditions, solar radiation, and geocoding services. It aggregates data from dozens of freely licensed global and regional numerical weather models, making a broad set of environmental information accessible through a single API endpoint.
The API uses a multi-model query router that automatically selects the most suitable model for any location, time range, and variable requested, while also allowing manual model choice. It handles unit and timezone conversion on the fly, supports configurable temporal resolutions (hourly, fifteen-minute, daily, or current conditions), and enables queries over custom time ranges including historical archives from 1940 onward. A built-in geocoding service performs fuzzy location matching from place names and postal codes, and a terrain elevation lookup is available from high-resolution digital elevation models.
The data domains cover weather forecasts (current conditions, hourly, daily, ensemble predictions, upper-air pressure levels, sub-hourly nowcasts, and global, regional, and national model outputs), climate and seasonal forecasts up to seven months ahead, air quality and pollen forecasts, marine weather (wave height, swell components, ocean currents, sea surface temperature, and tides), solar radiation components (global, direct, diffuse, and tilted irradiance), and river discharge data. Archived forecast model outputs from past initialization times are also retrievable for bias correction and machine learning post-processing.
The project is implemented in Swift and exposes its functionality through REST endpoints that return JSON, CSV, or XLSX output. Documentation and interactive API exploration are available at open-meteo.com.