air-quality: Get air quality data

API: open-meteo.com:open-meteo
Endpoint: /v1/air-quality
Response format: application/json
Auth: unknown
Method: GET
Last Status: 200
Latency: 142ms

Description

Provides real-time and forecasted air quality data including US AQI, European AQI, and individual pollutant measurements. Use this endpoint when you need current air quality conditions or forecasts for health recommendations.

From spec: Returns air quality data including pollutant concentrations and AQI values.

Usage Tips

- Coordinates must be within valid ranges: latitude -90 to 90, longitude -180 to 180 - Different AQI scales available: us_aqi, european_aqi - Pollutant options include pm10, pm2_5, carbon_monoxide, nitrogen_dioxide, ozone, sulphur_dioxide - Free for non-commercial use, no API key required

Parameters (7)

current (array, query, optional)

Current conditions variables.

domains (string, query, optional, default: auto)

Air quality domain to use.

Constraints: {'enum': ['auto', 'cams_europe', 'cams_global']}

forecast_days (integer, query, optional)

Number of forecast days (0-7). Default is 5.

Constraints: {'minimum': 0, 'maximum': 7}

hourly (array, query, optional)

Air quality variables: pm10, pm2_5, carbon_monoxide, nitrogen_dioxide, ozone, european_aqi, us_aqi, etc.

latitude (number, query, required)

Geographical WGS84 latitude of the location.

longitude (number, query, required)

Geographical WGS84 longitude of the location.

timezone (string, query, optional)

Timezone for local timestamps.

Examples (1)

Get current air quality for Berlin, Germany probe-gate

Demonstrates fetching current air quality index (US AQI) and particulate matter levels for a major city

curl 'https://air-quality-api.open-meteo.com/v1/air-quality?latitude=52.52&longitude=13.41&current=us_aqi%2Cpm10%2Cpm2_5&hourly=pm10%2Cpm2_5&timezone=auto'
import requests

resp = requests.get(
    "https://air-quality-api.open-meteo.com/v1/air-quality",
    params={
        'latitude': '52.52',
        'longitude': '13.41',
        'current': 'us_aqi,pm10,pm2_5',
        'hourly': 'pm10,pm2_5',
        'timezone': 'auto',
    },
)
data = resp.json()
import zingu_apis

api = zingu_apis.api("open-meteo")
result = api.fetch("v1/air-quality", latitude=52.52, longitude=13.41, current="us_aqi,pm10,pm2_5", hourly="pm10,pm2_5", timezone="auto")

for item in result:
    print(item)
const resp = await fetch("https://air-quality-api.open-meteo.com/v1/air-quality?latitude=52.52&longitude=13.41&current=us_aqi%2Cpm10%2Cpm2_5&hourly=pm10%2Cpm2_5&timezone=auto");
const data = await resp.json();

Probe History

Latency

Status Codes

TimeStatusLatencySize
2026-04-16 00:38:09.817604 200 142ms
2026-04-15 00:14:23.163266 200 145ms
2026-04-14 02:45:23.217548 200 138ms
2026-04-12 14:58:03.608191 200 294ms
2026-04-10 02:55:32.908812 200 768ms
2026-04-09 01:34:08.809968 200 170ms