Skip to main content

Users

GET /api/users/me

Returns the authenticated user's profile.

Response — 200 OK

{
"id": "449b4cd2-...",
"externalUserId": "firebase|abc123",
"email": "praveen@example.com",
"displayName": "Praveen",
"createdAt": "2026-01-12T07:30:00Z",
"updatedAt": "2026-05-29T12:00:00Z"
}

displayName is critical — it's what SpeakerNameResolutionService uses to identify the user inside transcripts.

PATCH /api/users/me

Update mutable profile fields.

Request

{ "displayName": "Praveen Kumar" }

Response — 200 OK

The updated UserProfileResponse.

DELETE /api/users/me

Hard-delete the authenticated user's account.

Response — 204 No Content

This deletes:

  • Every call record, artifact, action item, and processing event owned by the user.
  • The voice profile.
  • The Firebase user (best-effort, if Admin SDK is configured).

Irreversible. Intended for GDPR-style "delete my data" requests.

GET /api/users/me/stats

Lightweight aggregates suitable for a dashboard header.

Response — 200 OK

{
"totalCalls": 128,
"callsThisWeek": 14,
"openActionItems": 9,
"overdueActionItems": 2,
"completedActionItems": 87,
"averageCallDurationSeconds": 318
}