Method: recall.linkPersona

指定されたリコール セッション ID にエンコードされた PGS プレーヤー プリンシパルをゲーム内アカウントに関連付けます。

HTTP リクエスト

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

リクエスト本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "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.
}
フィールド
sessionId

string

必須。サーバーで生成された、PGS プレーヤー、Google ユーザー、アプリケーションを識別するために必要なすべての情報をエンコードした、不透明な文字列。

persona

string

必須。ゲーム内アカウントの固定 ID。同じペルソナを別のゲームに再利用しないでください。

token

string

必須。作成するトークンの値。Play Games に対しては不透明で、不安定(鍵のローテーションで暗号化)であると想定されます。

cardinalityConstraint

enum (RecallTokensCardinalityConstraint)

必須。ゲーム範囲内のプレーヤーにペルソナをリンクする際に監視するカーディナリティ制約。

共用体フィールド expiration。オプションのトークンの有効期限または有効期間。expiration は次のいずれかになります。
expireTime

string (Timestamp format)

入力のみの有効期限(省略可)。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

ttl

string (Duration format)

入力のみの(省略可)有効期間(TTL)

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

レスポンスの本文

ペルソナのリンク試行の結果。

成功した場合、レスポンスの本文には次の構造のデータが含まれます。

JSON 表現
{
  "state": enum (State)
}
フィールド
state

enum (State)

出力専用。ペルソナのリンク試行の状態。

認可スコープ

次の OAuth スコープが必要です。

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

詳しくは、OAuth 2.0 の概要をご覧ください。

RecallTokensCardinalityConstraint

ゲーム範囲内のプレーヤーにペルソナをリンクする際に監視するカーディナリティ制約。

列挙型
ONE_PERSONA_TO_ONE_PLAYER

ゲーム内ペルソナと Play Games サービス プレーヤーの間の 1 対 1 のカーディナリティ。

リンク処理の終了時点で、プレーヤーとペルソナはアプリケーションの範囲内に収める必要があります。

この制約の指定時に新しいリンクが作成されるかどうかは、選択した ConflictingLinksResolutionPolicy によって決まります。

  • KEEP_EXISTING_LINKS が指定され、指定されたペルソナがすでに別のプレーヤーにリンクされている場合、またはプレーヤーがすでに別のペルソナにリンクされている場合、新しいリンクは作成されず、既存のリンクはそのまま残ります。

  • CREATE_NEW_LINK が指定され、指定されたペルソナがすでに別のプレーヤーにリンクされている場合、またはプレーヤーがすでに別のペルソナにリンクされている場合は、新しく作成されるリンクを優先して古いリンクが削除されます。

ConflictingLinksResolutionPolicy

ペルソナをプレーヤーにリンクした結果、指定されたカーディナリティ制約に違反する可能性がある場合に適用する解決ポリシー。

列挙型

ペルソナのリンク試行の状態。

列挙型
PERSONA_OR_PLAYER_ALREADY_LINKED リクエストで指定されたリンクは作成されませんでした。すでに既存のリンクが作成されると、新しいリンクが作成されると指定された RecallTokensCardinalityConstraint に違反するためです。