declare module PlayFabServerModule { export interface IPlayFabServer { settings: PlayFabModule.IPlayFabSettings; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Increments the character's balance of the specified virtual currency by the stated amount // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/addcharactervirtualcurrency AddCharacterVirtualCurrency( request: PlayFabServerModels.AddCharacterVirtualCurrencyRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Adds the Friend user to the friendlist of the user with PlayFabId. At least one of // FriendPlayFabId,FriendUsername,FriendEmail, or FriendTitleDisplayName should be initialized. // https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/addfriend AddFriend( request: PlayFabServerModels.AddFriendRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/account-management/addgenericid AddGenericID( request: PlayFabServerModels.AddGenericIDRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Adds a given tag to a player profile. The tag's namespace is automatically generated based on the source of the tag. // https://docs.microsoft.com/rest/api/playfab/server/playstream/addplayertag AddPlayerTag( request: PlayFabServerModels.AddPlayerTagRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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 (and the server) 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/server/shared-group-data/addsharedgroupmembers AddSharedGroupMembers( request: PlayFabServerModels.AddSharedGroupMembersRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Increments the user's balance of the specified virtual currency by the stated amount // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/adduservirtualcurrency AddUserVirtualCurrency( request: PlayFabServerModels.AddUserVirtualCurrencyRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Validated a client's session ticket, and if successful, returns details for that user // https://docs.microsoft.com/rest/api/playfab/server/authentication/authenticatesessionticket AuthenticateSessionTicket( request: PlayFabServerModels.AuthenticateSessionTicketRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Awards the specified users the specified Steam achievements // https://docs.microsoft.com/rest/api/playfab/server/platform-specific-methods/awardsteamachievement AwardSteamAchievement( request: PlayFabServerModels.AwardSteamAchievementRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Bans users by PlayFab ID with optional IP address for the provided game. // https://docs.microsoft.com/rest/api/playfab/server/account-management/banusers BanUsers( request: PlayFabServerModels.BanUsersRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ 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/server/player-item-management/consumeitem ConsumeItem( request: PlayFabServerModels.ConsumeItemRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Requests the creation of a shared group object, containing key/value pairs which may be updated by all members of the // group. When created by a server, the group will initially have no 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/server/shared-group-data/createsharedgroup CreateSharedGroup( request: PlayFabServerModels.CreateSharedGroupRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Deletes the specific character ID from the specified user. // https://docs.microsoft.com/rest/api/playfab/server/characters/deletecharacterfromuser DeleteCharacterFromUser( request: PlayFabServerModels.DeleteCharacterFromUserRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Removes a user's player account from a title and deletes all associated data // https://docs.microsoft.com/rest/api/playfab/server/account-management/deleteplayer DeletePlayer( request: PlayFabServerModels.DeletePlayerRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Deletes title-specific custom properties for a player // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/deleteplayercustomproperties DeletePlayerCustomProperties( request: PlayFabServerModels.DeletePlayerCustomPropertiesRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Deletes push notification template for title // https://docs.microsoft.com/rest/api/playfab/server/account-management/deletepushnotificationtemplate DeletePushNotificationTemplate( request: PlayFabServerModels.DeletePushNotificationTemplateRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Deletes a shared group, freeing up the shared group ID to be reused for a new 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/server/shared-group-data/deletesharedgroup DeleteSharedGroup( request: PlayFabServerModels.DeleteSharedGroupRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Returns the result of an evaluation of a Random Result Table - the ItemId from the game Catalog which would // have been added to the player inventory, if the Random Result Table were added via a Bundle or a call to // UnlockContainer. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/evaluaterandomresulttable EvaluateRandomResultTable( request: PlayFabServerModels.EvaluateRandomResultTableRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. The // PlayFab ID is the entity ID of the player's master_player_account entity. // https://docs.microsoft.com/rest/api/playfab/server/server-side-cloud-script/executecloudscript ExecuteCloudScript( request: PlayFabServerModels.ExecuteCloudScriptServerRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves an array of player segment definitions. Results from this can be used in subsequent API calls such as // GetPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not change. // https://docs.microsoft.com/rest/api/playfab/server/playstream/getallsegments GetAllSegments( request: PlayFabServerModels.GetAllSegmentsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/characters/getalluserscharacters GetAllUsersCharacters( request: PlayFabServerModels.ListUsersCharactersRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getcatalogitems GetCatalogItems( request: PlayFabServerModels.GetCatalogItemsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title-specific custom data for the user which is readable and writable by the client // https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterdata GetCharacterData( request: PlayFabServerModels.GetCharacterDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title-specific custom data for the user's character which cannot be accessed by the client // https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterinternaldata GetCharacterInternalData( request: PlayFabServerModels.GetCharacterDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Retrieves the specified character's current inventory of virtual goods // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getcharacterinventory GetCharacterInventory( request: PlayFabServerModels.GetCharacterInventoryRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/characters/getcharacterleaderboard GetCharacterLeaderboard( request: PlayFabServerModels.GetCharacterLeaderboardRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title-specific custom data for the user's character which can only be read by the client // https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterreadonlydata GetCharacterReadOnlyData( request: PlayFabServerModels.GetCharacterDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the details of all title-specific statistics for the specific character // https://docs.microsoft.com/rest/api/playfab/server/characters/getcharacterstatistics GetCharacterStatistics( request: PlayFabServerModels.GetCharacterStatisticsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/content/getcontentdownloadurl GetContentDownloadUrl( request: PlayFabServerModels.GetContentDownloadUrlRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves a list of ranked friends of the given player for the given statistic, starting from the indicated point in the // leaderboard // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getfriendleaderboard GetFriendLeaderboard( request: PlayFabServerModels.GetFriendLeaderboardRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the current friends for the user with PlayFabId, 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/server/friend-list-management/getfriendslist GetFriendsList( request: PlayFabServerModels.GetFriendsListRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/player-data-management/getleaderboard GetLeaderboard( request: PlayFabServerModels.GetLeaderboardRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves a list of ranked characters for the given statistic, centered on the requested user // https://docs.microsoft.com/rest/api/playfab/server/characters/getleaderboardaroundcharacter GetLeaderboardAroundCharacter( request: PlayFabServerModels.GetLeaderboardAroundCharacterRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves a list of ranked users for the given statistic, centered on the currently signed-in user // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getleaderboardarounduser GetLeaderboardAroundUser( request: PlayFabServerModels.GetLeaderboardAroundUserRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves a list of all of the user's characters for the given statistic. // https://docs.microsoft.com/rest/api/playfab/server/characters/getleaderboardforusercharacters GetLeaderboardForUserCharacters( request: PlayFabServerModels.GetLeaderboardForUsersCharactersRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Returns whatever info is requested in the response for the user. Note that PII (like email address, facebook id) may be // returned. All parameters default to false. // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayercombinedinfo GetPlayerCombinedInfo( request: PlayFabServerModels.GetPlayerCombinedInfoRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves a title-specific custom property value for a player. // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayercustomproperty GetPlayerCustomProperty( request: PlayFabServerModels.GetPlayerCustomPropertyRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the player's profile // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayerprofile GetPlayerProfile( request: PlayFabServerModels.GetPlayerProfileRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // List all segments that a player currently belongs to at this moment in time. // https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersegments GetPlayerSegments( request: PlayFabServerModels.GetPlayersSegmentsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Allows for paging through all players in a given segment. This API creates a snapshot of all player profiles that match // the segment definition at the time of its creation and lives through the Total Seconds to Live, refreshing its life span // on each subsequent use of the Continuation Token. Profiles that change during the course of paging will not be reflected // in the results. AB Test segments are currently not supported by this operation. NOTE: This API is limited to being // called 30 times in one minute. You will be returned an error if you exceed this threshold. // https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersinsegment GetPlayersInSegment( request: PlayFabServerModels.GetPlayersInSegmentRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the current version and values for the indicated statistics, for the local player. // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayerstatistics GetPlayerStatistics( request: PlayFabServerModels.GetPlayerStatisticsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the information on the available versions of the specified statistic. // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayerstatisticversions GetPlayerStatisticVersions( request: PlayFabServerModels.GetPlayerStatisticVersionsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Get all tags with a given Namespace (optional) from a player profile. // https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayertags GetPlayerTags( request: PlayFabServerModels.GetPlayerTagsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of Battle.net account identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrombattlenetaccountids GetPlayFabIDsFromBattleNetAccountIds( request: PlayFabServerModels.GetPlayFabIDsFromBattleNetAccountIdsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of Facebook identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromfacebookids GetPlayFabIDsFromFacebookIDs( request: PlayFabServerModels.GetPlayFabIDsFromFacebookIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of Facebook Instant Games identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromfacebookinstantgamesids GetPlayFabIDsFromFacebookInstantGamesIds( request: PlayFabServerModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/account-management/getplayfabidsfromgenericids GetPlayFabIDsFromGenericIDs( request: PlayFabServerModels.GetPlayFabIDsFromGenericIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of Nintendo Service Account identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoserviceaccountids GetPlayFabIDsFromNintendoServiceAccountIds( request: PlayFabServerModels.GetPlayFabIDsFromNintendoServiceAccountIdsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch Device identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoswitchdeviceids GetPlayFabIDsFromNintendoSwitchDeviceIds( request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of OpenId subject identifiers. A OpenId subject identifier is // the OpenId issuer plus the OpenId subject for the player, as specified by the title when the OpenId identifier was added // to the player account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromopenidsubjectidentifiers GetPlayFabIDsFromOpenIdSubjectIdentifiers( request: PlayFabServerModels.GetPlayFabIDsFromOpenIdsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrompsnaccountids GetPlayFabIDsFromPSNAccountIDs( request: PlayFabServerModels.GetPlayFabIDsFromPSNAccountIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrompsnonlineids GetPlayFabIDsFromPSNOnlineIDs( request: PlayFabServerModels.GetPlayFabIDsFromPSNOnlineIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/account-management/getplayfabidsfromsteamids GetPlayFabIDsFromSteamIDs( request: PlayFabServerModels.GetPlayFabIDsFromSteamIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are persona // names. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromsteamnames GetPlayFabIDsFromSteamNames( request: PlayFabServerModels.GetPlayFabIDsFromSteamNamesRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/account-management/getplayfabidsfromtwitchids GetPlayFabIDsFromTwitchIDs( request: PlayFabServerModels.GetPlayFabIDsFromTwitchIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the unique PlayFab identifiers for the given set of XboxLive identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromxboxliveids GetPlayFabIDsFromXboxLiveIDs( request: PlayFabServerModels.GetPlayFabIDsFromXboxLiveIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the key-value store of custom publisher settings // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getpublisherdata GetPublisherData( request: PlayFabServerModels.GetPublisherDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Retrieves the configuration information for the specified random results tables for the title, including all // ItemId values and weights // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getrandomresulttables GetRandomResultTables( request: PlayFabServerModels.GetRandomResultTablesRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the associated PlayFab account identifiers for the given set of server custom identifiers. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getservercustomidsfromplayfabids GetServerCustomIDsFromPlayFabIDs( request: PlayFabServerModels.GetServerCustomIDsFromPlayFabIDsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves data stored in a shared group object, as well as the list of members in the group. The server can access all // public and private group 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/server/shared-group-data/getsharedgroupdata GetSharedGroupData( request: PlayFabServerModels.GetSharedGroupDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Retrieves the set of items defined for the specified store, including all prices defined, for the specified // player // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getstoreitems GetStoreItems( request: PlayFabServerModels.GetStoreItemsServerRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the current server time // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettime GetTime( request: PlayFabServerModels.GetTimeRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the key-value store of custom title settings // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitledata GetTitleData( request: PlayFabServerModels.GetTitleDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the key-value store of custom internal title settings // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitleinternaldata GetTitleInternalData( request: PlayFabServerModels.GetTitleDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title news feed, as configured in the developer portal // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitlenews GetTitleNews( request: PlayFabServerModels.GetTitleNewsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the relevant details for a specified user // https://docs.microsoft.com/rest/api/playfab/server/account-management/getuseraccountinfo GetUserAccountInfo( request: PlayFabServerModels.GetUserAccountInfoRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Gets all bans for a user. // https://docs.microsoft.com/rest/api/playfab/server/account-management/getuserbans GetUserBans( request: PlayFabServerModels.GetUserBansRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title-specific custom data for the user which is readable and writable by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserdata GetUserData( request: PlayFabServerModels.GetUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title-specific custom data for the user which cannot be accessed by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserinternaldata GetUserInternalData( request: PlayFabServerModels.GetUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Retrieves the specified user's current inventory of virtual goods // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getuserinventory GetUserInventory( request: PlayFabServerModels.GetUserInventoryRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the publisher-specific custom data for the user which is readable and writable by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherdata GetUserPublisherData( request: PlayFabServerModels.GetUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the publisher-specific custom data for the user which cannot be accessed by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherinternaldata GetUserPublisherInternalData( request: PlayFabServerModels.GetUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the publisher-specific custom data for the user which can only be read by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherreadonlydata GetUserPublisherReadOnlyData( request: PlayFabServerModels.GetUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves the title-specific custom data for the user which can only be read by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserreadonlydata GetUserReadOnlyData( request: PlayFabServerModels.GetUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/characters/grantcharactertouser GrantCharacterToUser( request: PlayFabServerModels.GrantCharacterToUserRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Adds the specified items to the specified character's inventory // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstocharacter GrantItemsToCharacter( request: PlayFabServerModels.GrantItemsToCharacterRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Adds the specified items to the specified user's inventory // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstouser GrantItemsToUser( request: PlayFabServerModels.GrantItemsToUserRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Adds the specified items to the specified user inventories // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstousers GrantItemsToUsers( request: PlayFabServerModels.GrantItemsToUsersRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Battle.net account associated with the token to the user's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/linkbattlenetaccount LinkBattleNetAccount( request: PlayFabServerModels.LinkBattleNetAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Nintendo account associated with the token to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoserviceaccount LinkNintendoServiceAccount( request: PlayFabServerModels.LinkNintendoServiceAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Nintendo account associated with the Nintendo Service Account subject or id to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoserviceaccountsubject LinkNintendoServiceAccountSubject( request: PlayFabServerModels.LinkNintendoServiceAccountSubjectRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the NintendoSwitchDeviceId to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoswitchdeviceid LinkNintendoSwitchDeviceId( request: PlayFabServerModels.LinkNintendoSwitchDeviceIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the PlayStation :tm: Network account associated with the provided access code to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnaccount LinkPSNAccount( request: PlayFabServerModels.LinkPSNAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the PlayStation :tm: Network account associated with the provided user id to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnid LinkPSNId( request: PlayFabServerModels.LinkPSNIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the custom server identifier, generated by the title, to the user's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/linkservercustomid LinkServerCustomId( request: PlayFabServerModels.LinkServerCustomIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Steam account associated with the provided Steam ID to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linksteamid LinkSteamId( request: PlayFabServerModels.LinkSteamIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Twitch account associated with the token to the user's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/linktwitchaccount LinkTwitchAccount( request: PlayFabServerModels.LinkTwitchAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Xbox Live account associated with the provided access code to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linkxboxaccount LinkXboxAccount( request: PlayFabServerModels.LinkXboxAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Links the Xbox Live account associated with the provided Xbox ID and Sandbox to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/linkxboxid LinkXboxId( request: PlayFabServerModels.LinkXboxIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Retrieves title-specific custom property values for a player. // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/listplayercustomproperties ListPlayerCustomProperties( request: PlayFabServerModels.ListPlayerCustomPropertiesRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/authentication/loginwithandroiddeviceid LoginWithAndroidDeviceID( request: PlayFabServerModels.LoginWithAndroidDeviceIDRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Sign in the user with a Battle.net identity token // https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithbattlenet LoginWithBattleNet( request: PlayFabServerModels.LoginWithBattleNetRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/authentication/loginwithcustomid LoginWithCustomID( request: PlayFabServerModels.LoginWithCustomIDRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Signs the user in using the 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/server/authentication/loginwithiosdeviceid LoginWithIOSDeviceID( request: PlayFabServerModels.LoginWithIOSDeviceIDRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Signs the user in using a PlayStation :tm: 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/server/authentication/loginwithpsn LoginWithPSN( request: PlayFabServerModels.LoginWithPSNRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Securely login a game client from an external server backend using a custom identifier for that player. Server Custom ID // and Client Custom ID are mutually exclusive and cannot be used to retrieve the same player account. // https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithservercustomid LoginWithServerCustomId( request: PlayFabServerModels.LoginWithServerCustomIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Signs the user in using an Steam 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/server/authentication/loginwithsteamid LoginWithSteamId( request: PlayFabServerModels.LoginWithSteamIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Sign in the user with a Twitch access token // https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithtwitch LoginWithTwitch( request: PlayFabServerModels.LoginWithTwitchRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Signs the user in using a Xbox Live Token from an external server backend, returning a session identifier that can // subsequently be used for API calls which require an authenticated user // https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithxbox LoginWithXbox( request: PlayFabServerModels.LoginWithXboxRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Signs the user in using an Xbox ID and Sandbox 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/server/authentication/loginwithxboxid LoginWithXboxId( request: PlayFabServerModels.LoginWithXboxIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Modifies the number of remaining uses of a player's inventory item // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/modifyitemuses ModifyItemUses( request: PlayFabServerModels.ModifyItemUsesRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Moves an item from a character's inventory into another of the users's character's inventory. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtocharacterfromcharacter MoveItemToCharacterFromCharacter( request: PlayFabServerModels.MoveItemToCharacterFromCharacterRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Moves an item from a user's inventory into their character's inventory. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtocharacterfromuser MoveItemToCharacterFromUser( request: PlayFabServerModels.MoveItemToCharacterFromUserRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Moves an item from a character's inventory into the owning user's inventory. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtouserfromcharacter MoveItemToUserFromCharacter( request: PlayFabServerModels.MoveItemToUserFromCharacterRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ 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/server/player-item-management/redeemcoupon RedeemCoupon( request: PlayFabServerModels.RedeemCouponRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Removes the specified friend from the the user's friend list // https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/removefriend RemoveFriend( request: PlayFabServerModels.RemoveFriendRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Removes the specified generic service identifier from the player's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/removegenericid RemoveGenericID( request: PlayFabServerModels.RemoveGenericIDRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Remove a given tag from a player profile. The tag's namespace is automatically generated based on the source of the tag. // https://docs.microsoft.com/rest/api/playfab/server/playstream/removeplayertag RemovePlayerTag( request: PlayFabServerModels.RemovePlayerTagRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/shared-group-data/removesharedgroupmembers RemoveSharedGroupMembers( request: PlayFabServerModels.RemoveSharedGroupMembersRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Submit a report about a player (due to bad bahavior, etc.) on behalf of another player, so that customer service // representatives for the title can take action concerning potentially toxic players. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/reportplayer ReportPlayer( request: PlayFabServerModels.ReportPlayerServerRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Revoke all active bans for a user. // https://docs.microsoft.com/rest/api/playfab/server/account-management/revokeallbansforuser RevokeAllBansForUser( request: PlayFabServerModels.RevokeAllBansForUserRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Revoke all active bans specified with BanId. // https://docs.microsoft.com/rest/api/playfab/server/account-management/revokebans RevokeBans( request: PlayFabServerModels.RevokeBansRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Revokes access to an item in a user's inventory // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/revokeinventoryitem RevokeInventoryItem( request: PlayFabServerModels.RevokeInventoryItemRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Revokes access for up to 25 items across multiple users and characters. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/revokeinventoryitems RevokeInventoryItems( request: PlayFabServerModels.RevokeInventoryItemsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Saves push notification template for title // https://docs.microsoft.com/rest/api/playfab/server/account-management/savepushnotificationtemplate SavePushNotificationTemplate( request: PlayFabServerModels.SavePushNotificationTemplateRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Forces an email to be sent to the registered contact email address for the user's account based on an account recovery // email template // https://docs.microsoft.com/rest/api/playfab/server/account-management/sendcustomaccountrecoveryemail SendCustomAccountRecoveryEmail( request: PlayFabServerModels.SendCustomAccountRecoveryEmailRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Sends an email based on an email template to a player's contact email // https://docs.microsoft.com/rest/api/playfab/server/account-management/sendemailfromtemplate SendEmailFromTemplate( request: PlayFabServerModels.SendEmailFromTemplateRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Sends an iOS/Android Push Notification to a specific user, if that user's device has been configured for Push // Notifications in PlayFab. If a user has linked both Android and iOS devices, both will be notified. // https://docs.microsoft.com/rest/api/playfab/server/account-management/sendpushnotification SendPushNotification( request: PlayFabServerModels.SendPushNotificationRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Sends an iOS/Android Push Notification template to a specific user, if that user's device has been configured for Push // Notifications in PlayFab. If a user has linked both Android and iOS devices, both will be notified. // https://docs.microsoft.com/rest/api/playfab/server/account-management/sendpushnotificationfromtemplate SendPushNotificationFromTemplate( request: PlayFabServerModels.SendPushNotificationFromTemplateRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the tag list for a specified user in the friend list of another user // https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/setfriendtags SetFriendTags( request: PlayFabServerModels.SetFriendTagsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/authentication/setplayersecret SetPlayerSecret( request: PlayFabServerModels.SetPlayerSecretRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the key-value store of custom publisher settings // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/setpublisherdata SetPublisherData( request: PlayFabServerModels.SetPublisherDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the key-value store of custom title settings // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/settitledata SetTitleData( request: PlayFabServerModels.SetTitleDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the key-value store of custom title settings // https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/settitleinternaldata SetTitleInternalData( request: PlayFabServerModels.SetTitleDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Decrements the character'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/server/player-item-management/subtractcharactervirtualcurrency SubtractCharacterVirtualCurrency( request: PlayFabServerModels.SubtractCharacterVirtualCurrencyRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ 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/server/player-item-management/subtractuservirtualcurrency SubtractUserVirtualCurrency( request: PlayFabServerModels.SubtractUserVirtualCurrencyRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the related Battle.net account from the user's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkbattlenetaccount UnlinkBattleNetAccount( request: PlayFabServerModels.UnlinkBattleNetAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the related Nintendo account from the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinknintendoserviceaccount UnlinkNintendoServiceAccount( request: PlayFabServerModels.UnlinkNintendoServiceAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the related NintendoSwitchDeviceId from the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinknintendoswitchdeviceid UnlinkNintendoSwitchDeviceId( request: PlayFabServerModels.UnlinkNintendoSwitchDeviceIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the related PlayStation :tm: Network account from the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkpsnaccount UnlinkPSNAccount( request: PlayFabServerModels.UnlinkPSNAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the custom server identifier from the user's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkservercustomid UnlinkServerCustomId( request: PlayFabServerModels.UnlinkServerCustomIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the Steam account associated with the provided Steam ID to the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinksteamid UnlinkSteamId( request: PlayFabServerModels.UnlinkSteamIdRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the related Twitch account from the user's PlayFab account. // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinktwitchaccount UnlinkTwitchAccount( request: PlayFabServerModels.UnlinkTwitchAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Unlinks the related Xbox Live account from the user's PlayFab account // https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkxboxaccount UnlinkXboxAccount( request: PlayFabServerModels.UnlinkXboxAccountRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Opens a specific container (ContainerItemInstanceId), with a specific key (KeyItemInstanceId, 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/server/player-item-management/unlockcontainerinstance UnlockContainerInstance( request: PlayFabServerModels.UnlockContainerInstanceRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Searches Player or Character inventory for any ItemInstance matching the given CatalogItemId, if necessary // unlocks it using any 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/server/player-item-management/unlockcontaineritem UnlockContainerItem( request: PlayFabServerModels.UnlockContainerItemRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Update the avatar URL of the specified player // https://docs.microsoft.com/rest/api/playfab/server/account-management/updateavatarurl UpdateAvatarUrl( request: PlayFabServerModels.UpdateAvatarUrlRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates information of a list of existing bans specified with Ban Ids. // https://docs.microsoft.com/rest/api/playfab/server/account-management/updatebans UpdateBans( request: PlayFabServerModels.UpdateBansRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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/server/character-data/updatecharacterdata UpdateCharacterData( request: PlayFabServerModels.UpdateCharacterDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the title-specific custom data for the user's character which cannot be accessed by the client // https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterinternaldata UpdateCharacterInternalData( request: PlayFabServerModels.UpdateCharacterDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the title-specific custom data for the user's character which can only be read by the client // https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterreadonlydata UpdateCharacterReadOnlyData( request: PlayFabServerModels.UpdateCharacterDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the values of the specified title-specific statistics for the specific character // https://docs.microsoft.com/rest/api/playfab/server/characters/updatecharacterstatistics UpdateCharacterStatistics( request: PlayFabServerModels.UpdateCharacterStatisticsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the title-specific custom property values for a player // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateplayercustomproperties UpdatePlayerCustomProperties( request: PlayFabServerModels.UpdatePlayerCustomPropertiesRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the values of the specified title-specific statistics for the user // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateplayerstatistics UpdatePlayerStatistics( request: PlayFabServerModels.UpdatePlayerStatisticsRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // 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 (and the server) 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/server/shared-group-data/updatesharedgroupdata UpdateSharedGroupData( request: PlayFabServerModels.UpdateSharedGroupDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the title-specific custom data for the user which is readable and writable by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserdata UpdateUserData( request: PlayFabServerModels.UpdateUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the title-specific custom data for the user which cannot be accessed by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserinternaldata UpdateUserInternalData( request: PlayFabServerModels.UpdateUserInternalDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for // version 2._ Updates the key-value pair data tagged to the specified item, which is read-only from the client. // https://docs.microsoft.com/rest/api/playfab/server/player-item-management/updateuserinventoryitemcustomdata UpdateUserInventoryItemCustomData( request: PlayFabServerModels.UpdateUserInventoryItemDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the publisher-specific custom data for the user which is readable and writable by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherdata UpdateUserPublisherData( request: PlayFabServerModels.UpdateUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the publisher-specific custom data for the user which cannot be accessed by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherinternaldata UpdateUserPublisherInternalData( request: PlayFabServerModels.UpdateUserInternalDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the publisher-specific custom data for the user which can only be read by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherreadonlydata UpdateUserPublisherReadOnlyData( request: PlayFabServerModels.UpdateUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Updates the title-specific custom data for the user which can only be read by the client // https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserreadonlydata UpdateUserReadOnlyData( request: PlayFabServerModels.UpdateUserDataRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Writes a character-based event into PlayStream. // https://docs.microsoft.com/rest/api/playfab/server/analytics/writecharacterevent WriteCharacterEvent( request: PlayFabServerModels.WriteServerCharacterEventRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Writes a player-based event into PlayStream. // https://docs.microsoft.com/rest/api/playfab/server/analytics/writeplayerevent WritePlayerEvent( request: PlayFabServerModels.WriteServerPlayerEventRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; // Writes a title-based event into PlayStream. // https://docs.microsoft.com/rest/api/playfab/server/analytics/writetitleevent WriteTitleEvent( request: PlayFabServerModels.WriteTitleEventRequest | null, callback: PlayFabModule.ApiCallback | null, ): void; } } declare module PlayFabServerModels { export interface AdCampaignAttribution { // UTC time stamp of attribution AttributedAt: string; // Attribution campaign identifier CampaignId?: string; // Attribution network name Platform?: string; } export interface AdCampaignAttributionModel { // UTC time stamp of attribution AttributedAt: string; // Attribution campaign identifier CampaignId?: string; // Attribution network name Platform?: string; } export interface AddCharacterVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { // Amount to be added to the character balance of the specified virtual currency. Maximum VC balance is Int32 // (2,147,483,647). Any increase over this value will be discarded. Amount: number; // 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 | null }; // PlayFab unique identifier of the user whose virtual currency balance is to be incremented. PlayFabId: string; // Name of the virtual currency which is to be incremented. VirtualCurrency: string; } export interface AddFriendRequest extends PlayFabModule.IPlayFabRequestCommon { // Email address of the user being added. FriendEmail?: string; // The PlayFab identifier of the user being added. FriendPlayFabId?: string; // Title-specific display name of the user to being added. FriendTitleDisplayName?: string; // The PlayFab username of the user being added FriendUsername?: string; // PlayFab identifier of the player to add a new friend. PlayFabId: string; } export interface AddGenericIDRequest extends PlayFabModule.IPlayFabRequestCommon { // Generic service identifier to add to the player account. GenericId: GenericServiceId; // PlayFabId of the user to link. PlayFabId: string; } export interface AddPlayerTagRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Unique tag for player profile. TagName: string; } export interface AddPlayerTagResult 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 AddUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { // Amount to be added to the user balance of the specified virtual currency. Maximum VC balance is Int32 (2,147,483,647). // Any increase over this value will be discarded. Amount: number; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // PlayFab unique identifier of the user whose virtual currency balance is to be increased. PlayFabId: string; // Name of the virtual currency which is to be incremented. VirtualCurrency: string; } export interface AdvancedPushPlatformMsg { // Stops GoogleCloudMessaging notifications from including both notification and data properties and instead only sends the // data property. GCMDataOnly?: boolean; // The Json the platform should receive. Json: string; // The platform that should receive the Json. Platform: string; } export interface AuthenticateSessionTicketRequest extends PlayFabModule.IPlayFabRequestCommon { // Session ticket as issued by a PlayFab client login API. SessionTicket: string; } export interface AuthenticateSessionTicketResult extends PlayFabModule.IPlayFabResultCommon { // Indicates if token was expired at request time. IsSessionTicketExpired?: boolean; // Account info for the user whose session ticket was supplied. UserInfo?: UserAccountInfo; } export interface AwardSteamAchievementItem { // Unique Steam achievement name. AchievementName: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Result of the award attempt (only valid on response, not on request). Result: boolean; } export interface AwardSteamAchievementRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of achievements to grant and the users to whom they are to be granted. Achievements: AwardSteamAchievementItem[]; } export interface AwardSteamAchievementResult extends PlayFabModule.IPlayFabResultCommon { // Array of achievements granted. AchievementResults?: AwardSteamAchievementItem[]; } export interface BanInfo { // The active state of this ban. Expired bans may still have this value set to true but they will have no effect. Active: boolean; // The unique Ban Id associated with this ban. BanId?: string; // The time when this ban was applied. Created?: string; // The time when this ban expires. Permanent bans do not have expiration date. Expires?: string; // The IP address on which the ban was applied. May affect multiple players. IPAddress?: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId?: string; // The reason why this ban was applied. Reason?: string; // The family type of the user that is included in the ban. UserFamilyType?: string; } export interface BanRequest { // The duration in hours for the ban. Leave this blank for a permanent ban. DurationInHours?: number; // IP address to be banned. May affect multiple players. IPAddress?: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // The reason for this ban. Maximum 140 characters. Reason?: string; // The family type of the user that should be included in the ban if applicable. May affect multiple players. UserFamilyType?: string; } export interface BanUsersRequest extends PlayFabModule.IPlayFabRequestCommon { // List of ban requests to be applied. Maximum 100. Bans: BanRequest[]; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; } export interface BanUsersResult extends PlayFabModule.IPlayFabResultCommon { // Information on the bans that were applied BanData?: BanInfo[]; } export interface BattleNetAccountPlayFabIdPair { // Unique Battle.net account identifier for a user. BattleNetAccountId?: string; // Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Battle.net account identifier. PlayFabId?: string; } 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 ChurnRiskLevel = "NoData" | "LowRisk" | "MediumRisk" | "HighRisk"; type CloudScriptRevisionOption = "Live" | "Latest" | "Specific"; 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 | null }; // Unique instance identifier of the item to be consumed. ItemInstanceId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: 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 ContactEmailInfo { // The email address EmailAddress?: string; // The name of the email info data Name?: string; // The verification status of the email VerificationStatus?: string; } 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; } type ContinentCode = "AF" | "AN" | "AS" | "EU" | "NA" | "OC" | "SA" | "Unknown"; 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" | "Unknown"; 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 CustomPropertyDetails { // The custom property's name. Name?: string; // The custom property's value. Value?: any; } export interface DeleteCharacterFromUserRequest 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // If true, the character's inventory will be transferred up to the owning user; otherwise, this request will purge those // items. SaveCharacterInventory: boolean; } export interface DeleteCharacterFromUserResult extends PlayFabModule.IPlayFabResultCommon {} export interface DeletedPropertyDetails { // The name of the property which was requested to be deleted. Name?: string; // Indicates whether or not the property was deleted. If false, no property with that name existed. WasDeleted: boolean; } export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the // player's properties have not been updated by any other clients since the last version. ExpectedPropertiesVersion?: number; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // A list of property names denoting which properties should be deleted. PropertyNames: string[]; } export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { // The list of properties requested to be deleted. DeletedProperties?: DeletedPropertyDetails[]; // PlayFab unique identifier of the user whose properties were deleted. PlayFabId?: string; // Indicates the current version of a player's properties that have been set. This is incremented after updates and // deletes. This version can be provided in update and delete calls for concurrency control. PropertiesVersion: number; } export interface DeletePlayerRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface DeletePlayerResult extends PlayFabModule.IPlayFabResultCommon {} export interface DeletePushNotificationTemplateRequest extends PlayFabModule.IPlayFabRequestCommon { // Id of the push notification template to be deleted. PushNotificationTemplateId: string; } export interface DeletePushNotificationTemplateResult extends PlayFabModule.IPlayFabResultCommon {} export interface DeleteSharedGroupRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique identifier for the shared group. SharedGroupId: string; } 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 EvaluateRandomResultTableRequest extends PlayFabModule.IPlayFabRequestCommon { // Specifies the catalog version that should be used to evaluate the Random Result Table. If unspecified, uses // default/primary catalog. CatalogVersion?: string; // The unique identifier of the Random Result Table to use. TableId: string; } export interface EvaluateRandomResultTableResult extends PlayFabModule.IPlayFabResultCommon { // Unique identifier for the item returned from the Random Result Table evaluation, for the given catalog. ResultItemId?: string; } 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 ExecuteCloudScriptServerRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // 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; // The unique user identifier for the player on whose behalf the script is being run PlayFabId: string; // 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; } type ExternalFriendSources = "None" | "Steam" | "Facebook" | "Xbox" | "Psn" | "All"; 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 connected Facebook friend both have PlayFab Accounts in the same title). FacebookInfo?: UserFacebookInfo; // PlayFab unique identifier for this friend. FriendPlayFabId?: string; // Available Game Center information (if the user and connected Game Center friend both have PlayFab Accounts in the same // title). GameCenterInfo?: UserGameCenterInfo; // The profile of the user, if requested. Profile?: PlayerProfileModel; // Available PlayStation :tm: Network information, if the user connected PlayStation :tm Network friend both have PlayFab // Accounts in the same title. PSNInfo?: UserPsnInfo; // Available Steam information (if the user and connected Steam friend both have PlayFab Accounts in the same title). 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 connected Xbox Live friend both have PlayFab Accounts in the same title). XboxInfo?: UserXboxInfo; } type GenericErrorCodes = "Success" | "UnkownError" | "InvalidParams" | "AccountNotFound" | "AccountBanned" | "InvalidUsernameOrPassword" | "InvalidTitleId" | "InvalidEmailAddress" | "EmailAddressNotAvailable" | "InvalidUsername" | "InvalidPassword" | "UsernameNotAvailable" | "InvalidSteamTicket" | "AccountAlreadyLinked" | "LinkedAccountAlreadyClaimed" | "InvalidFacebookToken" | "AccountNotLinked" | "FailedByPaymentProvider" | "CouponCodeNotFound" | "InvalidContainerItem" | "ContainerNotOwned" | "KeyNotOwned" | "InvalidItemIdInTable" | "InvalidReceipt" | "ReceiptAlreadyUsed" | "ReceiptCancelled" | "GameNotFound" | "GameModeNotFound" | "InvalidGoogleToken" | "UserIsNotPartOfDeveloper" | "InvalidTitleForDeveloper" | "TitleNameConflicts" | "UserisNotValid" | "ValueAlreadyExists" | "BuildNotFound" | "PlayerNotInGame" | "InvalidTicket" | "InvalidDeveloper" | "InvalidOrderInfo" | "RegistrationIncomplete" | "InvalidPlatform" | "UnknownError" | "SteamApplicationNotOwned" | "WrongSteamAccount" | "TitleNotActivated" | "RegistrationSessionNotFound" | "NoSuchMod" | "FileNotFound" | "DuplicateEmail" | "ItemNotFound" | "ItemNotOwned" | "ItemNotRecycleable" | "ItemNotAffordable" | "InvalidVirtualCurrency" | "WrongVirtualCurrency" | "WrongPrice" | "NonPositiveValue" | "InvalidRegion" | "RegionAtCapacity" | "ServerFailedToStart" | "NameNotAvailable" | "InsufficientFunds" | "InvalidDeviceID" | "InvalidPushNotificationToken" | "NoRemainingUses" | "InvalidPaymentProvider" | "PurchaseInitializationFailure" | "DuplicateUsername" | "InvalidBuyerInfo" | "NoGameModeParamsSet" | "BodyTooLarge" | "ReservedWordInBody" | "InvalidTypeInBody" | "InvalidRequest" | "ReservedEventName" | "InvalidUserStatistics" | "NotAuthenticated" | "StreamAlreadyExists" | "ErrorCreatingStream" | "StreamNotFound" | "InvalidAccount" | "PurchaseDoesNotExist" | "InvalidPurchaseTransactionStatus" | "APINotEnabledForGameClientAccess" | "NoPushNotificationARNForTitle" | "BuildAlreadyExists" | "BuildPackageDoesNotExist" | "CustomAnalyticsEventsNotEnabledForTitle" | "InvalidSharedGroupId" | "NotAuthorized" | "MissingTitleGoogleProperties" | "InvalidItemProperties" | "InvalidPSNAuthCode" | "InvalidItemId" | "PushNotEnabledForAccount" | "PushServiceError" | "ReceiptDoesNotContainInAppItems" | "ReceiptContainsMultipleInAppItems" | "InvalidBundleID" | "JavascriptException" | "InvalidSessionTicket" | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" | "GameTicketDoesNotMatchLobby" | "LinkedDeviceAlreadyClaimed" | "DeviceAlreadyLinked" | "DeviceNotLinked" | "PartialFailure" | "PublisherNotSet" | "ServiceUnavailable" | "VersionNotFound" | "RevisionNotFound" | "InvalidPublisherId" | "DownstreamServiceUnavailable" | "APINotIncludedInTitleUsageTier" | "DAULimitExceeded" | "APIRequestLimitExceeded" | "InvalidAPIEndpoint" | "BuildNotAvailable" | "ConcurrentEditError" | "ContentNotFound" | "CharacterNotFound" | "CloudScriptNotFound" | "ContentQuotaExceeded" | "InvalidCharacterStatistics" | "PhotonNotEnabledForTitle" | "PhotonApplicationNotFound" | "PhotonApplicationNotAssociatedWithTitle" | "InvalidEmailOrPassword" | "FacebookAPIError" | "InvalidContentType" | "KeyLengthExceeded" | "DataLengthExceeded" | "TooManyKeys" | "FreeTierCannotHaveVirtualCurrency" | "MissingAmazonSharedKey" | "AmazonValidationError" | "InvalidPSNIssuerId" | "PSNInaccessible" | "ExpiredAuthToken" | "FailedToGetEntitlements" | "FailedToConsumeEntitlement" | "TradeAcceptingUserNotAllowed" | "TradeInventoryItemIsAssignedToCharacter" | "TradeInventoryItemIsBundle" | "TradeStatusNotValidForCancelling" | "TradeStatusNotValidForAccepting" | "TradeDoesNotExist" | "TradeCancelled" | "TradeAlreadyFilled" | "TradeWaitForStatusTimeout" | "TradeInventoryItemExpired" | "TradeMissingOfferedAndAcceptedItems" | "TradeAcceptedItemIsBundle" | "TradeAcceptedItemIsStackable" | "TradeInventoryItemInvalidStatus" | "TradeAcceptedCatalogItemInvalid" | "TradeAllowedUsersInvalid" | "TradeInventoryItemDoesNotExist" | "TradeInventoryItemIsConsumed" | "TradeInventoryItemIsStackable" | "TradeAcceptedItemsMismatch" | "InvalidKongregateToken" | "FeatureNotConfiguredForTitle" | "NoMatchingCatalogItemForReceipt" | "InvalidCurrencyCode" | "NoRealMoneyPriceForCatalogItem" | "TradeInventoryItemIsNotTradable" | "TradeAcceptedCatalogItemIsNotTradable" | "UsersAlreadyFriends" | "LinkedIdentifierAlreadyClaimed" | "CustomIdNotLinked" | "TotalDataSizeExceeded" | "DeleteKeyConflict" | "InvalidXboxLiveToken" | "ExpiredXboxLiveToken" | "ResettableStatisticVersionRequired" | "NotAuthorizedByTitle" | "NoPartnerEnabled" | "InvalidPartnerResponse" | "APINotEnabledForGameServerAccess" | "StatisticNotFound" | "StatisticNameConflict" | "StatisticVersionClosedForWrites" | "StatisticVersionInvalid" | "APIClientRequestRateLimitExceeded" | "InvalidJSONContent" | "InvalidDropTable" | "StatisticVersionAlreadyIncrementedForScheduledInterval" | "StatisticCountLimitExceeded" | "StatisticVersionIncrementRateExceeded" | "ContainerKeyInvalid" | "CloudScriptExecutionTimeLimitExceeded" | "NoWritePermissionsForEvent" | "CloudScriptFunctionArgumentSizeExceeded" | "CloudScriptAPIRequestCountExceeded" | "CloudScriptAPIRequestError" | "CloudScriptHTTPRequestError" | "InsufficientGuildRole" | "GuildNotFound" | "OverLimit" | "EventNotFound" | "InvalidEventField" | "InvalidEventName" | "CatalogNotConfigured" | "OperationNotSupportedForPlatform" | "SegmentNotFound" | "StoreNotFound" | "InvalidStatisticName" | "TitleNotQualifiedForLimit" | "InvalidServiceLimitLevel" | "ServiceLimitLevelInTransition" | "CouponAlreadyRedeemed" | "GameServerBuildSizeLimitExceeded" | "GameServerBuildCountLimitExceeded" | "VirtualCurrencyCountLimitExceeded" | "VirtualCurrencyCodeExists" | "TitleNewsItemCountLimitExceeded" | "InvalidTwitchToken" | "TwitchResponseError" | "ProfaneDisplayName" | "UserAlreadyAdded" | "InvalidVirtualCurrencyCode" | "VirtualCurrencyCannotBeDeleted" | "IdentifierAlreadyClaimed" | "IdentifierNotLinked" | "InvalidContinuationToken" | "ExpiredContinuationToken" | "InvalidSegment" | "InvalidSessionId" | "SessionLogNotFound" | "InvalidSearchTerm" | "TwoFactorAuthenticationTokenRequired" | "GameServerHostCountLimitExceeded" | "PlayerTagCountLimitExceeded" | "RequestAlreadyRunning" | "ActionGroupNotFound" | "MaximumSegmentBulkActionJobsRunning" | "NoActionsOnPlayersInSegmentJob" | "DuplicateStatisticName" | "ScheduledTaskNameConflict" | "ScheduledTaskCreateConflict" | "InvalidScheduledTaskName" | "InvalidTaskSchedule" | "SteamNotEnabledForTitle" | "LimitNotAnUpgradeOption" | "NoSecretKeyEnabledForCloudScript" | "TaskNotFound" | "TaskInstanceNotFound" | "InvalidIdentityProviderId" | "MisconfiguredIdentityProvider" | "InvalidScheduledTaskType" | "BillingInformationRequired" | "LimitedEditionItemUnavailable" | "InvalidAdPlacementAndReward" | "AllAdPlacementViewsAlreadyConsumed" | "GoogleOAuthNotConfiguredForTitle" | "GoogleOAuthError" | "UserNotFriend" | "InvalidSignature" | "InvalidPublicKey" | "GoogleOAuthNoIdTokenIncludedInResponse" | "StatisticUpdateInProgress" | "LeaderboardVersionNotAvailable" | "StatisticAlreadyHasPrizeTable" | "PrizeTableHasOverlappingRanks" | "PrizeTableHasMissingRanks" | "PrizeTableRankStartsAtZero" | "InvalidStatistic" | "ExpressionParseFailure" | "ExpressionInvokeFailure" | "ExpressionTooLong" | "DataUpdateRateExceeded" | "RestrictedEmailDomain" | "EncryptionKeyDisabled" | "EncryptionKeyMissing" | "EncryptionKeyBroken" | "NoSharedSecretKeyConfigured" | "SecretKeyNotFound" | "PlayerSecretAlreadyConfigured" | "APIRequestsDisabledForTitle" | "InvalidSharedSecretKey" | "PrizeTableHasNoRanks" | "ProfileDoesNotExist" | "ContentS3OriginBucketNotConfigured" | "InvalidEnvironmentForReceipt" | "EncryptedRequestNotAllowed" | "SignedRequestNotAllowed" | "RequestViewConstraintParamsNotAllowed" | "BadPartnerConfiguration" | "XboxBPCertificateFailure" | "XboxXASSExchangeFailure" | "InvalidEntityId" | "StatisticValueAggregationOverflow" | "EmailMessageFromAddressIsMissing" | "EmailMessageToAddressIsMissing" | "SmtpServerAuthenticationError" | "SmtpServerLimitExceeded" | "SmtpServerInsufficientStorage" | "SmtpServerCommunicationError" | "SmtpServerGeneralFailure" | "EmailClientTimeout" | "EmailClientCanceledTask" | "EmailTemplateMissing" | "InvalidHostForTitleId" | "EmailConfirmationTokenDoesNotExist" | "EmailConfirmationTokenExpired" | "AccountDeleted" | "PlayerSecretNotConfigured" | "InvalidSignatureTime" | "NoContactEmailAddressFound" | "InvalidAuthToken" | "AuthTokenDoesNotExist" | "AuthTokenExpired" | "AuthTokenAlreadyUsedToResetPassword" | "MembershipNameTooLong" | "MembershipNotFound" | "GoogleServiceAccountInvalid" | "GoogleServiceAccountParseFailure" | "EntityTokenMissing" | "EntityTokenInvalid" | "EntityTokenExpired" | "EntityTokenRevoked" | "InvalidProductForSubscription" | "XboxInaccessible" | "SubscriptionAlreadyTaken" | "SmtpAddonNotEnabled" | "APIConcurrentRequestLimitExceeded" | "XboxRejectedXSTSExchangeRequest" | "VariableNotDefined" | "TemplateVersionNotDefined" | "FileTooLarge" | "TitleDeleted" | "TitleContainsUserAccounts" | "TitleDeletionPlayerCleanupFailure" | "EntityFileOperationPending" | "NoEntityFileOperationPending" | "EntityProfileVersionMismatch" | "TemplateVersionTooOld" | "MembershipDefinitionInUse" | "PaymentPageNotConfigured" | "FailedLoginAttemptRateLimitExceeded" | "EntityBlockedByGroup" | "RoleDoesNotExist" | "EntityIsAlreadyMember" | "DuplicateRoleId" | "GroupInvitationNotFound" | "GroupApplicationNotFound" | "OutstandingInvitationAcceptedInstead" | "OutstandingApplicationAcceptedInstead" | "RoleIsGroupDefaultMember" | "RoleIsGroupAdmin" | "RoleNameNotAvailable" | "GroupNameNotAvailable" | "EmailReportAlreadySent" | "EmailReportRecipientBlacklisted" | "EventNamespaceNotAllowed" | "EventEntityNotAllowed" | "InvalidEntityType" | "NullTokenResultFromAad" | "InvalidTokenResultFromAad" | "NoValidCertificateForAad" | "InvalidCertificateForAad" | "DuplicateDropTableId" | "MultiplayerServerError" | "MultiplayerServerTooManyRequests" | "MultiplayerServerNoContent" | "MultiplayerServerBadRequest" | "MultiplayerServerUnauthorized" | "MultiplayerServerForbidden" | "MultiplayerServerNotFound" | "MultiplayerServerConflict" | "MultiplayerServerInternalServerError" | "MultiplayerServerUnavailable" | "ExplicitContentDetected" | "PIIContentDetected" | "InvalidScheduledTaskParameter" | "PerEntityEventRateLimitExceeded" | "TitleDefaultLanguageNotSet" | "EmailTemplateMissingDefaultVersion" | "FacebookInstantGamesIdNotLinked" | "InvalidFacebookInstantGamesSignature" | "FacebookInstantGamesAuthNotConfiguredForTitle" | "EntityProfileConstraintValidationFailed" | "TelemetryIngestionKeyPending" | "TelemetryIngestionKeyNotFound" | "StatisticChildNameInvalid" | "DataIntegrityError" | "VirtualCurrencyCannotBeSetToOlderVersion" | "VirtualCurrencyMustBeWithinIntegerRange" | "EmailTemplateInvalidSyntax" | "EmailTemplateMissingCallback" | "PushNotificationTemplateInvalidPayload" | "InvalidLocalizedPushNotificationLanguage" | "MissingLocalizedPushNotificationMessage" | "PushNotificationTemplateMissingPlatformPayload" | "PushNotificationTemplatePayloadContainsInvalidJson" | "PushNotificationTemplateContainsInvalidIosPayload" | "PushNotificationTemplateContainsInvalidAndroidPayload" | "PushNotificationTemplateIosPayloadMissingNotificationBody" | "PushNotificationTemplateAndroidPayloadMissingNotificationBody" | "PushNotificationTemplateNotFound" | "PushNotificationTemplateMissingDefaultVersion" | "PushNotificationTemplateInvalidSyntax" | "PushNotificationTemplateNoCustomPayloadForV1" | "NoLeaderboardForStatistic" | "TitleNewsMissingDefaultLanguage" | "TitleNewsNotFound" | "TitleNewsDuplicateLanguage" | "TitleNewsMissingTitleOrBody" | "TitleNewsInvalidLanguage" | "EmailRecipientBlacklisted" | "InvalidGameCenterAuthRequest" | "GameCenterAuthenticationFailed" | "CannotEnablePartiesForTitle" | "PartyError" | "PartyRequests" | "PartyNoContent" | "PartyBadRequest" | "PartyUnauthorized" | "PartyForbidden" | "PartyNotFound" | "PartyConflict" | "PartyInternalServerError" | "PartyUnavailable" | "PartyTooManyRequests" | "PushNotificationTemplateMissingName" | "CannotEnableMultiplayerServersForTitle" | "WriteAttemptedDuringExport" | "MultiplayerServerTitleQuotaCoresExceeded" | "AutomationRuleNotFound" | "EntityAPIKeyLimitExceeded" | "EntityAPIKeyNotFound" | "EntityAPIKeyOrSecretInvalid" | "EconomyServiceUnavailable" | "EconomyServiceInternalError" | "QueryRateLimitExceeded" | "EntityAPIKeyCreationDisabledForEntity" | "ForbiddenByEntityPolicy" | "UpdateInventoryRateLimitExceeded" | "StudioCreationRateLimited" | "StudioCreationInProgress" | "DuplicateStudioName" | "StudioNotFound" | "StudioDeleted" | "StudioDeactivated" | "StudioActivated" | "TitleCreationRateLimited" | "TitleCreationInProgress" | "DuplicateTitleName" | "TitleActivationRateLimited" | "TitleActivationInProgress" | "TitleDeactivated" | "TitleActivated" | "CloudScriptAzureFunctionsExecutionTimeLimitExceeded" | "CloudScriptAzureFunctionsArgumentSizeExceeded" | "CloudScriptAzureFunctionsReturnSizeExceeded" | "CloudScriptAzureFunctionsHTTPRequestError" | "VirtualCurrencyBetaGetError" | "VirtualCurrencyBetaCreateError" | "VirtualCurrencyBetaInitialDepositSaveError" | "VirtualCurrencyBetaSaveError" | "VirtualCurrencyBetaDeleteError" | "VirtualCurrencyBetaRestoreError" | "VirtualCurrencyBetaSaveConflict" | "VirtualCurrencyBetaUpdateError" | "InsightsManagementDatabaseNotFound" | "InsightsManagementOperationNotFound" | "InsightsManagementErrorPendingOperationExists" | "InsightsManagementSetPerformanceLevelInvalidParameter" | "InsightsManagementSetStorageRetentionInvalidParameter" | "InsightsManagementGetStorageUsageInvalidParameter" | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" | "EvaluationModeTitleCountExceeded" | "InsightsManagementTitleNotInFlight" | "LimitNotFound" | "LimitNotAvailableViaAPI" | "InsightsManagementSetStorageRetentionBelowMinimum" | "InsightsManagementSetStorageRetentionAboveMaximum" | "AppleNotEnabledForTitle" | "InsightsManagementNewActiveEventExportLimitInvalid" | "InsightsManagementSetPerformanceRateLimited" | "PartyRequestsThrottledFromRateLimiter" | "XboxServiceTooManyRequests" | "NintendoSwitchNotEnabledForTitle" | "RequestMultiplayerServersThrottledFromRateLimiter" | "TitleDataOverrideNotFound" | "DuplicateKeys" | "WasNotCreatedWithCloudRoot" | "LegacyMultiplayerServersDeprecated" | "VirtualCurrencyCurrentlyUnavailable" | "SteamUserNotFound" | "ElasticSearchOperationFailed" | "NotImplemented" | "PublisherNotFound" | "PublisherDeleted" | "ApiDisabledForMigration" | "ResourceNameUpdateNotAllowed" | "ApiNotEnabledForTitle" | "DuplicateTitleNameForPublisher" | "AzureTitleCreationInProgress" | "TitleConstraintsPublisherDeletion" | "InvalidPlayerAccountPoolId" | "PlayerAccountPoolNotFound" | "PlayerAccountPoolDeleted" | "TitleCleanupInProgress" | "AzureResourceConcurrentOperationInProgress" | "TitlePublisherUpdateNotAllowed" | "AzureResourceManagerNotSupportedInStamp" | "ApiNotIncludedInAzurePlayFabFeatureSet" | "GoogleServiceAccountFailedAuth" | "GoogleAPIServiceUnavailable" | "GoogleAPIServiceUnknownError" | "NoValidIdentityForAad" | "PlayerIdentityLinkNotFound" | "PhotonApplicationIdAlreadyInUse" | "CloudScriptUnableToDeleteProductionRevision" | "CustomIdNotFound" | "AutomationInvalidInput" | "AutomationInvalidRuleName" | "AutomationRuleAlreadyExists" | "AutomationRuleLimitExceeded" | "InvalidGooglePlayGamesServerAuthCode" | "PlayStreamConnectionFailed" | "InvalidEventContents" | "InsightsV1Deprecated" | "AnalysisSubscriptionNotFound" | "AnalysisSubscriptionFailed" | "AnalysisSubscriptionFoundAlready" | "AnalysisSubscriptionManagementInvalidInput" | "InvalidGameCenterId" | "InvalidNintendoSwitchAccountId" | "EntityAPIKeysNotSupported" | "IpAddressBanned" | "EntityLineageBanned" | "NamespaceMismatch" | "InvalidServiceConfiguration" | "InvalidNamespaceMismatch" | "LeaderboardColumnLengthMismatch" | "InvalidStatisticScore" | "LeaderboardColumnsNotSpecified" | "LeaderboardMaxSizeTooLarge" | "InvalidAttributeStatisticsSpecified" | "LeaderboardNotFound" | "TokenSigningKeyNotFound" | "LeaderboardNameConflict" | "LinkedStatisticColumnMismatch" | "NoLinkedStatisticToLeaderboard" | "StatDefinitionAlreadyLinkedToLeaderboard" | "LinkingStatsNotAllowedForEntityType" | "LeaderboardCountLimitExceeded" | "LeaderboardSizeLimitExceeded" | "LeaderboardDefinitionModificationNotAllowedWhileLinked" | "StatisticDefinitionModificationNotAllowedWhileLinked" | "LeaderboardUpdateNotAllowedWhileLinked" | "CloudScriptAzureFunctionsEventHubRequestError" | "ExternalEntityNotAllowedForTier" | "InvalidBaseTimeForInterval" | "EntityTypeMismatchWithStatDefinition" | "SpecifiedVersionLeaderboardNotFound" | "LeaderboardColumnLengthMismatchWithStatDefinition" | "DuplicateColumnNameFound" | "LinkedStatisticColumnNotFound" | "LinkedStatisticColumnRequired" | "MultipleLinkedStatisticsNotAllowed" | "DuplicateLinkedStatisticColumnNameFound" | "AggregationTypeNotAllowedForMultiColumnStatistic" | "MaxQueryableVersionsValueNotAllowedForTier" | "StatisticDefinitionHasNullOrEmptyVersionConfiguration" | "StatisticColumnLengthMismatch" | "InvalidExternalEntityId" | "UpdatingStatisticsUsingTransactionIdNotAvailableForFreeTier" | "TransactionAlreadyApplied" | "ReportDataNotRetrievedSuccessfully" | "ResetIntervalCannotBeModified" | "VersionIncrementRateExceeded" | "InvalidSteamUsername" | "InvalidVersionResetForLinkedLeaderboard" | "BattleNetNotEnabledForTitle" | "ReportNotProcessed" | "DataNotAvailable" | "InvalidReportName" | "ResourceNotModified" | "StudioCreationLimitExceeded" | "StudioDeletionInitiated" | "ProductDisabledForTitle" | "PreconditionFailed" | "CannotEnableAnonymousPlayerCreation" | "ParentCustomerAccountNotFound" | "AccountLinkedToABannedPlayer" | "AzureSubscriptionNotEligibleForLinking" | "MatchmakingEntityInvalid" | "MatchmakingPlayerAttributesInvalid" | "MatchmakingQueueNotFound" | "MatchmakingMatchNotFound" | "MatchmakingTicketNotFound" | "MatchmakingAlreadyJoinedTicket" | "MatchmakingTicketAlreadyCompleted" | "MatchmakingQueueConfigInvalid" | "MatchmakingMemberProfileInvalid" | "NintendoSwitchDeviceIdNotLinked" | "MatchmakingNotEnabled" | "MatchmakingPlayerAttributesTooLarge" | "MatchmakingNumberOfPlayersInTicketTooLarge" | "MatchmakingAttributeInvalid" | "MatchmakingPlayerHasNotJoinedTicket" | "MatchmakingRateLimitExceeded" | "MatchmakingTicketMembershipLimitExceeded" | "MatchmakingUnauthorized" | "MatchmakingQueueLimitExceeded" | "MatchmakingRequestTypeMismatch" | "MatchmakingBadRequest" | "PubSubFeatureNotEnabledForTitle" | "PubSubTooManyRequests" | "PubSubConnectionNotFoundForEntity" | "PubSubConnectionHandleInvalid" | "PubSubSubscriptionLimitExceeded" | "TitleConfigNotFound" | "TitleConfigUpdateConflict" | "TitleConfigSerializationError" | "CatalogApiNotImplemented" | "CatalogEntityInvalid" | "CatalogTitleIdMissing" | "CatalogPlayerIdMissing" | "CatalogClientIdentityInvalid" | "CatalogOneOrMoreFilesInvalid" | "CatalogItemMetadataInvalid" | "CatalogItemIdInvalid" | "CatalogSearchParameterInvalid" | "CatalogFeatureDisabled" | "CatalogConfigInvalid" | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" | "InvalidCatalogItemConfiguration" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" | "ExportNotFound" | "ExportCouldNotUpdate" | "ExportInvalidStorageType" | "ExportAmazonBucketDoesNotExist" | "ExportInvalidBlobStorage" | "ExportKustoException" | "ExportKustoConnectionFailed" | "ExportUnknownError" | "ExportCantEditPendingExport" | "ExportLimitExports" | "ExportLimitEvents" | "ExportInvalidPartitionStatusModification" | "ExportCouldNotCreate" | "ExportNoBackingDatabaseFound" | "ExportCouldNotDelete" | "ExportCannotDetermineEventQuery" | "ExportInvalidQuerySchemaModification" | "ExportQuerySchemaMissingRequiredColumns" | "ExportCannotParseQuery" | "ExportControlCommandsNotAllowed" | "ExportQueryMissingTableReference" | "ExportInsightsV1Deprecated" | "ExplorerBasicInvalidQueryName" | "ExplorerBasicInvalidQueryDescription" | "ExplorerBasicInvalidQueryConditions" | "ExplorerBasicInvalidQueryStartDate" | "ExplorerBasicInvalidQueryEndDate" | "ExplorerBasicInvalidQueryGroupBy" | "ExplorerBasicInvalidQueryAggregateType" | "ExplorerBasicInvalidQueryAggregateProperty" | "ExplorerBasicLoadQueriesError" | "ExplorerBasicLoadQueryError" | "ExplorerBasicCreateQueryError" | "ExplorerBasicDeleteQueryError" | "ExplorerBasicUpdateQueryError" | "ExplorerBasicSavedQueriesLimit" | "ExplorerBasicSavedQueryNotFound" | "TenantShardMapperShardNotFound" | "TitleNotEnabledForParty" | "PartyVersionNotFound" | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" | "ExperimentationExperimentNeverStarted" | "ExperimentationExperimentDeleted" | "ExperimentationClientTimeout" | "ExperimentationInvalidVariantConfiguration" | "ExperimentationInvalidVariableConfiguration" | "ExperimentInvalidId" | "ExperimentationNoScorecard" | "ExperimentationTreatmentAssignmentFailed" | "ExperimentationTreatmentAssignmentDisabled" | "ExperimentationInvalidDuration" | "ExperimentationMaxExperimentsReached" | "ExperimentationExperimentSchedulingInProgress" | "ExperimentationInvalidEndDate" | "ExperimentationInvalidStartDate" | "ExperimentationMaxDurationExceeded" | "ExperimentationExclusionGroupNotFound" | "ExperimentationExclusionGroupInsufficientCapacity" | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" | "ExperimentationLegacyExperimentInvalidOperation" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" | "SegmentManagementNoExpressionTree" | "SegmentManagementTriggerActionCountOverLimit" | "SegmentManagementSegmentCountOverLimit" | "SegmentManagementInvalidSegmentId" | "SegmentManagementInvalidInput" | "SegmentManagementInvalidSegmentName" | "DeleteSegmentRateLimitExceeded" | "CreateSegmentRateLimitExceeded" | "UpdateSegmentRateLimitExceeded" | "GetSegmentsRateLimitExceeded" | "AsyncExportNotInFlight" | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" | "AnalyticsSegmentCountOverLimit" | "GetPlayersInSegmentDeprecated" | "SnapshotNotFound" | "InventoryApiNotImplemented" | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" | "LobbyNotJoinable" | "LobbyMemberCannotRejoin" | "LobbyCurrentPlayersMoreThanMaxPlayers" | "LobbyPlayerNotPresent" | "LobbyBadRequest" | "LobbyPlayerMaxLobbyLimitExceeded" | "LobbyNewOwnerMustBeConnected" | "LobbyCurrentOwnerStillConnected" | "LobbyMemberIsNotOwner" | "LobbyServerMismatch" | "LobbyServerNotFound" | "LobbyDifferentServerAlreadyJoined" | "LobbyServerAlreadyJoined" | "LobbyIsNotClientOwned" | "LobbyDoesNotUseConnections" | "EventSamplingInvalidRatio" | "EventSamplingInvalidEventNamespace" | "EventSamplingInvalidEventName" | "EventSamplingRatioNotFound" | "TelemetryKeyNotFound" | "TelemetryKeyInvalidName" | "TelemetryKeyAlreadyExists" | "TelemetryKeyInvalid" | "TelemetryKeyCountOverLimit" | "TelemetryKeyDeactivated" | "TelemetryKeyLongInsightsRetentionNotAllowed" | "EventSinkConnectionInvalid" | "EventSinkConnectionUnauthorized" | "EventSinkRegionInvalid" | "EventSinkLimitExceeded" | "EventSinkSasTokenInvalid" | "EventSinkNotFound" | "EventSinkNameInvalid" | "EventSinkSasTokenPermissionInvalid" | "EventSinkSecretInvalid" | "EventSinkTenantNotFound" | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" | "EventSinkTitleUnauthorized" | "EventSinkInsufficientRoleAssignment" | "EventSinkContainerNotFound" | "EventSinkTenantIdInvalid" | "EventSinkResourceMisconfigured" | "EventSinkAccessDenied" | "EventSinkWriteConflict" | "EventSinkResourceNotFound" | "EventSinkResourceFeatureNotSupported" | "EventSinkBucketNameInvalid" | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" | "PartitionedEventInvalid" | "PartitionedEventCountOverLimit" | "ManageEventNamespaceInvalid" | "ManageEventNameInvalid" | "ManagedEventNotFound" | "ManageEventsInvalidRatio" | "ManagedEventInvalid" | "PlayerCustomPropertiesPropertyNameTooLong" | "PlayerCustomPropertiesPropertyNameIsInvalid" | "PlayerCustomPropertiesStringPropertyValueTooLong" | "PlayerCustomPropertiesValueIsInvalidType" | "PlayerCustomPropertiesVersionMismatch" | "PlayerCustomPropertiesPropertyCountTooHigh" | "PlayerCustomPropertiesDuplicatePropertyName" | "PlayerCustomPropertiesPropertyDoesNotExist" | "AddonAlreadyExists" | "AddonDoesntExist" | "CopilotDisabled" | "CopilotInvalidRequest" | "TrueSkillUnauthorized" | "TrueSkillInvalidTitleId" | "TrueSkillInvalidScenarioId" | "TrueSkillInvalidModelId" | "TrueSkillInvalidModelName" | "TrueSkillInvalidPlayerIds" | "TrueSkillInvalidEntityKey" | "TrueSkillInvalidConditionKey" | "TrueSkillInvalidConditionValue" | "TrueSkillInvalidConditionAffinityWeight" | "TrueSkillInvalidEventName" | "TrueSkillMatchResultCreated" | "TrueSkillMatchResultAlreadySubmitted" | "TrueSkillBadPlayerIdInMatchResult" | "TrueSkillInvalidBotIdInMatchResult" | "TrueSkillDuplicatePlayerInMatchResult" | "TrueSkillNoPlayerInMatchResultTeam" | "TrueSkillPlayersInMatchResultExceedingLimit" | "TrueSkillInvalidPreMatchPartyInMatchResult" | "TrueSkillInvalidTimestampInMatchResult" | "TrueSkillStartTimeMissingInMatchResult" | "TrueSkillEndTimeMissingInMatchResult" | "TrueSkillInvalidPlayerSecondsPlayedInMatchResult" | "TrueSkillNoTeamInMatchResult" | "TrueSkillNotEnoughTeamsInMatchResult" | "TrueSkillInvalidRanksInMatchResult" | "TrueSkillNoWinnerInMatchResult" | "TrueSkillMissingRequiredCondition" | "TrueSkillMissingRequiredEvent" | "TrueSkillUnknownEventName" | "TrueSkillInvalidEventCount" | "TrueSkillUnknownConditionKey" | "TrueSkillUnknownConditionValue" | "TrueSkillScenarioConfigDoesNotExist" | "TrueSkillUnknownModelId" | "TrueSkillNoModelInScenario" | "TrueSkillNotSupportedForTitle" | "TrueSkillModelIsNotActive" | "TrueSkillUnauthorizedToQueryOtherPlayerSkills" | "TrueSkillInvalidMaxIterations" | "TrueSkillEndTimeBeforeStartTime" | "TrueSkillInvalidJobId" | "TrueSkillInvalidMetadataId" | "TrueSkillMissingBuildVerison" | "TrueSkillJobAlreadyExists" | "TrueSkillJobNotFound" | "TrueSkillOperationCanceled" | "TrueSkillActiveModelLimitExceeded" | "TrueSkillTotalModelLimitExceeded" | "TrueSkillUnknownInitialModelId" | "TrueSkillUnauthorizedForJob" | "TrueSkillInvalidScenarioName" | "TrueSkillConditionStateIsRequired" | "TrueSkillEventStateIsRequired" | "TrueSkillDuplicateEvent" | "TrueSkillDuplicateCondition" | "TrueSkillInvalidAnomalyThreshold" | "TrueSkillConditionKeyLimitExceeded" | "TrueSkillConditionValuePerKeyLimitExceeded" | "TrueSkillInvalidTimestamp" | "TrueSkillEventLimitExceeded" | "TrueSkillInvalidPlayers" | "TrueSkillTrueSkillPlayerNull" | "TrueSkillInvalidPlayerId" | "TrueSkillInvalidSquadSize" | "TrueSkillConditionSetNotInModel" | "TrueSkillModelStateInvalidForOperation" | "TrueSkillScenarioContainsActiveModel" | "TrueSkillInvalidConditionRank" | "TrueSkillTotalScenarioLimitExceeded" | "TrueSkillInvalidConditionsList" | "GameSaveManifestNotFound" | "GameSaveManifestVersionAlreadyExists" | "GameSaveConflictUpdatingManifest" | "GameSaveManifestUpdatesNotAllowed" | "GameSaveFileAlreadyExists" | "GameSaveManifestVersionNotFinalized" | "GameSaveUnknownFileInManifest" | "GameSaveFileExceededReportedSize" | "GameSaveFileNotUploaded" | "GameSaveBadRequest" | "GameSaveOperationNotAllowed" | "GameSaveDataStorageQuotaExceeded" | "GameSaveNewerManifestExists" | "GameSaveBaseVersionNotAvailable" | "GameSaveManifestVersionQuarantined" | "GameSaveManifestUploadProgressUpdateNotAllowed" | "GameSaveNotFinalizedManifestNotEligibleAsKnownGood" | "GameSaveNoUpdatesRequested" | "GameSaveTitleDoesNotExist" | "GameSaveOperationNotAllowedForTitle" | "GameSaveManifestFilesLimitExceeded" | "GameSaveManifestDescriptionUpdateNotAllowed" | "GameSaveTitleConfigNotFound" | "GameSaveTitleAlreadyOnboarded" | "GameSaveServiceNotEnabledForTitle" | "GameSaveServiceOnboardingPending" | "GameSaveManifestNotEligibleAsConflictingVersion" | "GameSaveServiceUnavailable" | "GameSaveConflict" | "GameSaveManifestNotEligibleForRollback" | "GameSaveTitleClientAnonymousAccountCreationNotDisabled" | "StateShareForbidden" | "StateShareTitleNotInFlight" | "StateShareStateNotFound" | "StateShareLinkNotFound" | "StateShareStateRedemptionLimitExceeded" | "StateShareStateRedemptionLimitNotUpdated" | "StateShareCreatedStatesLimitExceeded" | "StateShareIdMissingOrMalformed" | "PlayerCreationDisabled" | "AccountAlreadyExists" | "TagInvalid" | "TagTooLong" | "StatisticColumnAggregationMismatch" | "StatisticResetIntervalMismatch" | "VersionConfigurationCannotBeSpecifiedForLinkedStat" | "VersionConfigurationIsRequired" | "InvalidEntityTypeForAggregation" | "MultiLevelAggregationNotAllowed" | "AggregationTypeNotAllowedForLinkedStat" | "OperationDeniedDueToDefinitionPolicy" | "StatisticUpdateNotAllowedWhileLinked" | "UnsupportedEntityType" | "EntityTypeSpecifiedRequiresAggregationSource" | "PlayFabErrorEventNotSupportedForEntityType" | "MetadataLengthExceeded" | "StoreMetricsRequestInvalidInput" | "StoreMetricsErrorRetrievingMetrics"; 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 GetAllSegmentsRequest extends PlayFabModule.IPlayFabRequestCommon {} export interface GetAllSegmentsResult extends PlayFabModule.IPlayFabResultCommon { // Array of segments for this title. Segments?: GetSegmentResult[]; } 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 assigned ID of the user on whom the operation will be performed. 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId?: string; } 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId?: string; // 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 { // Maximum number of entries to retrieve. 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GetCharacterStatisticsResult extends PlayFabModule.IPlayFabResultCommon { // Unique identifier of the character for the statistics. CharacterId?: string; // Character statistics for the requested user. CharacterStatistics?: { [key: string]: number }; // PlayFab unique identifier of the user whose character statistics are being returned. PlayFabId?: string; } 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 GetFriendLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a // comma-separated list of platforms. ExternalPlatformFriends?: string; // Maximum number of entries to retrieve. MaxResultsCount: number; // The player whose friend leaderboard to get 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; // 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 | null }; // Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a // comma-separated list of platforms. ExternalPlatformFriends?: string; // PlayFab identifier of the player whose friend list to get. 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; // 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 owned by a user CharacterId: string; // Maximum number of entries to retrieve. MaxResultsCount: number; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // 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 GetLeaderboardAroundUserRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Maximum number of entries to retrieve. MaxResultsCount: number; // 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; // Unique identifier for the title-specific statistic for the leaderboard. StatisticName: string; // The version of the leaderboard to get. Version?: number; } export interface GetLeaderboardAroundUserResult 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 { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // 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 | null }; // Maximum number of entries to retrieve. 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; // First entry in the leaderboard to be retrieved. StartPosition: number; // Unique identifier for the title-specific statistic for the 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 GetPlayerCombinedInfoRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters: GetPlayerCombinedInfoRequestParams; // PlayFabId of the user whose data will be returned 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 | null }; // 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 GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Specific property name to search for in the player's properties. PropertyName: string; } export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { // PlayFab unique identifier of the user whose properties are being returned. PlayFabId?: string; // Indicates the current version of a player's properties that have been set. This is incremented after updates and // deletes. This version can be provided in update and delete calls for concurrency control. PropertiesVersion: number; // Player specific property and its corresponding value. Property?: CustomPropertyDetails; } 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 | null }; // 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 GetPlayerSegmentsResult extends PlayFabModule.IPlayFabResultCommon { // Array of segments the requested player currently belongs to. Segments?: GetSegmentResult[]; } export interface GetPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { // Continuation token if retrieving subsequent pages of results. ContinuationToken?: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If set to true, the profiles are loaded asynchronously and the response will include a continuation token and // approximate profile count until the first batch of profiles is loaded. Use this parameter to help avoid network // timeouts. GetProfilesAsync?: boolean; // Maximum is 10,000. The value 0 will prevent loading any profiles and return only the count of profiles matching this // segment. MaxBatchSize?: number; // Number of seconds to keep the continuation token active. After token expiration it is not possible to continue paging // results. Default is 300 (5 minutes). Maximum is 5,400 (90 minutes). SecondsToLive?: number; // Unique identifier for this segment. SegmentId: string; } export interface GetPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { // Continuation token to use to retrieve subsequent pages of results. If token returns null there are no more results. ContinuationToken?: string; // Array of player profiles in this segment. PlayerProfiles?: PlayerProfile[]; // Count of profiles matching this segment. ProfilesInSegment: number; } export interface GetPlayersSegmentsRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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 | null }; // user for whom statistics are being requested PlayFabId: string; // statistics to return 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 { // PlayFab unique identifier of the user whose statistics are being returned PlayFabId?: string; // 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 | null }; // 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 | null }; // 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 GetPlayFabIDsFromBattleNetAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Battle.net account identifiers for which the title needs to get PlayFab identifiers. The array cannot // exceed 10 in length. BattleNetAccountIds: string[]; } export interface GetPlayFabIDsFromBattleNetAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Battle.net account identifiers to PlayFab identifiers. Data?: BattleNetAccountPlayFabIdPair[]; } export interface GetPlayFabIDsFromFacebookIDsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in // length. 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. The array // cannot exceed 25 in length. FacebookInstantGamesIds: string[]; } export interface GetPlayFabIDsFromFacebookInstantGamesIdsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Facebook Instant Games identifiers to PlayFab identifiers. Data?: FacebookInstantGamesPlayFabIdPair[]; } 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 GetPlayFabIDsFromNintendoServiceAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Nintendo Switch Account identifiers for which the title needs to get PlayFab identifiers. The array // cannot exceed 25 in length. NintendoAccountIds: string[]; } export interface GetPlayFabIDsFromNintendoServiceAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Nintendo Switch Service Account identifiers to PlayFab identifiers. Data?: NintendoServiceAccountPlayFabIdPair[]; } export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array // cannot exceed 25 in length. NintendoSwitchDeviceIds: string[]; } export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Nintendo Switch Device identifiers to PlayFab identifiers. Data?: NintendoSwitchPlayFabIdPair[]; } export interface GetPlayFabIDsFromOpenIdsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique OpenId Connect identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed // 10 in length. OpenIdSubjectIdentifiers: OpenIdSubjectIdentifier[]; } export interface GetPlayFabIDsFromOpenIdsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of OpenId Connect identifiers to PlayFab identifiers. Data?: OpenIdSubjectIdentifierPlayFabIdPair[]; } export interface GetPlayFabIDsFromPSNAccountIDsRequest extends PlayFabModule.IPlayFabRequestCommon { // Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. IssuerId?: number; // Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array // cannot exceed 25 in length. PSNAccountIDs: string[]; } export interface GetPlayFabIDsFromPSNAccountIDsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. Data?: PSNAccountPlayFabIdPair[]; } export interface GetPlayFabIDsFromPSNOnlineIDsRequest extends PlayFabModule.IPlayFabRequestCommon { // Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. IssuerId?: number; // Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array // cannot exceed 25 in length. PSNOnlineIDs: string[]; } export interface GetPlayFabIDsFromPSNOnlineIDsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. Data?: PSNOnlinePlayFabIdPair[]; } export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. The array // cannot exceed 25 in length. SteamStringIDs?: string[]; } export interface GetPlayFabIDsFromSteamIDsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Steam identifiers to PlayFab identifiers. Data?: SteamPlayFabIdPair[]; } export interface GetPlayFabIDsFromSteamNamesRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Steam identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in // length. SteamNames: string[]; } export interface GetPlayFabIDsFromSteamNamesResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Steam identifiers to PlayFab identifiers. Data?: SteamNamePlayFabIdPair[]; } export interface GetPlayFabIDsFromTwitchIDsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. The array cannot // exceed 25 in length. 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. The array cannot // exceed 25 in length. XboxLiveAccountIDs: string[]; } export interface GetPlayFabIDsFromXboxLiveIDsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of Xbox Live 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 | null }; } export interface GetRandomResultTablesRequest extends PlayFabModule.IPlayFabRequestCommon { // Specifies the catalog version that should be used to retrieve the Random Result Tables. If unspecified, uses // default/primary catalog. CatalogVersion?: string; // The unique identifier of the Random Result Table to use. TableIDs: string[]; } export interface GetRandomResultTablesResult extends PlayFabModule.IPlayFabResultCommon { // array of random result tables currently available Tables?: { [key: string]: RandomResultTableListing }; } 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 GetServerCustomIDsFromPlayFabIDsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of unique PlayFab player identifiers for which the title needs to get server custom identifiers. Cannot contain // more than 25 identifiers. PlayFabIDs: string[]; } export interface GetServerCustomIDsFromPlayFabIDsResult extends PlayFabModule.IPlayFabResultCommon { // Mapping of server custom player identifiers to PlayFab identifiers. Data?: ServerCustomIDPlayFabIDPair[]; } 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 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 GetStoreItemsServerRequest extends PlayFabModule.IPlayFabRequestCommon { // Catalog version to store items from. Use default catalog version if null CatalogVersion?: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Optional identifier for the player to use in requesting the store information - if used, segment overrides will be // applied PlayFabId?: string; // Unqiue identifier for the store which is being requested 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 | null }; } 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 localized news items. News?: TitleNewsItem[]; } export interface GetUserAccountInfoRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GetUserAccountInfoResult extends PlayFabModule.IPlayFabResultCommon { // Account details for the user whose information was requested. UserInfo?: UserAccountInfo; } export interface GetUserBansRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GetUserBansResult extends PlayFabModule.IPlayFabResultCommon { // Information about the bans BanData?: BanInfo[]; } 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; // Specific keys to search for in the custom user data. Keys?: string[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. 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; // PlayFab unique identifier of the user whose custom data is being returned. PlayFabId?: string; } 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GetUserInventoryResult extends PlayFabModule.IPlayFabResultCommon { // Array of inventory items belonging to the user. Inventory?: ItemInstance[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId?: string; // 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 GrantCharacterToUserRequest extends PlayFabModule.IPlayFabRequestCommon { // Non-unique display name of the character being granted (1-40 characters in length). CharacterName: string; // Type of the character being granted; statistics can be sliced based on this value. CharacterType: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GrantCharacterToUserResult extends PlayFabModule.IPlayFabResultCommon { // Unique identifier tagged to this character. CharacterId?: string; } export interface GrantedItemInstance { // 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; // Unique PlayFab assigned ID for a specific character owned by a user CharacterId?: 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 | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId?: string; // Timestamp for when this instance was purchased. PurchaseDate?: string; // Total number of remaining uses, if this is a consumable item. RemainingUses?: number; // Result of this operation. Result: boolean; // 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 GrantItemsToCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { // String detailing any additional information concerning this operation. Annotation?: string; // Catalog version from which items are to be granted. 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 | null }; // Array of itemIds to grant to the user. ItemIds?: string[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GrantItemsToCharacterResult extends PlayFabModule.IPlayFabResultCommon { // Array of items granted to users. ItemGrantResults?: GrantedItemInstance[]; } export interface GrantItemsToUserRequest extends PlayFabModule.IPlayFabRequestCommon { // String detailing any additional information concerning this operation. Annotation?: string; // Catalog version from which items are to be granted. CatalogVersion?: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Array of itemIds to grant to the user. ItemIds: string[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface GrantItemsToUserResult extends PlayFabModule.IPlayFabResultCommon { // Array of items granted to users. ItemGrantResults?: GrantedItemInstance[]; } export interface GrantItemsToUsersRequest extends PlayFabModule.IPlayFabRequestCommon { // Catalog version from which items are to be granted. CatalogVersion?: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Array of items to grant and the users to whom the items are to be granted. ItemGrants: ItemGrant[]; } export interface GrantItemsToUsersResult extends PlayFabModule.IPlayFabResultCommon { // Array of items granted to users. ItemGrantResults?: GrantedItemInstance[]; } export interface ItemGrant { // String detailing any additional information concerning this operation. Annotation?: string; // Unique PlayFab assigned ID for a specific character owned by a user CharacterId?: string; // 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 | null }; // Unique identifier of the catalog item to be granted to the user. ItemId: string; // 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[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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 | null }; // 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 LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to a specific Battle.net account, unlink the other user and re-link. ForceLink?: boolean; // The JSON Web Token (JWT) returned by Battle.net after login IdentityToken: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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 LinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface LinkNintendoServiceAccountSubjectRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to a specific Nintendo Service Account, unlink the other user and re-link. ForceLink?: boolean; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // The Nintendo Service Account subject or id to link to the PlayFab user. Subject: 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 | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface LinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { // Authentication code provided by the PlayStation :tm: Network. AuthCode: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to the account, unlink the other user and re-link. ForceLink?: boolean; // Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. IssuerId?: number; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Redirect URI supplied to PlayStation :tm: Network when requesting an auth code RedirectUri: string; } export interface LinkPSNAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkPSNIdRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to the account, unlink the other user and re-link. ForceLink?: boolean; // Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. IssuerId?: number; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Id of the PlayStation :tm: Network user. Also known as the PSN Account Id. PSNUserId: string; } export interface LinkPSNIdResponse extends PlayFabModule.IPlayFabResultCommon {} export interface LinkServerCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to the custom ID, unlink the other user and re-link. ForceLink?: boolean; // Unique PlayFab identifier. PlayFabId: string; // Unique server custom identifier for this player. ServerCustomId: string; } export interface LinkServerCustomIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkSteamIdRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to the account, unlink the other user and re-link. ForceLink?: boolean; // PlayFab unique identifier of the user to link. PlayFabId: string; // Unique Steam identifier for a user. SteamId: string; } export interface LinkSteamIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { // Twitch access token for authentication. AccessToken: string; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to the account, unlink the other user and re-link. ForceLink?: boolean; // PlayFab unique identifier of the user to link. PlayFabId: string; } 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 | null }; // If another user is already linked to the account, unlink the other user and re-link. ForceLink?: boolean; // PlayFab unique identifier of the user to link. PlayFabId: string; // Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). XboxToken: string; } export interface LinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface LinkXboxIdRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // If another user is already linked to the account, unlink the other user and re-link. ForceLink?: boolean; // PlayFab unique identifier of the user to link. PlayFabId: string; // The id of Xbox Live sandbox. Sandbox: string; // Unique Xbox identifier for a user. XboxId: string; } export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { // PlayFab unique identifier of the user whose properties are being returned. PlayFabId?: string; // Player specific properties and their corresponding values for this title. Properties?: CustomPropertyDetails[]; // Indicates the current version of a player's properties that have been set. This is incremented after updates and // deletes. This version can be provided in update and delete calls for concurrency control. PropertiesVersion: number; } 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 LocalizedPushNotificationProperties { // Message of the localized push notification template. Message?: string; // Subject of the localized push notification template. Subject?: string; } 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" | "GooglePlayGames" | "XboxMobileStore" | "King" | "BattleNet"; 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 | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; // Specific Operating System version for the user's device. OS?: string; } export interface LoginWithBattleNetRequest 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 | null }; // The JSON Web Token (JWT) returned by Battle.net after login IdentityToken: string; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; } 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 | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; } 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 | null }; // Vendor-specific iOS identifier for the user's device. DeviceId: string; // Specific model of the user's device. DeviceModel?: 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; } export interface LoginWithPSNRequest extends PlayFabModule.IPlayFabRequestCommon { // Auth code provided by the PlayStation :tm: Network 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 | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; // Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. IssuerId?: number; // Redirect URI supplied to PlayStation :tm: Network when requesting an auth code RedirectUri: string; } export interface LoginWithServerCustomIdRequest 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 | null }; // 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; // The backend server identifier for this player. ServerCustomId: string; } export interface LoginWithSteamIdRequest 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 | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; // Unique Steam identifier for a user. SteamId: string; } export interface LoginWithTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { // Twitch access token for authentication. AccessToken: string; // If true, create a new PlayFab account if one does not exist. CreateAccount?: boolean; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Parameters for requesting additional player info. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; // Player secret for additional authentication. PlayerSecret?: string; // PlayFab unique identifier of the user. PlayFabId: string; } export interface LoginWithXboxIdRequest 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 | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; // The id of Xbox Live sandbox. Sandbox: string; // Unique Xbox identifier for a user. XboxId: 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 | null }; // Flags for which pieces of info to return for the user. InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; // 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 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 ModifyCharacterVirtualCurrencyResult extends PlayFabModule.IPlayFabResultCommon { // Balance of the virtual currency after modification. Balance: number; // Name of the virtual currency which was modified. VirtualCurrency?: string; } export interface ModifyItemUsesRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique instance identifier of the item to be modified. ItemInstanceId: string; // PlayFab unique identifier of the user whose item is being modified. PlayFabId: string; // Number of uses to add to the item. Can be negative to remove uses. UsesToAdd: number; } export interface ModifyItemUsesResult 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 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 MoveItemToCharacterFromCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique identifier of the character that currently has the item. GivingCharacterId: string; // Unique PlayFab assigned instance identifier of the item ItemInstanceId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Unique identifier of the character that will be receiving the item. ReceivingCharacterId: string; } export interface MoveItemToCharacterFromCharacterResult extends PlayFabModule.IPlayFabResultCommon {} export interface MoveItemToCharacterFromUserRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID for a specific character owned by a user CharacterId: string; // Unique PlayFab assigned instance identifier of the item ItemInstanceId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface MoveItemToCharacterFromUserResult extends PlayFabModule.IPlayFabResultCommon {} export interface MoveItemToUserFromCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID for a specific character owned by a user CharacterId: string; // Unique PlayFab assigned instance identifier of the item ItemInstanceId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface MoveItemToUserFromCharacterResult extends PlayFabModule.IPlayFabResultCommon {} export interface NintendoServiceAccountPlayFabIdPair { // Unique Nintendo Switch Service Account identifier for a user. NintendoServiceAccountId?: string; // Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Nintendo Switch Service Account // identifier. PlayFabId?: 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 OpenIdSubjectIdentifier { // The issuer URL for the OpenId Connect provider, or the override URL if an override exists. Issuer: string; // The unique subject identifier within the context of the issuer. Subject: string; } export interface OpenIdSubjectIdentifierPlayFabIdPair { // Unique OpenId Connect identifier for a user. OpenIdSubjectIdentifier?: OpenIdSubjectIdentifier; // Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the OpenId Connect identifier. PlayFabId?: string; } 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 PlayerLinkedAccount { // Linked account's email Email?: string; // Authentication platform Platform?: string; // Platform user identifier PlatformUserId?: string; // Linked account's username Username?: string; } export interface PlayerLocation { // City of the player's geographic location. 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 player's geographic location. Latitude?: number; // Longitude coordinate of the player's geographic location. Longitude?: number; } export interface PlayerProfile { // Array of ad campaigns player has been attributed to AdCampaignAttributions?: AdCampaignAttribution[]; // Image URL of the player's avatar. AvatarUrl?: string; // Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. BannedUntil?: string; // The prediction of the player to churn within the next seven days. ChurnPrediction?: string; // Array of contact email addresses associated with the player ContactEmailAddresses?: ContactEmailInfo[]; // Player record created Created?: string; // Dictionary of player's custom properties. CustomProperties?: { [key: string]: any }; // Player Display Name DisplayName?: string; // Last login LastLogin?: string; // Array of third party accounts linked to this player LinkedAccounts?: PlayerLinkedAccount[]; // Dictionary of player's locations by type. Locations?: { [key: string]: PlayerLocation }; // Player account origination Origination?: string; // List of player variants for experimentation PlayerExperimentVariants?: string[]; // PlayFab Player ID PlayerId?: string; // Array of player statistics PlayerStatistics?: PlayerStatistic[]; // Publisher this player belongs to PublisherId?: string; // Array of configured push notification end points PushNotificationRegistrations?: PushNotificationRegistration[]; // Dictionary of player's statistics using only the latest version's value Statistics?: { [key: string]: number }; // List of player's tags for segmentation. Tags?: string[]; // Title ID this profile applies to TitleId?: string; // A sum of player's total purchases in USD across all currencies. TotalValueToDateInUSD?: number; // Dictionary of player's total purchases by currency. ValuesToDate?: { [key: string]: number }; // Dictionary of player's virtual currency balances VirtualCurrencyBalances?: { [key: string]: 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. Note that these variants are not guaranteed to be up-to-date when returned // during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment // property during login to get the correct variants and variables. 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 PlayerStatistic { // Statistic ID Id?: string; // Statistic name Name?: string; // Current statistic value StatisticValue: number; // Statistic version (0 if not a versioned statistic) StatisticVersion: number; } 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 :tm: Network // identifier. PlayFabId?: string; // Unique PlayStation :tm: Network identifier for a user. PSNAccountId?: string; } export interface PSNOnlinePlayFabIdPair { // Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network // identifier. PlayFabId?: string; // Unique PlayStation :tm: Network identifier for a user. PSNOnlineId?: string; } export interface PushNotificationPackage { // Numerical badge to display on App icon (iOS only) Badge: number; // This must be a JSON formatted object. For use with developer-created custom Push Notification plugins CustomData?: string; // Icon file to display with the message (Not supported for iOS) Icon?: string; // Content of the message (all platforms) Message: string; // Sound file to play with the message (all platforms) Sound?: string; // Title/Subject of the message. Not supported for iOS Title: string; } type PushNotificationPlatform = "ApplePushNotificationService" | "GoogleCloudMessaging"; export interface PushNotificationRegistration { // Notification configured endpoint NotificationEndpointARN?: string; // Push notification platform Platform?: string; } export interface PushNotificationRegistrationModel { // Notification configured endpoint NotificationEndpointARN?: string; // Push notification platform Platform?: string; } export interface RandomResultTableListing { // Catalog version this table is associated with CatalogVersion?: string; // Child nodes that indicate what kind of drop table item this actually is. Nodes: ResultTableNode[]; // Unique name for this drop table TableId: string; } export interface RedeemCouponRequest extends PlayFabModule.IPlayFabRequestCommon { // Catalog version of the coupon. 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface RedeemCouponResult extends PlayFabModule.IPlayFabResultCommon { // Items granted to the player as a result of redeeming the coupon. GrantedItems?: ItemInstance[]; } export interface RemoveFriendRequest extends PlayFabModule.IPlayFabRequestCommon { // PlayFab identifier of the friend account which is to be removed. FriendPlayFabId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface RemoveGenericIDRequest extends PlayFabModule.IPlayFabRequestCommon { // Generic service identifier to be removed from the player. GenericId: GenericServiceId; // PlayFabId of the user to remove. PlayFabId: string; } export interface RemovePlayerTagRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Unique tag for player profile. TagName: string; } export interface RemovePlayerTagResult 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 ReportPlayerServerRequest 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 | null }; // Unique PlayFab identifier of the reported player. ReporteeId: string; // PlayFabId of the reporting player. ReporterId: string; } export interface ReportPlayerServerResult extends PlayFabModule.IPlayFabResultCommon { // The number of remaining reports which may be filed today by this reporting player. SubmissionsRemaining: number; } export interface ResultTableNode { // Either an ItemId, or the TableId of another random result table ResultItem: string; // Whether this entry in the table is an item or a link to another table ResultItemType: string; // How likely this is to be rolled - larger numbers add more weight Weight: number; } type ResultTableNodeType = "ItemId" | "TableId"; export interface RevokeAllBansForUserRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface RevokeAllBansForUserResult extends PlayFabModule.IPlayFabResultCommon { // Information on the bans that were revoked. BanData?: BanInfo[]; } export interface RevokeBansRequest extends PlayFabModule.IPlayFabRequestCommon { // Ids of the bans to be revoked. Maximum 100. BanIds: string[]; } export interface RevokeBansResult extends PlayFabModule.IPlayFabResultCommon { // Information on the bans that were revoked BanData?: BanInfo[]; } export interface RevokeInventoryItem { // Unique PlayFab assigned ID for a specific character owned by a user CharacterId?: string; // Unique PlayFab assigned instance identifier of the item ItemInstanceId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface RevokeInventoryItemRequest extends PlayFabModule.IPlayFabRequestCommon { // Unique PlayFab assigned ID for a specific character owned by a user CharacterId?: string; // Unique PlayFab assigned instance identifier of the item ItemInstanceId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface RevokeInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { // Array of player items to revoke, between 1 and 25 items. Items: RevokeInventoryItem[]; } export interface RevokeInventoryItemsResult extends PlayFabModule.IPlayFabResultCommon { // Collection of any errors that occurred during processing. Errors?: RevokeItemError[]; } export interface RevokeInventoryResult extends PlayFabModule.IPlayFabResultCommon {} export interface RevokeItemError { // Specific error that was encountered. Error?: string; // Item information that failed to be revoked. Item?: RevokeInventoryItem; } export interface SavePushNotificationTemplateRequest extends PlayFabModule.IPlayFabRequestCommon { // Android JSON for the notification template. AndroidPayload?: string; // Id of the push notification template. Id?: string; // IOS JSON for the notification template. IOSPayload?: string; // Dictionary of localized push notification templates with the language as the key. LocalizedPushNotificationTemplates?: { [key: string]: LocalizedPushNotificationProperties }; // Name of the push notification template. Name: string; } export interface SavePushNotificationTemplateResult extends PlayFabModule.IPlayFabResultCommon { // Id of the push notification template that was saved. PushNotificationTemplateId?: string; } 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 SendCustomAccountRecoveryEmailRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // User email address attached to their account Email?: string; // The email template id of the account recovery email template to send. EmailTemplateId: string; // The user's username requesting an account recovery. Username?: string; } export interface SendCustomAccountRecoveryEmailResult extends PlayFabModule.IPlayFabResultCommon {} export interface SendEmailFromTemplateRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // The email template id of the email template to send. EmailTemplateId: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface SendEmailFromTemplateResult extends PlayFabModule.IPlayFabResultCommon {} export interface SendPushNotificationFromTemplateRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Id of the push notification template. PushNotificationTemplateId: string; // PlayFabId of the push notification recipient. Recipient: string; } export interface SendPushNotificationRequest extends PlayFabModule.IPlayFabRequestCommon { // Allows you to provide precisely formatted json to target devices. This is an advanced feature, allowing you to deliver // to custom plugin logic, fields, or functionality not natively supported by PlayFab. AdvancedPlatformDelivery?: AdvancedPushPlatformMsg[]; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Text of message to send. Message?: string; // Defines all possible push attributes like message, title, icon, etc. Some parameters are device specific - please see // the PushNotificationPackage documentation for details. Package?: PushNotificationPackage; // PlayFabId of the recipient of the push notification. Recipient: string; // Subject of message to send (may not be displayed in all platforms) Subject?: string; // Target Platforms that should receive the Message or Package. If omitted, we will send to all available platforms. TargetPlatforms?: string[]; } export interface SendPushNotificationResult extends PlayFabModule.IPlayFabResultCommon {} export interface ServerCustomIDPlayFabIDPair { // Unique PlayFab identifier. PlayFabId?: string; // Unique server custom identifier for this player. ServerCustomId?: string; } export interface ServerLoginResult 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 master_player_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 SetFriendTagsRequest extends PlayFabModule.IPlayFabRequestCommon { // PlayFab identifier of the friend account to which the tag(s) should be applied. FriendPlayFabId: string; // PlayFab identifier of the player whose friend is to be updated. PlayFabId: string; // Array of tags to set on the friend account. Tags: string[]; } export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { // Player secret that is used to verify API request signatures (Enterprise Only). PlayerSecret?: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface SetPlayerSecretResult extends PlayFabModule.IPlayFabResultCommon {} export interface SetPublisherDataRequest extends PlayFabModule.IPlayFabRequestCommon { // key we want to set a value on (note, this is additive - will only replace an existing key's value if they are the same // name.) Keys are trimmed of whitespace. Keys may not begin with the '!' character. Key: string; // new value to set. Set to null to remove a value Value?: string; } export interface SetPublisherDataResult extends PlayFabModule.IPlayFabResultCommon {} export interface SetTitleDataRequest extends PlayFabModule.IPlayFabRequestCommon { // key we want to set a value on (note, this is additive - will only replace an existing key's value if they are the same // name.) Keys are trimmed of whitespace. Keys may not begin with the '!' character. Key: string; // new value to set. Set to null to remove a value Value?: string; } export interface SetTitleDataResult extends PlayFabModule.IPlayFabResultCommon {} export interface SharedGroupDataRecord { // Timestamp for when this data was last updated. LastUpdated: string; // PlayFabId 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 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 SteamNamePlayFabIdPair { // 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, also known as Steam persona name. SteamName?: string; } 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 SubtractCharacterVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { // Amount to be subtracted from the user balance of the specified virtual currency. Amount: number; // 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Name of the virtual currency which is to be decremented. VirtualCurrency: string; } 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 | null }; // PlayFab unique identifier of the user whose virtual currency balance is to be decreased. PlayFabId: string; // 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 body. 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 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 UnlinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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 | null }; // Nintendo Switch Device identifier for the user. If not specified, the most recently signed in device ID will be used. NintendoSwitchDeviceId?: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface UnlinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon {} 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface UnlinkPSNAccountResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkServerCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab identifier. PlayFabId: string; // Unique server custom identifier for this player. ServerCustomId: string; } export interface UnlinkServerCustomIdResult extends PlayFabModule.IPlayFabResultCommon {} export interface UnlinkSteamIdRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam account. PlayFabId: string; } export interface UnlinkSteamIdResult 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 | null }; // PlayFab unique identifier of the user to unlink. PlayFabId: string; } 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 | null }; // PlayFab unique identifier of the user to unlink. PlayFabId: string; } 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 | null }; // ItemInstanceId of the key that will be consumed by unlocking this container. If the container requires a key, this // parameter is required. KeyItemInstanceId?: string; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: 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 | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface UpdateBanRequest { // The updated active state for the ban. Null for no change. Active?: boolean; // The id of the ban to be updated. BanId: string; // The updated expiration date for the ban. Null for no change. Expires?: string; // The updated IP address for the ban. Null for no change. IPAddress?: string; // Whether to make this ban permanent. Set to true to make this ban permanent. This will not modify Active state. Permanent?: boolean; // The updated reason for the ban to be updated. Maximum 140 characters. Null for no change. Reason?: string; // The updated family type of the user that should be included in the ban. Null for no change. UserFamilyType?: string; } export interface UpdateBansRequest extends PlayFabModule.IPlayFabRequestCommon { // List of bans to be updated. Maximum 100. Bans: UpdateBanRequest[]; } export interface UpdateBansResult extends PlayFabModule.IPlayFabResultCommon { // Information on the bans that were updated BanData?: BanInfo[]; } 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 | null }; // 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 | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: 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. CharacterStatistics?: { [key: string]: number }; // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface UpdateCharacterStatisticsResult extends PlayFabModule.IPlayFabResultCommon {} export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // Optional field used for concurrency control. One can ensure that the update operation will only be performed if the // player's properties have not been updated by any other clients since last the version. ExpectedPropertiesVersion?: number; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Collection of properties to be set for a player. Properties: UpdateProperty[]; } export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { // PlayFab unique identifier of the user whose properties were updated. PlayFabId?: string; // Indicates the current version of a player's properties that have been set. This is incremented after updates and // deletes. This version can be provided in update and delete calls for concurrency control. PropertiesVersion: number; } 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 | null }; // Indicates whether the statistics provided should be set, regardless of the aggregation method set on the statistic. // Default is false. ForceUpdate?: boolean; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // Statistics to be updated with the provided values Statistics: StatisticUpdate[]; } export interface UpdatePlayerStatisticsResult extends PlayFabModule.IPlayFabResultCommon {} export interface UpdateProperty { // Name of the custom property. Can contain Unicode letters and digits. They are limited in size. Name: string; // Value of the custom property. Limited to booleans, numbers, and strings. Value: any; } 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 | null }; // 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 | null }; // 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 | null }; // 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 | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: 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 UpdateUserInternalDataRequest extends PlayFabModule.IPlayFabRequestCommon { // The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). CustomTags?: { [key: string]: string | null }; // 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 | null }; // 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[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; } export interface UpdateUserInventoryItemDataRequest 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 | null }; // 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 | null }; // Unique PlayFab assigned instance identifier of the item ItemInstanceId: string; // 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[]; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: 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; // Battle.net account information, if a Battle.net account has been linked BattleNetAccountInfo?: UserBattleNetInfo; // 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 Google Play Games account information, if a Google Play Games account has been linked GooglePlayGamesInfo?: UserGooglePlayGamesInfo; // 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 PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked PsnInfo?: UserPsnInfo; // Server Custom ID information, if a server custom ID has been assigned ServerCustomIdInfo?: UserServerCustomIdInfo; // 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; // 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 UserBattleNetInfo { // Battle.net identifier BattleNetAccountId?: string; // Battle.net display name BattleNetBattleTag?: 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; } type UserFamilyType = "None" | "Xbox" | "Steam"; 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 UserGooglePlayGamesInfo { // Avatar image url of the Google Play Games player GooglePlayGamesPlayerAvatarImageUrl?: string; // Display name of the Google Play Games player GooglePlayGamesPlayerDisplayName?: string; // Google Play Games player ID GooglePlayGamesPlayerId?: 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" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" | "GooglePlayGames" | "XboxMobileStore" | "King" | "BattleNet"; export interface UserPrivateAccountInfo { // user email address Email?: string; } export interface UserPsnInfo { // PlayStation :tm: Network account ID PsnAccountId?: string; // PlayStation :tm: Network online ID PsnOnlineId?: string; } export interface UserServerCustomIdInfo { // Custom ID CustomId?: 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 UserXboxInfo { // XBox user ID XboxUserId?: string; // XBox user sandbox XboxUserSandbox?: string; } 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 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 WriteServerCharacterEventRequest 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 | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // The time (in UTC) associated with this event. The value defaults to the current time. Timestamp?: string; } export interface WriteServerPlayerEventRequest 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 | null }; // 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; // Unique PlayFab assigned ID of the user on whom the operation will be performed. PlayFabId: string; // The time (in UTC) associated with this event. The value defaults to the current time. Timestamp?: 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 | null }; // 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; } }