Provider guide
WHOOP: register your app (API v2)
| Access | Self-serve app in the developer dashboard; capped at 10 members until WHOOP approves the app [OW docs] |
| Cost | Free |
| Approval | Slow in 2026 (catalog note); no published figure |
| Account | A WHOOP account (a member to test with needs an active WHOOP membership) |
| Managed app | Allowed by the catalog |
| Latido slug | whoop |
| Time | ~10 minutes |
Steps
- Sign in to the WHOOP developer dashboard (from https://developer.whoop.com) and create a team if asked, then a new app [OFF/MEM: menu names].
- Fill the form [MEM: field names]:
- Name, logo, contact emails.
- Privacy policy URL (public).
- Redirect URLs:
https://api.getlatido.com/connect/callback/whoop. - Scopes: tick the ones below;
offlineis required, or WHOOP issues no refresh token and every connection dies after an hour [OFF].
- Save and copy Client ID and Client Secret.
- In Latido, Providers → WHOOP → Custom app: paste both and save. Copy the
webhook URL
https://api.getlatido.com/providers/whoop/webhook/{providerAppId}. - Back in the WHOOP app settings, paste it as the Webhook URL and select model version v2 (UUID ids) [OFF]. Webhooks are dashboard-only; there is no API.
- No extra setting: WHOOP signs with your client secret,
X-WHOOP-Signature= base64 HMAC-SHA256(client secret,X-WHOOP-Signature-Timestamp+ raw body) [OFF].
Scopes
offline read:profile read:body_measurement read:cycles read:recovery read:sleep read:workout [OFF].
Going to production
Submit the app for WHOOP's review from the dashboard. Until it is approved only 10 members can connect [OW docs]. Rate limits: 100 req/min and 10,000 req/day, increases on request [OFF].
Gotchas
statemust be exactly 8 characters [OFF]; Latido's adapter handles it.- Refresh rotates both tokens and invalidates the old access token at once; concurrent refreshes race [OFF].
- No deauthorization event; revoking via
DELETE /v2/user/accessalso stops webhooks [OFF/OW].
Sources
- https://developer.whoop.com/docs/developing/oauth
- https://developer.whoop.com/docs/developing/webhooks
- https://developer.whoop.com/docs/developing/rate-limiting
- Open Wearables
backend/app/services/providers/whoop/