Sviluppatori

Riferimento API

Storico

Le medie giornaliere di una città per qualsiasi periodo dal 2017 e tutto il suo storico per mese, con medie annuali e record.

Storico giornaliero

GEThttps://api.atmy.ai/v1/air-quality/history

Le medie giornaliere del Data Hub (UTC): gli ultimi giorni con days= o qualsiasi periodo dal 2017 con from= e to=, al massimo 400 giorni per richiesta; manca un giorno con troppo pochi sensori. Dal 2026-01-19 ogni giorno riporta anche il suo meteo: temperatura media, minima e massima, umidità, pressione, vento, raffica più forte e nuvolosità.

Parametri della query

city string facoltativo

Nome della città in una delle lingue del sito, slug (paese/città) o id.

country string facoltativo

Nome o slug del paese, per distinguere città con lo stesso nome.

days integer facoltativo

Giorni indietro dall’ultimo giorno completo; ignorato con from e to.

Predefinito: 30

from date facoltativo

Primo giorno (UTC), 2017-01-01 o successivo.

to date facoltativo

Ultimo giorno (UTC); per impostazione predefinita l’ultimo giorno completo. Al massimo 400 giorni per richiesta.

lang string facoltativo

Lingua dei nomi di città e paese e del link alla pagina.

Predefinito: en

GET/air-quality/history?city=germany/berlin&days=30
curl "https://api.atmy.ai/v1/air-quality/history?city=germany/berlin&days=30"
200Risposta
{
  "city": {
    "id": 50037,
    "slug": "germany/berlin",
    "name": "Berlin",
    "country": "Germany",
    "timezone": "Europe/Berlin",
    "center": {
      "lat": 52.5073,
      "lon": 13.3979
    },
    "page": "https://atmy.ai/air-quality/germany/berlin/"
  },
  "unit": "ug/m3",
  "method": "datahub_daily",
  "period_timezone": "UTC",
  "category_scale": "US_EPA_2024",
  "from": "2026-10-24",
  "to": "2026-10-26",
  "available_since": "2017-01-01",
  "days": [
    {
      "date": "2026-10-24",
      "pm25": 3.4,
      "sensors": 172,
      "level": "good",
      "weather": {
        "temperature_c": 10.1,
        "temperature_min_c": 6.7,
        "temperature_max_c": 14.7,
        "humidity_percent": 71,
        "pressure_hpa": 1010,
        "wind_m_s": 4.3,
        "wind_gust_max_m_s": 12.7,
        "clouds_percent": 83,
        "observations": 7
      }
    },
    {
      "date": "2026-10-25",
      "pm25": 3.9,
      "sensors": 174,
      "level": "good",
      "weather": {
        "temperature_c": 9.8,
        "temperature_min_c": 7.2,
        "temperature_max_c": 14.6,
        "humidity_percent": 72,
        "pressure_hpa": 1002,
        "wind_m_s": 5,
        "wind_gust_max_m_s": 14.7,
        "clouds_percent": 86,
        "observations": 7
      }
    },
    {
      "date": "2026-10-26",
      "pm25": 4.6,
      "sensors": 176,
      "level": "good",
      "weather": {
        "temperature_c": 9,
        "temperature_min_c": 7.2,
        "temperature_max_c": 13.4,
        "humidity_percent": 73,
        "pressure_hpa": 1014,
        "wind_m_s": 3.2,
        "wind_gust_max_m_s": 11.2,
        "clouds_percent": 44,
        "observations": 7
      }
    }
  ],
  "weather_since": "2026-01-19",
  "weather_notes": "weather: means of the readings Atmy stored for the city on the UTC day (observations: how many); temperature_min_c and temperature_max_c are the lowest and highest the provider reported for the day; wind_gust_max_m_s the strongest gust. No precipitation sum: the readings are instants.",
  "weather_attribution": "Weather: OpenWeatherMap (to 2026-07-08, CC BY-SA 4.0) and Open-Meteo.com (from 2026-07-09, CC BY 4.0), collected by Atmy."
}

Storico mensile

GEThttps://api.atmy.ai/v1/air-quality/history/monthly

L’intera storia delle misurazioni di una città per mese: medie annuali (anni completi segnalati), i mesi e i giorni più inquinati e più puliti. I valori basati sulle medie giornaliere della rete di sensori stessa sono segnalati. Da gennaio 2026 ogni mese riporta anche il suo meteo.

Parametri della query

city string facoltativo

Nome della città in una delle lingue del sito, slug (paese/città) o id.

country string facoltativo

Nome o slug del paese, per distinguere città con lo stesso nome.

lang string facoltativo

Lingua dei nomi di città e paese e del link alla pagina.

Predefinito: en

GET/air-quality/history/monthly?city=germany/berlin
curl "https://api.atmy.ai/v1/air-quality/history/monthly?city=germany/berlin"
200Risposta
{
  "city": {
    "id": 50037,
    "slug": "germany/berlin",
    "name": "Berlin",
    "country": "Germany",
    "timezone": "Europe/Berlin",
    "center": {
      "lat": 52.5073,
      "lon": 13.3979
    },
    "page": "https://atmy.ai/air-quality/germany/berlin/"
  },
  "unit": "ug/m3",
  "method": "datahub_monthly",
  "period_timezone": "UTC",
  "notes": "A month is the mean of its sensors; a sensor is the mean of its quality-checked days. Yearly means use months with data on at least half of their days; only complete years (12 months) compare as a whole. The number of sensors grew over the years, so comparisons are approximate. source_daily_days / source_daily_sensors: values that include the daily means of the sensor network itself where no hourly readings were kept. weather: means of the readings Atmy stored for the city in the month, its lowest and highest temperature.",
  "since": "2025-01",
  "months": [
    {
      "month": "2025-01",
      "pm25": 8.1,
      "sensors": 174,
      "days_with_data": 30,
      "days": 31
    },
    {
      "month": "2025-02",
      "pm25": 14.5,
      "sensors": 175,
      "days_with_data": 28,
      "days": 28
    }
  ],
  "years": [
    {
      "year": "2025",
      "pm25": 9,
      "months": 12,
      "complete": true
    },
    {
      "year": "2026",
      "pm25": 8.7,
      "months": 10,
      "complete": false
    }
  ],
  "dirtiest_months": [
    {
      "month": "2026-01",
      "pm25": 18.3,
      "sensors": 191,
      "days_with_data": 31,
      "days": 31
    },
    {
      "month": "2026-02",
      "pm25": 15.8,
      "sensors": 193,
      "days_with_data": 28,
      "days": 28
    }
  ],
  "cleanest_months": [
    {
      "month": "2026-09",
      "pm25": 4.5,
      "sensors": 205,
      "days_with_data": 30,
      "days": 30
    },
    {
      "month": "2026-06",
      "pm25": 5.1,
      "sensors": 195,
      "days_with_data": 30,
      "days": 30
    }
  ],
  "dirtiest_days": [
    {
      "date": "2026-01-23",
      "pm25": 40.3,
      "sensors": 183
    },
    {
      "date": "2025-02-13",
      "pm25": 35.5,
      "sensors": 162
    }
  ],
  "cleanest_days": [
    {
      "date": "2025-04-06",
      "pm25": 1.7,
      "sensors": 173
    },
    {
      "date": "2025-04-07",
      "pm25": 1.7,
      "sensors": 170
    }
  ],
  "weather_since": "2026-01-19",
  "weather_attribution": "Weather: OpenWeatherMap (to 2026-07-08, CC BY-SA 4.0) and Open-Meteo.com (from 2026-07-09, CC BY 4.0), collected by Atmy."
}