---
title: "Retrieve the details of a user."
method: GET
path: "/api/users/{user_id}"
tags: ["User Accounts"]
---

# Retrieve the details of a user.

`GET /api/users/{user_id}`

Retrieve a user by ID.

Returns:
    User data for the requested user.

## Path parameters

- `user_id` string, uuid, required — The user to retrieve.

## Response `200`

Request fulfilled, document follows

- User
  - `avatarUrl` string, nullable
  - `email` string, required
  - `hasPassword` boolean
  - `id` string, uuid, required
  - `isActive` boolean
  - `isSuperuser` boolean
  - `isTwoFactorEnabled` boolean
  - `isVerified` boolean
  - `name` string, nullable
  - `oauthAccounts` OauthAccount[]
    - `accountEmail` string, required
    - `accountId` string, required
    - `id` string, uuid, required
    - `oauthName` string, required
    - `scopes` string[], nullable
  - `roles` UserRole[]
    - `assignedAt` string, date-time, required
    - `roleId` string, uuid, required
    - `roleName` string, required
    - `roleSlug` string, required
  - `teams` UserTeam[]
    - `isOwner` boolean
    - `role` 'admin' | 'editor' | 'member' — Valid values for team roles. Roles follow Jetstream conventions: - ADMIN: Full permissions (create, read, update, delete) - EDITOR: Limited permissions (read, create, update) - MEMBER: Basic read-only access Note: Team ownership is tracked separately via is_owner on TeamMember.
    - `teamId` string, uuid, required
    - `teamName` string, required
    - `teamSlug` string, required

## Other responses

- `400` — Bad request syntax or unsupported method

---

[API](https://skmtc.net/litestar-org/apis/app.md) · [All operations](https://skmtc.net/litestar-org/apis/app/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/litestar-org/app/versions/461f3baecebb/schema)
