> 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/webhook/delivery-timing-volume-and-ordering/throttle-or-batch-delivery-frequency.md).

# Can I reduce or batch webhook delivery frequency?

Terra cannot throttle or batch [webhook](https://docs.tryterra.co/health-and-fitness-api/integration-setup/setting-up-data-destinations/webhooks)/cloud-storage delivery frequency server-side. Payloads are forwarded as the provider makes new data available, so they reflect the freshest data.

**The recommended pattern is to accept deliveries quickly and process at your own pace:**

{% stepper %}
{% step %}
Return `200` immediately.
{% endstep %}

{% step %}
Push each delivery onto your own queue.
{% endstep %}

{% step %}
Process from the queue at whatever rate suits you.
{% endstep %}
{% endstepper %}

For self-imposed rate-limiting or dedup, use the [SQS integration](https://docs.tryterra.co/health-and-fitness-api/integration-setup/setting-up-data-destinations/queuing-services-sqs-kafka) with a lambda that processes events before writing downstream.

For the iOS/Apple Health SDK specifically, you can reduce push frequency by skipping `setUpBackgroundDelivery()` and calling the manual get methods (`getDaily`, `getActivity`, and so on) on your own schedule. The trade-off is losing near-real-time workout delivery. Some types like `body`, `nutrition` and `menstruation` are already capped at hourly.
