Get User Stats
GET
/users/{user_id}/stats
const url = 'https://example.com/users/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/stats?days=365&window=30';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/users/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/stats?days=365&window=30'Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”user_id
required
User Id
string format: uuid
Query Parameters
Section titled “Query Parameters”days
Days
integer
window
Window
Days back for category breakdown
integer
Days back for category breakdown
Responses
Section titled “Responses”Successful Response
Media typeapplication/json
UserStats
object
category_breakdown
required
Category Breakdown
Array<object>
CategoryShareobject
category_id
required
Category Id
string format: uuid
count
required
Count
integer
name
required
Name
string
percentage
required
Percentage
number
current_streak
required
Current Streak
integer
heatmap
required
Heatmap
Array<object>
HeatmapDayobject
count
required
Count
integer
date
required
Date
string format: date
longest_streak
required
Longest Streak
integer
total_events
required
Total Events
integer
Examplegenerated
{ "category_breakdown": [ { "category_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "count": 1, "name": "example", "percentage": 1 } ], "current_streak": 1, "heatmap": [ { "count": 1, "date": "2026-04-15" } ], "longest_streak": 1, "total_events": 1}Validation Error
Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationErrorobject
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ]}