{"city":"St. Thomas","country":"Canada","lat":42.77360916137695,"lon":-81.18038177490234,"range":"7d","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-23T21:00:00Z","aqi":82,"aqi_min":25,"aqi_max":152,"pm25":26.92,"pm10":null,"stations":4},{"datetime_utc":"2026-05-23T22:00:00Z","aqi":21,"aqi_min":16,"aqi_max":26,"pm25":5.04,"pm10":null,"stations":2},{"datetime_utc":"2026-05-23T23:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T01:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T02:00:00Z","aqi":30,"aqi_min":18,"aqi_max":46,"pm25":7.12,"pm10":null,"stations":3},{"datetime_utc":"2026-05-24T03:00:00Z","aqi":7,"aqi_min":7,"aqi_max":7,"pm25":1.68,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T04:00:00Z","aqi":27,"aqi_min":27,"aqi_max":27,"pm25":6.48,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T05:00:00Z","aqi":86,"aqi_min":7,"aqi_max":165,"pm25":28.82,"pm10":null,"stations":3},{"datetime_utc":"2026-05-24T07:00:00Z","aqi":20,"aqi_min":20,"aqi_max":20,"pm25":4.8,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T08:00:00Z","aqi":32,"aqi_min":19,"aqi_max":45,"pm25":7.68,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T09:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T10:00:00Z","aqi":64,"aqi_min":64,"aqi_max":64,"pm25":18.28,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T11:00:00Z","aqi":113,"aqi_min":19,"aqi_max":158,"pm25":40.52,"pm10":null,"stations":3},{"datetime_utc":"2026-05-24T12:00:00Z","aqi":33,"aqi_min":29,"aqi_max":37,"pm25":7.92,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T13:00:00Z","aqi":13,"aqi_min":6,"aqi_max":21,"pm25":3.24,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T17:00:00Z","aqi":53,"aqi_min":53,"aqi_max":53,"pm25":13.05,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T18:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T19:00:00Z","aqi":30,"aqi_min":5,"aqi_max":53,"pm25":7.1,"pm10":null,"stations":4},{"datetime_utc":"2026-05-24T20:00:00Z","aqi":28,"aqi_min":22,"aqi_max":34,"pm25":6.72,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T21:00:00Z","aqi":67,"aqi_min":20,"aqi_max":117,"pm25":19.6,"pm10":null,"stations":3},{"datetime_utc":"2026-05-24T22:00:00Z","aqi":24,"aqi_min":24,"aqi_max":24,"pm25":5.76,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T23:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T00:00:00Z","aqi":27,"aqi_min":22,"aqi_max":32,"pm25":6.48,"pm10":null,"stations":2},{"datetime_utc":"2026-05-25T01:00:00Z","aqi":70,"aqi_min":70,"aqi_max":70,"pm25":21.13,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T02:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T03:00:00Z","aqi":427,"aqi_min":427,"aqi_max":427,"pm25":408.73,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T05:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T06:00:00Z","aqi":37,"aqi_min":8,"aqi_max":78,"pm25":8.75,"pm10":null,"stations":4},{"datetime_utc":"2026-05-25T08:00:00Z","aqi":13,"aqi_min":13,"aqi_max":14,"pm25":3.24,"pm10":null,"stations":2},{"datetime_utc":"2026-05-25T09:00:00Z","aqi":49,"aqi_min":10,"aqi_max":70,"pm25":11.77,"pm10":null,"stations":2},{"datetime_utc":"2026-05-25T10:00:00Z","aqi":51,"aqi_min":2,"aqi_max":72,"pm25":12.14,"pm10":null,"stations":4},{"datetime_utc":"2026-05-25T11:00:00Z","aqi":25,"aqi_min":21,"aqi_max":28,"pm25":6.12,"pm10":null,"stations":4},{"datetime_utc":"2026-05-25T13:00:00Z","aqi":44,"aqi_min":21,"aqi_max":59,"pm25":10.47,"pm10":null,"stations":2},{"datetime_utc":"2026-05-25T15:00:00Z","aqi":15,"aqi_min":15,"aqi_max":15,"pm25":3.6,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T16:00:00Z","aqi":89,"aqi_min":89,"aqi_max":89,"pm25":30.17,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T17:00:00Z","aqi":80,"aqi_min":80,"aqi_max":80,"pm25":25.89,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T20:00:00Z","aqi":15,"aqi_min":15,"aqi_max":15,"pm25":3.6,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T22:00:00Z","aqi":101,"aqi_min":20,"aqi_max":186,"pm25":35.68,"pm10":null,"stations":4},{"datetime_utc":"2026-05-25T23:00:00Z","aqi":17,"aqi_min":13,"aqi_max":21,"pm25":4.08,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T00:00:00Z","aqi":56,"aqi_min":16,"aqi_max":99,"pm25":14.44,"pm10":null,"stations":3},{"datetime_utc":"2026-05-26T01:00:00Z","aqi":164,"aqi_min":164,"aqi_max":164,"pm25":80.68,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T02:00:00Z","aqi":54,"aqi_min":30,"aqi_max":68,"pm25":13.69,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T05:00:00Z","aqi":53,"aqi_min":53,"aqi_max":53,"pm25":13.05,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T06:00:00Z","aqi":41,"aqi_min":41,"aqi_max":41,"pm25":9.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T10:00:00Z","aqi":12,"aqi_min":12,"aqi_max":12,"pm25":2.88,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T12:00:00Z","aqi":31,"aqi_min":26,"aqi_max":36,"pm25":7.44,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T13:00:00Z","aqi":30,"aqi_min":15,"aqi_max":42,"pm25":7.28,"pm10":null,"stations":3},{"datetime_utc":"2026-05-26T14:00:00Z","aqi":28,"aqi_min":28,"aqi_max":28,"pm25":6.72,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T15:00:00Z","aqi":64,"aqi_min":43,"aqi_max":94,"pm25":18.21,"pm10":null,"stations":3},{"datetime_utc":"2026-05-26T17:00:00Z","aqi":42,"aqi_min":42,"aqi_max":42,"pm25":10.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T18:00:00Z","aqi":87,"aqi_min":87,"aqi_max":87,"pm25":29.22,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T19:00:00Z","aqi":31,"aqi_min":31,"aqi_max":31,"pm25":7.44,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T20:00:00Z","aqi":68,"aqi_min":36,"aqi_max":92,"pm25":20.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T21:00:00Z","aqi":41,"aqi_min":14,"aqi_max":80,"pm25":9.77,"pm10":null,"stations":4},{"datetime_utc":"2026-05-26T22:00:00Z","aqi":18,"aqi_min":7,"aqi_max":28,"pm25":4.2,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T23:00:00Z","aqi":55,"aqi_min":55,"aqi_max":55,"pm25":14.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T00:00:00Z","aqi":72,"aqi_min":43,"aqi_max":97,"pm25":22.15,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T01:00:00Z","aqi":170,"aqi_min":16,"aqi_max":294,"pm25":91.87,"pm10":null,"stations":4},{"datetime_utc":"2026-05-27T02:00:00Z","aqi":104,"aqi_min":35,"aqi_max":170,"pm25":36.61,"pm10":null,"stations":3},{"datetime_utc":"2026-05-27T04:00:00Z","aqi":64,"aqi_min":16,"aqi_max":95,"pm25":18.43,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T05:00:00Z","aqi":84,"aqi_min":37,"aqi_max":129,"pm25":27.88,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T06:00:00Z","aqi":80,"aqi_min":13,"aqi_max":102,"pm25":25.79,"pm10":null,"stations":3},{"datetime_utc":"2026-05-27T09:00:00Z","aqi":33,"aqi_min":33,"aqi_max":33,"pm25":7.92,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T10:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T11:00:00Z","aqi":35,"aqi_min":30,"aqi_max":41,"pm25":8.52,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T12:00:00Z","aqi":34,"aqi_min":34,"aqi_max":34,"pm25":8.16,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T13:00:00Z","aqi":26,"aqi_min":26,"aqi_max":26,"pm25":6.24,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T14:00:00Z","aqi":60,"aqi_min":48,"aqi_max":70,"pm25":16.33,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T15:00:00Z","aqi":26,"aqi_min":26,"aqi_max":26,"pm25":6.24,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T16:00:00Z","aqi":31,"aqi_min":28,"aqi_max":34,"pm25":7.44,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T18:00:00Z","aqi":136,"aqi_min":136,"aqi_max":136,"pm25":49.71,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T19:00:00Z","aqi":21,"aqi_min":17,"aqi_max":25,"pm25":4.96,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T20:00:00Z","aqi":24,"aqi_min":24,"aqi_max":24,"pm25":5.76,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T21:00:00Z","aqi":34,"aqi_min":24,"aqi_max":44,"pm25":8.16,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T22:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T23:00:00Z","aqi":35,"aqi_min":35,"aqi_max":35,"pm25":8.4,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T00:00:00Z","aqi":21,"aqi_min":17,"aqi_max":25,"pm25":5.04,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T01:00:00Z","aqi":80,"aqi_min":80,"aqi_max":80,"pm25":25.89,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T02:00:00Z","aqi":138,"aqi_min":12,"aqi_max":195,"pm25":50.67,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T03:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T04:00:00Z","aqi":15,"aqi_min":15,"aqi_max":15,"pm25":3.6,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T05:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T06:00:00Z","aqi":110,"aqi_min":65,"aqi_max":153,"pm25":39.07,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T07:00:00Z","aqi":18,"aqi_min":18,"aqi_max":19,"pm25":4.44,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T08:00:00Z","aqi":39,"aqi_min":17,"aqi_max":56,"pm25":9.28,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T09:00:00Z","aqi":29,"aqi_min":29,"aqi_max":29,"pm25":6.96,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T10:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T11:00:00Z","aqi":17,"aqi_min":16,"aqi_max":18,"pm25":4.08,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T12:00:00Z","aqi":17,"aqi_min":14,"aqi_max":19,"pm25":3.96,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T13:00:00Z","aqi":18,"aqi_min":17,"aqi_max":18,"pm25":4.2,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T14:00:00Z","aqi":17,"aqi_min":13,"aqi_max":20,"pm25":4.08,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T15:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T16:00:00Z","aqi":25,"aqi_min":24,"aqi_max":25,"pm25":5.88,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T18:00:00Z","aqi":20,"aqi_min":16,"aqi_max":24,"pm25":4.8,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T19:00:00Z","aqi":24,"aqi_min":22,"aqi_max":26,"pm25":5.76,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T20:00:00Z","aqi":63,"aqi_min":63,"aqi_max":63,"pm25":17.81,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T22:00:00Z","aqi":68,"aqi_min":34,"aqi_max":124,"pm25":20.31,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T00:00:00Z","aqi":47,"aqi_min":7,"aqi_max":69,"pm25":11.17,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T01:00:00Z","aqi":92,"aqi_min":80,"aqi_max":105,"pm25":31.51,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T02:00:00Z","aqi":22,"aqi_min":22,"aqi_max":22,"pm25":5.28,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T05:00:00Z","aqi":63,"aqi_min":21,"aqi_max":88,"pm25":17.67,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T06:00:00Z","aqi":25,"aqi_min":9,"aqi_max":42,"pm25":5.94,"pm10":null,"stations":4},{"datetime_utc":"2026-05-29T07:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T09:00:00Z","aqi":23,"aqi_min":22,"aqi_max":25,"pm25":5.64,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T10:00:00Z","aqi":68,"aqi_min":68,"aqi_max":68,"pm25":20.18,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T11:00:00Z","aqi":33,"aqi_min":33,"aqi_max":33,"pm25":7.92,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T12:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T14:00:00Z","aqi":38,"aqi_min":38,"aqi_max":38,"pm25":9.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T17:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T18:00:00Z","aqi":96,"aqi_min":96,"aqi_max":96,"pm25":33.5,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T20:00:00Z","aqi":50,"aqi_min":20,"aqi_max":66,"pm25":12.02,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T21:00:00Z","aqi":15,"aqi_min":15,"aqi_max":15,"pm25":3.6,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T22:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T23:00:00Z","aqi":16,"aqi_min":16,"aqi_max":16,"pm25":3.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T00:00:00Z","aqi":34,"aqi_min":9,"aqi_max":60,"pm25":8.11,"pm10":null,"stations":3},{"datetime_utc":"2026-05-30T01:00:00Z","aqi":158,"aqi_min":149,"aqi_max":165,"pm25":68.8,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T02:00:00Z","aqi":22,"aqi_min":15,"aqi_max":36,"pm25":5.28,"pm10":null,"stations":3},{"datetime_utc":"2026-05-30T03:00:00Z","aqi":19,"aqi_min":19,"aqi_max":19,"pm25":4.56,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T05:00:00Z","aqi":146,"aqi_min":74,"aqi_max":166,"pm25":53.79,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T06:00:00Z","aqi":74,"aqi_min":13,"aqi_max":129,"pm25":23.04,"pm10":null,"stations":4},{"datetime_utc":"2026-05-30T09:00:00Z","aqi":30,"aqi_min":14,"aqi_max":45,"pm25":7.08,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T10:00:00Z","aqi":240,"aqi_min":21,"aqi_max":500,"pm25":189.96,"pm10":null,"stations":3},{"datetime_utc":"2026-05-30T11:00:00Z","aqi":68,"aqi_min":28,"aqi_max":97,"pm25":20.35,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T13:00:00Z","aqi":30,"aqi_min":10,"aqi_max":51,"pm25":7.25,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T18:00:00Z","aqi":28,"aqi_min":27,"aqi_max":29,"pm25":6.72,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T19:00:00Z","aqi":30,"aqi_min":29,"aqi_max":30,"pm25":7.08,"pm10":null,"stations":2},{"datetime_utc":"2026-05-30T20:00:00Z","aqi":32,"aqi_min":32,"aqi_max":32,"pm25":7.68,"pm10":null,"stations":2}],"daily":[{"date":"2026-05-23","aqi_avg":39,"aqi_min":13,"aqi_max":82,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":11.7,"pm10_avg":null,"hours":3,"stations_avg":2},{"date":"2026-05-24","aqi_avg":37,"aqi_min":7,"aqi_max":113,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":10.3,"pm10_avg":null,"hours":19,"stations_avg":2},{"date":"2026-05-25","aqi_avg":64,"aqi_min":13,"aqi_max":427,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":35.2,"pm10_avg":null,"hours":17,"stations_avg":2},{"date":"2026-05-26","aqi_avg":51,"aqi_min":12,"aqi_max":164,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":15.8,"pm10_avg":null,"hours":17,"stations_avg":2},{"date":"2026-05-27","aqi_avg":55,"aqi_min":13,"aqi_max":170,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":18.4,"pm10_avg":null,"hours":20,"stations_avg":2},{"date":"2026-05-28","aqi_avg":38,"aqi_min":15,"aqi_max":138,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":11.2,"pm10_avg":null,"hours":21,"stations_avg":2},{"date":"2026-05-29","aqi_avg":39,"aqi_min":13,"aqi_max":96,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":10.9,"pm10_avg":null,"hours":17,"stations_avg":1},{"date":"2026-05-30","aqi_avg":70,"aqi_min":19,"aqi_max":240,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":31.5,"pm10_avg":null,"hours":13,"stations_avg":2}]}