question

laurentg avatar image
laurentg asked

Official way to determine that deletion went through the deletion queued following DeleteMasterPlayerAccount?

Hi,

how would one proceed to determine, from the client application, when a player deleted with DeleteMasterPlayerAccount has finally gone through the deletion queue?

Would GetAccountInfo() return different error codes depending on whether the account is:
- still in the queue

- gone through the queue and completely deleted

?

If it does not, which other client-side functions would be able to provide this information?

Note that this is for the legacy API.

I plan to make a few empirical tests on Monday but obviously relying on official information rather than guesswork would be much preferable.

Thanks in advance!

Regards,
Laurent

Account Management
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
Gosen Gao avatar image
Gosen Gao answered

When you make a request to delete a player, PlayFab will quickly remove the player's personal information from our core system before sending the request to a queue processing agent, which works to remove any remaining information about the player from ancillary systems and sub-processors. So the account information cannot be obtained through API GetAccountInfo.

If your intent is to re-use the credentials, you can get the deletion info through Login APIs, when you trying to login an account that is being deleted with original credentials, this error will show up. And if the deletion is completed, the user will be able to login with original credentials again.

{
    "code": 400,
    "status": "BadRequest",
    "error": "AccountDeleted",
    "errorCode": 1322,
    "errorMessage": "The account is unavailable, because it is being deleted."
}

If you want to implement a system that your players can check if their accounts have been deleted, then you can get the deletion info from PlayStream event. Also, once the delete is complete, an email will be sent to the notification email address configured for the title. It will contain the same JobReceiptId, which was initially returned by the API.

4 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

laurentg avatar image laurentg commented ·

Hi Gao, thank you for your reply.

We do not intend on reusing the account.

Our intent is simply to provide the player with a notification that their account was fully deleted (as per Apple's policy requirements in this matter:

https://developer.apple.com/support/offering-account-deletion-in-your-app).

Calling Login would work but that would impose a weird flow since we automatically re-login players who come back after deletion so they most likely would already have obtained a new account by the time the Login calls succeeds with the previously deleted credentials.

Ideally, I would prefer to detect the deletion from within the application itself but I will be looking at the PlayStream documentation. It looks like we should be able to setup an automated rule that waits on the PlayStream deletion event then pushes a notification to the user.

Update:
It seems we are unable to use the event `title_deleted_master_player` in our PlayStream rules, the event is not present in the list of available events for our title.
Is there any setup needed for the event to be available?

0 Likes 0 ·
laurentg avatar image laurentg laurentg commented ·

I actually tried to setup a PlayStream Rule which would react to the `title_deleted_master_player` event but I cannot enter that event in the corresponding field, it does not seem to be available for our title.

0 Likes 0 ·
image-1486.png (61.0 KiB)
Gosen Gao avatar image Gosen Gao laurentg commented ·

Since the deletion process has deleted all data associated with the master player account including the contact email and notification info, so the Rule cannot meet your require. Event title_deleted_master_player - PlayFab | Microsoft Docs have two parameters that related to the player which are PlayerId and ReceiptId, you may need to use Webhooks - PlayFab | Microsoft Docs to handle those info in your custom server and let players check the deletion stats using PlayerId and ReceiptId.

1 Like 1 ·
Show more comments

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.