---
title: "Get current user"
method: GET
path: "/users/me"
tags: ["Users"]
---

# Get current user

`GET /users/me`

Gets the currently authenticated user.

## Response `200`

Successful response

- object
  - `selected_team` object, nullable
    - `id` string, required — The unique identifier of the team
    - `display_name` string, required — Human-readable team display name. This is not a unique identifier.
    - `profile_image_url` 'null', nullable — URL of the profile image for team. Can be a Base64 encoded image. Must be smaller than 100KB. Please compress and crop to a square before passing in.
    - `client_metadata` object, nullable — Client metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client.
    - `client_read_only_metadata` object, nullable — Client read-only, server-writable metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client. The client can read this data, but cannot modify it. This is useful for things like subscription status.
  - `id` string, required — The unique identifier of the user
  - `primary_email` 'null', nullable — Primary email
  - `primary_email_verified` boolean, required — Whether the primary email has been verified to belong to this user
  - `display_name` 'null', nullable — Human-readable user display name. This is not a unique identifier.
  - `client_metadata` object, nullable — Client metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client.
  - `client_read_only_metadata` object, nullable — Client read-only, server-writable metadata. Used as a data store, accessible from the client side. Do not store information that should not be exposed to the client. The client can read this data, but cannot modify it. This is useful for things like subscription status.
  - `profile_image_url` 'null', nullable — URL of the profile image for user. Can be a Base64 encoded image. Must be smaller than 100KB. Please compress and crop to a square before passing in.
  - `signed_up_at_millis` number, required — The time the user signed up (identify) => `(the number of milliseconds since epoch, January 1, 1970, UTC)`
  - `selected_team_id` 'null', nullable — ID of the team currently selected by the user
  - `is_anonymous` boolean, required
  - `is_restricted` boolean, required — Whether the user is in restricted state (has signed up but not completed onboarding requirements)
  - `restricted_reason` object, nullable — The reason why the user is restricted (e.g., type: "email_not_verified", "anonymous", or "restricted_by_administrator"), null if not restricted
    - `type` 'anonymous' | 'email_not_verified' | 'restricted_by_administrator', required
  - `restricted_by_admin` boolean, required — Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.
  - `restricted_by_admin_reason` 'null', nullable — Public reason shown to the user explaining why they are restricted. Optional.

---

[API](https://skmtc.net/hexclave/apis/hexclave-rest-api.md) · [All operations](https://skmtc.net/hexclave/apis/hexclave-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hexclave/hexclave-rest-api/revisions/86dcd8c9953c/schema)
