{"city":"Hartbeestfontein-A","country":"South Africa","lat":-25.441410064697266,"lon":27.511140823364258,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-06-07T16:00:00Z","aqi":39,"aqi_min":39,"aqi_max":39,"pm25":9.36,"pm10":null,"stations":1},{"datetime_utc":"2026-06-07T18:00:00Z","aqi":30,"aqi_min":27,"aqi_max":32,"pm25":7.08,"pm10":null,"stations":2},{"datetime_utc":"2026-06-07T19:00:00Z","aqi":36,"aqi_min":36,"aqi_max":36,"pm25":8.64,"pm10":null,"stations":1},{"datetime_utc":"2026-06-07T20:00:00Z","aqi":29,"aqi_min":29,"aqi_max":29,"pm25":6.96,"pm10":null,"stations":1},{"datetime_utc":"2026-06-07T21:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-06-07T22:00:00Z","aqi":46,"aqi_min":22,"aqi_max":61,"pm25":11.07,"pm10":null,"stations":2},{"datetime_utc":"2026-06-07T23:00:00Z","aqi":20,"aqi_min":20,"aqi_max":20,"pm25":4.8,"pm10":null,"stations":1},{"datetime_utc":"2026-06-08T02:00:00Z","aqi":12,"aqi_min":12,"aqi_max":12,"pm25":2.88,"pm10":null,"stations":1},{"datetime_utc":"2026-06-08T03:00:00Z","aqi":22,"aqi_min":7,"aqi_max":36,"pm25":5.16,"pm10":null,"stations":2},{"datetime_utc":"2026-06-08T04:00:00Z","aqi":51,"aqi_min":51,"aqi_max":51,"pm25":12.1,"pm10":null,"stations":1},{"datetime_utc":"2026-06-08T06:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.0,"pm10":null,"stations":1},{"datetime_utc":"2026-06-08T07:00:00Z","aqi":34,"aqi_min":31,"aqi_max":37,"pm25":8.16,"pm10":null,"stations":2},{"datetime_utc":"2026-06-08T08:00:00Z","aqi":58,"aqi_min":24,"aqi_max":91,"pm25":15.29,"pm10":62.0,"stations":3},{"datetime_utc":"2026-06-08T09:00:00Z","aqi":70,"aqi_min":70,"aqi_max":70,"pm25":21.0,"pm10":43.0,"stations":1},{"datetime_utc":"2026-06-08T10:00:00Z","aqi":48,"aqi_min":38,"aqi_max":55,"pm25":11.56,"pm10":45.0,"stations":2},{"datetime_utc":"2026-06-08T11:00:00Z","aqi":46,"aqi_min":42,"aqi_max":50,"pm25":11.04,"pm10":40.0,"stations":2},{"datetime_utc":"2026-06-08T12:00:00Z","aqi":57,"aqi_min":57,"aqi_max":57,"pm25":15.0,"pm10":83.0,"stations":1},{"datetime_utc":"2026-06-08T13:00:00Z","aqi":42,"aqi_min":34,"aqi_max":51,"pm25":10.13,"pm10":null,"stations":2},{"datetime_utc":"2026-06-08T14:00:00Z","aqi":56,"aqi_min":33,"aqi_max":63,"pm25":14.6,"pm10":56.5,"stations":2},{"datetime_utc":"2026-06-08T15:00:00Z","aqi":338,"aqi_min":170,"aqi_max":500,"pm25":296.7,"pm10":252.0,"stations":2},{"datetime_utc":"2026-06-08T16:00:00Z","aqi":168,"aqi_min":168,"aqi_max":168,"pm25":88.0,"pm10":211.0,"stations":1},{"datetime_utc":"2026-06-08T17:00:00Z","aqi":104,"aqi_min":30,"aqi_max":156,"pm25":36.6,"pm10":190.0,"stations":2},{"datetime_utc":"2026-06-08T18:00:00Z","aqi":155,"aqi_min":155,"aqi_max":155,"pm25":63.0,"pm10":238.0,"stations":1},{"datetime_utc":"2026-06-08T19:00:00Z","aqi":87,"aqi_min":87,"aqi_max":87,"pm25":29.0,"pm10":108.0,"stations":1},{"datetime_utc":"2026-06-08T20:00:00Z","aqi":168,"aqi_min":129,"aqi_max":189,"pm25":88.05,"pm10":142.0,"stations":2},{"datetime_utc":"2026-06-08T21:00:00Z","aqi":52,"aqi_min":26,"aqi_max":66,"pm25":12.62,"pm10":71.0,"stations":2},{"datetime_utc":"2026-06-08T22:00:00Z","aqi":97,"aqi_min":26,"aqi_max":154,"pm25":34.12,"pm10":307.0,"stations":2},{"datetime_utc":"2026-06-08T23:00:00Z","aqi":83,"aqi_min":49,"aqi_max":119,"pm25":27.38,"pm10":169.0,"stations":2},{"datetime_utc":"2026-06-09T00:00:00Z","aqi":91,"aqi_min":91,"aqi_max":91,"pm25":31.0,"pm10":118.0,"stations":1},{"datetime_utc":"2026-06-09T01:00:00Z","aqi":66,"aqi_min":66,"aqi_max":66,"pm25":19.0,"pm10":60.0,"stations":1},{"datetime_utc":"2026-06-09T02:00:00Z","aqi":45,"aqi_min":31,"aqi_max":55,"pm25":10.72,"pm10":70.0,"stations":2},{"datetime_utc":"2026-06-09T03:00:00Z","aqi":66,"aqi_min":66,"aqi_max":66,"pm25":19.0,"pm10":80.0,"stations":1},{"datetime_utc":"2026-06-09T04:00:00Z","aqi":66,"aqi_min":30,"aqi_max":119,"pm25":19.21,"pm10":152.0,"stations":3},{"datetime_utc":"2026-06-09T05:00:00Z","aqi":127,"aqi_min":127,"aqi_max":127,"pm25":46.0,"pm10":203.0,"stations":1},{"datetime_utc":"2026-06-09T06:00:00Z","aqi":51,"aqi_min":51,"aqi_max":51,"pm25":12.1,"pm10":null,"stations":1},{"datetime_utc":"2026-06-09T07:00:00Z","aqi":85,"aqi_min":16,"aqi_max":132,"pm25":28.15,"pm10":112.0,"stations":3},{"datetime_utc":"2026-06-09T08:00:00Z","aqi":67,"aqi_min":21,"aqi_max":97,"pm25":19.52,"pm10":91.0,"stations":2},{"datetime_utc":"2026-06-09T09:00:00Z","aqi":66,"aqi_min":21,"aqi_max":95,"pm25":19.02,"pm10":68.0,"stations":2},{"datetime_utc":"2026-06-09T10:00:00Z","aqi":48,"aqi_min":21,"aqi_max":63,"pm25":11.52,"pm10":42.0,"stations":2},{"datetime_utc":"2026-06-09T11:00:00Z","aqi":70,"aqi_min":70,"aqi_max":70,"pm25":21.0,"pm10":53.0,"stations":1},{"datetime_utc":"2026-06-09T12:00:00Z","aqi":53,"aqi_min":46,"aqi_max":58,"pm25":13.21,"pm10":32.0,"stations":2},{"datetime_utc":"2026-06-09T13:00:00Z","aqi":23,"aqi_min":8,"aqi_max":38,"pm25":5.46,"pm10":25.0,"stations":2},{"datetime_utc":"2026-06-09T14:00:00Z","aqi":30,"aqi_min":17,"aqi_max":38,"pm25":7.08,"pm10":30.0,"stations":3}],"daily":[{"date":"2026-06-07","aqi_avg":33,"aqi_min":20,"aqi_max":46,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":7.9,"pm10_avg":null,"hours":7,"stations_avg":1},{"date":"2026-06-08","aqi_avg":84,"aqi_min":12,"aqi_max":338,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":38.5,"pm10_avg":134.5,"hours":21,"stations_avg":2},{"date":"2026-06-09","aqi_avg":64,"aqi_min":23,"aqi_max":127,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":18.8,"pm10_avg":81.1,"hours":15,"stations_avg":2}]}