Progress & Tracking
Vibes/mood trend for sharing
Changed onShaped like GET /journey/weight-trend. window = month (30 days) | 6months (180) | year (365); one point per logged day, empty days omitted. Each point is the average mood score (1–5) for the day plus the vibe logged most often that day. breakdown counts each vibe over the window, most frequent first.
get/api/vibe-log/trend
Request
- Base URLhttps://api.rewritelifestyle.ai (the document declares no server; this is the origin it was published from)
- URLhttps://api.rewritelifestyle.ai/api/vibe-log/trend
- AuthHTTP bearer
Query parameters
window'month' | '6months' | 'year'
Same windows as GET /journey/weight-trend: month = last 30 days, 6months = last 180, year = last 365. Defaults to "month".
datestring
Example:2026-10-26
End-date anchor in YYYY-MM-DD (inclusive). Defaults to today in the user's timezone.
Headers
x-timezonestring required
Response
unknown required
Example response
{
"metric": "vibes",
"window": "month",
"unit": "score",
"scale": {
"min": 1,
"max": 5
},
"points": [
{
"date": "2026-10-20",
"value": 4,
"vibe": "motivated",
"emoji": "💪"
},
{
"date": "2026-10-22",
"value": 2,
"vibe": "tired",
"emoji": "😴"
},
{
"date": "2026-10-25",
"value": 5,
"vibe": "happy",
"emoji": "😊"
}
],
"goal": null,
"starting_value": 4,
"current_value": 5,
"change": 1,
"average": 3.7,
"days_logged": 3,
"goal_progress_pct": null,
"top_vibe": {
"vibe": "happy",
"emoji": "😊",
"count": 1
},
"breakdown": [
{
"vibe": "happy",
"emoji": "😊",
"count": 1
},
{
"vibe": "tired",
"emoji": "😴",
"count": 1
},
{
"vibe": "motivated",
"emoji": "💪",
"count": 1
}
]
}Changes
- info
endpoint added
- info