I now have a simple API that lets you enter a city and see basic weather data
CloudDeploy[FormFunction @@
APIFunction[ "location" -> "ComputedLocation",
Grid[{{Style["Current Temperature", "Subsubsection"],
IconData["AirTemperature",
WeatherData[#location, "Temperature"]],
QuantityForm[WeatherData[#location, "Temperature"],
"Abbreviation"]}, {Style["Current Relative Humidity",
"Subsubsection"],
IconData["RelativeHumidity",
WeatherData[#location, "Humidity"]],
QuantityForm[WeatherData[#location, "Humidity"],
"Abbreviation"]}, {Style["Current Wind Speed",
"Subsubsection"],
IconData["WindSpeed", WeatherData[#location, "WindSpeed"]],
QuantityForm[WeatherData[#location, "WindSpeed"],
"Abbreviation"]}, {Style["Current Wind Direction",
"Subsubsection"],
IconData["WindDirection",
WeatherData[#location, "WindDirection"]],
QuantityForm[WeatherData[#location, "WindDirection"],
"Abbreviation"]}, {Style["Geographical position",
"Subsubsection"], FromDMS[#location],
DMSString[#location, "Position"]}, {Style["Current time",
"Subsubsection"],
DateString[Now, "DateTime"]}, {Style[
"Geographical xyz position", "Subsubsection"],
GeoPositionXYZ[#location]}, {Style[
"Geographical projected position with Bonne grid projection",
"Subsubsection"],
First[GeoGridPosition[#location, "Bonne"]]}},
Alignment -> Left] & , "CloudCDF"], "versa"]