> ## Documentation Index
> Fetch the complete documentation index at: https://docs.summerengine.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Summer.authority.ratings

> Authority read of each player's queue rating.

**Class:** `SummerAuthorityRatings` · **Inherits:** RefCounted · **Access:** `Summer.authority.ratings`

Authority read of each player's queue rating.

Lets the game own its rating rule. A queue declared in the build manifest with `"policy": "rating"` and `"ratingSystemRef": "authority_v1"` moves ratings only by the amounts the authority reports: read each player's rating, compare it with what the players achieved, and pass every player's movement to [`Summer.authority.match.conclude()`](/api-reference/gdscript/authority/match#conclude). Matchmaking then groups players by the moved ratings. Ratings read here are for the authority's own game logic: never show one player's rating to other players. [`leaderboard()`](/api-reference/gdscript/authority/ratings#leaderboard) is the public view.

```gdscript theme={null}
# A co-op run: every player cleared a dungeon rated 1450.
var deltas: Dictionary[SummerSession, int] = {}
for session in sessions:
var read := Summer.authority.ratings.load(session)
await read.get_result_or_completed_signal()
var expected := 1.0 / (1.0 + pow(10.0, (1450 - read.rating.value) / 400.0))
deltas[session] = roundi(32 * ((1.0 if timed else 0.0) - expected))
var outcomes: Dictionary[SummerSession, SummerAuthorityMatch.MatchOutcome] = {}
for session in sessions:
outcomes[session] = SummerAuthorityMatch.MATCH_OUTCOME_WIN if timed else SummerAuthorityMatch.MATCH_OUTCOME_LOSS
await Summer.authority.match.conclude(outcomes, "dungeon_complete", deltas).get_result_or_completed_signal()
```

## Methods

### leaderboard

```gdscript theme={null}
func leaderboard(queue: String) -> SummerLeaderboardOperation
```

Reads `queue`'s 50 highest-rated players, the same list every player of the Game can read, with no row marked as the caller. Use it for in-World displays such as a trophy wall in a hub. One read is in flight at a time: a second call for the same queue returns the pending operation, and a call for another queue fails with `operation_in_progress`. Fails with `rating_unavailable` for a queue that keeps no rating and `queue_not_found` for one the active Build does not declare.

| Parameter | Type | Default |
| - | - | - |
| `queue` | String | required |

**Returns:** [`SummerLeaderboardOperation`](/api-reference/gdscript/types/leaderboard-operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

### load

```gdscript theme={null}
func load(session: SummerSession) -> SummerRatingLoadOperation
```

Reads the current rating of the player behind `session` in the queue that admitted it. A second call for the same Session while the first is pending returns the same operation. Fails with `rating_unavailable` when that queue keeps no rating and `session_not_found` when the platform does not place the Session in this World. The Engine never retries; on a retryable failure, call again.

| Parameter | Type | Default |
| - | - | - |
| `session` | [`SummerSession`](/api-reference/gdscript/types/session) | required |

**Returns:** [`SummerRatingLoadOperation`](/api-reference/gdscript/types/rating-load-operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

***

What is live on the platform today: [platform capability status](/knowledge-base/source-status). Check availability at runtime before you offer a feature.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.