> ## 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 Lobby As Server

> Preview: Update fields related to a joined server in the lobby the server is in. Servers can keep a lobby from expiring by being the one to "update" the lobby in some way. Servers have no impact on last member leave/last member disconnect behavior.

Allowed entity token types: game_server

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| LobbyBadRequest | 13007 |
| LobbyDoesNotExist | 13000 |
| LobbyRateLimitExceeded | 13001 |
| LobbyServerMismatch | 13012 |
| LobbyServerNotFound | 13013 |




## OpenAPI

````yaml /services/playfab/api-references/rest/multiplayer/multiplayer.openapi.json post /Lobby/UpdateLobbyAsServer
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Multiplayer API
  description: >-
    API methods for managing multiplayer servers. API methods for managing
    parties. The lobby service helps players group together to play multiplayer
    games. It is often used as a rendezvous point for players to share
    connection information. The TrueSkill service helps titles to estimate a
    player's skill based on their match results. The player skill values from
    this service are commonly used by a matchmaking service to provide players
    with balanced matches.
  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: Lobby
    description: ''
  - name: Matchmaking
    description: Matchmaking APIs
  - name: Matchmaking Admin
    description: Matchmaking Admin APIs
  - name: MultiplayerServer
    description: Multiplayer Server APIs
  - name: PubSub
    description: PlayFab PubSub APIs
  - name: TrueSkill
    description: TrueSkill APIs
  - name: TrueSkill Admin
    description: TrueSkill Admin APIs
paths:
  /Lobby/UpdateLobbyAsServer:
    post:
      tags:
        - Lobby
      summary: Update Lobby As Server
      description: >
        Preview: Update fields related to a joined server in the lobby the
        server is in. Servers can keep a lobby from expiring by being the one to
        "update" the lobby in some way. Servers have no impact on last member
        leave/last member disconnect behavior.


        Allowed entity token types: game_server


        ## Error codes


        This operation may return the following PlayFab errors:


        | Error | Code |

        | --- | --- |

        | LobbyBadRequest | 13007 |

        | LobbyDoesNotExist | 13000 |

        | LobbyRateLimitExceeded | 13001 |

        | LobbyServerMismatch | 13012 |

        | LobbyServerNotFound | 13013 |
      operationId: UpdateLobbyAsServer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateLobbyAsServerRequest'
        description: >-
          Preview: Request to update the serverData and serverEntity in case of
          migration. Only a game_server entity can update this information and
          this is restricted to client owned lobbies which are using
          connections.
      responses:
        '200':
          $ref: '#/components/responses/LobbyEmptyResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    UpdateLobbyAsServerRequest:
      description: >-
        Preview: Request to update the serverData and serverEntity in case of
        migration. Only a game_server entity can update this information and
        this is restricted to client owned lobbies which are using connections.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        LobbyId:
          description: The id of the lobby.
          type: string
        ServerData:
          description: >-
            The private key-value pairs which are visible to all entities in the
            lobby and modifiable by the joined server. Optional. Sets or updates
            key-value pairs on the lobby. Only the current lobby lobby server
            can set serverData. Keys may be an arbitrary string of at most 30
            characters. The total size of all serverData values may not exceed
            4096 bytes. Values are not individually limited. There can be up to
            30 key-value pairs stored here. Keys are case sensitive.
          type: object
        ServerDataToDelete:
          description: >-
            The keys to delete from the lobby serverData. Optional. Optional.
            Deletes key-value pairs on the lobby. Only the current joined lobby
            server can delete serverData. All the specified keys will be removed
            from the serverData. Keys that do not exist in the lobby are a
            no-op. If the key to delete exists in the serverData (same request)
            it will result in a bad request.
          type: array
          items:
            type: string
        ServerEntity:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: >-
            The lobby server. Optional. Set a different server as the joined
            server of the lobby (there can only be 1 joined server). When
            changing the server the previous server will automatically be
            unsubscribed.
      required:
        - LobbyId
      example:
        LobbyId: 12345678-1234-1234-1234-123456789ABC
        ServerEntity:
          Id: '1234'
          Type: game_server
          TypeString: game_server
        ServerData:
          MyDataKey: MyDataKey value
        ServerDataToDelete:
          - MyOldGameKey
    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
    LobbyEmptyResult:
      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:
    LobbyEmptyResult:
      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/LobbyEmptyResult'
    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

- [Update Lobby As Server](/services/playfab/api-references/rest/multiplayer/lobby/update-lobby-as-server.md)
- [Lobby ownership](/services/playfab/multiplayer/lobby/owner-requirements-and-privileges.md)
- [Update Lobby](/services/playfab/api-references/rest/multiplayer/lobby/update-lobby.md)
- [PFLobbyServerPostUpdateAsServer](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/functions/pflobbyserverpostupdateasserver.md)
- [Lobby.ServerPostUpdate](/services/playfab/multiplayer/lobby/unity-multiplayer-api-reference/PlayFab.Multiplayer/Lobby/ServerPostUpdate.md)
