> For the complete documentation index, see [llms.txt](https://docs.tryterra.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tryterra.co/faq/help-topics/data-api-sdk/historical-data-and-backfill/apple-health-sdk-backfill.md).

# Why does Apple Health backfill return empty arrays?

Apple Health data lives on the device, so **historical data cannot be backfilled through the web/REST API**. The web API only returns data the mobile SDK has already retrieved and sent through.

To backfill:

{% stepper %}
{% step %}
Initialise the mobile SDK in your app.
{% endstep %}

{% step %}
**Call its data functions on-device** (`getActivity`, `getDaily`, `getSleep`) with `toWebhook=true`.
{% endstep %}
{% endstepper %}

Long ranges (even years) can be requested in a single call because the data is chunked automatically (no paging needed). Unsolicited payloads on connection are the SDK's background delivery feature.

{% hint style="info" %}
The Terra companion app does not support remote backfills via `/sdk/backfills` in its current version, but the end user can trigger a backfill of up to two weeks from within the app. There is no direct flag marking SDK-backfill payloads, but each backfill is split into 7-day chunks that share one common payload reference, which you can use as the backfill signal. See the [mobile-only sources docs](https://docs.tryterra.co/health-and-fitness-api/mobile-only-sources) for SDK setup.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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/faq/help-topics/data-api-sdk/historical-data-and-backfill/apple-health-sdk-backfill.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.
