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

> Updates information of a list of existing bans specified with Ban Ids.



## OpenAPI

````yaml /services/playfab/api-references/rest/server/server.openapi.json post /Server/UpdateBans
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/UpdateBans:
    post:
      tags:
        - Account Management
      summary: Update Bans
      description: Updates information of a list of existing bans specified with Ban Ids.
      operationId: UpdateBans
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateBansRequest'
        description: >-
          For each ban, only updates the values that are set. Leave any value to
          null for no change. If a ban could not be found, the rest are still
          applied. Returns information about applied updates only.
      responses:
        '200':
          $ref: '#/components/responses/UpdateBansResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - SecretKey: []
components:
  schemas:
    UpdateBansRequest:
      description: >-
        For each ban, only updates the values that are set. Leave any value to
        null for no change. If a ban could not be found, the rest are still
        applied. Returns information about applied updates only.
      type: object
      properties:
        Bans:
          description: List of bans to be updated. Maximum 100.
          type: array
          items:
            $ref: '#/components/schemas/UpdateBanRequest'
          x-isclass: true
      required:
        - Bans
      example:
        Bans:
          - BanId: E0B5FF89542D413C
            Permanent: true
            Active: true
          - BanId: EF43FF89542G1546
            Reason: Royal pardon
            Expires: '2016-07-04T00:00:00'
    UpdateBanRequest:
      description: Represents a single update ban request.
      type: object
      properties:
        Active:
          description: The updated active state for the ban. Null for no change.
          type: boolean
        BanId:
          description: The id of the ban to be updated.
          type: string
        Expires:
          description: The updated expiration date for the ban. Null for no change.
          type: string
        IPAddress:
          description: The updated IP address for the ban. Null for no change.
          type: string
        Permanent:
          description: >-
            Whether to make this ban permanent. Set to true to make this ban
            permanent. This will not modify Active state.
          type: boolean
        Reason:
          description: >-
            The updated reason for the ban to be updated. Maximum 140
            characters. Null for no change.
          type: string
        UserFamilyType:
          allOf:
            - $ref: '#/components/schemas/UserFamilyType'
          description: >-
            The updated family type of the user that should be included in the
            ban. Null for no change.
      required:
        - BanId
    UpdateBansResult:
      type: object
      properties:
        BanData:
          description: Information on the bans that were updated
          type: array
          items:
            $ref: '#/components/schemas/BanInfo'
          x-isclass: true
      example:
        BanData:
          - PlayFabId: 1679AF5CD04BD838
            BanId: E0B5FF89542D413C
            IPAddress: 192.111.11.1
            Created: '2016-08-13T05:04:03'
            Reason: You cheated!
          - PlayFabId: 2329AF5CD04BF513
            BanId: EF43FF89542G1546
            Created: '2016-05-13T05:04:03'
            Expires: '2016-09-13T05:04:03'
            Reason: You used speed hack!
            Active: true
    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
    UserFamilyType:
      type: string
      enum:
        - None
        - Xbox
        - Steam
    BanInfo:
      description: Contains information for a ban.
      type: object
      properties:
        Active:
          description: >-
            The active state of this ban. Expired bans may still have this value
            set to true but they will have no effect.
          type: boolean
        BanId:
          description: The unique Ban Id associated with this ban.
          type: string
        Created:
          description: The time when this ban was applied.
          type: string
        Expires:
          description: >-
            The time when this ban expires. Permanent bans do not have
            expiration date.
          type: string
        IPAddress:
          description: >-
            The IP address on which the ban was applied. May affect multiple
            players.
          type: string
        PlayFabId:
          description: >-
            Unique PlayFab assigned ID of the user on whom the operation will be
            performed.
          type: string
        Reason:
          description: The reason why this ban was applied.
          type: string
        UserFamilyType:
          description: The family type of the user that is included in the ban.
          type: string
      required:
        - Active
  responses:
    UpdateBansResult:
      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/UpdateBansResult'
            example:
              code: 200
              status: OK
              data:
                BanData:
                  - PlayFabId: 1679AF5CD04BD838
                    BanId: E0B5FF89542D413C
                    IPAddress: 192.111.11.1
                    Created: '2016-08-13T05:04:03'
                    Reason: You cheated!
                  - PlayFabId: 2329AF5CD04BF513
                    BanId: EF43FF89542G1546
                    Created: '2016-05-13T05:04:03'
                    Expires: '2016-09-13T05:04:03'
                    Reason: You used speed hack!
                    Active: true
    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 Bans](/services/playfab/api-references/rest/admin/account-management/update-bans.md)
- [PFAccountManagementUpdateBansRequest](/services/playfab/api-references/c/pfaccountmanagementtypes/structs/pfaccountmanagementupdatebansrequest.md)
- [PFAccountManagementUpdateBanRequest](/services/playfab/api-references/c/pfaccountmanagementtypes/structs/pfaccountmanagementupdatebanrequest.md)
- [PFAccountManagementUpdateBansResult](/services/playfab/api-references/c/pfaccountmanagementtypes/structs/pfaccountmanagementupdatebansresult.md)
- [PFAccountManagementServerUpdateBansAsync](/services/playfab/api-references/c/pfaccountmanagement/functions/pfaccountmanagementserverupdatebansasync.md)
