بنقرة واحدة
loftgaedi
Icelandic air quality (UST) — PM10, PM2.5, NO2, H2S from 57 monitoring stations, hourly data.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Icelandic air quality (UST) — PM10, PM2.5, NO2, H2S from 57 monitoring stations, hourly data.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Iceland energy authority — electricity generation, use, fuel sales, power plants and licences. Use for energy-system analysis.
Fiskistofa — public WFS layers for fishing closures, regulations and fishing areas; paid REST catch/quota data is excluded.
Hafrannsóknastofnun / MFRI — annual fish-stock assessments, advice, landings and survey series in embedded tables.
Environment Agency of Iceland GIS — open WFS layers for contaminated land, water, protected areas, noise and wastewater.
Icelandic Met Office (Veðurstofa) — weather observations, stations, forecasts and earthquakes via the modern JSON API at api.vedur.is.
Iceland Tax Authority — annual reports (ársreikningar), company registry, ownership chain mapping by kennitala.
| name | loftgaedi |
| description | Icelandic air quality (UST) — PM10, PM2.5, NO2, H2S from 57 monitoring stations, hourly data. |
PM10, PM2.5, NO2, SO2, H2S monitoring via Umhverfisstofnun (Environment Agency).
Base URL: https://api.ust.is/aq/a/
No authentication required. Returns JSON. CORS enabled.
| Endpoint | Description |
|---|---|
getStations | All stations with coordinates, parameters, activity dates |
getStation/{local_id} | Single station metadata |
getLatest | Last 24h for all stations |
getCurrent/{local_id} | Last 24h for one station |
getDate/date/{YYYY-MM-DD} | All stations, all params, one day (hourly) |
{
"STA-IS0005A": {
"name": "Reykjavik Grensas",
"local_id": "STA-IS0005A",
"parameters": {
"PM10": {
"unit": "µg/m3",
"resolution": "1h",
"0": { "endtime": "2024-03-15 23:00:00", "value": "42.5", "verification": 3 },
...
}
}
}
}
Values are strings — cast to float. Numbered keys (0, 1, ...) are hourly readings.
| Station | local_id | Type | Active |
|---|---|---|---|
| Grensásvegur | STA-IS0005A | traffic | 1990– |
| Húsdýragarðurinn | STA-IS0006A | background | 2002– |
| Norðlingaholt | STA-IS0022A | industrial | 2011– |
| Laugarnes | STA-IS0061A | industrial | 2021– |
Primary station for PM10/nagladekk (studded tire) analysis: Grensásvegur (traffic station on major road).
| Parameter | Relevance |
|---|---|
| PM10 | Spring dust from studded tires. EU 24h limit: 50 µg/m³ |
| PM2.5 | Fine particles. EU annual limit: 25 µg/m³ |
| NO2 | Traffic. EU 1h limit: 200 µg/m³ |
| H2S | Geothermal (Hellisheiði). Nuisance smell at 5 µg/m³ |
Annual CSVs at https://api.ust.is/static/aq/ust_aq_timeseries_{YEAR}.csv (62-113 MB each).
station_name, pollutantnotation, local_id, endtime, the_value, resolution, verification, validity, station_local_id, concentrationYYYY-MM-DD HH:MM:SS (2015-2021) and DD/MM/YYYY HH:MM:SS (2022+)station_local_id == "STA-IS0005A" and pollutantnotation == "PM10"the_value < 2000 (values >2000 are instrument faults)import httpx
def fetch_pm10_day(date_str: str, station: str = "STA-IS0005A") -> list[dict]:
"""Fetch hourly PM10 for one day. date_str: YYYY-MM-DD"""
url = f"https://api.ust.is/aq/a/getDate/date/{date_str}"
resp = httpx.get(url, timeout=30)
data = resp.json()
station_data = data.get(station, {})
pm10 = station_data.get("parameters", {}).get("PM10", {})
rows = []
for k, v in pm10.items():
if isinstance(v, dict) and "value" in v:
rows.append({"datetime": v["endtime"], "pm10": float(v["value"])})
return rows
Rate limiting: No documented limits. Use 0.15s delay between requests.
uv run python scripts/loftgaedi.py — downloads bulk CSVs + API for recent data, outputs data/processed/reykjavik_pm10_daily.csv with PM10 + wind + weather joined.
Base URL: http://loftapi.reykjavik.is/api/v1/stations/data/{station}/{pollutant}/{start}/{sh}/{sm}/{end}/{eh}/{em}
Use Open-Meteo for historical daily wind speed in Reykjavik:
https://archive-api.open-meteo.com/v1/archive?latitude=64.13&longitude=-21.90&start_date=2024-01-01&end_date=2024-12-31&daily=wind_speed_10m_max,wind_speed_10m_mean,precipitation_sum&timezone=Atlantic/Reykjavik
Low wind + dry = high PM10 (dust not dispersed). High wind can also resuspend settled dust.