<!--
{
  "availability" : [
    "iOS: 5.0.0 -",
    "iPadOS: 5.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.8.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 3.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "GameKit",
  "identifier" : "/documentation/GameKit/GKTurnBasedParticipant",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "GameKit"
    ],
    "preciseIdentifier" : "c:objc(cs)GKTurnBasedParticipant"
  },
  "title" : "GKTurnBasedParticipant"
}
-->

# GKTurnBasedParticipant

A participant in a turn-based match.

```
class GKTurnBasedParticipant
```

## Overview

A `GKTurnBasedParticipant` represents a player in a turn-based match that Game Center uses to store and forward match data. In your game, use participant objects to show information about opponents during gameplay.

You get `GKTurnBasedParticipant` objects from the [`participants`](/documentation/GameKit/GKTurnBasedMatch/participants) property of a [`GKTurnBasedMatch`](/documentation/GameKit/GKTurnBasedMatch) object that GameKit passes to [`GKTurnBasedEventListener`](/documentation/GameKit/GKTurnBasedEventListener) protocol methods. If a participant represents a filled slot in the match, GameKit sets the [`player`](/documentation/GameKit/GKTurnBasedParticipant/player) property and the [`status`](/documentation/GameKit/GKTurnBasedParticipant/status-swift.property) accordingly. Get more information about a participant, such as the participant’s name and avatar, through the [`player`](/documentation/GameKit/GKTurnBasedParticipant/player) property.

Before you end a match, you must set the [`matchOutcome`](/documentation/GameKit/GKTurnBasedParticipant/matchOutcome) property for every participant in the match.

### Subclassing

You may not subclass this class.

## Topics

### Retrieving Participant Details

[`lastTurnDate`](/documentation/GameKit/GKTurnBasedParticipant/lastTurnDate)

The date and time that this participant last took a turn in the game.

[`timeoutDate`](/documentation/GameKit/GKTurnBasedParticipant/timeoutDate)

The date and time that the participant’s turn timed out.

[`player`](/documentation/GameKit/GKTurnBasedParticipant/player)

The player object containing the participant details.

[`status`](/documentation/GameKit/GKTurnBasedParticipant/status-swift.property)

The status of the participant.

[`GKTurnBasedParticipant.Status`](/documentation/GameKit/GKTurnBasedParticipant/Status-swift.enum)

The state the participant is in during the match.

[`playerID`](/documentation/GameKit/GKTurnBasedParticipant/playerID)

The player identifier for this participant.

### Setting Participant Outcomes

[`matchOutcome`](/documentation/GameKit/GKTurnBasedParticipant/matchOutcome)

The conclusion or results of a participant in a match.

[`GKTurnBasedMatch.Outcome`](/documentation/GameKit/GKTurnBasedMatch/Outcome)

The state of a participant when they forfeit a match or when a match ends.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)