Method: recall.linkPersona

Verknüpfe das PGS-Hauptkonto, das in der angegebenen Recall-Sitzungs-ID codiert ist, mit einem In-Game-Konto

HTTP-Anfrage

POST https://games.googleapis.com/games/v1/recall:linkPersona

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "sessionId": string,
  "persona": string,
  "token": string,
  "cardinalityConstraint": enum (RecallTokensCardinalityConstraint),
  "conflictingLinksResolutionPolicy": enum (ConflictingLinksResolutionPolicy),

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
Felder
sessionId

string

Erforderlich. Intransparenter, vom Server generierter String, der alle erforderlichen Informationen codiert, die zur Identifizierung des Play-Spieldienste-Players, Google-Nutzers und der App erforderlich sind.

persona

string

Erforderlich. Stabile ID des In-Game-Kontos. Verwenden Sie dieselbe Persona nicht für verschiedene Spiele.

token

string

Erforderlich. Wert des zu erstellenden Tokens. Für Play Spiele intransparent und vermutlich nicht stabil (mit Schlüsselrotation verschlüsselt).

cardinalityConstraint

enum (RecallTokensCardinalityConstraint)

Erforderlich. Kardinalitätsbeschränkung, die beim Verknüpfen einer Persona mit einem Spieler im Umfang eines Spiels beachtet werden muss.

Union-Feld expiration. Optionale Ablaufzeit oder Gültigkeitsdauer des Tokens. Für expiration ist nur einer der folgenden Werte zulässig:
expireTime

string (Timestamp format)

Nur Eingabe. Optionale Ablaufzeit.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Nur Eingabe. Optionale Gültigkeitsdauer.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

Antworttext

Ergebnis eines Versuchs, eine Persona zu verknüpfen.

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

JSON-Darstellung
{
  "state": enum (State)
}
Felder
state

enum (State)

Nur Ausgabe. Status eines Versuchs, eine Persona zu verknüpfen.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/androidpublisher

Weitere Informationen finden Sie in der Übersicht über OAuth 2.0.

RecallTokensCardinalityConstraint

Kardinalitätsbeschränkung, die beim Verknüpfen einer Persona mit einem Spieler im Umfang eines Spiels beachtet werden muss.

Enums
ONE_PERSONA_TO_ONE_PLAYER

1:1-Kardinalität zwischen In-Game-Personas und Spielern der Play-Spieldienste.

Am Ende des Verknüpfungsvorgangs sollte nur ein Eintrag für den Spieler und die Persona im Geltungsbereich der Anwendung verbleiben.

Ob eine neue Verknüpfung erstellt wird, wenn diese Einschränkung angegeben wird, hängt vom ausgewählten ConflictingLinksResolutionPolicy ab:

  • Wenn KEEP_EXISTING_LINKS angegeben ist und die angegebene Persona bereits mit einem anderen Spieler verknüpft ist oder der Player bereits mit einer anderen Persona verknüpft ist, wird kein neuer Link erstellt und die bereits vorhandenen Links bleiben unverändert.

  • Wenn CREATE_NEW_LINK angegeben ist und die angegebene Persona bereits mit einem anderen Player oder der Player bereits mit einer anderen Persona verknüpft ist, werden die älteren Links zugunsten des neu erstellten Links entfernt.

ConflictingLinksResolutionPolicy

Lösungsrichtlinie, die angewendet wird, wenn die Verknüpfung einer Persona mit einem Spieler zum Verstoß gegen die angegebene Kardinalitätsbeschränkung führen würde.

Enums

Status

Status eines Verknüpfungsversuchs mit einer Persona.

Enums
PERSONA_OR_PLAYER_ALREADY_LINKED Der in der Anfrage angegebene Link wurde nicht erstellt, da bereits vorhandene Links dazu führen würden, dass der neue Link bei Erstellung gegen die angegebene RecallTokensCardinalityConstraint verstößt.