> ## 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.match

> Typed authoritative Match operations.

**Class:** `SummerAuthorityMatch` · **Inherits:** RefCounted · **Access:** `Summer.authority.match`

Typed authoritative Match operations.

Authority-only facade for Match settlement and lifecycle operations. It resolves the trusted World binding internally; game code supplies immutable [`SummerSession`](/api-reference/gdscript/types/session) capabilities and never peer IDs, supervisor routes, credentials, or runtime-role checks.

## Methods

### complete\_delivery

```gdscript theme={null}
func complete_delivery() -> SummerMatchDeliveryCompletionOperation
```

Finalizes the current persistent or multi-Match delivery phase after every required delivery plan is terminal. Match-bound Sessions end, World-bound Sessions remain admitted, and the World returns to serving. Match-scoped Worlds use [`Summer.authority.world.complete()`](/api-reference/gdscript/authority/world#complete).

**Returns:** [`SummerMatchDeliveryCompletionOperation`](/api-reference/gdscript/types/match-delivery-completion-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).

### conclude

```gdscript theme={null}
func conclude(outcomes: Dictionary[SummerSession, SummerAuthorityMatch.MatchOutcome], reason: String = "match_complete", rating_deltas: Dictionary[SummerSession, int] = {}) -> SummerMatchConclusionOperation
```

Commits one exact outcome for every trusted outcome-eligible participant and returns the typed durable settlement. Spectators, ineligible participants, raw identifiers, forged same-ID Sessions, and divergent retries are rejected.
`rating_deltas` reports the game's own rating movement for each player, within ±1000, on a queue declared with `"ratingSystemRef": "authority_v1"`; see [`SummerAuthorityRatings`](/api-reference/gdscript/authority/ratings). Such a queue requires a delta for every participant, and every other queue rejects any delta: the platform refuses the result with `invalid_request` and nothing is committed, so the authority may conclude again with corrected arguments. Keys must be Sessions named in `outcomes`.
On a queue that declares teams, the platform scores the sides matchmaking formed from each player's [`SummerParticipant.team`](/api-reference/gdscript/types/participant#team); the outcomes name players, never teams. Give every member of one team the same outcome.

| Parameter | Type | Default |
| - | - | - |
| `outcomes` | Dictionary\[[`SummerSession`](/api-reference/gdscript/types/session), [`SummerAuthorityMatch.MatchOutcome`](/api-reference/gdscript/authority/match#matchoutcome)] | required |
| `reason` | String | `"match_complete"` |
| `rating_deltas` | Dictionary\[[`SummerSession`](/api-reference/gdscript/types/session), int] | `{}` |

**Returns:** [`SummerMatchConclusionOperation`](/api-reference/gdscript/types/match-conclusion-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).

### get\_participant

```gdscript theme={null}
func get_participant(session: SummerSession) -> SummerParticipant const
```

Returns the verified participant for a Session this authority admitted: its role, outcome eligibility, Session lifetime and team. Returns `null` for any other Session object, including a copy with the same ID.

```gdscript theme={null}
func _on_session_joined(session: SummerSession) -> void:
var participant := Summer.authority.match.get_participant(session)
if participant and participant.team >= 0:
spawn_on_side(session, participant.team)
```

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

**Returns:** [`SummerParticipant`](/api-reference/gdscript/types/participant)

## Enums and constants

### MatchOutcome

| Name | Value | Description |
| - | - | - |
| `MATCH_OUTCOME_WIN` | `0` | The participant won. |
| `MATCH_OUTCOME_LOSS` | `1` | The participant lost. |
| `MATCH_OUTCOME_DRAW` | `2` | The participant drew. |
| `MATCH_OUTCOME_ABANDON` | `3` | The participant abandoned the Match. |

***

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.