---
title: "Add a league staff member"
method: POST
path: "/leagues/{identifier}/members/add"
tags: ["League: Membership & Teams"]
---

# Add a league staff member

`POST /leagues/{identifier}/members/add`

## Request

- Base URL: `https://teambattles.gg/api/v1`
- URL: `https://teambattles.gg/api/v1/leagues/{identifier}/members/add`
- Auth: HTTP bearer

Adds or reactivates a league staff member. Requires a personal or developer API key whose owner is currently a league ADMIN of the league in the path, with the league members capability enabled on the key. League API access is gated at api_pro on the league owner's plan.

## Path parameters

- `identifier` string, required: League slug or Convex league ID.

## Request body

- AddLeagueMemberRequestBody: Adds or reactivates a league staff member.
  - `userId` string, required: User ID to add to league staff.
  - `role` 'ADMIN' | 'MANAGER' | 'MEMBER', required: Assignable league staff role. OWNER cannot be assigned through this API.

## Response `200`

The league staff member was added.

- AddLeagueMemberResponse
  - `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.

## Changes

- **2026-06-10** `82f2480cdb83`: 2 info
  - api tag `League: Membership & Teams` added
  - api tag `Leagues` removed
- **2026-06-07** `aa7aaec092d9`: 1 info
  - endpoint added
- **2026-06-04** `f22bd61fd595`: 1 breaking
  - api path removed without deprecation

[Operation history](https://skmtc.dev/teambattles/apis/teambattles-api/changes/leagues/:identifier/members/add/post.md)

---

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