> ## 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 - Exporter les données des joueurs

> Comment exporter les données d'un joueur PlayFab pour assurer la conformité au RGPD à l'aide d'ExportMasterPlayerData, y compris les statistiques, l'inventaire, les achats et l'historique des événements.

# Exporter des données

Cet article explique comment exporter des données de joueurs et d'événements à partir de PlayFab.

## Exporter les données du compte du joueur

Lorsque vous envoyez une requête d'exportation des données d'un joueur, la requête est envoyée à un **agent de traitement de file d'attente** (comme pour la suppression d'un joueur).

L'API [ExportMasterPlayerData](https://learn.microsoft.com/en-us/rest/api/playfab/admin/account-management/export-master-player-data) exporte toutes les données associées au `PlayFabId` donné, y compris les données de tous vos titres, telles que :

* **Statistiques**
* **Données personnalisées**
* **Inventaire**
* \**Achats* \*
* **Objets créés par les joueurs/UGC**
* **Historique des transactions**
* **Soldes de monnaie virtuelle**
* **Personnages**
* **Appartenances aux groupes**
* **Données d'éditeur**
* **Données d'identification**
* **Liaisons de comptes**
* **Liste d'amis**
* **Historique des événements PlayStream**.

Veuillez lire [Assurez-vous de trouver toutes les données](/fr/services/playfab/data-analytics/privacy-compliance/playfab-gdpr-deleting-and-exporting-player-data), qui explique comment vous assurer de disposer de tous les PlayFabIds d'un joueur.

Cette API renvoie immédiatement un `JobReceiptId`, que vous devez conserver dans vos archives pour référence ultérieure. L'exportation peut mettre un certain temps avant d'être disponible au téléchargement.

Une fois l'exportation terminée, un e-mail contenant le lien de téléchargement de l'exportation est envoyé à l'adresse e-mail de notification configurée pour le titre.

