{"city":"Ulsan","country":"South Korea","lat":35.5372200012207,"lon":129.31666564941406,"range":"48h","license":"CC BY 4.0","source":"https://cerns.io","hourly":[{"datetime_utc":"2026-05-28T13:00:00Z","aqi":54,"aqi_min":6,"aqi_max":79,"pm25":13.43,"pm10":null,"stations":2},{"datetime_utc":"2026-05-28T14:00:00Z","aqi":45,"aqi_min":4,"aqi_max":91,"pm25":10.86,"pm10":null,"stations":29},{"datetime_utc":"2026-05-28T15:00:00Z","aqi":41,"aqi_min":2,"aqi_max":97,"pm25":9.82,"pm10":null,"stations":7},{"datetime_utc":"2026-05-28T16:00:00Z","aqi":75,"aqi_min":2,"aqi_max":158,"pm25":23.31,"pm10":null,"stations":35},{"datetime_utc":"2026-05-28T17:00:00Z","aqi":66,"aqi_min":4,"aqi_max":152,"pm25":19.43,"pm10":null,"stations":52},{"datetime_utc":"2026-05-28T18:00:00Z","aqi":80,"aqi_min":11,"aqi_max":149,"pm25":25.79,"pm10":null,"stations":8},{"datetime_utc":"2026-05-28T19:00:00Z","aqi":85,"aqi_min":2,"aqi_max":158,"pm25":28.22,"pm10":null,"stations":26},{"datetime_utc":"2026-05-28T20:00:00Z","aqi":69,"aqi_min":4,"aqi_max":114,"pm25":20.84,"pm10":null,"stations":29},{"datetime_utc":"2026-05-28T21:00:00Z","aqi":81,"aqi_min":10,"aqi_max":153,"pm25":26.33,"pm10":null,"stations":28},{"datetime_utc":"2026-05-28T22:00:00Z","aqi":75,"aqi_min":1,"aqi_max":153,"pm25":23.44,"pm10":null,"stations":32},{"datetime_utc":"2026-05-28T23:00:00Z","aqi":64,"aqi_min":1,"aqi_max":160,"pm25":18.21,"pm10":null,"stations":33},{"datetime_utc":"2026-05-29T00:00:00Z","aqi":72,"aqi_min":5,"aqi_max":119,"pm25":22.33,"pm10":null,"stations":17},{"datetime_utc":"2026-05-29T01:00:00Z","aqi":73,"aqi_min":1,"aqi_max":157,"pm25":22.64,"pm10":null,"stations":26},{"datetime_utc":"2026-05-29T02:00:00Z","aqi":80,"aqi_min":36,"aqi_max":153,"pm25":25.99,"pm10":null,"stations":22},{"datetime_utc":"2026-05-29T03:00:00Z","aqi":67,"aqi_min":6,"aqi_max":127,"pm25":19.75,"pm10":null,"stations":26},{"datetime_utc":"2026-05-29T04:00:00Z","aqi":57,"aqi_min":1,"aqi_max":107,"pm25":15.15,"pm10":null,"stations":20},{"datetime_utc":"2026-05-29T05:00:00Z","aqi":60,"aqi_min":10,"aqi_max":151,"pm25":16.35,"pm10":null,"stations":34},{"datetime_utc":"2026-05-29T06:00:00Z","aqi":68,"aqi_min":4,"aqi_max":142,"pm25":20.43,"pm10":null,"stations":28},{"datetime_utc":"2026-05-29T07:00:00Z","aqi":55,"aqi_min":1,"aqi_max":102,"pm25":13.98,"pm10":null,"stations":29},{"datetime_utc":"2026-05-29T08:00:00Z","aqi":66,"aqi_min":6,"aqi_max":109,"pm25":19.22,"pm10":null,"stations":25},{"datetime_utc":"2026-05-29T09:00:00Z","aqi":67,"aqi_min":9,"aqi_max":117,"pm25":19.93,"pm10":null,"stations":21},{"datetime_utc":"2026-05-29T10:00:00Z","aqi":57,"aqi_min":5,"aqi_max":99,"pm25":14.91,"pm10":null,"stations":34},{"datetime_utc":"2026-05-29T11:00:00Z","aqi":63,"aqi_min":14,"aqi_max":97,"pm25":17.58,"pm10":null,"stations":28},{"datetime_utc":"2026-05-29T12:00:00Z","aqi":58,"aqi_min":13,"aqi_max":87,"pm25":15.54,"pm10":null,"stations":43},{"datetime_utc":"2026-05-29T13:00:00Z","aqi":60,"aqi_min":8,"aqi_max":82,"pm25":16.16,"pm10":null,"stations":34},{"datetime_utc":"2026-05-29T14:00:00Z","aqi":54,"aqi_min":8,"aqi_max":85,"pm25":13.52,"pm10":null,"stations":27},{"datetime_utc":"2026-05-29T15:00:00Z","aqi":60,"aqi_min":7,"aqi_max":99,"pm25":16.6,"pm10":null,"stations":40},{"datetime_utc":"2026-05-29T16:00:00Z","aqi":62,"aqi_min":1,"aqi_max":107,"pm25":17.13,"pm10":null,"stations":30},{"datetime_utc":"2026-05-29T17:00:00Z","aqi":59,"aqi_min":7,"aqi_max":109,"pm25":16.07,"pm10":null,"stations":29},{"datetime_utc":"2026-05-29T18:00:00Z","aqi":60,"aqi_min":4,"aqi_max":107,"pm25":16.44,"pm10":null,"stations":47},{"datetime_utc":"2026-05-29T19:00:00Z","aqi":61,"aqi_min":11,"aqi_max":82,"pm25":16.81,"pm10":null,"stations":34},{"datetime_utc":"2026-05-29T20:00:00Z","aqi":58,"aqi_min":8,"aqi_max":112,"pm25":15.48,"pm10":null,"stations":28},{"datetime_utc":"2026-05-29T21:00:00Z","aqi":62,"aqi_min":7,"aqi_max":117,"pm25":17.34,"pm10":null,"stations":41},{"datetime_utc":"2026-05-29T22:00:00Z","aqi":58,"aqi_min":9,"aqi_max":109,"pm25":15.32,"pm10":null,"stations":27},{"datetime_utc":"2026-05-29T23:00:00Z","aqi":60,"aqi_min":5,"aqi_max":124,"pm25":16.25,"pm10":null,"stations":84},{"datetime_utc":"2026-05-30T00:00:00Z","aqi":52,"aqi_min":5,"aqi_max":93,"pm25":12.53,"pm10":null,"stations":41},{"datetime_utc":"2026-05-30T01:00:00Z","aqi":53,"aqi_min":5,"aqi_max":85,"pm25":13.2,"pm10":null,"stations":38},{"datetime_utc":"2026-05-30T02:00:00Z","aqi":57,"aqi_min":6,"aqi_max":94,"pm25":15.08,"pm10":null,"stations":25},{"datetime_utc":"2026-05-30T03:00:00Z","aqi":66,"aqi_min":4,"aqi_max":127,"pm25":19.1,"pm10":null,"stations":55},{"datetime_utc":"2026-05-30T04:00:00Z","aqi":64,"aqi_min":5,"aqi_max":107,"pm25":18.15,"pm10":null,"stations":28},{"datetime_utc":"2026-05-30T05:00:00Z","aqi":59,"aqi_min":5,"aqi_max":95,"pm25":16.01,"pm10":null,"stations":25},{"datetime_utc":"2026-05-30T06:00:00Z","aqi":77,"aqi_min":14,"aqi_max":153,"pm25":24.67,"pm10":null,"stations":31},{"datetime_utc":"2026-05-30T07:00:00Z","aqi":71,"aqi_min":6,"aqi_max":137,"pm25":21.74,"pm10":null,"stations":59},{"datetime_utc":"2026-05-30T08:00:00Z","aqi":70,"aqi_min":9,"aqi_max":105,"pm25":21.32,"pm10":null,"stations":45},{"datetime_utc":"2026-05-30T09:00:00Z","aqi":74,"aqi_min":5,"aqi_max":131,"pm25":22.79,"pm10":null,"stations":33},{"datetime_utc":"2026-05-30T10:00:00Z","aqi":70,"aqi_min":4,"aqi_max":98,"pm25":21.22,"pm10":null,"stations":39},{"datetime_utc":"2026-05-30T11:00:00Z","aqi":65,"aqi_min":25,"aqi_max":107,"pm25":18.75,"pm10":null,"stations":42}],"daily":[{"date":"2026-05-28","aqi_avg":67,"aqi_min":41,"aqi_max":85,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":20.0,"pm10_avg":null,"hours":11,"stations_avg":26},{"date":"2026-05-29","aqi_avg":62,"aqi_min":54,"aqi_max":80,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":17.5,"pm10_avg":null,"hours":24,"stations_avg":32},{"date":"2026-05-30","aqi_avg":65,"aqi_min":52,"aqi_max":77,"aqi_color":"#d97706","aqi_label":"Moderate","pm25_avg":18.7,"pm10_avg":null,"hours":12,"stations_avg":38}]}