External: Data Sync
Get Garmin Backfill Status Endpoint
Changed onGet Garmin backfill status for backfill data types.
Deprecated. Backfill progress is reported through the provider-agnostic sync run endpoints (/users/{user_id}/sync/runs, /users/{user_id}/sync/stream) and the sync.started / sync.completed / sync.failed outgoing webhooks. Per-type detail will move there as well; this endpoint will be removed once that lands.
The backfill is webhook-based and auto-triggered after OAuth connection. Returns status for each data type independently. Max 30 days of history.
Response Fields:
- overall_status: pending | in_progress | complete | retry_in_progress
- current_window: Current window index (0-based)
- total_windows: Total number of 30-day windows (1)
- windows: Per-window-per-type matrix with done/pending/timed_out/failed states
- summary: Per-type aggregated counts (done, timed_out, failed)
- in_progress: Whether backfill is currently running (true for in_progress or retry_in_progress)
- retry_phase: Whether the retry phase is currently active
- retry_type: Data type currently being retried (null if not retrying)
- retry_window: Window index being retried (null if not retrying)
Window Cell States:
- done: Data received via webhook or Garmin API error (treated as done)
- pending: Not yet processed
- timed_out: No webhook received within timeout (warning)
- failed: Permanently failed after retry attempt (error)
get/api/v1/providers/garmin/users/{user_id}/backfill/status
Request
- Base URL: https://api.openwearables.io (the document declares no server; this is the origin it was published from)
- URL: https://api.openwearables.io/api/v1/providers/garmin/users/{user_id}/backfill/status
- Auth: OAuth 2 (password, token URL /api/v1/auth/login)
Path parameters
user_idstring uuid required
Headers
X-Open-Wearables-API-Keystring nullable
Response
Successful Response
object required
Changes
- info
endpoint deprecated
- info