> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nemu.cc/llms.txt
> Use this file to discover all available pages before exploring further.

# User

> Read the account of the user who authorized your app

Returns the account behind the token. In a user flow it is the person who approved access.
In a service flow it is the account that owns the app. Requires the `profile:read` scope.

## Get the current user

```
GET /api/v1/user
```

<RequestExample>
  ```bash cURL theme={null}
  curl 'https://platform.nemu.cc/api/v1/user' \
    -H 'Authorization: Bearer <access_token>'
  ```

  ```ts SDK theme={null}
  const user = await nemu.user.get();
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "data": {
      "id": "3f0e...",
      "email": "user@example.com",
      "username": "user",
      "role": "USER",
      "account_type": "PERSONAL",
      "plan": "pro",
      "email_verified": true,
      "created_at": "2026-01-04T10:22:00.000Z"
    }
  }
  ```
</ResponseExample>

<ResponseField name="data.id" type="string">
  The stable account identifier.
</ResponseField>

<ResponseField name="data.email" type="string">
  The account email address.
</ResponseField>

<ResponseField name="data.username" type="string | null">
  The account username, or null if none is set.
</ResponseField>

<ResponseField name="data.role" type="string">
  The account role, for example `USER`.
</ResponseField>

<ResponseField name="data.account_type" type="string">
  `PERSONAL` or `ORGANIZATION`.
</ResponseField>

<ResponseField name="data.plan" type="string | null">
  The current plan identifier, for example `free` or `pro`.
</ResponseField>

<ResponseField name="data.email_verified" type="boolean">
  Whether the email address is verified.
</ResponseField>

<ResponseField name="data.created_at" type="string">
  ISO 8601 timestamp of when the account was created.
</ResponseField>

The response never includes secrets such as passwords, tokens, or two factor material.
