# March 2024

Check out what we've been doing at Terra over the month of March 2024!

## Backend 💾

### Features

* Retry if rate limit extended to STRAVA
* Laps data added for Suunto
* Added SPO2 data for OURA
* Provide accurate reason for auth failure when Oura user has no active membership
* Redirect to Auth Failure if Auth URL expired

### Bug fixes

* Fixed a bug where WHOOP daily webhooks weren't sent
* Fixed a bug where PlannedWorkouts were not sending properly to Garmin for DISTANCE DURATIONS
* Fixed a bug where Garmin sent swimming workouts with same start and end times
* Fixed a bug where Fitbit Large Chunking were not sent correctly if "retry\_if\_rate\_limited" was passed in
* Fixed a bug where Withings Sleep webhooks were not sending correctly
* Fixed a bug where Connection Errors were not sent if FreestyleLibre user's connection was severed

### Graph API

* Complete redesign on the UI for Graph API!
  * On our dashboard, you may now create, customise, and use Graphs API much more seamlessly. Get started here <https://dashboard.tryterra.co/dashboard/graphs>

***

## SDK 📱

### [TerraRTiOS](ref:reference-stream-heart-rate-ios-sdk) and [TerraRTAndroid](https://docs.tryterra.co/reference/reference-stream-heart-rate-android-sdk)

* Add in handling for abrupt connection interruption

### [TerraiOS](ref:reference-ios-sdk)

* Implemented remote backfilling (you can now backfill from the backend and SDK will trigger the backfill once the SDK is initialised on the app)
* Added Wrist Temperature Delta for Apple Health
* Fixed a bug where Athlete data were not sending correctly

***

## Frontend📺

### Dashboard

* Complete redesign on the UI for Graph API

### Landing Page

* New Podcasts page! <https://tryterra.co/podcast>
* New Community page! <https://tryterra.co/community>
  * You can now post questions on there and members of Terra can answer!


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tryterra.co/changelog/2024/2024-march.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
