# Sustainable Weather API

**URL:** <https://discourse.nodered.org/t/sustainable-weather-api/24095>\
**Category:** General\
**Created:** [2 April 2020 12:29 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095 "2020-04-02T12:29:28Z")\
**Posts on this page:** 15\
**Page:** 3

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [26 June 2020 15:45 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/41 "2020-06-26T15:45:30Z")

</div>

> [@TotallyInformation](#):
>
> WAIT! Spotted it

Yes, that's the missing bit!

I'm going to run it for a while and compare results with Darksky (and real conditions) before making any decisions or wholesale changes to my weather flows, but Climacell looks the api of choice at the moment.

Thanks for working your way through the api, it's not the easiest or best documented I've seen.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [26 June 2020 17:03 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/42 "2020-06-26T17:03:24Z")

</div>

No, it is a pain. I got lucky by looking at the Stormglass API. 😄

I did some quick and dirty comparisons of the MetOffice, Norway MET and Climacall API data:

**UPDATED** Added Climacell, Stormglass and OWM

| My Naming | UK Met Office | Norway MET | Climacell - Nowcast | Storm Glass | Open Weather Map |
| --- | --- | --- | --- | --- | --- |
| temperature | screenTemperature | air\_temperature | temp | airTemperature | temp |
| | maxScreenAirTemp | | | | |
| | minScreenAirTemp | | | | |
| dewpoint | screenDewPointTemperature | dew\_point\_temperature | dewpoint | | dew\_point |
| feelslike | feelsLikeTemperature | | feels\_like | | feels\_like |
| wind\_speed | windSpeed10m | wind\_speed | wind\_speed | windSpeed | wind\_speed |
| wind\_direction | windDirectionFrom10m | wind\_from\_direction | wind\_direction | windDirection | wind\_deg |
| gust\_speed | windGustSpeed10m | | wind\_gust | gust | |
| | max10mWindGust | | | | |
| visibility | visibility | | visibility | | |
| humidity | screenRelativeHumidity | relative\_humidity | humidity | humidity | humidity |
| pressure | mslp | air\_pressure\_at\_sea\_level | baro\_pressure | pressure | pressure |
| | uvIndex | ultraviolet\_index\_clear\_sky | | | |
| | significantWeatherCode | | | | |
| | precipitationRate | | | | |
| | totalPrecipAmount | | precipitation | | |
| | totalSnowAmount | | | | |
| | probOfPrecipitation | | | | |
| cloud\_cover | | cloud\_area\_fraction | cloud\_cover | cloudCover | clouds |
| | | cloud\_area\_fraction\_high | | | |
| | | cloud\_area\_fraction\_low | | | |
| | | cloud\_area\_fraction\_medium | | | |
| | | fog\_area\_fraction | | | |
| | | next\_hour.summary | weather\_code | | weather.id |
| | | | | | weather.main |
| | | | | | weather.description |
| | | | | | weather.icon |
| | | next\_hour.precipitation\_amount | | | |
| | | | cloud\_ceiling | | |
| | | | cloud\_base | | |
| | | | surface\_shortwave\_radiation (w/sqm) | | |
| | | | precipitation\_type | | |
| | | | sunrise | | |
| | | | sunset | | |
| | | | | airTemperature80m | |
| | | | | airTemperature100m | |
| | | | | airTemperature200hpa | |
| | | | | airTemperature500hpa | |
| | | | | airTemperature800hpa | |
| | | | | airTemperature1000hpa | |
| | | | | waterTemperature | |
| | | | | windDirection20m | |
| | | | | windDirection30m | |
| | | | | windDirection40m | |
| | | | | windDirection50m | |
| | | | | windDirection80m | |
| | | | | windDirection100m | |
| | | | | windDirection200hpa | |
| | | | | windDirection500hpa | |
| | | | | windDirection800hpa | |
| | | | | windDirection1000hpa | |
| | | | | windSpeed20m | |
| | | | | windSpeed30m | |
| | | | | windSpeed40m | |
| | | | | windSpeed50m | |
| | | | | windSpeed80m | |
| | | | | windSpeed100m | |
| | | | | windSpeed200hpa | |
| | | | | windSpeed500hpa | |
| | | | | windSpeed800hpa | |
| | | | | windSpeed1000hpa | |
| | | | | | |
| NOTES | Amounts measured over PREVIOUS hour | | | | |

With a view to eventually normalising the data for each API as much as possible.

A real pain that the Met Office claims to be a forecast but then gives values for precipitation & max/min temp over the previous hour not the next hour.

The more traditional weather services are really falling behind when compared to services like Stormglass, Climacell and Norway MET.

Open Weather Map reduces location accuracy down to 2dp - actually not too bad, a couple of minutes away from me.

Accuweather is even worse, reducing the accuracy so badly when searching on an exact geo-location that the actual forecast is based at a point some 2 miles away and 100m lower than my actual location which can make a massive difference to the forecast. Trying to find a location that better matches my real location is extremely hard. Weirdly, a postcode search does better just 1/2 mile away. Worse, the rate limits lock you out very quickly and only allow access to the 12-hour hourly forecast. Not even worth bothering with to be honest compared to the other services.

The newer services seem to use interpolation to adjust location - it will be interesting to see whether that gives better forecasts.

There doesn't really seem to be a single service that provides a truly comprehensive set of data - I suspect that, if I get time to finish this, I will end up with a merged set of data from several sources.

Let me know if you spot any other global forecast API's and I'll try to include them.

Next I'll normalise the data (at least the core data) and dump to a uibuilder bootstrap-vue table for comparison.

Not done a side-by-side comparison for a long time but this seems like a good time to do one.

---

<div class="post-metadata">

**Author:** ![bakman2](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/bakman2/32/6207_2.png) [@bakman2](https://discourse.nodered.org/u/bakman2)\
**Post date:** [27 June 2020 05:50 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/43 "2020-06-27T05:50:50Z")

</div>

Depending on your needs, I would like to add an option from a different perspective; If you have a Netatmo weather station, you can get access to all the netatmo devices ([api](https://dev.netatmo.com/apidocumentation/weather#getpublicdata)) in their network and there are many worldwide (they actually feed into the norway MET api for norway/sweden/finland).

In the public data you can get live rain/wind/temp/humidity measurements from a square-based lat/lon location.

example fields available (not a complete object as it differs per station and many results are returned), great with jsonata; `$average(**.rain_live)`

```auto
"place": {
      "location": [
        4.488782,
        52.182097
      ],
      "timezone": "Europe/Amsterdam",
      "country": "NL",
      "altitude": 1,
      "city": "Oegstgeest",
      "street": "Lange Voort"
    },
"rain_60min": 0,
"rain_24h": 3.1310000000000002,
"rain_live": 0,
"rain_timeutc": 1593235791

"wind_strength": 1,
"wind_angle": 225,
"gust_strength": 4,
"gust_angle": 241,
"wind_timeutc": 1593235791
"res": {
"1593235948": [
  18.8,
  96
]
},
"type": [
  "temperature",
  "humidity"
]

```

---

<div class="post-metadata">

**Author:** ![grumpazoid](https://avatars.discourse-cdn.com/v4/letter/g/4da419/32.png) [@grumpazoid](https://discourse.nodered.org/u/grumpazoid)\
**Post date:** [29 June 2020 17:10 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/44 "2020-06-29T17:10:15Z")

</div>

I have just tried out the Climacell API as I wanted to get wind gusts and it turns out Openweathermap don't send that (for my location at least). So annoying many apps don't acknowledge gusts!

Now I have sussed out the API call I can get the info I need from Climacell.  
May have to see how the Met Office API compares as well.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [6 July 2020 09:20 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/45 "2020-07-06T09:20:42Z")

</div>

I've been comparing the data obtained from Climacell, with both Darksky and my local sensors for several days now, and although most of the data appears to be fairly consistent, I'm finding the temperature reported by Climacell is usually off by 1 or 2 degrees, compared with the other sources (especially my local sensor).

How are other users finding Climacell?

---

<div class="post-metadata">

**Author:** ![rgerrans](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@rgerrans](https://discourse.nodered.org/u/rgerrans)\
**Post date:** [15 July 2020 04:08 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/46 "2020-07-15T04:08:05Z")

</div>

I just tested it and it's off by about 5 deg F (low) vs. Darksky, Google Weather, AccuWeather.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [15 July 2020 09:20 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/47 "2020-07-15T09:20:34Z")

</div>

I'm surprised to hear that, because Climacell have held the US up as their marketing model, listing many US companies who endorse the product.  
I thought that their Virtual Sensing data would have been far more prolific due to more airline flights, satellite & car connectivity, etc in the US than the UK, and therefore be more precise. Obviously not!

---

<div class="post-metadata">

**Author:** ![rgerrans](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@rgerrans](https://discourse.nodered.org/u/rgerrans)\
**Post date:** [15 July 2020 13:53 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/48 "2020-07-15T13:53:49Z")

</div>

I'll keep testing to see if that was a one time happening or consistent delta.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [15 July 2020 16:58 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/49 "2020-07-15T16:58:13Z")

</div>

Check where the data is actually coming from - different datasets have different levels of granularity. Depending on where you live and differences in microclimates, general models may need to be tweaked for your actual location. Also some models are not localised at all and so may only apply to the recording location (often an airport in the UK).

The other thing to watch out for is inaccuracies in your own sensors. If you are using a DHT based sensor for example (which many cheaper "weather stations" might also use), chances are that the readings are not only way off but also drifting further over time.

Interestingly, the CEO of Storm Glass reached out to me after I signed up. I let him know about this thread.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [15 July 2020 17:00 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/50 "2020-07-15T17:00:56Z")

</div>

> [@TotallyInformation](#):
>
> Check where the data is actually coming from

How? I assumed that the source was dictated by the lat/lon coordinates.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [15 July 2020 17:12 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/51 "2020-07-15T17:12:12Z")

</div>

If you check how the data is produced, you will spot 2 main types.

One based on models that predict on a set geo pattern. If you've ever read about how weather models are produced, you will get the idea. intermediate locations are predicted based on actual readings from set locations plus a detailed model of various other features such as altitude, landscape, water & vegetation and many other things.

Other weather is purely based on observations from fixed points and those can be wildly different for your location if, like me, you live somewhere that has greatly differing microclimates.

When you check the output from an API, check what geo location it gave back and how far different it is to the one that you put in. Some API's don't even allow lat/long input or if they do, it is translated to the nearest observation point or to a more general location like the nearest city centre (type 2) or may snap you to the nearest model lat/lon (mainly but not exclusively type 1).

---

<div class="post-metadata">

**Author:** ![rgerrans](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@rgerrans](https://discourse.nodered.org/u/rgerrans)\
**Post date:** [16 July 2020 12:22 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/52 "2020-07-16T12:22:13Z")

</div>

For me both are reporting the same lat/long I inputed. I ran 10 minute intervals for 12+ hours overnight and got the following comparison. Hi/lo variance was about 3 degrees with an average of 0. Close enough for the type of flows I use the data in.While Darksky clearly seems more tracking vs Climacel does look more like a model, once again I'm only using it for a handful of trigger thresholds so not a huge deal to me

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/5/f/5f75dbe1f0562b3922818be4582284fda38d2875.png)

---

<div class="post-metadata">

**Author:** ![rgerrans](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@rgerrans](https://discourse.nodered.org/u/rgerrans)\
**Post date:** [17 July 2020 01:06 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/53 "2020-07-17T01:06:26Z")

</div>

Here is 24 hours of tracking, really interesting mappings of the two. Clearly Climacel uses a less frequent data sampling.

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/4/c/4c57233bbbd94d20230d17f1df384d6dea182fcd.png)

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [17 July 2020 10:17 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/54 "2020-07-17T10:17:07Z")

</div>

Or Darksky uses heavier smoothing.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [15 September 2020 10:17 UTC](https://discourse.nodered.org/t/sustainable-weather-api/24095/55 "2020-09-15T10:17:08Z")

</div>

Closed on 15 September 2020 10:17 UTC

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.

[Previous page](https://discourse.nodered.org/t/sustainable-weather-api/24095.md?page=2)
