プレイヤー データの削除
この記事では、PlayFab からプレイヤーのデータを削除する 2 つの主な方法について説明します。プレイヤー アカウント全体を削除 するか、アカウントを削除せずにデータのみを削除 することができます。
プレイヤー アカウントを削除する
Master Player アカウントを削除すると、PlayFab からそのプレイヤーに関連するすべてのデータが削除され、これはゲームからプレイヤーを削除することと同義です。DeleteMasterPlayerAccount API には、プレイヤーに関連するデータを選択的に削除するメカニズムはありません。データを削除しつつプレイヤー アカウントを保持するオプションについては、[イベント データの削除] と [カスタム データの削除] を参照してください。
Master Player アカウントとそのデータの削除は、すべての SDK で利用可能な DeleteMasterPlayerAccount Admin API を使用して実現できます。すべてのデータを必ず見つけてください を必ずお読みください。
プレイヤーを削除するリクエストを行うと、PlayFab はコア システムからプレイヤーの個人情報を素早く削除してから、キュー処理エージェントにリクエストを送信します。エージェントは、補助システムおよびサブプロセッサーから、そのプレイヤーに関する残りの情報の削除を実行します。
この API はすぐに戻り値を返し、JobReceiptId を提供します。これは記録用に保存する必要があります。JobReceiptId は、PlayFab がプレイヤーを削除するリクエストを受け取ったことを検証するものです。
削除が完了すると、タイトル用に構成された通知メール アドレスにメールが送信されます。これには、API から最初に返された同じ JobReceiptId が含まれます。タスクの完了は PlayStream イベントもトリガーします。
Webhook 機能を使用して、選択したエンドポイントでこれらのイベントを受信するように登録し、必要に応じて処理できます。イベントには、JobReceiptId を含む JSON blob が含まれています。
以下の例は、C# SDK で Admin API を使用する方法を示しています。別の SDK を使用したい場合は、PlayFab SDKs のリストから選択してください。
この削除は 元に戻せない ため、プレイヤーが削除リクエストの範囲と影響に納得していることを確認することをお勧めします。
アクションが確認されたら、次のコードを使用して Master Player アカウントの削除を進めます。
アカウントを削除せずにアカウント データを削除する
プレイヤーのアカウントに関連するイベント データを削除するには、次のリストを参考にしてください。
イベント データの削除
イベント データには、PlayStream イベントとテレメトリが含まれます。イベント データはトランザクション型で、ユーザー アクティビティから生成されます。
PlayFab Insights
PlayFab Insights は、PlayFab がイベント データを代理で保存する完全マネージド ソリューションです。
プレイヤーが要求した場合、DeleteMasterPlayerEventData API を使用して Insights データを削除できます。これにより、PlayFab Insights 内のプレイヤーに関連して保存されたデータのみが削除され、他のすべてのデータはそのまま残ります。
カスタム データの削除
カスタム データは、プレイヤーに任意のデータを関連付けることを可能にする幅広いカテゴリの機能を指します。PlayFab はゲーム ロジックからデータを操作する方法を提供しますが、それ以外の方法でデータを解釈したり理解したりすることはありません。
レガシー プレイヤー データ
次の API を使用して、さまざまなタイプのプレイヤー データを編集および削除できます:
UpdateUserData、UpdateUserInternalData、UpdateUserReadOnlyData、UpdateUserPublisherData、UpdateUserPublisherInternalData、UpdateUserPublisherReadOnlyData
これらの各 API は KeysToRemove パラメーターを取り、これはプレイヤーのプロファイルから削除するプレイヤー データ キーのリストを受け取ります。
エンティティ オブジェクト
エンティティ オブジェクト は、SetObjects API を使用して削除できます。リクエスト ボディの Objects 配列内で、削除する各オブジェクトについて、ObjectName を指定し、DeleteObject を true に設定してエントリを作成します。以下はサンプル リクエスト ボディです。
エンティティ ファイル
エンティティ ファイル は、DeleteFiles API を使用して削除します。