---
title: "Deactivate a member"
method: DELETE
path: "/v1/members/{membership_id}"
tags: ["members"]
---

# Deactivate a member

`DELETE /v1/members/{membership_id}`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/members/{membership_id}`
- Auth: HTTP bearer

Soft-deactivate a member (sets ``status_code`` to ``'deactivated'``) and disconnect the
PERSONAL integration accounts they own.

Every provider, not MCP alone: the accounts disconnected are those carrying this member's
``connected_by_user_id`` at PERSONAL visibility.

Answers a body rather than the 204 it used to, because the second half of that sentence has a
consequence the caller must see: what was disconnected, and how much of it Patricia could
actually take back. See :class:`MemberRemovalResponse`.

Safety rules:
- Cannot deactivate a member whose ``role_code`` is ``'owner'``.
- Cannot deactivate your own account (JWT users only; API keys have no
  email identity and bypass this check).

## Path parameters

- `membership_id` string, uuid, required

## Headers

- `X-Tenant-Id` string, nullable

## Response `200`

Successful Response

- MemberRemovalResponse: What removing one member did BEYOND deactivating them. The route used to answer 204. It answers a body now because the removal has a consequence the person doing it cannot otherwise see: a departing member's personal connections are disconnected with them, and one of the two credential kinds cannot be taken back by Patricia at all. An admin who is not told that believes the offboarding is finished when a token they have never seen is still live at somebody else's server. Two counts rather than one, because the two kinds owe different actions and a single number could only support the weaker sentence. ``revocations_queued`` is a promise about work that is owed and drained in the background, never a report that the provider has confirmed anything.
  - `membership_id` string, uuid, required
  - `connections_disconnected` integer, required
  - `revocations_queued` integer, required

## Other responses

- `422`: Validation Error

---

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