> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# RGPD PlayFab - Supprimer les données des joueurs

> Comment supprimer les données des joueurs PlayFab pour assurer la conformité au RGPD, notamment en utilisant DeleteMasterPlayerAccount pour supprimer des comptes ou en effaçant les données tout en conservant le compte.

# Supprimer les données des joueurs

Cet article décrit les deux principales façons de supprimer les données d'un joueur de PlayFab. Vous pouvez [supprimer l'intégralité du compte du joueur](#delete-a-player-account) ou simplement [supprimer les données sans supprimer le compte](#delete-account-data-without-deleting-the-account).

## Supprimer un compte de joueur

<Warning>
  La suppression d'un compte Master Player supprime de PlayFab toutes les données associées au joueur et équivaut à supprimer le joueur de votre jeu. L'API DeleteMasterPlayerAccount ne dispose d'aucun mécanisme permettant de supprimer de manière sélective les données associées au joueur. Consultez Suppression des données d'événements et Suppression des données personnalisées pour connaître les options permettant de supprimer des données tout en conservant le compte du joueur.
</Warning>

La suppression d'un compte Master Player et de ses données peut être effectuée à l'aide de l'API Admin [DeleteMasterPlayerAccount](https://learn.microsoft.com/en-us/rest/api/playfab/admin/account-management/delete-master-player-account), disponible dans tous nos SDK. Veuillez lire [Assurez-vous de trouver toutes les données](/fr/services/playfab/data-analytics/privacy-compliance/playfab-gdpr-deleting-and-exporting-player-data).

Lorsque vous envoyez une requête de suppression d'un joueur, PlayFab supprime rapidement les informations personnelles du joueur de notre système principal avant d'envoyer la requête à un agent de traitement de file d'attente, qui s'emploie à supprimer toutes les informations restantes sur le joueur des systèmes annexes et des sous-traitants.

Cette API renvoie immédiatement une réponse et fournit un `JobReceiptId`, que vous devez conserver dans vos archives. Le JobReceiptId constitue votre preuve que PlayFab a bien reçu la requête de suppression du joueur.

Une fois la suppression terminée, un e-mail est envoyé à l'adresse e-mail de notification configurée pour le titre. Il contient le même `JobReceiptId` que celui initialement renvoyé par l'API. L'achèvement de la tâche déclenche également un événement PlayStream.

À l'aide de notre fonctionnalité Webhook, vous pouvez vous inscrire pour recevoir ces événements sur le point de terminaison de votre choix et les traiter selon vos besoins. L'événement contient un blob JSON comportant le `JobReceiptId`.

L'exemple suivant montre comment utiliser l'API Admin avec le [SDK C#](/fr/services/playfab/sdks/c-sharp). Si vous souhaitez utiliser un autre SDK, sélectionnez-en un dans la liste des [SDK PlayFab](/fr/services/playfab/sdks/playfab-sdk-intro).

```csharp theme={null}
public static async void StartDeleteMasterPlayerExample(Action<PlayFabError> callback)
{
    var task = await PlayFabAdminAPI.DeleteMasterPlayerAccountAsync(new DeleteMasterPlayerAccountRequest()
    {
        PlayFabId = PlayFabId
    });

    if(task.Error != null)
    {
        callback(task.Error);
    }

    var jobReceiptId = task.Result.JobReceiptId;
    var AffectedTitleList = task.Result.TitleIds; 
    foreach (var title in AffectedTitleList)
    {
        Console.WriteLine(string.Format("Delete Player - Title Affected: {0}", title));
    }

}
```

<Note>
  Étant donné que cette suppression est *irréversible*, nous vous suggérons de confirmer avec votre joueur qu'il accepte la portée et l'impact de sa demande de suppression.
</Note>

Une fois l'action confirmée, utilisez le code suivant pour procéder à la suppression du compte Master Player.

```csharp theme={null}
//Make sure we are 100% sure we want to do this.
if ( confirm successful ) {
   //create a variable to store a list of titles the player has already been removed from.
   listOfTitlesRemovedFrom
   //Hang on to the receipts from successful deletes.
   listOfReceipts
   foreach(title in <all my titles>){

       //You only need to remove the Master Player once per namespace, so check that you have not
       //already performed this action in the namespace, or you will get an error that
       //the player is already queued for deletion.
       if(title not in listOfTitlesRemovedFrom){
           foreach(pfid in PlayFabIdList){

              //Note: you should do some error handling around this API call.
              response = title.DeleteMasterPlayerAccount(pfid)
              foreach(titleId in response.titleids){
                listOfTitlesRemoved.add(titleId)
              }
              listOfReceipts.add(response.jobreceiptid)
           }
       }
   }

   //Save listOfReceipts somewhere as proof of deletion.

}
```

## Supprimer les données du compte sans supprimer le compte

Utilisez cette liste pour vous aider à supprimer les données d'événements associées au compte d'un joueur.

### Supprimer les données d'événements

Les données d'événements comprennent les événements PlayStream et la télémétrie. Les données d'événements sont transactionnelles et sont générées à partir de l'activité des utilisateurs.

#### PlayFab Insights

PlayFab Insights est une solution entièrement gérée dans laquelle PlayFab stocke vos données d'événements en votre nom.

Vous pouvez utiliser l'API [DeleteMasterPlayerEventData](https://learn.microsoft.com/en-us/rest/api/playfab/admin/account-management/delete-master-player-event-data) pour supprimer les données Insights lorsque le joueur en fait la demande. Cela supprime uniquement les données stockées relatives au joueur dans PlayFab Insights, en laissant toutes les autres données intactes.

### Supprimer les données personnalisées

Les données personnalisées désignent une vaste catégorie de fonctionnalités qui vous permettent d'associer des données arbitraires à un joueur. PlayFab fournit des méthodes pour interagir avec ces données à partir de la logique de votre jeu, mais n'interprète ni ne comprend autrement ces données.

#### Données des joueurs héritées

Il est possible de modifier et de supprimer les différents types de données des joueurs à l'aide des API suivantes :

[UpdateUserData](https://learn.microsoft.com/en-us/rest/api/playfab/server/player-data-management/update-user-data), [UpdateUserInternalData](https://learn.microsoft.com/en-us/rest/api/playfab/server/player-data-management/update-user-internal-data), [UpdateUserReadOnlyData](https://learn.microsoft.com/en-us/rest/api/playfab/server/player-data-management/update-user-read-only-data), [UpdateUserPublisherData](https://learn.microsoft.com/en-us/rest/api/playfab/server/player-data-management/update-user-publisher-data), [UpdateUserPublisherInternalData](https://learn.microsoft.com/en-us/rest/api/playfab/server/player-data-management/update-user-publisher-internal-data), [UpdateUserPublisherReadOnlyData](https://learn.microsoft.com/en-us/rest/api/playfab/server/player-data-management/update-user-publisher-read-only-data)

Chacune de ces API accepte un paramètre **KeysToRemove**, qui prend une liste de clés de données du joueur à supprimer du profil du joueur.

#### Objet d'entité

Les [objets d'entité](/fr/services/playfab/live-service-management/game-configuration/entities/entity-objects) peuvent être supprimés à l'aide de l'API SetObjects. Dans le tableau Objects du corps de la requête, créez une entrée pour chaque objet à supprimer en spécifiant son ObjectName et en définissant DeleteObject sur true. Voici un exemple de corps de requête.

```HTTP theme={null}
{ 
    "Entity": { 
        "Id": "<The ID of the target entity>", 
        "Type": "<either ‘title_player_account’, ‘master_player_account’, or ‘character’>" 
    }, 
    "Objects": [ 
        { 
            "ObjectName": "<Name of object to delete>", 
            "DeleteObject": true 
        } 
    ] 
} 
```

#### Fichiers d'entité

Les [fichiers d'entité](/fr/services/playfab/live-service-management/game-configuration/entities/entity-files) sont supprimés à l'aide de l'API [DeleteFiles](https://learn.microsoft.com/en-us/rest/api/playfab/data/file/delete-files).


## Related topics

- [RGPD PlayFab - Suppression et exportation des données des joueurs](/fr/services/playfab/data-analytics/privacy-compliance/playfab-gdpr-deleting-and-exporting-player-data.md)
- [RGPD PlayFab - Exporter les données des joueurs](/fr/services/playfab/data-analytics/privacy-compliance/gdpr-exporting-player-data.md)
- [Documentation sur les données et l’analytique PlayFab](/fr/services/playfab/data-analytics/index.md)
- [Qu'est-ce que PlayFab ?](/fr/services/playfab/get-started/what-is-playfab.md)
- [Données des joueurs](/fr/services/playfab/player-progression/player-data/index.md)
