---
title: "Queries the standings of a leaderboard."
method: GET
path: "/leaderboard/{leaderboardId}/standings/query"
tags: ["Leaderboard"]
---

# Queries the standings of a leaderboard.

`GET /leaderboard/{leaderboardId}/standings/query`

## Request

- Base URL: `https://api.rapidata.ai`
- URL: `https://api.rapidata.ai/leaderboard/{leaderboardId}/standings/query`
- Auth: OpenID Connect (`https://auth.rapidata.ai/.well-known/openid-configuration`, scopes: `openid`, `profile`, `email`, `offline_access`, `api`)

Filters apply to the underlying votes. Benchmarks without granular vote storage evaluate
 only the filters their aggregated data can answer (tags, participants, leaderboards, runs,
 prompt identifiers); demographic and vote-time filters require granular vote storage.

## Path parameters

- `leaderboardId` string, required

## Query parameters

- `useWeightedScoring` boolean
- `country` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `language` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `gender` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `age_bucket` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `occupation` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `tags` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `participant_id` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `run_id` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `prompt_identifier` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `voted_at` object
  - `eq` string
  - `neq` string
  - `gt` string
  - `gte` string
  - `lt` string
  - `lte` string
  - `contains` string
  - `starts_with` string
  - `ends_with` string
  - `in` string[]
  - `not_contains` string
- `logic` 'and' | 'or'

## Response `200`

OK

- QueryStandingsByLeaderboardEndpointOutput: The queried standings output.
  - `items` QueryStandingsByLeaderboardEndpointOutputItem[], required: The standings items, ordered by score descending.
    - `id` string, required
    - `name` string, required
    - `family` string, nullable
    - `lab` string, nullable
    - `proprietaryName` string, nullable
    - `licenseType` 'OpenSource' | 'Proprietary', nullable: The license classification of the underlying model behind a participant.
    - `cost` number, double, nullable
    - `costUnit` 'UsdPerImage' | 'UsdPerVideoSecond' | 'UsdPerMillionTokens' | 'UsdPerSample', nullable: The unit a model's cost is quoted in. Costs are only comparable within one unit.
    - `logo` string, nullable
    - `status` 'Created' | 'Active' | 'Idle', required
    - `score` number, double, nullable, required
    - `wins` number, double, required
    - `totalMatches` number, double, required
    - `responseCount` integer, required
    - `isDisabled` boolean, required
    - `confidenceInterval` object, nullable
      - `lowerOffset` number, double, required
      - `upperOffset` number, double, required
  - `totalResponses` integer, required: Total raw human votes behind these standings under the current filter — not the per-participant TotalMatches, which counts binarized matchups (a comparison's several votes collapse into one).

## Other responses

- `400`: Bad Request
- `401`: Unauthenticated
- `403`: Forbidden

## Changes

- **2026-10-19** `c72c9f1c8ef5`: 2 info
  - removed the `undefined` enum value from the `items/allOf[subschema #1]/items/costUnit/oneOf[#/components/schemas/CostUnit]/` response property for the response status `200`
  - removed the `undefined` enum value from the `items/allOf[subschema #1]/items/licenseType/oneOf[#/components/schemas/ModelLicenseType]/` response property for the response status `200`
- **2026-10-14** `ee9d3d550b23`: 1 warning
  - added the new `UsdPerSample` enum value to the `items/allOf[subschema #1]/items/costUnit/oneOf[#/components/schemas/CostUnit]/` response property for the response status `200`
- **2026-09-04** `9da534659e5f`: 3 info
  - the security scope `api` was added to the endpoint's security scheme `OpenIdConnect`
  - added the optional property `items/allOf[subschema #1]/items/cost` to the response with the `200` status
  - added the optional property `items/allOf[subschema #1]/items/costUnit` to the response with the `200` status

[Operation history](https://skmtc.dev/rapidata/apis/rapidata-api/changes/leaderboard/:leaderboardId/standings/query/get.md)

---

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