{"city":"Shanghai","country":"China","lat":31.222219467163086,"lon":121.45806121826172,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-06-06T21:00:00Z","aqi":68,"aqi_min":68,"aqi_max":68,"pm25":20.0,"pm10":21.0,"stations":1},{"datetime_utc":"2026-06-06T22:00:00Z","aqi":57,"aqi_min":20,"aqi_max":127,"pm25":14.81,"pm10":16.0,"stations":20},{"datetime_utc":"2026-06-06T23:00:00Z","aqi":61,"aqi_min":24,"aqi_max":129,"pm25":17.02,"pm10":22.0,"stations":21},{"datetime_utc":"2026-06-07T00:00:00Z","aqi":62,"aqi_min":23,"aqi_max":144,"pm25":17.31,"pm10":17.0,"stations":27},{"datetime_utc":"2026-06-07T01:00:00Z","aqi":58,"aqi_min":29,"aqi_max":97,"pm25":15.19,"pm10":21.0,"stations":19},{"datetime_utc":"2026-06-07T02:00:00Z","aqi":68,"aqi_min":27,"aqi_max":159,"pm25":20.13,"pm10":22.0,"stations":27},{"datetime_utc":"2026-06-07T03:00:00Z","aqi":59,"aqi_min":27,"aqi_max":102,"pm25":16.14,"pm10":22.0,"stations":22},{"datetime_utc":"2026-06-07T04:00:00Z","aqi":68,"aqi_min":33,"aqi_max":132,"pm25":20.28,"pm10":15.0,"stations":26},{"datetime_utc":"2026-06-07T05:00:00Z","aqi":59,"aqi_min":24,"aqi_max":85,"pm25":15.9,"pm10":9.0,"stations":23},{"datetime_utc":"2026-06-07T06:00:00Z","aqi":58,"aqi_min":29,"aqi_max":153,"pm25":15.23,"pm10":8.0,"stations":27},{"datetime_utc":"2026-06-07T07:00:00Z","aqi":60,"aqi_min":21,"aqi_max":139,"pm25":16.64,"pm10":6.0,"stations":27},{"datetime_utc":"2026-06-07T08:00:00Z","aqi":63,"aqi_min":22,"aqi_max":156,"pm25":17.96,"pm10":6.0,"stations":25},{"datetime_utc":"2026-06-07T09:00:00Z","aqi":57,"aqi_min":19,"aqi_max":157,"pm25":14.87,"pm10":8.0,"stations":23},{"datetime_utc":"2026-06-07T10:00:00Z","aqi":53,"aqi_min":26,"aqi_max":72,"pm25":12.89,"pm10":16.0,"stations":24},{"datetime_utc":"2026-06-07T11:00:00Z","aqi":57,"aqi_min":33,"aqi_max":90,"pm25":14.77,"pm10":20.0,"stations":21},{"datetime_utc":"2026-06-07T12:00:00Z","aqi":62,"aqi_min":24,"aqi_max":127,"pm25":17.41,"pm10":32.0,"stations":27},{"datetime_utc":"2026-06-07T13:00:00Z","aqi":68,"aqi_min":27,"aqi_max":137,"pm25":20.32,"pm10":35.0,"stations":20},{"datetime_utc":"2026-06-07T14:00:00Z","aqi":66,"aqi_min":25,"aqi_max":153,"pm25":19.22,"pm10":31.0,"stations":18},{"datetime_utc":"2026-06-07T15:00:00Z","aqi":66,"aqi_min":24,"aqi_max":104,"pm25":19.39,"pm10":36.0,"stations":24},{"datetime_utc":"2026-06-07T16:00:00Z","aqi":60,"aqi_min":21,"aqi_max":155,"pm25":16.28,"pm10":38.0,"stations":28},{"datetime_utc":"2026-06-07T17:00:00Z","aqi":45,"aqi_min":19,"aqi_max":97,"pm25":10.8,"pm10":39.0,"stations":26},{"datetime_utc":"2026-06-07T18:00:00Z","aqi":68,"aqi_min":27,"aqi_max":129,"pm25":20.42,"pm10":40.0,"stations":24},{"datetime_utc":"2026-06-07T19:00:00Z","aqi":63,"aqi_min":30,"aqi_max":119,"pm25":17.75,"pm10":42.0,"stations":22},{"datetime_utc":"2026-06-07T20:00:00Z","aqi":62,"aqi_min":22,"aqi_max":109,"pm25":17.55,"pm10":38.0,"stations":22},{"datetime_utc":"2026-06-07T21:00:00Z","aqi":52,"aqi_min":14,"aqi_max":124,"pm25":12.66,"pm10":null,"stations":23},{"datetime_utc":"2026-06-07T22:00:00Z","aqi":59,"aqi_min":25,"aqi_max":107,"pm25":15.87,"pm10":27.0,"stations":22},{"datetime_utc":"2026-06-07T23:00:00Z","aqi":55,"aqi_min":23,"aqi_max":114,"pm25":14.02,"pm10":23.0,"stations":25},{"datetime_utc":"2026-06-08T00:00:00Z","aqi":60,"aqi_min":23,"aqi_max":112,"pm25":16.39,"pm10":20.0,"stations":26},{"datetime_utc":"2026-06-08T01:00:00Z","aqi":55,"aqi_min":31,"aqi_max":107,"pm25":14.12,"pm10":14.0,"stations":22},{"datetime_utc":"2026-06-08T02:00:00Z","aqi":65,"aqi_min":25,"aqi_max":175,"pm25":18.68,"pm10":7.0,"stations":21},{"datetime_utc":"2026-06-08T03:00:00Z","aqi":57,"aqi_min":21,"aqi_max":112,"pm25":15.02,"pm10":6.0,"stations":28},{"datetime_utc":"2026-06-08T04:00:00Z","aqi":55,"aqi_min":12,"aqi_max":87,"pm25":13.82,"pm10":3.0,"stations":19},{"datetime_utc":"2026-06-08T05:00:00Z","aqi":56,"aqi_min":8,"aqi_max":104,"pm25":14.3,"pm10":2.0,"stations":19},{"datetime_utc":"2026-06-08T06:00:00Z","aqi":56,"aqi_min":12,"aqi_max":114,"pm25":14.66,"pm10":3.0,"stations":28},{"datetime_utc":"2026-06-08T07:00:00Z","aqi":50,"aqi_min":4,"aqi_max":83,"pm25":11.97,"pm10":1.0,"stations":28},{"datetime_utc":"2026-06-08T08:00:00Z","aqi":57,"aqi_min":32,"aqi_max":82,"pm25":14.86,"pm10":null,"stations":27},{"datetime_utc":"2026-06-08T09:00:00Z","aqi":56,"aqi_min":28,"aqi_max":89,"pm25":14.32,"pm10":9.0,"stations":29},{"datetime_utc":"2026-06-08T10:00:00Z","aqi":52,"aqi_min":27,"aqi_max":76,"pm25":12.82,"pm10":22.0,"stations":21},{"datetime_utc":"2026-06-08T11:00:00Z","aqi":52,"aqi_min":25,"aqi_max":85,"pm25":12.62,"pm10":27.0,"stations":29},{"datetime_utc":"2026-06-08T12:00:00Z","aqi":58,"aqi_min":15,"aqi_max":124,"pm25":15.52,"pm10":34.0,"stations":28},{"datetime_utc":"2026-06-08T13:00:00Z","aqi":63,"aqi_min":15,"aqi_max":121,"pm25":17.89,"pm10":41.0,"stations":20},{"datetime_utc":"2026-06-08T14:00:00Z","aqi":59,"aqi_min":30,"aqi_max":129,"pm25":15.69,"pm10":47.0,"stations":15},{"datetime_utc":"2026-06-08T15:00:00Z","aqi":53,"aqi_min":22,"aqi_max":124,"pm25":12.92,"pm10":56.0,"stations":18},{"datetime_utc":"2026-06-08T16:00:00Z","aqi":62,"aqi_min":25,"aqi_max":124,"pm25":17.22,"pm10":56.0,"stations":22},{"datetime_utc":"2026-06-08T17:00:00Z","aqi":64,"aqi_min":20,"aqi_max":124,"pm25":18.48,"pm10":55.0,"stations":26},{"datetime_utc":"2026-06-08T18:00:00Z","aqi":62,"aqi_min":26,"aqi_max":112,"pm25":17.14,"pm10":48.0,"stations":24},{"datetime_utc":"2026-06-08T19:00:00Z","aqi":61,"aqi_min":10,"aqi_max":117,"pm25":16.81,"pm10":49.0,"stations":25},{"datetime_utc":"2026-06-08T20:00:00Z","aqi":115,"aqi_min":115,"aqi_max":115,"pm25":41.0,"pm10":50.0,"stations":1}],"daily":[{"date":"2026-06-06","aqi_avg":62,"aqi_min":57,"aqi_max":68,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":17.3,"pm10_avg":19.7,"hours":3,"stations_avg":14},{"date":"2026-06-07","aqi_avg":60,"aqi_min":45,"aqi_max":68,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":16.6,"pm10_avg":24.0,"hours":24,"stations_avg":24},{"date":"2026-06-08","aqi_avg":60,"aqi_min":50,"aqi_max":115,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":16.5,"pm10_avg":27.5,"hours":21,"stations_avg":23}]}