{"dataset":"city-weather","title":"City weather","source":{"name":"Open-Meteo","url":"https://open-meteo.com/"},"attribution":"Alberta.io (https://alberta.io/data), from Open-Meteo","range":{"from":"2026-09-06","to":"2026-10-05"},"truncated":false,"columns":[{"key":"observed_at","description":"Start of the hour (UTC)"},{"key":"city","description":"City"},{"key":"temp_c","description":"Temperature, °C"},{"key":"condition","description":"Conditions"},{"key":"low_c","description":"Forecast low, °C"},{"key":"high_c","description":"Forecast high, °C"},{"key":"wind_kmh","description":"Wind, km/h"}],"rows":[{"observed_at":"2026-10-04T21:00:00+00:00","city":"Spruce Grove","temp_c":15,"condition":"Clear","low_c":2,"high_c":16,"wind_kmh":19},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Calgary","temp_c":18,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":11},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Edmonton","temp_c":15,"condition":"Partly Cloudy","low_c":3,"high_c":16,"wind_kmh":15},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Red Deer","temp_c":16,"condition":"Clear","low_c":4,"high_c":17,"wind_kmh":17},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Lethbridge","temp_c":22,"condition":"Clear","low_c":1,"high_c":23,"wind_kmh":5},{"observed_at":"2026-10-04T21:00:00+00:00","city":"St. Albert","temp_c":15,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":15},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Airdrie","temp_c":18,"condition":"Clear","low_c":0,"high_c":19,"wind_kmh":16},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Fort McMurray","temp_c":12,"condition":"Partly Cloudy","low_c":-1,"high_c":12,"wind_kmh":14},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Grande Prairie","temp_c":14,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":2},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Medicine Hat","temp_c":22,"condition":"Clear","low_c":3,"high_c":24,"wind_kmh":4},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Leduc","temp_c":16,"condition":"Partly Cloudy","low_c":2,"high_c":17,"wind_kmh":21},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Lloydminster","temp_c":14,"condition":"Partly Cloudy","low_c":2,"high_c":15,"wind_kmh":13},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Camrose","temp_c":17,"condition":"Partly Cloudy","low_c":1,"high_c":18,"wind_kmh":22},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Cold Lake","temp_c":13,"condition":"Partly Cloudy","low_c":4,"high_c":14,"wind_kmh":12},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Brooks","temp_c":20,"condition":"Clear","low_c":1,"high_c":20,"wind_kmh":21},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Banff","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":18},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Jasper","temp_c":19,"condition":"Partly Cloudy","low_c":1,"high_c":19,"wind_kmh":9},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Sherwood Park","temp_c":15,"condition":"Partly Cloudy","low_c":3,"high_c":16,"wind_kmh":17},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Cochrane","temp_c":18,"condition":"Partly Cloudy","low_c":1,"high_c":19,"wind_kmh":13},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Okotoks","temp_c":18,"condition":"Clear","low_c":1,"high_c":19,"wind_kmh":14},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Fort Saskatchewan","temp_c":16,"condition":"Partly Cloudy","low_c":3,"high_c":16,"wind_kmh":18},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Chestermere","temp_c":18,"condition":"Clear","low_c":0,"high_c":19,"wind_kmh":16},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Beaumont","temp_c":16,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":21},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Canmore","temp_c":21,"condition":"Partly Cloudy","low_c":0,"high_c":21,"wind_kmh":13},{"observed_at":"2026-10-04T21:00:00+00:00","city":"Drumheller","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":21},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Calgary","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":12},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Edmonton","temp_c":16,"condition":"Clear","low_c":3,"high_c":16,"wind_kmh":15},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Red Deer","temp_c":17,"condition":"Clear","low_c":4,"high_c":17,"wind_kmh":16},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Lethbridge","temp_c":23,"condition":"Clear","low_c":1,"high_c":23,"wind_kmh":7},{"observed_at":"2026-10-04T22:00:00+00:00","city":"St. Albert","temp_c":16,"condition":"Clear","low_c":2,"high_c":16,"wind_kmh":15},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Airdrie","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":16},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Fort McMurray","temp_c":11,"condition":"Partly Cloudy","low_c":-1,"high_c":12,"wind_kmh":15},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Grande Prairie","temp_c":15,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":2},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Medicine Hat","temp_c":23,"condition":"Clear","low_c":3,"high_c":24,"wind_kmh":1},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Spruce Grove","temp_c":16,"condition":"Clear","low_c":2,"high_c":16,"wind_kmh":18},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Leduc","temp_c":17,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":21},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Lloydminster","temp_c":15,"condition":"Partly Cloudy","low_c":2,"high_c":15,"wind_kmh":15},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Camrose","temp_c":18,"condition":"Clear","low_c":1,"high_c":18,"wind_kmh":22},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Cold Lake","temp_c":14,"condition":"Partly Cloudy","low_c":4,"high_c":14,"wind_kmh":13},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Brooks","temp_c":21,"condition":"Clear","low_c":1,"high_c":21,"wind_kmh":21},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Banff","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":18},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Jasper","temp_c":19,"condition":"Clear","low_c":1,"high_c":19,"wind_kmh":9},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Sherwood Park","temp_c":16,"condition":"Clear","low_c":3,"high_c":16,"wind_kmh":18},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Cochrane","temp_c":19,"condition":"Partly Cloudy","low_c":1,"high_c":19,"wind_kmh":15},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Okotoks","temp_c":19,"condition":"Partly Cloudy","low_c":1,"high_c":19,"wind_kmh":15},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Fort Saskatchewan","temp_c":16,"condition":"Clear","low_c":3,"high_c":16,"wind_kmh":19},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Chestermere","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":17},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Beaumont","temp_c":17,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":20},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Canmore","temp_c":21,"condition":"Partly Cloudy","low_c":0,"high_c":21,"wind_kmh":13},{"observed_at":"2026-10-04T22:00:00+00:00","city":"Drumheller","temp_c":20,"condition":"Partly Cloudy","low_c":0,"high_c":20,"wind_kmh":22},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Calgary","temp_c":19,"condition":"Clear","low_c":0,"high_c":19,"wind_kmh":11},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Edmonton","temp_c":16,"condition":"Clear","low_c":3,"high_c":16,"wind_kmh":12},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Red Deer","temp_c":17,"condition":"Partly Cloudy","low_c":4,"high_c":17,"wind_kmh":15},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Lethbridge","temp_c":24,"condition":"Clear","low_c":1,"high_c":24,"wind_kmh":8},{"observed_at":"2026-10-04T23:00:00+00:00","city":"St. Albert","temp_c":16,"condition":"Clear","low_c":2,"high_c":16,"wind_kmh":11},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Airdrie","temp_c":19,"condition":"Clear","low_c":0,"high_c":19,"wind_kmh":17},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Fort McMurray","temp_c":11,"condition":"Partly Cloudy","low_c":-1,"high_c":12,"wind_kmh":17},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Grande Prairie","temp_c":16,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":1},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Medicine Hat","temp_c":24,"condition":"Clear","low_c":3,"high_c":24,"wind_kmh":13},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Spruce Grove","temp_c":16,"condition":"Clear","low_c":2,"high_c":16,"wind_kmh":14},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Leduc","temp_c":17,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":19},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Lloydminster","temp_c":14,"condition":"Partly Cloudy","low_c":2,"high_c":15,"wind_kmh":17},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Camrose","temp_c":18,"condition":"Clear","low_c":1,"high_c":18,"wind_kmh":21},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Cold Lake","temp_c":13,"condition":"Partly Cloudy","low_c":4,"high_c":14,"wind_kmh":15},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Brooks","temp_c":22,"condition":"Clear","low_c":1,"high_c":22,"wind_kmh":20},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Banff","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":16},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Jasper","temp_c":18,"condition":"Clear","low_c":1,"high_c":19,"wind_kmh":6},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Sherwood Park","temp_c":16,"condition":"Clear","low_c":3,"high_c":16,"wind_kmh":14},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Cochrane","temp_c":20,"condition":"Clear","low_c":1,"high_c":20,"wind_kmh":13},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Okotoks","temp_c":20,"condition":"Clear","low_c":1,"high_c":20,"wind_kmh":15},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Fort Saskatchewan","temp_c":16,"condition":"Clear","low_c":3,"high_c":16,"wind_kmh":18},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Chestermere","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":16},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Beaumont","temp_c":17,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":18},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Canmore","temp_c":20,"condition":"Partly Cloudy","low_c":0,"high_c":21,"wind_kmh":11},{"observed_at":"2026-10-04T23:00:00+00:00","city":"Drumheller","temp_c":20,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":21},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Calgary","temp_c":19,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":7},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Edmonton","temp_c":15,"condition":"Partly Cloudy","low_c":3,"high_c":16,"wind_kmh":9},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Red Deer","temp_c":16,"condition":"Partly Cloudy","low_c":4,"high_c":17,"wind_kmh":13},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Lethbridge","temp_c":23,"condition":"Partly Cloudy","low_c":1,"high_c":25,"wind_kmh":7},{"observed_at":"2026-10-05T00:00:00+00:00","city":"St. Albert","temp_c":15,"condition":"Clear","low_c":2,"high_c":16,"wind_kmh":9},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Airdrie","temp_c":18,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":13},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Fort McMurray","temp_c":10,"condition":"Partly Cloudy","low_c":-1,"high_c":12,"wind_kmh":16},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Grande Prairie","temp_c":15,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":3},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Medicine Hat","temp_c":22,"condition":"Clear","low_c":3,"high_c":24,"wind_kmh":11},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Spruce Grove","temp_c":15,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":11},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Leduc","temp_c":16,"condition":"Partly Cloudy","low_c":2,"high_c":17,"wind_kmh":15},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Lloydminster","temp_c":13,"condition":"Clear","low_c":2,"high_c":15,"wind_kmh":17},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Camrose","temp_c":17,"condition":"Partly Cloudy","low_c":1,"high_c":18,"wind_kmh":15},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Cold Lake","temp_c":13,"condition":"Partly Cloudy","low_c":4,"high_c":14,"wind_kmh":15},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Brooks","temp_c":20,"condition":"Partly Cloudy","low_c":1,"high_c":22,"wind_kmh":15},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Banff","temp_c":17,"condition":"Partly Cloudy","low_c":0,"high_c":19,"wind_kmh":10},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Jasper","temp_c":15,"condition":"Clear","low_c":1,"high_c":19,"wind_kmh":5},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Sherwood Park","temp_c":15,"condition":"Partly Cloudy","low_c":3,"high_c":16,"wind_kmh":11},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Cochrane","temp_c":19,"condition":"Clear","low_c":1,"high_c":20,"wind_kmh":11},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Okotoks","temp_c":19,"condition":"Partly Cloudy","low_c":1,"high_c":21,"wind_kmh":10},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Fort Saskatchewan","temp_c":15,"condition":"Partly Cloudy","low_c":3,"high_c":16,"wind_kmh":13},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Chestermere","temp_c":19,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":10},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Beaumont","temp_c":16,"condition":"Partly Cloudy","low_c":2,"high_c":17,"wind_kmh":15},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Canmore","temp_c":19,"condition":"Partly Cloudy","low_c":0,"high_c":22,"wind_kmh":12},{"observed_at":"2026-10-05T00:00:00+00:00","city":"Drumheller","temp_c":20,"condition":"Partly Cloudy","low_c":0,"high_c":21,"wind_kmh":14},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Drumheller","temp_c":17,"condition":"Clear","low_c":0,"high_c":21,"wind_kmh":12},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Canmore","temp_c":16,"condition":"Clear","low_c":0,"high_c":22,"wind_kmh":15},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Chestermere","temp_c":16,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":9},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Fort Saskatchewan","temp_c":14,"condition":"Partly Cloudy","low_c":3,"high_c":17,"wind_kmh":11},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Okotoks","temp_c":16,"condition":"Clear","low_c":1,"high_c":21,"wind_kmh":7},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Cochrane","temp_c":15,"condition":"Clear","low_c":1,"high_c":19,"wind_kmh":10},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Sherwood Park","temp_c":13,"condition":"Partly Cloudy","low_c":3,"high_c":17,"wind_kmh":8},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Jasper","temp_c":11,"condition":"Clear","low_c":1,"high_c":19,"wind_kmh":4},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Banff","temp_c":14,"condition":"Clear","low_c":0,"high_c":19,"wind_kmh":9},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Brooks","temp_c":17,"condition":"Clear","low_c":1,"high_c":22,"wind_kmh":13},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Cold Lake","temp_c":12,"condition":"Partly Cloudy","low_c":4,"high_c":14,"wind_kmh":16},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Camrose","temp_c":15,"condition":"Partly Cloudy","low_c":1,"high_c":19,"wind_kmh":10},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Lloydminster","temp_c":12,"condition":"Partly Cloudy","low_c":2,"high_c":16,"wind_kmh":18},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Leduc","temp_c":14,"condition":"Clear","low_c":2,"high_c":18,"wind_kmh":10},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Spruce Grove","temp_c":13,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":8},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Medicine Hat","temp_c":19,"condition":"Clear","low_c":3,"high_c":24,"wind_kmh":10},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Grande Prairie","temp_c":13,"condition":"Partly Cloudy","low_c":2,"high_c":15,"wind_kmh":8},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Fort McMurray","temp_c":10,"condition":"Partly Cloudy","low_c":-1,"high_c":12,"wind_kmh":16},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Airdrie","temp_c":15,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":10},{"observed_at":"2026-10-05T01:00:00+00:00","city":"St. Albert","temp_c":14,"condition":"Clear","low_c":2,"high_c":17,"wind_kmh":8},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Lethbridge","temp_c":20,"condition":"Clear","low_c":1,"high_c":25,"wind_kmh":12},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Red Deer","temp_c":15,"condition":"Partly Cloudy","low_c":4,"high_c":18,"wind_kmh":10},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Edmonton","temp_c":14,"condition":"Partly Cloudy","low_c":3,"high_c":17,"wind_kmh":7},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Calgary","temp_c":16,"condition":"Clear","low_c":0,"high_c":20,"wind_kmh":5},{"observed_at":"2026-10-05T01:00:00+00:00","city":"Beaumont","temp_c":14,"condition":"Clear","low_c":2,"high_c":18,"wind_kmh":10}]}