Read a bounded Points leaderboard containing opted-in public profiles only.
GET /api/v1/points/leaderboard. Read a bounded Points leaderboard containing opted-in public profiles only.
Request
GET /api/v1/points/leaderboard
The schema permits anonymous access.
Parameters
| Name | In | Type | Required | Constraints | Description |
|---|---|---|---|---|---|
limit | query | integer | No | minimum: 1; maximum: 100; default: 20 | — |
period | query | string | No | default: week; allowed: "week", "all" | — |
X-Request-Id | header | string | No | min length: 8; max length: 128; pattern: ^[A-Za-z0-9._:-]+$ | Optional client correlation identifier. The server always generates a separate authoritative request ID and retains a valid supplied value only as secondary audit correlation metadata. |
cURL
curl --fail-with-body --silent --show-error \
--request GET \
--url "https://launch-api.supanova.app/api/v1/points/leaderboard"Responses
200
A privacy-safe weekly or all-time preview leaderboard.
| Header | Type | Description |
|---|---|---|
X-Request-Id | string | Server-generated request correlation identifier to retain for support and reconciliation. |
Content type: application/json
Type: object.
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
items | array of object · Schema 1 | Yes | max items: 100 | — |
meta | object · Schema 2 | Yes | — | — |
period | string | Yes | allowed: "week", "all" | — |
viewer | null | Yes | — | — |
Additional fields are not allowed.
400
The leaderboard query is invalid. Also: VALIDATION_FAILED.
| Header | Type | Description |
|---|---|---|
X-Request-Id | string | Server-generated request correlation identifier to retain for support and reconciliation. |
Content type: application/json
Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.
429
The caller exceeded an IP or principal request budget.
| Header | Type | Description |
|---|---|---|
Retry-After | integer | Whole seconds to wait before retrying a rate-limited request. |
X-Request-Id | string | Server-generated request correlation identifier to retain for support and reconciliation. |
Content type: application/json
Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.
503
A durable, reviewed Supanova Points policy engine is not configured.
| Header | Type | Description |
|---|---|---|
X-Request-Id | string | Server-generated request correlation identifier to retain for support and reconciliation. |
Content type: application/json
Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.
default
Machine-readable API error. The HTTP status identifies the error class.
| Header | Type | Description |
|---|---|---|
X-Request-Id | string | Server-generated request correlation identifier to retain for support and reconciliation. |
Content type: application/json
Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.
Nested schemas
Field links above lead to the complete nested object, array, and variant definitions below. Required fields are scoped to their containing object.
Schema 1
Response 200.items
Type: array of object.
max items: 100
Array items: object · Schema 3.
Schema 2
Response 200.meta
Type: object.
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
asOf | string | Yes | format: date-time; pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$ | — |
authority | "supanova-product" | Yes | — | — |
dataMode | "simulated" | Yes | — | — |
disclaimer | string | Yes | min length: 1; max length: 1024 | — |
ledgerEffect | "none" | Yes | — | — |
policyVersion | "points-preview-2026-08-07.1" | Yes | — | — |
Additional fields are not allowed.
Schema 3
Response 200.items item
Type: object.
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
points | string | Yes | pattern: ^(?:0|[1-9]\d{0,27})$ | — |
profile | object · Schema 4 | Yes | — | — |
rank | integer | Yes | maximum: 9007199254740991; greater than: 0 | — |
tasksCompleted | integer | Yes | minimum: 0; maximum: 9007199254740991 | — |
Additional fields are not allowed.
Schema 4
Response 200.items item.profile
Type: object.
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
avatarPresetId | one or more variants · Schema 5 | Yes | — | — |
displayName | string | Yes | min length: 2; max length: 32 | — |
username | string | Yes | min length: 3; max length: 24; pattern: ^[a-z][a-z0-9_]*$ | — |
visibility | "public_opt_in" | Yes | — | — |
Additional fields are not allowed.
Schema 5
Response 200.items item.profile.avatarPresetId
Type: one or more variants.
At least one of these variants must match:
- Variant 1: string. pattern:
^supanova-(?:0[1-9]|1[0-2])$ - Variant 2: null.
Source contract
This page is generated from the checked-in customer OpenAPI snapshot. Download JSON, download YAML, or compare the live API reference. Snapshot provenance records the retrieval date and checksum.