> 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/webhooks-dedup-and-sync-reliability.md).

# Webhooks, dedup and sync reliability

Common questions about webhooks, dedup and sync reliability.

## Articles

{% content-ref url="/pages/oz78tUzOWlaCozkuByah" %}
[Why are daily step totals inconsistent across webhooks?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/daily-payload-cumulative-overwrite-by-day.md)
{% endcontent-ref %}

{% content-ref url="/pages/viTb59czGBmEXZLYfih1" %}
[How do I make production sync reliable?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/webhooks-as-primary-source-best-practice.md)
{% endcontent-ref %}

{% content-ref url="/pages/JwhiHZHrQcZGQ9c5ILiY" %}
[How do I dedupe two payloads for the same event?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/dedup-by-summary-id-overwrite-updates.md)
{% endcontent-ref %}

{% content-ref url="/pages/3pQM3rEBT5uaJuoAbmUD" %}
[How do I dedupe multiple sources behind Apple Health?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/apple-health-multi-source-dedup.md)
{% endcontent-ref %}

{% content-ref url="/pages/sVLTOlexCkF7b3AYrdo6" %}
[Can Apple Health data arrive near real-time?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/apple-sdk-sync-timing-foreground-dependent.md)
{% endcontent-ref %}

{% content-ref url="/pages/si2GoUZhWlZWxSuD74bl" %}
[How reliable is iOS background data delivery?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/ios-background-delivery-reliability-setup.md)
{% endcontent-ref %}

{% content-ref url="/pages/fU45bIqivahBAJcx9wFk" %}
[Can a payload show its originating source through an aggregator?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/originating-source-via-device-data.md)
{% endcontent-ref %}

{% content-ref url="/pages/omw0AyaeAKNRoCRC5i1J" %}
[How do I stop receiving Oura data through Apple?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/apple-foreign-data-tagged-apple-filter.md)
{% endcontent-ref %}

{% content-ref url="/pages/3jjv3dmYOBmPp3OlaKma" %}
[Can I detect and exclude manually entered steps?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/manual-entry-upload-type-filtering.md)
{% endcontent-ref %}

{% content-ref url="/pages/Qp876obBmuuHaP9sA7Jj" %}
[Why does Samsung Health send webhooks with empty data?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/samsung-health-empty-data-not-syncing.md)
{% endcontent-ref %}

{% content-ref url="/pages/GwX6DJqmaoaJ1JenbL5C" %}
[Why are deleted Garmin activities still returned?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/garmin-deleted-activities-persist.md)
{% endcontent-ref %}

{% content-ref url="/pages/YEKgAZD3fvcvSiwJ0yVg" %}
[Why does a daily payload look missing for one day?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/timezone-date-boundary-missing-day.md)
{% endcontent-ref %}

{% content-ref url="/pages/qhS0yOaMvxXxv4B2VW3z" %}
[What sync frequency can I expect per provider?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/sync-freshness-bottleneck-device-to-cloud.md)
{% endcontent-ref %}

{% content-ref url="/pages/1WUKGwDENCPJKX7Q6lOH" %}
[How do I dedupe sleep webhooks with the same start time?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/sleep-dedup-summary-id.md)
{% endcontent-ref %}

{% content-ref url="/pages/vdHMDUnUEDI3drXLfwhC" %}
[Why was the same workout re-sent with a different timezone?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/apple-travel-timezone-duplicate-workouts.md)
{% endcontent-ref %}

{% content-ref url="/pages/rbQLG0epN6A7KWQa2jn2" %}
[What webhook traffic rates should I expect?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/webhook-traffic-rates.md)
{% endcontent-ref %}

{% content-ref url="/pages/6YOx0G5DZrj72kDp8GPW" %}
[Why do Apple body metrics arrive after step changes?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/apple-body-payloads-independent.md)
{% endcontent-ref %}

{% content-ref url="/pages/2p4MVIdfIbFYbYTDm57L" %}
[Why did the first webhook lack heart rate?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/near-simultaneous-webhooks-use-latest.md)
{% endcontent-ref %}

{% content-ref url="/pages/7rBrgdjl8ldloGYIxZdg" %}
[Why do Oura payloads differ from the Oura app?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/oura-app-vs-terra-discrepancy.md)
{% endcontent-ref %}

{% content-ref url="/pages/xj02ktQZsDB32KUQPOxc" %}
[Why does Oura app HRV differ from the API HRV?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/hrv-app-vs-api-calculation-diff.md)
{% endcontent-ref %}

{% content-ref url="/pages/7kScxJrUAa05KWAVe72L" %}
[Why did new payload fields break my parser?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/additive-schema-new-fields-parser.md)
{% endcontent-ref %}

{% content-ref url="/pages/GH63r0OpAPQouOjgFUpc" %}
[Why are COROS activities delayed by several minutes?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/coros-polling-latency-no-webhooks.md)
{% endcontent-ref %}

{% content-ref url="/pages/jXK8RkKtzhaqHzeyFmxY" %}
[What is the permission\_change webhook type?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/informational-webhook-event-types.md)
{% endcontent-ref %}

{% content-ref url="/pages/XjFb2Lqv3T6pzc2H64lV" %}
[How do I know when a data request's last event arrived?](/faq/help-topics/data-api-sdk/webhooks-dedup-and-sync-reliability/track-webhook-request-completion.md)
{% endcontent-ref %}
