Webhooks getting delayed
AllRegularTakin2 days ago
Hi, my connections are experiencing delays in webhooks such that i dont get live syncs. Is anyone experiencing the same problem?
Vanessaadmin2 days ago
Hi,
Minor webhook delays are common on connections, because cloud-based providers don't push data in real time. How quickly data arrives depends mostly on the provider behind the connection.
Provider behavior splits into two modes:
- Push providers (Garmin, Fitbit, Withings): The provider sends data to Terra on its own schedule. Garmin in particular pushes asynchronously and can lag minutes to hours between an activity ending and the payload arriving at Terra. Once Terra has it, the webhook fires to your endpoint almost immediately.
- Polling providers (Google Fit for example): Terra polls these on a regular schedule (about every 15 minutes), so data shows up within one poll cycle of being available at the provider.
If things look slower than usual recently, two things on your side are worth ruling out first:
- Endpoint timeouts or non-2xx responses. Terra retries failed deliveries with exponential backoff (10 attempts, starting at 30 seconds and doubling each time, with the final retry landing several hours after the original event), so a brief outage at your end can stretch into noticeable delays.
- Circuit breaker. If your endpoint times out repeatedly (8s response window), Terra opens a per-destination circuit breaker that holds all events back, which can look like a broad delay across many users.
To investigate your specific case, it'd help to know the following via a direct support ticket on the dashboard:
- Which provider(s) are affected
- A Terra user ID with a recent example (timestamp the data appeared in the provider app vs when your endpoint received the webhook)
- Whether your endpoint has had recent timeouts or error responses
The fastest path is to drop those into a support ticket from your Terra API dashboard, and the team can pull delivery history for the affected users.
The webhook reference covers the retry schedule, circuit breaker, and ping mode in one place if you want to dig deeper: https://docs.tryterra.co/health-and-fitness-api/integration-setup/setting-up-data-destinations/webhooks