Skip to main content
POST
/
leagues
/
{identifier}
/
activity-feed
curl -X POST https://teambattles.gg/api/v1/leagues/my-league/activity-feed \
  -H "Authorization: Bearer tb_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"limit": 25}'
{
  "activities": [
    "<unknown>"
  ],
  "nextCursor": "<string>",
  "hasMore": true,
  "timestamp": "<string>"
}

Permission Required

This endpoint is an admin read. It requires a league-operator API key bound to this league with the leagues.league_admin:read access permission, plus the leagueOperatorApi plan feature (api_pro or higher). A free key receives 403 error_api_feature_required. The POST method is used to deliver an authenticated, paginated read; this endpoint does not modify the league.

Access / Membership Rules

You must have a MANAGER or higher role in the league (or be a TeamBattles staff member) to read the activity feed. If you lack the required access, you’ll receive a 403 error. The {identifier} path parameter is the league slug - the URL-friendly league name (e.g., my-league).

What’s Returned

Returns recent league activity entries for the bound league as { "activities": [ ... ], "nextCursor": "<cursor>", "hasMore": <boolean>, "timestamp": "<ISO 8601>" }. Page through the feed by passing nextCursor back as cursor while hasMore is true.

Request Body

The request body is optional - both fields default. Omit it to read the first page with the default page size.
ParameterTypeRequiredDescription
limitnumberNoPage size, from 1 to 100 (default 25).
cursorstringNoPagination cursor from a previous response’s nextCursor. Omit or pass null for the first page.
curl -X POST https://teambattles.gg/api/v1/leagues/my-league/activity-feed \
  -H "Authorization: Bearer tb_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"limit": 25}'

Authorizations

Authorization
string
header
required

Send your API key as: Authorization: Bearer tb_

Path Parameters

identifier
string
required

League slug or Convex league ID.

Body

application/json

Cursor pagination options for a league activity feed.

limit
integer
default:25
Required range: 1 <= x <= 100
cursor
string | null

Response

League activity feed.

A paginated league activity feed.

activities
any[]
required
nextCursor
string
required
hasMore
boolean
required
timestamp
string
required