docker run \
-e OURASYNC_OURA_TOKEN=$(pass oura/token) \
-e OURASYNC_INFLUXDB_TOKEN=$(pass influxdb/token) \
-e OURASYNC_INFLUXDB_URL="http://influxdbhost:8086" \
-e OURASYNC_INFLUXDB_ORG="org" \
-e OURASYNC_INFLUXDB_BUCKET="bucket" \
-it lesh/ourasyncinstall deno (https://docs.deno.com/runtime/)
git clone git@github.com:leshy/oura_sync.git
cd oura_sync
deno install
export OURASYNC_OURA_TOKEN=...
export OURASYNC_INFLUXDB_TOKEN=...
export OURASYNC_INFLUXDB_URL="http://influxdbhost:8086"
export OURASYNC_INFLUXDB_ORG="org"
export OURASYNC_INFLUXDB_BUCKET="bucket"
deno run main.ts-
You'll need to be familiar with influxdb (+ grafana for graphing)
-
Create your oura token at https://cloud.ouraring.com/personal-access-tokens
-
The way this works is it reads the latest point's time of an influxdb measuremnet, then queries Oura API from that point onwards and writes the data to influxdb. measurement names are hardcoded, check ouraSync.ts file
-
data transforms from Oura Api to Influxdb are defined at ouraSync.ts file, should be quite straightforward to modify if needed.
my quick dashboard .json export is here
