Air quality API: forecasts, AQI and measured values

Particles, gases, UV and both the European and US air quality indexes for any place on Earth, hour by hour for up to five days, plus pollen over Europe. Next to the forecast, the same key gives what official stations and citizen sensors near you measure right now.

curl "https://geo.runningcat.dev/v1/air?lon=6.869&lat=45.924&hours=48" \
  -H "Authorization: Bearer YOUR_KEY"
Example request

Forecast for a point

{
  "lon": 6.869, "lat": 45.924,
  "current": { "time": "2026-11-07T17:00:00Z", "pm25": 6.3, "pm10": 7.5,
               "nitrogenDioxide": 5.3, "ozone": 51, "sulphurDioxide": 0.2, "carbonMonoxide": 154,
               "dust": 0, "uvIndex": 0, "europeanAqi": 23, "usAqi": 27,
               "alderPollen": 0, "birchPollen": 0, "grassPollen": 0,
               "mugwortPollen": 0, "olivePollen": 0, "ragweedPollen": 0 },
  "hourly": [ { "time": "2026-11-07T17:00:00Z", "pm25": 6.3, ... }, ... ]
}
Hours
1 to 120, default 48
Pollutants
PM2.5, PM10, nitrogen dioxide, ozone, sulphur dioxide, carbon monoxide and dust, in µg/m³; over Europe also ammonia
Indexes
European AQI and US AQI, and the UV index
Pollen
Alder, birch, grass, mugwort, olive and ragweed, grains per m³, over Europe; see the pollen API

The forecasts are from the Copernicus Atmosphere Monitoring Service (CAMS): its European model over Europe and its global model everywhere else.

Over an area

GET /v1/air/area?bbox=west,south,east,north&cells=&hours= returns every value on a grid of up to 400 cells, hour by hour, for maps of smoke, dust or ozone over a region. It takes the same grid as the weather area request.

What stations measure now

A forecast is a model. For what the air is like at this moment, /v1/air/stations lists stations near a point, inside a box or along a route, each with its latest hourly values and its last seven days.

{
  "stations": [
    { "id": "gios:400", "name": "Kraków, Aleja Krasińskiego", "kind": "government",
      "lon": 19.92619, "lat": 50.05768, "distanceKm": 1.02, "time": "2026-11-07T17:00:00.000Z",
      "values": { "co": 750, "no2": 52.1, "pm10": 48.1, "pm25": 41.2 } },
    { "id": "sensorcommunity:68207", "name": null, "kind": "citizen",
      "lon": 19.936, "lat": 50.078, "distanceKm": 2.02, "time": "2026-11-07T17:28:37.000Z",
      "values": { "pm10": 39.3, "pm25": 20.5 } }
  ],
  "credits": [ "..." ]
}

Official stations cover Albania, Andorra, Austria, Belgium, Bosnia and Herzegovina, Bulgaria, Croatia, Cyprus, Czechia, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Luxembourg, Malta, Montenegro, the Netherlands, North Macedonia, Norway, Poland, Portugal, Romania, Serbia, Slovakia, Slovenia, Sweden, Switzerland and the United Kingdom; citizen sensors measure particles in thousands of places worldwide. Each station says which kind it is, and you can ask for one kind only. Citizen sensors show well whether the air is bad right now, but they read high in fog and are not as exact as official stations.

With everything else about a place

GET /v1/point returns the place name, time zone, height, weather, air quality forecast, nearby air stations and river gauges in one request that counts as one. For a box, GET /v1/area does the same per part.

Price

The free plan gives 500 requests a day, also for commercial apps. Developer is $14.99 a month for 5,000 a day and Pro $39.99 a month for 20,000 a day, with weather, map data, river levels, heights and routing on the same key.

Credits: air quality forecasts from Open-Meteo.com (CC BY 4.0), based on Copernicus Atmosphere Monitoring Service data. Measured values: Sensor.Community contributors (ODbL 1.0); Czech Hydrometeorological Institute, ČHMÚ (CC BY 4.0); Źródło danych: GIOŚ - EKOINFONET (CC BY 4.0; current data are unverified); European Environment Agency, up-to-date data reported by the countries (CC BY 4.0; unverified); Syngeos sensor network (syngeos.pl).

The free plan gives 500 requests a day, for commercial apps too. Create an account with Google or your email and make your keys right away.