{"city":"Kampung Perak","country":"Malaysia","lat":3.8682000637054443,"lon":102.58619689941406,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-28T12:00:00Z","aqi":53,"aqi_min":53,"aqi_max":53,"pm25":13.05,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T13:00:00Z","aqi":63,"aqi_min":55,"aqi_max":68,"pm25":17.65,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T15:00:00Z","aqi":46,"aqi_min":37,"aqi_max":53,"pm25":10.97,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T16:00:00Z","aqi":5,"aqi_min":5,"aqi_max":5,"pm25":1.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T17:00:00Z","aqi":73,"aqi_min":73,"aqi_max":73,"pm25":22.56,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T18:00:00Z","aqi":43,"aqi_min":25,"aqi_max":53,"pm25":10.27,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T19:00:00Z","aqi":38,"aqi_min":13,"aqi_max":54,"pm25":9.15,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T20:00:00Z","aqi":34,"aqi_min":34,"aqi_max":34,"pm25":8.16,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T02:00:00Z","aqi":26,"aqi_min":26,"aqi_max":26,"pm25":6.24,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T05:00:00Z","aqi":63,"aqi_min":63,"aqi_max":63,"pm25":17.81,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T06:00:00Z","aqi":68,"aqi_min":47,"aqi_max":86,"pm25":20.01,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T07:00:00Z","aqi":38,"aqi_min":34,"aqi_max":43,"pm25":9.24,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T08:00:00Z","aqi":21,"aqi_min":9,"aqi_max":34,"pm25":5.12,"pm10":null,"stations":3},{"datetime_utc":"2026-05-29T10:00:00Z","aqi":55,"aqi_min":55,"aqi_max":55,"pm25":14.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T11:00:00Z","aqi":65,"aqi_min":65,"aqi_max":65,"pm25":18.76,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T12:00:00Z","aqi":48,"aqi_min":33,"aqi_max":57,"pm25":11.44,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T13:00:00Z","aqi":59,"aqi_min":59,"aqi_max":59,"pm25":15.9,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T15:00:00Z","aqi":53,"aqi_min":53,"aqi_max":53,"pm25":13.05,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T17:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T18:00:00Z","aqi":47,"aqi_min":47,"aqi_max":47,"pm25":11.28,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T19:00:00Z","aqi":65,"aqi_min":55,"aqi_max":77,"pm25":18.92,"pm10":null,"stations":3},{"datetime_utc":"2026-05-29T20:00:00Z","aqi":70,"aqi_min":70,"aqi_max":70,"pm25":21.13,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T23:00:00Z","aqi":37,"aqi_min":37,"aqi_max":37,"pm25":8.88,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T00:00:00Z","aqi":42,"aqi_min":21,"aqi_max":54,"pm25":10.18,"pm10":null,"stations":4},{"datetime_utc":"2026-05-30T01:00:00Z","aqi":46,"aqi_min":21,"aqi_max":70,"pm25":11.12,"pm10":null,"stations":3},{"datetime_utc":"2026-05-30T02:00:00Z","aqi":33,"aqi_min":33,"aqi_max":33,"pm25":7.92,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T05:00:00Z","aqi":69,"aqi_min":52,"aqi_max":78,"pm25":20.5,"pm10":null,"stations":3},{"datetime_utc":"2026-05-30T07:00:00Z","aqi":61,"aqi_min":33,"aqi_max":97,"pm25":16.74,"pm10":null,"stations":4},{"datetime_utc":"2026-05-30T09:00:00Z","aqi":52,"aqi_min":52,"aqi_max":52,"pm25":12.58,"pm10":null,"stations":1},{"datetime_utc":"2026-05-30T10:00:00Z","aqi":44,"aqi_min":33,"aqi_max":53,"pm25":10.49,"pm10":null,"stations":2}],"daily":[{"date":"2026-05-28","aqi_avg":44,"aqi_min":5,"aqi_max":73,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":11.6,"pm10_avg":null,"hours":8,"stations_avg":2},{"date":"2026-05-29","aqi_avg":49,"aqi_min":17,"aqi_max":70,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":13.1,"pm10_avg":null,"hours":15,"stations_avg":1},{"date":"2026-05-30","aqi_avg":50,"aqi_min":33,"aqi_max":69,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":12.8,"pm10_avg":null,"hours":7,"stations_avg":3}]}