> ## 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 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 de joueur principal (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 façon 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 de joueur principal et de ses données peut se faire à l'aide de l'API d'administration [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-CA/services/playfab/data-analytics/privacy-compliance/playfab-gdpr-deleting-and-exporting-player-data).

Lorsque vous faites une demande de suppression d'un joueur, PlayFab retire rapidement les renseignements personnels du joueur de notre système principal avant d'envoyer la demande à un agent de traitement de file d'attente, qui s'emploie à retirer toute information restante sur le joueur des systèmes auxiliaires et des sous-traitants.

Cette API retourne une réponse immédiatement et fournit un `JobReceiptId`, que vous devriez conserver dans vos dossiers. Le JobReceiptId constitue votre confirmation que PlayFab a reçu la demande de suppression du joueur.

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

À l'aide de notre fonctionnalité Webhook, vous pouvez vous inscrire pour recevoir ces événements sur un point de terminaison de votre choix et les traiter au besoin. L'événement contient un objet JSON qui comprend le `JobReceiptId`.

L'exemple suivant montre comment utiliser l'API d'administration avec le [SDK C#](/fr-CA/services/playfab/sdks/c-sharp). Si vous souhaitez utiliser un autre SDK, choisissez-en un dans la liste des [SDK PlayFab](/fr-CA/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>
  Comme cette suppression est *irréversible*, nous vous suggérons de confirmer avec votre joueur qu'il est à l'aise avec 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 de joueur principal.

```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 par 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 le demande. Cela supprime uniquement les données liées au joueur stockées 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 de joueur héritées

Il est possible de modifier et de supprimer les différents types de données de joueur à 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 reçoit une liste de clés de données de joueur à supprimer du profil du joueur.

#### Objet d'entité

Les [objets d'entité](/fr-CA/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 que vous voulez supprimer en précisant son ObjectName et en réglant DeleteObject à 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-CA/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-CA/services/playfab/data-analytics/privacy-compliance/playfab-gdpr-deleting-and-exporting-player-data.md)
- [RGPD PlayFab - Exporter les données des joueurs](/fr-CA/services/playfab/data-analytics/privacy-compliance/gdpr-exporting-player-data.md)
- [Documentation sur les données et l'analytique PlayFab](/fr-CA/services/playfab/data-analytics/index.md)
- [Qu'est-ce que PlayFab?](/fr-CA/services/playfab/get-started/what-is-playfab.md)
- [Données des joueurs](/fr-CA/services/playfab/player-progression/player-data/index.md)
