< Blogs
Alex Venetidis

Alex Venetidis

December 12, 2022

December Updates

Guess what? More integrations! Just the usual 😉 But also more heart rate-related information and more developer-friendly logic for large requests.

Heart rate zone information ❤️ 🩺

What?

We've made it easier to capture & analyze heart rate zone information by adding these to our data models, so that workout summaries can contain more meaningful training information, used to power workout insights, and help adapt athletes' training intensity.

How?

Harmonizing heart rate zone data isn't as straightforward as it may seem. WHOOP provides standard heart rate zones 1–5, in 10% increments starting from 50%, but Fitbit provides its own three custom zones, namely "Fat Burn", "Cardio", and "Peak", ranging from 50–70%, 70–85%, and 85–100% respectively. This means that we needed to somehow account for this. We decided to include start and end heart rate % in each possible heart rate zone value to account for this and provide the five standard ones by default. For all providers who don't give these calculations, we go ahead and make the calculations ourselves where possible.

Why?

Our users have been asking us if we could provide more fields beyond "training intensity" that they could use to feed their algorithms to optimize athlete training. We're always aiming to provide as much data as possible. This addition falls right in line with our vision in terms of data access and helps provide richer data.

Wow, more integrations! 🔌 🤓

What?

Christmas is coming near 🎄 so Terra comes bearing more integrations to all! We've added Cardiomood, Rouvy, and Technogym integrations to satisfy all your connection needs 🎅 we made yet another cycling-focused integration with Rouvy, added more gym-specific focus with Technogym, and got more highly accurate data insights with Cardiomood.

How?

Speaking with a few of these companies & figuring out the way around others' APIs, we've built out the infrastructure needed to support the above. We're looking at adding both more integrations & more data types, so check out the other changes this month 😉

Why?

A lot of our focus has been on diversifying the range of integrations we have in our repertoire and delving deeper into the genres we already have. Rouvy fits in with our cycling integrations, such as our Zwift API integration, Cardiomood with our clinical-grade data ones, such as the Biostrap integration, and Technogym branches off into a new category of gym-focused integrations.

Better processing for large queries 〰️

What?

Whenever a query was made for a period spanning over a month, we would break that request up into one-week segments 📆 & send that to developers' webhooks, regardless of whether there was any data for each given week. Instead, we now aggregate all the data queries internally and send requests to developers' webhooks based on the total amount of data, chunking it by segments of a maximum of 10MB or ten objects within the data list.

Why? 🤔

We realized our previous system didn't make any sense 🤯 the initial algorithm meant that many of the payloads sent to developers could be empty and would create unnecessary load & noise on their servers for no reason. Instead, the new data chunking system works around potential limitations on data sent by having a cap on the total number of bytes in one request. This is arbitrarily set at the moment but is something that can be customized on a per-developer basis down the line to suit different needs.

How?

By clever use of multi-threading and spawning separate processes, we create all the data requests in parallel and provide a callback to our task manager, to be executed when all these requests are complete. This way, we aren't hanging any threads while waiting for the data requests to be completed, and we can process the entirety of the data once it eventually gets fetched. Result? Happy developers and happy lambda functions which can get data under 10MB per request 😊

More Topics

All Blogs
Team Spotlight
Startup Spotlight
How To
Blog
Podcast
Product Updates
Wearables
See All >
CEO and Founder of Prenuvo - Andrew Lacy

CEO and Founder of Prenuvo - Andrew Lacy

In this podcast with Kyriakos the CEO of Terra, Andrew Lacy shares his journey with Prenuvo which began from a personal health crisis.

Terra APITerra API
August 28, 2024
MedHacks: Using Wearables To Predict Heart Attacks

MedHacks: Using Wearables To Predict Heart Attacks

A few weeks ago we met Vishal, a recent engineering graduate who wanted to use Terra API as part of his MedHacks hackathon project, Cardio Clarity.

Gursukh SembiGursukh Sembi
August 19, 2024
July 2024 updates

July 2024 updates

Teams API adds Kinexon integration & new webhooks. Terra Health Scores now include Respiratory & Stress metrics. Eight Sleep integration returns with enhanced data.

Alex VenetidisAlex Venetidis
August 2, 2024
Vice President of Teamworks - Sean Harrington

Vice President of Teamworks - Sean Harrington

In this podcast with Kyriakos the CEO of Terra, Sean Harrington shares his journey from founding NoteMeal to becoming the VP of Teamworks.

Terra APITerra API
August 2, 2024
Chief Digital Product Officer of Les Mills - Amber Taylor

Chief Digital Product Officer of Les Mills - Amber Taylor

In this podcast with Kyriakos the CEO of Terra, Amber Taylor shares her journey from childhood running to her leadership role at Nike and navigating cultural differences.

Terra APITerra API
August 2, 2024
next ventures
pioneer fund
samsung next
y combinator
general catalyst

Cookie Preferences

Essential CookiesAlways On
Advertisement Cookies
Analytics Cookies

Crunch Time: Embrace the Cookie Monster Within!

We use cookies to enhance your browsing experience and analyse our traffic. By clicking “Accept All”, you consent to our use of cookies according to our Cookie Policy. You can change your mind any time by visiting out cookie policy.