Skip to content

Get Event Stats

GET
/users/{user_id}/event-stats
curl --request GET \
--url 'https://example.com/users/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/event-stats?window_days=30'

Per-event-type descriptive stats (cadence, recent direction, scalar distribution / most-common value, top tags) for categories with enough events in the window. Query-time, no LLM. See app/services/event_stats.py.

user_id
required
User Id
string format: uuid
window_days
Window Days
integer
default: 30 >= 7 <= 365

Successful Response

Media typeapplication/json
EventStatsResponse
object
stats
required
Stats
Array<object>
EventStatCard

Descriptive stats for one logged event category. See app/services/event_stats.py.

object
category_id
required
Category Id
string format: uuid
color
required
Any of:
string
count
required
Count
integer
count_trend
required
Count Trend
string
distribution
Distribution
Array<object>
default:
ValueBucket
object
count
required
Count
integer
label
required
Any of:
string
value
required
Value
string
group
required
Group
string
icon_key
required
Any of:
string
last_at
required
Last At
string format: date-time
median_interval_hours
required
Any of:
number
mode_label
Any of:
string
mode_value
Any of:
string
name
required
Name
string
per_week
required
Per Week
number
scalar_avg
Any of:
number
slug
required
Slug
string
top_tags
Top Tags
Array<object>
default:
TagCount
object
count
required
Count
integer
tag
required
Tag
string
value_kind
required
Value Kind
string
value_trend
Any of:
string
window_days
required
Window Days
integer
Example
{
"stats": [
{
"distribution": [],
"top_tags": []
}
]
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}