Overview
Provider webhook subscriptions tell a wearable provider (Polar, Oura, Strava) where to send event notifications. When an active subscription is in place, the provider pushes a lightweight notification to your Open Wearables instance whenever new data is available. Open Wearables then fetches, normalizes, and stores the data — and can forward it onward via Outgoing Webhooks.This page covers provider → Open Wearables subscriptions (inbound). For Open Wearables → your app event delivery, see the Outgoing Webhooks guide.
/api/v1/providers/{provider}/webhooks/subscriptions
Supported {provider} values: polar, oura, strava
Provider differences
Endpoints
List subscriptions
Returns all active subscriptions for a provider.- Polar
- Oura
- Strava
Register subscriptions
Creates a new subscription (or updates an existing one if the URL changed). Passcallback_url as a query parameter.
Polar: the
signature_secret_key is returned by Polar exactly once, on creation. Open Wearables saves it automatically to the provider_settings table (webhook_secret column). If you need to rotate it, delete and recreate the webhook.Get a subscription
Fetch a single subscription by ID.{ "subscription": null } when the subscription is not found.
Get by ID is currently implemented for Oura only. Polar and Strava return
501 Not Implemented — use list subscriptions instead.Update a subscription
Change the callback URL of an existing subscription.status values: updated, patched, deleted, created, skipped, error.
Delete a subscription
Remove a webhook subscription from the provider.Renew subscriptions (Oura only)
Oura subscriptions have anexpiration_time. Call this endpoint to extend all active subscriptions before they expire.
Inbound event endpoints
These endpoints receive the actual event notifications from providers. They are not management operations — you do not call them directly.
The callback URL you register with a provider must point to
POST /api/v1/providers/{provider}/webhooks. For local development, use ngrok to expose that endpoint publicly.
Response schema reference
Subscription objects
Each provider returns a different subscription shape: Polar
Oura
Strava

