Home-screen snapshot
Returns the weight summary, targets, latest measurements, shoulder-to-waist ratio, and the given day’s nutrition in one response.
/api/dashboard__Secure-better-auth.session_tokenAPI key · cookierequiredBetter Auth session. Signing in (Google or email magic link) sets an HttpOnly session cookie that scopes every request to that account. The web app and CLI use this; agents use the OAuth 2.1 flow of the MCP server.
AuthorizationBearer token · headerrequiredPersonal API key sent as Authorization: Bearer skcal_…. Create and scope keys in the app under your profile → API keys. Keys default to full access; a scoped key is limited to its granted resource:action permissions and cannot manage other keys.
datestring<date>Day to report nutrition for (YYYY-MM-DD). Defaults to the server's current UTC date.
The dashboard snapshot.
weightWeightSummaryrequiredLatest-weight summary for the dashboard card.
Show propertiesHide properties
latestKgnumber | nullrequiredMost recent weight in kilograms.
weeklyAvgKgnumber | nullrequiredMean weight over the last seven days.
bodyFatPctnumber | nullrequiredBody-fat percentage from the latest reading.
notestring | nullrequiredNote on the latest reading.
trendTrendPoint[]requiredChronological weight trend (oldest first).
Show propertiesHide properties
TrendPointtsinteger<int64>requiredTrend-point time as a Unix epoch in milliseconds.
kgnumberrequiredTrend-point body weight in kilograms.
targetsTargetsrequiredThe user's current goals shown on the dashboard.
Show propertiesHide properties
idintegerrequiredAuto-increment targets-row identifier.
goalWeightKgnumber | nullrequiredTarget body weight in kilograms.
startWeightKgnumber | nullrequiredStarting body weight in kilograms.
targetDateinteger<int64> | nullrequiredGoal date as a Unix epoch in milliseconds.
startDateinteger<int64> | nullrequiredPlan start date as a Unix epoch in milliseconds.
dailyKcalTargetinteger | nullrequiredDaily calorie target.
proteinTargetGinteger | nullrequiredDaily protein target in grams.
heightCmnumber | nullrequiredHeight in centimeters.
sexstring | nullrequiredSex used for calorie math.
malefemaleothernullmeasurementsLatestMeasurementLatest[]requiredLatest value per measured site.
Show propertiesHide properties
MeasurementLatestsitestringrequiredBody site of this latest measurement.
valueCmnumberrequiredLatest circumference in centimetres.
tsinteger<int64>requiredTime of the latest measurement as a Unix epoch in milliseconds.
shoulderToWaistnumber | nullrequiredShoulder-to-waist ratio (V-taper metric).
nutritionTodayNutritionDay | nullrequiredToday's nutrition totals, or null if nothing is logged.
Show propertiesHide properties
userEmailstring<email>requiredOwning account email.
datestring<date>requiredCalendar day these totals cover (YYYY-MM-DD).
kcalinteger | nullrequiredTotal calories logged that day.
proteinGinteger | nullrequiredTotal protein in grams logged that day.
hitProteinboolean | nullrequiredWhether the day's protein target was met.
adherencestring | nullrequiredCalorie adherence bucket for the day.
underonovernullnullphasePhase | nullrequiredThe open goal phase (bulk, cut, or maintain) with its progress, or null when none is set.
Show propertiesHide properties
idstring<uuid>requiredPhase identifier.
kindstringrequiredPhase type.
bulkcutmaintainstartDatestring<date>requiredFirst day.
plannedEndDatestring<date> | nullrequiredPlanned last day.
endedDatestring<date> | nullrequiredDay it ended; null while it's the open phase.
activebooleanrequiredTrue for the open phase.
startWeightLbnumber | nullrequiredBodyweight at the start, in pounds.
goalWeightLbnumber | nullrequiredGoal bodyweight in pounds.
ratePctPerWeeknumber | nullrequiredPlanned weekly change, percent of bodyweight.
dailyKcalTargetinteger | nullrequiredThe phase's daily calorie target.
proteinTargetGinteger | nullrequiredThe phase's daily protein target in grams.
notestring | nullrequiredFree-text note.
progressPhaseProgressrequiredPlanned vs actual rate of change, from a least-squares fit over the phase's weigh-ins.
Show propertiesHide properties
weeksElapsednumberrequiredWeeks since the start (to the end, for a closed phase).
weeksPlannednumber | nullrequiredPlanned length in weeks.
latestWeightLbnumber | nullrequiredLatest weigh-in within the phase, in pounds.
changeLbnumber | nullrequiredChange since the start, in pounds.
plannedLbPerWeeknumber | nullrequiredPlanned weekly change in pounds.
actualLbPerWeeknumber | nullrequiredActual weekly change in pounds (null before a week of weigh-ins).
actualPctPerWeeknumber | nullrequiredActual weekly change as a percent of start weight.
statusstringrequiredWhether the actual rate is within a third of the plan.
on_tracktoo_fasttoo_slownot_enough_datanull