# Add ability to download historical data within the app or web interface

**URL:** <https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869>\
**Category:** Tempest Owners\
**Created:** [June 15, 2021, 12:38pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869 "2021-06-15T12:38:47Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![thegumnut](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/thegumnut/32/12473_2.png) [@thegumnut](https://community.tempest.earth/u/thegumnut)\
**Post date:** [June 15, 2021, 12:38pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/1 "2021-06-15T12:38:47Z")

</div>

Improve the “historical data” functionality (within the app and/or the web user interface itself - not an API to another app) to allow the user to download historical data. Currently the data can be _viewed_ but not downloaded. This would allow analysis of the data (in other applications for example).

Allowing the user to select a date range to download data would be nice to have.

Note that the current “history” functionality appears to be limited to a day-by-day scrolling (in the app) and a max/min over a pre-defined date range (in the web interface).

Note also that the IFTTT functionality that exists is limited to downloading _live_ data (i.e. not historical data).

There is another (year old) feature request very similar to this, but this request is specifically to add this feature to a user-accessible interface.

---

<div class="post-metadata">

**Author:** ![eric](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/eric/32/13553_2.png) [@eric](https://community.tempest.earth/u/eric)\
**Post date:** [June 15, 2021, 5:51pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/2 "2021-06-15T17:51:38Z")

</div>

What you describe exists via several channels  
or locally via UDP or remotely calling data from the WeatherFlow servers

it is all described in [this page](https://weatherflow.github.io/Tempest/)

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 15, 2021, 7:15pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/3 "2021-06-15T19:15:50Z")

</div>

I’ve built a data exporter/importer as part of my WeatherFlow data collector (as a few others have done on this forum as well…) Curious how you’d like to see that data? In a CSV file? I may be able to add a feature to create a file of your data from a command line (via Docker) perhaps. Everything in that link that @eric provided is a way of getting after your JSON data in the cloud. Lots of data exists all over the place 🙂

---

<div class="post-metadata">

**Author:** ![thegumnut](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/thegumnut/32/12473_2.png) [@thegumnut](https://community.tempest.earth/u/thegumnut)\
**Post date:** [June 16, 2021, 10:07am UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/4 "2021-06-16T10:07:51Z")

</div>

Thanks @eric . The page you linked refers to the developer tools (of which there are indeed many). But my request is specifically for a download feature to be added to the app or web interface as I tried to make clear. While I guess many owners are weather geeks, probably not so many are software geeks, and most probably don’t even know what JSON, UDP, API even mean, let alone how to use these protocols.

---

<div class="post-metadata">

**Author:** ![thegumnut](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/thegumnut/32/12473_2.png) [@thegumnut](https://community.tempest.earth/u/thegumnut)\
**Post date:** [June 16, 2021, 10:12am UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/5 "2021-06-16T10:12:56Z")

</div>

Thanks for the response @Lux4rd0 ! The historical data in a CSV file would be perfect. If you have anything I can use as a starting point to work with, that would be great.

By the way - and this is perhaps a question showing my ignorance - but I don’t find (yet) clear details of where the historical data actually resides and how much of it there is (and at what time resolution). I can create a CSV file of the current data stream, but I’m really looking for whatever historical data there is (either locally on the hub or residing on a server…).

I appreciate your offer to help!

---

<div class="post-metadata">

**Author:** ![sunny](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/sunny/32/16368_2.png) [@sunny](https://community.tempest.earth/u/sunny)\
**Post date:** [June 16, 2021, 12:46pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/6 "2021-06-16T12:46:20Z")

</div>

there really is no need to add this to the app. There is a useable web interface available when you click on the api in top of this screen. It allows you to download the historical data in cvs. Yes that page is geared towards developers, but it really is easy enough to download the data from there.

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 16, 2021, 2:36pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/7 "2021-06-16T14:36:14Z")

</div>

@sunny - yep! I forgot about the ability to switch between JSON and CSV. Something like:

`https://swd.weatherflow.com/swd/rest/observations/device/<<device_id>>?day_offset=1&format=csv&token=<<token>>`

or with some `time_start` & `time_end` dates certainly would do that nicely! However - dumping that out for more than a few days may be a little tedious 🙂 And per minute granularity falls off if you start selecting bigger swaths of time outside of 5 days.

Certainly a great first place to try things out and see if the data you’re looking for is something worth playing with. It’s essentially all of the per minute data from your device without any derived metrics or event data.

```auto
"device_id","type","bucket_step_minutes","timestamp","wind_lull","wind_avg","wind_gust","wind_dir","wind_interval","pressure","temperature","humidity","lux","uv","solar_radiation","precip","precip_type","strike_distance","strike_count","battery","report_interval","local_daily_precip","precip_final","local_daily_precip_final","precip_analysis_type"
122367,obs_st,1,1623715200,0.07,1.23,2.32,348,3,989.4,31,48,10477,0.63,87,0,0,0,0,2.79,1,0,0,0,1,
122367,obs_st,1,1623715260,0.14,0.97,2.19,0,3,989.4,31,48,10392,0.62,86,0,0,0,0,2.79,1,0,0,0,1,
122367,obs_st,1,1623715320,0,0.61,1.78,353,3,989.4,31,48,10299,0.62,85,0,0,0,0,2.79,1,0,0,0,1,

```

Here’s a sample of my data if you want to just plug it into Excel as a CSV.

_(If you have like 5 Tempests, a few Air and Skys and 1200 days of data - this probably won’t work so well for you…)_ 😉

---

<div class="post-metadata">

**Author:** ![sunny](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/sunny/32/16368_2.png) [@sunny](https://community.tempest.earth/u/sunny)\
**Post date:** [June 16, 2021, 2:53pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/8 "2021-06-16T14:53:12Z")

</div>

yeah, doing this by hand and selecting the high res data, by downloading it day by day, wouldn’t be fun. However, I suspect that you simply could do this once a day, and just keep up to date.

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 16, 2021, 3:41pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/9 "2021-06-16T15:41:31Z")

</div>

Tempest is fun enough that doing this by hand only offsets the overall experience by just a little bit 😉

---

<div class="post-metadata">

**Author:** ![thegumnut](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/thegumnut/32/12473_2.png) [@thegumnut](https://community.tempest.earth/u/thegumnut)\
**Post date:** [June 17, 2021, 11:25am UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/10 "2021-06-17T11:25:47Z")

</div>

Thanks for the feedback @Lux4rd0 and @sunny . I hadn’t really paid attention to the API button on this webpage before. OK, so now I can download (and have downloaded some) data manually and no, it _really_ isn’t fun (even allowing for the “Tempest fun offset”. Given I’m looking to get _all_ the historical data that’s available, it could get a lot less fun in a hurry. And I don’t think this approach is really addressing my original request for a _user-friendly_ method. Maybe I could sit down and automate this, but that’s really not what I had in mind with the original feature request: something that’s easily accessible in the UI.

Given that both the app and the web interface allow a user to display historical data in a graphical format, and to scroll through it - so the data is available to generate the graph - it seemed pretty straightforward to have a “download” button right there to simply download the data to a local file.

---

<div class="post-metadata">

**Author:** ![sunny](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/sunny/32/16368_2.png) [@sunny](https://community.tempest.earth/u/sunny)\
**Post date:** [June 17, 2021, 1:31pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/11 "2021-06-17T13:31:00Z")

</div>

you want to have an interface for manual downloading data in cvs, someone else wants it in userfriendly json, and perhaps yet someone else wants it in some binary format. Others want it to integrate with some other program. There are so many options, be happy there is at least some way to download it.  
And what I was saying, once you downloaded it all you probably want to download the extra data the next day, and the day after that etc, so you might want to automate it anyway. For that purpose the API is there. My suggestion, use it.

---

<div class="post-metadata">

**Author:** ![eric](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/eric/32/13553_2.png) [@eric](https://community.tempest.earth/u/eric)\
**Post date:** [June 17, 2021, 3:56pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/12 "2021-06-17T15:56:38Z")

</div>

the API as proposed are pretty standard so everyone can handle the data rom as wished as said Sunny since there are so many end use cases you just can’t cover them all. Did you have a look into [third party integrations](https://community.tempest.earth/c/developers/integrations/12) section, maybe there is already something or you are a little patient and [Lux4rd0](https://community.tempest.earth/u/Lux4rd0) might come along soon? Not sure if he can do it quickly or not but he can for sure.

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 19, 2021, 3:04pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/13 "2021-06-19T15:04:07Z")

</div>

I’m going to play around and see what I can do but to @sunny and @eric points - for example - what if you have three Tempest, six Skys, and three Airs - and you wanted to pull a CSV file - how would you like that? One file with it listed by Device name, Station name, Station ID? How do you want to map fields that don’t exist across each of the devices? One file for each day and each device? etc.? 🙂 You get the idea - as a community forum, what’s easy for one may be complex for another. I’ve loved being able to share and build interesting dashboards but what was once a couple of lines of code to listen in on local UDP sockets for raw JSON has turned into 7226 lines of code to provide “flexibility”. 🙂 - but that’s _my_ fun. LOL.

Like I mentioned, let me play with what I already have done and see about getting a CSV file dished out.

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 19, 2021, 7:41pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/14 "2021-06-19T19:41:50Z")

</div>

@thegumnut Try this example:

```auto
docker run --rm \
  --name=weatherflow-collector-remote-export \
  -e WEATHERFLOW_COLLECTOR_COLLECTOR_TYPE=remote-export \
  -e WEATHERFLOW_COLLECTOR_FUNCTION=export \
  -e WEATHERFLOW_COLLECTOR_TOKEN=127d99f7-3s88-4d7d-bd73-0ba962d181ec \
  -e WEATHERFLOW_COLLECTOR_EXPORT_DAYS=20 \
  -v $(pwd):/weatherflow-collector/export \
  lux4rd0/weatherflow-collector:latest

```

Change the WEATHERFLOW\_COLLECTOR\_TOKEN to your own personal access token and the days to the number of previous days you want to export. It’ll create a CSV file for each of your devices.

More details here:

> **[lux4rd0/weatherflow-collector](https://github.com/lux4rd0/weatherflow-collector)**
>
> A WeatherFlow Tempest data collector for local-udp, remote-socket, and remote-rest APIs. Feeds InfluxDB and Grafana Loki back-ends. Includes current conditions, forecasts, and historical details. -...

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 19, 2021, 8:22pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/15 "2021-06-19T20:22:05Z")

</div>

![excel_csv](https://us1.discourse-cdn.com/flex020/uploads/sws/original/2X/8/8b1b09b5598eeef0ba47018ec99e35ffcfd1c2f2.png)

---

<div class="post-metadata">

**Author:** ![thegumnut](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/thegumnut/32/12473_2.png) [@thegumnut](https://community.tempest.earth/u/thegumnut)\
**Post date:** [June 26, 2021, 12:40pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/16 "2021-06-26T12:40:10Z")

</div>

Thanks @Lux4rd0 ! I’ve finally found some time to do some self-training on GitHub, Docker, Grafana… (none of which I was familiar with.) It’s been an interesting journey and thanks for sending me on it! Your scripts worked perfectly and I managed to generate a CSV with all the data from my Tempest (back to December last year when I installed it). Next step is to do some data analysis - starting with calculating the actual solar radiation to compare it with my predictions (made when I was looking to install solar panels). I might post a tentative result here if I get one.

---

<div class="post-metadata">

**Author:** ![thegumnut](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/thegumnut/32/12473_2.png) [@thegumnut](https://community.tempest.earth/u/thegumnut)\
**Post date:** [June 26, 2021, 12:41pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/17 "2021-06-26T12:41:12Z")

</div>

![Solar radiation Chart](https://us1.discourse-cdn.com/flex020/uploads/sws/original/2X/3/3869284107236e95665ac34a7d436c2e73ef7fd1.jpeg)

---

<div class="post-metadata">

**Author:** ![Lux4rd0](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tempest.earth/lux4rd0/32/11359_2.png) [@Lux4rd0](https://community.tempest.earth/u/Lux4rd0)\
**Post date:** [June 26, 2021, 3:08pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/18 "2021-06-26T15:08:04Z")

</div>

Nice - I’m glad that it was helpful!

---

<div class="post-metadata">

**Author:** ![nintanga1](https://avatars.discourse-cdn.com/v4/letter/n/ee7513/32.png) [@nintanga1](https://community.tempest.earth/u/nintanga1)\
**Post date:** [November 26, 2021, 8:16pm UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/19 "2021-11-26T20:16:27Z")

</div>

Where is it i can’t find it?

---

<div class="post-metadata">

**Author:** ![alexanderholsteinson](https://avatars.discourse-cdn.com/v4/letter/a/13edae/32.png) [@alexanderholsteinson](https://community.tempest.earth/u/alexanderholsteinson)\
**Post date:** [December 15, 2022, 10:55am UTC](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869/20 "2022-12-15T10:55:00Z")

</div>

This is a must have feature

[Next page](https://community.tempest.earth/t/add-ability-to-download-historical-data-within-the-app-or-web-interface/13869.md?page=2)
