• Unified API
  • Mobile SDK
  • Connection Widget
  • Streaming
  • Lab Reports API
  • Graph API
  • Health Scores
  • Health Rewards
  • Planned Workouts
  • Lab Testing
  • AI Interface
  • Enterprise
  • Insurance
  • Integrations
  • Research
  • Podcast
  • Blog
  • Reports
  • Events
  • Documentation
  • Community
  • Example apps
  • Wearable Data
  • About
  • Customers
  • Partners
  • Careers
  • Support
  • Pricing
Terra
Pricing
Become an integrationGet started
next ventures
pioneer fund
samsung next
y combinator
general catalyst

The world's best health apps run on Terra data

Get started
ProductsIntegrationsAI InterfaceAuthenticationMobile DevelopmentDocumentationGraphAPI
DocumentationAPISDKQuickstart
CommunityBlogResearchCommunityPodcastAuthorsGithub
CompanyAboutCareersCustomersBecome an IntegrationCookies PolicyGDPRPrivacy PolicyTerms of Purchase
© Terra API. 2026 — All rights reserved.

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.

Cookies Policy
All articles

In this article:

  • 01Planned Workouts v2: write a structured session once, send it anywhere
  • 02Two new activity scores: RCRS and TRIMP
  • 03Send only the data a user entered by hand
  • 04Rate limits and a complete example payload, written down
  • 05Also in January
All articles

Product Updates

January 2026 product update: Planned Workouts v2, and two new activity scores

January 2026: Planned Workouts v2 rewrites how structured sessions are pushed to devices, two new activity scores land, and rate limits are finally written down.


Alex Venetidis
Alex Venetidis

1 February 2026

Terra health data API product update for January 2026: new integrations, endpoints and developer features

TL;DR: Planned Workouts was rebuilt in January. If you are writing training sessions out to a user's watch, the second version gives you one way to describe a session and tells you exactly what each destination platform accepted and what it adapted, so nothing about the athlete's session is a surprise to either of you. Two new activity scores, RCRS and TRIMP, arrived in the same month, and Terra's rate limits and a complete example payload are now published in the documentation.

Planned Workouts v2: write a structured session once, send it anywhere

The Planned Workouts API is the part of Terra that runs in the opposite direction from everything else. Rather than reading what a person did, it writes what they are supposed to do to their watch or training platform, so when they start the session the intervals are already there, and the watch counts them down.

This is the sort of feature that sounds simple but isn't, because every destination platform models a workout slightly differently. Some describe a step by duration, some by distance, some by a heart rate or power target, some by all three. Some support nested repeats to arbitrary depth and some support one level. Some accept a rest step and some expect you to express rest as a very low intensity work step. If you write directly against each one you end up maintaining several incompatible mental models of what a workout is.

Our new feature update reworks this. You describe the session once, in Terra's model, and Terra translates. Where a destination cannot represent exactly what you asked for, it returns a coercion warning telling you what it changed and why, so you can decide whether to accept the approximation or show the user a different plan on that platform. The warning is the important part. A translation you can see is a translation you can design around, which means your product decides what the athlete sees rather than finding out alongside them.

The full model, the per-platform support matrix, and the coercion warnings are documented in the Planned Workouts API overview, with the platform-by-platform detail in provider compatibility.

Get the latest Terra Research reports and insights every week as soon as they're published.

By continuing, I agree to the Privacy Policy and Terms of Service.

Two new activity scores: RCRS and TRIMP

Terra's health scores turn raw physiological numbers into a single interpretable figure, computed against the person's own recent baseline rather than against a population average. January added two that describe a single workout.

TRIMP stands for training impulse. It is a long-standing sports science measure that multiplies how long a session lasted by how hard the heart was working during it, weighted so that time spent at high intensity counts for disproportionately more than time spent easy. The practical use is comparing sessions that are not otherwise comparable: it lets you say that a short, very hard interval workout and a long, easy ride carried a similar cost.

RCRS is a relative cardiac response score. Where TRIMP asks how much load a session carried, RCRS asks how the person's heart responded to it relative to their own recent maximum, which makes it useful for spotting the days where a familiar session felt unusually hard.

Both arrive inside the activity payload under data_enrichment, and both are listed with the inputs they require in the Health Scores documentation.

Send only the data a user entered by hand

Some products only care about what the person typed. A nutrition app usually wants the meals the user logged and has no interest in the passive step count that arrives alongside them. A destination can now be set to manual data only, which filters the stream down to entries the user created themselves rather than readings a sensor produced in the background.

This pairs with the existing ability to choose which data types each destination receives. Between the two, the volume arriving at your endpoint can usually be cut by a large factor without losing anything you were going to use.

Rate limits and a complete example payload, written down

Terra's rate limits, and a realistic example payload showing what a webhook body looks like in full, were published in January. Both belong in the documentation rather than in a support thread. Knowing your headroom in advance is what lets you size a nightly job properly the first time, and a complete payload, including the fields that are null for most users, is what lets a team write their parser against the real contract rather than against a sample that happens to be populated.

Both are in the Unified API overview.

Also in January

  • Virtuagym and MacrosFirst joined the source catalogue, covering gym management and nutrition logging respectively.
  • Webhook events are now categorised, which makes routing on your side a matter of reading one field rather than pattern matching on the event name.
  • Sources that report a wall clock time with no zone attached are now supported end to end, which widens what Terra can normalise without discarding or inventing a timestamp.
  • Destinations can now be configured before they are reachable, so you can wire up an endpoint that lives inside a private network and validate it when it goes live.
Previous
Next

Continue reading

  • Terra now delivers per-set strength training data

    Terra now delivers strength workouts set by set: reps, weight, effort and rest, normalized across nine integrations including watch-sensed Garmin sets.

    8 September 2026

  • Garmin's Connect Developer Program is paused: what it means if you're building on wearable data

    Garmin paused new Connect Developer Program applications while it updates the program. What the pause covers, why Garmin data matters, how to keep shipping.

    7 September 2026

  • Terra's Routes API: Get training routes on your user's watch

    Design an activity route once, and it lands on your users' watch ready to follow, with none of the usual file wrangling!

    6 September 2026