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

# Update Player Statistics

> Updates the values of the specified title-specific statistics for the user

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| DuplicateStatisticName | 1253 |
| ProductDisabledForTitle | 1609 |
| StatisticCountLimitExceeded | 1203 |
| StatisticNameConflict | 1196 |
| StatisticNotFound | 1195 |
| StatisticValueAggregationOverflow | 1308 |
| StatisticVersionClosedForWrites | 1197 |
| StatisticVersionInvalid | 1198 |




## OpenAPI

````yaml /services/playfab/api-references/rest/server/server.openapi.json post /Server/UpdatePlayerStatistics
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Server API
  description: >-
    Provides functionality to allow external (developer-controlled) servers to
    interact with user inventories and data in a trusted manner, and to handle
    matchmaking and client connection orchestration
  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: Account Management
    description: Account Management APIs
  - name: Analytics
    description: Analytics APIs
  - name: Authentication
    description: Authentication APIs
  - name: Character Data
    description: Character Data APIs
  - name: Characters
    description: Characters APIs
  - name: Content
    description: Content Service APIs
  - name: Friend List Management
    description: Friend List Management APIs
  - name: Matchmaking
    description: Matchmaking APIs
  - name: Platform Specific Methods
    description: Platform Specific Methods APIs
  - name: Player Data Management
    description: Player Data Management APIs
  - name: Player Item Management
    description: Player Item Management APIs
  - name: PlayStream
    description: PlayStream Management APIs
  - name: Server-Side Cloud Script
    description: Server-Side Cloud Script APIs
  - name: Shared Group Data
    description: Shared Group Data APIs
  - name: Title-Wide Data Management
    description: Title-Wide Data Management APIs
paths:
  /Server/UpdatePlayerStatistics:
    post:
      tags:
        - Player Data Management
      summary: Update Player Statistics
      description: >
        Updates the values of the specified title-specific statistics for the
        user


        ## Error codes


        This operation may return the following PlayFab errors:


        | Error | Code |

        | --- | --- |

        | DuplicateStatisticName | 1253 |

        | ProductDisabledForTitle | 1609 |

        | StatisticCountLimitExceeded | 1203 |

        | StatisticNameConflict | 1196 |

        | StatisticNotFound | 1195 |

        | StatisticValueAggregationOverflow | 1308 |

        | StatisticVersionClosedForWrites | 1197 |

        | StatisticVersionInvalid | 1198 |
      operationId: UpdatePlayerStatistics
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePlayerStatisticsRequest'
        description: >-
          This operation is additive. Statistics not currently defined will be
          added, while those already defined will be updated with the given
          values. All other user statistics will remain unchanged.
      responses:
        '200':
          $ref: '#/components/responses/UpdatePlayerStatisticsResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - SecretKey: []
components:
  schemas:
    UpdatePlayerStatisticsRequest:
      description: >-
        This operation is additive. Statistics not currently defined will be
        added, while those already defined will be updated with the given
        values. All other user statistics will remain unchanged.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        ForceUpdate:
          description: >-
            Indicates whether the statistics provided should be set, regardless
            of the aggregation method set on the statistic. Default is false.
          type: boolean
        PlayFabId:
          description: >-
            Unique PlayFab assigned ID of the user on whom the operation will be
            performed.
          type: string
        Statistics:
          description: Statistics to be updated with the provided values
          type: array
          items:
            $ref: '#/components/schemas/StatisticUpdate'
          x-isclass: true
      required:
        - PlayFabId
        - Statistics
      example:
        PlayFabId: '10931252888739651331'
        Statistics:
          - StatisticName: Points
            Version: 1
            Value: 600
          - StatisticName: Wins
            Version: 2
            Value: 16
          - StatisticName: Stars
            Value: 7
    StatisticUpdate:
      type: object
      properties:
        StatisticName:
          description: unique name of the statistic
          type: string
        Value:
          description: statistic value for the player
          type: number
          x-actualtype: int32
        Version:
          description: >-
            for updates to an existing statistic value for a player, the version
            of the statistic when it was loaded. Null when setting the statistic
            value for the first time.
          type: number
          x-actualtype: uint32
      required:
        - StatisticName
        - Value
      example:
        StatisticName: headshots
        Version: 2
        Value: 5
    UpdatePlayerStatisticsResult:
      type: object
      properties: {}
    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
  responses:
    UpdatePlayerStatisticsResult:
      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/UpdatePlayerStatisticsResult'
    ApiErrorWrapper:
      description: This is the outer wrapper for all responses with errors
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorWrapper'
  securitySchemes:
    SecretKey:
      type: apiKey
      in: header
      name: X-SecretKey
      description: >-
        This API requires a title secret key, available to title admins, from
        PlayFab Game Manager.

````

## Related topics

- [Update Player Statistics](/services/playfab/api-references/rest/client/player-data-management/update-player-statistics.md)
- [Update Player Statistic Definition](/api-reference/player-data-management/update-player-statistic-definition.md)
- [Using player statistics](/services/playfab/community/leaderboards/tournaments-leaderboards/using-player-statistics.md)
- [Using resettable statistics and leaderboards](/services/playfab/community/leaderboards/tournaments-leaderboards/using-resettable-statistics-and-leaderboards.md)
- [Get Player Statistic Definitions](/services/playfab/api-references/rest/admin/player-data-management/get-player-statistic-definitions.md)
