Notification categories
Each notification category is identified by an integer called appli.
When new data matches a category your app is subscribed to, Withings sends an application/x-www-form-urlencoded POST request to your callback URL.
Subscribe to the categories your app needs:
What every notification contains
Most notifications include these standard fields. Specific fields per category are documented in each entry below.
| Field | Type | Description |
|---|---|---|
userid | int | The user this notification concerns. |
appli | int | The notification category (see below). |
startdate | int (unix epoch) | Start of the data range. |
enddate | int (unix epoch) | End of the data range. |
date | string (YYYY-MM-DD) or int (unix epoch) | Single date for event-based notifications. |
deviceid | string | Source device, when applicable. |
action | string | For profile-change events: delete, unlink, or update. |
Generic payload example
userid=12345
appli=1
startdate=1530576000
enddate=1530698753Body & Weight
1user.metricsWeight & body composition
Triggered when
A new weight or body composition measurement was recorded by a Withings scale.
| 1 | Weight (kg) |
| 5 | Fat Free Mass (kg) |
| 6 | Fat Ratio (%) |
| 8 | Fat Mass Weight (kg) |
| 71 | Body Temperature (°C) |
| 73 | Skin Temperature (°C) |
| 76 | Muscle Mass (kg) |
| 77 | Hydration (kg) |
| 88 | Bone Mass (kg) |
| 91 | Pulse Wave Velocity (m/s) |
Example payload
userid=12345
appli=1
startdate=1530576000
enddate=1530698753Next step
2user.metricsTemperature
Triggered when
A new temperature measurement was recorded.
| 12 | Temperature (°C) |
| 71 | Body Temperature (°C) |
| 73 | Skin Temperature (°C) |
Example payload
userid=12345
appli=2
startdate=1530576000
enddate=1530576120Next step
4user.metricsBlood pressure & heart rate
Triggered when
A new blood pressure measurement (and heart rate, when supported) was recorded.
| 9 | Diastolic Blood Pressure (mmHg) |
| 10 | Systolic Blood Pressure (mmHg) |
| 11 | Heart Pulse (BPM and scale devices only) (bpm) |
| 54 | SpO₂ (%) |
Example payload
userid=12345
appli=4
startdate=1530576000
enddate=1530576120Next step
58user.metricsGlucose
Triggered when
A new glucose measurement was recorded.
| 119 | Glucose (mg/dL) |
Example payload
userid=12345
appli=58
startdate=1530576000
enddate=1530576060Next step
Cardio
61user.metricsStethoscope
Triggered when
A new stethoscope recording was uploaded.
Example payload
userid=12345
appli=61
startdate=1530576000
enddate=1530576060Next step
62user.metricsHeart Rate Variability (HRV)
Triggered when
New HRV data is available.
Example payload
userid=12345
appli=62
startdate=1530576000
enddate=1530576060Next step
54user.metricsECG measurement
Triggered when
A new ECG recording was completed.
Example payload
userid=12345
appli=54
startdate=1530576000
enddate=1530576030Next step
55user.metricsECG measurement failed
Triggered when
An ECG recording was attempted but failed.
Example payload
userid=12345
appli=55
date=1530576000
deviceid=abc123Next step
This is a notification-only event — no follow-up API call needed.
Urine analysis (U-Scan)
63user.metricsUrine biomarkers (U-Scan)
Triggered when
A new U-Scan urine measurement was recorded.
| 147 | Urinary pH |
| 148 | Urine Specific Gravity |
| 204 | Urinary Ketones (mmol/L) |
| 205 | Urinary Vitamin C (mmol/L) |
| 248 | Urinary Calcium (mmol/L) |
| 249 | Urinary Creatinine (mmol/L) |
| 251 | Calcium/Creatinine Ratio (mmol/mmol) |
| 151 | Urinary Nitrites (µmol/L) |
Example payload
userid=12345
appli=63
startdate=1530576000
enddate=1530576060Next step
Activity
16users.activityActivity (steps, distance, workouts)
Triggered when
New activity data is available — steps, distance, calories, intensity, or workouts.
Example payload
userid=12345
appli=16
date=2018-07-02Sleep & bed presence events
44users.activitySleep summary
Triggered when
New sleep data is available — duration, sleep state, deep/light state duration (no REM), and wakeup counts.
Example payload
userid=12345
appli=44
startdate=1530576000
enddate=153060480050user.sleepeventsBed in
Triggered when
The user lay down on the bed (Withings Sleep sensor).
Example payload
userid=12345
appli=50
date=1530576000
deviceid=abc123Next step
This is a notification-only event — no follow-up API call needed.
51user.sleepeventsBed out
Triggered when
The user got out of bed (Withings Sleep sensor).
Example payload
userid=12345
appli=51
date=1530604800
deviceid=abc123Next step
This is a notification-only event — no follow-up API call needed.
52user.sleepeventsSleep sensor inflated
Triggered when
The Withings Sleep sensor finished its initial inflation.
Example payload
userid=12345
appli=52
date=1530576000
deviceid=abc123Next step
This is a notification-only event — no follow-up API call needed.
98user.sleepeventsBed occupied (10-min poll)
Triggered when
Continuous status — the bed was occupied during the last 10-minute period.
Example payload
userid=12345
appli=98
startdate=1530576000
enddate=1530576600Next step
This is a notification-only event — no follow-up API call needed.
99user.sleepeventsBed empty (10-min poll)
Triggered when
Continuous status — the bed was empty during the last 10-minute period.
Example payload
userid=12345
appli=99
startdate=1530576000
enddate=1530576600Next step
This is a notification-only event — no follow-up API call needed.
100user.sleepeventsBed in/out (10-min poll)
Triggered when
Continuous status — the bed was both occupied and empty during the last 10-minute period.
Example payload
userid=12345
appli=100
startdate=1530576000
enddate=1530576600Next step
This is a notification-only event — no follow-up API call needed.
Account & device events
46user.infoUser profile change
Triggered when
The user account changed: deleted, unlinked from your app, or updated.
deleteunlinkupdate
Example payload
userid=12345
appli=46
action=updateNext step
This is a notification-only event — no follow-up API call needed.
53—Unassociated device setup
Triggered when
A user tried to set up a Withings Cellular Pro device (or a device through the Withings Data Hub) that is not pre-associated with a Withings account.
Example payload
appli=53
mac=aa:bb:cc:dd:ee:ff60user.dataSurvey answered
Triggered when
The user submitted a survey response.
Example payload
userid=12345
appli=60
startdate=1530576000
enddate=1530576120