edit 4/27/2015
This curl examples for this API are broken. – the API now requires a key: http://openweathermap.org/api
notes
I’m using this API now instead of the CORDC wind forecast data for the internet-sensors wind example. You can get 7 day forecast data for practically anywhere. Also historical data is available. And its free.
Get forecast by city id
Weather forecast in the city for the next 7 days.
http://api.openweathermap.org/data/2.1/forecast/city/{CITY_ID}
http://api.openweathermap.org/data/2.1/forecast/city/524901
{"message":"","cod":"200","calctime":0.0189,"list":[ {"dt":1345251600, "main":{"temp":286.6,"humidity":98,"pressure":1002,"temp_min":286,"temp_max":287}, "wind":{"speed":0,"deg":-2}, "rain":{"3h":2}, "clouds":{"all":56}, "weather":{"id":803,"main":"Clouds","description":"broken clouds", "img":"..." } ....
This gets city code for santa cruz – 5393052
curl http://api.openweathermap.org/data/2.1/find/name?q=santa%20cruz,US
this gets 7 days of santa cruz forecasts with time stamps
curl http://api.openweathermap.org/data/2.1/forecast/city/5393052
typical JSON response (for one datapoint):
{ "dt": 1364176800, "main": { "temp": 285.54, "temp_min": 282.6, "temp_max": 287.5, "pressure": 1015.99, "humidity": 87.6, "temp_kf": 2.94 }, "weather": [{ "id": 801, "main": "Clouds", "description": "few clouds", "icon": "02n" }], "clouds": { "all": 17, "low": 0, "middle": 0, "high": 17 }, "wind": { "speed": 4.29, "deg": 311, "gust": 5.1 }, "dt_txt": "2013-03-25 02:00:00" }
So… to get precipitation, we need to just look for “rain”, or “snow” indicator