- GET
/babies - The babies in your homes.
- POST
/babies - Registers a baby: name and date of birth.
- GET
/babies/{baby} - One baby and their settings.
- PATCH
/babies/{baby} - Changes name, birth, bedtime, early warning, alerts, night silence or what gets recorded about each feed.
- DELETE
/babies/{baby} - Archives them. It does not delete them: a year of somebody's nights does not vanish because a button got tapped at four in the morning.
- GET
/babies/{baby}/statethe one you want - The whole day exactly as the app draws it: the forecast, what has been slept, this household's night and the notes. If you are only going to call one thing, call this.
- GET
/babies/{baby}/forecast - Up to two weeks ahead, each day with its margin and how much confidence is behind it.
- GET
/babies/{baby}/pulse - A short string that changes whenever anything about this baby changes. It is what the other screen watches to find out, every ten seconds and only while somebody is looking at it.
- GET
/babies/{baby}/week - The seven finished days, summed up: how much they slept on average, how many naps, how the window moved and which foods were tried for the first time.
- GET
/babies/{baby}/export - Everything recorded, for taking with you: `format=json` gives the lot, `format=csv&what=sleeps|feeds|food|measurements` gives one table.
- GET
/babies/{baby}/report - A page ready to print with what a check-up asks about: two weeks of sleep, measurements with their centile, how solids are going and the reactions. With `format=pdf` it downloads as a PDF.
- GET
/babies/{baby}/alerts - Which alerts this home wants: one per kind, with who it belongs to (the baby or you) and whether it is on. The baby's are shared by both phones in the house; yours are yours.
- PUT
/babies/{baby}/alerts - Turns alerts on or off. Send only the ones you want to change —`{"alerts":{"week":false}}`— and the rest stay as they were. «notify» is still the master switch and outranks all of them.
- POST
/babies/{baby}/pause - Pauses the times while the baby is unwell (`{"on":true,"daysBack":1}` is from yesterday, and `"onlyBefore":true` pauses the days before and leaves today out) or ends the pause with `{"on":false}`. What gets recorded is kept, but nothing is learned from it and no alerts go out. To correct a single day: `{"day":"2026-09-23","paused":false}`.
- GET
/babies/{baby}/days - What was written in the calendar between `from` and `to` (`YYYY-MM-DD`, two months at most): symptoms, medicine, moments and notes for each day. It also returns, in `custom`, whatever the household has ever typed by hand.
- PUT
/babies/{baby}/days/{day} - Writes what happened on a whole day at once: `{"entries":{"symptoms":["fever","Pulling at an ear"],"medicine":[],"events":[]},"note":"…"}`. A day with nothing in it is deleted.
- GET
/babies/{baby}/cries - The cries listened to: the one waiting for an answer, how often the sound and the day were right, and what has been learned from this baby.
- POST
/babies/{baby}/cries - Keeps the measurements of a cry (never the audio): `sound` with its numbers, `distress`, `pain` and `dayGuess`.
- PATCH
/babies/{baby}/cries/{cry} - What it was in the end: `answer` is `hunger`, `tired`, `discomfort`, `pain`, `wind`, `other` or `unknown`.
- DELETE
/babies/{baby}/cries/{cry} - Deletes a cry.