{"city":"Tanah Merah","country":"Malaysia","lat":5.800000190734863,"lon":102.1500015258789,"range":"7d","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-22T16:00:00Z","aqi":30,"aqi_min":13,"aqi_max":47,"pm25":7.2,"pm10":null,"stations":2},{"datetime_utc":"2026-05-22T17:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-22T18:00:00Z","aqi":9,"aqi_min":9,"aqi_max":9,"pm25":2.16,"pm10":null,"stations":1},{"datetime_utc":"2026-05-22T21:00:00Z","aqi":36,"aqi_min":30,"aqi_max":42,"pm25":8.64,"pm10":null,"stations":2},{"datetime_utc":"2026-05-22T22:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-23T02:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-23T09:00:00Z","aqi":35,"aqi_min":5,"aqi_max":70,"pm25":8.48,"pm10":null,"stations":3},{"datetime_utc":"2026-05-23T11:00:00Z","aqi":75,"aqi_min":75,"aqi_max":75,"pm25":23.51,"pm10":null,"stations":1},{"datetime_utc":"2026-05-23T14:00:00Z","aqi":20,"aqi_min":5,"aqi_max":34,"pm25":4.68,"pm10":null,"stations":2},{"datetime_utc":"2026-05-23T18:00:00Z","aqi":5,"aqi_min":5,"aqi_max":5,"pm25":1.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-23T19:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-23T21:00:00Z","aqi":53,"aqi_min":17,"aqi_max":72,"pm25":13.08,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T01:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T03:00:00Z","aqi":1,"aqi_min":1,"aqi_max":1,"pm25":0.24,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T04:00:00Z","aqi":69,"aqi_min":51,"aqi_max":93,"pm25":20.66,"pm10":null,"stations":3},{"datetime_utc":"2026-05-24T05:00:00Z","aqi":38,"aqi_min":34,"aqi_max":41,"pm25":9.0,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T06:00:00Z","aqi":41,"aqi_min":41,"aqi_max":41,"pm25":9.84,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T07:00:00Z","aqi":29,"aqi_min":29,"aqi_max":29,"pm25":6.96,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T08:00:00Z","aqi":56,"aqi_min":7,"aqi_max":82,"pm25":14.26,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T10:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.0,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T11:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T12:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T14:00:00Z","aqi":147,"aqi_min":147,"aqi_max":147,"pm25":54.18,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T16:00:00Z","aqi":43,"aqi_min":43,"aqi_max":43,"pm25":10.32,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T17:00:00Z","aqi":59,"aqi_min":13,"aqi_max":85,"pm25":15.69,"pm10":null,"stations":2},{"datetime_utc":"2026-05-24T18:00:00Z","aqi":21,"aqi_min":21,"aqi_max":21,"pm25":5.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T19:00:00Z","aqi":18,"aqi_min":18,"aqi_max":18,"pm25":4.32,"pm10":null,"stations":1},{"datetime_utc":"2026-05-24T22:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T00:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T01:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T02:00:00Z","aqi":46,"aqi_min":46,"aqi_max":46,"pm25":11.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T05:00:00Z","aqi":141,"aqi_min":141,"aqi_max":141,"pm25":51.74,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T06:00:00Z","aqi":42,"aqi_min":42,"aqi_max":42,"pm25":10.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T08:00:00Z","aqi":38,"aqi_min":38,"aqi_max":38,"pm25":9.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T09:00:00Z","aqi":29,"aqi_min":23,"aqi_max":34,"pm25":6.96,"pm10":null,"stations":3},{"datetime_utc":"2026-05-25T10:00:00Z","aqi":5,"aqi_min":1,"aqi_max":9,"pm25":1.2,"pm10":null,"stations":2},{"datetime_utc":"2026-05-25T13:00:00Z","aqi":24,"aqi_min":17,"aqi_max":30,"pm25":5.76,"pm10":null,"stations":3},{"datetime_utc":"2026-05-25T14:00:00Z","aqi":46,"aqi_min":46,"aqi_max":46,"pm25":11.04,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T19:00:00Z","aqi":57,"aqi_min":57,"aqi_max":57,"pm25":14.95,"pm10":null,"stations":1},{"datetime_utc":"2026-05-25T20:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T00:00:00Z","aqi":25,"aqi_min":21,"aqi_max":30,"pm25":6.12,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T01:00:00Z","aqi":53,"aqi_min":53,"aqi_max":53,"pm25":13.05,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T02:00:00Z","aqi":57,"aqi_min":49,"aqi_max":63,"pm25":14.78,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T05:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T10:00:00Z","aqi":57,"aqi_min":29,"aqi_max":70,"pm25":14.82,"pm10":null,"stations":3},{"datetime_utc":"2026-05-26T11:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T13:00:00Z","aqi":40,"aqi_min":13,"aqi_max":59,"pm25":9.51,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T15:00:00Z","aqi":4,"aqi_min":4,"aqi_max":4,"pm25":0.96,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T17:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T21:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-26T22:00:00Z","aqi":11,"aqi_min":9,"aqi_max":13,"pm25":2.64,"pm10":null,"stations":2},{"datetime_utc":"2026-05-26T23:00:00Z","aqi":50,"aqi_min":50,"aqi_max":50,"pm25":12.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T00:00:00Z","aqi":80,"aqi_min":80,"aqi_max":80,"pm25":25.89,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T03:00:00Z","aqi":57,"aqi_min":57,"aqi_max":57,"pm25":14.95,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T04:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T10:00:00Z","aqi":17,"aqi_min":17,"aqi_max":17,"pm25":4.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T11:00:00Z","aqi":36,"aqi_min":23,"aqi_max":49,"pm25":8.64,"pm10":null,"stations":2},{"datetime_utc":"2026-05-27T12:00:00Z","aqi":61,"aqi_min":61,"aqi_max":61,"pm25":16.86,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T14:00:00Z","aqi":42,"aqi_min":42,"aqi_max":42,"pm25":10.08,"pm10":null,"stations":1},{"datetime_utc":"2026-05-27T19:00:00Z","aqi":13,"aqi_min":13,"aqi_max":13,"pm25":3.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T00:00:00Z","aqi":33,"aqi_min":31,"aqi_max":35,"pm25":7.92,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T03:00:00Z","aqi":33,"aqi_min":33,"aqi_max":33,"pm25":7.92,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T04:00:00Z","aqi":44,"aqi_min":44,"aqi_max":44,"pm25":10.56,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T05:00:00Z","aqi":56,"aqi_min":56,"aqi_max":56,"pm25":14.48,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T06:00:00Z","aqi":66,"aqi_min":57,"aqi_max":75,"pm25":19.23,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T08:00:00Z","aqi":27,"aqi_min":27,"aqi_max":27,"pm25":6.48,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T10:00:00Z","aqi":30,"aqi_min":30,"aqi_max":30,"pm25":7.2,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T11:00:00Z","aqi":47,"aqi_min":34,"aqi_max":56,"pm25":11.32,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T12:00:00Z","aqi":48,"aqi_min":46,"aqi_max":50,"pm25":11.52,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T14:00:00Z","aqi":113,"aqi_min":113,"aqi_max":113,"pm25":40.37,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T15:00:00Z","aqi":130,"aqi_min":130,"aqi_max":130,"pm25":47.28,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T16:00:00Z","aqi":35,"aqi_min":35,"aqi_max":35,"pm25":8.4,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T17:00:00Z","aqi":60,"aqi_min":50,"aqi_max":70,"pm25":16.57,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T18:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-28T19:00:00Z","aqi":46,"aqi_min":7,"aqi_max":60,"pm25":11.0,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T23:00:00Z","aqi":49,"aqi_min":17,"aqi_max":74,"pm25":11.76,"pm10":null,"stations":3},{"datetime_utc":"2026-05-29T00:00:00Z","aqi":46,"aqi_min":45,"aqi_max":47,"pm25":11.04,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T02:00:00Z","aqi":33,"aqi_min":29,"aqi_max":37,"pm25":7.92,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T03:00:00Z","aqi":38,"aqi_min":38,"aqi_max":38,"pm25":9.12,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T07:00:00Z","aqi":34,"aqi_min":34,"aqi_max":34,"pm25":8.16,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T08:00:00Z","aqi":18,"aqi_min":13,"aqi_max":24,"pm25":4.44,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T09:00:00Z","aqi":50,"aqi_min":50,"aqi_max":50,"pm25":12.0,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T12:00:00Z","aqi":27,"aqi_min":24,"aqi_max":29,"pm25":6.36,"pm10":null,"stations":2},{"datetime_utc":"2026-05-29T13:00:00Z","aqi":37,"aqi_min":37,"aqi_max":37,"pm25":8.88,"pm10":null,"stations":1},{"datetime_utc":"2026-05-29T14:00:00Z","aqi":25,"aqi_min":25,"aqi_max":25,"pm25":6.0,"pm10":null,"stations":2}],"daily":[{"date":"2026-05-22","aqi_avg":21,"aqi_min":9,"aqi_max":36,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":5.0,"pm10_avg":null,"hours":5,"stations_avg":1},{"date":"2026-05-23","aqi_avg":33,"aqi_min":5,"aqi_max":75,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":8.7,"pm10_avg":null,"hours":7,"stations_avg":2},{"date":"2026-05-24","aqi_avg":40,"aqi_min":1,"aqi_max":147,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":11.3,"pm10_avg":null,"hours":16,"stations_avg":1},{"date":"2026-05-25","aqi_avg":42,"aqi_min":5,"aqi_max":141,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":11.7,"pm10_avg":null,"hours":12,"stations_avg":1},{"date":"2026-05-26","aqi_avg":32,"aqi_min":4,"aqi_max":57,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":7.8,"pm10_avg":null,"hours":12,"stations_avg":2},{"date":"2026-05-27","aqi_avg":42,"aqi_min":13,"aqi_max":80,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":11.4,"pm10_avg":null,"hours":8,"stations_avg":1},{"date":"2026-05-28","aqi_avg":53,"aqi_min":25,"aqi_max":130,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":14.9,"pm10_avg":null,"hours":16,"stations_avg":2},{"date":"2026-05-29","aqi_avg":34,"aqi_min":18,"aqi_max":50,"aqi_color":"#059669","aqi_label":"Good","pm25_avg":8.2,"pm10_avg":null,"hours":9,"stations_avg":2}]}