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

# Create Remote User

> Creates a remote user to log on to a VM for a multiplayer server build.

Allowed entity token types: title

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| APINotEnabledForGameClientAccess | 1082 |
| MultiplayerServerBadRequest | 1382 |
| MultiplayerServerConflict | 1386 |
| MultiplayerServerForbidden | 1384 |
| MultiplayerServerInternalServerError | 1387 |
| MultiplayerServerNotFound | 1385 |
| MultiplayerServerTooManyRequests | 1380 |
| MultiplayerServerUnauthorized | 1383 |
| MultiplayerServerUnavailable | 1388 |
| ProductDisabledForTitle | 1609 |




## OpenAPI

````yaml /services/playfab/api-references/rest/multiplayer/multiplayer.openapi.json post /MultiplayerServer/CreateRemoteUser
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:
  /MultiplayerServer/CreateRemoteUser:
    post:
      tags:
        - MultiplayerServer
      summary: Create Remote User
      description: |
        Creates a remote user to log on to a VM for a multiplayer server build.

        Allowed entity token types: title

        ## Error codes

        This operation may return the following PlayFab errors:

        | Error | Code |
        | --- | --- |
        | APINotEnabledForGameClientAccess | 1082 |
        | MultiplayerServerBadRequest | 1382 |
        | MultiplayerServerConflict | 1386 |
        | MultiplayerServerForbidden | 1384 |
        | MultiplayerServerInternalServerError | 1387 |
        | MultiplayerServerNotFound | 1385 |
        | MultiplayerServerTooManyRequests | 1380 |
        | MultiplayerServerUnauthorized | 1383 |
        | MultiplayerServerUnavailable | 1388 |
        | ProductDisabledForTitle | 1609 |
      operationId: CreateRemoteUser
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRemoteUserRequest'
        description: >-
          Creates a remote user to log on to a VM for a multiplayer server build
          in a specific region. Returns user credential information necessary to
          log on.
      responses:
        '200':
          $ref: '#/components/responses/CreateRemoteUserResponse'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    CreateRemoteUserRequest:
      description: >-
        Creates a remote user to log on to a VM for a multiplayer server build
        in a specific region. Returns user credential information necessary to
        log on.
      type: object
      properties:
        BuildId:
          description: The guid string build ID of to create the remote user for.
          type: string
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        ExpirationTime:
          description: >-
            The expiration time for the remote user created. Defaults to
            expiring in one day if not specified.
          type: string
        Region:
          allOf:
            - $ref: '#/components/schemas/AzureRegion'
          description: The region of virtual machine to create the remote user for.
        Username:
          description: The username to create the remote user with.
          type: string
        VmId:
          description: The virtual machine ID the multiplayer server is located on.
          type: string
      required:
        - BuildId
        - Region
        - VmId
        - Username
      example:
        BuildId: 21781fa8-096d-4d9c-b699-75433d579285
        Region: SouthCentralUs
        VmId: VmID1
        Username: AUsername
        ExpirationTime: '2014-04-07T09:04:28'
    AzureRegion:
      type: string
      enum:
        - AustraliaEast
        - AustraliaSoutheast
        - BrazilSouth
        - CentralUs
        - EastAsia
        - EastUs
        - EastUs2
        - JapanEast
        - JapanWest
        - NorthCentralUs
        - NorthEurope
        - SouthCentralUs
        - SoutheastAsia
        - WestEurope
        - WestUs
        - SouthAfricaNorth
        - WestCentralUs
        - KoreaCentral
        - FranceCentral
        - WestUs2
        - CentralIndia
        - UaeNorth
        - UkSouth
        - SwedenCentral
        - CanadaCentral
        - MexicoCentral
        - WestUs3
        - CanadaEast
        - UkWest
        - FranceSouth
        - SouthIndia
        - SpainCentral
        - GermanyWestCentral
        - ItalyNorth
        - IndonesiaCentral
        - ChileCentral
        - PolandCentral
        - NewZealandNorth
        - BrazilSoutheast
        - NorwayEast
        - SwitzerlandNorth
        - MalaysiaWest
        - IsraelCentral
        - QatarCentral
        - UaeCentral
        - GermanyNorth
        - AustriaEast
        - BelgiumCentral
        - DenmarkEast
        - SwitzerlandWest
        - SwedenSouth
        - NorwayWest
        - SouthAfricaWest
        - MalaysiaSouth
    CreateRemoteUserResponse:
      type: object
      properties:
        ExpirationTime:
          description: The expiration time for the remote user created.
          type: string
        Password:
          description: The generated password for the remote user that was created.
          type: string
        Username:
          description: The username for the remote user that was created.
          type: string
    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:
    CreateRemoteUserResponse:
      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/CreateRemoteUserResponse'
    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

- [Create Remote User](/services/playfab/api-references/rest/multiplayer/multiplayer-server/create-remote-user.md)
- [vm_remote_user_created](/services/playfab/api-references/events/MultiplayerServers/vm-remote-user-created.md)
- [PartyXblManager::CreateRemoteChatUser](/services/playfab/multiplayer/networking/xblreference/classes/PartyXblManager/methods/partyxblmanager_createremotechatuser.md)
- [VmRemoteUserCreatedEventPayload](/services/playfab/api-references/events/data-types/vmremoteusercreatedeventpayload.md)
- [Delete Remote User](/services/playfab/api-references/rest/multiplayer/multiplayer-server/delete-remote-user.md)
