---
title: "Switch Impersonation"
method: POST
path: "/v1/auth/switch-impersonation"
tags: ["auth"]
---

# Switch Impersonation

`POST /v1/auth/switch-impersonation`

## Request

- Base URL: `https://api.mentium.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.mentium.io/v1/auth/switch-impersonation`
- Auth: HTTP bearer

Switch from impersonating one user to another without returning to admin portal.

Must be called while already in an impersonation context. The token's subject
is the currently impersonated user; the impersonator_id claim identifies the
real admin. We verify the admin is still SUPER_ADMIN and switch to the new target.

## Request body

- SwitchImpersonationRequest
  - `user_id` string, uuid, required

## Response `200`

Successful Response

- UserWithAccessTokenSchema
  - `access_token` string, required
  - `user` AuthenticatedUserSchema, required
    - `id` string, uuid, required
    - `email` string, required
    - `first_name` string, required
    - `last_name` string, required
    - `organization_id` string, uuid, nullable, required
    - `organization` OrganizationSchema
      - `id` string, uuid, required
      - `name` string, required
      - `email` string, email, nullable
      - `phone` string, nullable
      - `timezone` string, nullable
      - `business_hours` BusinessHours: Business hours configuration for organization operations
        - `start_time` string, required: Business start time in HH:MM format (e.g., '08:00')
        - `end_time` string, required: Business end time in HH:MM format (e.g., '18:00')
        - `weekend_operations` boolean: Whether operations are enabled on weekends
      - `domain_name` string, nullable
      - `allow_domain_registration` boolean
      - `dot_number` string, nullable
      - `products` ProductSchema[], nullable
        - `id` string, nullable
        - `organization_id` string, uuid, required
        - `workspace_id` string, uuid, required
        - `feature` 'AGENT_CHAT' | 'BOOKING_INTELLIGENCE' | 'CARRIER_POOL' | 'CHATS' | 'CONTRACTS' | 'LOAD_ENTRY' | 'QUOTES' | 'SCHEMAS' | 'TMS_CHAT' | 'WORKFLOWS', required
        - `enabled` boolean, required
        - `created_at` string, date-time, required
        - `updated_at` string, date-time, required
    - `workspaces` WorkspaceSchema[]
      - `id` string, required
      - `organization_id` string, required
      - `app_type` string, required
      - `updated_at` string, required
      - `created_at` string, required
      - `name` string, required
    - `role` 'OWNER' | 'MEMBER' | 'SUPER_ADMIN', required
    - `products` ProductSchema[]
      - `id` string, nullable
      - `organization_id` string, uuid, required
      - `workspace_id` string, uuid, required
      - `feature` 'AGENT_CHAT' | 'BOOKING_INTELLIGENCE' | 'CARRIER_POOL' | 'CHATS' | 'CONTRACTS' | 'LOAD_ENTRY' | 'QUOTES' | 'SCHEMAS' | 'TMS_CHAT' | 'WORKFLOWS', required
      - `enabled` boolean, required
      - `created_at` string, date-time, required
      - `updated_at` string, date-time, required
    - `app_access` UserAppAccessSchema[]
      - `id` string, required
      - `user_id` string, required
      - `app_type` string, required
      - `status` string, required
      - `rejected_reason` string, nullable, required
      - `onboarded_at` string, date-time, nullable, required
      - `created_at` string, date-time, required
      - `updated_at` string, date-time, required
  - `is_impersonation` boolean

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/mentium/apis/mentium-api.md) - [All operations](https://skmtc.dev/mentium/apis/mentium-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mentium/apis/mentium-api/revisions/b4ed8e59432e?raw)
