> ## 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, notamment les statistiques, l'inventaire, les achats et l'historique des événements.

# Exporter des données

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

## Exporter les données du compte du joueur

Lorsque vous faites une demande d'exportation des données d'un joueur, la demande 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, comme :

* **Statistiques**
* **Données personnalisées**
* **Inventaire**
* \**Achats* \*
* **Éléments créés par les joueurs/contenu généré par les utilisateurs (UGC)**
* **Historique des transactions**
* **Soldes de monnaie virtuelle**
* **Personnages**
* **Appartenances à des groupes**
* **Données de l'é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-CA/services/playfab/data-analytics/privacy-compliance/playfab-gdpr-deleting-and-exporting-player-data), qui explique comment vous assurer d'avoir tous les PlayFabIds d'un joueur.

Cette API retourne immédiatement un `JobReceiptId`, que vous devriez conserver dans vos dossiers pour référence ultérieure. Il peut s'écouler un certain temps avant que l'exportation soit disponible pour le téléchargement.

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

L'achèvement de la tâche déclenche aussi un [événement PlayStream `player_data_exported`](/fr-CA/services/playfab/api-references/events/PlayerIdentity/player-data-exported). L'événement contient le `JobReceiptId` comme 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-CA/services/playfab/live-service-management/service-gateway/automation/cloudscript-af/quickstart#azure-functions-in-automation-rules) ou des [Webhooks](/fr-CA/services/playfab/data-analytics/acting-data/webhooks-overview), vous pouvez vous inscrire pour recevoir ces événements sur un point de terminaison de votre choix et les traiter au besoin.

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 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 sera disponible pendant un maximum de 30 jours après la fin de l'exportation. Passé ce délai, le fichier sera supprimé et vous devrez lancer une *nouvelle* demande d'exportation.
</Note>

## Format des données exportées

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

| Chemin du fichier | Description |
| - | - |
| /master\_player\_export.json | <p>Un fichier JSON qui contient 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-CA/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-CA/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 est 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 au sujet 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 est l'ID du titre.</p><p>Chaque sous-répertoire contient un ou plusieurs fichiers `event-history`, selon la quantité de données que le joueur possède dans le titre donné. Les fichiers contiennent les événements sérialisés en objets JSON, 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 de joueur 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) (mentionnée dans la section Exportation des données PlayFab), toutes les propriétés des données de joueur se trouvent dans le fichier master\_player\_export.json à la racine de l'archive ZIP :

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

Ces valeurs peuvent aussi être récupérées au moyen d'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 retournent une réponse immédiatement. Toutefois, de par la conception de cette fonctionnalité, il faudra appeler l'API appropriée selon le type précis de données 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 chemin JSONPath : **\$.CustomObjects**

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

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

Les objets d'entité peuvent aussi être récupérés au moyen de 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, l'utilisation des API dédiées peut être plus simple, car elles retournent les objets immédiatement. L'inconvénient, toutefois, est que l'API devra ê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 est l'ID d'entité title\_player\_account.
</Note>

Les fichiers d'entité peuvent aussi ê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 peut servir à télécharger le fichier directement.


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