---
title: "Get league seasons"
method: POST
path: "/leagues/{identifier}/seasons"
tags: ["League Discovery"]
---

# Get league seasons

`POST /leagues/{identifier}/seasons`

Returns seasons for a league resolved by slug, with optional game and status filtering. Requires the leagues.league_public:read permission.

## Path parameters

- `identifier` string, required — League slug.

## Request body

- SeasonsRequestBody — Game and status filters for league seasons.
  - `gameId` string — Filter seasons to a specific game id.
  - `status` 'UPCOMING' | 'ACTIVE' | 'COMPLETED' — Filter seasons by lifecycle status.

## Response `200`

Seasons for the league.

- LeagueSeasons — Seasons for a league.
  - `seasons` object[], required — Season documents for the league.
  - `count` integer, required — Number of seasons returned.
  - `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.

---

[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/revisions/2ffe8fb53b7d/schema)
