Signed-in user's full profile
Returns name + email + avatar + linked OAuth accounts + registered passkeys. Powers the settings page's connect / disconnect / rename affordances.
/api/userReturns name + email + avatar + linked OAuth accounts + registered passkeys. Powers the settings page's connect / disconnect / rename affordances.
Response Body
application/json
curl -X GET "https://loading/api/user"{
"id": "usr_owner",
"name": "Sam Owner",
"email": "sam@your-company.com",
"image": "https://api.dicebear.com/9.x/shapes/svg?seed=sam",
"createdAt": "2026-01-15T08:00:00.000Z",
"accounts": [
{
"provider": "google"
},
{
"provider": "github"
}
],
"passkeys": [
{
"credentialID": "AbCdEfGh-1234567890_ijklMNO-pqrsTUV",
"name": "MacBook Touch ID",
"credentialDeviceType": "singleDevice",
"createdAt": "2026-02-03T14:20:00.000Z"
}
]
}KPI aggregate for the users list stats strip GET
VIEWER+. Four KPIs scoped to the caller's active org: total tracked users, online now, active in last 24 h, new this week. Single SQL round-trip via `$queryRaw` with conditional aggregation + a `LATERAL` join to resolve `MAX(Session.endedAt)` per user.
Update display name PATCH
Renames the signed-in user. Avatar regeneration has its own endpoint (`POST /api/user/avatar`) — the two actions live in different parts of the profile form.