• 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:

  • 01New Health Scores
  • 02Let each of your users connect with their own OAuth app
  • 03Wildcards in field filtering, and per-destination data types
  • 04Lab Reports biomarkers now carry LOINC codes
  • 05Also in May
All articles

Product Updates

May 2026 product update: 14 health scores, and letting each user connect with their own OAuth app

May 2026: Terra's health scores expand to 14, users can connect through their own OAuth app, field filtering gains wildcards, and lab biomarkers carry LOINC codes.


Alex Venetidis
Alex Venetidis

1 June 2026

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

TL;DR: Terra's health scores were rebuilt and expanded to fourteen, covering daily, sleep and activity payloads, all computed against each person's own baseline rather than a population average. May also added per-user OAuth apps, which matters if your users are themselves developers, wildcard field filtering so you receive only the fields you use, and LOINC codes on every biomarker Lab Reports returns.

New Health Scores 

Terra's scores exist because the raw numbers a wearable produces are not directly usable in a product. Telling a user their heart rate variability was 43 milliseconds last night means nothing to almost anyone, including most people who have been wearing a device for years. Telling them their recovery is lower than usual, and that it is lower because of a combination of an elevated resting heart rate and a shorter than normal night, is a sentence they can act on.

May's rebuild took the set to fourteen out of the box available scores, organised by the payload each one enriches:

  • Daily: Immunity Index, Strain Index, Resilience, Respiratory Health, and Training Stress in both its original and second version.
  • Sleep: Sleep Score Basic and Advanced, Readiness, and Respiratory Health Advanced
  • Activity: Activity Strain, Activity Efficiency, Activity RCRS and Activity TRIMP.

Two properties are worth calling out. The first is that they are device agnostic: a score is computed from the underlying physiological inputs rather than from any one manufacturer's own proprietary number, so the same score means the same thing whichever device your user happens to own. That is what lets you build a single recovery screen instead of one per device. The second is that each score is computed against the individual's own recent baseline, which is why a fit twenty-five year old and a sedentary sixty year old can both score well on a good day. A score computed against a population average mostly tells your user how old they are.

All scores appear inside the relevant payload under data_enrichment, with no additional call. Some need switching on first, from the Health Scores tab of your dashboard. Each score, the inputs it needs, and how often it is produced are listed in the Health Scores documentation.

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.

Let each of your users connect with their own OAuth app

Normally you register one application with a provider and all of your users connect through it. That is the right model almost always. It breaks down when your users are developers or researchers, because each may have their own registered application, approved rate limit, and agreement with the provider, and they need their data to flow through it rather than through yours.

From May you can turn on per-user apps for a given provider from your dashboard. Once it is on, new connections for that provider go through a Terra-hosted page where the user enters their own client identifier and secret, and those credentials are pinned to that one connection rather than shared with anyone. Existing connections are unaffected, since the switch changes routing only for connections created after it is turned on.

The setup, including what each of your users needs to do at the provider's own developer portal, is in the per-user OAuth apps guide.

Wildcards in field filtering, and per-destination data types

Terra's payloads are deliberately complete. A single activity can carry heart rate, power, cadence, position, temperature and several other streams at sample resolution, which is exactly what you want if you are building a training analysis product and considerably more than you want if you are building a step counter.

Field filtering already let you nominate the fields you cared about. May added glob wildcards to those paths, so you can select whole branches of the payload with one expression rather than enumerating every leaf. In the same month, data type selection became configurable per destination, so your analytics warehouse can receive everything while the queue that drives your push notifications receives only the two things it needs to know about.

Both are covered in customising data types.

Lab Reports biomarkers now carry LOINC codes

LOINC is the standard vocabulary healthcare systems use to identify a laboratory test. It is what lets a hospital in one country and a laboratory in another agree that they are talking about the same measurement, which they otherwise cannot, because the printed names differ between every laboratory in the world.

May brought a backfill of just over fifteen hundred LOINC codes into Terra's biomarker reference. If you are sending data into a clinical system, or producing anything in FHIR, this is the field that makes your output interoperable rather than merely structured. The catalogue is in the biomarker reference.

Also in May

  • Omron blood pressure readings now arrive by webhook rather than only by polling, so a reading shows up in your product shortly after it is taken.
  • Trailforks was added as a source for mountain biking activity.
  • Work began on the new Google Health path for Fitbit data. If you are planning that migration, the complete guide to how the new Google Health API works covers what changes.
  • Body composition samples are now first-class members of the main data model, so weight, body fat and muscle mass are filtered, routed and queried exactly like every other metric.
  • Webhooks now carry an ordering timestamp header, so a consumer that processes payloads out of order can detect it and correct for it.
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