{"city":"Olhão","country":"Portugal","lat":37.02859878540039,"lon":-7.841100215911865,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-29T02:00:00Z","aqi":29,"aqi_min":25,"aqi_max":33,"pm25":6.96,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T03:00:00Z","aqi":25,"aqi_min":16,"aqi_max":33,"pm25":5.88,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T04:00:00Z","aqi":21,"aqi_min":15,"aqi_max":27,"pm25":5.04,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T05:00:00Z","aqi":34,"aqi_min":34,"aqi_max":34,"pm25":8.16,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T06:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T08:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T11:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T16:00:00Z","aqi":47,"aqi_min":45,"aqi_max":49,"pm25":11.28,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T17:00:00Z","aqi":44,"aqi_min":42,"aqi_max":46,"pm25":10.56,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T19:00:00Z","aqi":51,"aqi_min":51,"aqi_max":51,"pm25":12.1,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T21:00:00Z","aqi":38,"aqi_min":38,"aqi_max":39,"pm25":9.24,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T02:00:00Z","aqi":27,"aqi_min":27,"aqi_max":27,"pm25":6.48,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T03:00:00Z","aqi":50,"aqi_min":50,"aqi_max":50,"pm25":12.0,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T04:00:00Z","aqi":40,"aqi_min":32,"aqi_max":47,"pm25":9.48,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T05:00:00Z","aqi":12,"aqi_min":12,"aqi_max":12,"pm25":2.88,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T07:00:00Z","aqi":54,"aqi_min":15,"aqi_max":74,"pm25":13.32,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T08:00:00Z","aqi":24,"aqi_min":18,"aqi_max":30,"pm25":5.76,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T10:00:00Z","aqi":28,"aqi_min":25,"aqi_max":32,"pm25":6.84,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T11:00:00Z","aqi":40,"aqi_min":40,"aqi_max":40,"pm25":9.6,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T12:00:00Z","aqi":37,"aqi_min":31,"aqi_max":42,"pm25":8.76,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T13:00:00Z","aqi":7,"aqi_min":7,"aqi_max":7,"pm25":1.68,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T15:00:00Z","aqi":49,"aqi_min":49,"aqi_max":49,"pm25":11.76,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T17:00:00Z","aqi":44,"aqi_min":44,"aqi_max":44,"pm25":10.56,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T18:00:00Z","aqi":27,"aqi_min":27,"aqi_max":27,"pm25":6.48,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T20:00:00Z","aqi":23,"aqi_min":17,"aqi_max":30,"pm25":5.64,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T21:00:00Z","aqi":68,"aqi_min":68,"aqi_max":68,"pm25":20.18,"pm10":null,"stations":1}],"daily":[{"date":"2026-05-29","aqi_avg":32,"aqi_min":17,"aqi_max":51,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":7.7,"pm10_avg":null,"hours":11,"stations_avg":2},{"date":"2026-05-30","aqi_avg":35,"aqi_min":7,"aqi_max":68,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":8.8,"pm10_avg":null,"hours":15,"stations_avg":1}]}