Skip to main content
GET
Get a leaderboard (global, zone, or contest)

Authorizations

Authorization
string
header
required

Personal API key issued per SeeSaw user account: Authorization: Bearer sspat_…. Manage keys on the app API (/v1/users/me/api-keys). Revocation propagates within ~60 seconds (validation cache window).

Path Parameters

scope
enum<string>
required
Available options:
global,
zone,
contest

Query Parameters

type
enum<string>
default:credits

scope=global: ranking dimension

Available options:
credits,
accuracy,
volume
period
enum<string>
default:all

scope=global: time window

Available options:
all,
monthly,
weekly
id
string

scope=zone: zone slug (required)

month
string

scope=zone: month like 2026-07 (default: current month)

Pattern: ^\d{4}-\d{2}$
round
string

scope=contest: round filter (omit for the overall board)

cursor
string

Opaque pagination cursor from a previous response's next_cursor.

limit
integer
default:20

Page size (max 100).

Required range: 1 <= x <= 100

Response

The leaderboard with its query context echoed back

Self-describing envelope — context echoes the resolved query so agents can cite what board they are looking at.

scope
enum<string>
required
Available options:
global,
zone,
contest
context
object
required

global: {type, period}; zone: {slug, month}; contest: {round}.

data
object[]
required
next_cursor
string | null
required

Always null for scope=global (top-N board).

has_more
boolean
required