L'achèvement de la tâche déclenche également un [événement PlayStream `player_data_exported`](/fr/services/playfab/api-references/events/PlayerIdentity/player-data-exported). L'événement contient le `JobReceiptId` en tant que propriété, ainsi que la propriété `ExportDownloadUrl`, qui donne accès aux données exportées. À l'aide des [règles d'automatisation avec Azure Functions](/fr/services/playfab/live-service-management/service-gateway/automation/cloudscript-af/quickstart#azure-functions-in-automation-rules) ou des [Webhooks](/fr/services/playfab/data-analytics/acting-data/webhooks-overview), vous pouvez vous inscrire pour recevoir ces événements sur le point de terminaison de votre choix et les traiter selon vos besoins.

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 ExportMasterPlayerExample(Action<PlayFabError> callback)
{
    var task = await PlayFabAdminAPI.ExportMasterPlayerDataAsync(new ExportMasterPlayerDataRequest()
    {
        PlayFabId = PlayFabId
    });

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

    var jobReceiptId = task.Result.JobReceiptId;

    Console.WriteLine(string.Format("Export Player Request Received - Receipt: {0}", jobReceiptId));

    callback(null);
}
```

<Note>
  L'URL reste disponible pendant 30 jours au maximum après la fin de l'exportation. Passé ce délai, le fichier est supprimé et vous devez lancer une *nouvelle* requête d'exportation.
</Note>

## Format des données exportées

Les données exportées sont empaquetées dans une archive ZIP dont le nom contient le `JobReceiptId` et l'heure de l'exportation. L'archive contient plusieurs fichiers organisés selon une arborescence de répertoires.

| Chemin du fichier | Description |
| - | - |
| /master\_player\_export.json | <p>Fichier JSON contenant les données du joueur enregistrées dans PlayFab. Il comprend les données de chacun des titres auxquels le joueur participe.</p><p>Le schéma du document JSON est fourni sous forme de spécification OpenAPI. Consultez l'objet `MasterPlayerDataExport` dans `https://<your_title_id>.playfabapi.com/Swagger/MasterPlayerDataExport.swagger.json`</p> |
| /CustomFiles/MasterPlayerFiles/\* | Contient les [fichiers d'entité](/fr/services/playfab/live-service-management/game-configuration/entities/entity-files) personnalisés associés à l'entité `master_player_account` du joueur. |
| /CustomFiles/TitlePlayerFiles/\<TitlePlayerAccountId>/\* | <p>Contient les [fichiers d'entité](/fr/services/playfab/live-service-management/game-configuration/entities/entity-files) personnalisés associés aux entités `title_player_account` du joueur.</p><p>Les fichiers sont organisés en un sous-répertoire par titre auquel le joueur participe. Le nom de chaque sous-répertoire correspond à l'ID d'entité `title_player_account` du joueur dans le titre.</p> |
| /TitlePlayerEvents/\<TitleId>/event-history\_1.jsonl <br />...<br /> /TitlePlayerEvents/\<TitleId>/event-history\_\<N>.jsonl | <p>Les événements PlayStream et Telemetry enregistrés concernant le joueur.</p><p>Les fichiers sont organisés en un sous-répertoire par titre auquel le joueur participe. Le nom de chaque sous-répertoire correspond à l'ID du titre.</p><p>Chaque sous-répertoire contient un ou plusieurs fichiers `event-history`, selon la quantité de données dont dispose le joueur dans le titre concerné. Les fichiers contiennent les événements sérialisés en objets JSON, à raison d'un événement par ligne.</p> |

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

PlayFab fournit plusieurs types de données d'événements : les données personnalisées, les objets d'entité et les fichiers d'entité.

### Exporter 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

Lorsque vous utilisez l'API [ExportMasterPlayerData](https://learn.microsoft.com/en-us/rest/api/playfab/admin/account-management/export-master-player-data) (comme indiqué dans la section Exportation des données PlayFab), toutes les propriétés des données des joueurs se trouvent dans le fichier master\_player\_export.json à la racine de l'archive ZIP :

* Les données « Publisher » se trouvent au JSONPath : \$.PublisherData
* Les données par titre se trouvent au JSONPath : \$.Titles\[\*].CustomData

Ces valeurs peuvent également être récupérées via des API « get » dédiées, si vous n'avez besoin d'exporter que ces valeurs. L'avantage des API dédiées est qu'elles renvoient une réponse immédiatement. Toutefois, de par la conception de cette fonctionnalité, il faut appeler l'API appropriée en fonction du type de données spécifique requis :

GetUserData, GetUserInternalData, GetUserReadOnlyData, GetUserPublisherData, GetUserPublisherInternalData, GetUserPublisherReadOnlyData

### Exporter les objets d'entité

Lorsque vous utilisez l'API [ExportMasterPlayerData](https://learn.microsoft.com/en-us/rest/api/playfab/admin/account-management/export-master-player-data), tous les objets d'entité se trouvent dans le fichier **master\_player\_export.json** à la racine de l'archive ZIP :

Pour les objets d'entité **master\_player\_account**, au JSONPath : **\$.CustomObjects**

Pour les objets d'entité **title\_player\_account**, au JSONPath : **\$.Titles\[\*].CustomObjects**

Pour les objets d'entité de personnage, au JSONPath : **\$.Titles\[*].Characters\[*].CustomObjects**

Les objets d'entité peuvent également être récupérés via l'API [GetObjects](https://learn.microsoft.com/en-us/rest/api/playfab/data/object/get-objects). Si vous savez déjà quels objets d'entités vous recherchez, il peut être plus simple d'utiliser les API dédiées, car elles renvoient les objets immédiatement. L'inconvénient est toutefois que l'API doit être appelée séparément pour l'entité **master\_player\_account** du joueur, pour chaque entité **title\_player\_account** et pour chaque entité de personnage.

### Exporter les fichiers d'entité

Lorsque vous utilisez l'API [ExportMasterPlayerData](https://learn.microsoft.com/en-us/rest/api/playfab/admin/account-management/export-master-player-data), tous les fichiers d'entité associés au joueur sont ajoutés tels quels à l'archive ZIP dans le répertoire /CustomFiles/, plus précisément :

Pour l'entité **master\_player\_account** du joueur, les fichiers se trouvent sous /CustomFiles/MasterPlayerFiles/\*

Pour **title\_player\_account**, les fichiers se trouvent sous /CustomFiles/TitlePlayerFiles/\<TitlePlayerAccountId>/\*

<Note>
  Il existe un sous-répertoire pour chaque entité, dont le nom correspond à l'ID d'entité title\_player\_account.
</Note>

Les fichiers d'entité peuvent également être téléchargés directement. Appelez d'abord l'API [GetFiles](https://learn.microsoft.com/en-us/rest/api/playfab/data/file/get-files) pour obtenir les métadonnées des fichiers de l'entité. Chaque document de métadonnées de fichier comprend une propriété DownloadUrl, qui permet de télécharger directement le fichier.


## 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 - Supprimer les données des joueurs](/fr/services/playfab/data-analytics/privacy-compliance/gdpr-deleting-player-data.md)
- [Documentation sur les données et l’analytique PlayFab](/fr/services/playfab/data-analytics/index.md)
- [Exporter les données du joueur principal](/fr/services/playfab/api-references/rest/admin/account-management/export-master-player-data.md)
- [Qu'est-ce que PlayFab ?](/fr/services/playfab/get-started/what-is-playfab.md)
