---
title: "Transfer organization ownership"
method: POST
path: "/orgs/{identifier}/ownership/transfer"
tags: ["My Organizations"]
---

# Transfer organization ownership

`POST /orgs/{identifier}/ownership/transfer`

Transfers organization ownership from the caller (key owner) to another active member, who becomes the new owner. The caller must currently be the organization owner and is demoted to admin. Requires orgs.roster:read-write.

## Path parameters

- `identifier` string, required — Organization slug or Convex organization ID.

## Request body

- TransferOrgOwnershipBody — Transfer organization ownership to another member.
  - `newOwnerId` string, required — Convex user ID of the active organization member to promote to owner.

## Response `200`

Ownership transferred.

- TransferOrgOwnershipResponse
  - `success` true, required
  - `timestamp` string, required — Response generation time (ISO 8601).

## Other responses

- `400` — Bad request (invalid body, cursor, limit, or date).
- `401` — Missing or invalid API key.
- `403` — API key lacks the required permission.
- `404` — Resource not found.
- `429` — Rate limited.
- `500` — Internal server error.

---

[API](https://skmtc.net/teambattles/apis/teambattles-api.md) · [All operations](https://skmtc.net/teambattles/apis/teambattles-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/teambattles/teambattles-api/versions/2ffe8fb53b7d/schema)
