← Geo & Weather

Air Quality Forecast

GET /airquality/forecast

Get a 3-day hourly air quality forecast for any location, including predicted PM2.5, PM10, ozone, and AQI levels. Useful for planning outdoor activities, warning vulnerable populations about upcoming poor air quality days, and building proactive health notification systems. Data from Open-Meteo forecast models.

See it visualized

Parameters

lat required

Latitude

lon required

Longitude

Example Requests

Basic usage
curl "https://nordapi.ee/api/v1/airquality/forecast?lat=59.9&lon=10.7"
Air quality forecast for Oslo
curl "https://nordapi.ee/api/v1/airquality/forecast?lat=59.9&lon=10.7"
Air quality forecast for Delhi
curl "https://nordapi.ee/api/v1/airquality/forecast?lat=28.61&lon=77.21"
Air quality forecast for London
curl "https://nordapi.ee/api/v1/airquality/forecast?lat=51.51&lon=-0.13"

Live Response

{
  "data": {
    "elevation": 0.0,
    "generationtime_ms": 0.4105567932128906,
    "hourly": {
      "european_aqi": [
        15,
        16,
        14,
        14,
        12,
        12,
        13,
        17,
        21,
        23,
        28,
        29,
        32,
        32,
        32,
        32,
        32,
        30,
        29,
        27,
        25,
        24,
        22,
        21,
        20,
        17,
        16,
        16,
        17,
        18,
        20,
        20,
        26,
        31,
        40,
        49,
        53,
        59,
        59,
        57,
        55,
        52,
        49,
        46,
        40,
        36,
        31,
        25,
        21,
        21,
        22,
        22,
        23,
        23,
        23,
        23,
        23,
        26,
        30,
        34,
        37,
        40,
        40,
        38,
        39,
        44,
        48,
        45,
        40,
        45,
        39,
        32
      ],
      "pm10": [
        5.8,
        6.2,
        6.4,
        7.0,
        8.1,
        9.6,
        11.6,
        11.0,
        9.8,
        8.4,
        7.2,
        7.7,
        7.7,
        7.7,
        8.6,
        8.8,
        9.7,
        10.8,
        11.7,
        12.8,
        13.2,
        12.6,
        11.9,
        12.1,
        12.2,
        12.5,
        12.9,
        14.2,
        13.6,
        13.4,
        14.9,
        15.8,
        13.8,
        12.9,
        13.1,
        14.6,
        16.1,
        15.5,
        15.3,
        14.5,
        14.6,
        16.2,
        17.9,
        19.4,
        20.5,
        21.4,
        22.8,
        20.4,
        19.0,
        17.6,
        17.0,
        17.0,
        15.5,
        13.9,
        12.5,
        10.9,
        8.5,
        7.1,
        7.3,
        8.6,
        8.8,
        9.3,
        8.7,
        8.4,
        9.1,
        10.1,
        10.6,
        11.7,
        12.6,
        12.1,
        10.7,
        10.1
      ],
      "pm2_5": [
        4.0,
        4.0,
        4.4,
        5.0,
        5.9,
        6.4,
        7.1,
        6.8,
        6.7,
        6.2,
        5.3,
        5.2,
        5.8,
        5.1,
        5.4,
        5.9,
        6.7,
        6.9,
        6.6,
        6.5,
        7.0,
        7.2,
        7.1,
        6.8,
        6.8,
        7.1,
        7.6,
        8.3,
        8.8,
        8.9,
        8.8,
        8.9,
        8.8,
        8.1,
        7.9,
        8.9,
        9.8,
        10.9,
        10.3,
        10.6,
        11.6,
        13.0,
        13.8,
        13.8,
        13.6,
        15.5,
        15.1,
        14.4,
        13.4,
        12.9,
        12.1,
        12.8,
        11.3,
        10.5,
        10.9,
        9.0,
        7.6,
        6.4,
        6.4,
        7.6,
        6.4,
        7.3,
        7.3,
        6.8,
        7.2,
        8.0,
        7.7,
        7.9,
        9.8,
        9.5,
        8.8,
        8.7
      ],
      "time": [
        "2026-06-26T00:00",
        "2026-06-26T01:00",
        "2026-06-26T02:00",
        "2026-06-26T03:00",
        "2026-06-26T04:00",
        "2026-06-26T05:00",
        "2026-06-26T06:00",
        "2026-06-26T07:00",
        "2026-06-26T08:00",
        "2026-06-26T09:00",
        "2026-06-26T10:00",
        "2026-06-26T11:00",
        "2026-06-26T12:00",
        "2026-06-26T13:00",
        "2026-06-26T14:00",
        "2026-06-26T15:00",
        "2026-06-26T16:00",
        "2026-06-26T17:00",
        "2026-06-26T18:00",
        "2026-06-26T19:00",
        "2026-06-26T20:00",
        "2026-06-26T21:00",
        "2026-06-26T22:00",
        "2026-06-26T23:00",
        "2026-06-27T00:00",
        "2026-06-27T01:00",
        "2026-06-27T02:00",
        "2026-06-27T03:00",
        "2026-06-27T04:00",
        "2026-06-27T05:00",
        "2026-06-27T06:00",
        "2026-06-27T07:00",
        "2026-06-27T08:00",
        "2026-06-27T09:00",
        "2026-06-27T10:00",
        "2026-06-27T11:00",
        "2026-06-27T12:00",
        "2026-06-27T13:00",
        "2026-06-27T14:00",
        "2026-06-27T15:00",
        "2026-06-27T16:00",
        "2026-06-27T17:00",
        "2026-06-27T18:00",
        "2026-06-27T19:00",
        "2026-06-27T20:00",
        "2026-06-27T21:00",
        "2026-06-27T22:00",
        "2026-06-27T23:00",
        "2026-06-28T00:00",
        "2026-06-28T01:00",
        "2026-06-28T02:00",
        "2026-06-28T03:00",
        "2026-06-28T04:00",
        "2026-06-28T05:00",
        "2026-06-28T06:00",
        "2026-06-28T07:00",
        "2026-06-28T08:00",
        "2026-06-28T09:00",
        "2026-06-28T10:00",
        "2026-06-28T11:00",
        "2026-06-28T12:00",
        "2026-06-28T13:00",
        "2026-06-28T14:00",
        "2026-06-28T15:00",
        "2026-06-28T16:00",
        "2026-06-28T17:00",
        "2026-06-28T18:00",
        "2026-06-28T19:00",
        "2026-06-28T20:00",
        "2026-06-28T21:00",
        "2026-06-28T22:00",
        "2026-06-28T23:00"
      ],
      "us_aqi": [
        27,
        25,
        23,
        21,
        19,
        18,
        17,
        16,
        17,
        18,
        18,
        20,
        23,
        25,
        28,
        31,
        33,
        35,
        36,
        36,
        35,
        34,
        33,
        32,
        30,
        29,
        27,
        27,
        27,
        28,
        28,
        28,
        29,
        29,
        29,
        30,
        32,
        36,
        41,
        45,
        50,
        61,
        70,
        73,
        72,
        68,
        60,
        50,
        46,
        45,
        46,
        47,
        47,
        48,
        48,
        48,
        48,
        48,
        48,
        48,
        47,
        47,
        46,
        46,
        45,
        44,
        44,
        46,
        47,
        47,
        48,
        48
      ]
    },
    "hourly_units": {
      "european_aqi": "EAQI",
      "pm10": "μg/m³",
      "pm2_5": "μg/m³",
      "time": "iso8601",
      "us_aqi": "USAQI"
    },
    "latitude": 59.9,
    "longitude": 10.700001,
    "timezone": "GMT",
    "timezone_abbreviation": "GMT",
    "utc_offset_seconds": 0
  },
  "success": true
}