# Get the current user

Return the signed-in user and their workspace memberships.

## Endpoint

`GET /api/v1/auth/me`

## Authentication

| Class | Authentication | Minimum role | API key |
| --- | --- | --- | --- |
| dashboard-session-api | Dashboard session cookie; mutations also require X-CX-Request: 1. | session | Not allowed |

## Parameters

This operation has no path, query, or header parameters.

## Request body

This operation has no request body.

## Example

```bash
curl --request GET 'https://operade.ai/api/v1/auth/me' \
  --cookie 'cx_session=YOUR_SESSION_COOKIE'
```

## Responses

| Status | Description | Content |
| --- | --- | --- |
| 4XX | Handled client error | application/json: `ErrorResponse` |
| 200 | Successful Response | application/json: `CurrentUserResponse` |

### 4XX application/json response schema

| Field path | Type | Reference | Format | Nullable | Required | Enum | Description |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `$` | `object` | ErrorResponse | — | No | Yes | — | — |
| `error` | `object` | ErrorItem | — | No | Yes | — | — |
| `error.code` | `string` | — | — | No | Yes | — | — |
| `error.details` | `object` | — | — | No | No | — | — |
| `error.message` | `string` | — | — | No | Yes | — | — |

### 200 application/json response schema

| Field path | Type | Reference | Format | Nullable | Required | Enum | Description |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `$` | `object` | CurrentUserResponse | — | No | Yes | — | — |
| `user` | `object` | UserIdentity | — | No | Yes | — | — |
| `user.email` | `string` | — | — | No | Yes | — | — |
| `user.id` | `string` | — | — | No | Yes | — | — |
| `user.name` | `string` | — | — | No | Yes | — | — |
| `workspaces` | `array<WorkspaceMembership>` | — | — | No | Yes | — | — |
| `workspaces[]` | `object` | WorkspaceMembership | — | No | Yes | — | — |
| `workspaces[].id` | `string` | — | — | No | Yes | — | — |
| `workspaces[].name` | `string` | — | — | No | Yes | — | — |
| `workspaces[].role` | `string` | — | — | No | Yes | "owner", "admin", "member" | — |
| `workspaces[].slug` | `string` | — | — | No | Yes | — | — |

### Response example

```json
{
  "user": {
    "id": "string",
    "email": "string",
    "name": "string"
  },
  "workspaces": []
}
```

## Errors

Reviewed common and route-declared errors are summarized here; the list is not exhaustive. Start with the [distributed error index](/docs/reference/api/errors) to find each code's canonical domain page.

| Status | Code | Description |
| --- | --- | --- |
| 401 | `unauthenticated` | Authentication is missing, invalid, or revoked. |

## Related operations

- [Log in](/docs/api-reference/auth/login) — `POST /api/v1/auth/login`
- [Log out](/docs/api-reference/auth/logout) — `POST /api/v1/auth/logout`
- [Register an account](/docs/api-reference/auth/register-account) — `POST /api/v1/auth/register`
