{"city":"Xihu","country":"China","lat":35.4493408203125,"lon":119.23606872558594,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-28T00:00:00Z","aqi":65,"aqi_min":30,"aqi_max":87,"pm25":18.87,"pm10":null,"stations":6},{"datetime_utc":"2026-05-28T01:00:00Z","aqi":68,"aqi_min":55,"aqi_max":85,"pm25":20.3,"pm10":null,"stations":4},{"datetime_utc":"2026-05-28T02:00:00Z","aqi":61,"aqi_min":34,"aqi_max":109,"pm25":16.98,"pm10":null,"stations":11},{"datetime_utc":"2026-05-28T03:00:00Z","aqi":56,"aqi_min":40,"aqi_max":72,"pm25":14.42,"pm10":null,"stations":4},{"datetime_utc":"2026-05-28T04:00:00Z","aqi":68,"aqi_min":41,"aqi_max":117,"pm25":19.99,"pm10":null,"stations":4},{"datetime_utc":"2026-05-28T05:00:00Z","aqi":109,"aqi_min":91,"aqi_max":132,"pm25":38.64,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T06:00:00Z","aqi":59,"aqi_min":58,"aqi_max":61,"pm25":16.14,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T07:00:00Z","aqi":73,"aqi_min":49,"aqi_max":95,"pm25":22.48,"pm10":null,"stations":4},{"datetime_utc":"2026-05-28T08:00:00Z","aqi":58,"aqi_min":26,"aqi_max":80,"pm25":15.51,"pm10":null,"stations":4},{"datetime_utc":"2026-05-28T09:00:00Z","aqi":54,"aqi_min":46,"aqi_max":71,"pm25":13.69,"pm10":null,"stations":8},{"datetime_utc":"2026-05-28T10:00:00Z","aqi":62,"aqi_min":52,"aqi_max":80,"pm25":17.52,"pm10":null,"stations":5},{"datetime_utc":"2026-05-28T11:00:00Z","aqi":77,"aqi_min":50,"aqi_max":107,"pm25":24.72,"pm10":null,"stations":4},{"datetime_utc":"2026-05-28T12:00:00Z","aqi":57,"aqi_min":38,"aqi_max":80,"pm25":15.03,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T13:00:00Z","aqi":54,"aqi_min":44,"aqi_max":76,"pm25":13.63,"pm10":null,"stations":5},{"datetime_utc":"2026-05-28T14:00:00Z","aqi":55,"aqi_min":38,"aqi_max":63,"pm25":13.96,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T15:00:00Z","aqi":52,"aqi_min":30,"aqi_max":61,"pm25":12.62,"pm10":null,"stations":7},{"datetime_utc":"2026-05-28T16:00:00Z","aqi":60,"aqi_min":25,"aqi_max":107,"pm25":16.27,"pm10":null,"stations":6},{"datetime_utc":"2026-05-28T17:00:00Z","aqi":47,"aqi_min":34,"aqi_max":57,"pm25":11.3,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T18:00:00Z","aqi":63,"aqi_min":28,"aqi_max":93,"pm25":17.56,"pm10":null,"stations":6},{"datetime_utc":"2026-05-28T19:00:00Z","aqi":56,"aqi_min":46,"aqi_max":72,"pm25":14.72,"pm10":null,"stations":3},{"datetime_utc":"2026-05-28T20:00:00Z","aqi":52,"aqi_min":36,"aqi_max":68,"pm25":12.83,"pm10":null,"stations":6},{"datetime_utc":"2026-05-28T21:00:00Z","aqi":91,"aqi_min":42,"aqi_max":147,"pm25":31.17,"pm10":null,"stations":7},{"datetime_utc":"2026-05-28T22:00:00Z","aqi":44,"aqi_min":5,"aqi_max":63,"pm25":10.52,"pm10":null,"stations":7},{"datetime_utc":"2026-05-28T23:00:00Z","aqi":198,"aqi_min":55,"aqi_max":500,"pm25":145.89,"pm10":null,"stations":9},{"datetime_utc":"2026-05-29T00:00:00Z","aqi":68,"aqi_min":34,"aqi_max":93,"pm25":20.21,"pm10":null,"stations":8},{"datetime_utc":"2026-05-29T01:00:00Z","aqi":49,"aqi_min":28,"aqi_max":61,"pm25":11.73,"pm10":null,"stations":8},{"datetime_utc":"2026-05-29T02:00:00Z","aqi":58,"aqi_min":38,"aqi_max":76,"pm25":15.35,"pm10":null,"stations":8},{"datetime_utc":"2026-05-29T03:00:00Z","aqi":63,"aqi_min":42,"aqi_max":95,"pm25":17.88,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T04:00:00Z","aqi":53,"aqi_min":38,"aqi_max":59,"pm25":13.02,"pm10":null,"stations":4},{"datetime_utc":"2026-05-29T05:00:00Z","aqi":67,"aqi_min":53,"aqi_max":77,"pm25":19.55,"pm10":null,"stations":3},{"datetime_utc":"2026-05-29T06:00:00Z","aqi":55,"aqi_min":34,"aqi_max":70,"pm25":14.04,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T07:00:00Z","aqi":70,"aqi_min":55,"aqi_max":93,"pm25":21.07,"pm10":null,"stations":7},{"datetime_utc":"2026-05-29T08:00:00Z","aqi":70,"aqi_min":57,"aqi_max":104,"pm25":21.3,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T09:00:00Z","aqi":75,"aqi_min":71,"aqi_max":78,"pm25":23.51,"pm10":null,"stations":4},{"datetime_utc":"2026-05-29T10:00:00Z","aqi":68,"aqi_min":42,"aqi_max":92,"pm25":20.06,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T11:00:00Z","aqi":64,"aqi_min":43,"aqi_max":78,"pm25":18.48,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T12:00:00Z","aqi":63,"aqi_min":50,"aqi_max":85,"pm25":17.79,"pm10":null,"stations":7},{"datetime_utc":"2026-05-29T13:00:00Z","aqi":73,"aqi_min":53,"aqi_max":99,"pm25":22.37,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T14:00:00Z","aqi":57,"aqi_min":13,"aqi_max":76,"pm25":15.09,"pm10":null,"stations":4},{"datetime_utc":"2026-05-29T15:00:00Z","aqi":62,"aqi_min":33,"aqi_max":97,"pm25":17.31,"pm10":null,"stations":10},{"datetime_utc":"2026-05-29T16:00:00Z","aqi":61,"aqi_min":50,"aqi_max":70,"pm25":16.71,"pm10":null,"stations":4},{"datetime_utc":"2026-05-29T17:00:00Z","aqi":63,"aqi_min":47,"aqi_max":80,"pm25":17.89,"pm10":null,"stations":6},{"datetime_utc":"2026-05-29T18:00:00Z","aqi":75,"aqi_min":42,"aqi_max":109,"pm25":23.62,"pm10":null,"stations":8},{"datetime_utc":"2026-05-29T19:00:00Z","aqi":72,"aqi_min":42,"aqi_max":93,"pm25":21.89,"pm10":null,"stations":8},{"datetime_utc":"2026-05-29T20:00:00Z","aqi":78,"aqi_min":46,"aqi_max":109,"pm25":24.92,"pm10":null,"stations":5},{"datetime_utc":"2026-05-29T21:00:00Z","aqi":92,"aqi_min":16,"aqi_max":137,"pm25":31.42,"pm10":null,"stations":10},{"datetime_utc":"2026-05-29T22:00:00Z","aqi":98,"aqi_min":78,"aqi_max":122,"pm25":34.37,"pm10":null,"stations":6}],"daily":[{"date":"2026-05-28","aqi_avg":68,"aqi_min":44,"aqi_max":198,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":23.1,"pm10_avg":null,"hours":24,"stations_avg":5},{"date":"2026-05-29","aqi_avg":68,"aqi_min":49,"aqi_max":98,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":20.0,"pm10_avg":null,"hours":23,"stations_avg":6}]}