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

# Get Files

> Retrieves file metadata from an entity's profile.



## OpenAPI

````yaml /services/playfab/api-references/rest/data/data.openapi.json post /File/GetFiles
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Data API
  description: >-
    Store arbitrary data associated with an entity. Objects are small (~1KB)
    JSON-compatible objects which are stored directly on the entity profile.
    Objects are made available for use in other PlayFab contexts, such as
    PlayStream events and CloudScript functions. Files can efficiently store
    data of any size or format. Both objects and files support a flexible
    permissions system to control read and write access by other entities.
  termsOfService: https://playfab.com/terms/
  contact:
    url: https://community.playfab.com/index.html
  license:
    name: Apache 2.0
    url: https://github.com/PlayFab/API_Specs/blob/master/LICENSE
servers:
  - url: https://{titleId}.playfabapi.com
    description: PlayFab title endpoint
    variables:
      titleId:
        default: your_title_id
        description: Your PlayFab title ID (hex).
security: []
tags:
  - name: File
    description: File Management APIs
  - name: Object
    description: Entity Object Management APIs
paths:
  /File/GetFiles:
    post:
      tags:
        - File
      summary: Get Files
      description: Retrieves file metadata from an entity's profile.
      operationId: GetFiles
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetFilesRequest'
        description: >-
          Returns URLs that may be used to download the files for a profile for
          a limited length of time. Only returns files that have been
          successfully uploaded, files that are still pending will either return
          the old value, if it exists, or nothing.
      responses:
        '200':
          $ref: '#/components/responses/GetFilesResponse'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    GetFilesRequest:
      description: >-
        Returns URLs that may be used to download the files for a profile for a
        limited length of time. Only returns files that have been successfully
        uploaded, files that are still pending will either return the old value,
        if it exists, or nothing.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        Entity:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The entity to perform this action on.
      required:
        - Entity
      example:
        Entity:
          Id: ID
          Type: title_player_account
          TypeString: title_player_account
    EntityKey:
      description: >-
        Combined entity type and ID structure which uniquely identifies a single
        entity.
      type: object
      properties:
        Id:
          description: Unique ID of the entity.
          type: string
        Type:
          description: >-
            Entity type. See
            https://learn.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types
          type: string
      required:
        - Id
    GetFilesResponse:
      type: object
      properties:
        Entity:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The entity id and type.
        Metadata:
          allOf:
            - $ref: '#/components/schemas/GetFileMetadata'
          description: Collection of metadata for the entity's files
        ProfileVersion:
          description: >-
            The current version of the profile, can be used for concurrency
            control during updates.
          type: number
          x-actualtype: int32
      required:
        - ProfileVersion
      example:
        ProfileVersion: 5
        Metadata:
          game_settings:
            FileName: game_settings
            DownloadUrl: https://...
            Size: 5683
            Checksum: 97129sdlkj9129
            LastModified: '2017-12-05T17:36:05'
        Entity:
          Id: ID
          Type: title_player_account
          TypeString: title_player_account
    ApiErrorWrapper:
      description: The basic wrapper around every failed API response
      type: object
      properties:
        code:
          description: Numerical HTTP code
          type: integer
        status:
          description: String HTTP code
          type: string
        error:
          description: Playfab error code
          type: string
        errorCode:
          description: Numerical PlayFab error code
          type: integer
        errorMessage:
          description: Description for the PlayFab errorCode
          type: string
        errorDetails:
          description: Detailed description of individual issues with the request object
          type: object
      required:
        - code
        - errorCode
    GetFileMetadata:
      type: object
      properties:
        Checksum:
          description: >-
            Checksum value for the file, can be used to check if the file on the
            server has changed.
          type: string
        DownloadUrl:
          description: Download URL where the file can be retrieved
          type: string
        FileName:
          description: Name of the file
          type: string
        LastModified:
          description: Last UTC time the file was modified
          type: string
        Size:
          description: Storage service's reported byte count
          type: number
          x-actualtype: int32
      required:
        - Size
        - LastModified
  responses:
    GetFilesResponse:
      description: ''
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                type: integer
                description: >-
                  The Http status code. If X-ReportErrorAsSuccess header is set
                  to true, this will report the actual http error code.
              status:
                type: string
                description: The Http status code as a string.
              data:
                $ref: '#/components/schemas/GetFilesResponse'
            example:
              code: 200
              status: OK
              data:
                ProfileVersion: 5
                Metadata:
                  game_settings:
                    FileName: game_settings
                    DownloadUrl: https://...
                    Size: 5683
                    Checksum: 97129sdlkj9129
                    LastModified: '2017-12-05T17:36:05'
                Entity:
                  Id: ID
                  Type: title_player_account
                  TypeString: title_player_account
    ApiErrorWrapper:
      description: This is the outer wrapper for all responses with errors
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorWrapper'
  securitySchemes:
    EntityToken:
      type: apiKey
      in: header
      name: X-EntityToken
      description: >-
        This API requires an Entity Session Token, available from the Entity
        GetEntityToken method.

````

## Related topics

- [Get Files](/services/playfab/api-references/rest/data/file/get-files.md)
- [PFDataGetFilesAsync](/services/playfab/api-references/c/pfdata/functions/pfdatagetfilesasync.md)
- [IXtfFileIOClient::GetFileInfo Method](/reference/tools/xtf/xtffileio/classes/IXtfFileIOClient/methods/getfileinfo-ixtffileioclient-xtffileio-xbox-microsoft-m.md)
- [IXtfFileIOClient::GetFileAttributes Method](/reference/tools/xtf/xtffileio/classes/IXtfFileIOClient/methods/getfileattributes-ixtffileioclient-xtffileio-xbox-microsoft-m.md)
- [IXtfFileIOClient::GetFileSize Method](/reference/tools/xtf/xtffileio/classes/IXtfFileIOClient/methods/getfilesize-ixtffileioclient-xtffileio-xbox-microsoft-m.md)
