/// declare module PlayFabClientModule { export interface IPlayFabClient { /** * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the * allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted * items will be swapped between the two players' inventories. * https://docs.microsoft.com/rest/api/playfab/client/trading/accepttrade */ AcceptTrade( sessionTicket: string, request?: PlayFabClientModels.AcceptTradeRequest ): Promise; /** * Adds the PlayFab user, based upon a match against a supplied unique identifier, to the friend list of the local user. At * least one of FriendPlayFabId,FriendUsername,FriendEmail, or FriendTitleDisplayName should be initialized. * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/addfriend */ AddFriend( sessionTicket: string, request?: PlayFabClientModels.AddFriendRequest ): Promise; /** * Adds the specified generic service identifier to the player's PlayFab account. This is designed to allow for a PlayFab * ID lookup of any arbitrary service identifier a title wants to add. This identifier should never be used as * authentication credentials, as the intent is that it is easily accessible by other players. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addgenericid */ AddGenericID( sessionTicket: string, request?: PlayFabClientModels.AddGenericIDRequest ): Promise; /** * Adds or updates a contact email to the player's profile. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addorupdatecontactemail */ AddOrUpdateContactEmail( sessionTicket: string, request?: PlayFabClientModels.AddOrUpdateContactEmailRequest ): Promise; /** * Adds users to the set of those able to update both the shared data, as well as the set of users in the group. Only users * in the group can add new members. Shared Groups are designed for sharing data between a very small number of players, * please see our guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/addsharedgroupmembers */ AddSharedGroupMembers( sessionTicket: string, request?: PlayFabClientModels.AddSharedGroupMembersRequest ): Promise; /** * Adds playfab username/password auth to an existing account created via an anonymous auth method, e.g. automatic device * ID login. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addusernamepassword */ AddUsernamePassword( sessionTicket: string, request?: PlayFabClientModels.AddUsernamePasswordRequest ): Promise; /** * Increments the user's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/adduservirtualcurrency */ AddUserVirtualCurrency( sessionTicket: string, request?: PlayFabClientModels.AddUserVirtualCurrencyRequest ): Promise; /** * Registers the Android device to receive push notifications * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/androiddevicepushnotificationregistration */ AndroidDevicePushNotificationRegistration( sessionTicket: string, request?: PlayFabClientModels.AndroidDevicePushNotificationRegistrationRequest ): Promise; /** * Attributes an install for advertisment. * https://docs.microsoft.com/rest/api/playfab/client/advertising/attributeinstall */ AttributeInstall( sessionTicket: string, request?: PlayFabClientModels.AttributeInstallRequest ): Promise; /** * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade * can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other * players from accepting them, for trades that can be claimed by more than one player). * https://docs.microsoft.com/rest/api/playfab/client/trading/canceltrade */ CancelTrade( sessionTicket: string, request?: PlayFabClientModels.CancelTradeRequest ): Promise; /** * Confirms with the payment provider that the purchase was approved (if applicable) and adjusts inventory and virtual * currency balances as appropriate * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/confirmpurchase */ ConfirmPurchase( sessionTicket: string, request?: PlayFabClientModels.ConfirmPurchaseRequest ): Promise; /** * Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's inventory. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/consumeitem */ ConsumeItem( sessionTicket: string, request?: PlayFabClientModels.ConsumeItemRequest ): Promise; /** * Grants the player's current entitlements from Microsoft Store's Collection API * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumemicrosoftstoreentitlements */ ConsumeMicrosoftStoreEntitlements( sessionTicket: string, request?: PlayFabClientModels.ConsumeMicrosoftStoreEntitlementsRequest ): Promise; /** * Checks for any new consumable entitlements. If any are found, they are consumed and added as PlayFab items * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumepsnentitlements */ ConsumePSNEntitlements( sessionTicket: string, request?: PlayFabClientModels.ConsumePSNEntitlementsRequest ): Promise; /** * Grants the player's current entitlements from Xbox Live, consuming all availble items in Xbox and granting them to the * player's PlayFab inventory. This call is idempotent and will not grant previously granted items to the player. * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumexboxentitlements */ ConsumeXboxEntitlements( sessionTicket: string, request?: PlayFabClientModels.ConsumeXboxEntitlementsRequest ): Promise; /** * Requests the creation of a shared group object, containing key/value pairs which may be updated by all members of the * group. Upon creation, the current user will be the only member of the group. Shared Groups are designed for sharing data * between a very small number of players, please see our guide: * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/createsharedgroup */ CreateSharedGroup( sessionTicket: string, request?: PlayFabClientModels.CreateSharedGroupRequest ): Promise; /** * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. * https://docs.microsoft.com/rest/api/playfab/client/server-side-cloud-script/executecloudscript */ ExecuteCloudScript( sessionTicket: string, request?: PlayFabClientModels.ExecuteCloudScriptRequest ): Promise; /** * Retrieves the user's PlayFab account details * https://docs.microsoft.com/rest/api/playfab/client/account-management/getaccountinfo */ GetAccountInfo( sessionTicket: string, request?: PlayFabClientModels.GetAccountInfoRequest ): Promise; /** * Returns a list of ad placements and a reward for each * https://docs.microsoft.com/rest/api/playfab/client/advertising/getadplacements */ GetAdPlacements( sessionTicket: string, request?: PlayFabClientModels.GetAdPlacementsRequest ): Promise; /** * Lists all of the characters that belong to a specific user. CharacterIds are not globally unique; characterId must be * evaluated with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/client/characters/getalluserscharacters */ GetAllUsersCharacters( sessionTicket: string, request?: PlayFabClientModels.ListUsersCharactersRequest ): Promise; /** * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getcatalogitems */ GetCatalogItems( sessionTicket: string, request?: PlayFabClientModels.GetCatalogItemsRequest ): Promise; /** * Retrieves the title-specific custom data for the character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/getcharacterdata */ GetCharacterData( sessionTicket: string, request?: PlayFabClientModels.GetCharacterDataRequest ): Promise; /** * Retrieves the specified character's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getcharacterinventory */ GetCharacterInventory( sessionTicket: string, request?: PlayFabClientModels.GetCharacterInventoryRequest ): Promise; /** * Retrieves a list of ranked characters for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/characters/getcharacterleaderboard */ GetCharacterLeaderboard( sessionTicket: string, request?: PlayFabClientModels.GetCharacterLeaderboardRequest ): Promise; /** * Retrieves the title-specific custom data for the character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/getcharacterreadonlydata */ GetCharacterReadOnlyData( sessionTicket: string, request?: PlayFabClientModels.GetCharacterDataRequest ): Promise; /** * Retrieves the details of all title-specific statistics for the user * https://docs.microsoft.com/rest/api/playfab/client/characters/getcharacterstatistics */ GetCharacterStatistics( sessionTicket: string, request?: PlayFabClientModels.GetCharacterStatisticsRequest ): Promise; /** * This API retrieves a pre-signed URL for accessing a content file for the title. A subsequent HTTP GET to the returned * URL will attempt to download the content. A HEAD query to the returned URL will attempt to retrieve the metadata of the * content. Note that a successful result does not guarantee the existence of this content - if it has not been uploaded, * the query to retrieve the data will fail. See this post for more information: * https://community.playfab.com/hc/community/posts/205469488-How-to-upload-files-to-PlayFab-s-Content-Service. Also, * please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN rates apply. * https://docs.microsoft.com/rest/api/playfab/client/content/getcontentdownloadurl */ GetContentDownloadUrl( sessionTicket: string, request?: PlayFabClientModels.GetContentDownloadUrlRequest ): Promise; /** * Get details about all current running game servers matching the given parameters. * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/getcurrentgames */ GetCurrentGames( sessionTicket: string, request?: PlayFabClientModels.CurrentGamesRequest ): Promise; /** * Retrieves a list of ranked friends of the current player for the given statistic, starting from the indicated point in * the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getfriendleaderboard */ GetFriendLeaderboard( sessionTicket: string, request?: PlayFabClientModels.GetFriendLeaderboardRequest ): Promise; /** * Retrieves a list of ranked friends of the current player for the given statistic, centered on the requested PlayFab * user. If PlayFabId is empty or null will return currently logged in user. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getfriendleaderboardaroundplayer */ GetFriendLeaderboardAroundPlayer( sessionTicket: string, request?: PlayFabClientModels.GetFriendLeaderboardAroundPlayerRequest ): Promise; /** * Retrieves the current friend list for the local user, constrained to users who have PlayFab accounts. Friends from * linked accounts (Facebook, Steam) are also included. You may optionally exclude some linked services' friends. * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/getfriendslist */ GetFriendsList( sessionTicket: string, request?: PlayFabClientModels.GetFriendsListRequest ): Promise; /** * Get details about the regions hosting game servers matching the given parameters. * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/getgameserverregions */ GetGameServerRegions( sessionTicket: string, request?: PlayFabClientModels.GameServerRegionsRequest ): Promise; /** * Retrieves a list of ranked users for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getleaderboard */ GetLeaderboard( sessionTicket: string, request?: PlayFabClientModels.GetLeaderboardRequest ): Promise; /** * Retrieves a list of ranked characters for the given statistic, centered on the requested Character ID * https://docs.microsoft.com/rest/api/playfab/client/characters/getleaderboardaroundcharacter */ GetLeaderboardAroundCharacter( sessionTicket: string, request?: PlayFabClientModels.GetLeaderboardAroundCharacterRequest ): Promise; /** * Retrieves a list of ranked users for the given statistic, centered on the requested player. If PlayFabId is empty or * null will return currently logged in user. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getleaderboardaroundplayer */ GetLeaderboardAroundPlayer( sessionTicket: string, request?: PlayFabClientModels.GetLeaderboardAroundPlayerRequest ): Promise; /** * Retrieves a list of all of the user's characters for the given statistic. * https://docs.microsoft.com/rest/api/playfab/client/characters/getleaderboardforusercharacters */ GetLeaderboardForUserCharacters( sessionTicket: string, request?: PlayFabClientModels.GetLeaderboardForUsersCharactersRequest ): Promise; /** * For payments flows where the provider requires playfab (the fulfiller) to initiate the transaction, but the client * completes the rest of the flow. In the Xsolla case, the token returned here will be passed to Xsolla by the client to * create a cart. Poll GetPurchase using the returned OrderId once you've completed the payment. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getpaymenttoken */ GetPaymentToken( sessionTicket: string, request?: PlayFabClientModels.GetPaymentTokenRequest ): Promise; /** * Gets a Photon custom authentication token that can be used to securely join the player into a Photon room. See * https://docs.microsoft.com/gaming/playfab/features/multiplayer/photon/quickstart for more details. * https://docs.microsoft.com/rest/api/playfab/client/authentication/getphotonauthenticationtoken */ GetPhotonAuthenticationToken( sessionTicket: string, request?: PlayFabClientModels.GetPhotonAuthenticationTokenRequest ): Promise; /** * Retrieves all of the user's different kinds of info. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayercombinedinfo */ GetPlayerCombinedInfo( sessionTicket: string, request?: PlayFabClientModels.GetPlayerCombinedInfoRequest ): Promise; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayerprofile */ GetPlayerProfile( sessionTicket: string, request?: PlayFabClientModels.GetPlayerProfileRequest ): Promise; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/client/playstream/getplayersegments */ GetPlayerSegments( sessionTicket: string, request?: PlayFabClientModels.GetPlayerSegmentsRequest ): Promise; /** * Retrieves the indicated statistics (current version and values for all statistics, if none are specified), for the local * player. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayerstatistics */ GetPlayerStatistics( sessionTicket: string, request?: PlayFabClientModels.GetPlayerStatisticsRequest ): Promise; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayerstatisticversions */ GetPlayerStatisticVersions( sessionTicket: string, request?: PlayFabClientModels.GetPlayerStatisticVersionsRequest ): Promise; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/client/playstream/getplayertags */ GetPlayerTags( sessionTicket: string, request?: PlayFabClientModels.GetPlayerTagsRequest ): Promise; /** * Gets all trades the player has either opened or accepted, optionally filtered by trade status. * https://docs.microsoft.com/rest/api/playfab/client/trading/getplayertrades */ GetPlayerTrades( sessionTicket: string, request?: PlayFabClientModels.GetPlayerTradesRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromfacebookids */ GetPlayFabIDsFromFacebookIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromFacebookIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook Instant Game identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromfacebookinstantgamesids */ GetPlayFabIDsFromFacebookInstantGamesIds( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Game Center identifiers (referenced in the Game Center * Programming Guide as the Player Identifier). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgamecenterids */ GetPlayFabIDsFromGameCenterIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromGameCenterIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of generic service identifiers. A generic identifier is the * service name plus the service-specific ID for the player, as specified by the title when the generic identifier was * added to the player account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgenericids */ GetPlayFabIDsFromGenericIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromGenericIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Google identifiers. The Google identifiers are the IDs for * the user accounts, available as "id" in the Google+ People API calls. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgoogleids */ GetPlayFabIDsFromGoogleIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromGoogleIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Kongregate identifiers. The Kongregate identifiers are the * IDs for the user accounts, available as "user_id" from the Kongregate API methods(ex: * http://developers.kongregate.com/docs/client/getUserId). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromkongregateids */ GetPlayFabIDsFromKongregateIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromKongregateIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoswitchdeviceids */ GetPlayFabIDsFromNintendoSwitchDeviceIds( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of PlayStation Network identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrompsnaccountids */ GetPlayFabIDsFromPSNAccountIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromPSNAccountIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are the profile * IDs for the user accounts, available as SteamId in the Steamworks Community API calls. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromsteamids */ GetPlayFabIDsFromSteamIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromSteamIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of Twitch identifiers. The Twitch identifiers are the IDs for * the user accounts, available as "_id" from the Twitch API methods (ex: * https://github.com/justintv/Twitch-API/blob/master/v3_resources/users.md#get-usersuser). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromtwitchids */ GetPlayFabIDsFromTwitchIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromTwitchIDsRequest ): Promise; /** * Retrieves the unique PlayFab identifiers for the given set of XboxLive identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromxboxliveids */ GetPlayFabIDsFromXboxLiveIDs( sessionTicket: string, request?: PlayFabClientModels.GetPlayFabIDsFromXboxLiveIDsRequest ): Promise; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getpublisherdata */ GetPublisherData( sessionTicket: string, request?: PlayFabClientModels.GetPublisherDataRequest ): Promise; /** * Retrieves a purchase along with its current PlayFab status. Returns inventory items from the purchase that are still * active. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getpurchase */ GetPurchase( sessionTicket: string, request?: PlayFabClientModels.GetPurchaseRequest ): Promise; /** * Retrieves data stored in a shared group object, as well as the list of members in the group. Non-members of the group * may use this to retrieve group data, including membership, but they will not receive data for keys marked as private. * Shared Groups are designed for sharing data between a very small number of players, please see our guide: * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/getsharedgroupdata */ GetSharedGroupData( sessionTicket: string, request?: PlayFabClientModels.GetSharedGroupDataRequest ): Promise; /** * Retrieves the set of items defined for the specified store, including all prices defined * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getstoreitems */ GetStoreItems( sessionTicket: string, request?: PlayFabClientModels.GetStoreItemsRequest ): Promise; /** * Retrieves the current server time * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettime */ GetTime( sessionTicket: string, request?: PlayFabClientModels.GetTimeRequest ): Promise; /** * Retrieves the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettitledata */ GetTitleData( sessionTicket: string, request?: PlayFabClientModels.GetTitleDataRequest ): Promise; /** * Retrieves the title news feed, as configured in the developer portal * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettitlenews */ GetTitleNews( sessionTicket: string, request?: PlayFabClientModels.GetTitleNewsRequest ): Promise; /** * Returns the title's base 64 encoded RSA CSP blob. * https://docs.microsoft.com/rest/api/playfab/client/authentication/gettitlepublickey */ GetTitlePublicKey( request?: PlayFabClientModels.GetTitlePublicKeyRequest ): Promise; /** * Gets the current status of an existing trade. * https://docs.microsoft.com/rest/api/playfab/client/trading/gettradestatus */ GetTradeStatus( sessionTicket: string, request?: PlayFabClientModels.GetTradeStatusRequest ): Promise; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserdata */ GetUserData( sessionTicket: string, request?: PlayFabClientModels.GetUserDataRequest ): Promise; /** * Retrieves the user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getuserinventory */ GetUserInventory( sessionTicket: string, request?: PlayFabClientModels.GetUserInventoryRequest ): Promise; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserpublisherdata */ GetUserPublisherData( sessionTicket: string, request?: PlayFabClientModels.GetUserDataRequest ): Promise; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserpublisherreadonlydata */ GetUserPublisherReadOnlyData( sessionTicket: string, request?: PlayFabClientModels.GetUserDataRequest ): Promise; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserreadonlydata */ GetUserReadOnlyData( sessionTicket: string, request?: PlayFabClientModels.GetUserDataRequest ): Promise; /** * Requests a challenge from the server to be signed by Windows Hello Passport service to authenticate. * https://docs.microsoft.com/rest/api/playfab/client/authentication/getwindowshellochallenge */ GetWindowsHelloChallenge( request?: PlayFabClientModels.GetWindowsHelloChallengeRequest ): Promise; /** * Grants the specified character type to the user. CharacterIds are not globally unique; characterId must be evaluated * with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/client/characters/grantcharactertouser */ GrantCharacterToUser( sessionTicket: string, request?: PlayFabClientModels.GrantCharacterToUserRequest ): Promise; /** * Links the Android device identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkandroiddeviceid */ LinkAndroidDeviceID( sessionTicket: string, request?: PlayFabClientModels.LinkAndroidDeviceIDRequest ): Promise; /** * Links the Apple account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkapple */ LinkApple( sessionTicket: string, request?: PlayFabClientModels.LinkAppleRequest ): Promise; /** * Links the custom identifier, generated by the title, to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkcustomid */ LinkCustomID( sessionTicket: string, request?: PlayFabClientModels.LinkCustomIDRequest ): Promise; /** * Links the Facebook account associated with the provided Facebook access token to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkfacebookaccount */ LinkFacebookAccount( sessionTicket: string, request?: PlayFabClientModels.LinkFacebookAccountRequest ): Promise; /** * Links the Facebook Instant Games Id to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkfacebookinstantgamesid */ LinkFacebookInstantGamesId( sessionTicket: string, request?: PlayFabClientModels.LinkFacebookInstantGamesIdRequest ): Promise; /** * Links the Game Center account associated with the provided Game Center ID to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgamecenteraccount */ LinkGameCenterAccount( sessionTicket: string, request?: PlayFabClientModels.LinkGameCenterAccountRequest ): Promise; /** * Links the currently signed-in user account to their Google account, using their Google account credentials * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgoogleaccount */ LinkGoogleAccount( sessionTicket: string, request?: PlayFabClientModels.LinkGoogleAccountRequest ): Promise; /** * Links the vendor-specific iOS device identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkiosdeviceid */ LinkIOSDeviceID( sessionTicket: string, request?: PlayFabClientModels.LinkIOSDeviceIDRequest ): Promise; /** * Links the Kongregate identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkkongregate */ LinkKongregate( sessionTicket: string, request?: PlayFabClientModels.LinkKongregateAccountRequest ): Promise; /** * Links the Nintendo account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linknintendoserviceaccount */ LinkNintendoServiceAccount( sessionTicket: string, request?: PlayFabClientModels.LinkNintendoServiceAccountRequest ): Promise; /** * Links the NintendoSwitchDeviceId to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linknintendoswitchdeviceid */ LinkNintendoSwitchDeviceId( sessionTicket: string, request?: PlayFabClientModels.LinkNintendoSwitchDeviceIdRequest ): Promise; /** * Links an OpenID Connect account to a user's PlayFab account, based on an existing relationship between a title and an * Open ID Connect provider and the OpenId Connect JWT from that provider. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkopenidconnect */ LinkOpenIdConnect( sessionTicket: string, request?: PlayFabClientModels.LinkOpenIdConnectRequest ): Promise; /** * Links the PlayStation Network account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkpsnaccount */ LinkPSNAccount( sessionTicket: string, request?: PlayFabClientModels.LinkPSNAccountRequest ): Promise; /** * Links the Steam account associated with the provided Steam authentication ticket to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linksteamaccount */ LinkSteamAccount( sessionTicket: string, request?: PlayFabClientModels.LinkSteamAccountRequest ): Promise; /** * Links the Twitch account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linktwitch */ LinkTwitch( sessionTicket: string, request?: PlayFabClientModels.LinkTwitchAccountRequest ): Promise; /** * Link Windows Hello authentication to the current PlayFab Account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkwindowshello */ LinkWindowsHello( sessionTicket: string, request?: PlayFabClientModels.LinkWindowsHelloAccountRequest ): Promise; /** * Links the Xbox Live account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkxboxaccount */ LinkXboxAccount( sessionTicket: string, request?: PlayFabClientModels.LinkXboxAccountRequest ): Promise; /** * Signs the user in using the Android device identifier, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithandroiddeviceid */ LoginWithAndroidDeviceID( request?: PlayFabClientModels.LoginWithAndroidDeviceIDRequest ): Promise; /** * Signs in the user with a Sign in with Apple identity token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithapple */ LoginWithApple( request?: PlayFabClientModels.LoginWithAppleRequest ): Promise; /** * Signs the user in using a custom unique identifier generated by the title, returning a session identifier that can * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithcustomid */ LoginWithCustomID( request?: PlayFabClientModels.LoginWithCustomIDRequest ): Promise; /** * Signs the user into the PlayFab account, returning a session identifier that can subsequently be used for API calls * which require an authenticated user. Unlike most other login API calls, LoginWithEmailAddress does not permit the * creation of new accounts via the CreateAccountFlag. Email addresses may be used to create accounts via * RegisterPlayFabUser. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithemailaddress */ LoginWithEmailAddress( request?: PlayFabClientModels.LoginWithEmailAddressRequest ): Promise; /** * Signs the user in using a Facebook access token, returning a session identifier that can subsequently be used for API * calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithfacebook */ LoginWithFacebook( request?: PlayFabClientModels.LoginWithFacebookRequest ): Promise; /** * Signs the user in using a Facebook Instant Games ID, returning a session identifier that can subsequently be used for * API calls which require an authenticated user. Requires Facebook Instant Games to be configured. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithfacebookinstantgamesid */ LoginWithFacebookInstantGamesId( request?: PlayFabClientModels.LoginWithFacebookInstantGamesIdRequest ): Promise; /** * Signs the user in using an iOS Game Center player identifier, returning a session identifier that can subsequently be * used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgamecenter */ LoginWithGameCenter( request?: PlayFabClientModels.LoginWithGameCenterRequest ): Promise; /** * Signs the user in using their Google account credentials * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgoogleaccount */ LoginWithGoogleAccount( request?: PlayFabClientModels.LoginWithGoogleAccountRequest ): Promise; /** * Signs the user in using the vendor-specific iOS device identifier, returning a session identifier that can subsequently * be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithiosdeviceid */ LoginWithIOSDeviceID( request?: PlayFabClientModels.LoginWithIOSDeviceIDRequest ): Promise; /** * Signs the user in using a Kongregate player account. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithkongregate */ LoginWithKongregate( request?: PlayFabClientModels.LoginWithKongregateRequest ): Promise; /** * Signs in the user with a Nintendo service account token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithnintendoserviceaccount */ LoginWithNintendoServiceAccount( request?: PlayFabClientModels.LoginWithNintendoServiceAccountRequest ): Promise; /** * Signs the user in using a Nintendo Switch Device ID, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithnintendoswitchdeviceid */ LoginWithNintendoSwitchDeviceId( request?: PlayFabClientModels.LoginWithNintendoSwitchDeviceIdRequest ): Promise; /** * Logs in a user with an Open ID Connect JWT created by an existing relationship between a title and an Open ID Connect * provider. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithopenidconnect */ LoginWithOpenIdConnect( request?: PlayFabClientModels.LoginWithOpenIdConnectRequest ): Promise; /** * Signs the user into the PlayFab account, returning a session identifier that can subsequently be used for API calls * which require an authenticated user. Unlike most other login API calls, LoginWithPlayFab does not permit the creation of * new accounts via the CreateAccountFlag. Username/Password credentials may be used to create accounts via * RegisterPlayFabUser, or added to existing accounts using AddUsernamePassword. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithplayfab */ LoginWithPlayFab( request?: PlayFabClientModels.LoginWithPlayFabRequest ): Promise; /** * Signs the user in using a PlayStation Network authentication code, returning a session identifier that can subsequently * be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithpsn */ LoginWithPSN( request?: PlayFabClientModels.LoginWithPSNRequest ): Promise; /** * Signs the user in using a Steam authentication ticket, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithsteam */ LoginWithSteam( request?: PlayFabClientModels.LoginWithSteamRequest ): Promise; /** * Signs the user in using a Twitch access token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithtwitch */ LoginWithTwitch( request?: PlayFabClientModels.LoginWithTwitchRequest ): Promise; /** * Completes the Windows Hello login flow by returning the signed value of the challange from GetWindowsHelloChallenge. * Windows Hello has a 2 step client to server authentication scheme. Step one is to request from the server a challenge * string. Step two is to request the user sign the string via Windows Hello and then send the signed value back to the * server. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithwindowshello */ LoginWithWindowsHello( request?: PlayFabClientModels.LoginWithWindowsHelloRequest ): Promise; /** * Signs the user in using a Xbox Live Token, returning a session identifier that can subsequently be used for API calls * which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithxbox */ LoginWithXbox( request?: PlayFabClientModels.LoginWithXboxRequest ): Promise; /** * Attempts to locate a game session matching the given parameters. If the goal is to match the player into a specific * active session, only the LobbyId is required. Otherwise, the BuildVersion, GameMode, and Region are all required * parameters. Note that parameters specified in the search are required (they are not weighting factors). If a slot is * found in a server instance matching the parameters, the slot will be assigned to that player, removing it from the * availabe set. In that case, the information on the game session will be returned, otherwise the Status returned will be * GameNotFound. * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/matchmake */ Matchmake( sessionTicket: string, request?: PlayFabClientModels.MatchmakeRequest ): Promise; /** * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. * https://docs.microsoft.com/rest/api/playfab/client/trading/opentrade */ OpenTrade( sessionTicket: string, request?: PlayFabClientModels.OpenTradeRequest ): Promise; /** * Selects a payment option for purchase order created via StartPurchase * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/payforpurchase */ PayForPurchase( sessionTicket: string, request?: PlayFabClientModels.PayForPurchaseRequest ): Promise; /** * Buys a single item with virtual currency. You must specify both the virtual currency to use to purchase, as well as what * the client believes the price to be. This lets the server fail the purchase if the price has changed. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/purchaseitem */ PurchaseItem( sessionTicket: string, request?: PlayFabClientModels.PurchaseItemRequest ): Promise; /** * Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the * Economy->Catalogs tab in the PlayFab Game Manager. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/redeemcoupon */ RedeemCoupon( sessionTicket: string, request?: PlayFabClientModels.RedeemCouponRequest ): Promise; /** * Uses the supplied OAuth code to refresh the internally cached player PSN auth token * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/refreshpsnauthtoken */ RefreshPSNAuthToken( sessionTicket: string, request?: PlayFabClientModels.RefreshPSNAuthTokenRequest ): Promise; /** * Registers the iOS device to receive push notifications * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/registerforiospushnotification */ RegisterForIOSPushNotification( sessionTicket: string, request?: PlayFabClientModels.RegisterForIOSPushNotificationRequest ): Promise; /** * Registers a new Playfab user account, returning a session identifier that can subsequently be used for API calls which * require an authenticated user. You must supply either a username or an email address. * https://docs.microsoft.com/rest/api/playfab/client/authentication/registerplayfabuser */ RegisterPlayFabUser( request?: PlayFabClientModels.RegisterPlayFabUserRequest ): Promise; /** * Registers a new PlayFab user account using Windows Hello authentication, returning a session ticket that can * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/registerwithwindowshello */ RegisterWithWindowsHello( request?: PlayFabClientModels.RegisterWithWindowsHelloRequest ): Promise; /** * Removes a contact email from the player's profile. * https://docs.microsoft.com/rest/api/playfab/client/account-management/removecontactemail */ RemoveContactEmail( sessionTicket: string, request?: PlayFabClientModels.RemoveContactEmailRequest ): Promise; /** * Removes a specified user from the friend list of the local user * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/removefriend */ RemoveFriend( sessionTicket: string, request?: PlayFabClientModels.RemoveFriendRequest ): Promise; /** * Removes the specified generic service identifier from the player's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/removegenericid */ RemoveGenericID( sessionTicket: string, request?: PlayFabClientModels.RemoveGenericIDRequest ): Promise; /** * Removes users from the set of those able to update the shared data and the set of users in the group. Only users in the * group can remove members. If as a result of the call, zero users remain with access, the group and its associated data * will be deleted. Shared Groups are designed for sharing data between a very small number of players, please see our * guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/removesharedgroupmembers */ RemoveSharedGroupMembers( sessionTicket: string, request?: PlayFabClientModels.RemoveSharedGroupMembersRequest ): Promise; /** * Report player's ad activity * https://docs.microsoft.com/rest/api/playfab/client/advertising/reportadactivity */ ReportAdActivity( sessionTicket: string, request?: PlayFabClientModels.ReportAdActivityRequest ): Promise; /** * Write a PlayStream event to describe the provided player device information. This API method is not designed to be * called directly by developers. Each PlayFab client SDK will eventually report this information automatically. * https://docs.microsoft.com/rest/api/playfab/client/analytics/reportdeviceinfo */ ReportDeviceInfo( sessionTicket: string, request?: PlayFabClientModels.DeviceInfoRequest ): Promise; /** * Submit a report for another player (due to bad bahavior, etc.), so that customer service representatives for the title * can take action concerning potentially toxic players. * https://docs.microsoft.com/rest/api/playfab/client/account-management/reportplayer */ ReportPlayer( sessionTicket: string, request?: PlayFabClientModels.ReportPlayerClientRequest ): Promise; /** * Restores all in-app purchases based on the given restore receipt * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/restoreiospurchases */ RestoreIOSPurchases( sessionTicket: string, request?: PlayFabClientModels.RestoreIOSPurchasesRequest ): Promise; /** * Reward player's ad activity * https://docs.microsoft.com/rest/api/playfab/client/advertising/rewardadactivity */ RewardAdActivity( sessionTicket: string, request?: PlayFabClientModels.RewardAdActivityRequest ): Promise; /** * Forces an email to be sent to the registered email address for the user's account, with a link allowing the user to * change the password.If an account recovery email template ID is provided, an email using the custom email template will * be used. * https://docs.microsoft.com/rest/api/playfab/client/account-management/sendaccountrecoveryemail */ SendAccountRecoveryEmail( request?: PlayFabClientModels.SendAccountRecoveryEmailRequest ): Promise; /** * Updates the tag list for a specified user in the friend list of the local user * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/setfriendtags */ SetFriendTags( sessionTicket: string, request?: PlayFabClientModels.SetFriendTagsRequest ): Promise; /** * Sets the player's secret if it is not already set. Player secrets are used to sign API requests. To reset a player's * secret use the Admin or Server API method SetPlayerSecret. * https://docs.microsoft.com/rest/api/playfab/client/authentication/setplayersecret */ SetPlayerSecret( sessionTicket: string, request?: PlayFabClientModels.SetPlayerSecretRequest ): Promise; /** * Start a new game server with a given configuration, add the current player and return the connection information. * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/startgame */ StartGame( sessionTicket: string, request?: PlayFabClientModels.StartGameRequest ): Promise; /** * Creates an order for a list of items from the title catalog * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/startpurchase */ StartPurchase( sessionTicket: string, request?: PlayFabClientModels.StartPurchaseRequest ): Promise; /** * Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make a VC * balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/subtractuservirtualcurrency */ SubtractUserVirtualCurrency( sessionTicket: string, request?: PlayFabClientModels.SubtractUserVirtualCurrencyRequest ): Promise; /** * Unlinks the related Android device identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkandroiddeviceid */ UnlinkAndroidDeviceID( sessionTicket: string, request?: PlayFabClientModels.UnlinkAndroidDeviceIDRequest ): Promise; /** * Unlinks the related Apple account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkapple */ UnlinkApple( sessionTicket: string, request?: PlayFabClientModels.UnlinkAppleRequest ): Promise; /** * Unlinks the related custom identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkcustomid */ UnlinkCustomID( sessionTicket: string, request?: PlayFabClientModels.UnlinkCustomIDRequest ): Promise; /** * Unlinks the related Facebook account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkfacebookaccount */ UnlinkFacebookAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkFacebookAccountRequest ): Promise; /** * Unlinks the related Facebook Instant Game Ids from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkfacebookinstantgamesid */ UnlinkFacebookInstantGamesId( sessionTicket: string, request?: PlayFabClientModels.UnlinkFacebookInstantGamesIdRequest ): Promise; /** * Unlinks the related Game Center account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgamecenteraccount */ UnlinkGameCenterAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkGameCenterAccountRequest ): Promise; /** * Unlinks the related Google account from the user's PlayFab account * (https://developers.google.com/android/reference/com/google/android/gms/auth/GoogleAuthUtil#public-methods). * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgoogleaccount */ UnlinkGoogleAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkGoogleAccountRequest ): Promise; /** * Unlinks the related iOS device identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkiosdeviceid */ UnlinkIOSDeviceID( sessionTicket: string, request?: PlayFabClientModels.UnlinkIOSDeviceIDRequest ): Promise; /** * Unlinks the related Kongregate identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkkongregate */ UnlinkKongregate( sessionTicket: string, request?: PlayFabClientModels.UnlinkKongregateAccountRequest ): Promise; /** * Unlinks the related Nintendo account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinknintendoserviceaccount */ UnlinkNintendoServiceAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkNintendoServiceAccountRequest ): Promise; /** * Unlinks the related NintendoSwitchDeviceId from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinknintendoswitchdeviceid */ UnlinkNintendoSwitchDeviceId( sessionTicket: string, request?: PlayFabClientModels.UnlinkNintendoSwitchDeviceIdRequest ): Promise; /** * Unlinks an OpenID Connect account from a user's PlayFab account, based on the connection ID of an existing relationship * between a title and an Open ID Connect provider. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkopenidconnect */ UnlinkOpenIdConnect( sessionTicket: string, request?: PlayFabClientModels.UnlinkOpenIdConnectRequest ): Promise; /** * Unlinks the related PSN account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkpsnaccount */ UnlinkPSNAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkPSNAccountRequest ): Promise; /** * Unlinks the related Steam account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinksteamaccount */ UnlinkSteamAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkSteamAccountRequest ): Promise; /** * Unlinks the related Twitch account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinktwitch */ UnlinkTwitch( sessionTicket: string, request?: PlayFabClientModels.UnlinkTwitchAccountRequest ): Promise; /** * Unlink Windows Hello authentication from the current PlayFab Account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkwindowshello */ UnlinkWindowsHello( sessionTicket: string, request?: PlayFabClientModels.UnlinkWindowsHelloAccountRequest ): Promise; /** * Unlinks the related Xbox Live account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkxboxaccount */ UnlinkXboxAccount( sessionTicket: string, request?: PlayFabClientModels.UnlinkXboxAccountRequest ): Promise; /** * Opens the specified container, with the specified key (when required), and returns the contents of the opened container. * If the container (and key when relevant) are consumable (RemainingUses > 0), their RemainingUses will be decremented, * consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/unlockcontainerinstance */ UnlockContainerInstance( sessionTicket: string, request?: PlayFabClientModels.UnlockContainerInstanceRequest ): Promise; /** * Searches target inventory for an ItemInstance matching the given CatalogItemId, if necessary unlocks it using an * appropriate key, and returns the contents of the opened container. If the container (and key when relevant) are * consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/unlockcontaineritem */ UnlockContainerItem( sessionTicket: string, request?: PlayFabClientModels.UnlockContainerItemRequest ): Promise; /** * Update the avatar URL of the player * https://docs.microsoft.com/rest/api/playfab/client/account-management/updateavatarurl */ UpdateAvatarUrl( sessionTicket: string, request?: PlayFabClientModels.UpdateAvatarUrlRequest ): Promise; /** * Creates and updates the title-specific custom data for the user's character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/updatecharacterdata */ UpdateCharacterData( sessionTicket: string, request?: PlayFabClientModels.UpdateCharacterDataRequest ): Promise; /** * Updates the values of the specified title-specific statistics for the specific character. By default, clients are not * permitted to update statistics. Developers may override this setting in the Game Manager > Settings > API Features. * https://docs.microsoft.com/rest/api/playfab/client/characters/updatecharacterstatistics */ UpdateCharacterStatistics( sessionTicket: string, request?: PlayFabClientModels.UpdateCharacterStatisticsRequest ): Promise; /** * Updates the values of the specified title-specific statistics for the user. By default, clients are not permitted to * update statistics. Developers may override this setting in the Game Manager > Settings > API Features. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateplayerstatistics */ UpdatePlayerStatistics( sessionTicket: string, request?: PlayFabClientModels.UpdatePlayerStatisticsRequest ): Promise; /** * Adds, updates, and removes data keys for a shared group object. If the permission is set to Public, all fields updated * or added in this call will be readable by users not in the group. By default, data permissions are set to Private. * Regardless of the permission setting, only members of the group can update the data. Shared Groups are designed for * sharing data between a very small number of players, please see our guide: * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/updatesharedgroupdata */ UpdateSharedGroupData( sessionTicket: string, request?: PlayFabClientModels.UpdateSharedGroupDataRequest ): Promise; /** * Creates and updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateuserdata */ UpdateUserData( sessionTicket: string, request?: PlayFabClientModels.UpdateUserDataRequest ): Promise; /** * Creates and updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateuserpublisherdata */ UpdateUserPublisherData( sessionTicket: string, request?: PlayFabClientModels.UpdateUserDataRequest ): Promise; /** * Updates the title specific display name for the user * https://docs.microsoft.com/rest/api/playfab/client/account-management/updateusertitledisplayname */ UpdateUserTitleDisplayName( sessionTicket: string, request?: PlayFabClientModels.UpdateUserTitleDisplayNameRequest ): Promise; /** * Validates with Amazon that the receipt for an Amazon App Store in-app purchase is valid and that it matches the * purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validateamazoniapreceipt */ ValidateAmazonIAPReceipt( sessionTicket: string, request?: PlayFabClientModels.ValidateAmazonReceiptRequest ): Promise; /** * Validates a Google Play purchase and gives the corresponding item to the player. * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validategoogleplaypurchase */ ValidateGooglePlayPurchase( sessionTicket: string, request?: PlayFabClientModels.ValidateGooglePlayPurchaseRequest ): Promise; /** * Validates with the Apple store that the receipt for an iOS in-app purchase is valid and that it matches the purchased * catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validateiosreceipt */ ValidateIOSReceipt( sessionTicket: string, request?: PlayFabClientModels.ValidateIOSReceiptRequest ): Promise; /** * Validates with Windows that the receipt for an Windows App Store in-app purchase is valid and that it matches the * purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validatewindowsstorereceipt */ ValidateWindowsStoreReceipt( sessionTicket: string, request?: PlayFabClientModels.ValidateWindowsReceiptRequest ): Promise; /** * Writes a character-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writecharacterevent */ WriteCharacterEvent( sessionTicket: string, request?: PlayFabClientModels.WriteClientCharacterEventRequest ): Promise; /** * Writes a player-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writeplayerevent */ WritePlayerEvent( sessionTicket: string, request?: PlayFabClientModels.WriteClientPlayerEventRequest ): Promise; /** * Writes a title-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writetitleevent */ WriteTitleEvent( sessionTicket: string, request?: PlayFabClientModels.WriteTitleEventRequest ): Promise; } } declare module PlayFabClientModels { export interface AcceptTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Items from the accepting player's inventory in exchange for the offered items in the trade. In the case of a gift, this * will be null. */ AcceptedInventoryInstanceIds?: string[]; /** Player who opened the trade. */ OfferingPlayerId: string; /** Trade identifier. */ TradeId: string; } export interface AcceptTradeResponse extends PlayFabModule.IPlayFabResultCommon { /** Details about trade which was just accepted. */ Trade?: TradeInfo; } type AdActivity = "Opened" | "Closed" | "Start" | "End"; export interface AdCampaignAttributionModel { /** UTC time stamp of attribution */ AttributedAt: string; /** Attribution campaign identifier */ CampaignId?: string; /** Attribution network name */ Platform?: string; } export interface AddFriendRequest extends PlayFabModule.IPlayFabRequestCommon { /** Email address of the user to attempt to add to the local user's friend list. */ FriendEmail?: string; /** PlayFab identifier of the user to attempt to add to the local user's friend list. */ FriendPlayFabId?: string; /** Title-specific display name of the user to attempt to add to the local user's friend list. */ FriendTitleDisplayName?: string; /** PlayFab username of the user to attempt to add to the local user's friend list. */ FriendUsername?: string; } export interface AddFriendResult extends PlayFabModule.IPlayFabResultCommon { /** True if the friend request was processed successfully. */ Created: boolean; } export interface AddGenericIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Generic service identifier to add to the player account. */ GenericId: GenericServiceId; } export interface AddGenericIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface AddOrUpdateContactEmailRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** The new contact email to associate with the player. */ EmailAddress: string; } export interface AddOrUpdateContactEmailResult extends PlayFabModule.IPlayFabResultCommon {} export interface AddSharedGroupMembersRequest extends PlayFabModule.IPlayFabRequestCommon { /** An array of unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabIds: string[]; /** Unique identifier for the shared group. */ SharedGroupId: string; } export interface AddSharedGroupMembersResult extends PlayFabModule.IPlayFabResultCommon {} export interface AddUsernamePasswordRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** User email address attached to their account */ Email: string; /** Password for the PlayFab account (6-100 characters) */ Password: string; /** PlayFab username for the account (3-20 characters) */ Username: string; } export interface AddUsernamePasswordResult extends PlayFabModule.IPlayFabResultCommon { /** PlayFab unique user name. */ Username?: string; } export interface AddUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Amount to be added to the user balance of the specified virtual currency. */ Amount: number; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Name of the virtual currency which is to be incremented. */ VirtualCurrency: string; } export interface AdPlacementDetails { /** Placement unique ID */ PlacementId?: string; /** Placement name */ PlacementName?: string; /** If placement has viewing limits indicates how many views are left */ PlacementViewsRemaining?: number; /** If placement has viewing limits indicates when they will next reset */ PlacementViewsResetMinutes?: number; /** Optional URL to a reward asset */ RewardAssetUrl?: string; /** Reward description */ RewardDescription?: string; /** Reward unique ID */ RewardId?: string; /** Reward name */ RewardName?: string; } export interface AdRewardItemGranted { /** Catalog ID */ CatalogId?: string; /** Catalog item display name */ DisplayName?: string; /** Inventory instance ID */ InstanceId?: string; /** Item ID */ ItemId?: string; } export interface AdRewardResults { /** Array of the items granted to the player */ GrantedItems?: AdRewardItemGranted[]; /** Dictionary of virtual currencies that were granted to the player */ GrantedVirtualCurrencies?: { [key: string]: number }; /** Dictionary of statistics that were modified for the player */ IncrementedStatistics?: { [key: string]: number }; } export interface AndroidDevicePushNotificationRegistrationRequest extends PlayFabModule.IPlayFabRequestCommon { /** Message to display when confirming push notification. */ ConfirmationMessage?: string; /** * Registration ID provided by the Google Cloud Messaging service when the title registered to receive push notifications * (see the GCM documentation, here: http://developer.android.com/google/gcm/client.html). */ DeviceToken: string; /** If true, send a test push message immediately after sucessful registration. Defaults to false. */ SendPushNotificationConfirmation?: boolean; } export interface AndroidDevicePushNotificationRegistrationResult extends PlayFabModule.IPlayFabResultCommon {} export interface AttributeInstallRequest extends PlayFabModule.IPlayFabRequestCommon { /** The adid for this device. */ Adid?: string; /** The IdentifierForAdvertisers for iOS Devices. */ Idfa?: string; } export interface AttributeInstallResult extends PlayFabModule.IPlayFabResultCommon {} export interface CancelTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** Trade identifier. */ TradeId: string; } export interface CancelTradeResponse extends PlayFabModule.IPlayFabResultCommon { /** Details about trade which was just canceled. */ Trade?: TradeInfo; } export interface CartItem { /** Description of the catalog item. */ Description?: string; /** Display name for the catalog item. */ DisplayName?: string; /** Class name to which catalog item belongs. */ ItemClass?: string; /** Unique identifier for the catalog item. */ ItemId?: string; /** Unique instance identifier for this catalog item. */ ItemInstanceId?: string; /** Cost of the catalog item for each applicable real world currency. */ RealCurrencyPrices?: { [key: string]: number }; /** Amount of each applicable virtual currency which will be received as a result of purchasing this catalog item. */ VCAmount?: { [key: string]: number }; /** Cost of the catalog item for each applicable virtual currency. */ VirtualCurrencyPrices?: { [key: string]: number }; } export interface CatalogItem { /** * defines the bundle properties for the item - bundles are items which contain other items, including random drop tables * and virtual currencies */ Bundle?: CatalogItemBundleInfo; /** if true, then an item instance of this type can be used to grant a character to a user. */ CanBecomeCharacter: boolean; /** catalog version for this item */ CatalogVersion?: string; /** defines the consumable properties (number of uses, timeout) for the item */ Consumable?: CatalogItemConsumableInfo; /** * defines the container properties for the item - what items it contains, including random drop tables and virtual * currencies, and what item (if any) is required to open it via the UnlockContainerItem API */ Container?: CatalogItemContainerInfo; /** game specific custom data */ CustomData?: string; /** text description of item, to show in-game */ Description?: string; /** text name for the item, to show in-game */ DisplayName?: string; /** * If the item has IsLImitedEdition set to true, and this is the first time this ItemId has been defined as a limited * edition item, this value determines the total number of instances to allocate for the title. Once this limit has been * reached, no more instances of this ItemId can be created, and attempts to purchase or grant it will return a Result of * false for that ItemId. If the item has already been defined to have a limited edition count, or if this value is less * than zero, it will be ignored. */ InitialLimitedEditionCount: number; /** BETA: If true, then only a fixed number can ever be granted. */ IsLimitedEdition: boolean; /** * if true, then only one item instance of this type will exist and its remaininguses will be incremented instead. * RemainingUses will cap out at Int32.Max (2,147,483,647). All subsequent increases will be discarded */ IsStackable: boolean; /** if true, then an item instance of this type can be traded between players using the trading APIs */ IsTradable: boolean; /** class to which the item belongs */ ItemClass?: string; /** unique identifier for this item */ ItemId: string; /** * URL to the item image. For Facebook purchase to display the image on the item purchase page, this must be set to an HTTP * URL. */ ItemImageUrl?: string; /** override prices for this item for specific currencies */ RealCurrencyPrices?: { [key: string]: number }; /** list of item tags */ Tags?: string[]; /** price of this item in virtual currencies and "RM" (the base Real Money purchase price, in USD pennies) */ VirtualCurrencyPrices?: { [key: string]: number }; } export interface CatalogItemBundleInfo { /** unique ItemId values for all items which will be added to the player inventory when the bundle is added */ BundledItems?: string[]; /** * unique TableId values for all RandomResultTable objects which are part of the bundle (random tables will be resolved and * add the relevant items to the player inventory when the bundle is added) */ BundledResultTables?: string[]; /** virtual currency types and balances which will be added to the player inventory when the bundle is added */ BundledVirtualCurrencies?: { [key: string]: number }; } export interface CatalogItemConsumableInfo { /** number of times this object can be used, after which it will be removed from the player inventory */ UsageCount?: number; /** * duration in seconds for how long the item will remain in the player inventory - once elapsed, the item will be removed * (recommended minimum value is 5 seconds, as lower values can cause the item to expire before operations depending on * this item's details have completed) */ UsagePeriod?: number; /** * all inventory item instances in the player inventory sharing a non-null UsagePeriodGroup have their UsagePeriod values * added together, and share the result - when that period has elapsed, all the items in the group will be removed */ UsagePeriodGroup?: string; } export interface CatalogItemContainerInfo { /** unique ItemId values for all items which will be added to the player inventory, once the container has been unlocked */ ItemContents?: string[]; /** * ItemId for the catalog item used to unlock the container, if any (if not specified, a call to UnlockContainerItem will * open the container, adding the contents to the player inventory and currency balances) */ KeyItemId?: string; /** * unique TableId values for all RandomResultTable objects which are part of the container (once unlocked, random tables * will be resolved and add the relevant items to the player inventory) */ ResultTableContents?: string[]; /** virtual currency types and balances which will be added to the player inventory when the container is unlocked */ VirtualCurrencyContents?: { [key: string]: number }; } export interface CharacterInventory { /** The id of this character. */ CharacterId?: string; /** The inventory of this character. */ Inventory?: ItemInstance[]; } export interface CharacterLeaderboardEntry { /** PlayFab unique identifier of the character that belongs to the user for this leaderboard entry. */ CharacterId?: string; /** Title-specific display name of the character for this leaderboard entry. */ CharacterName?: string; /** Name of the character class for this entry. */ CharacterType?: string; /** Title-specific display name of the user for this leaderboard entry. */ DisplayName?: string; /** PlayFab unique identifier of the user for this leaderboard entry. */ PlayFabId?: string; /** User's overall position in the leaderboard. */ Position: number; /** Specific value of the user's statistic. */ StatValue: number; } export interface CharacterResult { /** The id for this character on this player. */ CharacterId?: string; /** The name of this character. */ CharacterName?: string; /** The type-string that was given to this character on creation. */ CharacterType?: string; } type CloudScriptRevisionOption = "Live" | "Latest" | "Specific"; export interface CollectionFilter { /** List of Exclude rules, with any of which if a collection matches, it is excluded by the filter. */ Excludes?: Container_Dictionary_String_String[]; /** * List of Include rules, with any of which if a collection matches, it is included by the filter, unless it is excluded by * one of the Exclude rule */ Includes?: Container_Dictionary_String_String[]; } export interface ConfirmPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Purchase order identifier returned from StartPurchase. */ OrderId: string; } export interface ConfirmPurchaseResult extends PlayFabModule.IPlayFabResultCommon { /** Array of items purchased. */ Items?: ItemInstance[]; /** Purchase order identifier. */ OrderId?: string; /** Date and time of the purchase. */ PurchaseDate: string; } export interface ConsumeItemRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId?: string; /** Number of uses to consume from the item. */ ConsumeCount: number; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Unique instance identifier of the item to be consumed. */ ItemInstanceId: string; } export interface ConsumeItemResult extends PlayFabModule.IPlayFabResultCommon { /** Unique instance identifier of the item with uses consumed. */ ItemInstanceId?: string; /** Number of uses remaining on the item. */ RemainingUses: number; } export interface ConsumeMicrosoftStoreEntitlementsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version to use */ CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Marketplace specific payload containing details to fetch in app purchase transactions */ MarketplaceSpecificData: MicrosoftStorePayload; } export interface ConsumeMicrosoftStoreEntitlementsResponse extends PlayFabModule.IPlayFabResultCommon { /** Details for the items purchased. */ Items?: ItemInstance[]; } export interface ConsumePSNEntitlementsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Which catalog to match granted entitlements against. If null, defaults to title default catalog */ CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Id of the PSN service label to consume entitlements from */ ServiceLabel: number; } export interface ConsumePSNEntitlementsResult extends PlayFabModule.IPlayFabResultCommon { /** Array of items granted to the player as a result of consuming entitlements. */ ItemsGranted?: ItemInstance[]; } export interface ConsumeXboxEntitlementsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version to use */ CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ XboxToken: string; } export interface ConsumeXboxEntitlementsResult extends PlayFabModule.IPlayFabResultCommon { /** Details for the items purchased. */ Items?: ItemInstance[]; } export interface ContactEmailInfoModel { /** The email address */ EmailAddress?: string; /** The name of the email info data */ Name?: string; /** The verification status of the email */ VerificationStatus?: string; } export interface Container_Dictionary_String_String { /** Content of data */ Data?: { [key: string]: string | undefined }; } type ContinentCode = "AF" | "AN" | "AS" | "EU" | "NA" | "OC" | "SA"; type CountryCode = "AF" | "AX" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AI" | "AQ" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BM" | "BT" | "BO" | "BQ" | "BA" | "BW" | "BV" | "BR" | "IO" | "BN" | "BG" | "BF" | "BI" | "KH" | "CM" | "CA" | "CV" | "KY" | "CF" | "TD" | "CL" | "CN" | "CX" | "CC" | "CO" | "KM" | "CG" | "CD" | "CK" | "CR" | "CI" | "HR" | "CU" | "CW" | "CY" | "CZ" | "DK" | "DJ" | "DM" | "DO" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "ET" | "FK" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "TF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GI" | "GR" | "GL" | "GD" | "GP" | "GU" | "GT" | "GG" | "GN" | "GW" | "GY" | "HT" | "HM" | "VA" | "HN" | "HK" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "KP" | "KR" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LY" | "LI" | "LT" | "LU" | "MO" | "MK" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MH" | "MQ" | "MR" | "MU" | "YT" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "MM" | "NA" | "NR" | "NP" | "NL" | "NC" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "MP" | "NO" | "OM" | "PK" | "PW" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PN" | "PL" | "PT" | "PR" | "QA" | "RE" | "RO" | "RU" | "RW" | "BL" | "SH" | "KN" | "LC" | "MF" | "PM" | "VC" | "WS" | "SM" | "ST" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SX" | "SK" | "SI" | "SB" | "SO" | "ZA" | "GS" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SZ" | "SE" | "CH" | "SY" | "TW" | "TJ" | "TZ" | "TH" | "TL" | "TG" | "TK" | "TO" | "TT" | "TN" | "TR" | "TM" | "TC" | "TV" | "UG" | "UA" | "AE" | "GB" | "US" | "UM" | "UY" | "UZ" | "VU" | "VE" | "VN" | "VG" | "VI" | "WF" | "EH" | "YE" | "ZM" | "ZW"; export interface CreateSharedGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier for the shared group (a random identifier will be assigned, if one is not specified). */ SharedGroupId?: string; } export interface CreateSharedGroupResult extends PlayFabModule.IPlayFabResultCommon { /** Unique identifier for the shared group. */ SharedGroupId?: string; } type Currency = "AED" | "AFN" | "ALL" | "AMD" | "ANG" | "AOA" | "ARS" | "AUD" | "AWG" | "AZN" | "BAM" | "BBD" | "BDT" | "BGN" | "BHD" | "BIF" | "BMD" | "BND" | "BOB" | "BRL" | "BSD" | "BTN" | "BWP" | "BYR" | "BZD" | "CAD" | "CDF" | "CHF" | "CLP" | "CNY" | "COP" | "CRC" | "CUC" | "CUP" | "CVE" | "CZK" | "DJF" | "DKK" | "DOP" | "DZD" | "EGP" | "ERN" | "ETB" | "EUR" | "FJD" | "FKP" | "GBP" | "GEL" | "GGP" | "GHS" | "GIP" | "GMD" | "GNF" | "GTQ" | "GYD" | "HKD" | "HNL" | "HRK" | "HTG" | "HUF" | "IDR" | "ILS" | "IMP" | "INR" | "IQD" | "IRR" | "ISK" | "JEP" | "JMD" | "JOD" | "JPY" | "KES" | "KGS" | "KHR" | "KMF" | "KPW" | "KRW" | "KWD" | "KYD" | "KZT" | "LAK" | "LBP" | "LKR" | "LRD" | "LSL" | "LYD" | "MAD" | "MDL" | "MGA" | "MKD" | "MMK" | "MNT" | "MOP" | "MRO" | "MUR" | "MVR" | "MWK" | "MXN" | "MYR" | "MZN" | "NAD" | "NGN" | "NIO" | "NOK" | "NPR" | "NZD" | "OMR" | "PAB" | "PEN" | "PGK" | "PHP" | "PKR" | "PLN" | "PYG" | "QAR" | "RON" | "RSD" | "RUB" | "RWF" | "SAR" | "SBD" | "SCR" | "SDG" | "SEK" | "SGD" | "SHP" | "SLL" | "SOS" | "SPL" | "SRD" | "STD" | "SVC" | "SYP" | "SZL" | "THB" | "TJS" | "TMT" | "TND" | "TOP" | "TRY" | "TTD" | "TVD" | "TWD" | "TZS" | "UAH" | "UGX" | "USD" | "UYU" | "UZS" | "VEF" | "VND" | "VUV" | "WST" | "XAF" | "XCD" | "XDR" | "XOF" | "XPF" | "YER" | "ZAR" | "ZMW" | "ZWD"; export interface CurrentGamesRequest extends PlayFabModule.IPlayFabRequestCommon { /** Build to match against. */ BuildVersion?: string; /** Game mode to look for. */ GameMode?: string; /** Region to check for Game Server Instances. */ Region?: string; /** Statistic name to find statistic-based matches. */ StatisticName?: string; /** Filter to include and/or exclude Game Server Instances associated with certain tags. */ TagFilter?: CollectionFilter; } export interface CurrentGamesResult extends PlayFabModule.IPlayFabResultCommon { /** number of games running */ GameCount: number; /** array of games found */ Games?: GameInfo[]; /** total number of players across all servers */ PlayerCount: number; } export interface DeviceInfoRequest extends PlayFabModule.IPlayFabRequestCommon { /** Information posted to the PlayStream Event. Currently arbitrary, and specific to the environment sending it. */ Info?: { [key: string]: any }; } type EmailVerificationStatus = "Unverified" | "Pending" | "Confirmed"; export interface EmptyResponse extends PlayFabModule.IPlayFabResultCommon {} export interface EmptyResult extends PlayFabModule.IPlayFabResultCommon {} export interface EntityKey { /** Unique ID of the entity. */ Id: string; /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ Type?: string; } export interface EntityTokenResponse { /** The entity id and type. */ Entity?: EntityKey; /** The token used to set X-EntityToken for all entity based API calls. */ EntityToken?: string; /** The time the token will expire, if it is an expiring token, in UTC. */ TokenExpiration?: string; } export interface ExecuteCloudScriptRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** The name of the CloudScript function to execute */ FunctionName: string; /** Object that is passed in to the function as the first argument */ FunctionParameter?: any; /** * Generate a 'player_executed_cloudscript' PlayStream event containing the results of the function execution and other * contextual information. This event will show up in the PlayStream debugger console for the player in Game Manager. */ GeneratePlayStreamEvent?: boolean; /** * Option for which revision of the CloudScript to execute. 'Latest' executes the most recently created revision, 'Live' * executes the current live, published revision, and 'Specific' executes the specified revision. The default value is * 'Specific', if the SpeificRevision parameter is specified, otherwise it is 'Live'. */ RevisionSelection?: string; /** The specivic revision to execute, when RevisionSelection is set to 'Specific' */ SpecificRevision?: number; } export interface ExecuteCloudScriptResult extends PlayFabModule.IPlayFabResultCommon { /** Number of PlayFab API requests issued by the CloudScript function */ APIRequestsIssued: number; /** Information about the error, if any, that occurred during execution */ Error?: ScriptExecutionError; ExecutionTimeSeconds: number; /** The name of the function that executed */ FunctionName?: string; /** The object returned from the CloudScript function, if any */ FunctionResult?: any; /** * Flag indicating if the FunctionResult was too large and was subsequently dropped from this event. This only occurs if * the total event size is larger than 350KB. */ FunctionResultTooLarge?: boolean; /** Number of external HTTP requests issued by the CloudScript function */ HttpRequestsIssued: number; /** * Entries logged during the function execution. These include both entries logged in the function code using log.info() * and log.error() and error entries for API and HTTP request failures. */ Logs?: LogStatement[]; /** * Flag indicating if the logs were too large and were subsequently dropped from this event. This only occurs if the total * event size is larger than 350KB after the FunctionResult was removed. */ LogsTooLarge?: boolean; MemoryConsumedBytes: number; /** * Processor time consumed while executing the function. This does not include time spent waiting on API calls or HTTP * requests. */ ProcessorTimeSeconds: number; /** The revision of the CloudScript that executed */ Revision: number; } export interface FacebookInstantGamesPlayFabIdPair { /** Unique Facebook Instant Games identifier for a user. */ FacebookInstantGamesId?: string; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Facebook Instant Games identifier. */ PlayFabId?: string; } export interface FacebookPlayFabIdPair { /** Unique Facebook identifier for a user. */ FacebookId?: string; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Facebook identifier. */ PlayFabId?: string; } export interface FriendInfo { /** Available Facebook information (if the user and PlayFab friend are also connected in Facebook). */ FacebookInfo?: UserFacebookInfo; /** PlayFab unique identifier for this friend. */ FriendPlayFabId?: string; /** Available Game Center information (if the user and PlayFab friend are also connected in Game Center). */ GameCenterInfo?: UserGameCenterInfo; /** The profile of the user, if requested. */ Profile?: PlayerProfileModel; /** Available PSN information, if the user and PlayFab friend are both connected to PSN. */ PSNInfo?: UserPsnInfo; /** Available Steam information (if the user and PlayFab friend are also connected in Steam). */ SteamInfo?: UserSteamInfo; /** Tags which have been associated with this friend. */ Tags?: string[]; /** Title-specific display name for this friend. */ TitleDisplayName?: string; /** PlayFab unique username for this friend. */ Username?: string; /** Available Xbox information, if the user and PlayFab friend are both connected to Xbox Live. */ XboxInfo?: UserXboxInfo; } export interface GameCenterPlayFabIdPair { /** Unique Game Center identifier for a user. */ GameCenterId?: string; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Game Center identifier. */ PlayFabId?: string; } export interface GameInfo { /** build version this server is running */ BuildVersion?: string; /** game mode this server is running */ GameMode?: string; /** game session custom data */ GameServerData?: string; /** game specific string denoting server configuration */ GameServerStateEnum?: string; /** last heartbeat of the game server instance, used in external game server provider mode */ LastHeartbeat?: string; /** unique lobby identifier for this game server */ LobbyID?: string; /** maximum players this server can support */ MaxPlayers?: number; /** array of current player IDs on this server */ PlayerUserIds?: string[]; /** region to which this server is associated */ Region?: string; /** duration in seconds this server has been running */ RunTime: number; /** IPV4 address of the server */ ServerIPV4Address?: string; /** IPV6 address of the server */ ServerIPV6Address?: string; /** port number to use for non-http communications with the server */ ServerPort?: number; /** Public DNS name (if any) of the server */ ServerPublicDNSName?: string; /** stastic used to match this game in player statistic matchmaking */ StatisticName?: string; /** game session tags */ Tags?: { [key: string]: string | undefined }; } type GameInstanceState = "Open" | "Closed"; export interface GameServerRegionsRequest extends PlayFabModule.IPlayFabRequestCommon { /** version of game server for which stats are being requested */ BuildVersion: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface GameServerRegionsResult extends PlayFabModule.IPlayFabResultCommon { /** array of regions found matching the request parameters */ Regions?: RegionInfo[]; } export interface GenericPlayFabIdPair { /** Unique generic service identifier for a user. */ GenericId?: GenericServiceId; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the given generic identifier. */ PlayFabId?: string; } export interface GenericServiceId { /** Name of the service for which the player has a unique identifier. */ ServiceName: string; /** Unique identifier of the player in that service. */ UserId: string; } export interface GetAccountInfoRequest extends PlayFabModule.IPlayFabRequestCommon { /** User email address for the account to find (if no Username is specified). */ Email?: string; /** * Unique PlayFab identifier of the user whose info is being requested. Optional, defaults to the authenticated user if no * other lookup identifier set. */ PlayFabId?: string; /** * Title-specific username for the account to find (if no Email is set). Note that if the non-unique Title Display Names * option is enabled for the title, attempts to look up users by Title Display Name will always return AccountNotFound. */ TitleDisplayName?: string; /** PlayFab Username for the account to find (if no PlayFabId is specified). */ Username?: string; } export interface GetAccountInfoResult extends PlayFabModule.IPlayFabResultCommon { /** Account information for the local user. */ AccountInfo?: UserAccountInfo; } export interface GetAdPlacementsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The current AppId to use */ AppId: string; /** Using the name or unique identifier, filter the result for get a specific placement. */ Identifier?: NameIdentifier; } export interface GetAdPlacementsResult extends PlayFabModule.IPlayFabResultCommon { /** Array of results */ AdPlacements?: AdPlacementDetails[]; } export interface GetCatalogItemsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Which catalog is being requested. If null, uses the default catalog. */ CatalogVersion?: string; } export interface GetCatalogItemsResult extends PlayFabModule.IPlayFabResultCommon { /** Array of items which can be purchased. */ Catalog?: CatalogItem[]; } export interface GetCharacterDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; /** * The version that currently exists according to the caller. The call will return the data for all of the keys if the * version in the system is greater than this. */ IfChangedFromDataVersion?: number; /** Specific keys to search for in the custom user data. */ Keys?: string[]; /** Unique PlayFab identifier of the user to load data for. Optional, defaults to yourself if not set. */ PlayFabId?: string; } export interface GetCharacterDataResult extends PlayFabModule.IPlayFabResultCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId?: string; /** User specific data for this title. */ Data?: { [key: string]: UserDataRecord }; /** * Indicates the current version of the data that has been set. This is incremented with every set call for that type of * data (read-only, internal, etc). This version can be provided in Get calls to find updated data. */ DataVersion: number; } export interface GetCharacterInventoryRequest extends PlayFabModule.IPlayFabRequestCommon { /** Used to limit results to only those from a specific catalog version. */ CatalogVersion?: string; /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface GetCharacterInventoryResult extends PlayFabModule.IPlayFabResultCommon { /** Unique identifier of the character for this inventory. */ CharacterId?: string; /** Array of inventory items belonging to the character. */ Inventory?: ItemInstance[]; /** Array of virtual currency balance(s) belonging to the character. */ VirtualCurrency?: { [key: string]: number }; /** Array of remaining times and timestamps for virtual currencies. */ VirtualCurrencyRechargeTimes?: { [key: string]: VirtualCurrencyRechargeTime }; } export interface GetCharacterLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** Optional character type on which to filter the leaderboard entries. */ CharacterType?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** First entry in the leaderboard to be retrieved. */ StartPosition: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ StatisticName: string; } export interface GetCharacterLeaderboardResult extends PlayFabModule.IPlayFabResultCommon { /** Ordered list of leaderboard entries. */ Leaderboard?: CharacterLeaderboardEntry[]; } export interface GetCharacterStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; } export interface GetCharacterStatisticsResult extends PlayFabModule.IPlayFabResultCommon { /** The requested character statistics. */ CharacterStatistics?: { [key: string]: number }; } export interface GetContentDownloadUrlRequest extends PlayFabModule.IPlayFabRequestCommon { /** HTTP method to fetch item - GET or HEAD. Use HEAD when only fetching metadata. Default is GET. */ HttpMethod?: string; /** Key of the content item to fetch, usually formatted as a path, e.g. images/a.png */ Key: string; /** * True to download through CDN. CDN provides higher download bandwidth and lower latency. However, if you want the latest, * non-cached version of the content during development, set this to false. Default is true. */ ThruCDN?: boolean; } export interface GetContentDownloadUrlResult extends PlayFabModule.IPlayFabResultCommon { /** URL for downloading content via HTTP GET or HEAD method. The URL will expire in approximately one hour. */ URL?: string; } export interface GetFriendLeaderboardAroundPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Indicates whether Facebook friends should be included in the response. Default is true. */ IncludeFacebookFriends?: boolean; /** Indicates whether Steam service friends should be included in the response. Default is true. */ IncludeSteamFriends?: boolean; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** PlayFab unique identifier of the user to center the leaderboard around. If null will center on the logged in user. */ PlayFabId?: string; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; /** Statistic used to rank players for this leaderboard. */ StatisticName: string; /** The version of the leaderboard to get. */ Version?: number; /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ XboxToken?: string; } export interface GetFriendLeaderboardAroundPlayerResult extends PlayFabModule.IPlayFabResultCommon { /** Ordered listing of users and their positions in the requested leaderboard. */ Leaderboard?: PlayerLeaderboardEntry[]; /** The time the next scheduled reset will occur. Null if the leaderboard does not reset on a schedule. */ NextReset?: string; /** The version of the leaderboard returned. */ Version: number; } export interface GetFriendLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Indicates whether Facebook friends should be included in the response. Default is true. */ IncludeFacebookFriends?: boolean; /** Indicates whether Steam service friends should be included in the response. Default is true. */ IncludeSteamFriends?: boolean; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; /** Position in the leaderboard to start this listing (defaults to the first entry). */ StartPosition: number; /** Statistic used to rank friends for this leaderboard. */ StatisticName: string; /** The version of the leaderboard to get. */ Version?: number; /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ XboxToken?: string; } export interface GetFriendsListRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Indicates whether Facebook friends should be included in the response. Default is true. */ IncludeFacebookFriends?: boolean; /** Indicates whether Steam service friends should be included in the response. Default is true. */ IncludeSteamFriends?: boolean; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ XboxToken?: string; } export interface GetFriendsListResult extends PlayFabModule.IPlayFabResultCommon { /** Array of friends found. */ Friends?: FriendInfo[]; } export interface GetLeaderboardAroundCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character on which to center the leaderboard. */ CharacterId: string; /** Optional character type on which to filter the leaderboard entries. */ CharacterType?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ StatisticName: string; } export interface GetLeaderboardAroundCharacterResult extends PlayFabModule.IPlayFabResultCommon { /** Ordered list of leaderboard entries. */ Leaderboard?: CharacterLeaderboardEntry[]; } export interface GetLeaderboardAroundPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** PlayFab unique identifier of the user to center the leaderboard around. If null will center on the logged in user. */ PlayFabId?: string; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; /** Statistic used to rank players for this leaderboard. */ StatisticName: string; /** The version of the leaderboard to get. */ Version?: number; } export interface GetLeaderboardAroundPlayerResult extends PlayFabModule.IPlayFabResultCommon { /** Ordered listing of users and their positions in the requested leaderboard. */ Leaderboard?: PlayerLeaderboardEntry[]; /** The time the next scheduled reset will occur. Null if the leaderboard does not reset on a schedule. */ NextReset?: string; /** The version of the leaderboard returned. */ Version: number; } export interface GetLeaderboardForUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ StatisticName: string; } export interface GetLeaderboardForUsersCharactersResult extends PlayFabModule.IPlayFabResultCommon { /** Ordered list of leaderboard entries. */ Leaderboard?: CharacterLeaderboardEntry[]; } export interface GetLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; /** Position in the leaderboard to start this listing (defaults to the first entry). */ StartPosition: number; /** Statistic used to rank players for this leaderboard. */ StatisticName: string; /** The version of the leaderboard to get. */ Version?: number; } export interface GetLeaderboardResult extends PlayFabModule.IPlayFabResultCommon { /** Ordered listing of users and their positions in the requested leaderboard. */ Leaderboard?: PlayerLeaderboardEntry[]; /** The time the next scheduled reset will occur. Null if the leaderboard does not reset on a schedule. */ NextReset?: string; /** The version of the leaderboard returned. */ Version: number; } export interface GetPaymentTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The name of service to provide the payment token. Allowed Values are: xsolla */ TokenProvider: string; } export interface GetPaymentTokenResult extends PlayFabModule.IPlayFabResultCommon { /** PlayFab's purchase order identifier. */ OrderId?: string; /** The token from provider. */ ProviderToken?: string; } export interface GetPhotonAuthenticationTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The Photon applicationId for the game you wish to log into. */ PhotonApplicationId: string; } export interface GetPhotonAuthenticationTokenResult extends PlayFabModule.IPlayFabResultCommon { /** The Photon authentication token for this game-session. */ PhotonCustomAuthenticationToken?: string; } export interface GetPlayerCombinedInfoRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters: GetPlayerCombinedInfoRequestParams; /** PlayFabId of the user whose data will be returned. If not filled included, we return the data for the calling player. */ PlayFabId?: string; } export interface GetPlayerCombinedInfoRequestParams { /** Whether to get character inventories. Defaults to false. */ GetCharacterInventories: boolean; /** Whether to get the list of characters. Defaults to false. */ GetCharacterList: boolean; /** Whether to get player profile. Defaults to false. Has no effect for a new player. */ GetPlayerProfile: boolean; /** Whether to get player statistics. Defaults to false. */ GetPlayerStatistics: boolean; /** Whether to get title data. Defaults to false. */ GetTitleData: boolean; /** Whether to get the player's account Info. Defaults to false */ GetUserAccountInfo: boolean; /** Whether to get the player's custom data. Defaults to false */ GetUserData: boolean; /** Whether to get the player's inventory. Defaults to false */ GetUserInventory: boolean; /** Whether to get the player's read only data. Defaults to false */ GetUserReadOnlyData: boolean; /** Whether to get the player's virtual currency balances. Defaults to false */ GetUserVirtualCurrency: boolean; /** Specific statistics to retrieve. Leave null to get all keys. Has no effect if GetPlayerStatistics is false */ PlayerStatisticNames?: string[]; /** Specifies the properties to return from the player profile. Defaults to returning the player's display name. */ ProfileConstraints?: PlayerProfileViewConstraints; /** Specific keys to search for in the custom data. Leave null to get all keys. Has no effect if GetTitleData is false */ TitleDataKeys?: string[]; /** Specific keys to search for in the custom data. Leave null to get all keys. Has no effect if GetUserData is false */ UserDataKeys?: string[]; /** * Specific keys to search for in the custom data. Leave null to get all keys. Has no effect if GetUserReadOnlyData is * false */ UserReadOnlyDataKeys?: string[]; } export interface GetPlayerCombinedInfoResult extends PlayFabModule.IPlayFabResultCommon { /** Results for requested info. */ InfoResultPayload?: GetPlayerCombinedInfoResultPayload; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; } export interface GetPlayerCombinedInfoResultPayload { /** Account information for the user. This is always retrieved. */ AccountInfo?: UserAccountInfo; /** Inventories for each character for the user. */ CharacterInventories?: CharacterInventory[]; /** List of characters for the user. */ CharacterList?: CharacterResult[]; /** * The profile of the players. This profile is not guaranteed to be up-to-date. For a new player, this profile will not * exist. */ PlayerProfile?: PlayerProfileModel; /** List of statistics for this player. */ PlayerStatistics?: StatisticValue[]; /** Title data for this title. */ TitleData?: { [key: string]: string | undefined }; /** User specific custom data. */ UserData?: { [key: string]: UserDataRecord }; /** The version of the UserData that was returned. */ UserDataVersion: number; /** Array of inventory items in the user's current inventory. */ UserInventory?: ItemInstance[]; /** User specific read-only data. */ UserReadOnlyData?: { [key: string]: UserDataRecord }; /** The version of the Read-Only UserData that was returned. */ UserReadOnlyDataVersion: number; /** Dictionary of virtual currency balance(s) belonging to the user. */ UserVirtualCurrency?: { [key: string]: number }; /** Dictionary of remaining times and timestamps for virtual currencies. */ UserVirtualCurrencyRechargeTimes?: { [key: string]: VirtualCurrencyRechargeTime }; } export interface GetPlayerProfileRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; } export interface GetPlayerProfileResult extends PlayFabModule.IPlayFabResultCommon { /** * The profile of the player. This profile is not guaranteed to be up-to-date. For a new player, this profile will not * exist. */ PlayerProfile?: PlayerProfileModel; } export interface GetPlayerSegmentsRequest extends PlayFabModule.IPlayFabRequestCommon {} export interface GetPlayerSegmentsResult extends PlayFabModule.IPlayFabResultCommon { /** Array of segments the requested player currently belongs to. */ Segments?: GetSegmentResult[]; } export interface GetPlayerStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** statistics to return (current version will be returned for each) */ StatisticNames?: string[]; /** * statistics to return, if StatisticNames is not set (only statistics which have a version matching that provided will be * returned) */ StatisticNameVersions?: StatisticNameVersion[]; } export interface GetPlayerStatisticsResult extends PlayFabModule.IPlayFabResultCommon { /** User statistics for the requested user. */ Statistics?: StatisticValue[]; } export interface GetPlayerStatisticVersionsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** unique name of the statistic */ StatisticName?: string; } export interface GetPlayerStatisticVersionsResult extends PlayFabModule.IPlayFabResultCommon { /** version change history of the statistic */ StatisticVersions?: PlayerStatisticVersion[]; } export interface GetPlayerTagsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Optional namespace to filter results by */ Namespace?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; } export interface GetPlayerTagsResult extends PlayFabModule.IPlayFabResultCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** Canonical tags (including namespace and tag's name) for the requested user */ Tags: string[]; } export interface GetPlayerTradesRequest extends PlayFabModule.IPlayFabRequestCommon { /** Returns only trades with the given status. If null, returns all trades. */ StatusFilter?: string; } export interface GetPlayerTradesResponse extends PlayFabModule.IPlayFabResultCommon { /** History of trades which this player has accepted. */ AcceptedTrades?: TradeInfo[]; /** The trades for this player which are currently available to be accepted. */ OpenedTrades?: TradeInfo[]; } export interface GetPlayFabIDsFromFacebookIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. */ FacebookIDs: string[]; } export interface GetPlayFabIDsFromFacebookIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Facebook identifiers to PlayFab identifiers. */ Data?: FacebookPlayFabIdPair[]; } export interface GetPlayFabIDsFromFacebookInstantGamesIdsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. */ FacebookInstantGamesIds: string[]; } export interface GetPlayFabIDsFromFacebookInstantGamesIdsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Facebook Instant Games identifiers to PlayFab identifiers. */ Data?: FacebookInstantGamesPlayFabIdPair[]; } export interface GetPlayFabIDsFromGameCenterIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Game Center identifiers (the Player Identifier) for which the title needs to get PlayFab identifiers. */ GameCenterIDs: string[]; } export interface GetPlayFabIDsFromGameCenterIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Game Center identifiers to PlayFab identifiers. */ Data?: GameCenterPlayFabIdPair[]; } export interface GetPlayFabIDsFromGenericIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique generic service identifiers for which the title needs to get PlayFab identifiers. Currently limited to a * maximum of 10 in a single request. */ GenericIDs: GenericServiceId[]; } export interface GetPlayFabIDsFromGenericIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of generic service identifiers to PlayFab identifiers. */ Data?: GenericPlayFabIdPair[]; } export interface GetPlayFabIDsFromGoogleIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Google identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. */ GoogleIDs: string[]; } export interface GetPlayFabIDsFromGoogleIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Google identifiers to PlayFab identifiers. */ Data?: GooglePlayFabIdPair[]; } export interface GetPlayFabIDsFromKongregateIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. */ KongregateIDs: string[]; } export interface GetPlayFabIDsFromKongregateIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Kongregate identifiers to PlayFab identifiers. */ Data?: KongregatePlayFabIdPair[]; } export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. */ NintendoSwitchDeviceIds: string[]; } export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Nintendo Switch Device identifiers to PlayFab identifiers. */ Data?: NintendoSwitchPlayFabIdPair[]; } export interface GetPlayFabIDsFromPSNAccountIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Id of the PSN issuer environment. If null, defaults to 256 (production) */ IssuerId?: number; /** Array of unique PlayStation Network identifiers for which the title needs to get PlayFab identifiers. */ PSNAccountIDs: string[]; } export interface GetPlayFabIDsFromPSNAccountIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ Data?: PSNAccountPlayFabIdPair[]; } export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. */ SteamStringIDs?: string[]; } export interface GetPlayFabIDsFromSteamIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Steam identifiers to PlayFab identifiers. */ Data?: SteamPlayFabIdPair[]; } export interface GetPlayFabIDsFromTwitchIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. */ TwitchIds: string[]; } export interface GetPlayFabIDsFromTwitchIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of Twitch identifiers to PlayFab identifiers. */ Data?: TwitchPlayFabIdPair[]; } export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The ID of Xbox Live sandbox. */ Sandbox?: string; /** Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. */ XboxLiveAccountIDs: string[]; } export interface GetPlayFabIDsFromXboxLiveIDsResult extends PlayFabModule.IPlayFabResultCommon { /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ Data?: XboxLiveAccountPlayFabIdPair[]; } export interface GetPublisherDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** array of keys to get back data from the Publisher data blob, set by the admin tools */ Keys: string[]; } export interface GetPublisherDataResult extends PlayFabModule.IPlayFabResultCommon { /** a dictionary object of key / value pairs */ Data?: { [key: string]: string | undefined }; } export interface GetPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** Purchase order identifier. */ OrderId: string; } export interface GetPurchaseResult extends PlayFabModule.IPlayFabResultCommon { /** Purchase order identifier. */ OrderId?: string; /** Payment provider used for transaction (If not VC) */ PaymentProvider?: string; /** Date and time of the purchase. */ PurchaseDate: string; /** Provider transaction ID (If not VC) */ TransactionId?: string; /** PlayFab transaction status */ TransactionStatus?: string; } export interface GetSegmentResult { /** Identifier of the segments AB Test, if it is attached to one. */ ABTestParent?: string; /** Unique identifier for this segment. */ Id: string; /** Segment name. */ Name?: string; } export interface GetSharedGroupDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** If true, return the list of all members of the shared group. */ GetMembers?: boolean; /** * Specific keys to retrieve from the shared group (if not specified, all keys will be returned, while an empty array * indicates that no keys should be returned). */ Keys?: string[]; /** Unique identifier for the shared group. */ SharedGroupId: string; } export interface GetSharedGroupDataResult extends PlayFabModule.IPlayFabResultCommon { /** Data for the requested keys. */ Data?: { [key: string]: SharedGroupDataRecord }; /** List of PlayFabId identifiers for the members of this group, if requested. */ Members?: string[]; } export interface GetStoreItemsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version to store items from. Use default catalog version if null */ CatalogVersion?: string; /** Unqiue identifier for the store which is being requested. */ StoreId: string; } export interface GetStoreItemsResult extends PlayFabModule.IPlayFabResultCommon { /** The base catalog that this store is a part of. */ CatalogVersion?: string; /** Additional data about the store. */ MarketingData?: StoreMarketingModel; /** How the store was last updated (Admin or a third party). */ Source?: string; /** Array of items which can be purchased from this store. */ Store?: StoreItem[]; /** The ID of this store. */ StoreId?: string; } export interface GetTimeRequest extends PlayFabModule.IPlayFabRequestCommon {} export interface GetTimeResult extends PlayFabModule.IPlayFabResultCommon { /** Current server time when the request was received, in UTC */ Time: string; } export interface GetTitleDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** Specific keys to search for in the title data (leave null to get all keys) */ Keys?: string[]; /** * Optional field that specifies the name of an override. This value is ignored when used by the game client; otherwise, * the overrides are applied automatically to the title data. */ OverrideLabel?: string; } export interface GetTitleDataResult extends PlayFabModule.IPlayFabResultCommon { /** a dictionary object of key / value pairs */ Data?: { [key: string]: string | undefined }; } export interface GetTitleNewsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Limits the results to the last n entries. Defaults to 10 if not set. */ Count?: number; } export interface GetTitleNewsResult extends PlayFabModule.IPlayFabResultCommon { /** Array of news items. */ News?: TitleNewsItem[]; } export interface GetTitlePublicKeyRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId: string; /** The shared secret key for this title */ TitleSharedSecret: string; } export interface GetTitlePublicKeyResult extends PlayFabModule.IPlayFabResultCommon { /** Base64 encoded RSA CSP byte array blob containing the title's public RSA key */ RSAPublicKey?: string; } export interface GetTradeStatusRequest extends PlayFabModule.IPlayFabRequestCommon { /** Player who opened trade. */ OfferingPlayerId: string; /** Trade identifier as returned by OpenTradeOffer. */ TradeId: string; } export interface GetTradeStatusResponse extends PlayFabModule.IPlayFabResultCommon { /** Information about the requested trade. */ Trade?: TradeInfo; } export interface GetUserDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** * The version that currently exists according to the caller. The call will return the data for all of the keys if the * version in the system is greater than this. */ IfChangedFromDataVersion?: number; /** List of unique keys to load from. */ Keys?: string[]; /** * Unique PlayFab identifier of the user to load data for. Optional, defaults to yourself if not set. When specified to a * PlayFab id of another player, then this will only return public keys for that account. */ PlayFabId?: string; } export interface GetUserDataResult extends PlayFabModule.IPlayFabResultCommon { /** User specific data for this title. */ Data?: { [key: string]: UserDataRecord }; /** * Indicates the current version of the data that has been set. This is incremented with every set call for that type of * data (read-only, internal, etc). This version can be provided in Get calls to find updated data. */ DataVersion: number; } export interface GetUserInventoryRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface GetUserInventoryResult extends PlayFabModule.IPlayFabResultCommon { /** Array of inventory items belonging to the user. */ Inventory?: ItemInstance[]; /** Array of virtual currency balance(s) belonging to the user. */ VirtualCurrency?: { [key: string]: number }; /** Array of remaining times and timestamps for virtual currencies. */ VirtualCurrencyRechargeTimes?: { [key: string]: VirtualCurrencyRechargeTime }; } export interface GetWindowsHelloChallengeRequest extends PlayFabModule.IPlayFabRequestCommon { /** SHA256 hash of the PublicKey generated by Windows Hello. */ PublicKeyHint: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId: string; } export interface GetWindowsHelloChallengeResponse extends PlayFabModule.IPlayFabResultCommon { /** Server generated challenge to be signed by the user. */ Challenge?: string; } export interface GooglePlayFabIdPair { /** Unique Google identifier for a user. */ GoogleId?: string; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Google identifier. */ PlayFabId?: string; } export interface GrantCharacterToUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version from which items are to be granted. */ CatalogVersion?: string; /** Non-unique display name of the character being granted (1-40 characters in length). */ CharacterName: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * Catalog item identifier of the item in the user's inventory that corresponds to the character in the catalog to be * created. */ ItemId: string; } export interface GrantCharacterToUserResult extends PlayFabModule.IPlayFabResultCommon { /** Unique identifier tagged to this character. */ CharacterId?: string; /** Type of character that was created. */ CharacterType?: string; /** Indicates whether this character was created successfully. */ Result: boolean; } export interface ItemInstance { /** Game specific comment associated with this instance when it was added to the user inventory. */ Annotation?: string; /** Array of unique items that were awarded when this catalog item was purchased. */ BundleContents?: string[]; /** * Unique identifier for the parent inventory item, as defined in the catalog, for object which were added from a bundle or * container. */ BundleParent?: string; /** Catalog version for the inventory item, when this instance was created. */ CatalogVersion?: string; /** * A set of custom key-value pairs on the instance of the inventory item, which is not to be confused with the catalog * item's custom data. */ CustomData?: { [key: string]: string | undefined }; /** CatalogItem.DisplayName at the time this item was purchased. */ DisplayName?: string; /** Timestamp for when this instance will expire. */ Expiration?: string; /** Class name for the inventory item, as defined in the catalog. */ ItemClass?: string; /** Unique identifier for the inventory item, as defined in the catalog. */ ItemId?: string; /** Unique item identifier for this specific instance of the item. */ ItemInstanceId?: string; /** Timestamp for when this instance was purchased. */ PurchaseDate?: string; /** Total number of remaining uses, if this is a consumable item. */ RemainingUses?: number; /** Currency type for the cost of the catalog item. Not available when granting items. */ UnitCurrency?: string; /** Cost of the catalog item in the given currency. Not available when granting items. */ UnitPrice: number; /** The number of uses that were added or removed to this item in this call. */ UsesIncrementedBy?: number; } export interface ItemPurchaseRequest { /** Title-specific text concerning this purchase. */ Annotation?: string; /** Unique ItemId of the item to purchase. */ ItemId: string; /** How many of this item to purchase. Min 1, maximum 25. */ Quantity: number; /** Items to be upgraded as a result of this purchase (upgraded items are hidden, as they are "replaced" by the new items). */ UpgradeFromItems?: string[]; } export interface KongregatePlayFabIdPair { /** Unique Kongregate identifier for a user. */ KongregateId?: string; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Kongregate identifier. */ PlayFabId?: string; } export interface LinkAndroidDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Specific model of the user's device. */ AndroidDevice?: string; /** Android device identifier for the user's device. */ AndroidDeviceId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the device, unlink the other user and re-link. */ ForceLink?: boolean; /** Specific Operating System version for the user's device. */ OS?: string; } export interface LinkAndroidDeviceIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkAppleRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to a specific Apple account, unlink the other user and re-link. */ ForceLink?: boolean; /** * The JSON Web token (JWT) returned by Apple after login. Represented as the identityToken field in the authorization * credential payload. Used to validate the request and find the user ID (Apple subject) to link with. */ IdentityToken: string; } export interface LinkCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Custom unique identifier for the user, generated by the title. */ CustomId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the custom ID, unlink the other user and re-link. */ ForceLink?: boolean; } export interface LinkCustomIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkedPlatformAccountModel { /** Linked account email of the user on the platform, if available */ Email?: string; /** Authentication platform */ Platform?: string; /** Unique account identifier of the user on the platform */ PlatformUserId?: string; /** Linked account username of the user on the platform, if available */ Username?: string; } export interface LinkFacebookAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier from Facebook for the user. */ AccessToken: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; } export interface LinkFacebookAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkFacebookInstantGamesIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Facebook Instant Games signature for the user. */ FacebookInstantGamesSignature: string; /** If another user is already linked to the Facebook Instant Games ID, unlink the other user and re-link. */ ForceLink?: boolean; } export interface LinkFacebookInstantGamesIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkGameCenterAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** Game Center identifier for the player account to be linked. */ GameCenterId: string; /** The URL for the public encryption key that will be used to verify the signature. */ PublicKeyUrl?: string; /** A random value used to compute the hash and keep it randomized. */ Salt?: string; /** The verification signature of the authentication payload. */ Signature?: string; /** * The integer representation of date and time that the signature was created on. PlayFab will reject authentication * signatures not within 10 minutes of the server's current time. */ Timestamp?: string; } export interface LinkGameCenterAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkGoogleAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** * Server authentication code obtained on the client by calling getServerAuthCode() * (https://developers.google.com/identity/sign-in/android/offline-access) from Google Play for the user. */ ServerAuthCode?: string; } export interface LinkGoogleAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Vendor-specific iOS identifier for the user's device. */ DeviceId: string; /** Specific model of the user's device. */ DeviceModel?: string; /** If another user is already linked to the device, unlink the other user and re-link. */ ForceLink?: boolean; /** Specific Operating System version for the user's device. */ OS?: string; } export interface LinkIOSDeviceIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkKongregateAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Valid session auth ticket issued by Kongregate */ AuthTicket: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** Numeric user ID assigned by Kongregate */ KongregateId: string; } export interface LinkKongregateAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to a specific Nintendo Switch account, unlink the other user and re-link. */ ForceLink?: boolean; /** * The JSON Web token (JWT) returned by Nintendo after login. Used to validate the request and find the user ID (Nintendo * Switch subject) to link with. */ IdentityToken: string; } export interface LinkNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the Nintendo Switch Device ID, unlink the other user and re-link. */ ForceLink?: boolean; /** Nintendo Switch unique identifier for the user's device. */ NintendoSwitchDeviceId: string; } export interface LinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkOpenIdConnectRequest extends PlayFabModule.IPlayFabRequestCommon { /** A name that identifies which configured OpenID Connect provider relationship to use. Maximum 100 characters. */ ConnectionId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to a specific OpenId Connect user, unlink the other user and re-link. */ ForceLink?: boolean; /** * The JSON Web token (JWT) returned by the identity provider after login. Represented as the id_token field in the * identity provider's response. Used to validate the request and find the user ID (OpenID Connect subject) to link with. */ IdToken: string; } export interface LinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Authentication code provided by the PlayStation Network. */ AuthCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** Id of the PSN issuer environment. If null, defaults to 256 (production) */ IssuerId?: number; /** Redirect URI supplied to PSN when requesting an auth code */ RedirectUri: string; } export interface LinkPSNAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkSteamAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** * Authentication token for the user, returned as a byte array from Steam, and converted to a string (for example, the byte * 0x08 should become "08"). */ SteamTicket: string; } export interface LinkSteamAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Valid token issued by Twitch */ AccessToken: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; } export interface LinkTwitchAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkWindowsHelloAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Device name. */ DeviceName?: string; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** PublicKey generated by Windows Hello. */ PublicKey: string; /** Player's user named used by Windows Hello. */ UserName: string; } export interface LinkWindowsHelloAccountResponse extends PlayFabModule.IPlayFabResultCommon {} export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ XboxToken: string; } export interface LinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface ListUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; } export interface ListUsersCharactersResult extends PlayFabModule.IPlayFabResultCommon { /** The requested list of characters. */ Characters?: CharacterResult[]; } export interface LocationModel { /** City name. */ City?: string; /** The two-character continent code for this location */ ContinentCode?: string; /** The two-character ISO 3166-1 country code for the country associated with the location */ CountryCode?: string; /** Latitude coordinate of the geographic location. */ Latitude?: number; /** Longitude coordinate of the geographic location. */ Longitude?: number; } type LoginIdentityProvider = "Unknown" | "PlayFab" | "Custom" | "GameCenter" | "GooglePlay" | "Steam" | "XBoxLive" | "PSN" | "Kongregate" | "Facebook" | "IOSDevice" | "AndroidDevice" | "Twitch" | "WindowsHello" | "GameServer" | "CustomServer" | "NintendoSwitch" | "FacebookInstantGames" | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** * If LoginTitlePlayerAccountEntity flag is set on the login request the title_player_account will also be logged in and * returned. */ EntityToken?: EntityTokenResponse; /** Results for requested info. */ InfoResultPayload?: GetPlayerCombinedInfoResultPayload; /** The time of this user's previous login. If there was no previous login, then it's DateTime.MinValue */ LastLoginTime?: string; /** True if the account was newly created on this login. */ NewlyCreated: boolean; /** Player's unique PlayFabId. */ PlayFabId?: string; /** Unique token authorizing the user and game at the server level, for the current session. */ SessionTicket?: string; /** Settings specific to this user. */ SettingsForUser?: UserSettings; /** The experimentation treatments for this user at the time of login. */ TreatmentAssignment?: TreatmentAssignment; } export interface LoginWithAndroidDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Specific model of the user's device. */ AndroidDevice?: string; /** Android device identifier for the user's device. */ AndroidDeviceId?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Specific Operating System version for the user's device. */ OS?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithAppleRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** * The JSON Web token (JWT) returned by Apple after login. Represented as the identityToken field in the authorization * credential payload. */ IdentityToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** Custom unique identifier for the user, generated by the title. */ CustomId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithEmailAddressRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Email address for the account. */ Email: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Password for the PlayFab account (6-100 characters) */ Password: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithFacebookInstantGamesIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Facebook Instant Games signature for the user. */ FacebookInstantGamesSignature: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier from Facebook for the user. */ AccessToken: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithGameCenterRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Unique Game Center player id. */ PlayerId?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** The URL for the public encryption key that will be used to verify the signature. */ PublicKeyUrl?: string; /** A random value used to compute the hash and keep it randomized. */ Salt?: string; /** The verification signature of the authentication payload. */ Signature?: string; /** * The integer representation of date and time that the signature was created on. PlayFab will reject authentication * signatures not within 10 minutes of the server's current time. */ Timestamp?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithGoogleAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * OAuth 2.0 server authentication code obtained on the client by calling the getServerAuthCode() * (https://developers.google.com/identity/sign-in/android/offline-access) Google client API. */ ServerAuthCode?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Vendor-specific iOS identifier for the user's device. */ DeviceId?: string; /** Specific model of the user's device. */ DeviceModel?: string; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Specific Operating System version for the user's device. */ OS?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { /** Token issued by Kongregate's client API for the user. */ AuthTicket?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Numeric user ID assigned by Kongregate */ KongregateId?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** The JSON Web token (JWT) returned by Nintendo after login. */ IdentityToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Nintendo Switch unique identifier for the user's device. */ NintendoSwitchDeviceId?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithOpenIdConnectRequest extends PlayFabModule.IPlayFabRequestCommon { /** A name that identifies which configured OpenID Connect provider relationship to use. Maximum 100 characters. */ ConnectionId: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** * The JSON Web token (JWT) returned by the identity provider after login. Represented as the id_token field in the * identity provider's response. */ IdToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithPlayFabRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Password for the PlayFab account (6-100 characters) */ Password: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; /** PlayFab username for the account. */ Username: string; } export interface LoginWithPSNRequest extends PlayFabModule.IPlayFabRequestCommon { /** Auth code provided by the PSN OAuth provider. */ AuthCode?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Id of the PSN issuer environment. If null, defaults to 256 (production) */ IssuerId?: number; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** Redirect URI supplied to PSN when requesting an auth code */ RedirectUri?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithSteamRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Authentication token for the user, returned as a byte array from Steam, and converted to a string (for example, the byte * 0x08 should become "08"). */ SteamTicket?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { /** Token issued by Twitch's API for the user. */ AccessToken?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithWindowsHelloRequest extends PlayFabModule.IPlayFabRequestCommon { /** The signed response from the user for the Challenge. */ ChallengeSignature: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** SHA256 hash of the PublicKey generated by Windows Hello. */ PublicKeyHint: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; } export interface LoginWithXboxRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ XboxToken?: string; } export interface LogStatement { /** Optional object accompanying the message as contextual information */ Data?: any; /** 'Debug', 'Info', or 'Error' */ Level?: string; Message?: string; } export interface MatchmakeRequest extends PlayFabModule.IPlayFabRequestCommon { /** Build version to match against. [Note: Required if LobbyId is not specified] */ BuildVersion?: string; /** Character to use for stats based matching. Leave null to use account stats. */ CharacterId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Game mode to match make against. [Note: Required if LobbyId is not specified] */ GameMode?: string; /** Lobby identifier to match make against. This is used to select a specific Game Server Instance. */ LobbyId?: string; /** Region to match make against. [Note: Required if LobbyId is not specified] */ Region?: string; /** Start a game session if one with an open slot is not found. Defaults to true. */ StartNewIfNoneFound?: boolean; /** Player statistic to use in finding a match. May be null for no stat-based matching. */ StatisticName?: string; /** Filter to include and/or exclude Game Server Instances associated with certain Tags */ TagFilter?: CollectionFilter; } export interface MatchmakeResult extends PlayFabModule.IPlayFabResultCommon { /** timestamp for when the server will expire, if applicable */ Expires?: string; /** unique lobby identifier of the server matched */ LobbyID?: string; /** time in milliseconds the application is configured to wait on matchmaking results */ PollWaitTimeMS?: number; /** IPV4 address of the server */ ServerIPV4Address?: string; /** IPV6 address of the server */ ServerIPV6Address?: string; /** port number to use for non-http communications with the server */ ServerPort?: number; /** Public DNS name (if any) of the server */ ServerPublicDNSName?: string; /** result of match making process */ Status?: string; /** server authorization ticket (used by RedeemMatchmakerTicket to validate user insertion into the game) */ Ticket?: string; } type MatchmakeStatus = "Complete" | "Waiting" | "GameNotFound" | "NoAvailableSlots" | "SessionClosed"; export interface MembershipModel { /** Whether this membership is active. That is, whether the MembershipExpiration time has been reached. */ IsActive: boolean; /** The time this membership expires */ MembershipExpiration: string; /** The id of the membership */ MembershipId?: string; /** * Membership expirations can be explicitly overridden (via game manager or the admin api). If this membership has been * overridden, this will be the new expiration time. */ OverrideExpiration?: string; /** The list of subscriptions that this player has for this membership */ Subscriptions?: SubscriptionModel[]; } export interface MicrosoftStorePayload { /** Microsoft store ID key. This is optional. Alternatively you can use XboxToken */ CollectionsMsIdKey?: string; /** If collectionsMsIdKey is provided, this will verify the user id in the collectionsMsIdKey is the same. */ UserId?: string; /** * Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). This is * optional. Alternatively can use CollectionsMsIdKey */ XboxToken?: string; } export interface ModifyUserVirtualCurrencyResult extends PlayFabModule.IPlayFabResultCommon { /** Balance of the virtual currency after modification. */ Balance: number; /** * Amount added or subtracted from the user's virtual currency. Maximum VC balance is Int32 (2,147,483,647). Any increase * over this value will be discarded. */ BalanceChange: number; /** User currency was subtracted from. */ PlayFabId?: string; /** Name of the virtual currency which was modified. */ VirtualCurrency?: string; } export interface NameIdentifier { /** Id Identifier, if present */ Id?: string; /** Name Identifier, if present */ Name?: string; } export interface NintendoSwitchPlayFabIdPair { /** Unique Nintendo Switch Device identifier for a user. */ NintendoSwitchDeviceId?: string; /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Nintendo Switch Device identifier. */ PlayFabId?: string; } export interface OpenTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Players who are allowed to accept the trade. If null, the trade may be accepted by any player. If empty, the trade may * not be accepted by any player. */ AllowedPlayerIds?: string[]; /** Player inventory items offered for trade. If not set, the trade is effectively a gift request */ OfferedInventoryInstanceIds?: string[]; /** Catalog items accepted for the trade. If not set, the trade is effectively a gift. */ RequestedCatalogItemIds?: string[]; } export interface OpenTradeResponse extends PlayFabModule.IPlayFabResultCommon { /** The information about the trade that was just opened. */ Trade?: TradeInfo; } export interface PayForPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** Currency to use to fund the purchase. */ Currency: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Purchase order identifier returned from StartPurchase. */ OrderId: string; /** Payment provider to use to fund the purchase. */ ProviderName: string; /** Payment provider transaction identifier. Required for Facebook Payments. */ ProviderTransactionId?: string; } export interface PayForPurchaseResult extends PlayFabModule.IPlayFabResultCommon { /** Local credit applied to the transaction (provider specific). */ CreditApplied: number; /** Purchase order identifier. */ OrderId?: string; /** Provider used for the transaction. */ ProviderData?: string; /** A token generated by the provider to authenticate the request (provider-specific). */ ProviderToken?: string; /** URL to the purchase provider page that details the purchase. */ PurchaseConfirmationPageURL?: string; /** Currency for the transaction, may be a virtual currency or real money. */ PurchaseCurrency?: string; /** Cost of the transaction. */ PurchasePrice: number; /** Status of the transaction. */ Status?: string; /** Virtual currencies granted by the transaction, if any. */ VCAmount?: { [key: string]: number }; /** Current virtual currency balances for the user. */ VirtualCurrency?: { [key: string]: number }; } export interface PaymentOption { /** Specific currency to use to fund the purchase. */ Currency?: string; /** Amount of the specified currency needed for the purchase. */ Price: number; /** Name of the purchase provider for this option. */ ProviderName?: string; /** Amount of existing credit the user has with the provider. */ StoreCredit: number; } export interface PlayerLeaderboardEntry { /** Title-specific display name of the user for this leaderboard entry. */ DisplayName?: string; /** PlayFab unique identifier of the user for this leaderboard entry. */ PlayFabId?: string; /** User's overall position in the leaderboard. */ Position: number; /** The profile of the user, if requested. */ Profile?: PlayerProfileModel; /** Specific value of the user's statistic. */ StatValue: number; } export interface PlayerProfileModel { /** List of advertising campaigns the player has been attributed to */ AdCampaignAttributions?: AdCampaignAttributionModel[]; /** URL of the player's avatar image */ AvatarUrl?: string; /** If the player is currently banned, the UTC Date when the ban expires */ BannedUntil?: string; /** List of all contact email info associated with the player account */ ContactEmailAddresses?: ContactEmailInfoModel[]; /** Player record created */ Created?: string; /** Player display name */ DisplayName?: string; /** List of experiment variants for the player. */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; /** List of all authentication systems linked to this player account */ LinkedAccounts?: LinkedPlatformAccountModel[]; /** List of geographic locations from which the player has logged in to the title */ Locations?: LocationModel[]; /** List of memberships for the player, along with whether are expired. */ Memberships?: MembershipModel[]; /** Player account origination */ Origination?: string; /** PlayFab player account unique identifier */ PlayerId?: string; /** Publisher this player belongs to */ PublisherId?: string; /** List of configured end points registered for sending the player push notifications */ PushNotificationRegistrations?: PushNotificationRegistrationModel[]; /** List of leaderboard statistic values for the player */ Statistics?: StatisticModel[]; /** List of player's tags for segmentation */ Tags?: TagModel[]; /** Title ID this player profile applies to */ TitleId?: string; /** * Sum of the player's purchases made with real-money currencies, converted to US dollars equivalent and represented as a * whole number of cents (1/100 USD). For example, 999 indicates nine dollars and ninety-nine cents. */ TotalValueToDateInUSD?: number; /** List of the player's lifetime purchase totals, summed by real-money currency */ ValuesToDate?: ValueToDateModel[]; } export interface PlayerProfileViewConstraints { /** Whether to show player's avatar URL. Defaults to false */ ShowAvatarUrl: boolean; /** Whether to show the banned until time. Defaults to false */ ShowBannedUntil: boolean; /** Whether to show campaign attributions. Defaults to false */ ShowCampaignAttributions: boolean; /** Whether to show contact email addresses. Defaults to false */ ShowContactEmailAddresses: boolean; /** Whether to show the created date. Defaults to false */ ShowCreated: boolean; /** Whether to show the display name. Defaults to false */ ShowDisplayName: boolean; /** Whether to show player's experiment variants. Defaults to false */ ShowExperimentVariants: boolean; /** Whether to show the last login time. Defaults to false */ ShowLastLogin: boolean; /** Whether to show the linked accounts. Defaults to false */ ShowLinkedAccounts: boolean; /** Whether to show player's locations. Defaults to false */ ShowLocations: boolean; /** Whether to show player's membership information. Defaults to false */ ShowMemberships: boolean; /** Whether to show origination. Defaults to false */ ShowOrigination: boolean; /** Whether to show push notification registrations. Defaults to false */ ShowPushNotificationRegistrations: boolean; /** Reserved for future development */ ShowStatistics: boolean; /** Whether to show tags. Defaults to false */ ShowTags: boolean; /** Whether to show the total value to date in usd. Defaults to false */ ShowTotalValueToDateInUsd: boolean; /** Whether to show the values to date. Defaults to false */ ShowValuesToDate: boolean; } export interface PlayerStatisticVersion { /** time when the statistic version became active */ ActivationTime: string; /** time when the statistic version became inactive due to statistic version incrementing */ DeactivationTime?: string; /** time at which the statistic version was scheduled to become active, based on the configured ResetInterval */ ScheduledActivationTime?: string; /** time at which the statistic version was scheduled to become inactive, based on the configured ResetInterval */ ScheduledDeactivationTime?: string; /** name of the statistic when the version became active */ StatisticName?: string; /** version of the statistic */ Version: number; } export interface PSNAccountPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation Network identifier. */ PlayFabId?: string; /** Unique PlayStation Network identifier for a user. */ PSNAccountId?: string; } export interface PurchaseItemRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version for the items to be purchased (defaults to most recent version. */ CatalogVersion?: string; /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Unique identifier of the item to purchase. */ ItemId: string; /** Price the client expects to pay for the item (in case a new catalog or store was uploaded, with new prices). */ Price: number; /** Store to buy this item through. If not set, prices default to those in the catalog. */ StoreId?: string; /** Virtual currency to use to purchase the item. */ VirtualCurrency: string; } export interface PurchaseItemResult extends PlayFabModule.IPlayFabResultCommon { /** Details for the items purchased. */ Items?: ItemInstance[]; } export interface PurchaseReceiptFulfillment { /** Items granted to the player in fulfillment of the validated receipt. */ FulfilledItems?: ItemInstance[]; /** * Source of the payment price information for the recorded purchase transaction. A value of 'Request' indicates that the * price specified in the request was used, whereas a value of 'Catalog' indicates that the real-money price of the catalog * item matching the product ID in the validated receipt transaction and the currency specified in the request (defaulting * to USD) was used. */ RecordedPriceSource?: string; /** Currency used to purchase the items (ISO 4217 currency code). */ RecordedTransactionCurrency?: string; /** Amount of the stated currency paid for the items, in centesimal units */ RecordedTransactionTotal?: number; } type PushNotificationPlatform = "ApplePushNotificationService" | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; /** Push notification platform */ Platform?: string; } export interface RedeemCouponRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version of the coupon. If null, uses the default catalog */ CatalogVersion?: string; /** Optional identifier for the Character that should receive the item. If null, item is added to the player */ CharacterId?: string; /** Generated coupon code to redeem. */ CouponCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface RedeemCouponResult extends PlayFabModule.IPlayFabResultCommon { /** Items granted to the player as a result of redeeming the coupon. */ GrantedItems?: ItemInstance[]; } export interface RefreshPSNAuthTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** Auth code returned by PSN OAuth system. */ AuthCode: string; /** Id of the PSN issuer environment. If null, defaults to 256 (production) */ IssuerId?: number; /** Redirect URI supplied to PSN when requesting an auth code */ RedirectUri: string; } type Region = "USCentral" | "USEast" | "EUWest" | "Singapore" | "Japan" | "Brazil" | "Australia"; export interface RegionInfo { /** indicates whether the server specified is available in this region */ Available: boolean; /** name of the region */ Name?: string; /** url to ping to get roundtrip time */ PingUrl?: string; /** unique identifier for the region */ Region?: string; } export interface RegisterForIOSPushNotificationRequest extends PlayFabModule.IPlayFabRequestCommon { /** Message to display when confirming push notification. */ ConfirmationMessage?: string; /** Unique token generated by the Apple Push Notification service when the title registered to receive push notifications. */ DeviceToken: string; /** If true, send a test push message immediately after sucessful registration. Defaults to false. */ SendPushNotificationConfirmation?: boolean; } export interface RegisterForIOSPushNotificationResult extends PlayFabModule.IPlayFabResultCommon {} export interface RegisterPlayFabUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** An optional parameter for setting the display name for this title (3-25 characters). */ DisplayName?: string; /** User email address attached to their account */ Email?: string; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Password for the PlayFab account (6-100 characters) */ Password?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** * An optional parameter that specifies whether both the username and email parameters are required. If true, both * parameters are required; if false, the user must supply either the username or email parameter. The default value is * true. */ RequireBothUsernameAndEmail?: boolean; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId?: string; /** PlayFab username for the account (3-20 characters) */ Username?: string; } export interface RegisterPlayFabUserResult extends PlayFabModule.IPlayFabResultCommon { /** * If LoginTitlePlayerAccountEntity flag is set on the login request the title_player_account will also be logged in and * returned. */ EntityToken?: EntityTokenResponse; /** PlayFab unique identifier for this newly created account. */ PlayFabId?: string; /** Unique token identifying the user and game at the server level, for the current session. */ SessionTicket?: string; /** Settings specific to this user. */ SettingsForUser?: UserSettings; /** PlayFab unique user name. */ Username?: string; } export interface RegisterWithWindowsHelloRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Device name. */ DeviceName?: string; /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; /** PublicKey generated by Windows Hello. */ PublicKey?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId: string; /** Player's user name used by Windows Hello. */ UserName?: string; } export interface RemoveContactEmailRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface RemoveContactEmailResult extends PlayFabModule.IPlayFabResultCommon {} export interface RemoveFriendRequest extends PlayFabModule.IPlayFabRequestCommon { /** PlayFab identifier of the friend account which is to be removed. */ FriendPlayFabId: string; } export interface RemoveFriendResult extends PlayFabModule.IPlayFabResultCommon {} export interface RemoveGenericIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Generic service identifier to be removed from the player. */ GenericId: GenericServiceId; } export interface RemoveGenericIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface RemoveSharedGroupMembersRequest extends PlayFabModule.IPlayFabRequestCommon { /** An array of unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabIds: string[]; /** Unique identifier for the shared group. */ SharedGroupId: string; } export interface RemoveSharedGroupMembersResult extends PlayFabModule.IPlayFabResultCommon {} export interface ReportAdActivityRequest extends PlayFabModule.IPlayFabRequestCommon { /** Type of activity, may be Opened, Closed, Start or End */ Activity: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Unique ID of the placement to report for */ PlacementId: string; /** Unique ID of the reward the player was offered */ RewardId: string; } export interface ReportAdActivityResult extends PlayFabModule.IPlayFabResultCommon {} export interface ReportPlayerClientRequest extends PlayFabModule.IPlayFabRequestCommon { /** Optional additional comment by reporting player. */ Comment?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Unique PlayFab identifier of the reported player. */ ReporteeId: string; } export interface ReportPlayerClientResult extends PlayFabModule.IPlayFabResultCommon { /** The number of remaining reports which may be filed today. */ SubmissionsRemaining: number; } export interface RestoreIOSPurchasesRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version of the restored items. If null, defaults to primary catalog. */ CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Base64 encoded receipt data, passed back by the App Store as a result of a successful purchase. */ ReceiptData: string; } export interface RestoreIOSPurchasesResult extends PlayFabModule.IPlayFabResultCommon { /** Fulfilled inventory items and recorded purchases in fulfillment of the validated receipt transactions. */ Fulfillments?: PurchaseReceiptFulfillment[]; } export interface RewardAdActivityRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Placement unique ID */ PlacementId: string; /** Reward unique ID */ RewardId: string; } export interface RewardAdActivityResult extends PlayFabModule.IPlayFabResultCommon { /** PlayStream Event ID that was generated by this reward (all subsequent events are associated with this event identifier) */ AdActivityEventId?: string; /** Debug results from the grants */ DebugResults?: string[]; /** Id of the placement the reward was for */ PlacementId?: string; /** Name of the placement the reward was for */ PlacementName?: string; /** If placement has viewing limits indicates how many views are left */ PlacementViewsRemaining?: number; /** If placement has viewing limits indicates when they will next reset */ PlacementViewsResetMinutes?: number; /** Reward results */ RewardResults?: AdRewardResults; } export interface ScriptExecutionError { /** * Error code, such as CloudScriptNotFound, JavascriptException, CloudScriptFunctionArgumentSizeExceeded, * CloudScriptAPIRequestCountExceeded, CloudScriptAPIRequestError, or CloudScriptHTTPRequestError */ Error?: string; /** Details about the error */ Message?: string; /** Point during the execution of the script at which the error occurred, if any */ StackTrace?: string; } export interface SendAccountRecoveryEmailRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** User email address attached to their account */ Email: string; /** The email template id of the account recovery email template to send. */ EmailTemplateId?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. */ TitleId: string; } export interface SendAccountRecoveryEmailResult extends PlayFabModule.IPlayFabResultCommon {} export interface SetFriendTagsRequest extends PlayFabModule.IPlayFabRequestCommon { /** PlayFab identifier of the friend account to which the tag(s) should be applied. */ FriendPlayFabId: string; /** Array of tags to set on the friend account. */ Tags: string[]; } export interface SetFriendTagsResult extends PlayFabModule.IPlayFabResultCommon {} export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ EncryptedRequest?: string; /** Player secret that is used to verify API request signatures (Enterprise Only). */ PlayerSecret?: string; } export interface SetPlayerSecretResult extends PlayFabModule.IPlayFabResultCommon {} export interface SharedGroupDataRecord { /** Timestamp for when this data was last updated. */ LastUpdated: string; /** Unique PlayFab identifier of the user to last update this value. */ LastUpdatedBy?: string; /** Indicates whether this data can be read by all users (public) or only members of the group (private). */ Permission?: string; /** Data stored for the specified group data key. */ Value?: string; } type SourceType = "Admin" | "BackEnd" | "GameClient" | "GameServer" | "Partner" | "Custom" | "API"; export interface StartGameRequest extends PlayFabModule.IPlayFabRequestCommon { /** version information for the build of the game server which is to be started */ BuildVersion: string; /** character to use for stats based matching. Leave null to use account stats */ CharacterId?: string; /** custom command line argument when starting game server process */ CustomCommandLineData?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** the title-defined game mode this server is to be running (defaults to 0 if there is only one mode) */ GameMode: string; /** the region to associate this server with for match filtering */ Region: string; /** player statistic for others to use in finding this game. May be null for no stat-based matching */ StatisticName?: string; } export interface StartGameResult extends PlayFabModule.IPlayFabResultCommon { /** timestamp for when the server should expire, if applicable */ Expires?: string; /** unique identifier for the lobby of the server started */ LobbyID?: string; /** password required to log into the server */ Password?: string; /** server IPV4 address */ ServerIPV4Address?: string; /** server IPV6 address */ ServerIPV6Address?: string; /** port on the server to be used for communication */ ServerPort?: number; /** server public DNS name */ ServerPublicDNSName?: string; /** unique identifier for the server */ Ticket?: string; } export interface StartPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version for the items to be purchased. Defaults to most recent catalog. */ CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Array of items to purchase. */ Items: ItemPurchaseRequest[]; /** Store through which to purchase items. If not set, prices will be pulled from the catalog itself. */ StoreId?: string; } export interface StartPurchaseResult extends PlayFabModule.IPlayFabResultCommon { /** Cart items to be purchased. */ Contents?: CartItem[]; /** Purchase order identifier. */ OrderId?: string; /** Available methods by which the user can pay. */ PaymentOptions?: PaymentOption[]; /** Current virtual currency totals for the user. */ VirtualCurrencyBalances?: { [key: string]: number }; } export interface StatisticModel { /** Statistic name */ Name?: string; /** Statistic value */ Value: number; /** Statistic version (0 if not a versioned statistic) */ Version: number; } export interface StatisticNameVersion { /** unique name of the statistic */ StatisticName: string; /** the version of the statistic to be returned */ Version: number; } export interface StatisticUpdate { /** unique name of the statistic */ StatisticName: string; /** statistic value for the player */ Value: number; /** * 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. */ Version?: number; } export interface StatisticValue { /** unique name of the statistic */ StatisticName?: string; /** statistic value for the player */ Value: number; /** for updates to an existing statistic value for a player, the version of the statistic when it was loaded */ Version: number; } export interface SteamPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ PlayFabId?: string; /** Unique Steam identifier for a user. */ SteamStringId?: string; } export interface StoreItem { /** Store specific custom data. The data only exists as part of this store; it is not transferred to item instances */ CustomData?: any; /** Intended display position for this item. Note that 0 is the first position */ DisplayPosition?: number; /** * Unique identifier of the item as it exists in the catalog - note that this must exactly match the ItemId from the * catalog */ ItemId: string; /** Override prices for this item for specific currencies */ RealCurrencyPrices?: { [key: string]: number }; /** Override prices for this item in virtual currencies and "RM" (the base Real Money purchase price, in USD pennies) */ VirtualCurrencyPrices?: { [key: string]: number }; } export interface StoreMarketingModel { /** Tagline for a store. */ Description?: string; /** Display name of a store as it will appear to users. */ DisplayName?: string; /** Custom data about a store. */ Metadata?: any; } export interface SubscriptionModel { /** When this subscription expires. */ Expiration: string; /** The time the subscription was orignially purchased */ InitialSubscriptionTime: string; /** Whether this subscription is currently active. That is, if Expiration > now. */ IsActive: boolean; /** The status of this subscription, according to the subscription provider. */ Status?: string; /** The id for this subscription */ SubscriptionId?: string; /** The item id for this subscription from the primary catalog */ SubscriptionItemId?: string; /** The provider for this subscription. Apple or Google Play are supported today. */ SubscriptionProvider?: string; } type SubscriptionProviderStatus = "NoError" | "Cancelled" | "UnknownError" | "BillingError" | "ProductUnavailable" | "CustomerDidNotAcceptPriceChange" | "FreeTrial" | "PaymentPending"; export interface SubtractUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Amount to be subtracted from the user balance of the specified virtual currency. */ Amount: number; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Name of the virtual currency which is to be decremented. */ VirtualCurrency: string; } export interface TagModel { /** Full value of the tag, including namespace */ TagValue?: string; } type TitleActivationStatus = "None" | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" | "RevokedSteam"; export interface TitleNewsItem { /** News item text. */ Body?: string; /** Unique identifier of news item. */ NewsId?: string; /** Date and time when the news item was posted. */ Timestamp: string; /** Title of the news item. */ Title?: string; } export interface TradeInfo { /** Item instances from the accepting player that are used to fulfill the trade. If null, no one has accepted the trade. */ AcceptedInventoryInstanceIds?: string[]; /** The PlayFab ID of the player who accepted the trade. If null, no one has accepted the trade. */ AcceptedPlayerId?: string; /** An optional list of players allowed to complete this trade. If null, anybody can complete the trade. */ AllowedPlayerIds?: string[]; /** If set, The UTC time when this trade was canceled. */ CancelledAt?: string; /** If set, The UTC time when this trade was fulfilled. */ FilledAt?: string; /** If set, The UTC time when this trade was made invalid. */ InvalidatedAt?: string; /** The catalogItem Ids of the item instances being offered. */ OfferedCatalogItemIds?: string[]; /** The itemInstance Ids that are being offered. */ OfferedInventoryInstanceIds?: string[]; /** The PlayFabId for the offering player. */ OfferingPlayerId?: string; /** The UTC time when this trade was created. */ OpenedAt?: string; /** The catalogItem Ids requested in exchange. */ RequestedCatalogItemIds?: string[]; /** Describes the current state of this trade. */ Status?: string; /** The identifier for this trade. */ TradeId?: string; } type TradeStatus = "Invalid" | "Opening" | "Open" | "Accepting" | "Accepted" | "Filled" | "Cancelled"; type TransactionStatus = "CreateCart" | "Init" | "Approved" | "Succeeded" | "FailedByProvider" | "DisputePending" | "RefundPending" | "Refunded" | "RefundFailed" | "ChargedBack" | "FailedByUber" | "FailedByPlayFab" | "Revoked" | "TradePending" | "Traded" | "Upgraded" | "StackPending" | "Stacked" | "Other" | "Failed"; export interface TreatmentAssignment { /** List of the experiment variables. */ Variables?: Variable[]; /** List of the experiment variants. */ Variants?: string[]; } export interface TwitchPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Twitch identifier. */ PlayFabId?: string; /** Unique Twitch identifier for a user. */ TwitchId?: string; } export interface UnlinkAndroidDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Android device identifier for the user's device. If not specified, the most recently signed in Android Device ID will be * used. */ AndroidDeviceId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkAndroidDeviceIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkAppleRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Custom unique identifier for the user, generated by the title. If not specified, the most recently signed in Custom ID * will be used. */ CustomId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkCustomIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkFacebookAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkFacebookAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkFacebookInstantGamesIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Facebook Instant Games identifier for the user. If not specified, the most recently signed in ID will be used. */ FacebookInstantGamesId?: string; } export interface UnlinkFacebookInstantGamesIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkGameCenterAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkGameCenterAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkGoogleAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkGoogleAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * Vendor-specific iOS identifier for the user's device. If not specified, the most recently signed in iOS Device ID will * be used. */ DeviceId?: string; } export interface UnlinkIOSDeviceIDResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkKongregateAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkKongregateAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Nintendo Switch Device identifier for the user. If not specified, the most recently signed in device ID will be used. */ NintendoSwitchDeviceId?: string; } export interface UnlinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkOpenIdConnectRequest extends PlayFabModule.IPlayFabRequestCommon { /** A name that identifies which configured OpenID Connect provider relationship to use. Maximum 100 characters. */ ConnectionId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkPSNAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkSteamAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkSteamAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Valid token issued by Twitch. Used to specify which twitch account to unlink from the profile. By default it uses the * one that is present on the profile. */ AccessToken?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkTwitchAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkWindowsHelloAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** SHA256 hash of the PublicKey generated by Windows Hello. */ PublicKeyHint: string; } export interface UnlinkWindowsHelloAccountResponse extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlockContainerInstanceRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Specifies the catalog version that should be used to determine container contents. If unspecified, uses catalog * associated with the item instance. */ CatalogVersion?: string; /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId?: string; /** ItemInstanceId of the container to unlock. */ ContainerItemInstanceId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * ItemInstanceId of the key that will be consumed by unlocking this container. If the container requires a key, this * parameter is required. */ KeyItemInstanceId?: string; } export interface UnlockContainerItemRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Specifies the catalog version that should be used to determine container contents. If unspecified, uses default/primary * catalog. */ CatalogVersion?: string; /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId?: string; /** Catalog ItemId of the container type to unlock. */ ContainerItemId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UnlockContainerItemResult extends PlayFabModule.IPlayFabResultCommon { /** Items granted to the player as a result of unlocking the container. */ GrantedItems?: ItemInstance[]; /** Unique instance identifier of the container unlocked. */ UnlockedItemInstanceId?: string; /** Unique instance identifier of the key used to unlock the container, if applicable. */ UnlockedWithItemInstanceId?: string; /** Virtual currency granted to the player as a result of unlocking the container. */ VirtualCurrency?: { [key: string]: number }; } export interface UpdateAvatarUrlRequest extends PlayFabModule.IPlayFabRequestCommon { /** URL of the avatar image. If empty, it removes the existing avatar URL. */ ImageUrl: string; } export interface UpdateCharacterDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * Key-value pairs to be written to the custom data. Note that keys are trimmed of whitespace, are limited in size, and may * not begin with a '!' character or be null. */ Data?: { [key: string]: string | undefined }; /** * Optional list of Data-keys to remove from UserData. Some SDKs cannot insert null-values into Data due to language * constraints. Use this to delete the keys directly. */ KeysToRemove?: string[]; /** Permission to be applied to all user data keys written in this request. Defaults to "private" if not set. */ Permission?: string; } export interface UpdateCharacterDataResult extends PlayFabModule.IPlayFabResultCommon { /** * Indicates the current version of the data that has been set. This is incremented with every set call for that type of * data (read-only, internal, etc). This version can be provided in Get calls to find updated data. */ DataVersion: number; } export interface UpdateCharacterStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; /** Statistics to be updated with the provided values, in the Key(string), Value(int) pattern. */ CharacterStatistics?: { [key: string]: number }; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; } export interface UpdateCharacterStatisticsResult extends PlayFabModule.IPlayFabResultCommon {} export interface UpdatePlayerStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Statistics to be updated with the provided values */ Statistics: StatisticUpdate[]; } export interface UpdatePlayerStatisticsResult extends PlayFabModule.IPlayFabResultCommon {} export interface UpdateSharedGroupDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * Key-value pairs to be written to the custom data. Note that keys are trimmed of whitespace, are limited in size, and may * not begin with a '!' character or be null. */ Data?: { [key: string]: string | undefined }; /** * Optional list of Data-keys to remove from UserData. Some SDKs cannot insert null-values into Data due to language * constraints. Use this to delete the keys directly. */ KeysToRemove?: string[]; /** Permission to be applied to all user data keys in this request. */ Permission?: string; /** Unique identifier for the shared group. */ SharedGroupId: string; } export interface UpdateSharedGroupDataResult extends PlayFabModule.IPlayFabResultCommon {} export interface UpdateUserDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * Key-value pairs to be written to the custom data. Note that keys are trimmed of whitespace, are limited in size, and may * not begin with a '!' character or be null. */ Data?: { [key: string]: string | undefined }; /** * Optional list of Data-keys to remove from UserData. Some SDKs cannot insert null-values into Data due to language * constraints. Use this to delete the keys directly. */ KeysToRemove?: string[]; /** * Permission to be applied to all user data keys written in this request. Defaults to "private" if not set. This is used * for requests by one player for information about another player; those requests will only return Public keys. */ Permission?: string; } export interface UpdateUserDataResult extends PlayFabModule.IPlayFabResultCommon { /** * Indicates the current version of the data that has been set. This is incremented with every set call for that type of * data (read-only, internal, etc). This version can be provided in Get calls to find updated data. */ DataVersion: number; } export interface UpdateUserTitleDisplayNameRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** New title display name for the user - must be between 3 and 25 characters. */ DisplayName: string; } export interface UpdateUserTitleDisplayNameResult extends PlayFabModule.IPlayFabResultCommon { /** Current title display name for the user (this will be the original display name if the rename attempt failed). */ DisplayName?: string; } export interface UserAccountInfo { /** User Android device information, if an Android device has been linked */ AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ CustomIdInfo?: UserCustomIdInfo; /** User Facebook information, if a Facebook account has been linked */ FacebookInfo?: UserFacebookInfo; /** Facebook Instant Games account information, if a Facebook Instant Games account has been linked */ FacebookInstantGamesIdInfo?: UserFacebookInstantGamesIdInfo; /** User Gamecenter information, if a Gamecenter account has been linked */ GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ KongregateInfo?: UserKongregateInfo; /** Nintendo Switch account information, if a Nintendo Switch account has been linked */ NintendoSwitchAccountInfo?: UserNintendoSwitchAccountIdInfo; /** Nintendo Switch device information, if a Nintendo Switch device has been linked */ NintendoSwitchDeviceIdInfo?: UserNintendoSwitchDeviceIdInfo; /** OpenID Connect information, if any OpenID Connect accounts have been linked */ OpenIdInfo?: UserOpenIdInfo[]; /** Unique identifier for the user account */ PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; /** User PSN account information, if a PSN account has been linked */ PsnInfo?: UserPsnInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ TitleInfo?: UserTitleInfo; /** User Twitch account information, if a Twitch account has been linked */ TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; /** Windows Hello account information, if a Windows Hello account has been linked */ WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; } export interface UserAndroidDeviceInfo { /** Android device ID */ AndroidDeviceId?: string; } export interface UserAppleIdInfo { /** Apple subject ID */ AppleSubjectId?: string; } export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; } type UserDataPermission = "Private" | "Public"; export interface UserDataRecord { /** Timestamp for when this data was last updated. */ LastUpdated: string; /** * Indicates whether this data can be read by all users (public) or only the user (private). This is used for GetUserData * requests being made by one player about another player. */ Permission?: string; /** Data stored for the specified user data key. */ Value?: string; } export interface UserFacebookInfo { /** Facebook identifier */ FacebookId?: string; /** Facebook full name */ FullName?: string; } export interface UserFacebookInstantGamesIdInfo { /** Facebook Instant Games ID */ FacebookInstantGamesId?: string; } export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; } export interface UserGoogleInfo { /** Email address of the Google account */ GoogleEmail?: string; /** Gender information of the Google account */ GoogleGender?: string; /** Google ID */ GoogleId?: string; /** Locale of the Google account */ GoogleLocale?: string; /** Name of the Google account user */ GoogleName?: string; } export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; } export interface UserKongregateInfo { /** Kongregate ID */ KongregateId?: string; /** Kongregate Username */ KongregateName?: string; } export interface UserNintendoSwitchAccountIdInfo { /** Nintendo Switch account subject ID */ NintendoSwitchAccountSubjectId?: string; } export interface UserNintendoSwitchDeviceIdInfo { /** Nintendo Switch Device ID */ NintendoSwitchDeviceId?: string; } export interface UserOpenIdInfo { /** OpenID Connection ID */ ConnectionId?: string; /** OpenID Issuer */ Issuer?: string; /** OpenID Subject */ Subject?: string; } type UserOrigination = "Organic" | "Steam" | "Google" | "Amazon" | "Facebook" | "Kongregate" | "GamersFirst" | "Unknown" | "IOS" | "LoadTest" | "Android" | "PSN" | "GameCenter" | "CustomId" | "XboxLive" | "Parse" | "Twitch" | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount"; export interface UserPrivateAccountInfo { /** user email address */ Email?: string; } export interface UserPsnInfo { /** PSN account ID */ PsnAccountId?: string; /** PSN online ID */ PsnOnlineId?: string; } export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; /** Boolean for whether this player should report OnFocus play-time tracking. */ GatherFocusInfo: boolean; /** Boolean for whether this player is eligible for ad tracking. */ NeedsAttribution: boolean; } export interface UserSteamInfo { /** what stage of game ownership the user is listed as being in, from Steam */ SteamActivationStatus?: string; /** the country in which the player resides, from Steam data */ SteamCountry?: string; /** currency type set in the user Steam account */ SteamCurrency?: string; /** Steam identifier */ SteamId?: string; /** Steam display name */ SteamName?: string; } export interface UserTitleInfo { /** URL to the player's avatar. */ AvatarUrl?: string; /** * timestamp indicating when the user was first associated with this game (this can differ significantly from when the user * first registered with PlayFab) */ Created: string; /** name of the user, as it is displayed in-game */ DisplayName?: string; /** * timestamp indicating when the user first signed into this game (this can differ from the Created timestamp, as other * events, such as issuing a beta key to the user, can associate the title to the user) */ FirstLogin?: string; /** boolean indicating whether or not the user is currently banned for a title */ isBanned?: boolean; /** timestamp for the last user login for this title */ LastLogin?: string; /** source by which the user first joined the game, if known */ Origination?: string; /** Title player account entity for this user */ TitlePlayerAccount?: EntityKey; } export interface UserTwitchInfo { /** Twitch ID */ TwitchId?: string; /** Twitch Username */ TwitchUserName?: string; } export interface UserWindowsHelloInfo { /** Windows Hello Device Name */ WindowsHelloDeviceName?: string; /** Windows Hello Public Key Hash */ WindowsHelloPublicKeyHash?: string; } export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; } export interface ValidateAmazonReceiptRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version of the fulfilled items. If null, defaults to the primary catalog. */ CatalogVersion?: string; /** Currency used to pay for the purchase (ISO 4217 currency code). */ CurrencyCode?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Amount of the stated currency paid, in centesimal units. */ PurchasePrice: number; /** ReceiptId returned by the Amazon App Store in-app purchase API */ ReceiptId: string; /** AmazonId of the user making the purchase as returned by the Amazon App Store in-app purchase API */ UserId: string; } export interface ValidateAmazonReceiptResult extends PlayFabModule.IPlayFabResultCommon { /** Fulfilled inventory items and recorded purchases in fulfillment of the validated receipt transactions. */ Fulfillments?: PurchaseReceiptFulfillment[]; } export interface ValidateGooglePlayPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version of the fulfilled items. If null, defaults to the primary catalog. */ CatalogVersion?: string; /** Currency used to pay for the purchase (ISO 4217 currency code). */ CurrencyCode?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Amount of the stated currency paid, in centesimal units. */ PurchasePrice?: number; /** Original JSON string returned by the Google Play IAB API. */ ReceiptJson: string; /** Signature returned by the Google Play IAB API. */ Signature: string; } export interface ValidateGooglePlayPurchaseResult extends PlayFabModule.IPlayFabResultCommon { /** Fulfilled inventory items and recorded purchases in fulfillment of the validated receipt transactions. */ Fulfillments?: PurchaseReceiptFulfillment[]; } export interface ValidateIOSReceiptRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version of the fulfilled items. If null, defaults to the primary catalog. */ CatalogVersion?: string; /** Currency used to pay for the purchase (ISO 4217 currency code). */ CurrencyCode?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Amount of the stated currency paid, in centesimal units. */ PurchasePrice: number; /** Base64 encoded receipt data, passed back by the App Store as a result of a successful purchase. */ ReceiptData: string; } export interface ValidateIOSReceiptResult extends PlayFabModule.IPlayFabResultCommon { /** Fulfilled inventory items and recorded purchases in fulfillment of the validated receipt transactions. */ Fulfillments?: PurchaseReceiptFulfillment[]; } export interface ValidateWindowsReceiptRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version of the fulfilled items. If null, defaults to the primary catalog. */ CatalogVersion?: string; /** Currency used to pay for the purchase (ISO 4217 currency code). */ CurrencyCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** Amount of the stated currency paid, in centesimal units. */ PurchasePrice: number; /** XML Receipt returned by the Windows App Store in-app purchase API */ Receipt: string; } export interface ValidateWindowsReceiptResult extends PlayFabModule.IPlayFabResultCommon { /** Fulfilled inventory items and recorded purchases in fulfillment of the validated receipt transactions. */ Fulfillments?: PurchaseReceiptFulfillment[]; } export interface ValueToDateModel { /** ISO 4217 code of the currency used in the purchases */ Currency?: string; /** * Total value of the purchases in a whole number of 1/100 monetary units. For example, 999 indicates nine dollars and * ninety-nine cents when Currency is 'USD') */ TotalValue: number; /** * Total value of the purchases in a string representation of decimal monetary units. For example, '9.99' indicates nine * dollars and ninety-nine cents when Currency is 'USD'. */ TotalValueAsDecimal?: string; } export interface Variable { /** Name of the variable. */ Name: string; /** Value of the variable. */ Value?: string; } export interface VirtualCurrencyRechargeTime { /** * Maximum value to which the regenerating currency will automatically increment. Note that it can exceed this value * through use of the AddUserVirtualCurrency API call. However, it will not regenerate automatically until it has fallen * below this value. */ RechargeMax: number; /** Server timestamp in UTC indicating the next time the virtual currency will be incremented. */ RechargeTime: string; /** Time remaining (in seconds) before the next recharge increment of the virtual currency. */ SecondsToRecharge: number; } export interface WriteClientCharacterEventRequest extends PlayFabModule.IPlayFabRequestCommon { /** Custom event properties. Each property consists of a name (string) and a value (JSON object). */ Body?: { [key: string]: any }; /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * The name of the event, within the namespace scoped to the title. The naming convention is up to the caller, but it * commonly follows the subject_verb_object pattern (e.g. player_logged_in). */ EventName: string; /** The time (in UTC) associated with this event. The value defaults to the current time. */ Timestamp?: string; } export interface WriteClientPlayerEventRequest extends PlayFabModule.IPlayFabRequestCommon { /** Custom data properties associated with the event. Each property consists of a name (string) and a value (JSON object). */ Body?: { [key: string]: any }; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * The name of the event, within the namespace scoped to the title. The naming convention is up to the caller, but it * commonly follows the subject_verb_object pattern (e.g. player_logged_in). */ EventName: string; /** The time (in UTC) associated with this event. The value defaults to the current time. */ Timestamp?: string; } export interface WriteEventResponse extends PlayFabModule.IPlayFabResultCommon { /** * The unique identifier of the event. The values of this identifier consist of ASCII characters and are not constrained to * any particular format. */ EventId?: string; } export interface WriteTitleEventRequest extends PlayFabModule.IPlayFabRequestCommon { /** Custom event properties. Each property consists of a name (string) and a value (JSON object). */ Body?: { [key: string]: any }; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | undefined }; /** * The name of the event, within the namespace scoped to the title. The naming convention is up to the caller, but it * commonly follows the subject_verb_object pattern (e.g. player_logged_in). */ EventName: string; /** The time (in UTC) associated with this event. The value defaults to the current time. */ Timestamp?: string; } export interface XboxLiveAccountPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Xbox Live identifier. */ PlayFabId?: string; /** Unique Xbox Live identifier for a user. */ XboxLiveAccountId?: string; } }