---
title: "Switch the current user's role (talent <-> client)"
method: POST
path: "/api/v1/role_change"
tags: ["Account::RoleChange"]
---

# Switch the current user's role (talent <-> client)

`POST /api/v1/role_change`

## Request

- Base URL: `https://api.flexiple.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.flexiple.com/api/v1/role_change`
- Auth: HTTP bearer

## Request body

- object
  - `confirmation` string, required: The current user's email address, used as a typed-phrase confirmation.

## Response `200`

Role switched, cleanup enqueued

- object
  - `data` object, required
    - `current_role` 'client' | 'talent', required
    - `target_role` 'client' | 'talent', required
    - `redirect_to` string, required

## Other responses

- `403`: Admin role cannot self-switch
- `422`: Confirmation mismatch or multi-member team

---

[API](https://skmtc.dev/flexiple/apis/flexiple-platform-api-v1.md) - [All operations](https://skmtc.dev/flexiple/apis/flexiple-platform-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/flexiple/apis/flexiple-platform-api-v1/revisions/27e7987859f2?raw)
