Connect Withings
Link your Withings account to pull weight and body composition measurements directly into VitalTrends. Every weigh-in syncs automatically.
Steps
An active subscription is required to connect integrations. Go to Pricing to get started.
Go to Settings → Connections. You will see a Withings card showing "Not connected".
You will be redirected to Withings's OAuth authorization page. Log in with your Withings account credentials if prompted.
Review the permissions and click Allow this app. VitalTrends requests read-only access to your measurements.
A background job imports up to 12 months of weight and body composition history. The dashboard will populate once the sync completes.
How data stays fresh
Webhooks (real-time)
Withings sends a push notification each time you weigh yourself. VitalTrends processes body composition (appli=1) and vitals (appli=4) events immediately after your scale uploads the measurement.
Catch-up sync (background)
An hourly job checks whether your Withings data is stale (no new data in 24 hours). Stale accounts trigger a catch-up sync to fetch any missed measurements.
Understanding Withings measurements
Withings sends measurements as a group from a single weigh-in or vitals reading. VitalTrends stores that group as one row and keeps the original measurement time from Withings.
| Field | Meaning |
|---|---|
measured_at | The time Withings recorded the measurement. |
weight_kg | Body weight in kilograms. The dashboard converts it to your profile unit preference when needed. |
fat_ratio_pct | Body fat percentage from the Withings measurement. |
fat_mass_kg | Estimated fat mass in kilograms. |
fat_free_mass_kg | Estimated non-fat mass in kilograms. |
muscle_mass_kg | Estimated muscle mass in kilograms, when your device provides it. |
bone_mass_kg | Estimated bone mass in kilograms, when your device provides it. |
hydration_kg | Estimated body water mass in kilograms, when your device provides it. |
heart_pulse | Pulse from the Withings reading, when available. |
systolic_bp / diastolic_bp | Blood pressure values from Withings devices that support blood pressure. |
Some fields may be empty because not every Withings device measures every body-composition or vitals metric. Empty fields mean Withings did not provide that value for that measurement; they do not mean VitalTrends rejected it.
Disconnecting Withings
Go to Settings → Connections and click Disconnect next to Withings. This stops all future syncs. Your historical measurement data stays in VitalTrends.
Troubleshooting
No data after connecting
The initial import is still running. Wait a minute and refresh. If measurements still do not appear, try disconnecting and reconnecting.
Connection shows "Reconnection needed"
Withings OAuth tokens expire or can be revoked. Click Reconnect on the Connections page to re-authorize. This happens automatically if you revoke access in the Withings app.
Weight appears in wrong unit
VitalTrends stores weight in kilograms (as provided by the Withings API) and converts to your preferred unit based on your profile settings. Check Settings → Profile to update your unit preference.
Some body composition fields are blank
Withings only sends fields your device measured for that weigh-in. For example, a basic scale may send weight_kg without muscle_mass_kg, bone_mass_kg, or hydration_kg.