{"city":"Toulouse","country":"France","lat":43.6042594909668,"lon":1.4436700344085693,"range":"20d","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-20T23:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-21T09:00:00Z","aqi":31,"aqi_min":31,"aqi_max":31,"pm25":7.543638706207275,"pm10":null,"stations":4},{"datetime_utc":"2026-05-22T07:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.226020336151123,"pm10":null,"stations":4},{"datetime_utc":"2026-05-23T08:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.047588348388672,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T08:00:00Z","aqi":29,"aqi_min":29,"aqi_max":29,"pm25":6.98049259185791,"pm10":null,"stations":3},{"datetime_utc":"2026-05-24T16:00:00Z","aqi":24,"aqi_min":24,"aqi_max":24,"pm25":5.831545829772949,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T02:00:00Z","aqi":26,"aqi_min":26,"aqi_max":26,"pm25":6.239999771118164,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T12:00:00Z","aqi":27,"aqi_min":27,"aqi_max":27,"pm25":6.480000019073486,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T16:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T10:00:00Z","aqi":55,"aqi_min":55,"aqi_max":55,"pm25":14.062214851379395,"pm10":null,"stations":3},{"datetime_utc":"2026-05-31T04:00:00Z","aqi":35,"aqi_min":35,"aqi_max":35,"pm25":8.435772895812988,"pm10":null,"stations":2},{"datetime_utc":"2026-05-31T06:00:00Z","aqi":33,"aqi_min":33,"aqi_max":33,"pm25":7.920000076293945,"pm10":null,"stations":1},{"datetime_utc":"2026-06-01T11:00:00Z","aqi":22,"aqi_min":22,"aqi_max":22,"pm25":5.372504711151123,"pm10":null,"stations":3},{"datetime_utc":"2026-06-01T13:00:00Z","aqi":20,"aqi_min":20,"aqi_max":20,"pm25":4.83577299118042,"pm10":null,"stations":2},{"datetime_utc":"2026-06-01T17:00:00Z","aqi":34,"aqi_min":34,"aqi_max":34,"pm25":8.279475212097168,"pm10":null,"stations":5},{"datetime_utc":"2026-06-01T18:00:00Z","aqi":34,"aqi_min":34,"aqi_max":34,"pm25":8.266378402709961,"pm10":null,"stations":6},{"datetime_utc":"2026-06-01T19:00:00Z","aqi":33,"aqi_min":33,"aqi_max":33,"pm25":7.920000076293945,"pm10":null,"stations":6},{"datetime_utc":"2026-06-01T22:00:00Z","aqi":46,"aqi_min":46,"aqi_max":46,"pm25":11.039999961853027,"pm10":null,"stations":1},{"datetime_utc":"2026-06-01T23:00:00Z","aqi":53,"aqi_min":53,"aqi_max":53,"pm25":13.051019668579102,"pm10":null,"stations":1},{"datetime_utc":"2026-06-02T00:00:00Z","aqi":22,"aqi_min":22,"aqi_max":22,"pm25":5.28000020980835,"pm10":null,"stations":1},{"datetime_utc":"2026-06-02T03:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.737886428833008,"pm10":null,"stations":2},{"datetime_utc":"2026-06-04T02:00:00Z","aqi":20,"aqi_min":20,"aqi_max":20,"pm25":4.741913318634033,"pm10":null,"stations":3},{"datetime_utc":"2026-06-05T20:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.901181936264038,"pm10":null,"stations":3},{"datetime_utc":"2026-06-06T17:00:00Z","aqi":31,"aqi_min":31,"aqi_max":31,"pm25":7.534482479095459,"pm10":null,"stations":7},{"datetime_utc":"2026-06-07T00:00:00Z","aqi":24,"aqi_min":24,"aqi_max":24,"pm25":5.693659782409668,"pm10":null,"stations":2},{"datetime_utc":"2026-06-07T22:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.156552791595459,"pm10":null,"stations":7},{"datetime_utc":"2026-06-09T04:00:00Z","aqi":8,"aqi_min":8,"aqi_max":8,"pm25":2.022113561630249,"pm10":null,"stations":2}],"daily":[{"date":"2026-05-20","aqi_avg":25,"aqi_min":25,"aqi_max":25,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":6.0,"pm10_avg":null,"hours":1,"stations_avg":1},{"date":"2026-05-21","aqi_avg":31,"aqi_min":31,"aqi_max":31,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":7.5,"pm10_avg":null,"hours":1,"stations_avg":4},{"date":"2026-05-22","aqi_avg":30,"aqi_min":30,"aqi_max":30,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":7.2,"pm10_avg":null,"hours":1,"stations_avg":4},{"date":"2026-05-23","aqi_avg":25,"aqi_min":25,"aqi_max":25,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":6.0,"pm10_avg":null,"hours":1,"stations_avg":2},{"date":"2026-05-24","aqi_avg":26,"aqi_min":24,"aqi_max":29,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":6.4,"pm10_avg":null,"hours":2,"stations_avg":2},{"date":"2026-05-26","aqi_avg":26,"aqi_min":26,"aqi_max":27,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":6.4,"pm10_avg":null,"hours":2,"stations_avg":2},{"date":"2026-05-27","aqi_avg":25,"aqi_min":25,"aqi_max":25,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":6.0,"pm10_avg":null,"hours":1,"stations_avg":1},{"date":"2026-05-29","aqi_avg":55,"aqi_min":55,"aqi_max":55,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":14.1,"pm10_avg":null,"hours":1,"stations_avg":3},{"date":"2026-05-31","aqi_avg":34,"aqi_min":33,"aqi_max":35,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":8.2,"pm10_avg":null,"hours":2,"stations_avg":2},{"date":"2026-06-01","aqi_avg":35,"aqi_min":20,"aqi_max":53,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":8.4,"pm10_avg":null,"hours":7,"stations_avg":3},{"date":"2026-06-02","aqi_avg":19,"aqi_min":16,"aqi_max":22,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":4.5,"pm10_avg":null,"hours":2,"stations_avg":2},{"date":"2026-06-04","aqi_avg":20,"aqi_min":20,"aqi_max":20,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":4.7,"pm10_avg":null,"hours":1,"stations_avg":3},{"date":"2026-06-05","aqi_avg":16,"aqi_min":16,"aqi_max":16,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":3.9,"pm10_avg":null,"hours":1,"stations_avg":3},{"date":"2026-06-06","aqi_avg":31,"aqi_min":31,"aqi_max":31,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":7.5,"pm10_avg":null,"hours":1,"stations_avg":7},{"date":"2026-06-07","aqi_avg":27,"aqi_min":24,"aqi_max":30,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":6.4,"pm10_avg":null,"hours":2,"stations_avg":4},{"date":"2026-06-09","aqi_avg":8,"aqi_min":8,"aqi_max":8,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":2.0,"pm10_avg":null,"hours":1,"stations_avg":2}]}