{"city":"Saanich","country":"Canada","lat":48.54964065551758,"lon":-123.36930847167969,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-06-07T14:00:00Z","aqi":57,"aqi_min":9,"aqi_max":123,"pm25":15.07,"pm10":null,"stations":13},{"datetime_utc":"2026-06-07T15:00:00Z","aqi":25,"aqi_min":10,"aqi_max":38,"pm25":6.12,"pm10":null,"stations":4},{"datetime_utc":"2026-06-07T16:00:00Z","aqi":35,"aqi_min":7,"aqi_max":57,"pm25":8.25,"pm10":null,"stations":6},{"datetime_utc":"2026-06-07T17:00:00Z","aqi":26,"aqi_min":8,"aqi_max":53,"pm25":6.26,"pm10":null,"stations":4},{"datetime_utc":"2026-06-07T18:00:00Z","aqi":33,"aqi_min":12,"aqi_max":53,"pm25":7.97,"pm10":null,"stations":2},{"datetime_utc":"2026-06-07T19:00:00Z","aqi":56,"aqi_min":25,"aqi_max":74,"pm25":14.52,"pm10":null,"stations":2},{"datetime_utc":"2026-06-07T20:00:00Z","aqi":23,"aqi_min":13,"aqi_max":33,"pm25":5.44,"pm10":null,"stations":3},{"datetime_utc":"2026-06-07T21:00:00Z","aqi":53,"aqi_min":5,"aqi_max":126,"pm25":12.85,"pm10":null,"stations":4},{"datetime_utc":"2026-06-07T22:00:00Z","aqi":35,"aqi_min":35,"aqi_max":35,"pm25":8.4,"pm10":null,"stations":1},{"datetime_utc":"2026-06-07T23:00:00Z","aqi":36,"aqi_min":3,"aqi_max":89,"pm25":8.74,"pm10":null,"stations":4},{"datetime_utc":"2026-06-08T00:00:00Z","aqi":73,"aqi_min":15,"aqi_max":117,"pm25":22.56,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T01:00:00Z","aqi":53,"aqi_min":9,"aqi_max":85,"pm25":12.99,"pm10":null,"stations":4},{"datetime_utc":"2026-06-08T02:00:00Z","aqi":178,"aqi_min":9,"aqi_max":423,"pm25":106.88,"pm10":null,"stations":4},{"datetime_utc":"2026-06-08T03:00:00Z","aqi":69,"aqi_min":20,"aqi_max":129,"pm25":20.66,"pm10":null,"stations":5},{"datetime_utc":"2026-06-08T04:00:00Z","aqi":4,"aqi_min":4,"aqi_max":4,"pm25":0.96,"pm10":null,"stations":1},{"datetime_utc":"2026-06-08T05:00:00Z","aqi":81,"aqi_min":17,"aqi_max":140,"pm25":26.47,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T06:00:00Z","aqi":23,"aqi_min":6,"aqi_max":46,"pm25":5.64,"pm10":null,"stations":4},{"datetime_utc":"2026-06-08T07:00:00Z","aqi":82,"aqi_min":13,"aqi_max":131,"pm25":26.83,"pm10":null,"stations":5},{"datetime_utc":"2026-06-08T08:00:00Z","aqi":41,"aqi_min":28,"aqi_max":49,"pm25":9.84,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T09:00:00Z","aqi":89,"aqi_min":13,"aqi_max":152,"pm25":30.28,"pm10":null,"stations":2},{"datetime_utc":"2026-06-08T10:00:00Z","aqi":53,"aqi_min":40,"aqi_max":60,"pm25":13.0,"pm10":null,"stations":5},{"datetime_utc":"2026-06-08T11:00:00Z","aqi":55,"aqi_min":19,"aqi_max":97,"pm25":14.05,"pm10":null,"stations":5},{"datetime_utc":"2026-06-08T12:00:00Z","aqi":8,"aqi_min":5,"aqi_max":13,"pm25":1.92,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T13:00:00Z","aqi":91,"aqi_min":30,"aqi_max":161,"pm25":31.2,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T15:00:00Z","aqi":18,"aqi_min":3,"aqi_max":30,"pm25":4.4,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T16:00:00Z","aqi":67,"aqi_min":5,"aqi_max":137,"pm25":19.81,"pm10":null,"stations":7},{"datetime_utc":"2026-06-08T17:00:00Z","aqi":10,"aqi_min":2,"aqi_max":14,"pm25":2.4,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T18:00:00Z","aqi":22,"aqi_min":10,"aqi_max":42,"pm25":5.28,"pm10":null,"stations":4},{"datetime_utc":"2026-06-08T19:00:00Z","aqi":20,"aqi_min":5,"aqi_max":38,"pm25":4.85,"pm10":null,"stations":5},{"datetime_utc":"2026-06-08T20:00:00Z","aqi":57,"aqi_min":21,"aqi_max":85,"pm25":14.94,"pm10":null,"stations":3},{"datetime_utc":"2026-06-08T21:00:00Z","aqi":12,"aqi_min":6,"aqi_max":19,"pm25":2.88,"pm10":null,"stations":5},{"datetime_utc":"2026-06-08T22:00:00Z","aqi":51,"aqi_min":13,"aqi_max":70,"pm25":12.13,"pm10":null,"stations":2},{"datetime_utc":"2026-06-08T23:00:00Z","aqi":40,"aqi_min":10,"aqi_max":72,"pm25":9.46,"pm10":null,"stations":8},{"datetime_utc":"2026-06-09T00:00:00Z","aqi":36,"aqi_min":15,"aqi_max":55,"pm25":8.6,"pm10":null,"stations":4},{"datetime_utc":"2026-06-09T01:00:00Z","aqi":51,"aqi_min":11,"aqi_max":153,"pm25":12.32,"pm10":null,"stations":8},{"datetime_utc":"2026-06-09T02:00:00Z","aqi":52,"aqi_min":11,"aqi_max":93,"pm25":12.8,"pm10":null,"stations":8},{"datetime_utc":"2026-06-09T03:00:00Z","aqi":31,"aqi_min":11,"aqi_max":89,"pm25":7.49,"pm10":null,"stations":9},{"datetime_utc":"2026-06-09T04:00:00Z","aqi":31,"aqi_min":4,"aqi_max":97,"pm25":7.54,"pm10":null,"stations":6},{"datetime_utc":"2026-06-09T05:00:00Z","aqi":41,"aqi_min":7,"aqi_max":63,"pm25":9.8,"pm10":null,"stations":5},{"datetime_utc":"2026-06-09T06:00:00Z","aqi":39,"aqi_min":39,"aqi_max":39,"pm25":9.36,"pm10":null,"stations":1},{"datetime_utc":"2026-06-09T07:00:00Z","aqi":42,"aqi_min":7,"aqi_max":65,"pm25":10.22,"pm10":null,"stations":2},{"datetime_utc":"2026-06-09T08:00:00Z","aqi":55,"aqi_min":5,"aqi_max":104,"pm25":14.14,"pm10":null,"stations":7},{"datetime_utc":"2026-06-09T09:00:00Z","aqi":43,"aqi_min":8,"aqi_max":87,"pm25":10.42,"pm10":null,"stations":4},{"datetime_utc":"2026-06-09T10:00:00Z","aqi":8,"aqi_min":5,"aqi_max":13,"pm25":2.02,"pm10":null,"stations":10},{"datetime_utc":"2026-06-09T11:00:00Z","aqi":12,"aqi_min":12,"aqi_max":12,"pm25":2.88,"pm10":null,"stations":1},{"datetime_utc":"2026-06-09T12:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1}],"daily":[{"date":"2026-06-07","aqi_avg":38,"aqi_min":23,"aqi_max":57,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":9.4,"pm10_avg":null,"hours":10,"stations_avg":4},{"date":"2026-06-08","aqi_avg":52,"aqi_min":4,"aqi_max":178,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":17.4,"pm10_avg":null,"hours":23,"stations_avg":4},{"date":"2026-06-09","aqi_avg":35,"aqi_min":8,"aqi_max":55,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":8.5,"pm10_avg":null,"hours":13,"stations_avg":5}]}