Owlet Smart Sock
Auto-log pulse ox, heart rate, and motion from your baby's Smart Sock
NestMate connects directly to the Owlet cloud using the same credentials as your official Owlet app. Once linked, every session is automatically pulled into your NestMate timeline — no manual entry required.
Compatible devices: Owlet Smart Sock 3 and Dream Sock. The older Smart Sock 2 is not supported by the Owlet cloud API.
Requirements
- An active Owlet account (the same one used with the official Owlet app)
- Owlet Smart Sock 3 or Dream Sock paired and working in the Owlet app
- NestMate account with a baby profile created
Setup
-
Open Settings in NestMate
Tap the profile icon in the top-right corner of the home screen, then select Settings → Integrations.
-
Tap "Connect Owlet"
Find the Owlet card and tap Connect. You'll be prompted to enter your Owlet account credentials.
-
Enter your Owlet email and password
Use the same email and password you use to sign in to the official Owlet app. NestMate stores these securely using the device's encrypted keychain — they are never sent to NestMate's servers.
-
Select your device
NestMate will fetch the Owlet devices linked to your account. Select the Smart Sock paired to your baby.
-
Link to a baby profile
Choose which NestMate baby profile this Owlet device belongs to. Data will be tagged to that baby going forward.
-
Done — data starts flowing
NestMate will start syncing Owlet session data automatically. Live readings appear on your home screen when the Sock is active. Historical sessions from the past 30 days are imported on first connect.
Tip: Keep both the Owlet app and NestMate installed. The Owlet app is still required to configure the Sock's alert settings. NestMate reads the data; the Owlet app manages device settings.
What Gets Synced
| Data point | Sync frequency | Notes |
|---|---|---|
| O₂ saturation (%) | Live (when app is open) | Displayed on home screen |
| Heart rate (bpm) | Live (when app is open) | Displayed on home screen |
| Movement / motion | Live (when app is open) | Used in sleep session correlation |
| Session start / end | On sync (background) | Auto-creates sleep entries |
| Historical sessions | First connection (30 days) | One-time historical import |
Snoo Smart Bassinet
Sync Snoo sleep sessions automatically into NestMate's sleep tracking
The Snoo is one of the most data-rich baby products ever made — but that data was locked inside the Happiest Baby app. NestMate connects directly to the Snoo API so every session, level change, and soothing event appears in your unified sleep timeline alongside your manual logs.
Requirements
- A Snoo smart bassinet (any generation)
- An active Happiest Baby account (same login used with the SNOO app)
- The Snoo paired and set up in the official SNOO app
- NestMate account with a baby profile created
Setup
-
Open Settings in NestMate
Tap your profile icon → Settings → Integrations.
-
Tap "Connect Snoo"
Find the Snoo card and tap Connect.
-
Sign in with your Happiest Baby credentials
Enter the email and password you use to sign in to the SNOO app. Credentials are stored securely in your device's encrypted keychain.
-
Link to a baby profile
NestMate will detect the babies in your Snoo account. Match each one to the corresponding NestMate baby profile.
-
Choose your sync start date
Select how far back you want to import historical data. NestMate can import Snoo sessions, feeding journals, and pumping logs from any date.
-
Tap "Start Sync"
NestMate will import your history and continue syncing new sessions automatically. Depending on how much history you import, the first sync may take a minute.
Session refresh rate: Snoo sessions are pulled on a schedule and whenever you open the app. Live real-time streaming is not supported by the Snoo API. Expect sessions to appear in NestMate within a few minutes of your baby waking.
Tip: Once connected, NestMate's AI sleep insights will start correlating your Snoo session levels with other tracked data — feeding timing, diaper changes, and weather — to surface patterns you can actually act on.
What Gets Synced
| Data type | Direction | Details |
|---|---|---|
| Sleep sessions | Snoo → NestMate | Start time, end time, total duration |
| Soothe levels | Snoo → NestMate | Level progression within each session |
| Feeding journals | Snoo → NestMate | Breast, bottle, solid food entries |
| Pumping logs | Snoo → NestMate | Volume and session duration |
| Historical data | One-time import | Any date you choose, up to your account start |
Home Assistant
Trigger NestMate logging from HA automations, dashboards, and voice commands
NestMate exposes a secure webhook API that Home Assistant can call to log entries directly. Use it to create one-tap nursery dashboards, log sleep start/stop with your existing HA presence detection, or trigger entries from any HA-connected button, sensor, or routine.
Home Assistant 2023.6+ required. The rest_command integration used below has been available since HA Core. Make sure your instance is up to date before starting.
Step 1 — Generate an Integration Token
-
Open NestMate → Settings → Integrations → Home Assistant
You'll find the Home Assistant section in the Integrations settings screen.
-
Tap "Generate Token"
NestMate will create a unique bearer token tied to your account. Each caregiver in a family can have their own token — entries logged via HA will be attributed to the token's owner.
-
Copy your token and endpoint URL
You'll see two values: your API endpoint URL and your Bearer token. Copy both — you'll need them in the next section. Keep the token secret; it grants write access to your NestMate data.
Step 2 — Configure Home Assistant
Add the following to your Home Assistant configuration.yaml. Replace the placeholder values with the endpoint and token you copied from NestMate.
# configuration.yaml
rest_command:
# Log the start of a sleep session
nestmate_sleep_start:
url: "https://app.nestmatebaby.com/api/v1/log"
method: POST
headers:
Authorization: "Bearer YOUR_NESTMATE_TOKEN"
Content-Type: "application/json"
payload: '{"action":"sleep_start","babyId":"YOUR_BABY_ID"}'
# Log the end of a sleep session
nestmate_sleep_stop:
url: "https://app.nestmatebaby.com/api/v1/log"
method: POST
headers:
Authorization: "Bearer YOUR_NESTMATE_TOKEN"
Content-Type: "application/json"
payload: '{"action":"sleep_stop","babyId":"YOUR_BABY_ID"}'
# Log a diaper change
nestmate_diaper:
url: "https://app.nestmatebaby.com/api/v1/log"
method: POST
headers:
Authorization: "Bearer YOUR_NESTMATE_TOKEN"
Content-Type: "application/json"
payload: '{"action":"diaper","babyId":"YOUR_BABY_ID","type":"wet"}'
# Log the start of a feeding
nestmate_feed_start:
url: "https://app.nestmatebaby.com/api/v1/log"
method: POST
headers:
Authorization: "Bearer YOUR_NESTMATE_TOKEN"
Content-Type: "application/json"
payload: '{"action":"feed_start","babyId":"YOUR_BABY_ID","feedType":"breast"}'
Where is my baby ID? Open NestMate → select your baby's profile → tap the ⋯ menu → Copy Baby ID. It looks like abc123xyz.
After editing configuration.yaml, reload Home Assistant (Settings → System → Restart → Quick reload) or call the homeassistant.reload_all service.
Step 3 — Example Automations
Dashboard button
Add a tap-to-log button to any Lovelace dashboard:
# Lovelace button card
type: button
name: "🛌 Sleep Start"
tap_action:
action: call-service
service: rest_command.nestmate_sleep_start
Presence-based sleep detection
Automatically log a sleep entry when your nursery presence sensor detects the room is quiet:
# automation.yaml
- alias: "NestMate — auto-log sleep start"
trigger:
- platform: state
entity_id: binary_sensor.nursery_motion
to: "off"
for: "00:05:00" # 5 min no motion
action:
- service: rest_command.nestmate_sleep_start
- alias: "NestMate — auto-log sleep end"
trigger:
- platform: state
entity_id: binary_sensor.nursery_motion
to: "on"
action:
- service: rest_command.nestmate_sleep_stop
Google Home voice command
Bridge NestMate to Google Assistant via HA (requires Nabu Casa or a Google Home integration):
# configuration.yaml — expose a script to Google
script:
nestmate_log_diaper:
alias: "Log diaper change" # Google triggers on this alias
sequence:
- service: rest_command.nestmate_diaper
# Then in Google Home, expose the script and say:
# "Hey Google, turn on Log diaper change"
Siri Shortcuts: On iPhone, you can create a Shortcut that calls the NestMate API directly using the Get Contents of URL action — no Home Assistant required. Set the method to POST, add your Bearer token as a header, and paste the JSON payload. Then add it to Siri with a phrase like "Hey Siri, diaper change".